@pactor-app/ui 0.1.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/LICENSE +21 -0
- package/README.md +113 -0
- package/dist/chunk-57NRUZ5G.js +95 -0
- package/dist/chunk-DMK6RSTK.js +746 -0
- package/dist/chunk-OH3U6PCM.js +536 -0
- package/dist/chunk-OUTSIJMO.js +442 -0
- package/dist/chunk-QDTVOJ5P.js +147 -0
- package/dist/chunk-QWZ23QLS.js +68 -0
- package/dist/chunk-RQHJBTEU.js +10 -0
- package/dist/chunk-SNFDI77B.js +136 -0
- package/dist/chunk-XGOTHOI6.js +619 -0
- package/dist/components/index.cjs +1111 -0
- package/dist/components/index.d.cts +307 -0
- package/dist/components/index.d.ts +307 -0
- package/dist/components/index.js +40 -0
- package/dist/index.cjs +2626 -0
- package/dist/index.d.cts +41 -0
- package/dist/index.d.ts +41 -0
- package/dist/index.js +87 -0
- package/dist/interaction/index.cjs +752 -0
- package/dist/interaction/index.d.cts +178 -0
- package/dist/interaction/index.d.ts +178 -0
- package/dist/interaction/index.js +19 -0
- package/dist/layout/index.cjs +938 -0
- package/dist/layout/index.d.cts +158 -0
- package/dist/layout/index.d.ts +158 -0
- package/dist/layout/index.js +25 -0
- package/dist/ui/index.cjs +1076 -0
- package/dist/ui/index.d.cts +166 -0
- package/dist/ui/index.d.ts +166 -0
- package/dist/ui/index.js +233 -0
- package/package.json +127 -0
- package/styles.css +1672 -0
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
import { PermissionChecker } from '@pactor-app/permission';
|
|
2
|
+
import { MenuRegistry, NavigationBridge, RouteContext, MenuItem } from '@pactor-app/router';
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { ReactNode, ComponentType } from 'react';
|
|
5
|
+
import { Registry } from '@pactor-app/core';
|
|
6
|
+
|
|
7
|
+
/** 结构模式(管理后台外壳布局形态) */
|
|
8
|
+
type AdminLayoutMode =
|
|
9
|
+
/** 顶部 header + 下方 sidebar/content(缺省) */
|
|
10
|
+
'top-side'
|
|
11
|
+
/** 上-中-下:header + content + footer,无 sidebar */
|
|
12
|
+
| 'top-bottom'
|
|
13
|
+
/** 通栏侧边:sidebar 全高居左(含品牌区),header+content 居右 */
|
|
14
|
+
| 'side-full'
|
|
15
|
+
/** 侧边两列:一级菜单窄列 + 当前一级菜单的子菜单列 */
|
|
16
|
+
| 'two-column';
|
|
17
|
+
/** 响应式断点(视口小于断点时 sidebar 自动收起) */
|
|
18
|
+
type AdminLayoutBreakpoint = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl';
|
|
19
|
+
/** 布局配置(bootstrap.layout 透传;缺省:header/sidebar 开,tabs/breadcrumb/footer 关,mode top-side) */
|
|
20
|
+
interface AdminLayoutConfig {
|
|
21
|
+
header?: boolean;
|
|
22
|
+
sidebar?: boolean;
|
|
23
|
+
tabs?: boolean;
|
|
24
|
+
breadcrumb?: boolean;
|
|
25
|
+
footer?: boolean;
|
|
26
|
+
/** 结构模式,缺省 'top-side' */
|
|
27
|
+
mode?: AdminLayoutMode;
|
|
28
|
+
/** 固定顶部(内容区独立滚动),缺省 true;显式 false 关闭 */
|
|
29
|
+
fixedHeader?: boolean;
|
|
30
|
+
/** 固定侧边栏(sidebar 自身滚动,不随内容区),缺省 true;显式 false 关闭 */
|
|
31
|
+
fixedSider?: boolean;
|
|
32
|
+
/** sidebar 收起/展开 trigger */
|
|
33
|
+
collapsible?: boolean;
|
|
34
|
+
/** 初始收起(仅 collapsible 时有意义) */
|
|
35
|
+
collapsed?: boolean;
|
|
36
|
+
/** 视口小于断点时 sidebar 自动收起 */
|
|
37
|
+
breakpoint?: AdminLayoutBreakpoint;
|
|
38
|
+
}
|
|
39
|
+
/** 品牌区 */
|
|
40
|
+
interface AdminBrand {
|
|
41
|
+
title: string;
|
|
42
|
+
logo?: ReactNode;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* AdminLayout props(设计决策 D1)。
|
|
46
|
+
*
|
|
47
|
+
* `route` 优先用于选中态(测试友好);未传时内部订阅 bridge
|
|
48
|
+
* 自行 resolveRoute(生产用法)。
|
|
49
|
+
*/
|
|
50
|
+
interface AdminLayoutProps {
|
|
51
|
+
config?: AdminLayoutConfig;
|
|
52
|
+
brand: AdminBrand;
|
|
53
|
+
registry: MenuRegistry;
|
|
54
|
+
bridge: NavigationBridge;
|
|
55
|
+
route?: RouteContext;
|
|
56
|
+
permissionChecker?: PermissionChecker;
|
|
57
|
+
headerExtra?: ReactNode;
|
|
58
|
+
children?: ReactNode;
|
|
59
|
+
}
|
|
60
|
+
interface BlankLayoutProps {
|
|
61
|
+
children?: ReactNode;
|
|
62
|
+
}
|
|
63
|
+
/** 登录页品牌区 */
|
|
64
|
+
interface LoginBrand {
|
|
65
|
+
title: string;
|
|
66
|
+
logo?: ReactNode;
|
|
67
|
+
description?: ReactNode;
|
|
68
|
+
}
|
|
69
|
+
interface LoginLayoutProps {
|
|
70
|
+
/** center:居中卡片;split:左品牌右表单(缺省 center) */
|
|
71
|
+
variant?: 'center' | 'split';
|
|
72
|
+
brand: LoginBrand;
|
|
73
|
+
children?: ReactNode;
|
|
74
|
+
}
|
|
75
|
+
interface LandingLayoutProps {
|
|
76
|
+
/** 顶部导航插槽 */
|
|
77
|
+
navbar?: ReactNode;
|
|
78
|
+
/** 底部插槽 */
|
|
79
|
+
footer?: ReactNode;
|
|
80
|
+
children?: ReactNode;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* 菜单链(设计决策 D2):沿可见树查找 menuId 的父链,
|
|
85
|
+
* 返回从顶层到目标项的 MenuItem 数组(含目标项自身),供 Breadcrumb 渲染。
|
|
86
|
+
* 未命中返回空数组。
|
|
87
|
+
*/
|
|
88
|
+
declare function findMenuChain(registry: MenuRegistry, menuId: string): MenuItem[];
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* 收集默认展开的 group id。
|
|
92
|
+
*
|
|
93
|
+
* 包含两类:
|
|
94
|
+
* - 声明了 `defaultOpen: true` 的 group;
|
|
95
|
+
* - 当前激活菜单(activeMenuId)父链上的 group——刷新 / 直达子页面时,
|
|
96
|
+
* 选中项所在分组必须展开,否则高亮项不可见(菜单"没有展开")。
|
|
97
|
+
*/
|
|
98
|
+
declare function collectDefaultOpenKeys(registry: MenuRegistry, activeMenuId?: string): string[];
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* ShadcnAdminLayout:与 pactor-layout 的 AdminLayout(antd 版)契约一致——
|
|
102
|
+
* 复用 `AdminLayoutProps`;Header(brand + headerExtra)/ Sidebar / 内容出口;
|
|
103
|
+
* config 开关(header/sidebar 缺省开,tabs/breadcrumb/footer 缺省关)一致;
|
|
104
|
+
* mode(top-side/top-bottom/side-full/two-column)、fixedHeader/fixedSider、
|
|
105
|
+
* collapsible/collapsed、breakpoint 响应式收起与 antd 版语义一致。
|
|
106
|
+
* 菜单由 MenuRegistry 可见树渲染(group 折叠经 vendored shadcn Accordion),
|
|
107
|
+
* permissionChecker 过滤、activeMenu 高亮、page → bridge.push、
|
|
108
|
+
* link/external → window.open;Breadcrumb 按菜单链;Tabs 访问页签
|
|
109
|
+
* (去重、点击导航、关闭当前回退最后一个)。route props 优先、
|
|
110
|
+
* bridge 订阅兜底的选中态来源与 antd 版一致。
|
|
111
|
+
*
|
|
112
|
+
* 样式:Tailwind 工具类读取 shadcn 语义令牌(bg-background / border-border /
|
|
113
|
+
* text-muted-foreground …),结构钩子用 data-slot 属性。
|
|
114
|
+
*/
|
|
115
|
+
declare function ShadcnAdminLayout({ config, brand, registry, bridge, route: routeProp, permissionChecker, headerExtra, children, }: AdminLayoutProps): React.JSX.Element;
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* ShadcnBlankLayout:与 pactor-layout 的 BlankLayout(antd 版)契约一致——
|
|
119
|
+
* 无壳布局,直接渲染 children(带最小页面容器样式)。
|
|
120
|
+
*/
|
|
121
|
+
declare function ShadcnBlankLayout({ children }: BlankLayoutProps): React.JSX.Element;
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* ShadcnLoginLayout:与 pactor-layout 的 LoginLayout(antd 版)契约一致——
|
|
125
|
+
* 登录页外壳,只负责品牌区与表单出口的布局,不含任何认证逻辑。
|
|
126
|
+
* variant center:居中卡片(vendored shadcn Card);split:左品牌右表单
|
|
127
|
+
* (缺省 center)。
|
|
128
|
+
*/
|
|
129
|
+
declare function ShadcnLoginLayout({ variant, brand, children, }: LoginLayoutProps): React.JSX.Element;
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* ShadcnLandingLayout:与 pactor-layout 的 LandingLayout(antd 版)契约一致——
|
|
133
|
+
* 落地页外壳,可选 navbar / footer 插槽,children 为主内容区。
|
|
134
|
+
*/
|
|
135
|
+
declare function ShadcnLandingLayout({ navbar, footer, children, }: LandingLayoutProps): React.JSX.Element;
|
|
136
|
+
|
|
137
|
+
/** 布局组件类型(各布局 props 不同,注册表按通用组件存储) */
|
|
138
|
+
type LayoutComponent = ComponentType<any>;
|
|
139
|
+
/** LayoutRegistry:布局类型名 → 布局组件(复用 core Registry) */
|
|
140
|
+
type LayoutRegistry = Registry<LayoutComponent>;
|
|
141
|
+
/**
|
|
142
|
+
* registerShadcnLayouts:向 LayoutRegistry 注册 shadcn 实现的四种布局
|
|
143
|
+
* (类型名:admin / blank / login / landing)。
|
|
144
|
+
*/
|
|
145
|
+
declare function registerShadcnLayouts(registry: LayoutRegistry): void;
|
|
146
|
+
/**
|
|
147
|
+
* createShadcnLayoutRegistry(设计决策 D5):预注册 shadcn 版
|
|
148
|
+
* admin / blank / login / landing 四种布局组件。
|
|
149
|
+
* 业务可继续 register 自定义布局类型。
|
|
150
|
+
*/
|
|
151
|
+
declare function createShadcnLayoutRegistry(): LayoutRegistry;
|
|
152
|
+
/**
|
|
153
|
+
* resolveLayout(设计决策 D5):按类型名解析布局组件;
|
|
154
|
+
* 未命中返回 ShadcnBlankLayout 并 console.warn(不抛错,不崩页面)。
|
|
155
|
+
*/
|
|
156
|
+
declare function resolveLayout(registry: LayoutRegistry, type: string): LayoutComponent;
|
|
157
|
+
|
|
158
|
+
export { type AdminBrand, type AdminLayoutBreakpoint, type AdminLayoutConfig, type AdminLayoutMode, type AdminLayoutProps, type BlankLayoutProps, type LandingLayoutProps, type LayoutComponent, type LayoutRegistry, type LoginBrand, type LoginLayoutProps, ShadcnAdminLayout, ShadcnBlankLayout, ShadcnLandingLayout, ShadcnLoginLayout, collectDefaultOpenKeys, createShadcnLayoutRegistry, findMenuChain, registerShadcnLayouts, resolveLayout };
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
import { PermissionChecker } from '@pactor-app/permission';
|
|
2
|
+
import { MenuRegistry, NavigationBridge, RouteContext, MenuItem } from '@pactor-app/router';
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { ReactNode, ComponentType } from 'react';
|
|
5
|
+
import { Registry } from '@pactor-app/core';
|
|
6
|
+
|
|
7
|
+
/** 结构模式(管理后台外壳布局形态) */
|
|
8
|
+
type AdminLayoutMode =
|
|
9
|
+
/** 顶部 header + 下方 sidebar/content(缺省) */
|
|
10
|
+
'top-side'
|
|
11
|
+
/** 上-中-下:header + content + footer,无 sidebar */
|
|
12
|
+
| 'top-bottom'
|
|
13
|
+
/** 通栏侧边:sidebar 全高居左(含品牌区),header+content 居右 */
|
|
14
|
+
| 'side-full'
|
|
15
|
+
/** 侧边两列:一级菜单窄列 + 当前一级菜单的子菜单列 */
|
|
16
|
+
| 'two-column';
|
|
17
|
+
/** 响应式断点(视口小于断点时 sidebar 自动收起) */
|
|
18
|
+
type AdminLayoutBreakpoint = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl';
|
|
19
|
+
/** 布局配置(bootstrap.layout 透传;缺省:header/sidebar 开,tabs/breadcrumb/footer 关,mode top-side) */
|
|
20
|
+
interface AdminLayoutConfig {
|
|
21
|
+
header?: boolean;
|
|
22
|
+
sidebar?: boolean;
|
|
23
|
+
tabs?: boolean;
|
|
24
|
+
breadcrumb?: boolean;
|
|
25
|
+
footer?: boolean;
|
|
26
|
+
/** 结构模式,缺省 'top-side' */
|
|
27
|
+
mode?: AdminLayoutMode;
|
|
28
|
+
/** 固定顶部(内容区独立滚动),缺省 true;显式 false 关闭 */
|
|
29
|
+
fixedHeader?: boolean;
|
|
30
|
+
/** 固定侧边栏(sidebar 自身滚动,不随内容区),缺省 true;显式 false 关闭 */
|
|
31
|
+
fixedSider?: boolean;
|
|
32
|
+
/** sidebar 收起/展开 trigger */
|
|
33
|
+
collapsible?: boolean;
|
|
34
|
+
/** 初始收起(仅 collapsible 时有意义) */
|
|
35
|
+
collapsed?: boolean;
|
|
36
|
+
/** 视口小于断点时 sidebar 自动收起 */
|
|
37
|
+
breakpoint?: AdminLayoutBreakpoint;
|
|
38
|
+
}
|
|
39
|
+
/** 品牌区 */
|
|
40
|
+
interface AdminBrand {
|
|
41
|
+
title: string;
|
|
42
|
+
logo?: ReactNode;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* AdminLayout props(设计决策 D1)。
|
|
46
|
+
*
|
|
47
|
+
* `route` 优先用于选中态(测试友好);未传时内部订阅 bridge
|
|
48
|
+
* 自行 resolveRoute(生产用法)。
|
|
49
|
+
*/
|
|
50
|
+
interface AdminLayoutProps {
|
|
51
|
+
config?: AdminLayoutConfig;
|
|
52
|
+
brand: AdminBrand;
|
|
53
|
+
registry: MenuRegistry;
|
|
54
|
+
bridge: NavigationBridge;
|
|
55
|
+
route?: RouteContext;
|
|
56
|
+
permissionChecker?: PermissionChecker;
|
|
57
|
+
headerExtra?: ReactNode;
|
|
58
|
+
children?: ReactNode;
|
|
59
|
+
}
|
|
60
|
+
interface BlankLayoutProps {
|
|
61
|
+
children?: ReactNode;
|
|
62
|
+
}
|
|
63
|
+
/** 登录页品牌区 */
|
|
64
|
+
interface LoginBrand {
|
|
65
|
+
title: string;
|
|
66
|
+
logo?: ReactNode;
|
|
67
|
+
description?: ReactNode;
|
|
68
|
+
}
|
|
69
|
+
interface LoginLayoutProps {
|
|
70
|
+
/** center:居中卡片;split:左品牌右表单(缺省 center) */
|
|
71
|
+
variant?: 'center' | 'split';
|
|
72
|
+
brand: LoginBrand;
|
|
73
|
+
children?: ReactNode;
|
|
74
|
+
}
|
|
75
|
+
interface LandingLayoutProps {
|
|
76
|
+
/** 顶部导航插槽 */
|
|
77
|
+
navbar?: ReactNode;
|
|
78
|
+
/** 底部插槽 */
|
|
79
|
+
footer?: ReactNode;
|
|
80
|
+
children?: ReactNode;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* 菜单链(设计决策 D2):沿可见树查找 menuId 的父链,
|
|
85
|
+
* 返回从顶层到目标项的 MenuItem 数组(含目标项自身),供 Breadcrumb 渲染。
|
|
86
|
+
* 未命中返回空数组。
|
|
87
|
+
*/
|
|
88
|
+
declare function findMenuChain(registry: MenuRegistry, menuId: string): MenuItem[];
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* 收集默认展开的 group id。
|
|
92
|
+
*
|
|
93
|
+
* 包含两类:
|
|
94
|
+
* - 声明了 `defaultOpen: true` 的 group;
|
|
95
|
+
* - 当前激活菜单(activeMenuId)父链上的 group——刷新 / 直达子页面时,
|
|
96
|
+
* 选中项所在分组必须展开,否则高亮项不可见(菜单"没有展开")。
|
|
97
|
+
*/
|
|
98
|
+
declare function collectDefaultOpenKeys(registry: MenuRegistry, activeMenuId?: string): string[];
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* ShadcnAdminLayout:与 pactor-layout 的 AdminLayout(antd 版)契约一致——
|
|
102
|
+
* 复用 `AdminLayoutProps`;Header(brand + headerExtra)/ Sidebar / 内容出口;
|
|
103
|
+
* config 开关(header/sidebar 缺省开,tabs/breadcrumb/footer 缺省关)一致;
|
|
104
|
+
* mode(top-side/top-bottom/side-full/two-column)、fixedHeader/fixedSider、
|
|
105
|
+
* collapsible/collapsed、breakpoint 响应式收起与 antd 版语义一致。
|
|
106
|
+
* 菜单由 MenuRegistry 可见树渲染(group 折叠经 vendored shadcn Accordion),
|
|
107
|
+
* permissionChecker 过滤、activeMenu 高亮、page → bridge.push、
|
|
108
|
+
* link/external → window.open;Breadcrumb 按菜单链;Tabs 访问页签
|
|
109
|
+
* (去重、点击导航、关闭当前回退最后一个)。route props 优先、
|
|
110
|
+
* bridge 订阅兜底的选中态来源与 antd 版一致。
|
|
111
|
+
*
|
|
112
|
+
* 样式:Tailwind 工具类读取 shadcn 语义令牌(bg-background / border-border /
|
|
113
|
+
* text-muted-foreground …),结构钩子用 data-slot 属性。
|
|
114
|
+
*/
|
|
115
|
+
declare function ShadcnAdminLayout({ config, brand, registry, bridge, route: routeProp, permissionChecker, headerExtra, children, }: AdminLayoutProps): React.JSX.Element;
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* ShadcnBlankLayout:与 pactor-layout 的 BlankLayout(antd 版)契约一致——
|
|
119
|
+
* 无壳布局,直接渲染 children(带最小页面容器样式)。
|
|
120
|
+
*/
|
|
121
|
+
declare function ShadcnBlankLayout({ children }: BlankLayoutProps): React.JSX.Element;
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* ShadcnLoginLayout:与 pactor-layout 的 LoginLayout(antd 版)契约一致——
|
|
125
|
+
* 登录页外壳,只负责品牌区与表单出口的布局,不含任何认证逻辑。
|
|
126
|
+
* variant center:居中卡片(vendored shadcn Card);split:左品牌右表单
|
|
127
|
+
* (缺省 center)。
|
|
128
|
+
*/
|
|
129
|
+
declare function ShadcnLoginLayout({ variant, brand, children, }: LoginLayoutProps): React.JSX.Element;
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* ShadcnLandingLayout:与 pactor-layout 的 LandingLayout(antd 版)契约一致——
|
|
133
|
+
* 落地页外壳,可选 navbar / footer 插槽,children 为主内容区。
|
|
134
|
+
*/
|
|
135
|
+
declare function ShadcnLandingLayout({ navbar, footer, children, }: LandingLayoutProps): React.JSX.Element;
|
|
136
|
+
|
|
137
|
+
/** 布局组件类型(各布局 props 不同,注册表按通用组件存储) */
|
|
138
|
+
type LayoutComponent = ComponentType<any>;
|
|
139
|
+
/** LayoutRegistry:布局类型名 → 布局组件(复用 core Registry) */
|
|
140
|
+
type LayoutRegistry = Registry<LayoutComponent>;
|
|
141
|
+
/**
|
|
142
|
+
* registerShadcnLayouts:向 LayoutRegistry 注册 shadcn 实现的四种布局
|
|
143
|
+
* (类型名:admin / blank / login / landing)。
|
|
144
|
+
*/
|
|
145
|
+
declare function registerShadcnLayouts(registry: LayoutRegistry): void;
|
|
146
|
+
/**
|
|
147
|
+
* createShadcnLayoutRegistry(设计决策 D5):预注册 shadcn 版
|
|
148
|
+
* admin / blank / login / landing 四种布局组件。
|
|
149
|
+
* 业务可继续 register 自定义布局类型。
|
|
150
|
+
*/
|
|
151
|
+
declare function createShadcnLayoutRegistry(): LayoutRegistry;
|
|
152
|
+
/**
|
|
153
|
+
* resolveLayout(设计决策 D5):按类型名解析布局组件;
|
|
154
|
+
* 未命中返回 ShadcnBlankLayout 并 console.warn(不抛错,不崩页面)。
|
|
155
|
+
*/
|
|
156
|
+
declare function resolveLayout(registry: LayoutRegistry, type: string): LayoutComponent;
|
|
157
|
+
|
|
158
|
+
export { type AdminBrand, type AdminLayoutBreakpoint, type AdminLayoutConfig, type AdminLayoutMode, type AdminLayoutProps, type BlankLayoutProps, type LandingLayoutProps, type LayoutComponent, type LayoutRegistry, type LoginBrand, type LoginLayoutProps, ShadcnAdminLayout, ShadcnBlankLayout, ShadcnLandingLayout, ShadcnLoginLayout, collectDefaultOpenKeys, createShadcnLayoutRegistry, findMenuChain, registerShadcnLayouts, resolveLayout };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ShadcnAdminLayout,
|
|
3
|
+
ShadcnBlankLayout,
|
|
4
|
+
ShadcnLandingLayout,
|
|
5
|
+
ShadcnLoginLayout,
|
|
6
|
+
collectDefaultOpenKeys,
|
|
7
|
+
createShadcnLayoutRegistry,
|
|
8
|
+
findMenuChain,
|
|
9
|
+
registerShadcnLayouts,
|
|
10
|
+
resolveLayout
|
|
11
|
+
} from "../chunk-DMK6RSTK.js";
|
|
12
|
+
import "../chunk-SNFDI77B.js";
|
|
13
|
+
import "../chunk-57NRUZ5G.js";
|
|
14
|
+
import "../chunk-RQHJBTEU.js";
|
|
15
|
+
export {
|
|
16
|
+
ShadcnAdminLayout,
|
|
17
|
+
ShadcnBlankLayout,
|
|
18
|
+
ShadcnLandingLayout,
|
|
19
|
+
ShadcnLoginLayout,
|
|
20
|
+
collectDefaultOpenKeys,
|
|
21
|
+
createShadcnLayoutRegistry,
|
|
22
|
+
findMenuChain,
|
|
23
|
+
registerShadcnLayouts,
|
|
24
|
+
resolveLayout
|
|
25
|
+
};
|