@choubo/kerthus-web-admin-shell 0.3.0 → 0.4.1

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/README.md CHANGED
@@ -30,17 +30,27 @@ defaults. Pass the host's `CachePort` as `settingsCache` and a per-user/tenant
30
30
  `settingsKey` if preferences must survive sign-in or tenant changes.
31
31
  Load `ant-design-vue/dist/antd.css` before
32
32
  `@choubo/kerthus-web-admin-shell/style.css` in the host entry.
33
+ The Classic shell uses the legacy nested menu, four layout modes, tab mask and
34
+ context actions, drag resizing, appearance and transition settings, responsive
35
+ navigation, scroll-to-top, and an optional auto-lock event.
33
36
 
34
37
  The host supplies `menus`, `tabs`, `activeTab`, optional `breadcrumbs`, and
35
- `headerPorts` for applications, notifications, user actions, and locales.
36
- Use the `brand`, `help`, `headerActions`, `navigation`, `tabs`, `footer`, and
37
- default slots for host-specific UI. Listen to `tabSelect`, `tabClose`,
38
+ `headerPorts` for applications, notifications, errors, help, user actions, and
39
+ locales. Use the `brand`, `railBrand`, `headerActions`, `navigation`, `tabs`,
40
+ `footer`, `agentHost`, `lockScreen`, `sessionTimeout`, and default slots for
41
+ host-specific UI. Listen to `tabSelect`, `tabClose`,
38
42
  `tabRefresh`, `tabCloseAction`, and `tabReorder` to update the host's tab store;
39
43
  `menuClick` reports navigation, and `settingsChange` reports the complete
40
44
  settings value. The runtime navigation port performs menu and tab navigation.
41
- The shell does not fetch applications or notifications or mutate user accounts.
45
+ The host handles `lock` and optional `clearState` events. The shell does not
46
+ fetch applications or notifications or mutate user accounts.
42
47
  See the [integration checklist](https://github.com/alexQi/kerthus-web/blob/main/docs/architecture/classic-admin-layout.md)
43
48
  and run `yarn demo:classic` from the repository for a local visual reference.
49
+ If the host uses `vite-plugin-purge-icons`, add the installed admin-shell and
50
+ vue-ui `dist/index.js` files as raw `content` alongside the host source globs.
51
+ Its default scan skips `node_modules`, so icons in a production build otherwise
52
+ render as placeholders. The integration checklist has a Vite configuration
53
+ example and a production browser check.
44
54
 
45
55
  `AdminTabs` displays host supplied tabs with refresh and close actions.
46
56
  `closeTabs` preserves affixed tabs for close current, left, right, others, and
@@ -11,12 +11,14 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
11
11
  loading?: boolean;
12
12
  error?: string;
13
13
  label?: string;
14
+ icon?: string;
14
15
  emptyLabel?: string;
15
16
  loadingLabel?: string;
16
17
  invalidUrlLabel?: string;
17
18
  confirmSwitch?: (app: AdminAppItem) => boolean | Promise<boolean>;
18
19
  }>, {
19
20
  label: string;
21
+ icon: string;
20
22
  emptyLabel: string;
21
23
  loadingLabel: string;
22
24
  invalidUrlLabel: string;
@@ -30,12 +32,14 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
30
32
  loading?: boolean;
31
33
  error?: string;
32
34
  label?: string;
35
+ icon?: string;
33
36
  emptyLabel?: string;
34
37
  loadingLabel?: string;
35
38
  invalidUrlLabel?: string;
36
39
  confirmSwitch?: (app: AdminAppItem) => boolean | Promise<boolean>;
37
40
  }>, {
38
41
  label: string;
42
+ icon: string;
39
43
  emptyLabel: string;
40
44
  loadingLabel: string;
41
45
  invalidUrlLabel: string;
@@ -45,6 +49,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
45
49
  onOpen?: (() => any) | undefined;
46
50
  }>, {
47
51
  label: string;
52
+ icon: string;
48
53
  loadingLabel: string;
49
54
  emptyLabel: string;
50
55
  invalidUrlLabel: string;
@@ -1,18 +1,28 @@
1
1
  declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
2
2
  enterLabel?: string;
3
3
  exitLabel?: string;
4
+ enterIcon?: string;
5
+ exitIcon?: string;
4
6
  }>, {
5
7
  enterLabel: string;
6
8
  exitLabel: string;
9
+ enterIcon: string;
10
+ exitIcon: string;
7
11
  }>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
