41 lines
1.6 KiB
Vue
41 lines
1.6 KiB
Vue
<script setup>
|
|
import DialogsProvider from "./DialogsProvider.vue";
|
|
import SidebarComponent from "../components/sidebar/SidebarComponent.vue";
|
|
import HeaderComponent from "../components/header/HeaderComponent.vue";
|
|
import { Transition, onMounted } from 'vue';
|
|
import { usePage } from '@inertiajs/inertia-vue3';
|
|
import { useGlobalStore } from "../store/Global";
|
|
const globalStore = useGlobalStore();
|
|
const {props} = usePage();
|
|
|
|
onMounted(() => {
|
|
globalStore.current_user = props.value.auth.User;
|
|
});
|
|
|
|
</script>
|
|
|
|
<template>
|
|
<sidebar-component />
|
|
<header-component />
|
|
<div class="!bg-white">
|
|
<section class="">
|
|
<main class="overflow-hidden !ps-[16rem] max-sm:!ps-4 pt-20 min-h-[calc(100svh)] p-4 grid grid-cols-1">
|
|
<section class="!rounded-2xl border-[1px] border-dominant-50 !bg-dominant-50/50 content-start p-4 grid grid-cols-1">
|
|
<div v-if="$page.props.flash.success" class="w-full mb-4">
|
|
<Message size="small" closable class="!text-xs py-1.5" severity="success">{{$page.props.flash.success}}</Message>
|
|
</div>
|
|
<Transition
|
|
name="page-transition"
|
|
mode="out-in"
|
|
>
|
|
<section class="grid grid-cols-1">
|
|
<slot></slot>
|
|
</section>
|
|
</Transition>
|
|
</section>
|
|
</main>
|
|
<dialogs-provider />
|
|
</section>
|
|
</div>
|
|
</template>
|