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

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
@@ -21,6 +21,27 @@ branding, actions, and application content. Menu clicks use the host navigation
21
21
  port and emit `menuClick`; collapsed state is controlled through
22
22
  `v-model:collapsed`.
23
23
 
24
+ `ClassicAdminLayout` composes the Kerthus classic header, dark sidebar, 40px
25
+ tabs, settings drawer, and content frame. Its defaults follow the old Kerthus
26
+ project settings: 48px white header, mixed split navigation, 240px `#212121`
27
+ sidebar, and `#f4f7f9` content background. The host can choose `sidebar`,
28
+ `top-menu`, `mix`, or `mix-sidebar`; a persisted setting can override the
29
+ defaults. Pass the host's `CachePort` as `settingsCache` and a per-user/tenant
30
+ `settingsKey` if preferences must survive sign-in or tenant changes.
31
+ Load `ant-design-vue/dist/antd.css` before
32
+ `@choubo/kerthus-web-admin-shell/style.css` in the host entry.
33
+
34
+ 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
+ `tabRefresh`, `tabCloseAction`, and `tabReorder` to update the host's tab store;
39
+ `menuClick` reports navigation, and `settingsChange` reports the complete
40
+ settings value. The runtime navigation port performs menu and tab navigation.
41
+ The shell does not fetch applications or notifications or mutate user accounts.
42
+ See the [integration checklist](https://github.com/alexQi/kerthus-web/blob/main/docs/architecture/classic-admin-layout.md)
43
+ and run `yarn demo:classic` from the repository for a local visual reference.
44
+
24
45
  `AdminTabs` displays host supplied tabs with refresh and close actions.
25
46
  `closeTabs` preserves affixed tabs for close current, left, right, others, and
26
47
  all operations. The host owns tab persistence and refresh behavior.
@@ -1,2 +1,17 @@
1
- declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
1
+ import { AdminMenuItem } from '../menu/types';
2
+
3
+ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
4
+ menuItems?: AdminMenuItem[];
5
+ }>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
6
+ menuItems?: AdminMenuItem[];
7
+ }>>> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
2
8
  export default _default;
9
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
10
+ type __VLS_TypePropsToRuntimeProps<T> = {
11
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
12
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
13
+ } : {
14
+ type: import('vue').PropType<T[K]>;
15
+ required: true;
16
+ };
17
+ };
package/dist/index.d.ts CHANGED
@@ -20,6 +20,11 @@ export { default as AdminUserMenu } from './application/AdminUserMenu.vue';
20
20
  export { default as AdminNotificationCenter } from './application/AdminNotificationCenter.vue';
21
21
  export type { AdminNotification } from './application/AdminNotificationCenter.vue';
22
22
  export { default as AdminLayout } from './layout/AdminLayout.vue';
23
+ export { default as ClassicAdminLayout } from './layout/ClassicAdminLayout.vue';
24
+ export type { ClassicHeaderPorts } from './layout/ClassicAdminLayout.vue';
25
+ export { classicLayoutDefaults, normalizeClassicLayoutSettings, createClassicLayoutSettingsController } from './layout/classic-settings';
26
+ export type { ClassicMenuType, ClassicLayoutSettings, ClassicLayoutPatch, ClassicLayoutSettingsController } from './layout/classic-settings';
27
+ export { firstClassicPage, resolveClassicNavigation } from './layout/classic-navigation';
23
28
  export { default as AdminBreadcrumb } from './pages/AdminBreadcrumb.vue';
24
29
  export { default as AdminIframeView } from './pages/AdminIframeView.vue';
25
30
  export { default as AdminLoginView } from './pages/AdminLoginView.vue';