@alfakit/vue 0.1.2 → 0.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +16 -0
- package/dist/AlfakitRoot.js.map +1 -1
- package/dist/AlfakitRoot.vue.d.ts.map +1 -1
- package/dist/AlfakitRoot.vue_vue_type_script_setup_true_lang.js +3 -1
- package/dist/AlfakitRoot.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/actions/ActionGroupMenu.js.map +1 -1
- package/dist/components/actions/ActionGroupMenu.vue.d.ts.map +1 -1
- package/dist/components/actions/ActionGroupMenu.vue_vue_type_script_setup_true_lang.js +69 -65
- package/dist/components/actions/ActionGroupMenu.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/actions/ActionModal.js.map +1 -1
- package/dist/components/actions/ActionModal.vue.d.ts.map +1 -1
- package/dist/components/actions/ActionModal.vue_vue_type_script_setup_true_lang.js +17 -15
- package/dist/components/actions/ActionModal.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/ai/AiCopilot.js.map +1 -1
- package/dist/components/ai/AiCopilot.vue.d.ts +2 -0
- package/dist/components/ai/AiCopilot.vue.d.ts.map +1 -1
- package/dist/components/ai/AiCopilot.vue_vue_type_script_setup_true_lang.js +7 -2
- package/dist/components/ai/AiCopilot.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/cms/CmsPage.vue_vue_type_script_setup_true_lang.js +19 -19
- package/dist/components/cms/CmsPage.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/cms/LivePreview.js.map +1 -1
- package/dist/components/cms/LivePreview.vue.d.ts.map +1 -1
- package/dist/components/cms/LivePreview.vue_vue_type_script_setup_true_lang.js +83 -83
- package/dist/components/cms/LivePreview.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/fields/BuilderField.js.map +1 -1
- package/dist/components/fields/BuilderField.vue.d.ts.map +1 -1
- package/dist/components/fields/BuilderField.vue_vue_type_script_setup_true_lang.js +162 -157
- package/dist/components/fields/BuilderField.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/fields/ImageEditorDialog.js.map +1 -1
- package/dist/components/fields/ImageEditorDialog.vue.d.ts.map +1 -1
- package/dist/components/fields/ImageEditorDialog.vue_vue_type_script_setup_true_lang.js +46 -46
- package/dist/components/fields/ImageEditorDialog.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/fields/KeyValueField.js.map +1 -1
- package/dist/components/fields/KeyValueField.vue.d.ts.map +1 -1
- package/dist/components/fields/KeyValueField.vue_vue_type_script_setup_true_lang.js +66 -66
- package/dist/components/fields/KeyValueField.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/fields/ModalTablePicker.js.map +1 -1
- package/dist/components/fields/ModalTablePicker.vue.d.ts.map +1 -1
- package/dist/components/fields/ModalTablePicker.vue_vue_type_script_setup_true_lang.js +113 -113
- package/dist/components/fields/ModalTablePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/fields/RepeaterField.js.map +1 -1
- package/dist/components/fields/RepeaterField.vue.d.ts.map +1 -1
- package/dist/components/fields/RepeaterField.vue_vue_type_script_setup_true_lang.js +12 -12
- package/dist/components/fields/RepeaterField.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/fields/RichEditorInput.js.map +1 -1
- package/dist/components/fields/RichEditorInput.vue.d.ts.map +1 -1
- package/dist/components/fields/RichEditorInput.vue_vue_type_script_setup_true_lang.js +166 -165
- package/dist/components/fields/RichEditorInput.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/fields/SliderField.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/fields/item-actions.d.ts +2 -2
- package/dist/components/fields/item-actions.d.ts.map +1 -1
- package/dist/components/fields/item-actions.js +31 -31
- package/dist/components/fields/item-actions.js.map +1 -1
- package/dist/components/form/FormBlock.js.map +1 -1
- package/dist/components/form/FormBlock.vue.d.ts.map +1 -1
- package/dist/components/form/FormBlock.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/form/FormBlock.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/form/form-context.js +25 -25
- package/dist/components/form/form-context.js.map +1 -1
- package/dist/components/kanban/KanbanBoard.js.map +1 -1
- package/dist/components/kanban/KanbanBoard.vue.d.ts.map +1 -1
- package/dist/components/kanban/KanbanBoard.vue_vue_type_script_setup_true_lang.js +5 -2
- package/dist/components/kanban/KanbanBoard.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/kanban/KanbanColumnHeader.js.map +1 -1
- package/dist/components/kanban/KanbanColumnHeader.vue.d.ts.map +1 -1
- package/dist/components/kanban/KanbanColumnHeader.vue_vue_type_script_setup_true_lang.js +64 -64
- package/dist/components/kanban/KanbanColumnHeader.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/layout/SectionComponent.js.map +1 -1
- package/dist/components/layout/SectionComponent.vue.d.ts.map +1 -1
- package/dist/components/layout/SectionComponent.vue_vue_type_script_setup_true_lang.js +23 -23
- package/dist/components/layout/SectionComponent.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/panel/DebugPanel.vue_vue_type_script_setup_true_lang.js +8 -8
- package/dist/components/panel/DebugPanel.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/panel/GlobalSearchPalette.js.map +1 -1
- package/dist/components/panel/GlobalSearchPalette.vue.d.ts.map +1 -1
- package/dist/components/panel/GlobalSearchPalette.vue_vue_type_script_setup_true_lang.js +102 -96
- package/dist/components/panel/GlobalSearchPalette.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/panel/NavGroup.vue_vue_type_script_setup_true_lang.js +10 -10
- package/dist/components/panel/NavGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/panel/NavGroupFlyout.vue_vue_type_script_setup_true_lang.js +9 -9
- package/dist/components/panel/NavGroupFlyout.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/panel/NavItem.vue_vue_type_script_setup_true_lang.js +16 -16
- package/dist/components/panel/NavItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/panel/NavSubItem.vue_vue_type_script_setup_true_lang.js +10 -10
- package/dist/components/panel/NavSubItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/panel/TenantMenu.vue_vue_type_script_setup_true_lang.js +35 -35
- package/dist/components/panel/TenantMenu.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/panel/Topbar.vue_vue_type_script_setup_true_lang.js +11 -11
- package/dist/components/panel/Topbar.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/realtime/use-live-updates.d.ts.map +1 -1
- package/dist/components/realtime/use-live-updates.js +24 -23
- package/dist/components/realtime/use-live-updates.js.map +1 -1
- package/dist/components/table/BooleanCell.vue_vue_type_script_setup_true_lang.js +2 -1
- package/dist/components/table/BooleanCell.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/table/ColumnHeader.js.map +1 -1
- package/dist/components/table/ColumnHeader.vue.d.ts.map +1 -1
- package/dist/components/table/ColumnHeader.vue_vue_type_script_setup_true_lang.js +55 -49
- package/dist/components/table/ColumnHeader.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/table/ColumnManager.js.map +1 -1
- package/dist/components/table/ColumnManager.vue.d.ts.map +1 -1
- package/dist/components/table/ColumnManager.vue_vue_type_script_setup_true_lang.js +5 -4
- package/dist/components/table/ColumnManager.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/table/ContentLayoutSort.js.map +1 -1
- package/dist/components/table/ContentLayoutSort.vue.d.ts.map +1 -1
- package/dist/components/table/ContentLayoutSort.vue_vue_type_script_setup_true_lang.js +5 -5
- package/dist/components/table/ContentLayoutSort.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/table/SelectCell.vue_vue_type_script_setup_true_lang.js +2 -1
- package/dist/components/table/SelectCell.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/table/SelectComboboxCell.vue_vue_type_script_setup_true_lang.js +2 -1
- package/dist/components/table/SelectComboboxCell.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/table/TableCellContent.js.map +1 -1
- package/dist/components/table/TableCellContent.vue.d.ts.map +1 -1
- package/dist/components/table/TableCellContent.vue_vue_type_script_setup_true_lang.js +4 -3
- package/dist/components/table/TableCellContent.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/table/TablePagination.js.map +1 -1
- package/dist/components/table/TablePagination.vue.d.ts.map +1 -1
- package/dist/components/table/TablePagination.vue_vue_type_script_setup_true_lang.js +87 -87
- package/dist/components/table/TablePagination.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/table/TextInputCell.vue_vue_type_script_setup_true_lang.js +2 -1
- package/dist/components/table/TextInputCell.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/table/cell-update.d.ts +6 -0
- package/dist/components/table/cell-update.d.ts.map +1 -1
- package/dist/components/table/cell-update.js.map +1 -1
- package/dist/components/translation-manager/TranslationManagerView.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/translation-manager/TranslationManagerView.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/ui/CommandAutoHighlight.js +7 -0
- package/dist/components/ui/CommandAutoHighlight.js.map +1 -0
- package/dist/components/ui/CommandAutoHighlight.vue.d.ts +21 -0
- package/dist/components/ui/CommandAutoHighlight.vue.d.ts.map +1 -0
- package/dist/components/ui/CommandAutoHighlight.vue_vue_type_script_setup_true_lang.js +18 -0
- package/dist/components/ui/CommandAutoHighlight.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/ui/DialogContent.js.map +1 -1
- package/dist/components/ui/DialogContent.vue.d.ts.map +1 -1
- package/dist/components/ui/DialogContent.vue_vue_type_script_setup_true_lang.js +13 -12
- package/dist/components/ui/DialogContent.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/ui/PopoverContent.js.map +1 -1
- package/dist/components/ui/PopoverContent.vue.d.ts.map +1 -1
- package/dist/components/ui/PopoverContent.vue_vue_type_script_setup_true_lang.js +9 -8
- package/dist/components/ui/PopoverContent.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/ui/SheetContent.js.map +1 -1
- package/dist/components/ui/SheetContent.vue.d.ts.map +1 -1
- package/dist/components/ui/SheetContent.vue_vue_type_script_setup_true_lang.js +13 -12
- package/dist/components/ui/SheetContent.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/ui/TooltipContent.js.map +1 -1
- package/dist/components/ui/TooltipContent.vue.d.ts.map +1 -1
- package/dist/components/ui/TooltipContent.vue_vue_type_script_setup_true_lang.js +9 -8
- package/dist/components/ui/TooltipContent.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/context.d.ts +7 -0
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +29 -26
- package/dist/context.js.map +1 -1
- package/dist/create-alfakit.d.ts.map +1 -1
- package/dist/create-alfakit.js +33 -31
- package/dist/create-alfakit.js.map +1 -1
- package/dist/eject-manifest.json +11 -2
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +219 -217
- package/dist/layouts/AppLayout.vue_vue_type_script_setup_true_lang.js +8 -8
- package/dist/layouts/AppLayout.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/layouts/AuthLayout.vue_vue_type_script_setup_true_lang.js +9 -9
- package/dist/layouts/FullscreenLayout.vue_vue_type_script_setup_true_lang.js +8 -8
- package/dist/layouts/FullscreenLayout.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/layouts/TopNavLayout.vue_vue_type_script_setup_true_lang.js +15 -15
- package/dist/layouts/TopNavLayout.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/layouts/lazy-layouts.d.ts +10 -0
- package/dist/layouts/lazy-layouts.d.ts.map +1 -0
- package/dist/layouts/lazy-layouts.js +8 -0
- package/dist/layouts/lazy-layouts.js.map +1 -0
- package/dist/layouts/panel-layouts.d.ts +8 -0
- package/dist/layouts/panel-layouts.d.ts.map +1 -0
- package/dist/layouts/panel-layouts.js +15 -0
- package/dist/layouts/panel-layouts.js.map +1 -0
- package/dist/lib/lazy.d.ts.map +1 -1
- package/dist/lib/lazy.js +2 -2
- package/dist/lib/lazy.js.map +1 -1
- package/dist/pages/PageShell.js.map +1 -1
- package/dist/pages/PageShell.vue.d.ts.map +1 -1
- package/dist/pages/PageShell.vue_vue_type_script_setup_true_lang.js +39 -42
- package/dist/pages/PageShell.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/standalone/AlfakitComponent.js.map +1 -1
- package/dist/standalone/AlfakitComponent.vue.d.ts.map +1 -1
- package/dist/standalone/AlfakitComponent.vue_vue_type_script_setup_true_lang.js +56 -52
- package/dist/standalone/AlfakitComponent.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/standalone.css +7 -0
- package/dist/starter-kit/AlfakitStarterKitRoot.js.map +1 -1
- package/dist/starter-kit/AlfakitStarterKitRoot.vue.d.ts +2 -2
- package/dist/starter-kit/AlfakitStarterKitRoot.vue.d.ts.map +1 -1
- package/dist/starter-kit/AlfakitStarterKitRoot.vue_vue_type_script_setup_true_lang.js +17 -12
- package/dist/starter-kit/AlfakitStarterKitRoot.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/starter-kit/dashboard-widgets.d.ts +54 -0
- package/dist/starter-kit/dashboard-widgets.d.ts.map +1 -0
- package/dist/starter-kit/dashboard-widgets.js +54 -0
- package/dist/starter-kit/dashboard-widgets.js.map +1 -0
- package/dist/starter-kit/index.d.ts +2 -1
- package/dist/starter-kit/index.d.ts.map +1 -1
- package/dist/starter-kit/index.js +5 -4
- package/dist/starter-kit/runtime.d.ts +6 -0
- package/dist/starter-kit/runtime.d.ts.map +1 -1
- package/dist/starter-kit/runtime.js +19 -15
- package/dist/starter-kit/runtime.js.map +1 -1
- package/dist/starter-kit/starter-kit.d.ts.map +1 -1
- package/dist/starter-kit/starter-kit.js +8 -8
- package/dist/starter-kit/starter-kit.js.map +1 -1
- package/dist/starter-kit/widgets/CopilotTrigger.js +7 -0
- package/dist/starter-kit/widgets/CopilotTrigger.js.map +1 -0
- package/dist/starter-kit/widgets/CopilotTrigger.vue.d.ts +12 -0
- package/dist/starter-kit/widgets/CopilotTrigger.vue.d.ts.map +1 -0
- package/dist/starter-kit/widgets/CopilotTrigger.vue_vue_type_script_setup_true_lang.js +23 -0
- package/dist/starter-kit/widgets/CopilotTrigger.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/starter-kit/widgets/LoadedCopilot.js +7 -0
- package/dist/starter-kit/widgets/LoadedCopilot.js.map +1 -0
- package/dist/starter-kit/widgets/LoadedCopilot.vue.d.ts +8 -0
- package/dist/starter-kit/widgets/LoadedCopilot.vue.d.ts.map +1 -0
- package/dist/starter-kit/widgets/LoadedCopilot.vue_vue_type_script_setup_true_lang.js +31 -0
- package/dist/starter-kit/widgets/LoadedCopilot.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/starter-kit/widgets/StarterKitImpersonationBanner.js +7 -0
- package/dist/starter-kit/widgets/StarterKitImpersonationBanner.js.map +1 -0
- package/dist/starter-kit/widgets/StarterKitImpersonationBanner.vue.d.ts +8 -0
- package/dist/starter-kit/widgets/StarterKitImpersonationBanner.vue.d.ts.map +1 -0
- package/dist/starter-kit/widgets/StarterKitImpersonationBanner.vue_vue_type_script_setup_true_lang.js +34 -0
- package/dist/starter-kit/widgets/StarterKitImpersonationBanner.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/starter-kit/widgets/index.d.ts +40 -9
- package/dist/starter-kit/widgets/index.d.ts.map +1 -1
- package/dist/starter-kit/widgets/index.js +21 -18
- package/dist/starter-kit/widgets/index.js.map +1 -1
- package/dist/starter-kit/widgets/loaded.d.ts +10 -0
- package/dist/starter-kit/widgets/loaded.d.ts.map +1 -0
- package/dist/starter-kit/widgets/loaded.js +5 -0
- package/dist/styles.css +9 -2
- package/dist/themes.css +6 -1
- package/package.json +2 -2
- package/src/AlfakitRoot.vue +9 -1
- package/src/components/actions/ActionGroupMenu.vue +13 -1
- package/src/components/actions/ActionModal.vue +9 -0
- package/src/components/ai/AiCopilot.vue +7 -1
- package/src/components/cms/LivePreview.vue +8 -2
- package/src/components/fields/BuilderField.vue +15 -2
- package/src/components/fields/ImageEditorDialog.vue +7 -3
- package/src/components/fields/KeyValueField.vue +3 -2
- package/src/components/fields/ModalTablePicker.vue +7 -2
- package/src/components/fields/RepeaterField.vue +2 -3
- package/src/components/fields/RichEditorInput.vue +3 -0
- package/src/components/fields/item-actions.ts +31 -10
- package/src/components/form/FormBlock.vue +2 -1
- package/src/components/form/form-context.ts +2 -2
- package/src/components/kanban/KanbanBoard.vue +15 -3
- package/src/components/kanban/KanbanColumnHeader.vue +6 -4
- package/src/components/layout/SectionComponent.vue +10 -4
- package/src/components/panel/GlobalSearchPalette.vue +2 -0
- package/src/components/realtime/use-live-updates.ts +3 -1
- package/src/components/table/ColumnHeader.vue +23 -12
- package/src/components/table/ColumnManager.vue +12 -8
- package/src/components/table/ContentLayoutSort.vue +7 -1
- package/src/components/table/TableCellContent.vue +4 -2
- package/src/components/table/TablePagination.vue +12 -7
- package/src/components/table/cell-update.ts +6 -0
- package/src/components/ui/CommandAutoHighlight.vue +27 -0
- package/src/components/ui/DialogContent.vue +5 -1
- package/src/components/ui/PopoverContent.vue +5 -1
- package/src/components/ui/SheetContent.vue +5 -1
- package/src/components/ui/TooltipContent.vue +5 -1
- package/src/context.ts +10 -0
- package/src/create-alfakit.ts +5 -0
- package/src/index.ts +2 -0
- package/src/layouts/lazy-layouts.ts +14 -0
- package/src/layouts/panel-layouts.ts +17 -0
- package/src/lib/lazy.ts +11 -1
- package/src/pages/PageShell.vue +5 -6
- package/src/standalone/AlfakitComponent.vue +17 -6
- package/src/starter-kit/AlfakitStarterKitRoot.vue +12 -3
- package/src/starter-kit/dashboard-widgets.ts +93 -0
- package/src/starter-kit/index.ts +7 -1
- package/src/starter-kit/runtime.ts +17 -1
- package/src/starter-kit/starter-kit.ts +2 -1
- package/src/starter-kit/widgets/CopilotTrigger.vue +58 -0
- package/src/starter-kit/widgets/LoadedCopilot.vue +29 -0
- package/src/starter-kit/widgets/StarterKitImpersonationBanner.vue +57 -0
- package/src/starter-kit/widgets/index.ts +56 -11
- package/src/starter-kit/widgets/loaded.ts +9 -0
- package/src/styles.css +9 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppLayout.vue_vue_type_script_setup_true_lang.js","names":["AppSidebar","Topbar","BottomNav","_openBlock","_createBlock","TopNavLayout","_withCtx","_renderSlot","SidebarProvider","_normalizeStyle","_unref","_createVNode","Slot","_resolveDynamicComponent","SidebarInset","MobileTopbar","_createElementVNode","_normalizeClass","_createCommentVNode","Slot_default","AppSidebar_default","BottomNav_default","
|
|
1
|
+
{"version":3,"file":"AppLayout.vue_vue_type_script_setup_true_lang.js","names":["AppSidebar","Topbar","BottomNav","_openBlock","_createBlock","TopNavLayout","_withCtx","_renderSlot","SidebarProvider","_normalizeStyle","_unref","_createVNode","Slot","_resolveDynamicComponent","SidebarInset","MobileTopbar","_createElementVNode","_normalizeClass","_createCommentVNode","Slot_default","AppSidebar_default","BottomNav_default","Topbar_default","SidebarInset_default","SidebarProvider_default","MobileTopbar_default","TopNavLayout_default","AppLayout_vue_vue_type_script_setup_true_lang_default","props","__props","pageProps","useAlfakitProps","registry","useRegistry","layout","computed","Sidebar","Bar","Bottom","mobilePreset","hasMobilePreset","showTopbar","hasTopbar","defaultOpen","sidebarDefaultOpen","width","openBlock","createBlock","withCtx","renderSlot","_ctx","normalizeStyle","unref","sidebarWidthStyle","createVNode","resolveDynamicComponent","createElementVNode","normalizeClass","cn","MAX_WIDTHS","createCommentVNode"],"sources":["../../src/layouts/AppLayout.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport {\n hasMobilePreset,\n hasTopbar,\n sidebarDefaultOpen,\n sidebarWidthStyle,\n type BreadcrumbSchema,\n type PageSchema,\n type Width,\n} from '@alfakit/core'\nimport { computed } from 'vue'\nimport AppSidebar from '../components/panel/AppSidebar.vue'\nimport BottomNav from '../components/panel/BottomNav.vue'\nimport MobileTopbar from '../components/panel/MobileTopbar.vue'\nimport Slot from '../components/panel/Slot.vue'\nimport Topbar from '../components/panel/Topbar.vue'\nimport SidebarInset from '../components/ui/SidebarInset.vue'\nimport SidebarProvider from '../components/ui/SidebarProvider.vue'\nimport { useAlfakitProps, useRegistry } from '../context'\nimport { cn } from '../lib/utils'\nimport { MAX_WIDTHS } from './max-widths'\nimport TopNavLayout from './TopNavLayout.vue'\n\n/** Sidebar + topbar shell used by every authenticated page. */\nconst props = defineProps<{\n breadcrumbs?: BreadcrumbSchema[]\n maxContentWidth?: Width | string\n page?: PageSchema\n}>()\nconst pageProps = useAlfakitProps()\nconst registry = useRegistry()\nconst layout = computed(() => pageProps.value.alfakit.theme?.design?.layout ?? 'sidebar')\n// Replace the sidebar or top bar everywhere with createAlfakit({ components: { 'panel:sidebar': … } }).\nconst Sidebar = computed(() => registry.resolve('panel:sidebar') ?? AppSidebar)\nconst Bar = computed(() => registry.resolve('panel:topbar') ?? Topbar)\n// The mobile preset's bottom bar (`Panel::mobile()`), hidden from `md` up.\nconst Bottom = computed(() => registry.resolve('panel:bottom-nav') ?? BottomNav)\nconst mobilePreset = computed(() => hasMobilePreset(pageProps.value.alfakit))\n// `topbar(false)`: no top bar, except a slim one with the sidebar toggle on phones.\nconst showTopbar = computed(() => hasTopbar(pageProps.value.alfakit))\n// The rail layout starts as icons only until the user expands it.\nconst defaultOpen = computed(() =>\n sidebarDefaultOpen(pageProps.value.alfakitSidebarOpen, layout.value),\n)\nconst width = computed(\n () => props.maxContentWidth ?? pageProps.value.alfakit.maxContentWidth ?? '7xl',\n)\n</script>\n\n<template>\n <TopNavLayout\n v-if=\"layout === 'topbar'\"\n :breadcrumbs=\"props.breadcrumbs\"\n :max-content-width=\"props.maxContentWidth\"\n >\n <slot />\n </TopNavLayout>\n <SidebarProvider v-else :default-open=\"defaultOpen\" :style=\"sidebarWidthStyle(pageProps.alfakit)\">\n <Slot name=\"body.start\" />\n <Slot name=\"layout.start\" />\n <component :is=\"Sidebar\" />\n <SidebarInset>\n <Slot name=\"topbar.before\" />\n <component :is=\"Bar\" v-if=\"showTopbar\" :breadcrumbs=\"props.breadcrumbs\" />\n <MobileTopbar v-else />\n <Slot name=\"topbar.after\" />\n <Slot name=\"content.before\" />\n <div\n data-slot=\"content\"\n :class=\"\n cn(\n 'mx-auto flex w-full min-w-0 flex-1 flex-col gap-6 p-4 md:p-6',\n MAX_WIDTHS[width] ?? 'max-w-7xl',\n )\n \"\n >\n <Slot name=\"content.start\" />\n <slot />\n <Slot name=\"content.end\" />\n </div>\n <Slot name=\"content.after\" />\n <Slot name=\"footer\" />\n </SidebarInset>\n <component :is=\"Bottom\" v-if=\"mobilePreset\" />\n <Slot name=\"layout.end\" />\n <Slot name=\"body.end\" />\n </SidebarProvider>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;EAwBA,IAAM4B,IAAQC,GAKRC,IAAYC,EAAgB,GAC5BC,IAAWC,EAAY,GACvBC,IAASC,QAAeL,EAAU,MAAM,QAAQ,OAAO,QAAQ,UAAU,SAAS,GAElFM,IAAUD,QAAeH,EAAS,QAAQ,eAAe,KAAKhC,CAAU,GACxEqC,IAAMF,QAAeH,EAAS,QAAQ,cAAc,KAAK/B,CAAM,GAE/DqC,IAASH,QAAeH,EAAS,QAAQ,kBAAkB,KAAK9B,CAAS,GACzEqC,IAAeJ,QAAeK,EAAgBV,EAAU,MAAM,OAAO,CAAC,GAEtEW,IAAaN,QAAeO,EAAUZ,EAAU,MAAM,OAAO,CAAC,GAE9Da,IAAcR,QAClBS,EAAmBd,EAAU,MAAM,oBAAoBI,EAAO,KAAK,CACrE,GACMW,IAAQV,QACNP,EAAM,mBAAmBE,EAAU,MAAM,QAAQ,mBAAmB,KAC5E;mBAKUI,EAAA,UAAM,YADd/B,EAAA,GAAAC,EAMeC,GAAA;;GAJZ,aAAauB,EAAM;GACnB,qBAAmBA,EAAM;;GAE1B,SAAAtB,QAAQ,CAARC,EAAQ2C,EAAA,QAAA,SAAA,CAAA,CAAA;;EAEV/C,GAAAA,GAAAA,CAAAA,eAAAA,mBAAAA,CAAAA,MAAAA,EAAA,GAAAC,EA6BkBI,GAAA;;GA7BO,gBAAcmC,EAAA;GAAc,OAAKlC,EAAEC,EAAA2C,CAAA,CAAiB,CAAC3C,EAAAoB,CAAA,CAAS,CAAC,OAAO,CAAA;;GAC7F,SAAAxB,QAA0B;IAA1BK,EAA0BC,GAAA,EAApB,MAAK,aAAY,CAAA;IACvBD,EAA4BC,GAAA,EAAtB,MAAK,eAAc,CAAA;KACzBT,EAAA,GAAAC,EAA2BS,EAAXuB,EAAA,KAAO,CAAA;IACvBzB,EAqBeG,GAAA,MAAA;KApBb,SAAAR,QAA6B;MAA7BK,EAA6BC,GAAA,EAAvB,MAAK,gBAAe,CAAA;MACC6B,EAAA,SAA3BtC,EAAA,GAAAC,EAA0ES,EAA1DwB,EAAA,KAAG,GAAA;;OAAqB,aAAaT,EAAM;MAC3DzB,GAAAA,MAAAA,GAAAA,CAAAA,aAAAA,CAAAA,MAAAA,EAAA,GAAAC,EAAuBW,GAAA,EAAA,KAAA,EAAA,CAAA;MACvBJ,EAA4BC,GAAA,EAAtB,MAAK,eAAc,CAAA;MACzBD,EAA8BC,GAAA,EAAxB,MAAK,iBAAgB,CAAA;MAC3BI,EAYM,OAAA;OAXJ,aAAU;OACT,OAAKC,EAAaP,EAAAgD,CAAA,CAAE,CAAA,gEAA0FhD,EAAAiD,CAAA,CAAU,CAACd,EAAA,UAAK,WAAA,CAAA;;OAO/HlC,EAA6BC,GAAA,EAAvB,MAAK,gBAAe,CAAA;OAC1BL,EAAQ2C,EAAA,QAAA,SAAA;OACRvC,EAA2BC,GAAA,EAArB,MAAK,cAAa,CAAA;;MAE1BD,EAA6BC,GAAA,EAAvB,MAAK,gBAAe,CAAA;MAC1BD,EAAsBC,GAAA,EAAhB,MAAK,SAAQ,CAAA;;;;IAES2B,EAAA,SAA9BpC,EAAA,GAAAC,EAA8CS,EAA9ByB,EAAA,KAAM,GAAA,EAAA,KAAA,EAAA,CAAA,KAAAsB,EAAA,IAAA,EAAA;IACtBjD,EAA0BC,GAAA,EAApB,MAAK,aAAY,CAAA;IACvBD,EAAwBC,GAAA,EAAlB,MAAK,WAAU,CAAA"}
|
|
@@ -6,10 +6,10 @@ import i from "../components/ui/CardContent.js";
|
|
|
6
6
|
import a from "../components/panel/Brand.js";
|
|
7
7
|
import o from "../components/panel/LocaleSwitcher.js";
|
|
8
8
|
import s from "../components/panel/ThemeToggle.js";
|
|
9
|
-
import
|
|
10
|
-
import l from "../components/ui/
|
|
11
|
-
import u from "../components/ui/
|
|
12
|
-
import d from "
|
|
9
|
+
import c from "../components/ui/CardDescription.js";
|
|
10
|
+
import l from "../components/ui/CardHeader.js";
|
|
11
|
+
import u from "../components/ui/CardTitle.js";
|
|
12
|
+
import { MAX_WIDTHS as d } from "./max-widths.js";
|
|
13
13
|
import { computed as f, createBlock as p, createCommentVNode as m, createElementBlock as h, createElementVNode as g, createTextVNode as _, createVNode as v, defineComponent as y, normalizeClass as b, openBlock as x, renderSlot as S, toDisplayString as C, unref as w, withCtx as T } from "vue";
|
|
14
14
|
//#region src/layouts/AuthLayout.vue?vue&type=script&setup=true&lang.ts
|
|
15
15
|
var E = { class: "bg-muted/40 flex min-h-svh flex-col items-center justify-center gap-6 p-6 md:p-10" }, D = { class: "absolute end-4 top-4 flex items-center gap-1" }, O = { class: "flex justify-center" }, k = /*@__PURE__*/ y({
|
|
@@ -20,8 +20,8 @@ var E = { class: "bg-muted/40 flex min-h-svh flex-col items-center justify-cente
|
|
|
20
20
|
page: {}
|
|
21
21
|
},
|
|
22
22
|
setup(y) {
|
|
23
|
-
let k = y, A = e(), j = f(() =>
|
|
24
|
-
return (e,
|
|
23
|
+
let k = y, A = e(), j = f(() => d[A.value?.simplePageMaxContentWidth ?? "md"] ?? "max-w-md");
|
|
24
|
+
return (e, d) => (x(), h("div", E, [
|
|
25
25
|
v(n, { name: "simple.layout.start" }),
|
|
26
26
|
g("div", D, [v(o), v(s)]),
|
|
27
27
|
g("div", { class: b(w(t)("flex w-full flex-col gap-6", j.value)) }, [
|
|
@@ -30,11 +30,11 @@ var E = { class: "bg-muted/40 flex min-h-svh flex-col items-center justify-cente
|
|
|
30
30
|
v(r, null, {
|
|
31
31
|
default: T(() => [
|
|
32
32
|
v(n, { name: "simple.page.start" }),
|
|
33
|
-
k.heading || k.subheading ? (x(), p(
|
|
33
|
+
k.heading || k.subheading ? (x(), p(l, {
|
|
34
34
|
key: 0,
|
|
35
35
|
class: "text-center"
|
|
36
36
|
}, {
|
|
37
|
-
default: T(() => [k.heading ? (x(), p(
|
|
37
|
+
default: T(() => [k.heading ? (x(), p(u, {
|
|
38
38
|
key: 0,
|
|
39
39
|
role: "heading",
|
|
40
40
|
"aria-level": "1",
|
|
@@ -42,7 +42,7 @@ var E = { class: "bg-muted/40 flex min-h-svh flex-col items-center justify-cente
|
|
|
42
42
|
}, {
|
|
43
43
|
default: T(() => [_(C(k.heading), 1)]),
|
|
44
44
|
_: 1
|
|
45
|
-
})) : m("", !0), k.subheading ? (x(), p(
|
|
45
|
+
})) : m("", !0), k.subheading ? (x(), p(c, { key: 1 }, {
|
|
46
46
|
default: T(() => [_(C(k.subheading), 1)]),
|
|
47
47
|
_: 1
|
|
48
48
|
})) : m("", !0)]),
|
|
@@ -5,10 +5,10 @@ import r from "../components/panel/Slot.js";
|
|
|
5
5
|
import i from "../components/notifications/NotificationsMenu.js";
|
|
6
6
|
import a from "../components/panel/Brand.js";
|
|
7
7
|
import o from "../components/panel/UserMenu.js";
|
|
8
|
-
import s from "../components/panel/
|
|
9
|
-
import c from "../components/
|
|
10
|
-
import l from "../components/
|
|
11
|
-
import u from "../components/panel/
|
|
8
|
+
import s from "../components/panel/DebugPanelSlot.js";
|
|
9
|
+
import c from "../components/panel/ThemeToggle.js";
|
|
10
|
+
import l from "../components/ui/Separator.js";
|
|
11
|
+
import u from "../components/panel/TopbarLocaleSwitcher.js";
|
|
12
12
|
import { Link as d } from "@inertiajs/vue3";
|
|
13
13
|
import { computed as f, createBlock as p, createCommentVNode as m, createElementBlock as h, createElementVNode as g, createVNode as _, defineComponent as v, openBlock as y, renderSlot as b, toDisplayString as x, unref as S, withCtx as C } from "vue";
|
|
14
14
|
import { LogOutIcon as w } from "@lucide/vue";
|
|
@@ -39,7 +39,7 @@ var T = {
|
|
|
39
39
|
_(r, { name: "topbar.logo.before" }),
|
|
40
40
|
_(a, { class: "hidden shrink-0 sm:flex" }),
|
|
41
41
|
_(r, { name: "topbar.logo.after" }),
|
|
42
|
-
_(
|
|
42
|
+
_(l, {
|
|
43
43
|
orientation: "vertical",
|
|
44
44
|
class: "hidden h-4 sm:block"
|
|
45
45
|
}),
|
|
@@ -48,9 +48,9 @@ var T = {
|
|
|
48
48
|
g("div", O, [
|
|
49
49
|
_(r, { name: "topbar.end" }),
|
|
50
50
|
_(i),
|
|
51
|
-
_(s),
|
|
52
51
|
_(u),
|
|
53
|
-
_(
|
|
52
|
+
_(c),
|
|
53
|
+
_(s),
|
|
54
54
|
_(o, { variant: "topbar" }),
|
|
55
55
|
I.value ? (y(), p(n, {
|
|
56
56
|
key: 0,
|
|
@@ -77,7 +77,7 @@ var T = {
|
|
|
77
77
|
_: 1
|
|
78
78
|
})) : m("", !0)
|
|
79
79
|
])
|
|
80
|
-
])) : (y(), h("div", j, [_(
|
|
80
|
+
])) : (y(), h("div", j, [_(s)])),
|
|
81
81
|
g("main", M, [
|
|
82
82
|
_(r, { name: "content.start" }),
|
|
83
83
|
b(e.$slots, "default"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FullscreenLayout.vue_vue_type_script_setup_true_lang.js","names":["_openBlock","_createElementBlock","_createVNode","Slot","Brand","Separator","_createElementVNode","_toDisplayString","NotificationsMenu","TopbarLocaleSwitcher","ThemeToggle","DebugPanelSlot","UserMenu","_createBlock","Button","_withCtx","_unref","Icon","_createCommentVNode","_renderSlot","Icon_default","Button_default","Slot_default","NotificationsMenu_default","Brand_default","UserMenu_default","
|
|
1
|
+
{"version":3,"file":"FullscreenLayout.vue_vue_type_script_setup_true_lang.js","names":["_openBlock","_createElementBlock","_createVNode","Slot","Brand","Separator","_createElementVNode","_toDisplayString","NotificationsMenu","TopbarLocaleSwitcher","ThemeToggle","DebugPanelSlot","UserMenu","_createBlock","Button","_withCtx","_unref","Icon","_createCommentVNode","_renderSlot","Icon_default","Button_default","Slot_default","NotificationsMenu_default","Brand_default","UserMenu_default","DebugPanelSlot_default","ThemeToggle_default","Separator_default","TopbarLocaleSwitcher_default","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","FullscreenLayout_vue_vue_type_script_setup_true_lang_default","props","__props","t","useT","header","computed","exitUrl","openBlock","createElementBlock","createVNode","createElementVNode","toDisplayString","createBlock","withCtx","unref","Link","LogOutIcon","createCommentVNode","renderSlot","_ctx"],"sources":["../../src/layouts/FullscreenLayout.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { PageSchema } from '@alfakit/core'\nimport { Link } from '@inertiajs/vue3'\nimport { LogOutIcon } from '@lucide/vue'\nimport { computed } from 'vue'\nimport NotificationsMenu from '../components/notifications/NotificationsMenu.vue'\nimport Brand from '../components/panel/Brand.vue'\nimport DebugPanelSlot from '../components/panel/DebugPanelSlot.vue'\nimport Slot from '../components/panel/Slot.vue'\nimport ThemeToggle from '../components/panel/ThemeToggle.vue'\nimport TopbarLocaleSwitcher from '../components/panel/TopbarLocaleSwitcher.vue'\nimport UserMenu from '../components/panel/UserMenu.vue'\nimport Button from '../components/ui/Button.vue'\nimport Separator from '../components/ui/Separator.vue'\nimport { useT } from '../context'\nimport { Icon } from '../lib/icons'\n\n/**\n * `$layout = 'fullscreen'`: the whole viewport for an app screen (point of sale, kiosk,\n * board). No sidebar or topbar; an optional slim header keeps the brand, the page title,\n * notifications, the user menu and a way back to the panel. Toasts, modals and the debug\n * panel work as on every other page. Replace it with `components: { 'layout:fullscreen': … }`.\n */\nconst props = defineProps<{ page?: PageSchema }>()\nconst t = useT()\nconst header = computed(() => props.page?.fullscreen?.header !== false)\nconst exitUrl = computed(() => props.page?.fullscreen?.exitUrl)\n</script>\n\n<template>\n <div data-layout=\"fullscreen\" class=\"bg-background flex h-svh min-h-0 flex-col\">\n <Slot name=\"body.start\" />\n <Slot name=\"layout.start\" />\n <header\n v-if=\"header\"\n data-slot=\"topbar\"\n data-variant=\"fullscreen\"\n class=\"bg-background flex h-12 shrink-0 items-center gap-3 border-b px-3 md:px-4\"\n >\n <Slot name=\"topbar.logo.before\" />\n <Brand class=\"hidden shrink-0 sm:flex\" />\n <Slot name=\"topbar.logo.after\" />\n <Separator orientation=\"vertical\" class=\"hidden h-4 sm:block\" />\n <h1 class=\"min-w-0 truncate text-sm font-semibold\">\n {{ props.page?.heading ?? props.page?.title }}\n </h1>\n <Slot name=\"topbar.start\" />\n <div class=\"ms-auto flex shrink-0 items-center gap-1\">\n <Slot name=\"topbar.end\" />\n <NotificationsMenu />\n <TopbarLocaleSwitcher />\n <ThemeToggle />\n <DebugPanelSlot />\n <UserMenu variant=\"topbar\" />\n <Button v-if=\"exitUrl\" variant=\"ghost\" size=\"sm\" as-child>\n <Link :href=\"exitUrl\" data-slot=\"fullscreen-exit\">\n <Icon\n name=\"alfakit::panels.widgets.account.logout-button\"\n :fallback=\"LogOutIcon\"\n class=\"rtl:rotate-180\"\n aria-hidden=\"true\"\n />\n <span class=\"hidden sm:inline\">{{ t('exit_fullscreen', {}, 'Exit') }}</span>\n <span class=\"sr-only sm:hidden\">{{ t('exit_fullscreen', {}, 'Exit') }}</span>\n </Link>\n </Button>\n </div>\n </header>\n <div v-else class=\"fixed end-3 bottom-3 z-40\">\n <DebugPanelSlot />\n </div>\n <main data-slot=\"content\" class=\"flex min-h-0 w-full min-w-0 flex-1 flex-col\">\n <Slot name=\"content.start\" />\n <slot />\n <Slot name=\"content.end\" />\n </main>\n <Slot name=\"layout.end\" />\n <Slot name=\"body.end\" />\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuBA,IAAMuC,IAAQC,GACRC,IAAIC,EAAK,GACTC,IAASC,QAAeL,EAAM,MAAM,YAAY,WAAW,EAAK,GAChEM,IAAUD,QAAeL,EAAM,MAAM,YAAY,OAAO;oBAI5DvC,EAAA,GAAAC,EAgDM,OAhDN6B,GAgDM;GA/CJ5B,EAA0BC,GAAA,EAApB,MAAK,aAAY,CAAA;GACvBD,EAA4BC,GAAA,EAAtB,MAAK,eAAc,CAAA;GAEjBwC,EAAA,SADR3C,EAAA,GAAAC,EAkCS,UAlCT8B,GAkCS;IA5BP7B,EAAkCC,GAAA,EAA5B,MAAK,qBAAoB,CAAA;IAC/BD,EAAyCE,GAAA,EAAlC,OAAM,0BAAyB,CAAA;IACtCF,EAAiCC,GAAA,EAA3B,MAAK,oBAAmB,CAAA;IAC9BD,EAAgEG,GAAA;KAArD,aAAY;KAAW,OAAM;;IACxCC,EAEK,MAFL0B,GAEKzB,EADAgC,EAAM,MAAM,WAAWA,EAAM,MAAM,KAAK,GAAA,CAAA;IAE7CrC,EAA4BC,GAAA,EAAtB,MAAK,eAAc,CAAA;IACzBG,EAmBM,OAnBN2B,GAmBM;KAlBJ/B,EAA0BC,GAAA,EAApB,MAAK,aAAY,CAAA;KACvBD,EAAqBM,CAAA;KACrBN,EAAwBO,CAAA;KACxBP,EAAeQ,CAAA;KACfR,EAAkBS,CAAA;KAClBT,EAA6BU,GAAA,EAAnB,SAAQ,SAAQ,CAAA;KACZiC,EAAA,SAAd7C,EAAA,GAAAa,EAWSC,GAAA;;MAXc,SAAQ;MAAQ,MAAK;MAAK,YAAA;;MAC/C,SAAAC,QASO,CATPb,EASOc,EAAAsC,CAAA,GAAA;OATA,MAAMT,EAAA;OAAS,aAAU;;OAC9B,SAAA9B,QAKE;QALFb,EAKEc,EAAAC,CAAA,GAAA;SAJA,MAAK;SACJ,UAAUD,EAAAuC,CAAA;SACX,OAAM;SACN,eAAY;;QAEdjD,EAA4E,QAA5E4B,GAA4E3B,EAA1CS,EAAAyB,CAAA,CAAC,CAAA,mBAAA,CAAA,GAAA,MAAA,CAAA,GAAA,CAAA;QACnCnC,EAA6E,QAA7E6B,GAA6E5B,EAA1CS,EAAAyB,CAAA,CAAC,CAAA,mBAAA,CAAA,GAAA,MAAA,CAAA,GAAA,CAAA;;;;;;;GAK5CzC,CAAAA,MAAAA,EAAA,GAAAC,EAEM,OAFNmC,GAEM,CADJlC,EAAkBS,CAAA,CAAA,CAAA;GAEpBL,EAIO,QAJP+B,GAIO;IAHLnC,EAA6BC,GAAA,EAAvB,MAAK,gBAAe,CAAA;IAC1BgB,EAAQuC,EAAA,QAAA,SAAA;IACRxD,EAA2BC,GAAA,EAArB,MAAK,cAAa,CAAA;;GAE1BD,EAA0BC,GAAA,EAApB,MAAK,aAAY,CAAA;GACvBD,EAAwBC,GAAA,EAAlB,MAAK,WAAU,CAAA"}
|
|
@@ -9,17 +9,17 @@ import u from "../components/ui/SheetHeader.js";
|
|
|
9
9
|
import d from "../components/ui/SheetTitle.js";
|
|
10
10
|
import f from "../components/ui/SheetTrigger.js";
|
|
11
11
|
import p from "../lib/NewTabHint.js";
|
|
12
|
+
import m from "../components/panel/NavLabel.js";
|
|
12
13
|
import ee from "../components/notifications/NotificationsMenu.js";
|
|
13
|
-
import
|
|
14
|
-
import
|
|
15
|
-
import g from "../components/panel/NavLabel.js";
|
|
14
|
+
import h from "../components/panel/Brand.js";
|
|
15
|
+
import g from "../components/panel/GlobalSearch.js";
|
|
16
16
|
import _ from "../components/panel/TenantMenu.js";
|
|
17
17
|
import te from "../components/panel/UserMenu.js";
|
|
18
18
|
import ne from "../components/panel/BottomNav.js";
|
|
19
|
-
import re from "../components/panel/
|
|
20
|
-
import ie from "../components/panel/
|
|
21
|
-
import v from "../components/panel/
|
|
22
|
-
import y from "../components/panel/
|
|
19
|
+
import re from "../components/panel/Breadcrumbs.js";
|
|
20
|
+
import ie from "../components/panel/DebugPanelSlot.js";
|
|
21
|
+
import v from "../components/panel/ThemeToggle.js";
|
|
22
|
+
import y from "../components/panel/TopbarLocaleSwitcher.js";
|
|
23
23
|
import { MAX_WIDTHS as b } from "./max-widths.js";
|
|
24
24
|
import ae from "./TopNavGroupWrapper.js";
|
|
25
25
|
import x from "./TopNavMenu.js";
|
|
@@ -75,7 +75,7 @@ var H = {
|
|
|
75
75
|
}, {
|
|
76
76
|
default: B(() => [k(u, { class: "border-b" }, {
|
|
77
77
|
default: B(() => [k(d, { "as-child": "" }, {
|
|
78
|
-
default: B(() => [O("div", null, [k(
|
|
78
|
+
default: B(() => [O("div", null, [k(h)])]),
|
|
79
79
|
_: 1
|
|
80
80
|
})]),
|
|
81
81
|
_: 1
|
|
@@ -92,7 +92,7 @@ var H = {
|
|
|
92
92
|
default: B(() => [e.icon ? (N(), T(z(a), {
|
|
93
93
|
key: 0,
|
|
94
94
|
name: e.icon
|
|
95
|
-
}, null, 8, ["name"])) : E("", !0), k(
|
|
95
|
+
}, null, 8, ["name"])) : E("", !0), k(m, {
|
|
96
96
|
text: e.label,
|
|
97
97
|
html: e.labelHtml
|
|
98
98
|
}, null, 8, ["text", "html"])]),
|
|
@@ -103,7 +103,7 @@ var H = {
|
|
|
103
103
|
_: 1
|
|
104
104
|
}, 8, ["open"]),
|
|
105
105
|
k(s, { name: "topbar.logo.before" }),
|
|
106
|
-
k(
|
|
106
|
+
k(h, { class: "me-2 shrink-0" }),
|
|
107
107
|
k(s, { name: "topbar.logo.after" }),
|
|
108
108
|
z(Y).tenancy?.current ? (N(), T(s, {
|
|
109
109
|
key: 0,
|
|
@@ -162,7 +162,7 @@ var H = {
|
|
|
162
162
|
key: 0,
|
|
163
163
|
name: e.icon
|
|
164
164
|
}, null, 8, ["name"])) : E("", !0),
|
|
165
|
-
k(
|
|
165
|
+
k(m, {
|
|
166
166
|
text: e.label,
|
|
167
167
|
html: e.labelHtml
|
|
168
168
|
}, null, 8, ["text", "html"]),
|
|
@@ -181,7 +181,7 @@ var H = {
|
|
|
181
181
|
default: B(() => [e.icon ? (N(), T(z(a), {
|
|
182
182
|
key: 0,
|
|
183
183
|
name: e.icon
|
|
184
|
-
}, null, 8, ["name"])) : E("", !0), k(
|
|
184
|
+
}, null, 8, ["name"])) : E("", !0), k(m, {
|
|
185
185
|
text: e.label,
|
|
186
186
|
html: e.labelHtml
|
|
187
187
|
}, null, 8, ["text", "html"])]),
|
|
@@ -196,11 +196,11 @@ var H = {
|
|
|
196
196
|
k(s, { name: "topbar.start" }),
|
|
197
197
|
O("div", le, [
|
|
198
198
|
k(s, { name: "topbar.end" }),
|
|
199
|
-
k(
|
|
199
|
+
k(g),
|
|
200
200
|
k(ee),
|
|
201
|
-
k(re),
|
|
202
201
|
k(y),
|
|
203
202
|
k(v),
|
|
203
|
+
k(ie),
|
|
204
204
|
k(te, { variant: "topbar" })
|
|
205
205
|
])
|
|
206
206
|
], 2)]),
|
|
@@ -210,7 +210,7 @@ var H = {
|
|
|
210
210
|
"data-slot": "content",
|
|
211
211
|
class: M(z(i)("mx-auto flex w-full min-w-0 flex-1 flex-col gap-6 p-4 md:p-6", Q.value))
|
|
212
212
|
}, [
|
|
213
|
-
z(Y).breadcrumbs && J.breadcrumbs && J.breadcrumbs.length > 0 ? (N(), T(
|
|
213
|
+
z(Y).breadcrumbs && J.breadcrumbs && J.breadcrumbs.length > 0 ? (N(), T(re, {
|
|
214
214
|
key: 0,
|
|
215
215
|
items: J.breadcrumbs
|
|
216
216
|
}, null, 8, ["items"])) : E("", !0),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TopNavLayout.vue_vue_type_script_setup_true_lang.js","names":["BottomNav","_openBlock","_createElementBlock","_createVNode","Slot","_createElementVNode","_normalizeClass","_unref","Sheet","_withCtx","SheetTrigger","Button","Icon","SheetContent","SheetHeader","SheetTitle","Brand","_Fragment","_renderList","_toDisplayString","_createCommentVNode","_createBlock","NavLabel","TenantMenu","TopNavGroupWrapper","TopNavMenu","_mergeProps","NewTabHint","GlobalSearch","NotificationsMenu","TopbarLocaleSwitcher","ThemeToggle","DebugPanelSlot","UserMenu","Breadcrumbs","_renderSlot","_resolveDynamicComponent","Icon_default","Button_default","Slot_default","Sheet_default","SheetContent_default","SheetHeader_default","SheetTitle_default","SheetTrigger_default","NewTabHint_default","NotificationsMenu_default","Brand_default","GlobalSearch_default","NavLabel_default","TenantMenu_default","UserMenu_default","BottomNav_default","TopbarLocaleSwitcher_default","Breadcrumbs_default","DebugPanelSlot_default","ThemeToggle_default","TopNavGroupWrapper_default","TopNavMenu_default","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","linkClass","TopNavLayout_vue_vue_type_script_setup_true_lang_default","props","__props","panel","usePanel","t","useT","direction","useDirection","registry","useRegistry","open","ref","Bottom","computed","mobilePreset","hasMobilePreset","width","MAX_WIDTHS","isActive","item","openBlock","createElementBlock","createVNode","createElementVNode","normalizeClass","unref","cn","_cache","$event","withCtx","MenuIcon","Fragment","renderList","group","index","toDisplayString","createCommentVNode","entry","createBlock","Link","mergeProps","PREFETCH_CACHE_FOR","renderSlot","_ctx","resolveDynamicComponent"],"sources":["../../src/layouts/TopNavLayout.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport {\n PREFETCH_CACHE_FOR,\n hasMobilePreset,\n type BreadcrumbSchema,\n type NavigationItemSchema,\n type Width,\n} from '@alfakit/core'\nimport { Link } from '@inertiajs/vue3'\nimport { MenuIcon } from '@lucide/vue'\nimport { computed, ref } from 'vue'\nimport NotificationsMenu from '../components/notifications/NotificationsMenu.vue'\nimport BottomNav from '../components/panel/BottomNav.vue'\nimport Brand from '../components/panel/Brand.vue'\nimport TenantMenu from '../components/panel/TenantMenu.vue'\nimport Breadcrumbs from '../components/panel/Breadcrumbs.vue'\nimport GlobalSearch from '../components/panel/GlobalSearch.vue'\nimport NavLabel from '../components/panel/NavLabel.vue'\nimport Slot from '../components/panel/Slot.vue'\nimport DebugPanelSlot from '../components/panel/DebugPanelSlot.vue'\nimport ThemeToggle from '../components/panel/ThemeToggle.vue'\nimport TopbarLocaleSwitcher from '../components/panel/TopbarLocaleSwitcher.vue'\nimport UserMenu from '../components/panel/UserMenu.vue'\nimport Button from '../components/ui/Button.vue'\nimport Sheet from '../components/ui/Sheet.vue'\nimport SheetContent from '../components/ui/SheetContent.vue'\nimport SheetHeader from '../components/ui/SheetHeader.vue'\nimport SheetTitle from '../components/ui/SheetTitle.vue'\nimport SheetTrigger from '../components/ui/SheetTrigger.vue'\nimport { useDirection, usePanel, useRegistry, useT } from '../context'\nimport { Icon } from '../lib/icons'\nimport { cn } from '../lib/utils'\nimport { MAX_WIDTHS } from './max-widths'\nimport TopNavGroupWrapper from './TopNavGroupWrapper.vue'\nimport TopNavMenu from './TopNavMenu.vue'\nimport NewTabHint from '../lib/NewTabHint.vue'\n\n/**\n * Navigation across the top instead of a sidebar (`layout: 'topbar'`). Ungrouped items are\n * links; labelled groups and items with children open as dropdowns.\n */\nconst props = defineProps<{ breadcrumbs?: BreadcrumbSchema[]; maxContentWidth?: Width | string }>()\nconst panel = usePanel()\nconst t = useT()\nconst direction = useDirection()\nconst registry = useRegistry()\nconst open = ref(false)\nconst Bottom = computed(() => registry.resolve('panel:bottom-nav') ?? BottomNav)\nconst mobilePreset = computed(() => hasMobilePreset(panel.value))\nconst width = computed(\n () => MAX_WIDTHS[props.maxContentWidth ?? panel.value.maxContentWidth ?? '7xl'] ?? 'max-w-7xl',\n)\n\nconst isActive = (item: NavigationItemSchema): boolean =>\n Boolean(item.active || item.children?.some(isActive))\n\nconst linkClass =\n 'text-muted-foreground hover:text-foreground hover:bg-accent data-[active=true]:bg-accent data-[active=true]:text-foreground inline-flex h-9 shrink-0 items-center gap-2 rounded-md px-3 text-sm font-medium transition-colors [&_svg]:size-4'\n</script>\n\n<template>\n <div data-slot=\"topnav-layout\" class=\"bg-background flex min-h-svh flex-col\">\n <Slot name=\"body.start\" />\n <Slot name=\"layout.start\" />\n <Slot name=\"topbar.before\" />\n <header\n data-slot=\"topbar\"\n class=\"bg-background/90 supports-[backdrop-filter]:bg-background/70 sticky top-0 z-30 border-b backdrop-blur\"\n >\n <div :class=\"cn('mx-auto flex h-14 w-full items-center gap-3 px-4 md:px-6', width)\">\n <Sheet :open=\"open\" @update:open=\"open = $event\">\n <SheetTrigger as-child>\n <Button\n type=\"button\"\n variant=\"ghost\"\n size=\"icon\"\n class=\"md:hidden\"\n :aria-label=\"t('toggle_sidebar', {}, 'Toggle sidebar')\"\n >\n <Icon name=\"alfakit::panels.topbar.open-sidebar-button\" :fallback=\"MenuIcon\" />\n </Button>\n </SheetTrigger>\n <SheetContent :side=\"direction === 'rtl' ? 'right' : 'left'\" class=\"w-72 p-0\">\n <SheetHeader class=\"border-b\">\n <SheetTitle as-child>\n <div><Brand /></div>\n </SheetTitle>\n </SheetHeader>\n <nav class=\"flex flex-col gap-4 overflow-y-auto p-4 text-sm\">\n <div\n v-for=\"(group, index) in panel.navigation\"\n :key=\"group.label ?? index\"\n class=\"flex flex-col gap-1\"\n >\n <p v-if=\"group.label\" class=\"text-muted-foreground px-2 text-xs font-medium\">\n {{ group.label }}\n </p>\n <Link\n v-for=\"item in group.items.flatMap((entry) => [entry, ...(entry.children ?? [])])\"\n :key=\"item.label\"\n :href=\"item.url ?? '#'\"\n :data-active=\"item.active ? 'true' : undefined\"\n class=\"hover:bg-accent data-[active=true]:bg-accent flex items-center gap-2 rounded-md px-2 py-2 font-medium [&_svg]:size-4\"\n @click=\"open = false\"\n >\n <Icon v-if=\"item.icon\" :name=\"item.icon\" />\n <NavLabel :text=\"item.label\" :html=\"item.labelHtml\" />\n </Link>\n </div>\n </nav>\n </SheetContent>\n </Sheet>\n <Slot name=\"topbar.logo.before\" />\n <Brand class=\"me-2 shrink-0\" />\n <Slot name=\"topbar.logo.after\" />\n <Slot v-if=\"panel.tenancy?.current\" name=\"tenant-menu.before\" />\n <TenantMenu variant=\"topbar\" />\n <Slot v-if=\"panel.tenancy?.current\" name=\"tenant-menu.after\" />\n <nav\n data-slot=\"topnav\"\n :aria-label=\"t('navigation', {}, 'Navigation')\"\n class=\"hidden min-w-0 flex-1 items-center gap-1 self-stretch overflow-x-auto md:flex\"\n >\n <TopNavGroupWrapper\n v-for=\"(group, index) in panel.navigation\"\n :key=\"group.label ?? `group-${index}`\"\n :attributes=\"group.extraTopbarAttributes\"\n >\n <TopNavMenu\n v-if=\"group.label\"\n :label=\"group.label\"\n :icon=\"group.icon\"\n :items=\"group.items\"\n :active=\"group.items.some(isActive)\"\n />\n <template v-for=\"item in group.items\" v-else :key=\"item.label\">\n <TopNavMenu\n v-if=\"item.children && item.children.length > 0\"\n :label=\"item.label\"\n :label-html=\"item.labelHtml\"\n :icon=\"item.icon\"\n :items=\"item.children\"\n :active=\"isActive(item)\"\n :attributes=\"item.extraAttributes\"\n />\n <a\n v-else-if=\"item.openInNewTab\"\n v-bind=\"item.extraAttributes ?? {}\"\n :href=\"item.url\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n data-slot=\"topnav-link\"\n :class=\"linkClass\"\n >\n <Icon v-if=\"item.icon\" :name=\"item.icon\" />\n <NavLabel :text=\"item.label\" :html=\"item.labelHtml\" />\n <NewTabHint />\n </a>\n <Link\n v-else\n v-bind=\"item.extraAttributes ?? {}\"\n :href=\"item.url ?? '#'\"\n prefetch\n :cache-for=\"PREFETCH_CACHE_FOR\"\n data-slot=\"topnav-link\"\n :data-active=\"item.active ? 'true' : undefined\"\n :class=\"linkClass\"\n >\n <Icon v-if=\"item.icon\" :name=\"item.icon\" />\n <NavLabel :text=\"item.label\" :html=\"item.labelHtml\" />\n </Link>\n </template>\n </TopNavGroupWrapper>\n </nav>\n <Slot name=\"topbar.start\" />\n <div class=\"ms-auto flex shrink-0 items-center gap-1\">\n <Slot name=\"topbar.end\" />\n <GlobalSearch />\n <NotificationsMenu />\n <TopbarLocaleSwitcher />\n <ThemeToggle />\n <DebugPanelSlot />\n <UserMenu variant=\"topbar\" />\n </div>\n </div>\n </header>\n <Slot name=\"topbar.after\" />\n <Slot name=\"content.before\" />\n <main\n data-slot=\"content\"\n :class=\"cn('mx-auto flex w-full min-w-0 flex-1 flex-col gap-6 p-4 md:p-6', width)\"\n >\n <Breadcrumbs\n v-if=\"panel.breadcrumbs && props.breadcrumbs && props.breadcrumbs.length > 0\"\n :items=\"props.breadcrumbs\"\n />\n <Slot name=\"content.start\" />\n <slot />\n <Slot name=\"content.end\" />\n </main>\n <Slot name=\"content.after\" />\n <Slot name=\"footer\" />\n <component :is=\"Bottom\" v-if=\"mobilePreset\" />\n <Slot name=\"layout.end\" />\n <Slot name=\"body.end\" />\n </div>\n</template>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TopNavLayout.vue_vue_type_script_setup_true_lang.js","names":["BottomNav","_openBlock","_createElementBlock","_createVNode","Slot","_createElementVNode","_normalizeClass","_unref","Sheet","_withCtx","SheetTrigger","Button","Icon","SheetContent","SheetHeader","SheetTitle","Brand","_Fragment","_renderList","_toDisplayString","_createCommentVNode","_createBlock","NavLabel","TenantMenu","TopNavGroupWrapper","TopNavMenu","_mergeProps","NewTabHint","GlobalSearch","NotificationsMenu","TopbarLocaleSwitcher","ThemeToggle","DebugPanelSlot","UserMenu","Breadcrumbs","_renderSlot","_resolveDynamicComponent","Icon_default","Button_default","Slot_default","Sheet_default","SheetContent_default","SheetHeader_default","SheetTitle_default","SheetTrigger_default","NewTabHint_default","NavLabel_default","NotificationsMenu_default","Brand_default","GlobalSearch_default","TenantMenu_default","UserMenu_default","BottomNav_default","Breadcrumbs_default","DebugPanelSlot_default","ThemeToggle_default","TopbarLocaleSwitcher_default","TopNavGroupWrapper_default","TopNavMenu_default","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","linkClass","TopNavLayout_vue_vue_type_script_setup_true_lang_default","props","__props","panel","usePanel","t","useT","direction","useDirection","registry","useRegistry","open","ref","Bottom","computed","mobilePreset","hasMobilePreset","width","MAX_WIDTHS","isActive","item","openBlock","createElementBlock","createVNode","createElementVNode","normalizeClass","unref","cn","_cache","$event","withCtx","MenuIcon","Fragment","renderList","group","index","toDisplayString","createCommentVNode","entry","createBlock","Link","mergeProps","PREFETCH_CACHE_FOR","renderSlot","_ctx","resolveDynamicComponent"],"sources":["../../src/layouts/TopNavLayout.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport {\n PREFETCH_CACHE_FOR,\n hasMobilePreset,\n type BreadcrumbSchema,\n type NavigationItemSchema,\n type Width,\n} from '@alfakit/core'\nimport { Link } from '@inertiajs/vue3'\nimport { MenuIcon } from '@lucide/vue'\nimport { computed, ref } from 'vue'\nimport NotificationsMenu from '../components/notifications/NotificationsMenu.vue'\nimport BottomNav from '../components/panel/BottomNav.vue'\nimport Brand from '../components/panel/Brand.vue'\nimport TenantMenu from '../components/panel/TenantMenu.vue'\nimport Breadcrumbs from '../components/panel/Breadcrumbs.vue'\nimport GlobalSearch from '../components/panel/GlobalSearch.vue'\nimport NavLabel from '../components/panel/NavLabel.vue'\nimport Slot from '../components/panel/Slot.vue'\nimport DebugPanelSlot from '../components/panel/DebugPanelSlot.vue'\nimport ThemeToggle from '../components/panel/ThemeToggle.vue'\nimport TopbarLocaleSwitcher from '../components/panel/TopbarLocaleSwitcher.vue'\nimport UserMenu from '../components/panel/UserMenu.vue'\nimport Button from '../components/ui/Button.vue'\nimport Sheet from '../components/ui/Sheet.vue'\nimport SheetContent from '../components/ui/SheetContent.vue'\nimport SheetHeader from '../components/ui/SheetHeader.vue'\nimport SheetTitle from '../components/ui/SheetTitle.vue'\nimport SheetTrigger from '../components/ui/SheetTrigger.vue'\nimport { useDirection, usePanel, useRegistry, useT } from '../context'\nimport { Icon } from '../lib/icons'\nimport { cn } from '../lib/utils'\nimport { MAX_WIDTHS } from './max-widths'\nimport TopNavGroupWrapper from './TopNavGroupWrapper.vue'\nimport TopNavMenu from './TopNavMenu.vue'\nimport NewTabHint from '../lib/NewTabHint.vue'\n\n/**\n * Navigation across the top instead of a sidebar (`layout: 'topbar'`). Ungrouped items are\n * links; labelled groups and items with children open as dropdowns.\n */\nconst props = defineProps<{ breadcrumbs?: BreadcrumbSchema[]; maxContentWidth?: Width | string }>()\nconst panel = usePanel()\nconst t = useT()\nconst direction = useDirection()\nconst registry = useRegistry()\nconst open = ref(false)\nconst Bottom = computed(() => registry.resolve('panel:bottom-nav') ?? BottomNav)\nconst mobilePreset = computed(() => hasMobilePreset(panel.value))\nconst width = computed(\n () => MAX_WIDTHS[props.maxContentWidth ?? panel.value.maxContentWidth ?? '7xl'] ?? 'max-w-7xl',\n)\n\nconst isActive = (item: NavigationItemSchema): boolean =>\n Boolean(item.active || item.children?.some(isActive))\n\nconst linkClass =\n 'text-muted-foreground hover:text-foreground hover:bg-accent data-[active=true]:bg-accent data-[active=true]:text-foreground inline-flex h-9 shrink-0 items-center gap-2 rounded-md px-3 text-sm font-medium transition-colors [&_svg]:size-4'\n</script>\n\n<template>\n <div data-slot=\"topnav-layout\" class=\"bg-background flex min-h-svh flex-col\">\n <Slot name=\"body.start\" />\n <Slot name=\"layout.start\" />\n <Slot name=\"topbar.before\" />\n <header\n data-slot=\"topbar\"\n class=\"bg-background/90 supports-[backdrop-filter]:bg-background/70 sticky top-0 z-30 border-b backdrop-blur\"\n >\n <div :class=\"cn('mx-auto flex h-14 w-full items-center gap-3 px-4 md:px-6', width)\">\n <Sheet :open=\"open\" @update:open=\"open = $event\">\n <SheetTrigger as-child>\n <Button\n type=\"button\"\n variant=\"ghost\"\n size=\"icon\"\n class=\"md:hidden\"\n :aria-label=\"t('toggle_sidebar', {}, 'Toggle sidebar')\"\n >\n <Icon name=\"alfakit::panels.topbar.open-sidebar-button\" :fallback=\"MenuIcon\" />\n </Button>\n </SheetTrigger>\n <SheetContent :side=\"direction === 'rtl' ? 'right' : 'left'\" class=\"w-72 p-0\">\n <SheetHeader class=\"border-b\">\n <SheetTitle as-child>\n <div><Brand /></div>\n </SheetTitle>\n </SheetHeader>\n <nav class=\"flex flex-col gap-4 overflow-y-auto p-4 text-sm\">\n <div\n v-for=\"(group, index) in panel.navigation\"\n :key=\"group.label ?? index\"\n class=\"flex flex-col gap-1\"\n >\n <p v-if=\"group.label\" class=\"text-muted-foreground px-2 text-xs font-medium\">\n {{ group.label }}\n </p>\n <Link\n v-for=\"item in group.items.flatMap((entry) => [entry, ...(entry.children ?? [])])\"\n :key=\"item.label\"\n :href=\"item.url ?? '#'\"\n :data-active=\"item.active ? 'true' : undefined\"\n class=\"hover:bg-accent data-[active=true]:bg-accent flex items-center gap-2 rounded-md px-2 py-2 font-medium [&_svg]:size-4\"\n @click=\"open = false\"\n >\n <Icon v-if=\"item.icon\" :name=\"item.icon\" />\n <NavLabel :text=\"item.label\" :html=\"item.labelHtml\" />\n </Link>\n </div>\n </nav>\n </SheetContent>\n </Sheet>\n <Slot name=\"topbar.logo.before\" />\n <Brand class=\"me-2 shrink-0\" />\n <Slot name=\"topbar.logo.after\" />\n <Slot v-if=\"panel.tenancy?.current\" name=\"tenant-menu.before\" />\n <TenantMenu variant=\"topbar\" />\n <Slot v-if=\"panel.tenancy?.current\" name=\"tenant-menu.after\" />\n <nav\n data-slot=\"topnav\"\n :aria-label=\"t('navigation', {}, 'Navigation')\"\n class=\"hidden min-w-0 flex-1 items-center gap-1 self-stretch overflow-x-auto md:flex\"\n >\n <TopNavGroupWrapper\n v-for=\"(group, index) in panel.navigation\"\n :key=\"group.label ?? `group-${index}`\"\n :attributes=\"group.extraTopbarAttributes\"\n >\n <TopNavMenu\n v-if=\"group.label\"\n :label=\"group.label\"\n :icon=\"group.icon\"\n :items=\"group.items\"\n :active=\"group.items.some(isActive)\"\n />\n <template v-for=\"item in group.items\" v-else :key=\"item.label\">\n <TopNavMenu\n v-if=\"item.children && item.children.length > 0\"\n :label=\"item.label\"\n :label-html=\"item.labelHtml\"\n :icon=\"item.icon\"\n :items=\"item.children\"\n :active=\"isActive(item)\"\n :attributes=\"item.extraAttributes\"\n />\n <a\n v-else-if=\"item.openInNewTab\"\n v-bind=\"item.extraAttributes ?? {}\"\n :href=\"item.url\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n data-slot=\"topnav-link\"\n :class=\"linkClass\"\n >\n <Icon v-if=\"item.icon\" :name=\"item.icon\" />\n <NavLabel :text=\"item.label\" :html=\"item.labelHtml\" />\n <NewTabHint />\n </a>\n <Link\n v-else\n v-bind=\"item.extraAttributes ?? {}\"\n :href=\"item.url ?? '#'\"\n prefetch\n :cache-for=\"PREFETCH_CACHE_FOR\"\n data-slot=\"topnav-link\"\n :data-active=\"item.active ? 'true' : undefined\"\n :class=\"linkClass\"\n >\n <Icon v-if=\"item.icon\" :name=\"item.icon\" />\n <NavLabel :text=\"item.label\" :html=\"item.labelHtml\" />\n </Link>\n </template>\n </TopNavGroupWrapper>\n </nav>\n <Slot name=\"topbar.start\" />\n <div class=\"ms-auto flex shrink-0 items-center gap-1\">\n <Slot name=\"topbar.end\" />\n <GlobalSearch />\n <NotificationsMenu />\n <TopbarLocaleSwitcher />\n <ThemeToggle />\n <DebugPanelSlot />\n <UserMenu variant=\"topbar\" />\n </div>\n </div>\n </header>\n <Slot name=\"topbar.after\" />\n <Slot name=\"content.before\" />\n <main\n data-slot=\"content\"\n :class=\"cn('mx-auto flex w-full min-w-0 flex-1 flex-col gap-6 p-4 md:p-6', width)\"\n >\n <Breadcrumbs\n v-if=\"panel.breadcrumbs && props.breadcrumbs && props.breadcrumbs.length > 0\"\n :items=\"props.breadcrumbs\"\n />\n <Slot name=\"content.start\" />\n <slot />\n <Slot name=\"content.end\" />\n </main>\n <Slot name=\"content.after\" />\n <Slot name=\"footer\" />\n <component :is=\"Bottom\" v-if=\"mobilePreset\" />\n <Slot name=\"layout.end\" />\n <Slot name=\"body.end\" />\n </div>\n</template>\n"],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { AnyComponent } from '../context';
|
|
2
|
+
/**
|
|
3
|
+
* The fullscreen layout (`$layout = 'fullscreen'`), loaded on demand by starter kit pages:
|
|
4
|
+
* they render in the host's layout, so the page chunk never imports the panel's header,
|
|
5
|
+
* menus and notifications for a layout few pages use. Only the starter kit registers it;
|
|
6
|
+
* `createAlfakit()` registers the layouts themselves up front (`panelLayouts`), so a panel's
|
|
7
|
+
* bundle has no extra lazy entry points.
|
|
8
|
+
*/
|
|
9
|
+
export declare const lazyPanelLayouts: Record<string, AnyComponent>;
|
|
10
|
+
//# sourceMappingURL=lazy-layouts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lazy-layouts.d.ts","sourceRoot":"","sources":["../../src/layouts/lazy-layouts.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAG9C;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAEpB,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { discoveredComponent as e } from "../lib/discovery.js";
|
|
2
|
+
import { lazyComponents as t } from "@alfakit/core";
|
|
3
|
+
//#region src/layouts/lazy-layouts.ts
|
|
4
|
+
var n = t({ "layout:fullscreen": () => import("./FullscreenLayout.js").then((e) => e.default) }).map(e).components;
|
|
5
|
+
//#endregion
|
|
6
|
+
export { n as lazyPanelLayouts };
|
|
7
|
+
|
|
8
|
+
//# sourceMappingURL=lazy-layouts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lazy-layouts.js","names":["lazyPanelLayouts","lazyComponents","m","discoveredComponent"],"sources":["../../src/layouts/lazy-layouts.ts"],"sourcesContent":["import { lazyComponents } from '@alfakit/core'\nimport type { AnyComponent } from '../context'\nimport { discoveredComponent } from '../lib/discovery'\n\n/**\n * The fullscreen layout (`$layout = 'fullscreen'`), loaded on demand by starter kit pages:\n * they render in the host's layout, so the page chunk never imports the panel's header,\n * menus and notifications for a layout few pages use. Only the starter kit registers it;\n * `createAlfakit()` registers the layouts themselves up front (`panelLayouts`), so a panel's\n * bundle has no extra lazy entry points.\n */\nexport const lazyPanelLayouts: Record<string, AnyComponent> = lazyComponents<AnyComponent>({\n 'layout:fullscreen': () => import('./FullscreenLayout.vue').then((m) => m.default),\n}).map(discoveredComponent).components\n"],"mappings":";;;AAWA,IAAaA,IAAiDC,EAA6B,EACzF,2BAA2B,OAAO,wBAAyB,CAAC,MAAM,MAAMC,EAAE,OAAO,EACnF,CAAC,CAAC,CAAC,IAAIC,CAAmB,CAAC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { AnyComponent } from '../context';
|
|
2
|
+
/**
|
|
3
|
+
* The panel's own layouts (sidebar or top navigation, auth card, blank, fullscreen), which
|
|
4
|
+
* `createAlfakit()` registers up front. Starter kit pages render in the host's layout and
|
|
5
|
+
* never import these: `PageShell` loads one on demand if such a page asks for it.
|
|
6
|
+
*/
|
|
7
|
+
export declare const panelLayouts: Record<string, AnyComponent>;
|
|
8
|
+
//# sourceMappingURL=panel-layouts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"panel-layouts.d.ts","sourceRoot":"","sources":["../../src/layouts/panel-layouts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAM9C;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAKrD,CAAA"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import e from "./BlankLayout.js";
|
|
2
|
+
import t from "./AppLayout.js";
|
|
3
|
+
import n from "./AuthLayout.js";
|
|
4
|
+
import r from "./FullscreenLayout.js";
|
|
5
|
+
//#region src/layouts/panel-layouts.ts
|
|
6
|
+
var i = {
|
|
7
|
+
"layout:app": t,
|
|
8
|
+
"layout:auth": n,
|
|
9
|
+
"layout:blank": e,
|
|
10
|
+
"layout:fullscreen": r
|
|
11
|
+
};
|
|
12
|
+
//#endregion
|
|
13
|
+
export { i as panelLayouts };
|
|
14
|
+
|
|
15
|
+
//# sourceMappingURL=panel-layouts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"panel-layouts.js","names":["AppLayout","AuthLayout","BlankLayout","FullscreenLayout","BlankLayout_default","AppLayout_default","AuthLayout_default","FullscreenLayout_default","panelLayouts"],"sources":["../../src/layouts/panel-layouts.ts"],"sourcesContent":["import type { AnyComponent } from '../context'\nimport AppLayout from './AppLayout.vue'\nimport AuthLayout from './AuthLayout.vue'\nimport BlankLayout from './BlankLayout.vue'\nimport FullscreenLayout from './FullscreenLayout.vue'\n\n/**\n * The panel's own layouts (sidebar or top navigation, auth card, blank, fullscreen), which\n * `createAlfakit()` registers up front. Starter kit pages render in the host's layout and\n * never import these: `PageShell` loads one on demand if such a page asks for it.\n */\nexport const panelLayouts: Record<string, AnyComponent> = {\n 'layout:app': AppLayout,\n 'layout:auth': AuthLayout,\n 'layout:blank': BlankLayout,\n 'layout:fullscreen': FullscreenLayout,\n}\n"],"mappings":";;;;;AAWA,IAAaQ,IAA6C;CACxD,cAAcR;CACd,eAAeC;CACf,gBAAgBC;CAChB,qBAAqBC;AACvB"}
|
package/dist/lib/lazy.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lazy.d.ts","sourceRoot":"","sources":["../../src/lib/lazy.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,KAAK,SAAS,EAAE,MAAM,KAAK,CAAA;AAG9E;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,OAAO,CAAC,SAAS,CAAC,EAC9B,QAAQ,EAAE,SAAS,GAClB,SAAS,
|
|
1
|
+
{"version":3,"file":"lazy.d.ts","sourceRoot":"","sources":["../../src/lib/lazy.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,KAAK,SAAS,EAAE,MAAM,KAAK,CAAA;AAG9E;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,OAAO,CAAC,SAAS,CAAC,EAC9B,QAAQ,EAAE,SAAS,GAClB,SAAS,CAiCX"}
|
package/dist/lib/lazy.js
CHANGED
package/dist/lib/lazy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lazy.js","names":["lazyComponent","loaded","Async","defineAsyncComponent","load","component","fallback","defineComponent","mounted","useAppMounted","h","attrs"],"sources":["../../src/lib/lazy.ts"],"sourcesContent":["import { defineAsyncComponent, defineComponent, h, type Component } from 'vue'\nimport { useAppMounted } from './hydration'\n\n/**\n * A component whose code (and heavy dependencies such as Tiptap or Chart.js) loads on\n * first use. The server render and hydration show `fallback` and never start the import;\n * once the app has mounted, a loaded component renders straight away.\n */\nexport function lazyComponent(\n name: string,\n load: () => Promise<Component>,\n fallback: Component,\n): Component {\n let loaded: Component | null = null\n const Async = defineAsyncComponent({\n loader: () =>\n load().then((component) => {\n loaded = component\n\n return component\n }),\n loadingComponent: fallback,\n delay: 0,\n suspensible: false,\n })\n\n return defineComponent({\n name,\n inheritAttrs: false,\n setup(_, { attrs }) {\n const mounted = useAppMounted()\n\n return () =>
|
|
1
|
+
{"version":3,"file":"lazy.js","names":["lazyComponent","loaded","Async","defineAsyncComponent","load","component","fallback","defineComponent","mounted","useAppMounted","h","attrs"],"sources":["../../src/lib/lazy.ts"],"sourcesContent":["import { defineAsyncComponent, defineComponent, h, type Component } from 'vue'\nimport { useAppMounted } from './hydration'\n\n/**\n * A component whose code (and heavy dependencies such as Tiptap or Chart.js) loads on\n * first use. The server render and hydration show `fallback` and never start the import;\n * once the app has mounted, a loaded component renders straight away.\n */\nexport function lazyComponent(\n name: string,\n load: () => Promise<Component>,\n fallback: Component,\n): Component {\n let loaded: Component | null = null\n const Async = defineAsyncComponent({\n loader: () =>\n load().then((component) => {\n loaded = component\n\n return component\n }),\n loadingComponent: fallback,\n delay: 0,\n suspensible: false,\n })\n\n return defineComponent({\n name,\n inheritAttrs: false,\n setup(_, { attrs }) {\n const mounted = useAppMounted()\n // Picked once per instance: switching from the async wrapper to the loaded component\n // on a later render would be a new component type, so Vue would remount it and its\n // state (a spreadsheet's undo history, an editor's selection) would be lost.\n let component: Component | null = null\n\n return () => {\n if (!mounted.value) return h(fallback, attrs)\n\n component ??= loaded ?? Async\n\n return h(component, attrs)\n }\n },\n })\n}\n"],"mappings":";;;AAQA,SAAgBA,EACd,GACA,GACA,GACW;CACX,IAAIC,IAA2B,MACzBC,IAAQC,EAAqB;EACjC,cACEC,EAAK,CAAC,CAAC,MAAM,OACX,IAASC,GAEFA,EACR;EACH,kBAAkBC;EAClB,OAAO;EACP,aAAa;CACf,CAAC;CAED,OAAOC,EAAgB;EACrB;EACA,cAAc;EACd,MAAM,GAAG,EAAE,YAAS;GAClB,IAAMC,IAAUC,EAAc,GAI1BJ,IAA8B;GAElC,aACOG,EAAQ,SAEb,MAAcP,KAAUC,GAEjBQ,EAAEL,GAAWM,CAAK,KAJED,EAAEJ,GAAUK,CAAK;EAMhD;CACF,CAAC;AACH"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageShell.js","names":["_sfc_main","PageShell_vue_vue_type_script_setup_true_lang_default","PageShell_default"],"sources":["../../src/pages/PageShell.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { PageSchema } from '@alfakit/core'\nimport { applyBodyAttributes } from '@alfakit/core'\nimport { computed, onBeforeUnmount, watch } from 'vue'\nimport KeyboardShortcuts from '../components/panel/KeyboardShortcuts.vue'\nimport Slot from '../components/panel/Slot.vue'\nimport { useRegistry } from '../context'\nimport
|
|
1
|
+
{"version":3,"file":"PageShell.js","names":["_sfc_main","PageShell_vue_vue_type_script_setup_true_lang_default","PageShell_default"],"sources":["../../src/pages/PageShell.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { PageSchema } from '@alfakit/core'\nimport { applyBodyAttributes } from '@alfakit/core'\nimport { computed, onBeforeUnmount, watch } from 'vue'\nimport KeyboardShortcuts from '../components/panel/KeyboardShortcuts.vue'\nimport Slot from '../components/panel/Slot.vue'\nimport { useRegistry } from '../context'\nimport BlankLayout from '../layouts/BlankLayout.vue'\nimport SubNavigationLayout from '../components/panel/SubNavigationLayout.vue'\nimport ConflictBanner from '../components/realtime/ConflictBanner.vue'\nimport PageHeader from './PageHeader.vue'\n\nconst props = defineProps<{ page: PageSchema }>()\nconst registry = useRegistry()\n\n// Each layout can be replaced: createAlfakit({ components: { 'layout:app': MyLayout } }).\n// `createAlfakit()` registers the panel's layouts (`panelLayouts`), the starter kit its content\n// layout; importing the panel layouts here would put the sidebar in every starter kit page.\nconst Auth = computed(() => registry.resolve('layout:auth') ?? BlankLayout)\nconst Blank = computed(() => registry.resolve('layout:blank') ?? BlankLayout)\nconst Fullscreen = computed(() => registry.resolve('layout:fullscreen') ?? BlankLayout)\nconst App = computed(() => registry.resolve('layout:app') ?? BlankLayout)\n// Edit pages: somebody else saved the record (`detectConflicts()`, `Panel::realtime()`).\nconst Conflicts = computed(() => registry.resolve('page:conflict-banner') ?? ConflictBanner)\n\n// The page's `$extraBodyAttributes` on `<body>` while it is open.\nlet undoBodyAttributes = () => {}\nwatch(\n () => JSON.stringify(props.page.extraBodyAttributes ?? null),\n () => {\n undoBodyAttributes()\n undoBodyAttributes = applyBodyAttributes(props.page.extraBodyAttributes)\n },\n { immediate: true },\n)\nonBeforeUnmount(() => undoBodyAttributes())\n</script>\n\n<template>\n <component\n :is=\"Auth\"\n v-if=\"props.page.layout === 'auth'\"\n :heading=\"props.page.heading ?? props.page.title\"\n :subheading=\"props.page.subheading\"\n :page=\"props.page\"\n >\n <slot />\n </component>\n <component :is=\"Blank\" v-else-if=\"props.page.layout === 'blank'\" :page=\"props.page\">\n <slot />\n </component>\n <component :is=\"Fullscreen\" v-else-if=\"props.page.layout === 'fullscreen'\" :page=\"props.page\">\n <slot />\n </component>\n <component\n :is=\"App\"\n v-else\n :breadcrumbs=\"props.page.breadcrumbs\"\n :max-content-width=\"props.page.maxContentWidth\"\n :page=\"props.page\"\n >\n <!-- `?` overlay, `/`, `g d` and panel command shortcuts (`keyboardShortcuts()`). -->\n <KeyboardShortcuts />\n <Slot name=\"page.start\" />\n <PageHeader :page=\"props.page\" />\n <component :is=\"Conflicts\" v-if=\"props.page.conflicts\" :page=\"props.page\" />\n <SubNavigationLayout v-if=\"props.page.subNavigation\" :navigation=\"props.page.subNavigation\">\n <slot />\n </SubNavigationLayout>\n <slot v-else />\n <Slot name=\"page.end\" />\n </component>\n</template>\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageShell.vue.d.ts","sourceRoot":"","sources":["../../src/pages/PageShell.vue"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PageShell.vue.d.ts","sourceRoot":"","sources":["../../src/pages/PageShell.vue"],"names":[],"mappings":"AA2EA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAW/C,KAAK,WAAW,GAAG;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC;AA+JxC,QAAA,IAAI,OAAO,IAAU,EAAE,QAAQ,IAAW,EAAE,QAAQ,IAAW,EAAE,QAAQ,IAAW,EAAE,QAAQ,IAAY,CAAE;AAC5G,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,GAC5C;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,QAAQ,KAAK,GAAG,CAAA;CAAE,GAC7C;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,QAAQ,KAAK,GAAG,CAAA;CAAE,GAC7C;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,QAAQ,KAAK,GAAG,CAAA;CAAE,GAC7C;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,QAAQ,KAAK,GAAG,CAAA;CAAE,CAAC;AA+BhD,QAAA,MAAM,eAAe,kSAMnB,CAAC;wBACkB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;AAAzE,wBAA0E;AAQ1E,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
|
|
@@ -1,69 +1,66 @@
|
|
|
1
1
|
import { useRegistry as e } from "../context.js";
|
|
2
2
|
import t from "../components/panel/Slot.js";
|
|
3
3
|
import n from "../components/panel/KeyboardShortcuts.js";
|
|
4
|
-
import r from "../layouts/
|
|
5
|
-
import i from "../
|
|
6
|
-
import a from "../
|
|
7
|
-
import o from "
|
|
8
|
-
import s from "
|
|
9
|
-
import c from "
|
|
10
|
-
import l from "./PageHeader.js";
|
|
11
|
-
import { applyBodyAttributes as u } from "@alfakit/core";
|
|
12
|
-
import { computed as d, createBlock as f, createCommentVNode as p, createVNode as m, defineComponent as h, onBeforeUnmount as g, openBlock as _, renderSlot as v, resolveDynamicComponent as y, watch as b, withCtx as x } from "vue";
|
|
4
|
+
import r from "../layouts/BlankLayout.js";
|
|
5
|
+
import i from "../components/panel/SubNavigationLayout.js";
|
|
6
|
+
import a from "../components/realtime/ConflictBanner.js";
|
|
7
|
+
import o from "./PageHeader.js";
|
|
8
|
+
import { applyBodyAttributes as s } from "@alfakit/core";
|
|
9
|
+
import { computed as c, createBlock as l, createCommentVNode as u, createVNode as d, defineComponent as f, onBeforeUnmount as p, openBlock as m, renderSlot as h, resolveDynamicComponent as g, watch as _, withCtx as v } from "vue";
|
|
13
10
|
//#region src/pages/PageShell.vue?vue&type=script&setup=true&lang.ts
|
|
14
|
-
var
|
|
11
|
+
var y = /*@__PURE__*/ f({
|
|
15
12
|
__name: "PageShell",
|
|
16
13
|
props: { page: {} },
|
|
17
|
-
setup(
|
|
18
|
-
let
|
|
19
|
-
return
|
|
20
|
-
|
|
21
|
-
}, { immediate: !0 }),
|
|
14
|
+
setup(f) {
|
|
15
|
+
let y = f, b = e(), x = c(() => b.resolve("layout:auth") ?? r), S = c(() => b.resolve("layout:blank") ?? r), C = c(() => b.resolve("layout:fullscreen") ?? r), w = c(() => b.resolve("layout:app") ?? r), T = c(() => b.resolve("page:conflict-banner") ?? a), E = () => {};
|
|
16
|
+
return _(() => JSON.stringify(y.page.extraBodyAttributes ?? null), () => {
|
|
17
|
+
E(), E = s(y.page.extraBodyAttributes);
|
|
18
|
+
}, { immediate: !0 }), p(() => E()), (e, r) => y.page.layout === "auth" ? (m(), l(g(x.value), {
|
|
22
19
|
key: 0,
|
|
23
|
-
heading:
|
|
24
|
-
subheading:
|
|
25
|
-
page:
|
|
20
|
+
heading: y.page.heading ?? y.page.title,
|
|
21
|
+
subheading: y.page.subheading,
|
|
22
|
+
page: y.page
|
|
26
23
|
}, {
|
|
27
|
-
default:
|
|
24
|
+
default: v(() => [h(e.$slots, "default")]),
|
|
28
25
|
_: 3
|
|
29
26
|
}, 8, [
|
|
30
27
|
"heading",
|
|
31
28
|
"subheading",
|
|
32
29
|
"page"
|
|
33
|
-
])) :
|
|
30
|
+
])) : y.page.layout === "blank" ? (m(), l(g(S.value), {
|
|
34
31
|
key: 1,
|
|
35
|
-
page:
|
|
32
|
+
page: y.page
|
|
36
33
|
}, {
|
|
37
|
-
default:
|
|
34
|
+
default: v(() => [h(e.$slots, "default")]),
|
|
38
35
|
_: 3
|
|
39
|
-
}, 8, ["page"])) :
|
|
36
|
+
}, 8, ["page"])) : y.page.layout === "fullscreen" ? (m(), l(g(C.value), {
|
|
40
37
|
key: 2,
|
|
41
|
-
page:
|
|
38
|
+
page: y.page
|
|
42
39
|
}, {
|
|
43
|
-
default:
|
|
40
|
+
default: v(() => [h(e.$slots, "default")]),
|
|
44
41
|
_: 3
|
|
45
|
-
}, 8, ["page"])) : (
|
|
42
|
+
}, 8, ["page"])) : (m(), l(g(w.value), {
|
|
46
43
|
key: 3,
|
|
47
|
-
breadcrumbs:
|
|
48
|
-
"max-content-width":
|
|
49
|
-
page:
|
|
44
|
+
breadcrumbs: y.page.breadcrumbs,
|
|
45
|
+
"max-content-width": y.page.maxContentWidth,
|
|
46
|
+
page: y.page
|
|
50
47
|
}, {
|
|
51
|
-
default:
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
48
|
+
default: v(() => [
|
|
49
|
+
d(n),
|
|
50
|
+
d(t, { name: "page.start" }),
|
|
51
|
+
d(o, { page: y.page }, null, 8, ["page"]),
|
|
52
|
+
y.page.conflicts ? (m(), l(g(T.value), {
|
|
56
53
|
key: 0,
|
|
57
|
-
page:
|
|
58
|
-
}, null, 8, ["page"])) :
|
|
59
|
-
|
|
54
|
+
page: y.page
|
|
55
|
+
}, null, 8, ["page"])) : u("", !0),
|
|
56
|
+
y.page.subNavigation ? (m(), l(i, {
|
|
60
57
|
key: 1,
|
|
61
|
-
navigation:
|
|
58
|
+
navigation: y.page.subNavigation
|
|
62
59
|
}, {
|
|
63
|
-
default:
|
|
60
|
+
default: v(() => [h(e.$slots, "default")]),
|
|
64
61
|
_: 3
|
|
65
|
-
}, 8, ["navigation"])) :
|
|
66
|
-
|
|
62
|
+
}, 8, ["navigation"])) : h(e.$slots, "default", {}, void 0, void 0, 2),
|
|
63
|
+
d(t, { name: "page.end" })
|
|
67
64
|
]),
|
|
68
65
|
_: 3
|
|
69
66
|
}, 8, [
|
|
@@ -74,6 +71,6 @@ var S = /*@__PURE__*/ h({
|
|
|
74
71
|
}
|
|
75
72
|
});
|
|
76
73
|
//#endregion
|
|
77
|
-
export {
|
|
74
|
+
export { y as default };
|
|
78
75
|
|
|
79
76
|
//# sourceMappingURL=PageShell.vue_vue_type_script_setup_true_lang.js.map
|