@lumal/core 0.0.1-beta
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/LICENSE +21 -0
- package/README.md +16 -0
- package/dist/LumalThemeSettingsPanel-BFkZzwEW.js +685 -0
- package/dist/LumalThemeSettingsPanel-C6aPhgUX.cjs +1 -0
- package/dist/_plugin-vue_export-helper-B3ysoDQm.js +8 -0
- package/dist/_plugin-vue_export-helper-BTmtiIyf.cjs +1 -0
- package/dist/auth.cjs +1 -0
- package/dist/auth.js +127 -0
- package/dist/components-DJiHYQQB.cjs +2 -0
- package/dist/components-DYmKh-eF.js +2206 -0
- package/dist/components.cjs +1 -0
- package/dist/components.js +3 -0
- package/dist/composables-C4twj5Ov.cjs +1 -0
- package/dist/composables-C9EuCUjj.js +130 -0
- package/dist/composables.cjs +1 -0
- package/dist/composables.js +148 -0
- package/dist/core.css +2 -0
- package/dist/dictionary-B7tsaVqB.js +19 -0
- package/dist/dictionary-ClEWtQCU.cjs +1 -0
- package/dist/dictionary.cjs +1 -0
- package/dist/dictionary.js +3 -0
- package/dist/directive-D-fB5qbY.js +16 -0
- package/dist/directive-DSVr7QvO.cjs +1 -0
- package/dist/directives.cjs +1 -0
- package/dist/directives.js +11 -0
- package/dist/index.cjs +1 -0
- package/dist/index.js +88 -0
- package/dist/layout-C8H9wuQa.js +2075 -0
- package/dist/layout-ZnyG9X3N.cjs +1 -0
- package/dist/layout.cjs +1 -0
- package/dist/layout.js +2 -0
- package/dist/permission-6sXtjGMS.cjs +1 -0
- package/dist/permission-CCkqvnWg.js +104 -0
- package/dist/permission.cjs +1 -0
- package/dist/permission.js +3 -0
- package/dist/request.cjs +1 -0
- package/dist/request.js +277 -0
- package/dist/router.cjs +1 -0
- package/dist/router.js +510 -0
- package/dist/src/app/createLumalAdmin.d.ts +4 -0
- package/dist/src/app/createLumalAdmin.d.ts.map +1 -0
- package/dist/src/app/default-components.d.ts +4 -0
- package/dist/src/app/default-components.d.ts.map +1 -0
- package/dist/src/app/index.d.ts +3 -0
- package/dist/src/app/index.d.ts.map +1 -0
- package/dist/src/app/types.d.ts +41 -0
- package/dist/src/app/types.d.ts.map +1 -0
- package/dist/src/auth/adapter.d.ts +3 -0
- package/dist/src/auth/adapter.d.ts.map +1 -0
- package/dist/src/auth/createAuthSession.d.ts +8 -0
- package/dist/src/auth/createAuthSession.d.ts.map +1 -0
- package/dist/src/auth/index.d.ts +8 -0
- package/dist/src/auth/index.d.ts.map +1 -0
- package/dist/src/auth/redirect.d.ts +8 -0
- package/dist/src/auth/redirect.d.ts.map +1 -0
- package/dist/src/auth/session-expired.d.ts +5 -0
- package/dist/src/auth/session-expired.d.ts.map +1 -0
- package/dist/src/auth/session.d.ts +10 -0
- package/dist/src/auth/session.d.ts.map +1 -0
- package/dist/src/auth/storage.d.ts +7 -0
- package/dist/src/auth/storage.d.ts.map +1 -0
- package/dist/src/auth/types.d.ts +68 -0
- package/dist/src/auth/types.d.ts.map +1 -0
- package/dist/src/components/crud-table/LumalCrudEditor.vue.d.ts +41 -0
- package/dist/src/components/crud-table/LumalCrudEditor.vue.d.ts.map +1 -0
- package/dist/src/components/crud-table/LumalCrudTable.vue.d.ts +151 -0
- package/dist/src/components/crud-table/LumalCrudTable.vue.d.ts.map +1 -0
- package/dist/src/components/crud-table/index.d.ts +4 -0
- package/dist/src/components/crud-table/index.d.ts.map +1 -0
- package/dist/src/components/crud-table/schema.d.ts +4 -0
- package/dist/src/components/crud-table/schema.d.ts.map +1 -0
- package/dist/src/components/crud-table/types.d.ts +165 -0
- package/dist/src/components/crud-table/types.d.ts.map +1 -0
- package/dist/src/components/crud-table/useCrudData.d.ts +20 -0
- package/dist/src/components/crud-table/useCrudData.d.ts.map +1 -0
- package/dist/src/components/crud-table/useCrudDialog.d.ts +19 -0
- package/dist/src/components/crud-table/useCrudDialog.d.ts.map +1 -0
- package/dist/src/components/crud-table/useCrudQuery.d.ts +18 -0
- package/dist/src/components/crud-table/useCrudQuery.d.ts.map +1 -0
- package/dist/src/components/crud-table/useCrudSelection.d.ts +9 -0
- package/dist/src/components/crud-table/useCrudSelection.d.ts.map +1 -0
- package/dist/src/components/info-table/LumalInfoTable.vue.d.ts +12 -0
- package/dist/src/components/info-table/LumalInfoTable.vue.d.ts.map +1 -0
- package/dist/src/components/info-table/index.d.ts +3 -0
- package/dist/src/components/info-table/index.d.ts.map +1 -0
- package/dist/src/components/info-table/types.d.ts +15 -0
- package/dist/src/components/info-table/types.d.ts.map +1 -0
- package/dist/src/components/page/LumalPage.vue.d.ts +36 -0
- package/dist/src/components/page/LumalPage.vue.d.ts.map +1 -0
- package/dist/src/components/page/index.d.ts +2 -0
- package/dist/src/components/page/index.d.ts.map +1 -0
- package/dist/src/components/page-layout/LumalPageLayout.vue.d.ts +38 -0
- package/dist/src/components/page-layout/LumalPageLayout.vue.d.ts.map +1 -0
- package/dist/src/components/page-layout/index.d.ts +3 -0
- package/dist/src/components/page-layout/index.d.ts.map +1 -0
- package/dist/src/components/page-layout/types.d.ts +9 -0
- package/dist/src/components/page-layout/types.d.ts.map +1 -0
- package/dist/src/components/pagination/LumalPagination.vue.d.ts +31 -0
- package/dist/src/components/pagination/LumalPagination.vue.d.ts.map +1 -0
- package/dist/src/components/pagination/index.d.ts +3 -0
- package/dist/src/components/pagination/index.d.ts.map +1 -0
- package/dist/src/components/pagination/types.d.ts +5 -0
- package/dist/src/components/pagination/types.d.ts.map +1 -0
- package/dist/src/components/schema-form/LumalSchemaForm.vue.d.ts +78 -0
- package/dist/src/components/schema-form/LumalSchemaForm.vue.d.ts.map +1 -0
- package/dist/src/components/schema-form/index.d.ts +4 -0
- package/dist/src/components/schema-form/index.d.ts.map +1 -0
- package/dist/src/components/schema-form/normalize.d.ts +11 -0
- package/dist/src/components/schema-form/normalize.d.ts.map +1 -0
- package/dist/src/components/schema-form/types.d.ts +103 -0
- package/dist/src/components/schema-form/types.d.ts.map +1 -0
- package/dist/src/components/schema-form/types.type-test.d.ts +2 -0
- package/dist/src/components/schema-form/types.type-test.d.ts.map +1 -0
- package/dist/src/components/schema-table/LumalSchemaTable.vue.d.ts +108 -0
- package/dist/src/components/schema-table/LumalSchemaTable.vue.d.ts.map +1 -0
- package/dist/src/components/schema-table/LumalSchemaTableCell.vue.d.ts +8 -0
- package/dist/src/components/schema-table/LumalSchemaTableCell.vue.d.ts.map +1 -0
- package/dist/src/components/schema-table/cell.d.ts +13 -0
- package/dist/src/components/schema-table/cell.d.ts.map +1 -0
- package/dist/src/components/schema-table/index.d.ts +6 -0
- package/dist/src/components/schema-table/index.d.ts.map +1 -0
- package/dist/src/components/schema-table/normalize.d.ts +8 -0
- package/dist/src/components/schema-table/normalize.d.ts.map +1 -0
- package/dist/src/components/schema-table/types.d.ts +66 -0
- package/dist/src/components/schema-table/types.d.ts.map +1 -0
- package/dist/src/components/schema-table/types.type-test.d.ts +2 -0
- package/dist/src/components/schema-table/types.type-test.d.ts.map +1 -0
- package/dist/src/composables/index.d.ts +11 -0
- package/dist/src/composables/index.d.ts.map +1 -0
- package/dist/src/composables/useConfirmAction.d.ts +21 -0
- package/dist/src/composables/useConfirmAction.d.ts.map +1 -0
- package/dist/src/composables/useFullscreen.d.ts +14 -0
- package/dist/src/composables/useFullscreen.d.ts.map +1 -0
- package/dist/src/composables/usePagination.d.ts +36 -0
- package/dist/src/composables/usePagination.d.ts.map +1 -0
- package/dist/src/composables/usePersistentState.d.ts +9 -0
- package/dist/src/composables/usePersistentState.d.ts.map +1 -0
- package/dist/src/composables/useSelection.d.ts +20 -0
- package/dist/src/composables/useSelection.d.ts.map +1 -0
- package/dist/src/dictionary/composables.d.ts +15 -0
- package/dist/src/dictionary/composables.d.ts.map +1 -0
- package/dist/src/dictionary/context.d.ts +10 -0
- package/dist/src/dictionary/context.d.ts.map +1 -0
- package/dist/src/dictionary/fetcher.d.ts +4 -0
- package/dist/src/dictionary/fetcher.d.ts.map +1 -0
- package/dist/src/dictionary/index.d.ts +8 -0
- package/dist/src/dictionary/index.d.ts.map +1 -0
- package/dist/src/dictionary/normalize.d.ts +5 -0
- package/dist/src/dictionary/normalize.d.ts.map +1 -0
- package/dist/src/dictionary/store.d.ts +4 -0
- package/dist/src/dictionary/store.d.ts.map +1 -0
- package/dist/src/dictionary/types.d.ts +53 -0
- package/dist/src/dictionary/types.d.ts.map +1 -0
- package/dist/src/directives/index.d.ts +16 -0
- package/dist/src/directives/index.d.ts.map +1 -0
- package/dist/src/exports/components.d.ts +16 -0
- package/dist/src/exports/components.d.ts.map +1 -0
- package/dist/src/index.d.ts +6 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/layout/LumalBreadcrumb.vue.d.ts +28 -0
- package/dist/src/layout/LumalBreadcrumb.vue.d.ts.map +1 -0
- package/dist/src/layout/LumalContent.vue.d.ts +18 -0
- package/dist/src/layout/LumalContent.vue.d.ts.map +1 -0
- package/dist/src/layout/LumalGlobalSearch.vue.d.ts +25 -0
- package/dist/src/layout/LumalGlobalSearch.vue.d.ts.map +1 -0
- package/dist/src/layout/LumalHeader.vue.d.ts +43 -0
- package/dist/src/layout/LumalHeader.vue.d.ts.map +1 -0
- package/dist/src/layout/LumalLayout.vue.d.ts +98 -0
- package/dist/src/layout/LumalLayout.vue.d.ts.map +1 -0
- package/dist/src/layout/LumalMenuBadge.vue.d.ts +16 -0
- package/dist/src/layout/LumalMenuBadge.vue.d.ts.map +1 -0
- package/dist/src/layout/LumalRouterView.vue.d.ts +24 -0
- package/dist/src/layout/LumalRouterView.vue.d.ts.map +1 -0
- package/dist/src/layout/LumalSidebar.vue.d.ts +29 -0
- package/dist/src/layout/LumalSidebar.vue.d.ts.map +1 -0
- package/dist/src/layout/LumalSidebarMenuItem.vue.d.ts +16 -0
- package/dist/src/layout/LumalSidebarMenuItem.vue.d.ts.map +1 -0
- package/dist/src/layout/LumalTabs.vue.d.ts +76 -0
- package/dist/src/layout/LumalTabs.vue.d.ts.map +1 -0
- package/dist/src/layout/LumalTopNav.vue.d.ts +27 -0
- package/dist/src/layout/LumalTopNav.vue.d.ts.map +1 -0
- package/dist/src/layout/LumalTopNavMenuItem.vue.d.ts +15 -0
- package/dist/src/layout/LumalTopNavMenuItem.vue.d.ts.map +1 -0
- package/dist/src/layout/index.d.ts +18 -0
- package/dist/src/layout/index.d.ts.map +1 -0
- package/dist/src/layout/state/menu-layout.d.ts +35 -0
- package/dist/src/layout/state/menu-layout.d.ts.map +1 -0
- package/dist/src/layout/state/tab-storage.d.ts +51 -0
- package/dist/src/layout/state/tab-storage.d.ts.map +1 -0
- package/dist/src/layout/state/tab-strategy.d.ts +73 -0
- package/dist/src/layout/state/tab-strategy.d.ts.map +1 -0
- package/dist/src/layout/types.d.ts +29 -0
- package/dist/src/layout/types.d.ts.map +1 -0
- package/dist/src/permission/LumalAccessControl.vue.d.ts +26 -0
- package/dist/src/permission/LumalAccessControl.vue.d.ts.map +1 -0
- package/dist/src/permission/context.d.ts +6 -0
- package/dist/src/permission/context.d.ts.map +1 -0
- package/dist/src/permission/directive.d.ts +3 -0
- package/dist/src/permission/directive.d.ts.map +1 -0
- package/dist/src/permission/guard.d.ts +4 -0
- package/dist/src/permission/guard.d.ts.map +1 -0
- package/dist/src/permission/helpers.d.ts +4 -0
- package/dist/src/permission/helpers.d.ts.map +1 -0
- package/dist/src/permission/index.d.ts +8 -0
- package/dist/src/permission/index.d.ts.map +1 -0
- package/dist/src/permission/store.d.ts +4 -0
- package/dist/src/permission/store.d.ts.map +1 -0
- package/dist/src/permission/types.d.ts +67 -0
- package/dist/src/permission/types.d.ts.map +1 -0
- package/dist/src/request/cache.d.ts +8 -0
- package/dist/src/request/cache.d.ts.map +1 -0
- package/dist/src/request/client.d.ts +4 -0
- package/dist/src/request/client.d.ts.map +1 -0
- package/dist/src/request/error.d.ts +19 -0
- package/dist/src/request/error.d.ts.map +1 -0
- package/dist/src/request/index.d.ts +8 -0
- package/dist/src/request/index.d.ts.map +1 -0
- package/dist/src/request/standard.d.ts +61 -0
- package/dist/src/request/standard.d.ts.map +1 -0
- package/dist/src/request/types.d.ts +102 -0
- package/dist/src/request/types.d.ts.map +1 -0
- package/dist/src/router/index.d.ts +36 -0
- package/dist/src/router/index.d.ts.map +1 -0
- package/dist/src/router/types.d.ts +231 -0
- package/dist/src/router/types.d.ts.map +1 -0
- package/dist/src/theme/LumalThemeSettingsPanel.vue.d.ts +33 -0
- package/dist/src/theme/LumalThemeSettingsPanel.vue.d.ts.map +1 -0
- package/dist/src/theme/dom.d.ts +6 -0
- package/dist/src/theme/dom.d.ts.map +1 -0
- package/dist/src/theme/index.d.ts +11 -0
- package/dist/src/theme/index.d.ts.map +1 -0
- package/dist/src/theme/preferences-store.d.ts +4 -0
- package/dist/src/theme/preferences-store.d.ts.map +1 -0
- package/dist/src/theme/preferences.d.ts +18 -0
- package/dist/src/theme/preferences.d.ts.map +1 -0
- package/dist/src/theme/store.d.ts +3 -0
- package/dist/src/theme/store.d.ts.map +1 -0
- package/dist/src/theme/theme-color-presets.d.ts +13 -0
- package/dist/src/theme/theme-color-presets.d.ts.map +1 -0
- package/dist/src/theme/tokens.d.ts +5 -0
- package/dist/src/theme/tokens.d.ts.map +1 -0
- package/dist/src/theme/types.d.ts +103 -0
- package/dist/src/theme/types.d.ts.map +1 -0
- package/dist/src/utils/clone.d.ts +12 -0
- package/dist/src/utils/clone.d.ts.map +1 -0
- package/dist/src/utils/color.d.ts +6 -0
- package/dist/src/utils/color.d.ts.map +1 -0
- package/dist/src/utils/display.d.ts +10 -0
- package/dist/src/utils/display.d.ts.map +1 -0
- package/dist/src/utils/download.d.ts +10 -0
- package/dist/src/utils/download.d.ts.map +1 -0
- package/dist/src/utils/index.d.ts +12 -0
- package/dist/src/utils/index.d.ts.map +1 -0
- package/dist/src/utils/object.d.ts +6 -0
- package/dist/src/utils/object.d.ts.map +1 -0
- package/dist/src/utils/path.d.ts +6 -0
- package/dist/src/utils/path.d.ts.map +1 -0
- package/dist/src/utils/query.d.ts +9 -0
- package/dist/src/utils/query.d.ts.map +1 -0
- package/dist/src/utils/storage.d.ts +7 -0
- package/dist/src/utils/storage.d.ts.map +1 -0
- package/dist/src/utils/types.d.ts +13 -0
- package/dist/src/utils/types.d.ts.map +1 -0
- package/dist/src/utils/with-install.d.ts +11 -0
- package/dist/src/utils/with-install.d.ts.map +1 -0
- package/dist/theme.cjs +1 -0
- package/dist/theme.js +187 -0
- package/dist/utils.cjs +1 -0
- package/dist/utils.js +130 -0
- package/package.json +124 -0
- package/theme-chalk/index.scss +70 -0
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import type { ComponentPublicInstance } from 'vue';
|
|
2
|
+
import type { LumalPreferences } from '../theme/types';
|
|
3
|
+
import type { LumalLayoutMenuItem, LumalLayoutRouteTabFilter, LumalLayoutRouteTabResolver, LumalLayoutTabItem } from './types';
|
|
4
|
+
/***********************属性定义*********************/
|
|
5
|
+
type __VLS_Props = {
|
|
6
|
+
title?: string;
|
|
7
|
+
menus?: LumalLayoutMenuItem[];
|
|
8
|
+
preferences: LumalPreferences;
|
|
9
|
+
tabs?: LumalLayoutTabItem[];
|
|
10
|
+
activeMenuPath?: string;
|
|
11
|
+
activeTabPath?: string;
|
|
12
|
+
routeDriven?: boolean;
|
|
13
|
+
routeTabFilter?: LumalLayoutRouteTabFilter;
|
|
14
|
+
routeTabResolver?: LumalLayoutRouteTabResolver;
|
|
15
|
+
tabFallbackPath?: string;
|
|
16
|
+
tabMaxCount?: number;
|
|
17
|
+
fixedTabs?: LumalLayoutTabItem[];
|
|
18
|
+
headerHeight?: string;
|
|
19
|
+
/** 是否显示顶部 Header。内嵌到其他壳层时可置为 false 以隐藏。 */
|
|
20
|
+
showHeader?: boolean;
|
|
21
|
+
tabStorageKey?: string;
|
|
22
|
+
/** 解析当前路由是否应保留为可恢复标签(路由驱动模式下用于持久化恢复过滤)。 */
|
|
23
|
+
isValidTabPath?: (path: string) => boolean;
|
|
24
|
+
/** 标签在新窗口打开时生成的地址,默认为路由 fullPath。 */
|
|
25
|
+
resolveTabUrl?: (path: string) => string;
|
|
26
|
+
};
|
|
27
|
+
type __VLS_ModelProps = {
|
|
28
|
+
'activeTabPath'?: string;
|
|
29
|
+
};
|
|
30
|
+
type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
|
|
31
|
+
declare var __VLS_18: {}, __VLS_44: {}, __VLS_110: {};
|
|
32
|
+
type __VLS_Slots = {} & {
|
|
33
|
+
logo?: (props: typeof __VLS_18) => any;
|
|
34
|
+
} & {
|
|
35
|
+
headerActions?: (props: typeof __VLS_44) => any;
|
|
36
|
+
} & {
|
|
37
|
+
default?: (props: typeof __VLS_110) => any;
|
|
38
|
+
};
|
|
39
|
+
declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {
|
|
40
|
+
getLayoutElement: () => HTMLElement | undefined;
|
|
41
|
+
getLayoutInstance: () => ComponentPublicInstance | null;
|
|
42
|
+
getTabs: () => LumalLayoutTabItem[];
|
|
43
|
+
getVisitHistory: () => string[];
|
|
44
|
+
resetTabs: () => void;
|
|
45
|
+
resetTabSnapshot: () => void;
|
|
46
|
+
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
47
|
+
menuSelect: (path: string) => any;
|
|
48
|
+
topMenuSelect: (path: string) => any;
|
|
49
|
+
toggleSidebar: () => any;
|
|
50
|
+
tabChange: (path: string) => any;
|
|
51
|
+
tabCloseAll: () => any;
|
|
52
|
+
tabCloseLeft: (path: string) => any;
|
|
53
|
+
tabCloseOthers: (path: string) => any;
|
|
54
|
+
tabCloseRight: (path: string) => any;
|
|
55
|
+
tabRefresh: (path: string) => any;
|
|
56
|
+
tabRemove: (path: string) => any;
|
|
57
|
+
tabPin: (path: string, pinned: boolean) => any;
|
|
58
|
+
tabReorder: (from: string, to: string) => any;
|
|
59
|
+
tabMaximize: (maximized: boolean) => any;
|
|
60
|
+
tabNewWindow: (path: string) => any;
|
|
61
|
+
"update:activeTabPath": (value: string | undefined) => any;
|
|
62
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
63
|
+
onMenuSelect?: ((path: string) => any) | undefined;
|
|
64
|
+
onTopMenuSelect?: ((path: string) => any) | undefined;
|
|
65
|
+
onToggleSidebar?: (() => any) | undefined;
|
|
66
|
+
onTabChange?: ((path: string) => any) | undefined;
|
|
67
|
+
onTabCloseAll?: (() => any) | undefined;
|
|
68
|
+
onTabCloseLeft?: ((path: string) => any) | undefined;
|
|
69
|
+
onTabCloseOthers?: ((path: string) => any) | undefined;
|
|
70
|
+
onTabCloseRight?: ((path: string) => any) | undefined;
|
|
71
|
+
onTabRefresh?: ((path: string) => any) | undefined;
|
|
72
|
+
onTabRemove?: ((path: string) => any) | undefined;
|
|
73
|
+
onTabPin?: ((path: string, pinned: boolean) => any) | undefined;
|
|
74
|
+
onTabReorder?: ((from: string, to: string) => any) | undefined;
|
|
75
|
+
onTabMaximize?: ((maximized: boolean) => any) | undefined;
|
|
76
|
+
onTabNewWindow?: ((path: string) => any) | undefined;
|
|
77
|
+
"onUpdate:activeTabPath"?: ((value: string | undefined) => any) | undefined;
|
|
78
|
+
}>, {
|
|
79
|
+
showHeader: boolean;
|
|
80
|
+
activeMenuPath: string;
|
|
81
|
+
menus: LumalLayoutMenuItem[];
|
|
82
|
+
tabs: LumalLayoutTabItem[];
|
|
83
|
+
activeTabPath: string;
|
|
84
|
+
routeDriven: boolean;
|
|
85
|
+
tabFallbackPath: string;
|
|
86
|
+
fixedTabs: LumalLayoutTabItem[];
|
|
87
|
+
headerHeight: string;
|
|
88
|
+
tabStorageKey: string;
|
|
89
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
90
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
91
|
+
declare const _default: typeof __VLS_export;
|
|
92
|
+
export default _default;
|
|
93
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
94
|
+
new (): {
|
|
95
|
+
$slots: S;
|
|
96
|
+
};
|
|
97
|
+
};
|
|
98
|
+
//# sourceMappingURL=LumalLayout.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LumalLayout.vue.d.ts","sourceRoot":"","sources":["../../../src/layout/LumalLayout.vue"],"names":[],"mappings":"AAw7BA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,KAAK,CAAA;AAElD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACtD,OAAO,KAAK,EACV,mBAAmB,EACnB,yBAAyB,EACzB,2BAA2B,EAC3B,kBAAkB,EACnB,MAAM,SAAS,CAAA;AAwChB,kDAAkD;AAClD,KAAK,WAAW,GAAG;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,mBAAmB,EAAE,CAAA;IAC7B,WAAW,EAAE,gBAAgB,CAAA;IAC7B,IAAI,CAAC,EAAE,kBAAkB,EAAE,CAAA;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,cAAc,CAAC,EAAE,yBAAyB,CAAA;IAC1C,gBAAgB,CAAC,EAAE,2BAA2B,CAAA;IAC9C,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,kBAAkB,EAAE,CAAA;IAChC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,2CAA2C;IAC3C,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAA;IAC1C,qCAAqC;IACrC,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAA;CACzC,CAAC;AAqmBF,KAAK,gBAAgB,GAAG;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAiBF,KAAK,iBAAiB,GAAG,WAAW,GAAG,gBAAgB,CAAC;AA+hBxD,QAAA,IAAuB,QAAQ,IAAW,EAAE,QAAQ,IAAW,EAAyB,SAAS,IAAa,CAAE;AAChH,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,QAAQ,KAAK,GAAG,CAAA;CAAE,GAC1C;IAAE,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,QAAQ,KAAK,GAAG,CAAA;CAAE,GACnD;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,SAAS,KAAK,GAAG,CAAA;CAAE,CAAC;AAQjD,QAAA,MAAM,UAAU;4BA/kBkC,WAAW,GAAG,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBA1lB1D,OAAO;oBAVH,MAAM;WAHf,mBAAmB,EAAE;UAEtB,kBAAkB,EAAE;mBAEX,MAAM;iBACR,OAAO;qBAGH,MAAM;eAEZ,kBAAkB,EAAE;kBACjB,MAAM;mBAGL,MAAM;6EA6qCtB,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AAWzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { LumalMenuBadgeTone, LumalMenuBadgeType } from './types';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
badge?: number | string;
|
|
4
|
+
label?: string;
|
|
5
|
+
tone?: LumalMenuBadgeTone;
|
|
6
|
+
type?: LumalMenuBadgeType;
|
|
7
|
+
};
|
|
8
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
9
|
+
label: string;
|
|
10
|
+
type: LumalMenuBadgeType;
|
|
11
|
+
badge: number | string;
|
|
12
|
+
tone: LumalMenuBadgeTone;
|
|
13
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
14
|
+
declare const _default: typeof __VLS_export;
|
|
15
|
+
export default _default;
|
|
16
|
+
//# sourceMappingURL=LumalMenuBadge.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LumalMenuBadge.vue.d.ts","sourceRoot":"","sources":["../../../src/layout/LumalMenuBadge.vue"],"names":[],"mappings":"AAoEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAGrE,KAAK,WAAW,GAAG;IACjB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,kBAAkB,CAAA;IACzB,IAAI,CAAC,EAAE,kBAAkB,CAAA;CAC1B,CAAC;AAqEF,QAAA,MAAM,YAAY;WAxER,MAAM;UAEP,kBAAkB;WAHjB,MAAM,GAAG,MAAM;UAEhB,kBAAkB;6EA0EzB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/***********************属性定义*********************/
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
viewKey?: number | string;
|
|
4
|
+
transition?: boolean;
|
|
5
|
+
transitionName?: string;
|
|
6
|
+
progress?: boolean;
|
|
7
|
+
loading?: boolean;
|
|
8
|
+
cache?: boolean;
|
|
9
|
+
cacheMax?: number;
|
|
10
|
+
};
|
|
11
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {
|
|
12
|
+
getRouterViewElement: () => HTMLElement | null;
|
|
13
|
+
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
14
|
+
loading: boolean;
|
|
15
|
+
progress: boolean;
|
|
16
|
+
transition: boolean;
|
|
17
|
+
viewKey: number | string;
|
|
18
|
+
transitionName: string;
|
|
19
|
+
cache: boolean;
|
|
20
|
+
cacheMax: number;
|
|
21
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
22
|
+
declare const _default: typeof __VLS_export;
|
|
23
|
+
export default _default;
|
|
24
|
+
//# sourceMappingURL=LumalRouterView.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LumalRouterView.vue.d.ts","sourceRoot":"","sources":["../../../src/layout/LumalRouterView.vue"],"names":[],"mappings":"AAuQA,kDAAkD;AAClD,KAAK,WAAW,GAAG;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACzB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAC;AAyQF,QAAA,MAAM,YAAY;;;aA5QN,OAAO;cADN,OAAO;gBAFL,OAAO;aADV,MAAM,GAAG,MAAM;oBAER,MAAM;WAGf,OAAO;cACJ,MAAM;6EA8QjB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { ComponentPublicInstance } from 'vue';
|
|
2
|
+
import type { LumalLayoutMenuItem } from './types';
|
|
3
|
+
/***********************属性定义*********************/
|
|
4
|
+
type __VLS_Props = {
|
|
5
|
+
menus?: LumalLayoutMenuItem[];
|
|
6
|
+
activePath?: string;
|
|
7
|
+
ariaLabel?: string;
|
|
8
|
+
collapsed?: boolean;
|
|
9
|
+
width?: string;
|
|
10
|
+
collapsedWidth?: string;
|
|
11
|
+
};
|
|
12
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {
|
|
13
|
+
getAsideElement: () => HTMLElement | undefined;
|
|
14
|
+
getAsideInstance: () => ComponentPublicInstance | null;
|
|
15
|
+
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
16
|
+
select: (path: string) => any;
|
|
17
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
18
|
+
onSelect?: ((path: string) => any) | undefined;
|
|
19
|
+
}>, {
|
|
20
|
+
ariaLabel: string;
|
|
21
|
+
width: string;
|
|
22
|
+
activePath: string;
|
|
23
|
+
menus: LumalLayoutMenuItem[];
|
|
24
|
+
collapsed: boolean;
|
|
25
|
+
collapsedWidth: string;
|
|
26
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
27
|
+
declare const _default: typeof __VLS_export;
|
|
28
|
+
export default _default;
|
|
29
|
+
//# sourceMappingURL=LumalSidebar.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LumalSidebar.vue.d.ts","sourceRoot":"","sources":["../../../src/layout/LumalSidebar.vue"],"names":[],"mappings":"AAwHA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,KAAK,CAAA;AAClD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAKlD,kDAAkD;AAClD,KAAK,WAAW,GAAG;IACjB,KAAK,CAAC,EAAE,mBAAmB,EAAE,CAAA;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,CAAC;AAiLF,QAAA,MAAM,YAAY;2BArJ8B,WAAW,GAAG,SAAS;;;;;;;eAhCzD,MAAM;WAEV,MAAM;gBAHD,MAAM;WADX,mBAAmB,EAAE;eAGjB,OAAO;oBAEF,MAAM;6EAuLvB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { LumalLayoutMenuItem } from './types';
|
|
2
|
+
/***********************属性定义*********************/
|
|
3
|
+
type __VLS_Props = {
|
|
4
|
+
activePath?: string;
|
|
5
|
+
collapsed?: boolean;
|
|
6
|
+
depth?: number;
|
|
7
|
+
item: LumalLayoutMenuItem;
|
|
8
|
+
};
|
|
9
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
10
|
+
select: (path: string) => any;
|
|
11
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
12
|
+
onSelect?: ((path: string) => any) | undefined;
|
|
13
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
14
|
+
declare const _default: typeof __VLS_export;
|
|
15
|
+
export default _default;
|
|
16
|
+
//# sourceMappingURL=LumalSidebarMenuItem.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LumalSidebarMenuItem.vue.d.ts","sourceRoot":"","sources":["../../../src/layout/LumalSidebarMenuItem.vue"],"names":[],"mappings":"AAAA,OA6IO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAMlD,kDAAkD;AAClD,KAAK,WAAW,GAAG;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,mBAAmB,CAAA;CAC1B,CAAC;AAyTF,QAAA,MAAM,YAAY;;;;kFAGhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import type { LumalLayoutTabItem, LumalTabStyle } from './types';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
activePath?: string;
|
|
4
|
+
draggable?: boolean;
|
|
5
|
+
fullscreenTarget?: string;
|
|
6
|
+
middleClickToClose?: boolean;
|
|
7
|
+
showIcon?: boolean;
|
|
8
|
+
showMaximize?: boolean;
|
|
9
|
+
showMore?: boolean;
|
|
10
|
+
showRefresh?: boolean;
|
|
11
|
+
styleType?: LumalTabStyle;
|
|
12
|
+
tabs?: LumalLayoutTabItem[];
|
|
13
|
+
visible?: boolean;
|
|
14
|
+
wheelable?: boolean;
|
|
15
|
+
/** 独立使用 LumalTabs(非 LumalLayout 内嵌)时启用原生 Fullscreen API 最大化。 */
|
|
16
|
+
standaloneMaximize?: boolean;
|
|
17
|
+
};
|
|
18
|
+
declare function scrollTabs(direction: 'left' | 'right'): void;
|
|
19
|
+
/***********************最大化*********************/
|
|
20
|
+
/** 应用内内容最大化(LumalLayout 内嵌):仅由父组件通过事件统一控制 UI 显隐。 */
|
|
21
|
+
declare function toggleMaximize(): void;
|
|
22
|
+
declare function setMaximizedState(value: boolean): void;
|
|
23
|
+
type __VLS_ModelProps = {
|
|
24
|
+
'activePath'?: string;
|
|
25
|
+
};
|
|
26
|
+
type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
|
|
27
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {
|
|
28
|
+
getTabsElement: () => HTMLElement | null;
|
|
29
|
+
refreshCurrent: () => void;
|
|
30
|
+
scrollTabs: typeof scrollTabs;
|
|
31
|
+
toggleFullscreen: typeof toggleMaximize;
|
|
32
|
+
setMaximized: typeof setMaximizedState;
|
|
33
|
+
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
34
|
+
change: (path: string) => any;
|
|
35
|
+
remove: (path: string) => any;
|
|
36
|
+
refresh: (path: string) => any;
|
|
37
|
+
maximize: (maximized: boolean) => any;
|
|
38
|
+
pin: (path: string, pinned: boolean) => any;
|
|
39
|
+
closeAll: () => any;
|
|
40
|
+
closeLeft: (path: string) => any;
|
|
41
|
+
closeOthers: (path: string) => any;
|
|
42
|
+
closeRight: (path: string) => any;
|
|
43
|
+
newWindow: (path: string) => any;
|
|
44
|
+
reorder: (from: string, to: string) => any;
|
|
45
|
+
"update:activePath": (value: string) => any;
|
|
46
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
47
|
+
onChange?: ((path: string) => any) | undefined;
|
|
48
|
+
onRemove?: ((path: string) => any) | undefined;
|
|
49
|
+
onRefresh?: ((path: string) => any) | undefined;
|
|
50
|
+
onMaximize?: ((maximized: boolean) => any) | undefined;
|
|
51
|
+
onPin?: ((path: string, pinned: boolean) => any) | undefined;
|
|
52
|
+
onCloseAll?: (() => any) | undefined;
|
|
53
|
+
onCloseLeft?: ((path: string) => any) | undefined;
|
|
54
|
+
onCloseOthers?: ((path: string) => any) | undefined;
|
|
55
|
+
onCloseRight?: ((path: string) => any) | undefined;
|
|
56
|
+
onNewWindow?: ((path: string) => any) | undefined;
|
|
57
|
+
onReorder?: ((from: string, to: string) => any) | undefined;
|
|
58
|
+
"onUpdate:activePath"?: ((value: string) => any) | undefined;
|
|
59
|
+
}>, {
|
|
60
|
+
draggable: boolean;
|
|
61
|
+
visible: boolean;
|
|
62
|
+
showRefresh: boolean;
|
|
63
|
+
activePath: string;
|
|
64
|
+
showIcon: boolean;
|
|
65
|
+
fullscreenTarget: string;
|
|
66
|
+
middleClickToClose: boolean;
|
|
67
|
+
showMaximize: boolean;
|
|
68
|
+
showMore: boolean;
|
|
69
|
+
styleType: LumalTabStyle;
|
|
70
|
+
tabs: LumalLayoutTabItem[];
|
|
71
|
+
wheelable: boolean;
|
|
72
|
+
standaloneMaximize: boolean;
|
|
73
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
74
|
+
declare const _default: typeof __VLS_export;
|
|
75
|
+
export default _default;
|
|
76
|
+
//# sourceMappingURL=LumalTabs.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LumalTabs.vue.d.ts","sourceRoot":"","sources":["../../../src/layout/LumalTabs.vue"],"names":[],"mappings":"AAwmCA,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AA8BhE,KAAK,WAAW,GAAG;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,SAAS,CAAC,EAAE,aAAa,CAAA;IACzB,IAAI,CAAC,EAAE,kBAAkB,EAAE,CAAA;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,gEAAgE;IAChE,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC7B,CAAC;AA+UF,iBAAS,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,CAUrD;AA0ED,iDAAiD;AACjD,oDAAoD;AACpD,iBAAS,cAAc,IAAI,IAAI,CAO9B;AAuBD,iBAAS,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAI/C;AAsED,KAAK,gBAAgB,GAAG;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAoBF,KAAK,iBAAiB,GAAG,WAAW,GAAG,gBAAgB,CAAC;AAwtBxD,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAxwCJ,OAAO;aAST,OAAO;iBAHH,OAAO;gBAPR,MAAM;cAIR,OAAO;sBAFC,MAAM;wBACJ,OAAO;kBAEb,OAAO;cACX,OAAO;eAEN,aAAa;UAClB,kBAAkB,EAAE;eAEf,OAAO;wBAEE,OAAO;6EAiwC5B,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { ComponentPublicInstance } from 'vue';
|
|
2
|
+
import type { LumalLayoutMenuItem } from './types';
|
|
3
|
+
/***********************属性定义*********************/
|
|
4
|
+
type __VLS_Props = {
|
|
5
|
+
activePath?: string;
|
|
6
|
+
align?: 'center' | 'left' | 'right';
|
|
7
|
+
maxWidth?: number | string;
|
|
8
|
+
menus?: LumalLayoutMenuItem[];
|
|
9
|
+
mode?: 'flat' | 'tree';
|
|
10
|
+
};
|
|
11
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {
|
|
12
|
+
getMenuElement: () => HTMLElement | undefined;
|
|
13
|
+
getMenuInstance: () => ComponentPublicInstance | null;
|
|
14
|
+
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
15
|
+
select: (path: string) => any;
|
|
16
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
17
|
+
onSelect?: ((path: string) => any) | undefined;
|
|
18
|
+
}>, {
|
|
19
|
+
mode: "flat" | "tree";
|
|
20
|
+
align: "center" | "left" | "right";
|
|
21
|
+
activePath: string;
|
|
22
|
+
menus: LumalLayoutMenuItem[];
|
|
23
|
+
maxWidth: number | string;
|
|
24
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
25
|
+
declare const _default: typeof __VLS_export;
|
|
26
|
+
export default _default;
|
|
27
|
+
//# sourceMappingURL=LumalTopNav.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LumalTopNav.vue.d.ts","sourceRoot":"","sources":["../../../src/layout/LumalTopNav.vue"],"names":[],"mappings":"AAgOA,OAAO,KAAK,EAAE,uBAAuB,EAAiB,MAAM,KAAK,CAAA;AACjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAQlD,kDAAkD;AAClD,KAAK,WAAW,GAAG;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,KAAK,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAA;IACnC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC1B,KAAK,CAAC,EAAE,mBAAmB,EAAE,CAAA;IAC7B,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CACvB,CAAC;AA6RF,QAAA,MAAM,YAAY;0BAnO4B,WAAW,GAAG,SAAS;;;;;;;UA3D5D,MAAM,GAAG,MAAM;WAHd,QAAQ,GAAG,MAAM,GAAG,OAAO;gBADtB,MAAM;WAGX,mBAAmB,EAAE;cADlB,MAAM,GAAG,MAAM;6EAqS1B,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { LumalLayoutMenuItem } from './types';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
activePath?: string;
|
|
4
|
+
item: LumalLayoutMenuItem;
|
|
5
|
+
};
|
|
6
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
7
|
+
select: (path: string) => any;
|
|
8
|
+
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
9
|
+
onSelect?: ((path: string) => any) | undefined;
|
|
10
|
+
}>, {
|
|
11
|
+
activePath: string;
|
|
12
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
13
|
+
declare const _default: typeof __VLS_export;
|
|
14
|
+
export default _default;
|
|
15
|
+
//# sourceMappingURL=LumalTopNavMenuItem.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LumalTopNavMenuItem.vue.d.ts","sourceRoot":"","sources":["../../../src/layout/LumalTopNavMenuItem.vue"],"names":[],"mappings":"AAAA,OAsGO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAOlD,KAAK,WAAW,GAAG;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,mBAAmB,CAAA;CAC1B,CAAC;AA6RF,QAAA,MAAM,YAAY;;;;;gBA/RH,MAAM;6EAmSnB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export { default as LumalBreadcrumb } from './LumalBreadcrumb.vue';
|
|
2
|
+
export { default as LumalContent } from './LumalContent.vue';
|
|
3
|
+
export { default as LumalGlobalSearch } from './LumalGlobalSearch.vue';
|
|
4
|
+
export { default as LumalHeader } from './LumalHeader.vue';
|
|
5
|
+
export { default as LumalLayout } from './LumalLayout.vue';
|
|
6
|
+
export { default as LumalRouterView } from './LumalRouterView.vue';
|
|
7
|
+
export { default as LumalSidebar } from './LumalSidebar.vue';
|
|
8
|
+
export { default as LumalTabs } from './LumalTabs.vue';
|
|
9
|
+
export { default as LumalTopNav } from './LumalTopNav.vue';
|
|
10
|
+
export { findMenuItemByPath, findMenuTrailByPath, includesMenuPath, resolveActiveTopMenuPath, resolveNavigationTarget, splitMenusByLayout, } from './state/menu-layout';
|
|
11
|
+
export type { SplitMenusByLayoutOptions, SplitMenusByLayoutResult, } from './state/menu-layout';
|
|
12
|
+
export { clearTabSnapshot, deserializeTabSnapshot, readTabSnapshot, restoreTabsFromSnapshot, serializeTabSnapshot, writeTabSnapshot, } from './state/tab-storage';
|
|
13
|
+
export type { PersistContext, RestoreContext, TabSnapshot, TabSnapshotStorage, } from './state/tab-storage';
|
|
14
|
+
export { DEFAULT_MAX_VISIT_HISTORY, TAB_SNAPSHOT_VERSION, } from './state/tab-storage';
|
|
15
|
+
export { appendTab, canPinTab, canUnpinTab, clampTabCount, closeAllTabs, closeOtherTabs, closeTab, closeTabsLeft, closeTabsRight, isPermanentlyPinned, pinTab, pushVisitHistory, reorderTab, resolveCachedTabPaths, resolveNextActivePath, sortTabsByPinned, unpinTab, } from './state/tab-strategy';
|
|
16
|
+
export type { AppendTabOptions, VisitHistoryOptions, } from './state/tab-strategy';
|
|
17
|
+
export type { LumalLayoutMenuItem, LumalLayoutRouteTabFilter, LumalLayoutRouteTabResolver, LumalLayoutTabItem, LumalMenuBadgeTone, LumalMenuBadgeType, LumalTabStyle, } from './types';
|
|
18
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/layout/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAClE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AACtE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAClE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,iBAAiB,CAAA;AACtD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EAChB,wBAAwB,EACxB,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EACV,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,eAAe,EACf,uBAAuB,EACvB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EACV,cAAc,EACd,cAAc,EACd,WAAW,EACX,kBAAkB,GACnB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,yBAAyB,EACzB,oBAAoB,GACrB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,SAAS,EACT,SAAS,EACT,WAAW,EACX,aAAa,EACb,YAAY,EACZ,cAAc,EACd,QAAQ,EACR,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,MAAM,EACN,gBAAgB,EAChB,UAAU,EACV,qBAAqB,EACrB,qBAAqB,EACrB,gBAAgB,EAChB,QAAQ,GACT,MAAM,sBAAsB,CAAA;AAC7B,YAAY,EACV,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,sBAAsB,CAAA;AAC7B,YAAY,EACV,mBAAmB,EACnB,yBAAyB,EACzB,2BAA2B,EAC3B,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,aAAa,GACd,MAAM,SAAS,CAAA"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { LumalLayoutMode } from '../../theme/types';
|
|
2
|
+
import type { LumalLayoutMenuItem } from '../types';
|
|
3
|
+
/***********************菜单命中判断*********************/
|
|
4
|
+
/**
|
|
5
|
+
* 判断菜单项(含子级)是否覆盖指定路径。
|
|
6
|
+
*/
|
|
7
|
+
export declare function includesMenuPath(item: LumalLayoutMenuItem, path: string): boolean;
|
|
8
|
+
export declare function findMenuItemByPath(menus: LumalLayoutMenuItem[], path: string): LumalLayoutMenuItem | undefined;
|
|
9
|
+
export declare function findMenuTrailByPath(menus: LumalLayoutMenuItem[], path: string): LumalLayoutMenuItem[];
|
|
10
|
+
/**
|
|
11
|
+
* 解析菜单项的导航目标:优先使用显式重定向,否则下钻到首个可导航子项。
|
|
12
|
+
*/
|
|
13
|
+
export declare function resolveNavigationTarget(item?: LumalLayoutMenuItem): string;
|
|
14
|
+
/**
|
|
15
|
+
* 在菜单树中解析与当前路径匹配的顶层菜单路径,用于 mixed-nav 高亮顶部项。
|
|
16
|
+
*/
|
|
17
|
+
export declare function resolveActiveTopMenuPath(menus: LumalLayoutMenuItem[], path: string): string;
|
|
18
|
+
/***********************布局拆分*********************/
|
|
19
|
+
export interface SplitMenusByLayoutOptions {
|
|
20
|
+
menus: LumalLayoutMenuItem[];
|
|
21
|
+
layout: LumalLayoutMode;
|
|
22
|
+
activeTopMenuPath?: string;
|
|
23
|
+
}
|
|
24
|
+
export interface SplitMenusByLayoutResult {
|
|
25
|
+
topMenus: LumalLayoutMenuItem[];
|
|
26
|
+
sidebarMenus: LumalLayoutMenuItem[];
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* 按布局模式把完整菜单树拆分为顶部菜单与侧栏菜单:
|
|
30
|
+
* - sidebar-nav:全树进侧栏,无顶部;
|
|
31
|
+
* - top-nav:全树进顶部,无侧栏;
|
|
32
|
+
* - mixed-nav:顶部为顶层项,侧栏为当前激活顶层项的子级。
|
|
33
|
+
*/
|
|
34
|
+
export declare function splitMenusByLayout(options: SplitMenusByLayoutOptions): SplitMenusByLayoutResult;
|
|
35
|
+
//# sourceMappingURL=menu-layout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"menu-layout.d.ts","sourceRoot":"","sources":["../../../../src/layout/state/menu-layout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAEnD,oDAAoD;AACpD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAUjF;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,mBAAmB,EAAE,EAC5B,IAAI,EAAE,MAAM,GACX,mBAAmB,GAAG,SAAS,CAiBjC;AAED,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,mBAAmB,EAAE,EAC5B,IAAI,EAAE,MAAM,GACX,mBAAmB,EAAE,CAiBvB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,CAAC,EAAE,mBAAmB,GAAG,MAAM,CAgB1E;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,mBAAmB,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAG3F;AAED,kDAAkD;AAClD,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,mBAAmB,EAAE,CAAA;IAC5B,MAAM,EAAE,eAAe,CAAA;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,mBAAmB,EAAE,CAAA;IAC/B,YAAY,EAAE,mBAAmB,EAAE,CAAA;CACpC;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,yBAAyB,GAAG,wBAAwB,CAmB/F"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import type { LumalLayoutTabItem } from '../types';
|
|
2
|
+
/***********************快照结构*********************/
|
|
3
|
+
export declare const TAB_SNAPSHOT_VERSION = 1;
|
|
4
|
+
export declare const DEFAULT_MAX_VISIT_HISTORY = 50;
|
|
5
|
+
export interface TabSnapshot {
|
|
6
|
+
v: number;
|
|
7
|
+
tabs: Array<Pick<LumalLayoutTabItem, 'closable' | 'icon' | 'path' | 'pinned' | 'title'>>;
|
|
8
|
+
history: string[];
|
|
9
|
+
}
|
|
10
|
+
export interface TabSnapshotStorage {
|
|
11
|
+
getItem: (key: string) => string | null;
|
|
12
|
+
removeItem: (key: string) => void;
|
|
13
|
+
setItem: (key: string, value: string) => void;
|
|
14
|
+
}
|
|
15
|
+
export interface RestoreContext {
|
|
16
|
+
/** 路由声明的永久固定标签(closable=false)。 */
|
|
17
|
+
fixedTabs: LumalLayoutTabItem[];
|
|
18
|
+
/** 当前路由路径,始终会被合并入恢复结果。 */
|
|
19
|
+
currentPath: string;
|
|
20
|
+
/** 当前路由生成的标签补充信息。 */
|
|
21
|
+
currentTab?: LumalLayoutTabItem;
|
|
22
|
+
/** 过滤无效或隐藏路由的判断函数。 */
|
|
23
|
+
isValidPath?: (path: string) => boolean;
|
|
24
|
+
/** 刷新标题和图标的解析器。 */
|
|
25
|
+
resolveTab?: (path: string) => Partial<LumalLayoutTabItem> | undefined;
|
|
26
|
+
}
|
|
27
|
+
export interface PersistContext {
|
|
28
|
+
tabs: LumalLayoutTabItem[];
|
|
29
|
+
history: string[];
|
|
30
|
+
maxHistory?: number;
|
|
31
|
+
}
|
|
32
|
+
export declare function serializeTabSnapshot(context: PersistContext): TabSnapshot;
|
|
33
|
+
/**
|
|
34
|
+
* 尝试从存储读取并解析标签快照。
|
|
35
|
+
* 存储损坏或版本不符时返回 undefined,调用方应回退为固定页签加当前页。
|
|
36
|
+
*/
|
|
37
|
+
export declare function deserializeTabSnapshot(raw: string | null): TabSnapshot | undefined;
|
|
38
|
+
/***********************存储读写*********************/
|
|
39
|
+
export declare function writeTabSnapshot(storage: TabSnapshotStorage, storageKey: string, snapshot: TabSnapshot): boolean;
|
|
40
|
+
export declare function readTabSnapshot(storage: TabSnapshotStorage, storageKey: string): TabSnapshot | undefined;
|
|
41
|
+
export declare function clearTabSnapshot(storage: TabSnapshotStorage, storageKey: string): void;
|
|
42
|
+
/***********************恢复合并*********************/
|
|
43
|
+
/**
|
|
44
|
+
* 恢复时合并路由固定页签、过滤无效或隐藏路由、刷新标题和图标,
|
|
45
|
+
* 并始终补入当前路由。存储损坏或不可用时退化为固定页签加当前页。
|
|
46
|
+
*/
|
|
47
|
+
export declare function restoreTabsFromSnapshot(snapshot: TabSnapshot | undefined, context: RestoreContext): {
|
|
48
|
+
tabs: LumalLayoutTabItem[];
|
|
49
|
+
history: string[];
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=tab-storage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tab-storage.d.ts","sourceRoot":"","sources":["../../../../src/layout/state/tab-storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAElD,kDAAkD;AAClD,eAAO,MAAM,oBAAoB,IAAI,CAAA;AACrC,eAAO,MAAM,yBAAyB,KAAK,CAAA;AAE3C,MAAM,WAAW,WAAW;IAC1B,CAAC,EAAE,MAAM,CAAA;IACT,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,kBAAkB,EAAE,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAA;IACxF,OAAO,EAAE,MAAM,EAAE,CAAA;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAA;IACvC,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CAC9C;AAED,MAAM,WAAW,cAAc;IAC7B,mCAAmC;IACnC,SAAS,EAAE,kBAAkB,EAAE,CAAA;IAC/B,0BAA0B;IAC1B,WAAW,EAAE,MAAM,CAAA;IACnB,qBAAqB;IACrB,UAAU,CAAC,EAAE,kBAAkB,CAAA;IAC/B,sBAAsB;IACtB,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAA;IACvC,mBAAmB;IACnB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,kBAAkB,CAAC,GAAG,SAAS,CAAA;CACvE;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,kBAAkB,EAAE,CAAA;IAC1B,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAcD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,cAAc,GAAG,WAAW,CAezE;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,WAAW,GAAG,SAAS,CA2BlF;AAED,kDAAkD;AAClD,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,kBAAkB,EAC3B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,WAAW,GACpB,OAAO,CAQT;AAED,wBAAgB,eAAe,CAC7B,OAAO,EAAE,kBAAkB,EAC3B,UAAU,EAAE,MAAM,GACjB,WAAW,GAAG,SAAS,CA0BzB;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAOtF;AAED,kDAAkD;AAClD;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,WAAW,GAAG,SAAS,EACjC,OAAO,EAAE,cAAc,GACtB;IAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CA0DnD"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import type { LumalLayoutTabItem } from '../types';
|
|
2
|
+
export interface AppendTabOptions {
|
|
3
|
+
/** 最大标签数,0 表示不限制。 */
|
|
4
|
+
maxCount?: number;
|
|
5
|
+
}
|
|
6
|
+
/***********************分组工具*********************/
|
|
7
|
+
/** 固定标签始终排在左侧,且不会被批量关闭或最大数量淘汰。 */
|
|
8
|
+
export declare function sortTabsByPinned(tabs: LumalLayoutTabItem[]): LumalLayoutTabItem[];
|
|
9
|
+
/***********************追加与裁剪*********************/
|
|
10
|
+
/**
|
|
11
|
+
* 追加标签页并按策略裁剪:
|
|
12
|
+
* - 已存在同路径则不重复添加;
|
|
13
|
+
* - 超过 maxCount 时,从最早的可关闭非固定标签开始移除(保留固定标签和当前活动标签)。
|
|
14
|
+
*/
|
|
15
|
+
export declare function appendTab(tabs: LumalLayoutTabItem[], tab: LumalLayoutTabItem, options?: AppendTabOptions): LumalLayoutTabItem[];
|
|
16
|
+
/**
|
|
17
|
+
* 降低最大标签数时淘汰最早的普通标签,保护固定标签和当前活动标签;
|
|
18
|
+
* 受保护标签数量超过限制时允许暂时超限。
|
|
19
|
+
*/
|
|
20
|
+
export declare function clampTabCount(tabs: LumalLayoutTabItem[], maxCount: number, activePath: string): LumalLayoutTabItem[];
|
|
21
|
+
/***********************单页与批量关闭*********************/
|
|
22
|
+
/** 关闭指定标签,返回新标签列表;不可关闭或固定的标签会被忽略。 */
|
|
23
|
+
export declare function closeTab(tabs: LumalLayoutTabItem[], path: string): LumalLayoutTabItem[];
|
|
24
|
+
export declare function closeTabsLeft(tabs: LumalLayoutTabItem[], path: string): LumalLayoutTabItem[];
|
|
25
|
+
export declare function closeTabsRight(tabs: LumalLayoutTabItem[], path: string): LumalLayoutTabItem[];
|
|
26
|
+
export declare function closeOtherTabs(tabs: LumalLayoutTabItem[], path: string): LumalLayoutTabItem[];
|
|
27
|
+
export declare function closeAllTabs(tabs: LumalLayoutTabItem[]): LumalLayoutTabItem[];
|
|
28
|
+
/***********************固定/取消固定*********************/
|
|
29
|
+
/**
|
|
30
|
+
* 固定标签:将指定标签置为 pinned=true 并移到左侧固定组。
|
|
31
|
+
* 路由声明 closable=false 的标签原本就不可关闭,等价于永久固定。
|
|
32
|
+
*/
|
|
33
|
+
export declare function pinTab(tabs: LumalLayoutTabItem[], path: string): LumalLayoutTabItem[];
|
|
34
|
+
/**
|
|
35
|
+
* 取消固定:仅当标签是用户可取消固定的(非路由声明 closable=false)时才取消。
|
|
36
|
+
*/
|
|
37
|
+
export declare function unpinTab(tabs: LumalLayoutTabItem[], path: string): LumalLayoutTabItem[];
|
|
38
|
+
/** 标签是否为路由声明的永久固定标签(不可取消固定)。 */
|
|
39
|
+
export declare function isPermanentlyPinned(tab: LumalLayoutTabItem): boolean;
|
|
40
|
+
/** 标签是否可被用户取消固定。 */
|
|
41
|
+
export declare function canUnpinTab(tab: LumalLayoutTabItem): boolean;
|
|
42
|
+
/** 标签是否可被用户固定(非永久固定且当前未固定)。 */
|
|
43
|
+
export declare function canPinTab(tab: LumalLayoutTabItem): boolean;
|
|
44
|
+
export interface VisitHistoryOptions {
|
|
45
|
+
/** 历史最大条数,默认 50。 */
|
|
46
|
+
maxCount?: number;
|
|
47
|
+
}
|
|
48
|
+
/** 记录一条访问历史,去重(最新路径置顶),最多保留 maxCount 条(默认 50)。 */
|
|
49
|
+
export declare function pushVisitHistory(history: string[], path: string, options?: VisitHistoryOptions): string[];
|
|
50
|
+
/**
|
|
51
|
+
* 选择关闭活动标签后应跳转的标签:
|
|
52
|
+
* - 开启访问历史时,返回最近访问且仍存在的标签;
|
|
53
|
+
* - 否则优先进入关闭位置的右侧标签,再回退到左侧首个标签。
|
|
54
|
+
*
|
|
55
|
+
* tabs 为已经移除被关闭标签后的剩余列表;priorClosedIndex 为被关闭标签在原始列表中的位置。
|
|
56
|
+
*/
|
|
57
|
+
export declare function resolveNextActivePath(tabs: LumalLayoutTabItem[], closedPath: string, history?: string[], options?: {
|
|
58
|
+
useHistory?: boolean;
|
|
59
|
+
priorClosedIndex?: number;
|
|
60
|
+
}): string;
|
|
61
|
+
/***********************拖拽排序*********************/
|
|
62
|
+
/**
|
|
63
|
+
* 在固定组和普通组内重排标签。固定与普通标签不能跨组拖动:
|
|
64
|
+
* - 若 fromPinned 且 !toPinned,或 !fromPinned 且 toPinned,则不移动(跨组拒绝)。
|
|
65
|
+
* 同组内按目标位置插入。
|
|
66
|
+
*/
|
|
67
|
+
export declare function reorderTab(tabs: LumalLayoutTabItem[], fromPath: string, toPath: string): LumalLayoutTabItem[];
|
|
68
|
+
/***********************标签缓存 keepAlive 名单*********************/
|
|
69
|
+
/** 仅当开启缓存时返回需要缓存的路径集合。 */
|
|
70
|
+
export declare function resolveCachedTabPaths(tabs: LumalLayoutTabItem[], options?: {
|
|
71
|
+
enable?: boolean;
|
|
72
|
+
}): string[];
|
|
73
|
+
//# sourceMappingURL=tab-strategy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tab-strategy.d.ts","sourceRoot":"","sources":["../../../../src/layout/state/tab-strategy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAA;AAElD,MAAM,WAAW,gBAAgB;IAC/B,qBAAqB;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,kDAAkD;AAClD,kCAAkC;AAClC,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,kBAAkB,EAAE,GAAG,kBAAkB,EAAE,CAMjF;AAED,mDAAmD;AACnD;;;;GAIG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,kBAAkB,EAAE,EAC1B,GAAG,EAAE,kBAAkB,EACvB,OAAO,GAAE,gBAAqB,GAC7B,kBAAkB,EAAE,CA0BtB;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,kBAAkB,EAAE,EAC1B,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GACjB,kBAAkB,EAAE,CAoBtB;AAED,qDAAqD;AACrD,qCAAqC;AACrC,wBAAgB,QAAQ,CAAC,IAAI,EAAE,kBAAkB,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,kBAAkB,EAAE,CAIvF;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,kBAAkB,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,kBAAkB,EAAE,CAS5F;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,kBAAkB,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,kBAAkB,EAAE,CAS7F;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,kBAAkB,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,kBAAkB,EAAE,CAE7F;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,kBAAkB,EAAE,GAAG,kBAAkB,EAAE,CAO7E;AAED,qDAAqD;AACrD;;;GAGG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,kBAAkB,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,kBAAkB,EAAE,CAWrF;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,kBAAkB,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,kBAAkB,EAAE,CAYvF;AAED,gCAAgC;AAChC,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAEpE;AAED,oBAAoB;AACpB,wBAAgB,WAAW,CAAC,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAE5D;AAED,+BAA+B;AAC/B,wBAAgB,SAAS,CAAC,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAE1D;AAKD,MAAM,WAAW,mBAAmB;IAClC,oBAAoB;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,kDAAkD;AAClD,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,EAAE,EACjB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,mBAAwB,GAChC,MAAM,EAAE,CASV;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,kBAAkB,EAAE,EAC1B,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,MAAM,EAAO,EACtB,OAAO,GAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAAO,GAChE,MAAM,CA+BR;AAED,kDAAkD;AAClD;;;;GAIG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,kBAAkB,EAAE,EAC1B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,kBAAkB,EAAE,CAsBtB;AAED,+DAA+D;AAC/D,0BAA0B;AAC1B,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,kBAAkB,EAAE,EAC1B,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GACjC,MAAM,EAAE,CAMV"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { RouteLocationNormalizedLoaded } from 'vue-router';
|
|
2
|
+
import type { LumalTabStyle } from '../theme/types';
|
|
3
|
+
export type LumalMenuBadgeType = 'dot' | 'text';
|
|
4
|
+
export type LumalMenuBadgeTone = 'danger' | 'info' | 'primary' | 'success' | 'warning';
|
|
5
|
+
export interface LumalLayoutMenuItem {
|
|
6
|
+
path: string;
|
|
7
|
+
redirect?: string;
|
|
8
|
+
title: string;
|
|
9
|
+
badge?: number | string;
|
|
10
|
+
badgeTone?: LumalMenuBadgeTone;
|
|
11
|
+
badgeType?: LumalMenuBadgeType;
|
|
12
|
+
children?: LumalLayoutMenuItem[];
|
|
13
|
+
externalLink?: string;
|
|
14
|
+
externalTarget?: '_blank' | '_self';
|
|
15
|
+
hidden?: boolean;
|
|
16
|
+
icon?: string;
|
|
17
|
+
}
|
|
18
|
+
export interface LumalLayoutTabItem {
|
|
19
|
+
path: string;
|
|
20
|
+
title: string;
|
|
21
|
+
closable?: boolean;
|
|
22
|
+
icon?: string;
|
|
23
|
+
/** 是否固定到左侧固定组;用户取消固定可置为 false,路由声明 closable=false 的页签禁止取消固定。 */
|
|
24
|
+
pinned?: boolean;
|
|
25
|
+
}
|
|
26
|
+
export type LumalLayoutRouteTabFilter = (route: RouteLocationNormalizedLoaded) => boolean;
|
|
27
|
+
export type LumalLayoutRouteTabResolver = (route: RouteLocationNormalizedLoaded) => LumalLayoutTabItem | undefined;
|
|
28
|
+
export type { LumalTabStyle };
|
|
29
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/layout/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAA;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAEnD,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG,MAAM,CAAA;AAC/C,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAA;AAEtF,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,SAAS,CAAC,EAAE,kBAAkB,CAAA;IAC9B,SAAS,CAAC,EAAE,kBAAkB,CAAA;IAC9B,QAAQ,CAAC,EAAE,mBAAmB,EAAE,CAAA;IAChC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,cAAc,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAA;IACnC,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,gEAAgE;IAChE,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAED,MAAM,MAAM,yBAAyB,GAAG,CAAC,KAAK,EAAE,6BAA6B,KAAK,OAAO,CAAA;AAEzF,MAAM,MAAM,2BAA2B,GAAG,CACxC,KAAK,EAAE,6BAA6B,KACjC,kBAAkB,GAAG,SAAS,CAAA;AAEnC,YAAY,EAAE,aAAa,EAAE,CAAA"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { PermissionCheckMode, PermissionRequirement, PermissionStore } from './types';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
mode?: PermissionCheckMode;
|
|
4
|
+
permission?: PermissionRequirement;
|
|
5
|
+
permissions?: PermissionRequirement;
|
|
6
|
+
role?: PermissionRequirement;
|
|
7
|
+
roleMode?: PermissionCheckMode;
|
|
8
|
+
roles?: PermissionRequirement;
|
|
9
|
+
store?: PermissionStore;
|
|
10
|
+
};
|
|
11
|
+
declare var __VLS_1: {}, __VLS_3: {};
|
|
12
|
+
type __VLS_Slots = {} & {
|
|
13
|
+
default?: (props: typeof __VLS_1) => any;
|
|
14
|
+
} & {
|
|
15
|
+
fallback?: (props: typeof __VLS_3) => any;
|
|
16
|
+
};
|
|
17
|
+
declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
18
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
19
|
+
declare const _default: typeof __VLS_export;
|
|
20
|
+
export default _default;
|
|
21
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
22
|
+
new (): {
|
|
23
|
+
$slots: S;
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=LumalAccessControl.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LumalAccessControl.vue.d.ts","sourceRoot":"","sources":["../../../src/permission/LumalAccessControl.vue"],"names":[],"mappings":"AAqCA,OAAO,KAAK,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAI1F,KAAK,WAAW,GAAG;IACjB,IAAI,CAAC,EAAE,mBAAmB,CAAA;IAC1B,UAAU,CAAC,EAAE,qBAAqB,CAAA;IAClC,WAAW,CAAC,EAAE,qBAAqB,CAAA;IACnC,IAAI,CAAC,EAAE,qBAAqB,CAAA;IAC5B,QAAQ,CAAC,EAAE,mBAAmB,CAAA;IAC9B,KAAK,CAAC,EAAE,qBAAqB,CAAA;IAC7B,KAAK,CAAC,EAAE,eAAe,CAAA;CACxB,CAAC;AA2CF,QAAA,IAAI,OAAO,IAAU,EAAE,OAAO,IAAW,CAAE;AAC3C,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,GAC5C;IAAE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,CAAC;AAGhD,QAAA,MAAM,UAAU,kSAEd,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { InjectionKey } from 'vue';
|
|
2
|
+
import type { PermissionStore } from './types';
|
|
3
|
+
export declare const permissionStoreKey: InjectionKey<PermissionStore>;
|
|
4
|
+
export declare function providePermissionStore(store: PermissionStore): PermissionStore;
|
|
5
|
+
export declare function usePermissionStore(): PermissionStore;
|
|
6
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/permission/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,KAAK,CAAA;AACvC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAG9C,eAAO,MAAM,kBAAkB,EAAE,YAAY,CAAC,eAAe,CAAoC,CAAA;AAEjG,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,eAAe,GAAG,eAAe,CAG9E;AAED,wBAAgB,kBAAkB,IAAI,eAAe,CAQpD"}
|