8
12
  enterLabel?: string;
9
13
  exitLabel?: string;
14
+ enterIcon?: string;
15
+ exitIcon?: string;
10
16
  }>, {
11
17
  enterLabel: string;
12
18
  exitLabel: string;
19
+ enterIcon: string;
20
+ exitIcon: string;
13
21
  }>>> & Readonly<{}>, {
14
22
  enterLabel: string;
15
23
  exitLabel: string;
24
+ enterIcon: string;
25
+ exitIcon: string;
16
26
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
17
27
  export default _default;
18
28
  type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
@@ -13,10 +13,14 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
13
13
  label: string;
14
14
  }[];
15
15
  label?: string;
16
+ icon?: string;
17
+ classic?: boolean;
16
18
  emptyLabel?: string;
17
19
  markAllLabel?: string;
18
20
  }>, {
19
21
  label: string;
22
+ icon: string;
23
+ classic: boolean;
20
24
  emptyLabel: string;
21
25
  markAllLabel: string;
22
26
  }>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
@@ -29,10 +33,14 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
29
33
  label: string;
30
34
  }[];
31
35
  label?: string;
36
+ icon?: string;
37
+ classic?: boolean;
32
38
  emptyLabel?: string;
33
39
  markAllLabel?: string;
34
40
  }>, {
35
41
  label: string;
42
+ icon: string;
43
+ classic: boolean;
36
44
  emptyLabel: string;
37
45
  markAllLabel: string;
38
46
  }>>> & Readonly<{
@@ -40,7 +48,9 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
40
48
  onMarkAllRead?: (() => any) | undefined;
41
49
  }>, {
42
50
  label: string;
51
+ icon: string;
43
52
  emptyLabel: string;
53
+ classic: boolean;
44
54
  markAllLabel: string;
45
55
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
46
56
  export default _default;
@@ -6,6 +6,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
6
6
  key: string;
7
7
  label: string;
8
8
  icon?: string;
9
+ dividerBefore?: boolean;
9
10
  }[];
10
11
  }>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
11
12
  select: (key: string) => void;
@@ -17,6 +18,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
17
18
  key: string;
18
19
  label: string;
19
20
  icon?: string;
21
+ dividerBefore?: boolean;
20
22
  }[];
21
23
  }>>> & Readonly<{
22
24
  onSelect?: ((key: string) => any) | undefined;
@@ -2,8 +2,10 @@ import { AdminMenuItem } from '../menu/types';
2
2
 
3
3
  declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
4
4
  menuItems?: AdminMenuItem[];
5
+ classic?: boolean;
5
6
  }>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
6
7
  menuItems?: AdminMenuItem[];
8
+ classic?: boolean;
7
9
  }>>> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
8
10
  export default _default;
9
11
  type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
package/dist/index.d.ts CHANGED
@@ -6,6 +6,7 @@ export { createAdminMenuPlugin, useAdminMenuPort, adminMenuKey } from './menu/ru
6
6
  export { getAllParentPath } from './menu/paths';
7
7
  export type { AdminMenuItem, AdminMenuRoute, AdminMenuSettings, AdminMenuPort } from './menu/types';
8
8
  export { default as BasicMenu } from './menu/BasicMenu.vue';
9
+ export { default as ClassicMenu } from './menu/ClassicMenu.vue';
9
10
  export { default as SimpleMenu } from './menu/SimpleMenu.vue';
10
11
  export { default as SimpleMenuTag } from './menu/SimpleMenuTag.vue';
11
12
  export { default as AppLogo } from './application/AppLogo.vue';