@robot-admin/layout 2.3.1 → 2.3.2
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 +37 -3
- package/dist/index.cjs +3 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +1 -1
- package/dist/index.d.ts +15 -6
- package/dist/index.js +519 -349
- package/dist/index.js.map +1 -1
- package/package.json +4 -3
- package/src/styles/settings.scss +6 -0
package/README.md
CHANGED
|
@@ -2,6 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
> 布局和设置管理系统 - 为 Robot Admin 提供完整的布局配置管理能力(含 UI 组件)
|
|
4
4
|
|
|
5
|
+
[](https://www.npmjs.com/package/@robot-admin/layout)
|
|
6
|
+
[](https://github.com/ChenyCHENYU/robot-admin-packages/blob/main/LICENSE)
|
|
7
|
+
|
|
8
|
+
当前版本:`2.3.2`。
|
|
9
|
+
|
|
5
10
|
---
|
|
6
11
|
|
|
7
12
|
## ✨ 特性
|
|
@@ -13,6 +18,8 @@
|
|
|
13
18
|
- 🧭 **菜单展开方式** - 内置传统展开 / 右侧面板两种菜单展开模式配置
|
|
14
19
|
- 🔌 **插槽系统** - 灵活的 slot 机制,主项目仅关注业务组件
|
|
15
20
|
- 🎨 **CSS 变量同步** - 配置变更自动同步到 CSS 变量,样式实时响应
|
|
21
|
+
- ♿ **键盘与焦点可访问性** - 抽屉/菜单支持 Escape、方向键、焦点恢复与语义属性
|
|
22
|
+
- 🛡️ **安全设置导入** - 对枚举、布尔值、数值范围与主题色进行运行时校验
|
|
16
23
|
- 🚀 **TypeScript** - 完整类型支持
|
|
17
24
|
|
|
18
25
|
---
|
|
@@ -106,7 +113,7 @@ src/
|
|
|
106
113
|
bun add @robot-admin/layout @robot-admin/theme naive-ui
|
|
107
114
|
```
|
|
108
115
|
|
|
109
|
-
**Peer Dependencies**: `vue ^3.4` · `vue-router ^4.0` · `pinia ^2.0 || ^3.0` · `naive-ui ^2.38` · `@robot-admin/theme ^0.
|
|
116
|
+
**Peer Dependencies**: `vue ^3.4` · `vue-router ^4.0` · `pinia ^2.0 || ^3.0` · `naive-ui ^2.38` · `@robot-admin/theme ^0.3 || ^0.4`
|
|
110
117
|
|
|
111
118
|
---
|
|
112
119
|
|
|
@@ -216,7 +223,7 @@ const settings = useSettingsStore();
|
|
|
216
223
|
settings.layoutMode; // 'side' | 'top' | 'mix' | ...
|
|
217
224
|
settings.menuExpandMode; // 'inline' | 'panel'
|
|
218
225
|
settings.primaryColor; // '#409eff'
|
|
219
|
-
settings.themeMode; // 'light' | 'dark' | '
|
|
226
|
+
settings.themeMode; // 'light' | 'dark' | 'system'
|
|
220
227
|
|
|
221
228
|
// 修改
|
|
222
229
|
settings.layoutMode = "mix";
|
|
@@ -286,10 +293,11 @@ type MenuExpandMode = "inline" | "panel";
|
|
|
286
293
|
type TransitionType = "fade" | "slide" | "zoom" | "none";
|
|
287
294
|
type BorderRadiusSize = "small" | "medium" | "large";
|
|
288
295
|
type TagsViewStyle = "default" | "card" | "smart";
|
|
289
|
-
type ThemeMode = "light" | "dark" | "
|
|
296
|
+
type ThemeMode = "light" | "dark" | "system";
|
|
290
297
|
|
|
291
298
|
interface ThemePreset { name: string; icon: string; primaryColor: string; }
|
|
292
299
|
interface SettingsStoreOptions {
|
|
300
|
+
id?: string;
|
|
293
301
|
defaults?: Partial<SettingsState>;
|
|
294
302
|
onThemeModeChange?: (mode: ThemeMode) => void | Promise<void>;
|
|
295
303
|
}
|
|
@@ -305,6 +313,8 @@ interface SettingsStoreOptions {
|
|
|
305
313
|
import { createSettingsStore } from "@robot-admin/layout";
|
|
306
314
|
|
|
307
315
|
export const useSettingsStore = createSettingsStore({
|
|
316
|
+
// 多实例或微前端中必须保证唯一;单实例可省略
|
|
317
|
+
id: "workspace-settings",
|
|
308
318
|
defaults: { layoutMode: "mix", primaryColor: "#722ed1" },
|
|
309
319
|
onThemeModeChange: async (mode) => {
|
|
310
320
|
const themeStore = useThemeStore();
|
|
@@ -313,6 +323,30 @@ export const useSettingsStore = createSettingsStore({
|
|
|
313
323
|
});
|
|
314
324
|
```
|
|
315
325
|
|
|
326
|
+
### 校验外部设置
|
|
327
|
+
|
|
328
|
+
从文件、URL 或远端接口加载的设置属于不可信输入,写入 Store 前应先校验:
|
|
329
|
+
|
|
330
|
+
```typescript
|
|
331
|
+
import { sanitizeSettingsPatch, useSettingsStore } from "@robot-admin/layout";
|
|
332
|
+
|
|
333
|
+
const imported = JSON.parse(await file.text());
|
|
334
|
+
const safePatch = sanitizeSettingsPatch(imported.settings);
|
|
335
|
+
const settings = useSettingsStore();
|
|
336
|
+
|
|
337
|
+
if (safePatch.themeMode !== undefined) {
|
|
338
|
+
await settings.updateThemeMode(safePatch.themeMode);
|
|
339
|
+
delete safePatch.themeMode;
|
|
340
|
+
}
|
|
341
|
+
settings.$patch(safePatch);
|
|
342
|
+
```
|
|
343
|
+
|
|
344
|
+
未知字段会被忽略以便向前兼容;已知字段类型错误、越界值、非法主题色或旧的
|
|
345
|
+
`themeMode: "auto"` 会抛出明确错误。设置抽屉内置的导入功能已执行同一校验。
|
|
346
|
+
|
|
347
|
+
`useLayoutCache()` 默认不会输出开发日志,也不会向 `window` 暴露调试函数;仅在
|
|
348
|
+
受控的本地开发场景显式设置 `enableDevLog` / `exposeToWindow`。
|
|
349
|
+
|
|
316
350
|
### 单独使用布局骨架
|
|
317
351
|
|
|
318
352
|
```typescript
|
package/dist/index.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require(`vue`),t=require(`pinia`),n=require(`naive-ui`),r=require(`vue-router`);var i=[{name:`拂晓蓝`,value:`#409eff`},{name:`薄暮红`,value:`#f5222d`},{name:`火山橙`,value:`#fa541c`},{name:`日暮黄`,value:`#faad14`},{name:`极光绿`,value:`#52c41a`},{name:`明青`,value:`#13c2c2`},{name:`极客蓝`,value:`#2f54eb`},{name:`酱紫`,value:`#722ed1`}],a=[{name:`科技蓝`,icon:`💙`,primaryColor:`#409eff`},{name:`清新绿`,icon:`💚`,primaryColor:`#52c41a`},{name:`商务灰`,icon:`🖤`,primaryColor:`#595959`},{name:`活力橙`,icon:`🧡`,primaryColor:`#fa8c16`},{name:`优雅紫`,icon:`💜`,primaryColor:`#722ed1`},{name:`经典红`,icon:`❤️`,primaryColor:`#f5222d`}],o=[{mode:`side`,label:`左侧菜单`,description:`经典的左侧导航布局`,icon:`i-mdi:page-layout-sidebar-left`},{mode:`top`,label:`顶部菜单`,description:`顶部水平导航布局`,icon:`i-mdi:page-layout-header`},{mode:`mix`,label:`混合菜单`,description:`顶部 + 侧边混合布局`,icon:`i-mdi:view-dashboard-outline`},{mode:`mix-top`,label:`顶部混合`,description:`侧边优先的混合布局`,icon:`i-mdi:view-dashboard-variant-outline`},{mode:`reverse-horizontal-mix`,label:`反转混合`,description:`反转的水平混合布局`,icon:`i-mdi:page-layout-header-footer`},{mode:`card-layout`,label:`卡片布局`,description:`卡片式布局风格`,icon:`i-mdi:card-outline`}],s={small:`4px`,medium:`6px`,large:`8px`},c={fade:`fade-transform`,slide:`fade-slide`,zoom:`fade-zoom`,none:``},l={themeMode:`light`,primaryColor:`#409eff`,borderRadius:`medium`,transitionType:`slide`,enableTransition:!0,layoutMode:`side`,menuExpandMode:`inline`,collapsed:!1,fixedHeader:!0,showBreadcrumb:!0,showBreadcrumbIcon:!0,showTagsView:!0,tagsViewHeight:44,tagsViewStyle:`default`,showFooter:!0,sidebarWidth:220,sidebarCollapsedWidth:64,headerHeight:56,enableHotkeys:!0,version:`2.0.2`},u=i.map(e=>e.value);function d(e,t){let n=parseInt(e.replace(`#`,``),16),r=Math.min(255,Math.max(0,(n>>16)+t)),i=Math.min(255,Math.max(0,(n>>8&255)+t)),a=Math.min(255,Math.max(0,(n&255)+t));return`#${(r<<16|i<<8|a).toString(16).padStart(6,`0`)}`}function f(n={}){let{defaults:r={},onThemeModeChange:i}=n,a={...l,...r};return(0,t.defineStore)(`settings`,()=>{let t=(0,e.ref)(a.themeMode),n=(0,e.ref)(a.primaryColor),r=(0,e.ref)(a.borderRadius),o=(0,e.ref)(a.transitionType),l=(0,e.ref)(a.enableTransition),u=(0,e.ref)(a.layoutMode),f=(0,e.ref)(a.menuExpandMode),p=(0,e.ref)(a.collapsed),m=(0,e.ref)(a.fixedHeader),h=(0,e.ref)(a.showBreadcrumb),g=(0,e.ref)(a.showBreadcrumbIcon),_=(0,e.ref)(a.showTagsView),v=(0,e.ref)(a.tagsViewHeight),y=(0,e.ref)(a.tagsViewStyle),b=(0,e.ref)(a.showFooter),x=(0,e.ref)(a.sidebarWidth),S=(0,e.ref)(a.sidebarCollapsedWidth),C=(0,e.ref)(a.headerHeight),w=(0,e.ref)(a.enableHotkeys),T=(0,e.ref)(a.version),E=(0,e.computed)(()=>s[r.value]),D=(0,e.computed)(()=>c[o.value]),O=(0,e.computed)(()=>l.value&&o.value!==`none`),k=(0,e.computed)(()=>({themeMode:t.value,primaryColor:n.value,borderRadius:r.value,transitionType:o.value,enableTransition:l.value,layoutMode:u.value,menuExpandMode:f.value,collapsed:p.value,fixedHeader:m.value,showBreadcrumb:h.value,showBreadcrumbIcon:g.value,showTagsView:_.value,tagsViewHeight:v.value,tagsViewStyle:y.value,showFooter:b.value,sidebarWidth:x.value,sidebarCollapsedWidth:S.value,headerHeight:C.value,enableHotkeys:w.value,version:T.value})),A=()=>{if(typeof document>`u`)return;let e=document.documentElement;e.style.setProperty(`--primary-color`,n.value),e.style.setProperty(`--primary-color-hover`,d(n.value,10)),e.style.setProperty(`--primary-color-pressed`,d(n.value,-10)),e.style.setProperty(`--border-radius`,E.value),e.style.setProperty(`--sidebar-width`,`${x.value}px`),e.style.setProperty(`--sidebar-collapsed-width`,`${S.value}px`),e.style.setProperty(`--header-height`,`${C.value}px`),e.style.setProperty(`--tags-view-height`,`${v.value}px`)};return(0,e.watch)([n,E,x,S,C,v],()=>{A()},{immediate:!0}),{themeMode:t,primaryColor:n,borderRadius:r,transitionType:o,enableTransition:l,layoutMode:u,menuExpandMode:f,collapsed:p,fixedHeader:m,showBreadcrumb:h,showBreadcrumbIcon:g,showTagsView:_,tagsViewHeight:v,tagsViewStyle:y,showFooter:b,sidebarWidth:x,sidebarCollapsedWidth:S,headerHeight:C,enableHotkeys:w,version:T,borderRadiusValue:E,transitionName:D,shouldEnableTransition:O,settingsState:k,syncCSSVariables:A,applyPreset:async e=>{n.value=e.primaryColor,e.settings&&(e.settings.borderRadius&&(r.value=e.settings.borderRadius),e.settings.transitionType&&(o.value=e.settings.transitionType),e.settings.showBreadcrumb!==void 0&&(h.value=e.settings.showBreadcrumb),e.settings.showTagsView!==void 0&&(_.value=e.settings.showTagsView),e.settings.tagsViewStyle&&(y.value=e.settings.tagsViewStyle))},resetSettings:()=>{t.value=a.themeMode,n.value=a.primaryColor,r.value=a.borderRadius,o.value=a.transitionType,l.value=a.enableTransition,u.value=a.layoutMode,f.value=a.menuExpandMode,p.value=a.collapsed,m.value=a.fixedHeader,h.value=a.showBreadcrumb,g.value=a.showBreadcrumbIcon,_.value=a.showTagsView,v.value=a.tagsViewHeight,y.value=a.tagsViewStyle,b.value=a.showFooter,x.value=a.sidebarWidth,S.value=a.sidebarCollapsedWidth,C.value=a.headerHeight,w.value=a.enableHotkeys},updateThemeMode:async e=>{t.value=e,i&&await i(e)},toggleCollapse:()=>{p.value=!p.value}}})}var p=f(),m=Symbol(`layout-context`),h=Symbol(`drawer-handlers`);function g(){let t=(0,e.inject)(m);if(!t)throw Error(`[Layout] LayoutContext not provided. 请在上层组件中使用 provide(LAYOUT_CONTEXT_KEY, ...) 注入布局数据。`);return t}var _={name:`Admin`,subtitle:``,logoSrc:``,logoType:`image`,logoSize:36,homePath:`/home`,copyright:``};function v(t={}){let{maxCacheCount:n=20,enableDevLog:i=!0,exposeToWindow:a=!0}=t,o=(0,r.useRoute)(),s=(0,e.ref)([]),c=(0,e.ref)(n),l=e=>!e||typeof e!=`string`?!1:o.meta?.keepAlive===!0,u=e=>{!s.value.includes(e)&&l(e)&&(s.value.push(e),s.value.length>c.value&&s.value.shift())};return(0,e.watch)(()=>o.name,e=>{e&&typeof e==`string`&&u(e)},{immediate:!0}),{cachedViews:s,maxCacheCount:c,addCache:u,removeCache:e=>{let t=s.value.indexOf(e);t>-1&&s.value.splice(t,1)},clearAllCache:()=>{s.value=[]}}}var y=(0,e.defineComponent)({name:`SideLayout`,__name:`index`,props:{collapsed:{type:Boolean,default:!1}},emits:[`update:collapsed`],setup(t,{expose:r,emit:i}){let a=t,o=i,s=g(),{cachedViews:c,maxCacheCount:l}=v(),u=(0,e.ref)(a.collapsed);(0,e.watch)(()=>a.collapsed,e=>{u.value=e});let d=(0,e.computed)(()=>u.value),f=e=>{u.value=e,o(`update:collapsed`,e)};return r({collapsed:d,toggleCollapse:()=>{let e=!u.value;u.value=e,o(`update:collapsed`,e)}}),(t,r)=>{let i=(0,e.resolveComponent)(`RouterView`);return(0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(n.NLayout),{"has-sider":``},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NLayoutSider),{bordered:``,"collapse-mode":`width`,"collapsed-width":(0,e.unref)(s).sidebarCollapsedWidth.value,width:(0,e.unref)(s).sidebarWidth.value,"native-scrollbar":!1,collapsed:d.value,"onUpdate:collapsed":f,class:(0,e.normalizeClass)([`layout-sider`,`no-horizontal-scroll`,(0,e.unref)(s).isDark.value?`dark-theme`:`light-theme`])},{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`logo`),(0,e.renderSlot)(t.$slots,`menu`,{collapsed:d.value})]),_:3},8,[`collapsed-width`,`width`,`collapsed`,`class`]),(0,e.createVNode)((0,e.unref)(n.NLayout),null,{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`header`),(0,e.createVNode)((0,e.unref)(n.NLayoutContent),{class:`content-with-header p16px app-content`},{default:(0,e.withCtx)(()=>[(0,e.createVNode)(i,null,{default:(0,e.withCtx)(({Component:t,route:n})=>[(0,e.createVNode)(e.Transition,{name:(0,e.unref)(s).transitionName.value,mode:`out-in`},{default:(0,e.withCtx)(()=>[((0,e.openBlock)(),(0,e.createBlock)(e.KeepAlive,{include:(0,e.unref)(c),max:(0,e.unref)(l)},[((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)(t),{key:n.path}))],1032,[`include`,`max`]))]),_:2},1032,[`name`])]),_:1})]),_:1}),(0,e.renderSlot)(t.$slots,`footer`)]),_:3})]),_:3})}}}),b={ref:`visibleRef`,class:`responsive-menu__visible`},x={class:`responsive-menu__more`},S=(0,e.defineComponent)({name:`ResponsiveMenu`,__name:`index`,props:{data:{}},setup(t){let i=t,a=(0,r.useRoute)(),o=(0,r.useRouter)(),s=g(),c=(0,e.computed)(()=>i.data||[]),l=(0,e.computed)(()=>a.path),u=s.isDark,d={itemTextColor:`rgba(51, 65, 85, 0.85)`,itemTextColorHover:`rgba(30, 64, 175, 0.95)`,itemTextColorActive:`rgba(30, 64, 175, 1)`,itemTextColorActiveHover:`rgba(30, 64, 175, 1)`,itemTextColorChildActive:`rgba(30, 64, 175, 1)`,itemIconColor:`rgba(51, 65, 85, 0.7)`,itemIconColorHover:`rgba(30, 64, 175, 0.85)`,itemIconColorActive:`rgba(30, 64, 175, 1)`,itemIconColorActiveHover:`rgba(30, 64, 175, 1)`,itemIconColorChildActive:`rgba(30, 64, 175, 1)`,itemColorHover:`rgba(30, 64, 175, 0.06)`,itemColorActive:`rgba(30, 64, 175, 0.1)`,itemColorActiveHover:`rgba(30, 64, 175, 0.12)`,itemColorActiveCollapsed:`rgba(30, 64, 175, 0.1)`,arrowColor:`rgba(51, 65, 85, 0.6)`,arrowColorHover:`rgba(30, 64, 175, 0.8)`,arrowColorActive:`rgba(30, 64, 175, 1)`,arrowColorChildActive:`rgba(30, 64, 175, 1)`,itemHeight:`42px`,itemPadding:`0 18px`,itemBorderRadius:`10px`,groupTextColor:`rgba(51, 65, 85, 0.65)`},f={itemTextColor:`rgba(226, 232, 240, 0.85)`,itemTextColorHover:`rgba(255, 255, 255, 0.95)`,itemTextColorActive:`rgba(147, 197, 253, 1)`,itemTextColorActiveHover:`rgba(147, 197, 253, 1)`,itemTextColorChildActive:`rgba(147, 197, 253, 1)`,itemIconColor:`rgba(226, 232, 240, 0.7)`,itemIconColorHover:`rgba(255, 255, 255, 0.85)`,itemIconColorActive:`rgba(147, 197, 253, 1)`,itemIconColorActiveHover:`rgba(147, 197, 253, 1)`,itemIconColorChildActive:`rgba(147, 197, 253, 1)`,itemColorHover:`rgba(59, 130, 246, 0.1)`,itemColorActive:`rgba(59, 130, 246, 0.15)`,itemColorActiveHover:`rgba(59, 130, 246, 0.18)`,itemColorActiveCollapsed:`rgba(59, 130, 246, 0.15)`,arrowColor:`rgba(226, 232, 240, 0.5)`,arrowColorHover:`rgba(255, 255, 255, 0.7)`,arrowColorActive:`rgba(147, 197, 253, 1)`,arrowColorChildActive:`rgba(147, 197, 253, 1)`,itemHeight:`42px`,itemPadding:`0 18px`,itemBorderRadius:`10px`,groupTextColor:`rgba(226, 232, 240, 0.6)`},p=(0,e.computed)(()=>u.value?f:d),m=(t,n=18)=>s.iconComponent?()=>(0,e.h)(s.iconComponent,{name:t,size:n}):()=>(0,e.h)(`i`,{class:t,style:{fontSize:`${n}px`,display:`inline-flex`,alignItems:`center`}}),h=e=>({key:e.path||``,label:e.meta?.title||e.name||``,icon:e.meta?.icon?m(e.meta.icon,18):void 0,children:e.children?.length?e.children.map(h):void 0}),_=(0,e.ref)(),v=(0,e.ref)([]),y=(0,e.ref)([]),S=(0,e.computed)(()=>v.value.map(h)),C=(0,e.computed)(()=>y.value.map(e=>({key:e.path||``,label:e.meta?.title||e.name||``,icon:e.meta?.icon?m(e.meta.icon,16):void 0,children:e.children?.length?e.children.map(e=>({key:e.path||``,label:e.meta?.title||e.name||``,icon:e.meta?.icon?m(e.meta.icon,16):void 0})):void 0}))),w=e=>{e&&o.push(e)},T=e=>{let t=e.meta?.title||e.name||``,n=0;for(let e of t){let t=e.charCodeAt(0);t>=19968&&t<=40959||t>=13312&&t<=19903||t>=12288&&t<=12351||t>=65280&&t<=65519||t>=12352&&t<=12447||t>=12448&&t<=12543?n+=15:n+=8}let r=e.meta?.icon?26:0;return n+r+36+8+8},E=e=>{if(!c.value.length)return 0;let t=0;for(let e of c.value)t+=T(e);if(t+15<=e)return c.value.length;let n=0,r=0,i=e-80-15;for(let e of c.value){let t=T(e);if(n+t<=i)n+=t,r++;else break}return Math.max(r,1)},D=()=>{if(!_.value||!c.value.length)return;let t=_.value.offsetWidth;if(t===0){(0,e.nextTick)(()=>D());return}let n=E(t);v.value=c.value.slice(0,n),y.value=c.value.slice(n)},O=null,k=()=>{O&&clearTimeout(O),O=window.setTimeout(()=>D(),100)},A=null;return(0,e.onMounted)(()=>{(0,e.nextTick)(()=>D()),_.value&&(A=new ResizeObserver(()=>k()),A.observe(_.value))}),(0,e.onUnmounted)(()=>{A?.disconnect(),O&&clearTimeout(O)}),(0,e.watch)(()=>i.data,()=>(0,e.nextTick)(()=>D()),{deep:!0}),(t,r)=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{ref_key:`containerRef`,ref:_,class:`responsive-menu`},[(0,e.createElementVNode)(`div`,b,[S.value.length>0?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(n.NMenu),{key:0,mode:`horizontal`,value:l.value,options:S.value,"theme-overrides":p.value,"onUpdate:value":w},null,8,[`value`,`options`,`theme-overrides`])):(0,e.createCommentVNode)(``,!0)],512),y.value.length>0?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(n.NDropdown),{key:0,options:C.value,placement:`bottom-end`,trigger:`hover`,onSelect:w},{default:(0,e.withCtx)(()=>[(0,e.createElementVNode)(`div`,x,[(0,e.createVNode)((0,e.unref)(n.NButton),{text:``,class:`responsive-menu__more-btn`},{default:(0,e.withCtx)(()=>[...r[0]||=[(0,e.createElementVNode)(`span`,{class:`dots-icon`},[(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`)],-1)]]),_:1})])]),_:1},8,[`options`])):(0,e.createCommentVNode)(``,!0)],512))}}),C=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},w=C(S,[[`__scopeId`,`data-v-d329131b`]]),T={class:`top-layout-container`},E={class:`navbar-left`},D={class:`logo-container`},O=[`src`,`width`,`height`],k=[`src`,`width`,`height`],A={class:`brand-name`},ee={class:`brand-title`},te={class:`brand-subtitle`},j={class:`navbar-center`},ne={class:`page-content`},M=(0,e.defineComponent)({name:`TopLayout`,__name:`index`,setup(t){let r=g(),{cachedViews:i,maxCacheCount:a}=v(),o=r.isDark,s=(0,e.computed)(()=>r.menus.value),c=(0,e.computed)(()=>r.showTagsView.value),l=(0,e.computed)(()=>r.tagsViewHeight.value),u=(0,e.computed)(()=>r.showFooter.value),d=(0,e.computed)(()=>r.transitionName.value),f={..._,...r.brand};return(t,r)=>{let p=(0,e.resolveComponent)(`RouterView`);return(0,e.openBlock)(),(0,e.createElementBlock)(`div`,T,[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`top-navbar`,[(0,e.unref)(o)?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,E,[(0,e.renderSlot)(t.$slots,`logo`,{},()=>[(0,e.createElementVNode)(`div`,D,[r[0]||=(0,e.createElementVNode)(`div`,{class:`logo-glow`},null,-1),f.logoType===`video`?((0,e.openBlock)(),(0,e.createElementBlock)(`video`,{key:0,src:f.logoSrc,width:f.logoSize||36,height:f.logoSize||36,autoplay:``,loop:``,muted:``,playsinline:``,class:`logo-video`},` 您的浏览器不支持 video 标签。 `,8,O)):((0,e.openBlock)(),(0,e.createElementBlock)(`img`,{key:1,src:f.logoSrc,width:f.logoSize||36,height:f.logoSize||36,class:`logo-video`},null,8,k))]),(0,e.createElementVNode)(`div`,A,[(0,e.createElementVNode)(`span`,ee,(0,e.toDisplayString)(f.name),1),(0,e.createElementVNode)(`span`,te,(0,e.toDisplayString)(f.subtitle),1)]),r[1]||=(0,e.createElementVNode)(`div`,{class:`navbar-divider`},null,-1)])]),(0,e.createElementVNode)(`div`,j,[(0,e.renderSlot)(t.$slots,`menu`,{},()=>[(0,e.createVNode)(w,{data:s.value},null,8,[`data`])])]),(0,e.renderSlot)(t.$slots,`header-extra`)],2),c.value?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:0,class:`tags-view-container`,style:(0,e.normalizeStyle)({height:`${l.value}px`})},[(0,e.renderSlot)(t.$slots,`tags-view`)],4)):(0,e.createCommentVNode)(``,!0),(0,e.createVNode)((0,e.unref)(n.NLayout),null,{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NLayoutContent),{class:`main-content`},{default:(0,e.withCtx)(()=>[(0,e.createElementVNode)(`div`,ne,[(0,e.createVNode)(p,null,{default:(0,e.withCtx)(({Component:t,route:n})=>[(0,e.createVNode)(e.Transition,{name:d.value,mode:`out-in`},{default:(0,e.withCtx)(()=>[((0,e.openBlock)(),(0,e.createBlock)(e.KeepAlive,{include:(0,e.unref)(i),max:(0,e.unref)(a)},[((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)(t),{key:n.path}))],1032,[`include`,`max`]))]),_:2},1032,[`name`])]),_:1})])]),_:1}),u.value?(0,e.renderSlot)(t.$slots,`footer`,{key:0}):(0,e.createCommentVNode)(``,!0)]),_:3})])}}});function N(t){let{menus:n,floatingSecondMenu:i=!1}=t,a=(0,r.useRoute)(),o=(0,r.useRouter)(),s=(0,e.ref)(``),c=(0,e.ref)(null),l=(0,e.ref)(!1),u=(0,e.computed)(()=>c.value||m.value||null),d=e=>e.startsWith(`/`)?e:`/${e}`,f=e=>{if(!e)return!1;let t=a.path;if(t===e)return!0;let n=d(e),r=d(t);return r===n?!0:r.includes(`/${e}`)},p=e=>{for(let t of e)if(f(t.path)||t.children?.length&&p(t.children))return t;return null},m=(0,e.computed)(()=>n.value.find(e=>e.path===s.value)),h=(0,e.computed)(()=>m.value?.children||[]),g=t=>{(0,e.toValue)(i)?t.children&&t.children.length>0?l.value&&s.value===t.path?l.value=!1:(s.value=t.path||``,l.value=!0):(s.value=t.path||``,l.value=!1,t.path&&o.push(t.path)):(!t.children||t.children.length===0)&&t.path&&o.push(t.path)},_=e=>{e.path&&o.push(e.path)},v=()=>{let t=n.value,r=p(t);r?(s.value=r.path||``,(0,e.toValue)(i)&&r.children?.length&&(l.value=!0)):t.length>0&&!s.value&&(s.value=t[0].path||``)};return(0,e.watch)(()=>a.path,()=>v(),{immediate:!0}),(0,e.watch)(n,e=>{e&&e.length>0&&v()},{immediate:!0}),(0,e.onMounted)(()=>v()),{activeFirstMenu:s,activeFirstMenuItem:m,currentSecondMenus:h,hoveredMenuItem:c,displayMenuItem:u,showSecondMenu:l,handleFirstMenuClick:g,handleSecondMenuClick:_,isMenuItemActive:f}}var re={class:`mix-layout-container`},ie={class:`logo-container`},P=[`src`,`width`,`height`],F=[`src`,`width`,`height`],I={class:`first-menu-list`},L=[`onClick`],R={class:`menu-item-content`},z={key:1,class:`menu-item-text`},B={class:`menu-item-label`},V={class:`second-menu-header`},H={class:`menu-title`},U={class:`second-menu-list`},W=[`onClick`],G={class:`menu-item-label`},K={class:`main-layout`},q=(0,e.defineComponent)({name:`MixLayout`,__name:`index`,setup(t){let r=g(),{cachedViews:i,maxCacheCount:a}=v(),o=r.isDark,s=(0,e.computed)(()=>r.menus.value),c=(0,e.computed)(()=>r.showFooter.value),l=(0,e.computed)(()=>r.transitionName.value),u={..._,...r.brand},d=N({menus:r.menus,floatingSecondMenu:(0,e.computed)(()=>!0)}),f=r.iconComponent??(0,e.defineComponent)({name:`LayoutIcon`,props:{name:String,size:{type:Number,default:18}},setup(t){return()=>(0,e.h)(`i`,{class:t.name,style:{fontSize:`${t.size}px`,display:`inline-flex`,alignItems:`center`,justifyContent:`center`}})}});return(t,r)=>{let p=(0,e.resolveComponent)(`RouterView`);return(0,e.openBlock)(),(0,e.createElementBlock)(`div`,re,[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`first-level-menu`,[(0,e.unref)(o)?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,ie,[(0,e.renderSlot)(t.$slots,`logo`,{},()=>[r[0]||=(0,e.createElementVNode)(`div`,{class:`logo-glow`},null,-1),u.logoType===`video`?((0,e.openBlock)(),(0,e.createElementBlock)(`video`,{key:0,src:u.logoSrc,width:u.logoSize||40,height:u.logoSize||40,autoplay:``,loop:``,muted:``,playsinline:``,class:`logo-video`},` 您的浏览器不支持 video 标签。 `,8,P)):((0,e.openBlock)(),(0,e.createElementBlock)(`img`,{key:1,src:u.logoSrc,width:u.logoSize||40,height:u.logoSize||40,class:`logo-video`},null,8,F))])]),(0,e.createElementVNode)(`div`,I,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(s.value,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.path,class:(0,e.normalizeClass)([`first-menu-item`,{active:(0,e.unref)(d).activeFirstMenu.value===t.path}]),onClick:n=>(0,e.unref)(d).handleFirstMenuClick(t)},[(0,e.createElementVNode)(`div`,R,[t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(f)),{key:0,name:t.meta.icon,size:22},null,8,[`name`])):((0,e.openBlock)(),(0,e.createElementBlock)(`span`,z,(0,e.toDisplayString)((t.meta?.title||``)[0]),1))]),(0,e.createElementVNode)(`span`,B,(0,e.toDisplayString)(t.meta?.title),1)],10,L))),128))])],2),(0,e.createVNode)(e.Transition,{name:`slide-fade`},{default:(0,e.withCtx)(()=>[(0,e.unref)(d).showSecondMenu.value?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:0,class:(0,e.normalizeClass)([`second-level-menu-popup`,[(0,e.unref)(o)?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,V,[(0,e.unref)(d).displayMenuItem.value?.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(f)),{key:0,name:(0,e.unref)(d).displayMenuItem.value.meta.icon,size:20},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,H,(0,e.toDisplayString)((0,e.unref)(d).displayMenuItem.value?.meta?.title),1)]),(0,e.createElementVNode)(`div`,U,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)((0,e.unref)(d).displayMenuItem.value?.children||[],t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.path,class:(0,e.normalizeClass)([`second-menu-item`,{active:(0,e.unref)(d).isMenuItemActive(t.path)}]),onClick:n=>(0,e.unref)(d).handleSecondMenuClick(t)},[t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(f)),{key:0,name:t.meta.icon,size:16},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,G,(0,e.toDisplayString)(t.meta?.title),1)],10,W))),128))])],2)):(0,e.createCommentVNode)(``,!0)]),_:1}),(0,e.createElementVNode)(`div`,K,[(0,e.renderSlot)(t.$slots,`header`),(0,e.createVNode)((0,e.unref)(n.NLayout),null,{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NLayoutContent),{class:`content-with-header p16px app-content`},{default:(0,e.withCtx)(()=>[(0,e.createVNode)(p,null,{default:(0,e.withCtx)(({Component:t,route:n})=>[(0,e.createVNode)(e.Transition,{name:l.value,mode:`out-in`},{default:(0,e.withCtx)(()=>[((0,e.openBlock)(),(0,e.createBlock)(e.KeepAlive,{include:(0,e.unref)(i),max:(0,e.unref)(a)},[((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)(t),{key:n.path}))],1032,[`include`,`max`]))]),_:2},1032,[`name`])]),_:1})]),_:1}),c.value?(0,e.renderSlot)(t.$slots,`footer`,{key:0}):(0,e.createCommentVNode)(``,!0)]),_:3})])])}}}),J={class:`mix-top-layout-container`},Y={class:`logo-container`},ae=[`src`,`width`,`height`],oe=[`src`,`width`,`height`],se={class:`first-menu-list`},ce=[`onClick`],le={class:`menu-item-content`},ue={key:1,class:`menu-item-text`},de={class:`menu-item-label`},fe={class:`main-area`},pe={class:`navbar-left`},me={class:`brand-name`},he={class:`brand-title`},ge={class:`brand-subtitle`},_e={class:`navbar-center`},ve={class:`page-content`},X=(0,e.defineComponent)({name:`MixTopLayout`,__name:`index`,setup(t){let r=g(),{cachedViews:i,maxCacheCount:a}=v(),o=r.isDark,s=(0,e.computed)(()=>r.menus.value),c=(0,e.computed)(()=>r.showTagsView.value),l=(0,e.computed)(()=>r.tagsViewHeight.value),u=(0,e.computed)(()=>r.showFooter.value),d=(0,e.computed)(()=>r.transitionName.value),f={..._,...r.brand},p=N({menus:r.menus,floatingSecondMenu:(0,e.computed)(()=>!1)}),m=r.iconComponent??(0,e.defineComponent)({name:`LayoutIcon`,props:{name:String,size:{type:Number,default:18}},setup(t){return()=>(0,e.h)(`i`,{class:t.name,style:{fontSize:`${t.size}px`,display:`inline-flex`,alignItems:`center`,justifyContent:`center`}})}});return(t,r)=>{let h=(0,e.resolveComponent)(`RouterView`);return(0,e.openBlock)(),(0,e.createElementBlock)(`div`,J,[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`first-level-sidebar`,[(0,e.unref)(o)?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,Y,[(0,e.renderSlot)(t.$slots,`logo`,{},()=>[r[0]||=(0,e.createElementVNode)(`div`,{class:`logo-glow`},null,-1),f.logoType===`video`?((0,e.openBlock)(),(0,e.createElementBlock)(`video`,{key:0,src:f.logoSrc,width:f.logoSize||40,height:f.logoSize||40,autoplay:``,loop:``,muted:``,playsinline:``,class:`logo-video`},` 您的浏览器不支持 video 标签。 `,8,ae)):((0,e.openBlock)(),(0,e.createElementBlock)(`img`,{key:1,src:f.logoSrc,width:f.logoSize||40,height:f.logoSize||40,class:`logo-video`},null,8,oe))])]),(0,e.createElementVNode)(`div`,se,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(s.value,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.path,class:(0,e.normalizeClass)([`first-menu-item`,{active:(0,e.unref)(p).activeFirstMenu.value===t.path}]),onClick:n=>(0,e.unref)(p).handleFirstMenuClick(t)},[(0,e.createElementVNode)(`div`,le,[t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(m)),{key:0,name:t.meta.icon,size:22},null,8,[`name`])):((0,e.openBlock)(),(0,e.createElementBlock)(`span`,ue,(0,e.toDisplayString)((t.meta?.title||``)[0]),1))]),(0,e.createElementVNode)(`span`,de,(0,e.toDisplayString)(t.meta?.title),1)],10,ce))),128))])],2),(0,e.createElementVNode)(`div`,fe,[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`top-navbar`,[(0,e.unref)(o)?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,pe,[(0,e.renderSlot)(t.$slots,`brand`,{},()=>[(0,e.createElementVNode)(`div`,me,[(0,e.createElementVNode)(`span`,he,(0,e.toDisplayString)(f.name),1),(0,e.createElementVNode)(`span`,ge,(0,e.toDisplayString)(f.subtitle),1)]),r[1]||=(0,e.createElementVNode)(`div`,{class:`navbar-divider`},null,-1)])]),(0,e.createElementVNode)(`div`,_e,[(0,e.renderSlot)(t.$slots,`top-menu`,{},()=>[(0,e.unref)(p).currentSecondMenus.value.length>0?((0,e.openBlock)(),(0,e.createBlock)(w,{key:0,data:(0,e.unref)(p).currentSecondMenus.value},null,8,[`data`])):(0,e.createCommentVNode)(``,!0)])]),(0,e.renderSlot)(t.$slots,`header-extra`)],2),c.value?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:0,class:`tags-view-container`,style:(0,e.normalizeStyle)({height:`${l.value}px`})},[(0,e.renderSlot)(t.$slots,`tags-view`)],4)):(0,e.createCommentVNode)(``,!0),(0,e.createVNode)((0,e.unref)(n.NLayout),{class:`content-layout`},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NLayoutContent),{class:`main-content`},{default:(0,e.withCtx)(()=>[(0,e.createElementVNode)(`div`,ve,[(0,e.createVNode)(h,null,{default:(0,e.withCtx)(({Component:t,route:n})=>[(0,e.createVNode)(e.Transition,{name:d.value,mode:`out-in`},{default:(0,e.withCtx)(()=>[((0,e.openBlock)(),(0,e.createBlock)(e.KeepAlive,{include:(0,e.unref)(i),max:(0,e.unref)(a)},[((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)(t),{key:n.path}))],1032,[`include`,`max`]))]),_:2},1032,[`name`])]),_:1})])]),_:1}),u.value?(0,e.renderSlot)(t.$slots,`footer`,{key:0}):(0,e.createCommentVNode)(``,!0)]),_:3})])])}}}),ye={class:`reverse-horizontal-mix-layout-container`},be={class:`navbar-left`},xe={class:`logo-container`},Se=[`src`,`width`,`height`],Ce=[`src`,`width`,`height`],we={class:`brand-name`},Te={class:`brand-title`},Ee={class:`brand-subtitle`},De={class:`navbar-center`},Oe={class:`main-area`},ke={class:`page-content`},Ae={class:`header-icon`},je={class:`header-title`},Me={class:`sidebar-menu-list`},Ne={key:0,class:`menu-group`},Pe={class:`group-title`},Fe=[`onClick`],Ie={class:`item-title`},Le=[`onClick`],Re={class:`item-title`},Z=(0,e.defineComponent)({name:`ReverseHorizontalMixLayout`,__name:`index`,setup(t){let r=g(),{cachedViews:i,maxCacheCount:a}=v(),o=r.isDark,s=(0,e.computed)(()=>r.menus.value),c=(0,e.computed)(()=>r.showTagsView.value),l=(0,e.computed)(()=>r.tagsViewHeight.value),u=(0,e.computed)(()=>r.showFooter.value),d=(0,e.computed)(()=>r.transitionName.value),f={..._,...r.brand},p=N({menus:r.menus,floatingSecondMenu:(0,e.computed)(()=>!1)}),m=(0,e.ref)(!1),h=()=>{m.value=!m.value},y=r.iconComponent??(0,e.defineComponent)({name:`LayoutIcon`,props:{name:String,size:{type:Number,default:18}},setup(t){return()=>(0,e.h)(`i`,{class:t.name,style:{fontSize:`${t.size}px`,display:`inline-flex`,alignItems:`center`,justifyContent:`center`}})}});return(t,r)=>{let g=(0,e.resolveComponent)(`RouterView`);return(0,e.openBlock)(),(0,e.createElementBlock)(`div`,ye,[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`top-navbar`,[(0,e.unref)(o)?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,be,[(0,e.renderSlot)(t.$slots,`logo`,{},()=>[(0,e.createElementVNode)(`div`,xe,[r[0]||=(0,e.createElementVNode)(`div`,{class:`logo-glow`},null,-1),f.logoType===`video`?((0,e.openBlock)(),(0,e.createElementBlock)(`video`,{key:0,src:f.logoSrc,width:f.logoSize||36,height:f.logoSize||36,autoplay:``,loop:``,muted:``,playsinline:``,class:`logo-video`},` 您的浏览器不支持 video 标签。 `,8,Se)):((0,e.openBlock)(),(0,e.createElementBlock)(`img`,{key:1,src:f.logoSrc,width:f.logoSize||36,height:f.logoSize||36,class:`logo-video`},null,8,Ce))]),(0,e.createElementVNode)(`div`,we,[(0,e.createElementVNode)(`span`,Te,(0,e.toDisplayString)(f.name),1),(0,e.createElementVNode)(`span`,Ee,(0,e.toDisplayString)(f.subtitle),1)]),r[1]||=(0,e.createElementVNode)(`div`,{class:`navbar-divider`},null,-1)])]),(0,e.createElementVNode)(`div`,De,[(0,e.renderSlot)(t.$slots,`top-menu`,{},()=>[(0,e.createVNode)(w,{data:s.value},null,8,[`data`])])]),(0,e.renderSlot)(t.$slots,`header-extra`)],2),c.value?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:0,class:`tags-view-container`,style:(0,e.normalizeStyle)({height:`${l.value}px`})},[(0,e.renderSlot)(t.$slots,`tags-view`)],4)):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`div`,Oe,[(0,e.createVNode)((0,e.unref)(n.NLayout),{class:`content-layout`},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NLayoutContent),{class:`main-content`},{default:(0,e.withCtx)(()=>[(0,e.createElementVNode)(`div`,ke,[(0,e.createVNode)(g,null,{default:(0,e.withCtx)(({Component:t,route:n})=>[(0,e.createVNode)(e.Transition,{name:d.value,mode:`out-in`},{default:(0,e.withCtx)(()=>[((0,e.openBlock)(),(0,e.createBlock)(e.KeepAlive,{include:(0,e.unref)(i),max:(0,e.unref)(a)},[((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)(t),{key:n.path}))],1032,[`include`,`max`]))]),_:2},1032,[`name`])]),_:1})])]),_:1}),u.value?(0,e.renderSlot)(t.$slots,`footer`,{key:0}):(0,e.createCommentVNode)(``,!0)]),_:3}),(0,e.unref)(p).currentSecondMenus.value.length>0?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:0,class:(0,e.normalizeClass)([`sidebar-toggle`,[(0,e.unref)(o)?`dark-theme`:`light-theme`,{active:!m.value}]]),onClick:h},[(0,e.createElementVNode)(`span`,{class:(0,e.normalizeClass)([`collapse-arrow`,`toggle-icon`,m.value?`collapsed`:`expanded`])},[...r[2]||=[(0,e.createElementVNode)(`span`,{class:`arrow-line`},null,-1),(0,e.createElementVNode)(`span`,{class:`arrow-line`},null,-1)]],2)],2)):(0,e.createCommentVNode)(``,!0),(0,e.unref)(p).currentSecondMenus.value.length>0?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:1,class:(0,e.normalizeClass)([`right-sidebar-wrapper`,{collapsed:m.value}])},[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`right-sidebar`,[(0,e.unref)(o)?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`sidebar-header`,[(0,e.unref)(o)?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,Ae,[(0,e.unref)(p).activeFirstMenuItem.value?.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(y)),{key:0,name:(0,e.unref)(p).activeFirstMenuItem.value.meta.icon,size:20},null,8,[`name`])):(0,e.createCommentVNode)(``,!0)]),(0,e.createElementVNode)(`span`,je,(0,e.toDisplayString)((0,e.unref)(p).activeFirstMenuItem.value?.meta?.title||`菜单`),1)],2),(0,e.createElementVNode)(`div`,Me,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)((0,e.unref)(p).currentSecondMenus.value,t=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:t.path},[t.children&&t.children.length>0?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,Ne,[(0,e.createElementVNode)(`div`,Pe,[t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(y)),{key:0,name:t.meta.icon,size:16},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,null,(0,e.toDisplayString)(t.meta?.title),1)]),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.children,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.path,class:(0,e.normalizeClass)([`menu-item sub-item`,{active:(0,e.unref)(p).isMenuItemActive(t.path)}]),onClick:n=>(0,e.unref)(p).handleSecondMenuClick(t)},[t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(y)),{key:0,name:t.meta.icon,size:16},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,Ie,(0,e.toDisplayString)(t.meta?.title),1)],10,Fe))),128))])):((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:1,class:(0,e.normalizeClass)([`menu-item`,{active:(0,e.unref)(p).isMenuItemActive(t.path)}]),onClick:n=>(0,e.unref)(p).handleSecondMenuClick(t)},[t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(y)),{key:0,name:t.meta.icon,size:18},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,Re,(0,e.toDisplayString)(t.meta?.title),1)],10,Le))],64))),128))])],2)],2)):(0,e.createCommentVNode)(``,!0)])])}}}),ze={class:`card-layout-container`},Be={class:`navbar-left`},Ve={class:`logo-container`},He=[`src`,`width`,`height`],Ue=[`src`,`width`,`height`],We={class:`brand-name`},Ge={class:`brand-title`},Ke={class:`brand-subtitle`},qe={class:`drawer-content`},Je={class:`menu-grid`},Ye=[`onClick`],Xe={key:0,class:`category-items`},Ze=[`onClick`],Qe={class:`item-title`},$e={key:0,class:`submenu-items`},et={class:`submenu-title`},tt=[`onClick`],nt={class:`item-title`},rt={class:`main-content-area`},it={class:`page-content`},Q=C((0,e.defineComponent)({name:`CardLayout`,__name:`index`,setup(t){let i=g(),{cachedViews:a,maxCacheCount:o}=v(),s=(0,r.useRouter)(),c=i.isDark,l=(0,e.computed)(()=>i.menus.value),u=(0,e.computed)(()=>i.showTagsView.value),d=(0,e.computed)(()=>i.tagsViewHeight.value),f=(0,e.computed)(()=>i.showFooter.value),p=(0,e.computed)(()=>i.transitionName.value),m={..._,...i.brand},h=(0,e.ref)(!1),y=(0,e.ref)(null),b=()=>{y.value&&clearTimeout(y.value),y.value=setTimeout(()=>{h.value=!1},300)},x=()=>{y.value&&=(clearTimeout(y.value),null),h.value=!0},S=e=>{e.path&&(s.push(e.path),h.value=!1)},C=i.iconComponent??(0,e.defineComponent)({name:`LayoutIcon`,props:{name:String,size:{type:Number,default:18}},setup(t){return()=>(0,e.h)(`i`,{class:t.name,style:{fontSize:`${t.size}px`,display:`inline-flex`,alignItems:`center`,justifyContent:`center`}})}});return(0,e.onUnmounted)(()=>{y.value&&clearTimeout(y.value)}),(t,r)=>{let i=(0,e.resolveComponent)(`RouterView`);return(0,e.openBlock)(),(0,e.createElementBlock)(`div`,ze,[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`top-navbar`,[(0,e.unref)(c)?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,Be,[(0,e.createElementVNode)(`div`,{class:`hover-trigger-area`,onMouseenter:x,onMouseleave:b},[(0,e.renderSlot)(t.$slots,`menu-trigger`,{},()=>[r[0]||=(0,e.createElementVNode)(`div`,{class:`menu-indicator`},[(0,e.createElementVNode)(`span`,{class:`hamburger-icon`},[(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`)])],-1)],!0)],32),(0,e.renderSlot)(t.$slots,`logo`,{},()=>[(0,e.createElementVNode)(`div`,Ve,[r[1]||=(0,e.createElementVNode)(`div`,{class:`logo-glow`},null,-1),m.logoType===`video`?((0,e.openBlock)(),(0,e.createElementBlock)(`video`,{key:0,src:m.logoSrc,width:m.logoSize||36,height:m.logoSize||36,autoplay:``,loop:``,muted:``,playsinline:``,class:`logo-video`},` 您的浏览器不支持 video 标签。 `,8,He)):((0,e.openBlock)(),(0,e.createElementBlock)(`img`,{key:1,src:m.logoSrc,width:m.logoSize||36,height:m.logoSize||36,class:`logo-video`},null,8,Ue))]),(0,e.createElementVNode)(`div`,We,[(0,e.createElementVNode)(`span`,Ge,(0,e.toDisplayString)(m.name),1),(0,e.createElementVNode)(`span`,Ke,(0,e.toDisplayString)(m.subtitle),1)]),r[2]||=(0,e.createElementVNode)(`div`,{class:`navbar-divider`},null,-1)],!0)]),(0,e.renderSlot)(t.$slots,`header-extra`,{},void 0,!0)],2),u.value?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:0,class:`tags-view-container`,style:(0,e.normalizeStyle)({height:`${d.value}px`})},[(0,e.renderSlot)(t.$slots,`tags-view`,{},void 0,!0)],4)):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`drawer-menu`,[(0,e.unref)(c)?`dark-theme`:`light-theme`,{visible:h.value}]]),onMouseenter:x,onMouseleave:b},[(0,e.renderSlot)(t.$slots,`drawer-menu`,{},()=>[r[3]||=(0,e.createElementVNode)(`div`,{class:`drawer-header`},[(0,e.createElementVNode)(`div`,{class:`drawer-title`},[(0,e.createElementVNode)(`span`,{class:`grid-icon`},[(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`)]),(0,e.createElementVNode)(`span`,null,`功能导航`)])],-1),(0,e.createElementVNode)(`div`,qe,[(0,e.createElementVNode)(`div`,Je,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(l.value,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.path,class:`menu-category`},[(0,e.createElementVNode)(`div`,{class:`category-header`,onClick:e=>S(t)},[t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(C)),{key:0,name:t.meta.icon,size:18},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,null,(0,e.toDisplayString)(t.meta?.title),1)],8,Ye),t.children&&t.children.length>0?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,Xe,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.children,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.path,class:`menu-item`,onClick:e=>S(t)},[t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(C)),{key:0,name:t.meta.icon,size:16},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,Qe,(0,e.toDisplayString)(t.meta?.title),1)],8,Ze))),128)),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.children,t=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:`sub-`+t.path},[t.children&&t.children.length>0?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,$e,[(0,e.createElementVNode)(`div`,et,(0,e.toDisplayString)(t.meta?.title),1),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.children,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.path,class:`menu-item submenu-item`,onClick:e=>S(t)},[t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(C)),{key:0,name:t.meta.icon,size:14},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,nt,(0,e.toDisplayString)(t.meta?.title),1)],8,tt))),128))])):(0,e.createCommentVNode)(``,!0)],64))),128))])):(0,e.createCommentVNode)(``,!0)]))),128))])])],!0)],34),(0,e.createElementVNode)(`div`,rt,[(0,e.createVNode)((0,e.unref)(n.NLayout),{class:`content-layout`},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NLayoutContent),{class:`main-content p16px app-content`},{default:(0,e.withCtx)(()=>[(0,e.createElementVNode)(`div`,it,[(0,e.createVNode)(i,null,{default:(0,e.withCtx)(({Component:t,route:n})=>[(0,e.createVNode)(e.Transition,{name:p.value,mode:`out-in`},{default:(0,e.withCtx)(()=>[((0,e.openBlock)(),(0,e.createBlock)(e.KeepAlive,{include:(0,e.unref)(a),max:(0,e.unref)(o)},[((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)(t),{key:n.path}))],1032,[`include`,`max`]))]),_:2},1032,[`name`])]),_:1})])]),_:1}),f.value?(0,e.renderSlot)(t.$slots,`footer`,{key:0},void 0,!0):(0,e.createCommentVNode)(``,!0)]),_:3})])])}}}),[[`__scopeId`,`data-v-3e4915c5`]]),at={key:6,class:`layout-coming-soon`},ot=(0,e.defineComponent)({name:`C_LayoutContainer`,__name:`index`,setup(t){let n=p(),r=g(),i=(0,e.computed)(()=>n.layoutMode),a=r.isDark,o=(0,e.ref)(!1);return(0,e.provide)(`menuCollapse`,{isCollapsed:o,handleCollapsedChange:e=>{o.value=e}}),(t,n)=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{class:(0,e.normalizeClass)([`layout-container`,(0,e.unref)(a)?`dark-mode`:`light-mode`])},[i.value===`side`?((0,e.openBlock)(),(0,e.createBlock)(y,{key:0,collapsed:o.value,"onUpdate:collapsed":n[0]||=e=>o.value=e},(0,e.createSlots)({menu:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`menu`,{collapsed:o.value})]),header:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`header`)]),footer:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`footer`)]),_:2},[t.$slots.logo?{name:`logo`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`logo`)]),key:`0`}:void 0]),1032,[`collapsed`])):i.value===`top`?((0,e.openBlock)(),(0,e.createBlock)(M,{key:1},(0,e.createSlots)({_:2},[t.$slots.logo?{name:`logo`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`logo`)]),key:`0`}:void 0,t.$slots[`top-menu`]?{name:`menu`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`top-menu`)]),key:`1`}:void 0,t.$slots[`header-extra`]?{name:`header-extra`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`header-extra`)]),key:`2`}:void 0,t.$slots[`tags-view`]?{name:`tags-view`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`tags-view`)]),key:`3`}:void 0,t.$slots.footer?{name:`footer`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`footer`)]),key:`4`}:void 0]),1024)):i.value===`mix`?((0,e.openBlock)(),(0,e.createBlock)(q,{key:2},(0,e.createSlots)({header:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`header`)]),_:2},[t.$slots.logo?{name:`logo`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`logo`)]),key:`0`}:void 0,t.$slots.footer?{name:`footer`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`footer`)]),key:`1`}:void 0]),1024)):i.value===`mix-top`?((0,e.openBlock)(),(0,e.createBlock)(X,{key:3},(0,e.createSlots)({_:2},[t.$slots.logo?{name:`logo`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`logo`)]),key:`0`}:void 0,t.$slots.brand?{name:`brand`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`brand`)]),key:`1`}:void 0,t.$slots[`top-menu`]?{name:`top-menu`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`top-menu`)]),key:`2`}:void 0,t.$slots[`header-extra`]?{name:`header-extra`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`header-extra`)]),key:`3`}:void 0,t.$slots[`tags-view`]?{name:`tags-view`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`tags-view`)]),key:`4`}:void 0,t.$slots.footer?{name:`footer`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`footer`)]),key:`5`}:void 0]),1024)):i.value===`reverse-horizontal-mix`?((0,e.openBlock)(),(0,e.createBlock)(Z,{key:4},(0,e.createSlots)({_:2},[t.$slots.logo?{name:`logo`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`logo`)]),key:`0`}:void 0,t.$slots[`top-menu`]?{name:`top-menu`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`top-menu`)]),key:`1`}:void 0,t.$slots[`header-extra`]?{name:`header-extra`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`header-extra`)]),key:`2`}:void 0,t.$slots[`tags-view`]?{name:`tags-view`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`tags-view`)]),key:`3`}:void 0,t.$slots.footer?{name:`footer`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`footer`)]),key:`4`}:void 0]),1024)):i.value===`card-layout`?((0,e.openBlock)(),(0,e.createBlock)(Q,{key:5},(0,e.createSlots)({_:2},[t.$slots[`menu-trigger`]?{name:`menu-trigger`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`menu-trigger`)]),key:`0`}:void 0,t.$slots.logo?{name:`logo`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`logo`)]),key:`1`}:void 0,t.$slots[`header-extra`]?{name:`header-extra`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`header-extra`)]),key:`2`}:void 0,t.$slots[`tags-view`]?{name:`tags-view`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`tags-view`)]),key:`3`}:void 0,t.$slots[`drawer-menu`]?{name:`drawer-menu`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`drawer-menu`)]),key:`4`}:void 0,t.$slots.footer?{name:`footer`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`footer`)]),key:`5`}:void 0]),1024)):((0,e.openBlock)(),(0,e.createElementBlock)(`div`,at,[...n[1]||=[(0,e.createElementVNode)(`div`,{class:`coming-soon-content`},[(0,e.createElementVNode)(`div`,{class:`coming-soon-icon`},`🚧`),(0,e.createElementVNode)(`div`,{class:`coming-soon-title`},`布局开发中`)],-1)]]))],2))}}),st=[{label:`左侧菜单(默认)`,value:`side`,disabled:!1,svg:`
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require(`vue`),t=require(`pinia`),n=require(`naive-ui`),r=require(`vue-router`);var i=[{name:`拂晓蓝`,value:`#409eff`},{name:`薄暮红`,value:`#f5222d`},{name:`火山橙`,value:`#fa541c`},{name:`日暮黄`,value:`#faad14`},{name:`极光绿`,value:`#52c41a`},{name:`明青`,value:`#13c2c2`},{name:`极客蓝`,value:`#2f54eb`},{name:`酱紫`,value:`#722ed1`}],a=[{name:`科技蓝`,icon:`💙`,primaryColor:`#409eff`},{name:`清新绿`,icon:`💚`,primaryColor:`#52c41a`},{name:`商务灰`,icon:`🖤`,primaryColor:`#595959`},{name:`活力橙`,icon:`🧡`,primaryColor:`#fa8c16`},{name:`优雅紫`,icon:`💜`,primaryColor:`#722ed1`},{name:`经典红`,icon:`❤️`,primaryColor:`#f5222d`}],o=[{mode:`side`,label:`左侧菜单`,description:`经典的左侧导航布局`,icon:`i-mdi:page-layout-sidebar-left`},{mode:`top`,label:`顶部菜单`,description:`顶部水平导航布局`,icon:`i-mdi:page-layout-header`},{mode:`mix`,label:`混合菜单`,description:`顶部 + 侧边混合布局`,icon:`i-mdi:view-dashboard-outline`},{mode:`mix-top`,label:`顶部混合`,description:`侧边优先的混合布局`,icon:`i-mdi:view-dashboard-variant-outline`},{mode:`reverse-horizontal-mix`,label:`反转混合`,description:`反转的水平混合布局`,icon:`i-mdi:page-layout-header-footer`},{mode:`card-layout`,label:`卡片布局`,description:`卡片式布局风格`,icon:`i-mdi:card-outline`}],s={small:`4px`,medium:`6px`,large:`8px`},c={fade:`fade-transform`,slide:`fade-slide`,zoom:`fade-zoom`,none:``},l={themeMode:`light`,primaryColor:`#409eff`,borderRadius:`medium`,transitionType:`slide`,enableTransition:!0,layoutMode:`side`,menuExpandMode:`inline`,collapsed:!1,fixedHeader:!0,showBreadcrumb:!0,showBreadcrumbIcon:!0,showTagsView:!0,tagsViewHeight:44,tagsViewStyle:`default`,showFooter:!0,sidebarWidth:220,sidebarCollapsedWidth:64,headerHeight:56,enableHotkeys:!0,version:`2.3.2`},u=i.map(e=>e.value),d={themeMode:new Set([`light`,`dark`,`system`]),borderRadius:new Set([`small`,`medium`,`large`]),transitionType:new Set([`fade`,`slide`,`zoom`,`none`]),layoutMode:new Set([`side`,`top`,`mix`,`mix-top`,`reverse-horizontal-mix`,`card-layout`]),menuExpandMode:new Set([`inline`,`panel`]),tagsViewStyle:new Set([`default`,`card`,`smart`])},f=new Set([`enableTransition`,`collapsed`,`fixedHeader`,`showBreadcrumb`,`showBreadcrumbIcon`,`showTagsView`,`showFooter`,`enableHotkeys`]),p={tagsViewHeight:[24,100],sidebarWidth:[120,480],sidebarCollapsedWidth:[32,160],headerHeight:[32,160]};function m(e){if(!e||typeof e!=`object`||Array.isArray(e))throw TypeError(`settings 必须是对象`);let t=e,n={},r=(e,t)=>{n[e]=t};for(let[e,n]of Object.entries(d)){let i=t[e];if(i!==void 0){if(typeof i!=`string`||!n.has(i))throw RangeError(`无效的设置项 ${e}: ${String(i)}`);r(e,i)}}for(let e of f){let n=t[e];if(n!==void 0){if(typeof n!=`boolean`)throw TypeError(`设置项 ${e} 必须是布尔值`);r(e,n)}}for(let[e,n]of Object.entries(p)){let i=t[e];if(i!==void 0){if(typeof i!=`number`||!Number.isFinite(i)||i<n[0]||i>n[1])throw RangeError(`设置项 ${e} 超出允许范围`);r(e,i)}}if(t.primaryColor!==void 0){if(typeof t.primaryColor!=`string`||!/^#[0-9a-fA-F]{6}$/.test(t.primaryColor))throw RangeError(`primaryColor 必须是 #rrggbb 格式`);n.primaryColor=t.primaryColor}if(t.version!==void 0){if(typeof t.version!=`string`||t.version.length>50)throw TypeError(`version 必须是长度不超过 50 的字符串`);n.version=t.version}return n}function h(e,t){if(typeof e!=`string`)return`#000000`;if(!Number.isFinite(t))return e;let n=Math.round(t),r=e.trim(),i=r.startsWith(`#`)?r.slice(1):r;if(i.length===3&&(i=i.split(``).map(e=>e+e).join(``)),!/^[0-9a-fA-F]{6}$/.test(i))return e;let a=parseInt(i,16),o=Math.min(255,Math.max(0,(a>>16)+n)),s=Math.min(255,Math.max(0,(a>>8&255)+n)),c=Math.min(255,Math.max(0,(a&255)+n));return`#${(o<<16|s<<8|c).toString(16).padStart(6,`0`)}`}function g(n={}){let{id:r=`settings`,defaults:i={},onThemeModeChange:a}=n;if(typeof r!=`string`||!r.trim())throw RangeError(`Settings store id 不能为空`);let o={...l,...m(i)};return(0,t.defineStore)(r,()=>{let t=(0,e.ref)(o.themeMode),n=(0,e.ref)(o.primaryColor),r=(0,e.ref)(o.borderRadius),i=(0,e.ref)(o.transitionType),l=(0,e.ref)(o.enableTransition),u=(0,e.ref)(o.layoutMode),f=(0,e.ref)(o.menuExpandMode),p=(0,e.ref)(o.collapsed),m=(0,e.ref)(o.fixedHeader),g=(0,e.ref)(o.showBreadcrumb),_=(0,e.ref)(o.showBreadcrumbIcon),v=(0,e.ref)(o.showTagsView),y=(0,e.ref)(o.tagsViewHeight),b=(0,e.ref)(o.tagsViewStyle),x=(0,e.ref)(o.showFooter),S=(0,e.ref)(o.sidebarWidth),C=(0,e.ref)(o.sidebarCollapsedWidth),w=(0,e.ref)(o.headerHeight),T=(0,e.ref)(o.enableHotkeys),E=(0,e.ref)(o.version),D=(0,e.computed)(()=>s[r.value]),O=(0,e.computed)(()=>c[i.value]),k=(0,e.computed)(()=>l.value&&i.value!==`none`),A=(0,e.computed)(()=>({themeMode:t.value,primaryColor:n.value,borderRadius:r.value,transitionType:i.value,enableTransition:l.value,layoutMode:u.value,menuExpandMode:f.value,collapsed:p.value,fixedHeader:m.value,showBreadcrumb:g.value,showBreadcrumbIcon:_.value,showTagsView:v.value,tagsViewHeight:y.value,tagsViewStyle:b.value,showFooter:x.value,sidebarWidth:S.value,sidebarCollapsedWidth:C.value,headerHeight:w.value,enableHotkeys:T.value,version:E.value})),j=()=>{if(typeof document>`u`)return;let e=document.documentElement;e.style.setProperty(`--primary-color`,n.value),e.style.setProperty(`--primary-color-hover`,h(n.value,10)),e.style.setProperty(`--primary-color-pressed`,h(n.value,-10)),e.style.setProperty(`--border-radius`,D.value),e.style.setProperty(`--sidebar-width`,`${S.value}px`),e.style.setProperty(`--sidebar-collapsed-width`,`${C.value}px`),e.style.setProperty(`--header-height`,`${w.value}px`),e.style.setProperty(`--tags-view-height`,`${y.value}px`)};return(0,e.watch)([n,D,S,C,w,y],()=>{j()},{immediate:!0}),{themeMode:t,primaryColor:n,borderRadius:r,transitionType:i,enableTransition:l,layoutMode:u,menuExpandMode:f,collapsed:p,fixedHeader:m,showBreadcrumb:g,showBreadcrumbIcon:_,showTagsView:v,tagsViewHeight:y,tagsViewStyle:b,showFooter:x,sidebarWidth:S,sidebarCollapsedWidth:C,headerHeight:w,enableHotkeys:T,version:E,borderRadiusValue:D,transitionName:O,shouldEnableTransition:k,settingsState:A,syncCSSVariables:j,applyPreset:async e=>{n.value=e.primaryColor,e.settings&&(e.settings.borderRadius&&(r.value=e.settings.borderRadius),e.settings.transitionType&&(i.value=e.settings.transitionType),e.settings.showBreadcrumb!==void 0&&(g.value=e.settings.showBreadcrumb),e.settings.showTagsView!==void 0&&(v.value=e.settings.showTagsView),e.settings.tagsViewStyle&&(b.value=e.settings.tagsViewStyle))},resetSettings:()=>{t.value=o.themeMode,n.value=o.primaryColor,r.value=o.borderRadius,i.value=o.transitionType,l.value=o.enableTransition,u.value=o.layoutMode,f.value=o.menuExpandMode,p.value=o.collapsed,m.value=o.fixedHeader,g.value=o.showBreadcrumb,_.value=o.showBreadcrumbIcon,v.value=o.showTagsView,y.value=o.tagsViewHeight,b.value=o.tagsViewStyle,x.value=o.showFooter,S.value=o.sidebarWidth,C.value=o.sidebarCollapsedWidth,w.value=o.headerHeight,T.value=o.enableHotkeys},updateThemeMode:async e=>{if(!d.themeMode.has(e))throw RangeError(`未知的主题模式: ${String(e)}`);let n=t.value;t.value=e;try{a&&await a(e)}catch(e){throw t.value=n,e}},toggleCollapse:()=>{p.value=!p.value}}})}var _=g(),v=Symbol(`layout-context`),y=Symbol(`drawer-handlers`);function b(){let t=(0,e.inject)(v);if(!t)throw Error(`[Layout] LayoutContext not provided. 请在上层组件中使用 provide(LAYOUT_CONTEXT_KEY, ...) 注入布局数据。`);return t}var x={name:`Admin`,subtitle:``,logoSrc:``,logoType:`image`,logoSize:36,homePath:`/home`,copyright:``};function S(t={}){let{maxCacheCount:n=20,enableDevLog:i=!1,exposeToWindow:a=!1}=t,o=(0,r.useRoute)(),s=(0,e.ref)([]),c=(0,e.ref)(n),l=e=>!e||typeof e!=`string`?!1:o.meta?.keepAlive===!0,u=e=>{!s.value.includes(e)&&l(e)&&(s.value.push(e),s.value.length>c.value&&s.value.shift(),i&&console.debug(`[KeepAlive] ✅ 缓存: ${e} (${s.value.length}/${c.value})`))},d=e=>{let t=s.value.indexOf(e);t>-1&&(s.value.splice(t,1),i&&console.debug(`[KeepAlive] ❌ 移除: ${e}`))},f=()=>{s.value=[],i&&console.debug(`[KeepAlive] 🗑️ 清空所有缓存`)},p=()=>s.value;return a&&typeof window<`u`&&(window.__clearCache__=f,window.__removeCache__=d,window.__getCachedViews__=p,(0,e.onUnmounted)(()=>{window.__clearCache__===f&&delete window.__clearCache__,window.__removeCache__===d&&delete window.__removeCache__,window.__getCachedViews__===p&&delete window.__getCachedViews__})),(0,e.watch)(()=>o.name,e=>{e&&typeof e==`string`&&u(e)},{immediate:!0}),{cachedViews:s,maxCacheCount:c,addCache:u,removeCache:d,clearAllCache:f}}var C=(0,e.defineComponent)({name:`SideLayout`,__name:`index`,props:{collapsed:{type:Boolean,default:!1}},emits:[`update:collapsed`],setup(t,{expose:r,emit:i}){let a=t,o=i,s=b(),{cachedViews:c,maxCacheCount:l}=S(),u=(0,e.ref)(a.collapsed);(0,e.watch)(()=>a.collapsed,e=>{u.value=e});let d=(0,e.computed)(()=>u.value),f=e=>{u.value=e,o(`update:collapsed`,e)};return r({collapsed:d,toggleCollapse:()=>{let e=!u.value;u.value=e,o(`update:collapsed`,e)}}),(t,r)=>{let i=(0,e.resolveComponent)(`RouterView`);return(0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(n.NLayout),{"has-sider":``},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NLayoutSider),{bordered:``,"collapse-mode":`width`,"collapsed-width":(0,e.unref)(s).sidebarCollapsedWidth.value,width:(0,e.unref)(s).sidebarWidth.value,"native-scrollbar":!1,collapsed:d.value,"onUpdate:collapsed":f,class:(0,e.normalizeClass)([`layout-sider`,`no-horizontal-scroll`,(0,e.unref)(s).isDark.value?`dark-theme`:`light-theme`])},{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`logo`),(0,e.renderSlot)(t.$slots,`menu`,{collapsed:d.value})]),_:3},8,[`collapsed-width`,`width`,`collapsed`,`class`]),(0,e.createVNode)((0,e.unref)(n.NLayout),null,{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`header`),(0,e.createVNode)((0,e.unref)(n.NLayoutContent),{class:`content-with-header p16px app-content`},{default:(0,e.withCtx)(()=>[(0,e.createVNode)(i,null,{default:(0,e.withCtx)(({Component:t,route:n})=>[(0,e.createVNode)(e.Transition,{name:(0,e.unref)(s).transitionName.value,mode:`out-in`},{default:(0,e.withCtx)(()=>[((0,e.openBlock)(),(0,e.createBlock)(e.KeepAlive,{include:(0,e.unref)(c),max:(0,e.unref)(l)},[((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)(t),{key:n.path}))],1032,[`include`,`max`]))]),_:2},1032,[`name`])]),_:1})]),_:1}),(0,e.renderSlot)(t.$slots,`footer`)]),_:3})]),_:3})}}}),w={ref:`visibleRef`,class:`responsive-menu__visible`},T={class:`responsive-menu__more`},E=(0,e.defineComponent)({name:`ResponsiveMenu`,__name:`index`,props:{data:{}},setup(t){let i=t,a=(0,r.useRoute)(),o=(0,r.useRouter)(),s=b(),c=(0,e.computed)(()=>i.data||[]),l=(0,e.computed)(()=>a.path),u=s.isDark,d={itemTextColor:`rgba(51, 65, 85, 0.85)`,itemTextColorHover:`rgba(30, 64, 175, 0.95)`,itemTextColorActive:`rgba(30, 64, 175, 1)`,itemTextColorActiveHover:`rgba(30, 64, 175, 1)`,itemTextColorChildActive:`rgba(30, 64, 175, 1)`,itemIconColor:`rgba(51, 65, 85, 0.7)`,itemIconColorHover:`rgba(30, 64, 175, 0.85)`,itemIconColorActive:`rgba(30, 64, 175, 1)`,itemIconColorActiveHover:`rgba(30, 64, 175, 1)`,itemIconColorChildActive:`rgba(30, 64, 175, 1)`,itemColorHover:`rgba(30, 64, 175, 0.06)`,itemColorActive:`rgba(30, 64, 175, 0.1)`,itemColorActiveHover:`rgba(30, 64, 175, 0.12)`,itemColorActiveCollapsed:`rgba(30, 64, 175, 0.1)`,arrowColor:`rgba(51, 65, 85, 0.6)`,arrowColorHover:`rgba(30, 64, 175, 0.8)`,arrowColorActive:`rgba(30, 64, 175, 1)`,arrowColorChildActive:`rgba(30, 64, 175, 1)`,itemHeight:`42px`,itemPadding:`0 18px`,itemBorderRadius:`10px`,groupTextColor:`rgba(51, 65, 85, 0.65)`},f={itemTextColor:`rgba(226, 232, 240, 0.85)`,itemTextColorHover:`rgba(255, 255, 255, 0.95)`,itemTextColorActive:`rgba(147, 197, 253, 1)`,itemTextColorActiveHover:`rgba(147, 197, 253, 1)`,itemTextColorChildActive:`rgba(147, 197, 253, 1)`,itemIconColor:`rgba(226, 232, 240, 0.7)`,itemIconColorHover:`rgba(255, 255, 255, 0.85)`,itemIconColorActive:`rgba(147, 197, 253, 1)`,itemIconColorActiveHover:`rgba(147, 197, 253, 1)`,itemIconColorChildActive:`rgba(147, 197, 253, 1)`,itemColorHover:`rgba(59, 130, 246, 0.1)`,itemColorActive:`rgba(59, 130, 246, 0.15)`,itemColorActiveHover:`rgba(59, 130, 246, 0.18)`,itemColorActiveCollapsed:`rgba(59, 130, 246, 0.15)`,arrowColor:`rgba(226, 232, 240, 0.5)`,arrowColorHover:`rgba(255, 255, 255, 0.7)`,arrowColorActive:`rgba(147, 197, 253, 1)`,arrowColorChildActive:`rgba(147, 197, 253, 1)`,itemHeight:`42px`,itemPadding:`0 18px`,itemBorderRadius:`10px`,groupTextColor:`rgba(226, 232, 240, 0.6)`},p=(0,e.computed)(()=>u.value?f:d),m=(t,n=18)=>s.iconComponent?()=>(0,e.h)(s.iconComponent,{name:t,size:n}):()=>(0,e.h)(`i`,{class:t,style:{fontSize:`${n}px`,display:`inline-flex`,alignItems:`center`}}),h=e=>({key:e.path||``,label:e.meta?.title||e.name||``,icon:e.meta?.icon?m(e.meta.icon,18):void 0,children:e.children?.length?e.children.map(h):void 0}),g=(0,e.ref)(),_=(0,e.ref)([]),v=(0,e.ref)([]),y=(0,e.computed)(()=>_.value.map(h)),x=(0,e.computed)(()=>v.value.map(e=>({key:e.path||``,label:e.meta?.title||e.name||``,icon:e.meta?.icon?m(e.meta.icon,16):void 0,children:e.children?.length?e.children.map(e=>({key:e.path||``,label:e.meta?.title||e.name||``,icon:e.meta?.icon?m(e.meta.icon,16):void 0})):void 0}))),S=e=>{e&&o.push(e)},C=e=>{let t=e.meta?.title||e.name||``,n=0;for(let e of t){let t=e.charCodeAt(0);t>=19968&&t<=40959||t>=13312&&t<=19903||t>=12288&&t<=12351||t>=65280&&t<=65519||t>=12352&&t<=12447||t>=12448&&t<=12543?n+=15:n+=8}let r=e.meta?.icon?26:0;return n+r+36+8+8},E=e=>{if(!c.value.length)return 0;let t=0;for(let e of c.value)t+=C(e);if(t+15<=e)return c.value.length;let n=0,r=0,i=e-80-15;for(let e of c.value){let t=C(e);if(n+t<=i)n+=t,r++;else break}return Math.max(r,1)},D=()=>{if(!g.value||!c.value.length)return;let t=g.value.offsetWidth;if(t===0){(0,e.nextTick)(()=>D());return}let n=E(t);_.value=c.value.slice(0,n),v.value=c.value.slice(n)},O=null,k=()=>{O&&clearTimeout(O),O=window.setTimeout(()=>D(),100)},A=null;return(0,e.onMounted)(()=>{(0,e.nextTick)(()=>D()),g.value&&(A=new ResizeObserver(()=>k()),A.observe(g.value))}),(0,e.onUnmounted)(()=>{A?.disconnect(),O&&clearTimeout(O)}),(0,e.watch)(()=>i.data,()=>(0,e.nextTick)(()=>D()),{deep:!0}),(t,r)=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{ref_key:`containerRef`,ref:g,class:`responsive-menu`},[(0,e.createElementVNode)(`div`,w,[y.value.length>0?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(n.NMenu),{key:0,mode:`horizontal`,value:l.value,options:y.value,"theme-overrides":p.value,"onUpdate:value":S},null,8,[`value`,`options`,`theme-overrides`])):(0,e.createCommentVNode)(``,!0)],512),v.value.length>0?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(n.NDropdown),{key:0,options:x.value,placement:`bottom-end`,trigger:`hover`,onSelect:S},{default:(0,e.withCtx)(()=>[(0,e.createElementVNode)(`div`,T,[(0,e.createVNode)((0,e.unref)(n.NButton),{text:``,class:`responsive-menu__more-btn`},{default:(0,e.withCtx)(()=>[...r[0]||=[(0,e.createElementVNode)(`span`,{class:`dots-icon`},[(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`)],-1)]]),_:1})])]),_:1},8,[`options`])):(0,e.createCommentVNode)(``,!0)],512))}}),D=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},O=D(E,[[`__scopeId`,`data-v-d329131b`]]),k={class:`top-layout-container`},A={class:`navbar-left`},j={class:`logo-container`},ee=[`src`,`width`,`height`],M=[`src`,`width`,`height`],te={class:`brand-name`},ne={class:`brand-title`},re={class:`brand-subtitle`},ie={class:`navbar-center`},ae={class:`page-content`},N=(0,e.defineComponent)({name:`TopLayout`,__name:`index`,setup(t){let r=b(),{cachedViews:i,maxCacheCount:a}=S(),o=r.isDark,s=(0,e.computed)(()=>r.menus.value),c=(0,e.computed)(()=>r.showTagsView.value),l=(0,e.computed)(()=>r.tagsViewHeight.value),u=(0,e.computed)(()=>r.showFooter.value),d=(0,e.computed)(()=>r.transitionName.value),f={...x,...r.brand};return(t,r)=>{let p=(0,e.resolveComponent)(`RouterView`);return(0,e.openBlock)(),(0,e.createElementBlock)(`div`,k,[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`top-navbar`,[(0,e.unref)(o)?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,A,[(0,e.renderSlot)(t.$slots,`logo`,{},()=>[(0,e.createElementVNode)(`div`,j,[r[0]||=(0,e.createElementVNode)(`div`,{class:`logo-glow`},null,-1),f.logoType===`video`?((0,e.openBlock)(),(0,e.createElementBlock)(`video`,{key:0,src:f.logoSrc,width:f.logoSize||36,height:f.logoSize||36,autoplay:``,loop:``,muted:``,playsinline:``,class:`logo-video`},` 您的浏览器不支持 video 标签。 `,8,ee)):((0,e.openBlock)(),(0,e.createElementBlock)(`img`,{key:1,src:f.logoSrc,width:f.logoSize||36,height:f.logoSize||36,class:`logo-video`},null,8,M))]),(0,e.createElementVNode)(`div`,te,[(0,e.createElementVNode)(`span`,ne,(0,e.toDisplayString)(f.name),1),(0,e.createElementVNode)(`span`,re,(0,e.toDisplayString)(f.subtitle),1)]),r[1]||=(0,e.createElementVNode)(`div`,{class:`navbar-divider`},null,-1)])]),(0,e.createElementVNode)(`div`,ie,[(0,e.renderSlot)(t.$slots,`menu`,{},()=>[(0,e.createVNode)(O,{data:s.value},null,8,[`data`])])]),(0,e.renderSlot)(t.$slots,`header-extra`)],2),c.value?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:0,class:`tags-view-container`,style:(0,e.normalizeStyle)({height:`${l.value}px`})},[(0,e.renderSlot)(t.$slots,`tags-view`)],4)):(0,e.createCommentVNode)(``,!0),(0,e.createVNode)((0,e.unref)(n.NLayout),null,{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NLayoutContent),{class:`main-content`},{default:(0,e.withCtx)(()=>[(0,e.createElementVNode)(`div`,ae,[(0,e.createVNode)(p,null,{default:(0,e.withCtx)(({Component:t,route:n})=>[(0,e.createVNode)(e.Transition,{name:d.value,mode:`out-in`},{default:(0,e.withCtx)(()=>[((0,e.openBlock)(),(0,e.createBlock)(e.KeepAlive,{include:(0,e.unref)(i),max:(0,e.unref)(a)},[((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)(t),{key:n.path}))],1032,[`include`,`max`]))]),_:2},1032,[`name`])]),_:1})])]),_:1}),u.value?(0,e.renderSlot)(t.$slots,`footer`,{key:0}):(0,e.createCommentVNode)(``,!0)]),_:3})])}}});function P(e,t){if(!e)return!1;let n=e.split(`/`).filter(Boolean),r=t.split(`/`).filter(Boolean);return n.length===0?r.length===0:n.every((e,t)=>r[t]===e)}function F(t){let{menus:n,floatingSecondMenu:i=!1}=t,a=(0,r.useRoute)(),o=(0,r.useRouter)(),s=(0,e.ref)(``),c=(0,e.ref)(null),l=(0,e.ref)(!1),u=(0,e.computed)(()=>c.value||p.value||null),d=e=>P(e,a.path),f=e=>{for(let t of e)if(d(t.path)||t.children?.length&&f(t.children))return t;return null},p=(0,e.computed)(()=>n.value.find(e=>e.path===s.value)),m=(0,e.computed)(()=>p.value?.children||[]),h=t=>{(0,e.toValue)(i)?t.children&&t.children.length>0?l.value&&s.value===t.path?l.value=!1:(s.value=t.path||``,l.value=!0):(s.value=t.path||``,l.value=!1,t.path&&o.push(t.path)):(!t.children||t.children.length===0)&&t.path&&o.push(t.path)},g=e=>{e.path&&o.push(e.path)},_=()=>{let t=n.value,r=f(t);r?(s.value=r.path||``,(0,e.toValue)(i)&&r.children?.length&&(l.value=!0)):t.length>0&&!s.value&&(s.value=t[0].path||``)};return(0,e.watch)(()=>a.path,()=>_(),{immediate:!0}),(0,e.watch)(n,e=>{e&&e.length>0&&_()},{immediate:!0}),(0,e.onMounted)(()=>_()),{activeFirstMenu:s,activeFirstMenuItem:p,currentSecondMenus:m,hoveredMenuItem:c,displayMenuItem:u,showSecondMenu:l,handleFirstMenuClick:h,handleSecondMenuClick:g,isMenuItemActive:d}}var I={class:`mix-layout-container`},L={class:`logo-container`},R=[`src`,`width`,`height`],z=[`src`,`width`,`height`],B={class:`first-menu-list`},V=[`onClick`],H={class:`menu-item-content`},U={key:1,class:`menu-item-text`},W={class:`menu-item-label`},G={class:`second-menu-header`},K={class:`menu-title`},q={class:`second-menu-list`},J=[`onClick`],oe={class:`menu-item-label`},se={class:`main-layout`},Y=(0,e.defineComponent)({name:`MixLayout`,__name:`index`,setup(t){let r=b(),{cachedViews:i,maxCacheCount:a}=S(),o=r.isDark,s=(0,e.computed)(()=>r.menus.value),c=(0,e.computed)(()=>r.showFooter.value),l=(0,e.computed)(()=>r.transitionName.value),u={...x,...r.brand},d=F({menus:r.menus,floatingSecondMenu:(0,e.computed)(()=>!0)}),f=r.iconComponent??(0,e.defineComponent)({name:`LayoutIcon`,props:{name:String,size:{type:Number,default:18}},setup(t){return()=>(0,e.h)(`i`,{class:t.name,style:{fontSize:`${t.size}px`,display:`inline-flex`,alignItems:`center`,justifyContent:`center`}})}});return(t,r)=>{let p=(0,e.resolveComponent)(`RouterView`);return(0,e.openBlock)(),(0,e.createElementBlock)(`div`,I,[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`first-level-menu`,[(0,e.unref)(o)?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,L,[(0,e.renderSlot)(t.$slots,`logo`,{},()=>[r[0]||=(0,e.createElementVNode)(`div`,{class:`logo-glow`},null,-1),u.logoType===`video`?((0,e.openBlock)(),(0,e.createElementBlock)(`video`,{key:0,src:u.logoSrc,width:u.logoSize||40,height:u.logoSize||40,autoplay:``,loop:``,muted:``,playsinline:``,class:`logo-video`},` 您的浏览器不支持 video 标签。 `,8,R)):((0,e.openBlock)(),(0,e.createElementBlock)(`img`,{key:1,src:u.logoSrc,width:u.logoSize||40,height:u.logoSize||40,class:`logo-video`},null,8,z))])]),(0,e.createElementVNode)(`div`,B,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(s.value,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.path,class:(0,e.normalizeClass)([`first-menu-item`,{active:(0,e.unref)(d).activeFirstMenu.value===t.path}]),onClick:n=>(0,e.unref)(d).handleFirstMenuClick(t)},[(0,e.createElementVNode)(`div`,H,[t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(f)),{key:0,name:t.meta.icon,size:22},null,8,[`name`])):((0,e.openBlock)(),(0,e.createElementBlock)(`span`,U,(0,e.toDisplayString)((t.meta?.title||``)[0]),1))]),(0,e.createElementVNode)(`span`,W,(0,e.toDisplayString)(t.meta?.title),1)],10,V))),128))])],2),(0,e.createVNode)(e.Transition,{name:`slide-fade`},{default:(0,e.withCtx)(()=>[(0,e.unref)(d).showSecondMenu.value?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:0,class:(0,e.normalizeClass)([`second-level-menu-popup`,[(0,e.unref)(o)?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,G,[(0,e.unref)(d).displayMenuItem.value?.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(f)),{key:0,name:(0,e.unref)(d).displayMenuItem.value.meta.icon,size:20},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,K,(0,e.toDisplayString)((0,e.unref)(d).displayMenuItem.value?.meta?.title),1)]),(0,e.createElementVNode)(`div`,q,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)((0,e.unref)(d).displayMenuItem.value?.children||[],t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.path,class:(0,e.normalizeClass)([`second-menu-item`,{active:(0,e.unref)(d).isMenuItemActive(t.path)}]),onClick:n=>(0,e.unref)(d).handleSecondMenuClick(t)},[t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(f)),{key:0,name:t.meta.icon,size:16},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,oe,(0,e.toDisplayString)(t.meta?.title),1)],10,J))),128))])],2)):(0,e.createCommentVNode)(``,!0)]),_:1}),(0,e.createElementVNode)(`div`,se,[(0,e.renderSlot)(t.$slots,`header`),(0,e.createVNode)((0,e.unref)(n.NLayout),null,{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NLayoutContent),{class:`content-with-header p16px app-content`},{default:(0,e.withCtx)(()=>[(0,e.createVNode)(p,null,{default:(0,e.withCtx)(({Component:t,route:n})=>[(0,e.createVNode)(e.Transition,{name:l.value,mode:`out-in`},{default:(0,e.withCtx)(()=>[((0,e.openBlock)(),(0,e.createBlock)(e.KeepAlive,{include:(0,e.unref)(i),max:(0,e.unref)(a)},[((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)(t),{key:n.path}))],1032,[`include`,`max`]))]),_:2},1032,[`name`])]),_:1})]),_:1}),c.value?(0,e.renderSlot)(t.$slots,`footer`,{key:0}):(0,e.createCommentVNode)(``,!0)]),_:3})])])}}}),ce={class:`mix-top-layout-container`},le={class:`logo-container`},ue=[`src`,`width`,`height`],de=[`src`,`width`,`height`],fe={class:`first-menu-list`},pe=[`onClick`],me={class:`menu-item-content`},he={key:1,class:`menu-item-text`},ge={class:`menu-item-label`},_e={class:`main-area`},ve={class:`navbar-left`},ye={class:`brand-name`},be={class:`brand-title`},xe={class:`brand-subtitle`},Se={class:`navbar-center`},Ce={class:`page-content`},X=(0,e.defineComponent)({name:`MixTopLayout`,__name:`index`,setup(t){let r=b(),{cachedViews:i,maxCacheCount:a}=S(),o=r.isDark,s=(0,e.computed)(()=>r.menus.value),c=(0,e.computed)(()=>r.showTagsView.value),l=(0,e.computed)(()=>r.tagsViewHeight.value),u=(0,e.computed)(()=>r.showFooter.value),d=(0,e.computed)(()=>r.transitionName.value),f={...x,...r.brand},p=F({menus:r.menus,floatingSecondMenu:(0,e.computed)(()=>!1)}),m=r.iconComponent??(0,e.defineComponent)({name:`LayoutIcon`,props:{name:String,size:{type:Number,default:18}},setup(t){return()=>(0,e.h)(`i`,{class:t.name,style:{fontSize:`${t.size}px`,display:`inline-flex`,alignItems:`center`,justifyContent:`center`}})}});return(t,r)=>{let h=(0,e.resolveComponent)(`RouterView`);return(0,e.openBlock)(),(0,e.createElementBlock)(`div`,ce,[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`first-level-sidebar`,[(0,e.unref)(o)?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,le,[(0,e.renderSlot)(t.$slots,`logo`,{},()=>[r[0]||=(0,e.createElementVNode)(`div`,{class:`logo-glow`},null,-1),f.logoType===`video`?((0,e.openBlock)(),(0,e.createElementBlock)(`video`,{key:0,src:f.logoSrc,width:f.logoSize||40,height:f.logoSize||40,autoplay:``,loop:``,muted:``,playsinline:``,class:`logo-video`},` 您的浏览器不支持 video 标签。 `,8,ue)):((0,e.openBlock)(),(0,e.createElementBlock)(`img`,{key:1,src:f.logoSrc,width:f.logoSize||40,height:f.logoSize||40,class:`logo-video`},null,8,de))])]),(0,e.createElementVNode)(`div`,fe,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(s.value,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.path,class:(0,e.normalizeClass)([`first-menu-item`,{active:(0,e.unref)(p).activeFirstMenu.value===t.path}]),onClick:n=>(0,e.unref)(p).handleFirstMenuClick(t)},[(0,e.createElementVNode)(`div`,me,[t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(m)),{key:0,name:t.meta.icon,size:22},null,8,[`name`])):((0,e.openBlock)(),(0,e.createElementBlock)(`span`,he,(0,e.toDisplayString)((t.meta?.title||``)[0]),1))]),(0,e.createElementVNode)(`span`,ge,(0,e.toDisplayString)(t.meta?.title),1)],10,pe))),128))])],2),(0,e.createElementVNode)(`div`,_e,[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`top-navbar`,[(0,e.unref)(o)?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,ve,[(0,e.renderSlot)(t.$slots,`brand`,{},()=>[(0,e.createElementVNode)(`div`,ye,[(0,e.createElementVNode)(`span`,be,(0,e.toDisplayString)(f.name),1),(0,e.createElementVNode)(`span`,xe,(0,e.toDisplayString)(f.subtitle),1)]),r[1]||=(0,e.createElementVNode)(`div`,{class:`navbar-divider`},null,-1)])]),(0,e.createElementVNode)(`div`,Se,[(0,e.renderSlot)(t.$slots,`top-menu`,{},()=>[(0,e.unref)(p).currentSecondMenus.value.length>0?((0,e.openBlock)(),(0,e.createBlock)(O,{key:0,data:(0,e.unref)(p).currentSecondMenus.value},null,8,[`data`])):(0,e.createCommentVNode)(``,!0)])]),(0,e.renderSlot)(t.$slots,`header-extra`)],2),c.value?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:0,class:`tags-view-container`,style:(0,e.normalizeStyle)({height:`${l.value}px`})},[(0,e.renderSlot)(t.$slots,`tags-view`)],4)):(0,e.createCommentVNode)(``,!0),(0,e.createVNode)((0,e.unref)(n.NLayout),{class:`content-layout`},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NLayoutContent),{class:`main-content`},{default:(0,e.withCtx)(()=>[(0,e.createElementVNode)(`div`,Ce,[(0,e.createVNode)(h,null,{default:(0,e.withCtx)(({Component:t,route:n})=>[(0,e.createVNode)(e.Transition,{name:d.value,mode:`out-in`},{default:(0,e.withCtx)(()=>[((0,e.openBlock)(),(0,e.createBlock)(e.KeepAlive,{include:(0,e.unref)(i),max:(0,e.unref)(a)},[((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)(t),{key:n.path}))],1032,[`include`,`max`]))]),_:2},1032,[`name`])]),_:1})])]),_:1}),u.value?(0,e.renderSlot)(t.$slots,`footer`,{key:0}):(0,e.createCommentVNode)(``,!0)]),_:3})])])}}}),we={class:`reverse-horizontal-mix-layout-container`},Te={class:`navbar-left`},Ee={class:`logo-container`},De=[`src`,`width`,`height`],Oe=[`src`,`width`,`height`],ke={class:`brand-name`},Ae={class:`brand-title`},je={class:`brand-subtitle`},Me={class:`navbar-center`},Ne={class:`main-area`},Pe={class:`page-content`},Fe={class:`header-icon`},Ie={class:`header-title`},Le={class:`sidebar-menu-list`},Re={key:0,class:`menu-group`},ze={class:`group-title`},Be=[`onClick`],Ve={class:`item-title`},He=[`onClick`],Ue={class:`item-title`},Z=(0,e.defineComponent)({name:`ReverseHorizontalMixLayout`,__name:`index`,setup(t){let r=b(),{cachedViews:i,maxCacheCount:a}=S(),o=r.isDark,s=(0,e.computed)(()=>r.menus.value),c=(0,e.computed)(()=>r.showTagsView.value),l=(0,e.computed)(()=>r.tagsViewHeight.value),u=(0,e.computed)(()=>r.showFooter.value),d=(0,e.computed)(()=>r.transitionName.value),f={...x,...r.brand},p=F({menus:r.menus,floatingSecondMenu:(0,e.computed)(()=>!1)}),m=(0,e.ref)(!1),h=()=>{m.value=!m.value},g=r.iconComponent??(0,e.defineComponent)({name:`LayoutIcon`,props:{name:String,size:{type:Number,default:18}},setup(t){return()=>(0,e.h)(`i`,{class:t.name,style:{fontSize:`${t.size}px`,display:`inline-flex`,alignItems:`center`,justifyContent:`center`}})}});return(t,r)=>{let _=(0,e.resolveComponent)(`RouterView`);return(0,e.openBlock)(),(0,e.createElementBlock)(`div`,we,[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`top-navbar`,[(0,e.unref)(o)?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,Te,[(0,e.renderSlot)(t.$slots,`logo`,{},()=>[(0,e.createElementVNode)(`div`,Ee,[r[0]||=(0,e.createElementVNode)(`div`,{class:`logo-glow`},null,-1),f.logoType===`video`?((0,e.openBlock)(),(0,e.createElementBlock)(`video`,{key:0,src:f.logoSrc,width:f.logoSize||36,height:f.logoSize||36,autoplay:``,loop:``,muted:``,playsinline:``,class:`logo-video`},` 您的浏览器不支持 video 标签。 `,8,De)):((0,e.openBlock)(),(0,e.createElementBlock)(`img`,{key:1,src:f.logoSrc,width:f.logoSize||36,height:f.logoSize||36,class:`logo-video`},null,8,Oe))]),(0,e.createElementVNode)(`div`,ke,[(0,e.createElementVNode)(`span`,Ae,(0,e.toDisplayString)(f.name),1),(0,e.createElementVNode)(`span`,je,(0,e.toDisplayString)(f.subtitle),1)]),r[1]||=(0,e.createElementVNode)(`div`,{class:`navbar-divider`},null,-1)])]),(0,e.createElementVNode)(`div`,Me,[(0,e.renderSlot)(t.$slots,`top-menu`,{},()=>[(0,e.createVNode)(O,{data:s.value},null,8,[`data`])])]),(0,e.renderSlot)(t.$slots,`header-extra`)],2),c.value?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:0,class:`tags-view-container`,style:(0,e.normalizeStyle)({height:`${l.value}px`})},[(0,e.renderSlot)(t.$slots,`tags-view`)],4)):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`div`,Ne,[(0,e.createVNode)((0,e.unref)(n.NLayout),{class:`content-layout`},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NLayoutContent),{class:`main-content`},{default:(0,e.withCtx)(()=>[(0,e.createElementVNode)(`div`,Pe,[(0,e.createVNode)(_,null,{default:(0,e.withCtx)(({Component:t,route:n})=>[(0,e.createVNode)(e.Transition,{name:d.value,mode:`out-in`},{default:(0,e.withCtx)(()=>[((0,e.openBlock)(),(0,e.createBlock)(e.KeepAlive,{include:(0,e.unref)(i),max:(0,e.unref)(a)},[((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)(t),{key:n.path}))],1032,[`include`,`max`]))]),_:2},1032,[`name`])]),_:1})])]),_:1}),u.value?(0,e.renderSlot)(t.$slots,`footer`,{key:0}):(0,e.createCommentVNode)(``,!0)]),_:3}),(0,e.unref)(p).currentSecondMenus.value.length>0?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:0,class:(0,e.normalizeClass)([`sidebar-toggle`,[(0,e.unref)(o)?`dark-theme`:`light-theme`,{active:!m.value}]]),onClick:h},[(0,e.createElementVNode)(`span`,{class:(0,e.normalizeClass)([`collapse-arrow`,`toggle-icon`,m.value?`collapsed`:`expanded`])},[...r[2]||=[(0,e.createElementVNode)(`span`,{class:`arrow-line`},null,-1),(0,e.createElementVNode)(`span`,{class:`arrow-line`},null,-1)]],2)],2)):(0,e.createCommentVNode)(``,!0),(0,e.unref)(p).currentSecondMenus.value.length>0?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:1,class:(0,e.normalizeClass)([`right-sidebar-wrapper`,{collapsed:m.value}])},[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`right-sidebar`,[(0,e.unref)(o)?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`sidebar-header`,[(0,e.unref)(o)?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,Fe,[(0,e.unref)(p).activeFirstMenuItem.value?.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(g)),{key:0,name:(0,e.unref)(p).activeFirstMenuItem.value.meta.icon,size:20},null,8,[`name`])):(0,e.createCommentVNode)(``,!0)]),(0,e.createElementVNode)(`span`,Ie,(0,e.toDisplayString)((0,e.unref)(p).activeFirstMenuItem.value?.meta?.title||`菜单`),1)],2),(0,e.createElementVNode)(`div`,Le,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)((0,e.unref)(p).currentSecondMenus.value,t=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:t.path},[t.children&&t.children.length>0?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,Re,[(0,e.createElementVNode)(`div`,ze,[t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(g)),{key:0,name:t.meta.icon,size:16},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,null,(0,e.toDisplayString)(t.meta?.title),1)]),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.children,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.path,class:(0,e.normalizeClass)([`menu-item sub-item`,{active:(0,e.unref)(p).isMenuItemActive(t.path)}]),onClick:n=>(0,e.unref)(p).handleSecondMenuClick(t)},[t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(g)),{key:0,name:t.meta.icon,size:16},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,Ve,(0,e.toDisplayString)(t.meta?.title),1)],10,Be))),128))])):((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:1,class:(0,e.normalizeClass)([`menu-item`,{active:(0,e.unref)(p).isMenuItemActive(t.path)}]),onClick:n=>(0,e.unref)(p).handleSecondMenuClick(t)},[t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(g)),{key:0,name:t.meta.icon,size:18},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,Ue,(0,e.toDisplayString)(t.meta?.title),1)],10,He))],64))),128))])],2)],2)):(0,e.createCommentVNode)(``,!0)])])}}}),We={class:`card-layout-container`},Ge={class:`navbar-left`},Ke={class:`logo-container`},qe=[`src`,`width`,`height`],Je=[`src`,`width`,`height`],Ye={class:`brand-name`},Xe={class:`brand-title`},Ze={class:`brand-subtitle`},Qe={class:`drawer-content`},$e={class:`menu-grid`},et=[`onClick`],tt={key:0,class:`category-items`},nt=[`onClick`],rt={class:`item-title`},it={key:0,class:`submenu-items`},at={class:`submenu-title`},ot=[`onClick`],st={class:`item-title`},ct={class:`main-content-area`},lt={class:`page-content`},Q=D((0,e.defineComponent)({name:`CardLayout`,__name:`index`,setup(t){let i=b(),{cachedViews:a,maxCacheCount:o}=S(),s=(0,r.useRouter)(),c=i.isDark,l=(0,e.computed)(()=>i.menus.value),u=(0,e.computed)(()=>i.showTagsView.value),d=(0,e.computed)(()=>i.tagsViewHeight.value),f=(0,e.computed)(()=>i.showFooter.value),p=(0,e.computed)(()=>i.transitionName.value),m={...x,...i.brand},h=(0,e.ref)(!1),g=(0,e.ref)(null),_=()=>{g.value&&clearTimeout(g.value),g.value=setTimeout(()=>{h.value=!1},300)},v=()=>{g.value&&=(clearTimeout(g.value),null),h.value=!0},y=e=>{e.path&&(s.push(e.path),h.value=!1)},C=i.iconComponent??(0,e.defineComponent)({name:`LayoutIcon`,props:{name:String,size:{type:Number,default:18}},setup(t){return()=>(0,e.h)(`i`,{class:t.name,style:{fontSize:`${t.size}px`,display:`inline-flex`,alignItems:`center`,justifyContent:`center`}})}});return(0,e.onUnmounted)(()=>{g.value&&clearTimeout(g.value)}),(t,r)=>{let i=(0,e.resolveComponent)(`RouterView`);return(0,e.openBlock)(),(0,e.createElementBlock)(`div`,We,[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`top-navbar`,[(0,e.unref)(c)?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,Ge,[(0,e.createElementVNode)(`div`,{class:`hover-trigger-area`,onMouseenter:v,onMouseleave:_},[(0,e.renderSlot)(t.$slots,`menu-trigger`,{},()=>[r[0]||=(0,e.createElementVNode)(`div`,{class:`menu-indicator`},[(0,e.createElementVNode)(`span`,{class:`hamburger-icon`},[(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`)])],-1)],!0)],32),(0,e.renderSlot)(t.$slots,`logo`,{},()=>[(0,e.createElementVNode)(`div`,Ke,[r[1]||=(0,e.createElementVNode)(`div`,{class:`logo-glow`},null,-1),m.logoType===`video`?((0,e.openBlock)(),(0,e.createElementBlock)(`video`,{key:0,src:m.logoSrc,width:m.logoSize||36,height:m.logoSize||36,autoplay:``,loop:``,muted:``,playsinline:``,class:`logo-video`},` 您的浏览器不支持 video 标签。 `,8,qe)):((0,e.openBlock)(),(0,e.createElementBlock)(`img`,{key:1,src:m.logoSrc,width:m.logoSize||36,height:m.logoSize||36,class:`logo-video`},null,8,Je))]),(0,e.createElementVNode)(`div`,Ye,[(0,e.createElementVNode)(`span`,Xe,(0,e.toDisplayString)(m.name),1),(0,e.createElementVNode)(`span`,Ze,(0,e.toDisplayString)(m.subtitle),1)]),r[2]||=(0,e.createElementVNode)(`div`,{class:`navbar-divider`},null,-1)],!0)]),(0,e.renderSlot)(t.$slots,`header-extra`,{},void 0,!0)],2),u.value?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:0,class:`tags-view-container`,style:(0,e.normalizeStyle)({height:`${d.value}px`})},[(0,e.renderSlot)(t.$slots,`tags-view`,{},void 0,!0)],4)):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`drawer-menu`,[(0,e.unref)(c)?`dark-theme`:`light-theme`,{visible:h.value}]]),onMouseenter:v,onMouseleave:_},[(0,e.renderSlot)(t.$slots,`drawer-menu`,{},()=>[r[3]||=(0,e.createElementVNode)(`div`,{class:`drawer-header`},[(0,e.createElementVNode)(`div`,{class:`drawer-title`},[(0,e.createElementVNode)(`span`,{class:`grid-icon`},[(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`)]),(0,e.createElementVNode)(`span`,null,`功能导航`)])],-1),(0,e.createElementVNode)(`div`,Qe,[(0,e.createElementVNode)(`div`,$e,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(l.value,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.path,class:`menu-category`},[(0,e.createElementVNode)(`div`,{class:`category-header`,onClick:e=>y(t)},[t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(C)),{key:0,name:t.meta.icon,size:18},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,null,(0,e.toDisplayString)(t.meta?.title),1)],8,et),t.children&&t.children.length>0?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,tt,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.children,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.path,class:`menu-item`,onClick:e=>y(t)},[t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(C)),{key:0,name:t.meta.icon,size:16},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,rt,(0,e.toDisplayString)(t.meta?.title),1)],8,nt))),128)),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.children,t=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:`sub-`+t.path},[t.children&&t.children.length>0?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,it,[(0,e.createElementVNode)(`div`,at,(0,e.toDisplayString)(t.meta?.title),1),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.children,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.path,class:`menu-item submenu-item`,onClick:e=>y(t)},[t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(C)),{key:0,name:t.meta.icon,size:14},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,st,(0,e.toDisplayString)(t.meta?.title),1)],8,ot))),128))])):(0,e.createCommentVNode)(``,!0)],64))),128))])):(0,e.createCommentVNode)(``,!0)]))),128))])])],!0)],34),(0,e.createElementVNode)(`div`,ct,[(0,e.createVNode)((0,e.unref)(n.NLayout),{class:`content-layout`},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NLayoutContent),{class:`main-content p16px app-content`},{default:(0,e.withCtx)(()=>[(0,e.createElementVNode)(`div`,lt,[(0,e.createVNode)(i,null,{default:(0,e.withCtx)(({Component:t,route:n})=>[(0,e.createVNode)(e.Transition,{name:p.value,mode:`out-in`},{default:(0,e.withCtx)(()=>[((0,e.openBlock)(),(0,e.createBlock)(e.KeepAlive,{include:(0,e.unref)(a),max:(0,e.unref)(o)},[((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)(t),{key:n.path}))],1032,[`include`,`max`]))]),_:2},1032,[`name`])]),_:1})])]),_:1}),f.value?(0,e.renderSlot)(t.$slots,`footer`,{key:0},void 0,!0):(0,e.createCommentVNode)(``,!0)]),_:3})])])}}}),[[`__scopeId`,`data-v-3e4915c5`]]),ut={key:6,class:`layout-coming-soon`},dt=(0,e.defineComponent)({name:`C_LayoutContainer`,__name:`index`,setup(t){let n=_(),r=b(),i=(0,e.computed)(()=>n.layoutMode),a=r.isDark,o=(0,e.ref)(!1);return(0,e.provide)(`menuCollapse`,{isCollapsed:o,handleCollapsedChange:e=>{o.value=e}}),(t,n)=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{class:(0,e.normalizeClass)([`layout-container`,(0,e.unref)(a)?`dark-mode`:`light-mode`])},[i.value===`side`?((0,e.openBlock)(),(0,e.createBlock)(C,{key:0,collapsed:o.value,"onUpdate:collapsed":n[0]||=e=>o.value=e},(0,e.createSlots)({menu:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`menu`,{collapsed:o.value})]),header:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`header`)]),footer:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`footer`)]),_:2},[t.$slots.logo?{name:`logo`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`logo`)]),key:`0`}:void 0]),1032,[`collapsed`])):i.value===`top`?((0,e.openBlock)(),(0,e.createBlock)(N,{key:1},(0,e.createSlots)({_:2},[t.$slots.logo?{name:`logo`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`logo`)]),key:`0`}:void 0,t.$slots[`top-menu`]?{name:`menu`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`top-menu`)]),key:`1`}:void 0,t.$slots[`header-extra`]?{name:`header-extra`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`header-extra`)]),key:`2`}:void 0,t.$slots[`tags-view`]?{name:`tags-view`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`tags-view`)]),key:`3`}:void 0,t.$slots.footer?{name:`footer`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`footer`)]),key:`4`}:void 0]),1024)):i.value===`mix`?((0,e.openBlock)(),(0,e.createBlock)(Y,{key:2},(0,e.createSlots)({header:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`header`)]),_:2},[t.$slots.logo?{name:`logo`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`logo`)]),key:`0`}:void 0,t.$slots.footer?{name:`footer`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`footer`)]),key:`1`}:void 0]),1024)):i.value===`mix-top`?((0,e.openBlock)(),(0,e.createBlock)(X,{key:3},(0,e.createSlots)({_:2},[t.$slots.logo?{name:`logo`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`logo`)]),key:`0`}:void 0,t.$slots.brand?{name:`brand`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`brand`)]),key:`1`}:void 0,t.$slots[`top-menu`]?{name:`top-menu`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`top-menu`)]),key:`2`}:void 0,t.$slots[`header-extra`]?{name:`header-extra`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`header-extra`)]),key:`3`}:void 0,t.$slots[`tags-view`]?{name:`tags-view`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`tags-view`)]),key:`4`}:void 0,t.$slots.footer?{name:`footer`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`footer`)]),key:`5`}:void 0]),1024)):i.value===`reverse-horizontal-mix`?((0,e.openBlock)(),(0,e.createBlock)(Z,{key:4},(0,e.createSlots)({_:2},[t.$slots.logo?{name:`logo`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`logo`)]),key:`0`}:void 0,t.$slots[`top-menu`]?{name:`top-menu`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`top-menu`)]),key:`1`}:void 0,t.$slots[`header-extra`]?{name:`header-extra`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`header-extra`)]),key:`2`}:void 0,t.$slots[`tags-view`]?{name:`tags-view`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`tags-view`)]),key:`3`}:void 0,t.$slots.footer?{name:`footer`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`footer`)]),key:`4`}:void 0]),1024)):i.value===`card-layout`?((0,e.openBlock)(),(0,e.createBlock)(Q,{key:5},(0,e.createSlots)({_:2},[t.$slots[`menu-trigger`]?{name:`menu-trigger`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`menu-trigger`)]),key:`0`}:void 0,t.$slots.logo?{name:`logo`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`logo`)]),key:`1`}:void 0,t.$slots[`header-extra`]?{name:`header-extra`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`header-extra`)]),key:`2`}:void 0,t.$slots[`tags-view`]?{name:`tags-view`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`tags-view`)]),key:`3`}:void 0,t.$slots[`drawer-menu`]?{name:`drawer-menu`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`drawer-menu`)]),key:`4`}:void 0,t.$slots.footer?{name:`footer`,fn:(0,e.withCtx)(()=>[(0,e.renderSlot)(t.$slots,`footer`)]),key:`5`}:void 0]),1024)):((0,e.openBlock)(),(0,e.createElementBlock)(`div`,ut,[...n[1]||=[(0,e.createElementVNode)(`div`,{class:`coming-soon-content`},[(0,e.createElementVNode)(`div`,{class:`coming-soon-icon`},`🚧`),(0,e.createElementVNode)(`div`,{class:`coming-soon-title`},`布局开发中`)],-1)]]))],2))}}),ft=[{label:`左侧菜单(默认)`,value:`side`,disabled:!1,svg:`
|
|
2
2
|
<rect x="0" y="0" width="16" height="48" rx="1" fill="currentColor" fill-opacity="0.9"/>
|
|
3
3
|
<rect x="18" y="0" width="38" height="10" rx="1" fill="currentColor" fill-opacity="0.7"/>
|
|
4
4
|
<rect x="18" y="12" width="38" height="34" rx="1" fill="currentColor" fill-opacity="0.4"/>
|
|
@@ -24,7 +24,7 @@ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require
|
|
|
24
24
|
<rect x="32" y="0" width="24" height="20" rx="2" fill="currentColor" fill-opacity="0.7"/>
|
|
25
25
|
<rect x="0" y="24" width="24" height="20" rx="2" fill="currentColor" fill-opacity="0.6"/>
|
|
26
26
|
<rect x="32" y="24" width="24" height="20" rx="2" fill="currentColor" fill-opacity="0.4"/>
|
|
27
|
-
`}],
|
|
27
|
+
`}],pt={class:`settings-section`},mt={class:`preset-grid`},ht=[`aria-pressed`,`onClick`,`onKeydown`],gt={class:`preset-icon`},_t={class:`preset-name`},vt={class:`preset-color`},yt={class:`settings-section`},bt={class:`settings-section`},xt={class:`color-picker-wrapper`},St={class:`color-value`},Ct={class:`settings-section`},wt={class:`settings-section`},Tt={class:`flex items-center justify-between mb-2`},Et={class:`settings-section`},Dt={class:`settings-section`},Ot={class:`layout-grid`},kt=[`tabindex`,`aria-disabled`,`aria-pressed`,`onClick`,`onKeydown`],At={class:`layout-screenshot`},jt={class:`layout-svg`,viewBox:`0 0 56 48`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`},Mt=[`innerHTML`],Nt={class:`layout-label`},Pt={key:0,class:`badge-soon`},Ft={class:`settings-section menu-expand-section`,"data-menu-expand-mode":`built-in`},It={class:`settings-section`},Lt={class:`setting-item`},Rt={class:`setting-item`},zt={class:`setting-item`},Bt={class:`setting-item`},Vt={class:`settings-section`},Ht={class:`slider-item`},Ut={class:`slider-label`},Wt={class:`slider-value`},Gt={class:`slider-item`},Kt={class:`slider-label`},qt={class:`slider-value`},Jt={class:`settings-section`},Yt={class:`settings-section`},Xt={class:`action-buttons-grid`},Zt={class:`settings-section`},Qt={class:`action-buttons-grid`},$t={class:`settings-section`},en={class:`setting-item`},tn={class:`setting-item`},nn={class:`settings-section`},rn={class:`setting-item`},an={key:0,class:`mt-2`},on={class:`settings-section`},sn={class:`system-info`},cn={class:`info-item`},ln={class:`info-value`},un={class:`info-item`},dn={class:`info-value`},fn={class:`info-item`},pn={class:`info-value`},mn={class:`info-item`},hn={class:`info-value`},gn={class:`info-item`},_n={class:`info-value`},vn={class:`info-item`},yn={class:`info-value`},bn=D((0,e.defineComponent)({__name:`index`,props:{show:{type:Boolean,default:!1},showModifiers:{}},emits:[`update:show`],setup(t){let r=(0,n.useMessage)(),i=(0,n.useDialog)(),o=_(),s=(0,e.useModel)(t,`show`),c=(0,e.ref)(`appearance`),d=(0,e.ref)(!1),f=(0,e.ref)(!1),p=(0,e.ref)(!1),h=(0,e.ref)(`Robot Admin`),g=null,v=e=>{g&&=(document.body.removeChild(g),null);let t=document.createElement(`canvas`),n=t.getContext(`2d`);if(!n){r.error(`当前浏览器无法创建水印画布`);return}t.width=200,t.height=150,n.font=`14px Microsoft JhengHei`,n.fillStyle=`rgba(120, 120, 120, 0.15)`,n.rotate(-20*Math.PI/180),n.fillText(e,0,80),g=document.createElement(`div`),g.style.cssText=`
|
|
28
28
|
position: fixed;
|
|
29
29
|
top: 0;
|
|
30
30
|
left: 0;
|
|
@@ -35,5 +35,5 @@ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require
|
|
|
35
35
|
background-repeat: repeat;
|
|
36
36
|
z-index: 9999;
|
|
37
37
|
user-select: none;
|
|
38
|
-
`,document.body.appendChild(g)},v=()=>{g&&=(document.body.removeChild(g),null)};(0,e.watch)(d,e=>{document.documentElement.classList.toggle(`gray-mode`,e)}),(0,e.watch)(f,e=>{document.documentElement.classList.toggle(`color-weak-mode`,e)}),(0,e.watch)(m,e=>{e?_(h.value):v()}),(0,e.watch)(h,e=>{m.value&&_(e)});let y=(0,e.computed)(()=>{let e=navigator.userAgent,t=`Unknown`,n=`Unknown`;return e.includes(`Chrome`)?t=`Chrome`:e.includes(`Firefox`)?t=`Firefox`:e.includes(`Safari`)?t=`Safari`:e.includes(`Edge`)&&(t=`Edge`),e.includes(`Windows`)?n=`Windows`:e.includes(`Mac`)?n=`macOS`:e.includes(`Linux`)?n=`Linux`:e.includes(`Android`)?n=`Android`:e.includes(`iOS`)&&(n=`iOS`),{browser:t,os:n,resolution:`${window.screen.width} × ${window.screen.height}`,pixelRatio:window.devicePixelRatio+`x`,language:navigator.language,timezone:Intl.DateTimeFormat().resolvedOptions().timeZone}});(0,e.onUnmounted)(()=>{v()});let b=(e,t)=>{t||(o.layoutMode=e)},x=e=>o.primaryColor===e.primaryColor,S=e=>{o.applyPreset(e),r.success(`已应用「${e.name}」主题方案`)},C=()=>{o.themeMode=l.themeMode,o.primaryColor=l.primaryColor,o.borderRadius=l.borderRadius,o.transitionType=l.transitionType,o.enableTransition=l.enableTransition,r.success(`已恢复外观默认设置`)},w=()=>{o.layoutMode=l.layoutMode,o.menuExpandMode=l.menuExpandMode,o.fixedHeader=l.fixedHeader,o.showBreadcrumb=l.showBreadcrumb,o.showBreadcrumbIcon=l.showBreadcrumbIcon,o.showTagsView=l.showTagsView,o.tagsViewHeight=l.tagsViewHeight,o.tagsViewStyle=l.tagsViewStyle,o.showFooter=l.showFooter,o.sidebarWidth=l.sidebarWidth,o.sidebarCollapsedWidth=l.sidebarCollapsedWidth,o.headerHeight=l.headerHeight,r.success(`已恢复布局默认设置`)},T=()=>{i.warning({title:`确认重置`,content:`确定要恢复默认配置吗?此操作不可撤销。`,positiveText:`确认`,negativeText:`取消`,onPositiveClick:()=>{o.resetSettings(),r.success(`已恢复默认配置`)}})},E=()=>{i.warning({title:`确认清除`,content:`确定要清除浏览器缓存吗?`,positiveText:`确认`,negativeText:`取消`,onPositiveClick:()=>{let e=[`theme-mode`,`robot-admin-settings`];Object.keys(localStorage).forEach(t=>{e.includes(t)||localStorage.removeItem(t)}),sessionStorage.clear(),r.success(`缓存已清除`)}})},D=()=>{location.reload()},O=()=>{let e={settings:o.settingsState,gray:d.value,colorWeak:f.value,watermark:{enabled:m.value,text:h.value},exportTime:new Date().toISOString()},t=new Blob([JSON.stringify(e,null,2)],{type:`application/json`}),n=URL.createObjectURL(t),i=document.createElement(`a`);i.href=n,i.download=`robot-admin-config-${Date.now()}.json`,i.click(),URL.revokeObjectURL(n),r.success(`配置已导出`)},k=()=>{let e=document.createElement(`input`);e.type=`file`,e.accept=`application/json`,e.onchange=async e=>{let t=e.target.files?.[0];if(t)try{let e=await t.text(),n=JSON.parse(e);n.settings&&o.$patch(n.settings),n.gray!==void 0&&(d.value=n.gray),n.colorWeak!==void 0&&(f.value=n.colorWeak),n.watermark&&(m.value=n.watermark.enabled,h.value=n.watermark.text),r.success(`配置已导入`)}catch{r.error(`配置文件格式错误`)}},e.click()};return(t,r)=>((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(n.NDrawer),{show:s.value,"onUpdate:show":r[17]||=e=>s.value=e,width:380,placement:`right`,"trap-focus":!1,"block-scroll":!1},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NDrawerContent),{title:`⚙️ 布局配置`,closable:``},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NTabs),{value:c.value,"onUpdate:value":r[16]||=e=>c.value=e,animated:``,class:`settings-tabs`},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NTabPane),{name:`appearance`,tab:`🎨 外观`},{default:(0,e.withCtx)(()=>[(0,e.createElementVNode)(`div`,ct,[(0,e.createElementVNode)(`div`,lt,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)((0,e.unref)(a),t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.name,class:(0,e.normalizeClass)([`preset-card`,{active:x(t)}]),onClick:e=>S(t)},[(0,e.createElementVNode)(`div`,dt,(0,e.toDisplayString)(t.icon),1),(0,e.createElementVNode)(`div`,ft,(0,e.toDisplayString)(t.name),1),(0,e.createElementVNode)(`div`,pt,[(0,e.createElementVNode)(`span`,{class:`color-dot`,style:(0,e.normalizeStyle)({backgroundColor:t.primaryColor})},null,4)])],10,ut))),128))])]),(0,e.createElementVNode)(`div`,mt,[r[21]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`主题模式`,-1),(0,e.createVNode)((0,e.unref)(n.NRadioGroup),{value:(0,e.unref)(o).themeMode,"onUpdate:value":r[0]||=t=>(0,e.unref)(o).themeMode=t,class:`mode-group`},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`light`},{default:(0,e.withCtx)(()=>[...r[18]||=[(0,e.createElementVNode)(`span`,{class:`i-mdi:white-balance-sunny mr-1`},null,-1),(0,e.createTextVNode)(` 浅色 `,-1)]]),_:1}),(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`dark`},{default:(0,e.withCtx)(()=>[...r[19]||=[(0,e.createElementVNode)(`span`,{class:`i-mdi:moon-waning-crescent mr-1`},null,-1),(0,e.createTextVNode)(` 深色 `,-1)]]),_:1}),(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`auto`},{default:(0,e.withCtx)(()=>[...r[20]||=[(0,e.createElementVNode)(`span`,{class:`i-mdi:theme-light-dark mr-1`},null,-1),(0,e.createTextVNode)(` 自动 `,-1)]]),_:1})]),_:1},8,[`value`])]),(0,e.createElementVNode)(`div`,ht,[r[22]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`主题色`,-1),(0,e.createElementVNode)(`div`,gt,[(0,e.createVNode)((0,e.unref)(n.NColorPicker),{value:(0,e.unref)(o).primaryColor,"onUpdate:value":r[1]||=t=>(0,e.unref)(o).primaryColor=t,"show-alpha":!1,swatches:(0,e.unref)(u),actions:[`confirm`]},null,8,[`value`,`swatches`]),(0,e.createElementVNode)(`span`,_t,(0,e.toDisplayString)((0,e.unref)(o).primaryColor),1)])]),(0,e.createElementVNode)(`div`,vt,[r[26]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`圆角大小`,-1),(0,e.createVNode)((0,e.unref)(n.NRadioGroup),{value:(0,e.unref)(o).borderRadius,"onUpdate:value":r[2]||=t=>(0,e.unref)(o).borderRadius=t,class:`radius-group`},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`small`},{default:(0,e.withCtx)(()=>[...r[23]||=[(0,e.createTextVNode)(`小 (4px)`,-1)]]),_:1}),(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`medium`},{default:(0,e.withCtx)(()=>[...r[24]||=[(0,e.createTextVNode)(`中 (6px)`,-1)]]),_:1}),(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`large`},{default:(0,e.withCtx)(()=>[...r[25]||=[(0,e.createTextVNode)(`大 (8px)`,-1)]]),_:1})]),_:1},8,[`value`])]),(0,e.createElementVNode)(`div`,yt,[r[32]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`页面动画`,-1),(0,e.createElementVNode)(`div`,bt,[r[27]||=(0,e.createElementVNode)(`span`,{class:`text-sm`},`启用动画`,-1),(0,e.createVNode)((0,e.unref)(n.NSwitch),{value:(0,e.unref)(o).enableTransition,"onUpdate:value":r[3]||=t=>(0,e.unref)(o).enableTransition=t},null,8,[`value`])]),(0,e.createVNode)((0,e.unref)(n.NRadioGroup),{value:(0,e.unref)(o).transitionType,"onUpdate:value":r[4]||=t=>(0,e.unref)(o).transitionType=t,disabled:!(0,e.unref)(o).enableTransition,class:`transition-group`},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`fade`},{default:(0,e.withCtx)(()=>[...r[28]||=[(0,e.createTextVNode)(`淡入`,-1)]]),_:1}),(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`slide`},{default:(0,e.withCtx)(()=>[...r[29]||=[(0,e.createTextVNode)(`滑动`,-1)]]),_:1}),(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`zoom`},{default:(0,e.withCtx)(()=>[...r[30]||=[(0,e.createTextVNode)(`缩放`,-1)]]),_:1}),(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`none`},{default:(0,e.withCtx)(()=>[...r[31]||=[(0,e.createTextVNode)(`无`,-1)]]),_:1})]),_:1},8,[`value`,`disabled`])]),(0,e.createElementVNode)(`div`,xt,[(0,e.createVNode)((0,e.unref)(n.NButton),{block:``,secondary:``,onClick:C},{icon:(0,e.withCtx)(()=>[...r[33]||=[(0,e.createElementVNode)(`span`,{class:`i-mdi:restore`},null,-1)]]),default:(0,e.withCtx)(()=>[r[34]||=(0,e.createTextVNode)(` 恢复外观默认设置 `,-1)]),_:1})])]),_:1}),(0,e.createVNode)((0,e.unref)(n.NTabPane),{name:`layout`,tab:`📐 布局`},{default:(0,e.withCtx)(()=>[(0,e.createElementVNode)(`div`,St,[r[35]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`布局模式`,-1),(0,e.createElementVNode)(`div`,Ct,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)((0,e.unref)(st),t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.value,class:(0,e.normalizeClass)([`layout-item`,{active:(0,e.unref)(o).layoutMode===t.value,disabled:t.disabled}]),onClick:(0,e.withModifiers)(e=>b(t.value,t.disabled),[`stop`])},[(0,e.createElementVNode)(`div`,Tt,[((0,e.openBlock)(),(0,e.createElementBlock)(`svg`,Et,[(0,e.createElementVNode)(`g`,{innerHTML:t.svg},null,8,Dt)]))]),(0,e.createElementVNode)(`div`,Ot,[(0,e.createTextVNode)((0,e.toDisplayString)(t.label)+` `,1),t.disabled?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,kt,`敬请期待`)):(0,e.createCommentVNode)(``,!0)])],10,wt))),128))])]),(0,e.createElementVNode)(`div`,At,[r[38]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`菜单展开方式`,-1),(0,e.createVNode)((0,e.unref)(n.NRadioGroup),{value:(0,e.unref)(o).menuExpandMode,"onUpdate:value":r[5]||=t=>(0,e.unref)(o).menuExpandMode=t,class:`menu-expand-group`},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`inline`},{default:(0,e.withCtx)(()=>[...r[36]||=[(0,e.createTextVNode)(`传统展开`,-1)]]),_:1}),(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`panel`},{default:(0,e.withCtx)(()=>[...r[37]||=[(0,e.createTextVNode)(`右侧面板`,-1)]]),_:1})]),_:1},8,[`value`])]),(0,e.createElementVNode)(`div`,jt,[r[43]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`界面元素`,-1),(0,e.createElementVNode)(`div`,Mt,[r[39]||=(0,e.createElementVNode)(`span`,null,`显示面包屑`,-1),(0,e.createVNode)((0,e.unref)(n.NSwitch),{value:(0,e.unref)(o).showBreadcrumb,"onUpdate:value":r[6]||=t=>(0,e.unref)(o).showBreadcrumb=t},null,8,[`value`])]),(0,e.createElementVNode)(`div`,Nt,[r[40]||=(0,e.createElementVNode)(`span`,null,`显示面包屑图标`,-1),(0,e.createVNode)((0,e.unref)(n.NSwitch),{value:(0,e.unref)(o).showBreadcrumbIcon,"onUpdate:value":r[7]||=t=>(0,e.unref)(o).showBreadcrumbIcon=t,disabled:!(0,e.unref)(o).showBreadcrumb},null,8,[`value`,`disabled`])]),(0,e.createElementVNode)(`div`,Pt,[r[41]||=(0,e.createElementVNode)(`span`,null,`显示标签页`,-1),(0,e.createVNode)((0,e.unref)(n.NSwitch),{value:(0,e.unref)(o).showTagsView,"onUpdate:value":r[8]||=t=>(0,e.unref)(o).showTagsView=t},null,8,[`value`])]),(0,e.createElementVNode)(`div`,Ft,[r[42]||=(0,e.createElementVNode)(`span`,null,`显示页脚`,-1),(0,e.createVNode)((0,e.unref)(n.NSwitch),{value:(0,e.unref)(o).showFooter,"onUpdate:value":r[9]||=t=>(0,e.unref)(o).showFooter=t},null,8,[`value`])])]),(0,e.createElementVNode)(`div`,It,[r[46]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`尺寸调整`,-1),(0,e.createElementVNode)(`div`,Lt,[(0,e.createElementVNode)(`div`,Rt,[r[44]||=(0,e.createElementVNode)(`span`,null,`侧边栏宽度`,-1),(0,e.createElementVNode)(`span`,zt,(0,e.toDisplayString)((0,e.unref)(o).sidebarWidth)+`px`,1)]),(0,e.createVNode)((0,e.unref)(n.NSlider),{value:(0,e.unref)(o).sidebarWidth,"onUpdate:value":r[10]||=t=>(0,e.unref)(o).sidebarWidth=t,min:180,max:280,step:10,marks:{180:`180`,220:`220`,280:`280`}},null,8,[`value`])]),(0,e.createElementVNode)(`div`,Bt,[(0,e.createElementVNode)(`div`,Vt,[r[45]||=(0,e.createElementVNode)(`span`,null,`头部高度`,-1),(0,e.createElementVNode)(`span`,Ht,(0,e.toDisplayString)((0,e.unref)(o).headerHeight)+`px`,1)]),(0,e.createVNode)((0,e.unref)(n.NSlider),{value:(0,e.unref)(o).headerHeight,"onUpdate:value":r[11]||=t=>(0,e.unref)(o).headerHeight=t,min:48,max:64,step:4,marks:{48:`48`,56:`56`,64:`64`}},null,8,[`value`])])]),(0,e.createElementVNode)(`div`,Ut,[(0,e.createVNode)((0,e.unref)(n.NButton),{block:``,secondary:``,onClick:w},{icon:(0,e.withCtx)(()=>[...r[47]||=[(0,e.createElementVNode)(`span`,{class:`i-mdi:restore`},null,-1)]]),default:(0,e.withCtx)(()=>[r[48]||=(0,e.createTextVNode)(` 恢复布局默认设置 `,-1)]),_:1})])]),_:1}),(0,e.createVNode)((0,e.unref)(n.NTabPane),{name:`features`,tab:`🔧 功能`},{default:(0,e.withCtx)(()=>[(0,e.createElementVNode)(`div`,Wt,[r[53]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`缓存管理`,-1),(0,e.createElementVNode)(`div`,Gt,[(0,e.createVNode)((0,e.unref)(n.NButton),{secondary:``,onClick:E},{icon:(0,e.withCtx)(()=>[...r[49]||=[(0,e.createElementVNode)(`span`,{class:`i-mdi:delete-sweep`},null,-1)]]),default:(0,e.withCtx)(()=>[r[50]||=(0,e.createTextVNode)(` 清除缓存 `,-1)]),_:1}),(0,e.createVNode)((0,e.unref)(n.NButton),{secondary:``,onClick:D},{icon:(0,e.withCtx)(()=>[...r[51]||=[(0,e.createElementVNode)(`span`,{class:`i-mdi:refresh`},null,-1)]]),default:(0,e.withCtx)(()=>[r[52]||=(0,e.createTextVNode)(` 重新加载 `,-1)]),_:1})])]),(0,e.createElementVNode)(`div`,Kt,[r[60]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`配置管理`,-1),(0,e.createElementVNode)(`div`,qt,[(0,e.createVNode)((0,e.unref)(n.NButton),{secondary:``,onClick:O},{icon:(0,e.withCtx)(()=>[...r[54]||=[(0,e.createElementVNode)(`span`,{class:`i-mdi:download`},null,-1)]]),default:(0,e.withCtx)(()=>[r[55]||=(0,e.createTextVNode)(` 导出配置 `,-1)]),_:1}),(0,e.createVNode)((0,e.unref)(n.NButton),{secondary:``,onClick:k},{icon:(0,e.withCtx)(()=>[...r[56]||=[(0,e.createElementVNode)(`span`,{class:`i-mdi:upload`},null,-1)]]),default:(0,e.withCtx)(()=>[r[57]||=(0,e.createTextVNode)(` 导入配置 `,-1)]),_:1})]),(0,e.createVNode)((0,e.unref)(n.NButton),{block:``,type:`error`,secondary:``,class:`mt-2`,onClick:T},{icon:(0,e.withCtx)(()=>[...r[58]||=[(0,e.createElementVNode)(`span`,{class:`i-mdi:restore`},null,-1)]]),default:(0,e.withCtx)(()=>[r[59]||=(0,e.createTextVNode)(` 重置所有配置 `,-1)]),_:1})]),(0,e.createElementVNode)(`div`,Jt,[r[63]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`系统模式`,-1),(0,e.createElementVNode)(`div`,Yt,[r[61]||=(0,e.createElementVNode)(`div`,{class:`setting-label`},[(0,e.createElementVNode)(`span`,null,`灰色模式`),(0,e.createElementVNode)(`span`,{class:`setting-desc`},`用于哀悼日场景`)],-1),(0,e.createVNode)((0,e.unref)(n.NSwitch),{value:d.value,"onUpdate:value":r[12]||=e=>d.value=e},null,8,[`value`])]),(0,e.createElementVNode)(`div`,Xt,[r[62]||=(0,e.createElementVNode)(`div`,{class:`setting-label`},[(0,e.createElementVNode)(`span`,null,`色弱模式`),(0,e.createElementVNode)(`span`,{class:`setting-desc`},`提供无障碍访问支持`)],-1),(0,e.createVNode)((0,e.unref)(n.NSwitch),{value:f.value,"onUpdate:value":r[13]||=e=>f.value=e},null,8,[`value`])])]),(0,e.createElementVNode)(`div`,Zt,[r[65]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`水印设置`,-1),(0,e.createElementVNode)(`div`,Qt,[r[64]||=(0,e.createElementVNode)(`span`,null,`启用水印`,-1),(0,e.createVNode)((0,e.unref)(n.NSwitch),{value:m.value,"onUpdate:value":r[14]||=e=>m.value=e},null,8,[`value`])]),m.value?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,$t,[(0,e.createVNode)((0,e.unref)(n.NInput),{value:h.value,"onUpdate:value":r[15]||=e=>h.value=e,placeholder:`请输入水印内容`,size:`small`},null,8,[`value`])])):(0,e.createCommentVNode)(``,!0)]),(0,e.createElementVNode)(`div`,en,[r[72]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`系统信息`,-1),(0,e.createElementVNode)(`div`,tn,[(0,e.createElementVNode)(`div`,nn,[r[66]||=(0,e.createElementVNode)(`span`,{class:`info-label`},`浏览器`,-1),(0,e.createElementVNode)(`span`,rn,(0,e.toDisplayString)(y.value.browser),1)]),(0,e.createElementVNode)(`div`,an,[r[67]||=(0,e.createElementVNode)(`span`,{class:`info-label`},`操作系统`,-1),(0,e.createElementVNode)(`span`,on,(0,e.toDisplayString)(y.value.os),1)]),(0,e.createElementVNode)(`div`,sn,[r[68]||=(0,e.createElementVNode)(`span`,{class:`info-label`},`屏幕分辨率`,-1),(0,e.createElementVNode)(`span`,cn,(0,e.toDisplayString)(y.value.resolution),1)]),(0,e.createElementVNode)(`div`,ln,[r[69]||=(0,e.createElementVNode)(`span`,{class:`info-label`},`设备像素比`,-1),(0,e.createElementVNode)(`span`,un,(0,e.toDisplayString)(y.value.pixelRatio),1)]),(0,e.createElementVNode)(`div`,dn,[r[70]||=(0,e.createElementVNode)(`span`,{class:`info-label`},`语言`,-1),(0,e.createElementVNode)(`span`,fn,(0,e.toDisplayString)(y.value.language),1)]),(0,e.createElementVNode)(`div`,pn,[r[71]||=(0,e.createElementVNode)(`span`,{class:`info-label`},`时区`,-1),(0,e.createElementVNode)(`span`,mn,(0,e.toDisplayString)(y.value.timezone),1)])])])]),_:1})]),_:1},8,[`value`])]),_:1})]),_:1},8,[`show`]))}}),[[`__scopeId`,`data-v-b57a947e`]]),gn={class:`brand-logo__icon`},_n=[`src`,`width`,`height`],vn=[`src`,`width`,`height`],yn={class:`brand-logo__name`},bn={class:`brand-logo__title`},xn={key:0,class:`brand-logo__subtitle`},Sn={key:0,class:`brand-logo__divider`},Cn=C((0,e.defineComponent)({name:`BrandLogo`,__name:`index`,props:{showName:{type:Boolean,default:!1},showDivider:{type:Boolean,default:!1},size:{default:36},collapsed:{type:Boolean,default:!1},variant:{default:`horizontal`}},setup(t){let n=g(),r={..._,...n.brand};return(n,i)=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{class:(0,e.normalizeClass)([`brand-logo`,{"brand-logo--collapsed":t.collapsed,"brand-logo--horizontal":t.variant===`horizontal`}])},[(0,e.createElementVNode)(`div`,gn,[i[0]||=(0,e.createElementVNode)(`div`,{class:`brand-logo__glow`},null,-1),r.logoType===`video`&&r.logoSrc?((0,e.openBlock)(),(0,e.createElementBlock)(`video`,{key:0,src:r.logoSrc,width:t.size,height:t.size,autoplay:``,loop:``,muted:``,playsinline:``,class:`brand-logo__media`},null,8,_n)):r.logoSrc?((0,e.openBlock)(),(0,e.createElementBlock)(`img`,{key:1,src:r.logoSrc,width:t.size,height:t.size,class:`brand-logo__media`,alt:`Logo`},null,8,vn)):(0,e.createCommentVNode)(``,!0)]),t.showName&&!t.collapsed?((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:0},[(0,e.createElementVNode)(`div`,yn,[(0,e.createElementVNode)(`span`,bn,(0,e.toDisplayString)(r.name),1),r.subtitle?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,xn,(0,e.toDisplayString)(r.subtitle),1)):(0,e.createCommentVNode)(``,!0)]),t.showDivider?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,Sn)):(0,e.createCommentVNode)(``,!0)],64)):(0,e.createCommentVNode)(``,!0)],2))}}),[[`__scopeId`,`data-v-fd1c2eec`]]),wn={class:`icon-menu`},Tn=[`onClick`],En={class:`icon-menu__icon`},Dn={key:1,class:`icon-menu__fallback`},On={class:`icon-menu__label`},kn=C((0,e.defineComponent)({name:`IconMenu`,__name:`index`,props:{menus:{},active:{}},emits:[`click`],setup(t,{emit:n}){let r=n,i=g();return(n,a)=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,wn,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.menus,n=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:n.path,class:(0,e.normalizeClass)([`icon-menu__item`,{"icon-menu__item--active":t.active===n.path}]),onClick:e=>r(`click`,n)},[(0,e.createElementVNode)(`div`,En,[(0,e.unref)(i).iconComponent&&n.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(i).iconComponent),{key:0,name:n.meta.icon,size:20},null,8,[`name`])):((0,e.openBlock)(),(0,e.createElementBlock)(`span`,Dn,(0,e.toDisplayString)(n.meta?.title?.charAt(0)||`?`),1))]),(0,e.createElementVNode)(`div`,On,(0,e.toDisplayString)(n.meta?.title),1)],10,Tn))),128))]))}}),[[`__scopeId`,`data-v-f985d475`]]),An={class:`floating-menu__header`},jn={class:`floating-menu__brand`},Mn={class:`floating-menu__brand-title`},Nn={class:`floating-menu__brand-subtitle`},Pn={class:`floating-menu__list`},Fn={key:0,class:`floating-menu__group`},In={class:`floating-menu__group-title`},Ln=[`onClick`],Rn={class:`floating-menu__item-text`},zn=[`onClick`],Bn={class:`floating-menu__item-text`},Vn=C((0,e.defineComponent)({name:`FloatingMenu`,__name:`index`,props:{show:{type:Boolean},menuItem:{},isActive:{type:Function}},emits:[`click`],setup(t,{emit:n}){let r=n,i=g(),a={..._,...i.brand};return(n,o)=>((0,e.openBlock)(),(0,e.createBlock)(e.Transition,{name:`slide-fade`},{default:(0,e.withCtx)(()=>[t.show&&t.menuItem?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:0,class:(0,e.normalizeClass)([`floating-menu`,[(0,e.unref)(i).isDark.value?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,An,[(0,e.createElementVNode)(`div`,jn,[(0,e.createElementVNode)(`span`,Mn,(0,e.toDisplayString)(a.name),1),(0,e.createElementVNode)(`span`,Nn,(0,e.toDisplayString)(a.subtitle),1)])]),(0,e.createElementVNode)(`div`,Pn,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.menuItem.children,n=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:n.path},[n.children&&n.children.length>0?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,Fn,[(0,e.createElementVNode)(`div`,In,[(0,e.unref)(i).iconComponent&&n.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(i).iconComponent),{key:0,name:n.meta.icon,size:16},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,null,(0,e.toDisplayString)(n.meta?.title),1)]),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(n.children,n=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:n.path,class:(0,e.normalizeClass)([`floating-menu__item floating-menu__item--sub`,{active:t.isActive?.(n.path)}]),onClick:e=>r(`click`,n)},[(0,e.unref)(i).iconComponent&&n.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(i).iconComponent),{key:0,name:n.meta.icon,size:16},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,Rn,(0,e.toDisplayString)(n.meta?.title),1)],10,Ln))),128))])):((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:1,class:(0,e.normalizeClass)([`floating-menu__item`,{active:t.isActive?.(n.path)}]),onClick:e=>r(`click`,n)},[(0,e.unref)(i).iconComponent&&n.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(i).iconComponent),{key:0,name:n.meta.icon,size:18},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,Bn,(0,e.toDisplayString)(n.meta?.title),1)],10,zn))],64))),128))])],2)):(0,e.createCommentVNode)(``,!0)]),_:1}))}}),[[`__scopeId`,`data-v-0588c318`]]),Hn={class:`side-menu__header`},Un={class:`side-menu__header-icon`},Wn={class:`side-menu__header-title`},Gn={class:`side-menu__list`},Kn={key:0,class:`side-menu__group`},qn={class:`side-menu__group-label`},$=[`onClick`],Jn={class:`side-menu__item-text`},Yn=[`onClick`],Xn={class:`side-menu__item-text`},Zn=C((0,e.defineComponent)({name:`SideMenu`,__name:`index`,props:{menus:{},activeItem:{},isActive:{type:Function}},emits:[`click`],setup(t,{emit:n}){let r=n,i=g(),a=(0,e.ref)(!1);return(n,o)=>t.menus.length>0?((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:0},[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`side-menu-toggle`,[(0,e.unref)(i).isDark.value?`dark-theme`:`light-theme`,{active:!a.value}]]),onClick:o[0]||=e=>a.value=!a.value},[(0,e.createElementVNode)(`i`,{class:(0,e.normalizeClass)([`toggle-icon`,a.value?`i-ri:side-bar-line`:`i-ri:arrow-right-s-line`])},null,2)],2),(0,e.createVNode)(e.Transition,{name:`glass-slide`},{default:(0,e.withCtx)(()=>[a.value?(0,e.createCommentVNode)(``,!0):((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:0,class:(0,e.normalizeClass)([`side-menu`,[(0,e.unref)(i).isDark.value?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,Hn,[(0,e.createElementVNode)(`div`,Un,[(0,e.unref)(i).iconComponent&&t.activeItem?.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(i).iconComponent),{key:0,name:t.activeItem.meta.icon,size:17},null,8,[`name`])):(0,e.createCommentVNode)(``,!0)]),(0,e.createElementVNode)(`span`,Wn,(0,e.toDisplayString)(t.activeItem?.meta?.title||`菜单`),1)]),(0,e.createElementVNode)(`div`,Gn,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.menus,n=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:n.path},[n.children&&n.children.length>0?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,Kn,[(0,e.createElementVNode)(`div`,qn,[(0,e.unref)(i).iconComponent&&n.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(i).iconComponent),{key:0,name:n.meta.icon,size:14},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,null,(0,e.toDisplayString)(n.meta?.title),1)]),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(n.children,n=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:n.path,class:(0,e.normalizeClass)([`side-menu__item`,{active:t.isActive?.(n.path)}]),onClick:e=>r(`click`,n)},[(0,e.unref)(i).iconComponent&&n.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(i).iconComponent),{key:0,name:n.meta.icon,size:15},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,Jn,(0,e.toDisplayString)(n.meta?.title),1)],10,$))),128))])):((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:1,class:(0,e.normalizeClass)([`side-menu__item`,{active:t.isActive?.(n.path)}]),onClick:e=>r(`click`,n)},[(0,e.unref)(i).iconComponent&&n.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(i).iconComponent),{key:0,name:n.meta.icon,size:16},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,Xn,(0,e.toDisplayString)(n.meta?.title),1)],10,Yn))],64))),128))])],2))]),_:1})],64)):(0,e.createCommentVNode)(``,!0)}}),[[`__scopeId`,`data-v-1909f229`]]),Qn={class:`drawer-menu__content`},$n={class:`drawer-menu__grid`},er=[`onClick`],tr={key:0,class:`drawer-menu__items`},nr=[`onClick`],rr={class:`drawer-menu__item-text`},ir={key:0,class:`drawer-menu__sub-items`},ar={class:`drawer-menu__sub-title`},or=[`onClick`],sr={class:`drawer-menu__item-text`},cr=C((0,e.defineComponent)({name:`DrawerMenu`,__name:`index`,props:{menus:{},show:{type:Boolean}},setup(t){let n=g(),i=(0,r.useRouter)(),a=(0,e.inject)(h,{show:()=>{},startHide:()=>{},hide:()=>{}}),o=e=>{e.path&&(i.push(e.path),a.hide())};return(r,i)=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{class:(0,e.normalizeClass)([`drawer-menu`,[(0,e.unref)(n).isDark.value?`dark-theme`:`light-theme`,{visible:t.show}]]),onMouseenter:i[0]||=t=>(0,e.unref)(a).show(),onMouseleave:i[1]||=t=>(0,e.unref)(a).startHide()},[i[2]||=(0,e.createElementVNode)(`div`,{class:`drawer-menu__header`},[(0,e.createElementVNode)(`div`,{class:`drawer-menu__title`},[(0,e.createElementVNode)(`span`,{class:`grid-icon`},[(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`)]),(0,e.createElementVNode)(`span`,null,`功能导航`)])],-1),(0,e.createElementVNode)(`div`,Qn,[(0,e.createElementVNode)(`div`,$n,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.menus,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.path,class:`drawer-menu__category`},[(0,e.createElementVNode)(`div`,{class:`drawer-menu__category-header`,onClick:e=>o(t)},[(0,e.unref)(n).iconComponent&&t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(n).iconComponent),{key:0,name:t.meta.icon,size:18},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,null,(0,e.toDisplayString)(t.meta?.title),1)],8,er),t.children&&t.children.length>0?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,tr,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.children,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.path,class:`drawer-menu__item`,onClick:e=>o(t)},[(0,e.unref)(n).iconComponent&&t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(n).iconComponent),{key:0,name:t.meta.icon,size:16},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,rr,(0,e.toDisplayString)(t.meta?.title),1)],8,nr))),128)),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.children,t=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:t.path},[t.children&&t.children.length>0?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,ir,[(0,e.createElementVNode)(`div`,ar,(0,e.toDisplayString)(t.meta?.title),1),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.children,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.path,class:`drawer-menu__item drawer-menu__item--sub`,onClick:e=>o(t)},[(0,e.unref)(n).iconComponent&&t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(n).iconComponent),{key:0,name:t.meta.icon,size:14},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,sr,(0,e.toDisplayString)(t.meta?.title),1)],8,or))),128))])):(0,e.createCommentVNode)(``,!0)],64))),128))])):(0,e.createCommentVNode)(``,!0)]))),128))])])],34))}}),[[`__scopeId`,`data-v-b0d3e73b`]]),lr=C((0,e.defineComponent)({name:`MenuTrigger`,__name:`index`,props:{show:{type:Boolean}},setup(t){let n=(0,e.inject)(h,{show:()=>{},startHide:()=>{},hide:()=>{}});return(t,r)=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{class:`menu-trigger`,onMouseenter:r[0]||=t=>(0,e.unref)(n).show(),onMouseleave:r[1]||=t=>(0,e.unref)(n).startHide()},[...r[2]||=[(0,e.createElementVNode)(`div`,{class:`menu-trigger__indicator`},[(0,e.createElementVNode)(`span`,{class:`hamburger-icon`},[(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`)])],-1)]],32))}}),[[`__scopeId`,`data-v-2c20af78`]]);function ur(e,t={}){let n=f(t);return n().syncCSSVariables(),n}exports.BORDER_RADIUS_MAP=s,exports.BrandLogo=Cn,exports.COLOR_SWATCHES=u,exports.C_CardLayout=Q,exports.CardLayout=Q,exports.C_LayoutContainer=ot,exports.C_MixLayout=q,exports.MixLayout=q,exports.C_MixTopLayout=X,exports.MixTopLayout=X,exports.C_ReverseHorizontalMixLayout=Z,exports.ReverseHorizontalMixLayout=Z,exports.C_SideLayout=y,exports.SideLayout=y,exports.C_TopLayout=M,exports.TopLayout=M,exports.DEFAULT_BRAND_CONFIG=_,exports.DEFAULT_SETTINGS=l,exports.DRAWER_HANDLER_KEY=h,exports.DrawerMenu=cr,exports.FloatingMenu=Vn,exports.IconMenu=kn,exports.LAYOUT_CONTEXT_KEY=m,exports.LAYOUT_MODES=o,exports.MenuTrigger=lr,exports.PRESET_COLORS=i,exports.ResponsiveMenu=w,exports.SettingsDrawer=hn,exports.SideMenu=Zn,exports.THEME_PRESETS=a,exports.TRANSITION_MAP=c,exports.adjustColor=d,exports.createSettingsStore=f,exports.setupLayout=ur,exports.useLayoutCache=v,exports.useLayoutContext=g,exports.useMenuSplit=N,exports.useSettingsStore=p;
|
|
38
|
+
`,document.body.appendChild(g)},y=()=>{g&&=(document.body.removeChild(g),null)};(0,e.watch)(d,e=>{document.documentElement.classList.toggle(`gray-mode`,e)}),(0,e.watch)(f,e=>{document.documentElement.classList.toggle(`color-weak-mode`,e)}),(0,e.watch)(p,e=>{e?v(h.value):y()}),(0,e.watch)(h,e=>{p.value&&v(e)});let b=(0,e.computed)(()=>{if(typeof navigator>`u`||typeof window>`u`)return{browser:`Unknown`,os:`Unknown`,resolution:`Unknown`,pixelRatio:`Unknown`,language:`Unknown`,timezone:`Unknown`};let e=navigator.userAgent,t=`Unknown`,n=`Unknown`;return e.includes(`Chrome`)?t=`Chrome`:e.includes(`Firefox`)?t=`Firefox`:e.includes(`Safari`)?t=`Safari`:e.includes(`Edge`)&&(t=`Edge`),e.includes(`Windows`)?n=`Windows`:e.includes(`Mac`)?n=`macOS`:e.includes(`Linux`)?n=`Linux`:e.includes(`Android`)?n=`Android`:e.includes(`iOS`)&&(n=`iOS`),{browser:t,os:n,resolution:`${window.screen.width} × ${window.screen.height}`,pixelRatio:window.devicePixelRatio+`x`,language:navigator.language,timezone:Intl.DateTimeFormat().resolvedOptions().timeZone}});(0,e.onUnmounted)(()=>{y()});let x=(e,t)=>{t||(o.layoutMode=e)},S=e=>o.primaryColor===e.primaryColor,C=e=>{o.applyPreset(e),r.success(`已应用「${e.name}」主题方案`)},w=async e=>{try{await o.updateThemeMode(e)}catch{r.error(`主题模式切换失败`)}},T=()=>{o.themeMode=l.themeMode,o.primaryColor=l.primaryColor,o.borderRadius=l.borderRadius,o.transitionType=l.transitionType,o.enableTransition=l.enableTransition,r.success(`已恢复外观默认设置`)},E=()=>{o.layoutMode=l.layoutMode,o.menuExpandMode=l.menuExpandMode,o.fixedHeader=l.fixedHeader,o.showBreadcrumb=l.showBreadcrumb,o.showBreadcrumbIcon=l.showBreadcrumbIcon,o.showTagsView=l.showTagsView,o.tagsViewHeight=l.tagsViewHeight,o.tagsViewStyle=l.tagsViewStyle,o.showFooter=l.showFooter,o.sidebarWidth=l.sidebarWidth,o.sidebarCollapsedWidth=l.sidebarCollapsedWidth,o.headerHeight=l.headerHeight,r.success(`已恢复布局默认设置`)},D=()=>{i.warning({title:`确认重置`,content:`确定要恢复默认配置吗?此操作不可撤销。`,positiveText:`确认`,negativeText:`取消`,onPositiveClick:()=>{o.resetSettings(),r.success(`已恢复默认配置`)}})},O=()=>{i.warning({title:`确认清除`,content:`确定要清除浏览器缓存吗?`,positiveText:`确认`,negativeText:`取消`,onPositiveClick:()=>{let e=[`theme-mode`,`robot-admin-settings`];Object.keys(localStorage).forEach(t=>{e.includes(t)||localStorage.removeItem(t)}),sessionStorage.clear(),r.success(`缓存已清除`)}})},k=()=>{location.reload()},A=()=>{let e={settings:o.settingsState,gray:d.value,colorWeak:f.value,watermark:{enabled:p.value,text:h.value},exportTime:new Date().toISOString()},t=new Blob([JSON.stringify(e,null,2)],{type:`application/json`}),n=URL.createObjectURL(t),i=document.createElement(`a`);i.href=n,i.download=`robot-admin-config-${Date.now()}.json`,i.click(),URL.revokeObjectURL(n),r.success(`配置已导出`)},j=()=>{let e=document.createElement(`input`);e.type=`file`,e.accept=`application/json`,e.onchange=async e=>{let t=e.target.files?.[0];if(t)try{let e=await t.text(),n=JSON.parse(e);if(!n||typeof n!=`object`||Array.isArray(n))throw TypeError(`配置文件根节点必须是对象`);let i=n;if(i.settings!==void 0){let e=m(i.settings);e.themeMode!==void 0&&(await o.updateThemeMode(e.themeMode),delete e.themeMode),o.$patch(e)}if(i.gray!==void 0){if(typeof i.gray!=`boolean`)throw TypeError(`gray`);d.value=i.gray}if(i.colorWeak!==void 0){if(typeof i.colorWeak!=`boolean`)throw TypeError(`colorWeak`);f.value=i.colorWeak}if(i.watermark!==void 0){if(!i.watermark||typeof i.watermark!=`object`||Array.isArray(i.watermark))throw TypeError(`watermark`);let e=i.watermark;if(typeof e.enabled!=`boolean`||typeof e.text!=`string`||e.text.length>200)throw TypeError(`watermark`);p.value=e.enabled,h.value=e.text}r.success(`配置已导入`)}catch{r.error(`配置文件格式错误`)}},e.click()};return(t,r)=>((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(n.NDrawer),{show:s.value,"onUpdate:show":r[16]||=e=>s.value=e,width:380,placement:`right`,"trap-focus":!0,"block-scroll":!0},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NDrawerContent),{title:`⚙️ 布局配置`,closable:``},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NTabs),{value:c.value,"onUpdate:value":r[15]||=e=>c.value=e,animated:``,class:`settings-tabs`},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NTabPane),{name:`appearance`,tab:`🎨 外观`},{default:(0,e.withCtx)(()=>[(0,e.createElementVNode)(`div`,pt,[(0,e.createElementVNode)(`div`,mt,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)((0,e.unref)(a),t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.name,class:(0,e.normalizeClass)([`preset-card`,{active:S(t)}]),role:`button`,tabindex:`0`,"aria-pressed":S(t),onClick:e=>C(t),onKeydown:[(0,e.withKeys)(e=>C(t),[`enter`]),(0,e.withKeys)((0,e.withModifiers)(e=>C(t),[`prevent`]),[`space`])]},[(0,e.createElementVNode)(`div`,gt,(0,e.toDisplayString)(t.icon),1),(0,e.createElementVNode)(`div`,_t,(0,e.toDisplayString)(t.name),1),(0,e.createElementVNode)(`div`,vt,[(0,e.createElementVNode)(`span`,{class:`color-dot`,style:(0,e.normalizeStyle)({backgroundColor:t.primaryColor})},null,4)])],42,ht))),128))])]),(0,e.createElementVNode)(`div`,yt,[r[20]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`主题模式`,-1),(0,e.createVNode)((0,e.unref)(n.NRadioGroup),{value:(0,e.unref)(o).themeMode,class:`mode-group`,"onUpdate:value":w},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`light`},{default:(0,e.withCtx)(()=>[...r[17]||=[(0,e.createElementVNode)(`span`,{class:`i-mdi:white-balance-sunny mr-1`},null,-1),(0,e.createTextVNode)(` 浅色 `,-1)]]),_:1}),(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`dark`},{default:(0,e.withCtx)(()=>[...r[18]||=[(0,e.createElementVNode)(`span`,{class:`i-mdi:moon-waning-crescent mr-1`},null,-1),(0,e.createTextVNode)(` 深色 `,-1)]]),_:1}),(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`system`},{default:(0,e.withCtx)(()=>[...r[19]||=[(0,e.createElementVNode)(`span`,{class:`i-mdi:theme-light-dark mr-1`},null,-1),(0,e.createTextVNode)(` 自动 `,-1)]]),_:1})]),_:1},8,[`value`])]),(0,e.createElementVNode)(`div`,bt,[r[21]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`主题色`,-1),(0,e.createElementVNode)(`div`,xt,[(0,e.createVNode)((0,e.unref)(n.NColorPicker),{value:(0,e.unref)(o).primaryColor,"onUpdate:value":r[0]||=t=>(0,e.unref)(o).primaryColor=t,"show-alpha":!1,swatches:(0,e.unref)(u),actions:[`confirm`]},null,8,[`value`,`swatches`]),(0,e.createElementVNode)(`span`,St,(0,e.toDisplayString)((0,e.unref)(o).primaryColor),1)])]),(0,e.createElementVNode)(`div`,Ct,[r[25]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`圆角大小`,-1),(0,e.createVNode)((0,e.unref)(n.NRadioGroup),{value:(0,e.unref)(o).borderRadius,"onUpdate:value":r[1]||=t=>(0,e.unref)(o).borderRadius=t,class:`radius-group`},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`small`},{default:(0,e.withCtx)(()=>[...r[22]||=[(0,e.createTextVNode)(`小 (4px)`,-1)]]),_:1}),(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`medium`},{default:(0,e.withCtx)(()=>[...r[23]||=[(0,e.createTextVNode)(`中 (6px)`,-1)]]),_:1}),(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`large`},{default:(0,e.withCtx)(()=>[...r[24]||=[(0,e.createTextVNode)(`大 (8px)`,-1)]]),_:1})]),_:1},8,[`value`])]),(0,e.createElementVNode)(`div`,wt,[r[31]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`页面动画`,-1),(0,e.createElementVNode)(`div`,Tt,[r[26]||=(0,e.createElementVNode)(`span`,{class:`text-sm`},`启用动画`,-1),(0,e.createVNode)((0,e.unref)(n.NSwitch),{value:(0,e.unref)(o).enableTransition,"onUpdate:value":r[2]||=t=>(0,e.unref)(o).enableTransition=t},null,8,[`value`])]),(0,e.createVNode)((0,e.unref)(n.NRadioGroup),{value:(0,e.unref)(o).transitionType,"onUpdate:value":r[3]||=t=>(0,e.unref)(o).transitionType=t,disabled:!(0,e.unref)(o).enableTransition,class:`transition-group`},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`fade`},{default:(0,e.withCtx)(()=>[...r[27]||=[(0,e.createTextVNode)(`淡入`,-1)]]),_:1}),(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`slide`},{default:(0,e.withCtx)(()=>[...r[28]||=[(0,e.createTextVNode)(`滑动`,-1)]]),_:1}),(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`zoom`},{default:(0,e.withCtx)(()=>[...r[29]||=[(0,e.createTextVNode)(`缩放`,-1)]]),_:1}),(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`none`},{default:(0,e.withCtx)(()=>[...r[30]||=[(0,e.createTextVNode)(`无`,-1)]]),_:1})]),_:1},8,[`value`,`disabled`])]),(0,e.createElementVNode)(`div`,Et,[(0,e.createVNode)((0,e.unref)(n.NButton),{block:``,secondary:``,onClick:T},{icon:(0,e.withCtx)(()=>[...r[32]||=[(0,e.createElementVNode)(`span`,{class:`i-mdi:restore`},null,-1)]]),default:(0,e.withCtx)(()=>[r[33]||=(0,e.createTextVNode)(` 恢复外观默认设置 `,-1)]),_:1})])]),_:1}),(0,e.createVNode)((0,e.unref)(n.NTabPane),{name:`layout`,tab:`📐 布局`},{default:(0,e.withCtx)(()=>[(0,e.createElementVNode)(`div`,Dt,[r[34]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`布局模式`,-1),(0,e.createElementVNode)(`div`,Ot,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)((0,e.unref)(ft),t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.value,class:(0,e.normalizeClass)([`layout-item`,{active:(0,e.unref)(o).layoutMode===t.value,disabled:t.disabled}]),role:`button`,tabindex:t.disabled?-1:0,"aria-disabled":t.disabled,"aria-pressed":(0,e.unref)(o).layoutMode===t.value,onClick:(0,e.withModifiers)(e=>x(t.value,t.disabled),[`stop`]),onKeydown:[(0,e.withKeys)((0,e.withModifiers)(e=>x(t.value,t.disabled),[`stop`]),[`enter`]),(0,e.withKeys)((0,e.withModifiers)(e=>x(t.value,t.disabled),[`stop`,`prevent`]),[`space`])]},[(0,e.createElementVNode)(`div`,At,[((0,e.openBlock)(),(0,e.createElementBlock)(`svg`,jt,[(0,e.createElementVNode)(`g`,{innerHTML:t.svg},null,8,Mt)]))]),(0,e.createElementVNode)(`div`,Nt,[(0,e.createTextVNode)((0,e.toDisplayString)(t.label)+` `,1),t.disabled?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,Pt,`敬请期待`)):(0,e.createCommentVNode)(``,!0)])],42,kt))),128))])]),(0,e.createElementVNode)(`div`,Ft,[r[37]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`菜单展开方式`,-1),(0,e.createVNode)((0,e.unref)(n.NRadioGroup),{value:(0,e.unref)(o).menuExpandMode,"onUpdate:value":r[4]||=t=>(0,e.unref)(o).menuExpandMode=t,class:`menu-expand-group`},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`inline`},{default:(0,e.withCtx)(()=>[...r[35]||=[(0,e.createTextVNode)(`传统展开`,-1)]]),_:1}),(0,e.createVNode)((0,e.unref)(n.NRadioButton),{value:`panel`},{default:(0,e.withCtx)(()=>[...r[36]||=[(0,e.createTextVNode)(`右侧面板`,-1)]]),_:1})]),_:1},8,[`value`])]),(0,e.createElementVNode)(`div`,It,[r[42]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`界面元素`,-1),(0,e.createElementVNode)(`div`,Lt,[r[38]||=(0,e.createElementVNode)(`span`,null,`显示面包屑`,-1),(0,e.createVNode)((0,e.unref)(n.NSwitch),{value:(0,e.unref)(o).showBreadcrumb,"onUpdate:value":r[5]||=t=>(0,e.unref)(o).showBreadcrumb=t},null,8,[`value`])]),(0,e.createElementVNode)(`div`,Rt,[r[39]||=(0,e.createElementVNode)(`span`,null,`显示面包屑图标`,-1),(0,e.createVNode)((0,e.unref)(n.NSwitch),{value:(0,e.unref)(o).showBreadcrumbIcon,"onUpdate:value":r[6]||=t=>(0,e.unref)(o).showBreadcrumbIcon=t,disabled:!(0,e.unref)(o).showBreadcrumb},null,8,[`value`,`disabled`])]),(0,e.createElementVNode)(`div`,zt,[r[40]||=(0,e.createElementVNode)(`span`,null,`显示标签页`,-1),(0,e.createVNode)((0,e.unref)(n.NSwitch),{value:(0,e.unref)(o).showTagsView,"onUpdate:value":r[7]||=t=>(0,e.unref)(o).showTagsView=t},null,8,[`value`])]),(0,e.createElementVNode)(`div`,Bt,[r[41]||=(0,e.createElementVNode)(`span`,null,`显示页脚`,-1),(0,e.createVNode)((0,e.unref)(n.NSwitch),{value:(0,e.unref)(o).showFooter,"onUpdate:value":r[8]||=t=>(0,e.unref)(o).showFooter=t},null,8,[`value`])])]),(0,e.createElementVNode)(`div`,Vt,[r[45]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`尺寸调整`,-1),(0,e.createElementVNode)(`div`,Ht,[(0,e.createElementVNode)(`div`,Ut,[r[43]||=(0,e.createElementVNode)(`span`,null,`侧边栏宽度`,-1),(0,e.createElementVNode)(`span`,Wt,(0,e.toDisplayString)((0,e.unref)(o).sidebarWidth)+`px`,1)]),(0,e.createVNode)((0,e.unref)(n.NSlider),{value:(0,e.unref)(o).sidebarWidth,"onUpdate:value":r[9]||=t=>(0,e.unref)(o).sidebarWidth=t,min:180,max:280,step:10,marks:{180:`180`,220:`220`,280:`280`}},null,8,[`value`])]),(0,e.createElementVNode)(`div`,Gt,[(0,e.createElementVNode)(`div`,Kt,[r[44]||=(0,e.createElementVNode)(`span`,null,`头部高度`,-1),(0,e.createElementVNode)(`span`,qt,(0,e.toDisplayString)((0,e.unref)(o).headerHeight)+`px`,1)]),(0,e.createVNode)((0,e.unref)(n.NSlider),{value:(0,e.unref)(o).headerHeight,"onUpdate:value":r[10]||=t=>(0,e.unref)(o).headerHeight=t,min:48,max:64,step:4,marks:{48:`48`,56:`56`,64:`64`}},null,8,[`value`])])]),(0,e.createElementVNode)(`div`,Jt,[(0,e.createVNode)((0,e.unref)(n.NButton),{block:``,secondary:``,onClick:E},{icon:(0,e.withCtx)(()=>[...r[46]||=[(0,e.createElementVNode)(`span`,{class:`i-mdi:restore`},null,-1)]]),default:(0,e.withCtx)(()=>[r[47]||=(0,e.createTextVNode)(` 恢复布局默认设置 `,-1)]),_:1})])]),_:1}),(0,e.createVNode)((0,e.unref)(n.NTabPane),{name:`features`,tab:`🔧 功能`},{default:(0,e.withCtx)(()=>[(0,e.createElementVNode)(`div`,Yt,[r[52]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`缓存管理`,-1),(0,e.createElementVNode)(`div`,Xt,[(0,e.createVNode)((0,e.unref)(n.NButton),{secondary:``,onClick:O},{icon:(0,e.withCtx)(()=>[...r[48]||=[(0,e.createElementVNode)(`span`,{class:`i-mdi:delete-sweep`},null,-1)]]),default:(0,e.withCtx)(()=>[r[49]||=(0,e.createTextVNode)(` 清除缓存 `,-1)]),_:1}),(0,e.createVNode)((0,e.unref)(n.NButton),{secondary:``,onClick:k},{icon:(0,e.withCtx)(()=>[...r[50]||=[(0,e.createElementVNode)(`span`,{class:`i-mdi:refresh`},null,-1)]]),default:(0,e.withCtx)(()=>[r[51]||=(0,e.createTextVNode)(` 重新加载 `,-1)]),_:1})])]),(0,e.createElementVNode)(`div`,Zt,[r[59]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`配置管理`,-1),(0,e.createElementVNode)(`div`,Qt,[(0,e.createVNode)((0,e.unref)(n.NButton),{secondary:``,onClick:A},{icon:(0,e.withCtx)(()=>[...r[53]||=[(0,e.createElementVNode)(`span`,{class:`i-mdi:download`},null,-1)]]),default:(0,e.withCtx)(()=>[r[54]||=(0,e.createTextVNode)(` 导出配置 `,-1)]),_:1}),(0,e.createVNode)((0,e.unref)(n.NButton),{secondary:``,onClick:j},{icon:(0,e.withCtx)(()=>[...r[55]||=[(0,e.createElementVNode)(`span`,{class:`i-mdi:upload`},null,-1)]]),default:(0,e.withCtx)(()=>[r[56]||=(0,e.createTextVNode)(` 导入配置 `,-1)]),_:1})]),(0,e.createVNode)((0,e.unref)(n.NButton),{block:``,type:`error`,secondary:``,class:`mt-2`,onClick:D},{icon:(0,e.withCtx)(()=>[...r[57]||=[(0,e.createElementVNode)(`span`,{class:`i-mdi:restore`},null,-1)]]),default:(0,e.withCtx)(()=>[r[58]||=(0,e.createTextVNode)(` 重置所有配置 `,-1)]),_:1})]),(0,e.createElementVNode)(`div`,$t,[r[62]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`系统模式`,-1),(0,e.createElementVNode)(`div`,en,[r[60]||=(0,e.createElementVNode)(`div`,{class:`setting-label`},[(0,e.createElementVNode)(`span`,null,`灰色模式`),(0,e.createElementVNode)(`span`,{class:`setting-desc`},`用于哀悼日场景`)],-1),(0,e.createVNode)((0,e.unref)(n.NSwitch),{value:d.value,"onUpdate:value":r[11]||=e=>d.value=e},null,8,[`value`])]),(0,e.createElementVNode)(`div`,tn,[r[61]||=(0,e.createElementVNode)(`div`,{class:`setting-label`},[(0,e.createElementVNode)(`span`,null,`色弱模式`),(0,e.createElementVNode)(`span`,{class:`setting-desc`},`提供无障碍访问支持`)],-1),(0,e.createVNode)((0,e.unref)(n.NSwitch),{value:f.value,"onUpdate:value":r[12]||=e=>f.value=e},null,8,[`value`])])]),(0,e.createElementVNode)(`div`,nn,[r[64]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`水印设置`,-1),(0,e.createElementVNode)(`div`,rn,[r[63]||=(0,e.createElementVNode)(`span`,null,`启用水印`,-1),(0,e.createVNode)((0,e.unref)(n.NSwitch),{value:p.value,"onUpdate:value":r[13]||=e=>p.value=e},null,8,[`value`])]),p.value?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,an,[(0,e.createVNode)((0,e.unref)(n.NInput),{value:h.value,"onUpdate:value":r[14]||=e=>h.value=e,placeholder:`请输入水印内容`,size:`small`},null,8,[`value`])])):(0,e.createCommentVNode)(``,!0)]),(0,e.createElementVNode)(`div`,on,[r[71]||=(0,e.createElementVNode)(`div`,{class:`section-title`},`系统信息`,-1),(0,e.createElementVNode)(`div`,sn,[(0,e.createElementVNode)(`div`,cn,[r[65]||=(0,e.createElementVNode)(`span`,{class:`info-label`},`浏览器`,-1),(0,e.createElementVNode)(`span`,ln,(0,e.toDisplayString)(b.value.browser),1)]),(0,e.createElementVNode)(`div`,un,[r[66]||=(0,e.createElementVNode)(`span`,{class:`info-label`},`操作系统`,-1),(0,e.createElementVNode)(`span`,dn,(0,e.toDisplayString)(b.value.os),1)]),(0,e.createElementVNode)(`div`,fn,[r[67]||=(0,e.createElementVNode)(`span`,{class:`info-label`},`屏幕分辨率`,-1),(0,e.createElementVNode)(`span`,pn,(0,e.toDisplayString)(b.value.resolution),1)]),(0,e.createElementVNode)(`div`,mn,[r[68]||=(0,e.createElementVNode)(`span`,{class:`info-label`},`设备像素比`,-1),(0,e.createElementVNode)(`span`,hn,(0,e.toDisplayString)(b.value.pixelRatio),1)]),(0,e.createElementVNode)(`div`,gn,[r[69]||=(0,e.createElementVNode)(`span`,{class:`info-label`},`语言`,-1),(0,e.createElementVNode)(`span`,_n,(0,e.toDisplayString)(b.value.language),1)]),(0,e.createElementVNode)(`div`,vn,[r[70]||=(0,e.createElementVNode)(`span`,{class:`info-label`},`时区`,-1),(0,e.createElementVNode)(`span`,yn,(0,e.toDisplayString)(b.value.timezone),1)])])])]),_:1})]),_:1},8,[`value`])]),_:1})]),_:1},8,[`show`]))}}),[[`__scopeId`,`data-v-99f8c69e`]]),xn={class:`brand-logo__icon`},Sn=[`src`,`width`,`height`],Cn=[`src`,`width`,`height`],wn={class:`brand-logo__name`},Tn={class:`brand-logo__title`},En={key:0,class:`brand-logo__subtitle`},Dn={key:0,class:`brand-logo__divider`},On=D((0,e.defineComponent)({name:`BrandLogo`,__name:`index`,props:{showName:{type:Boolean,default:!1},showDivider:{type:Boolean,default:!1},size:{default:36},collapsed:{type:Boolean,default:!1},variant:{default:`horizontal`}},setup(t){let n=b(),r={...x,...n.brand};return(n,i)=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{class:(0,e.normalizeClass)([`brand-logo`,{"brand-logo--collapsed":t.collapsed,"brand-logo--horizontal":t.variant===`horizontal`}])},[(0,e.createElementVNode)(`div`,xn,[i[0]||=(0,e.createElementVNode)(`div`,{class:`brand-logo__glow`},null,-1),r.logoType===`video`&&r.logoSrc?((0,e.openBlock)(),(0,e.createElementBlock)(`video`,{key:0,src:r.logoSrc,width:t.size,height:t.size,autoplay:``,loop:``,muted:``,playsinline:``,class:`brand-logo__media`},null,8,Sn)):r.logoSrc?((0,e.openBlock)(),(0,e.createElementBlock)(`img`,{key:1,src:r.logoSrc,width:t.size,height:t.size,class:`brand-logo__media`,alt:`Logo`},null,8,Cn)):(0,e.createCommentVNode)(``,!0)]),t.showName&&!t.collapsed?((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:0},[(0,e.createElementVNode)(`div`,wn,[(0,e.createElementVNode)(`span`,Tn,(0,e.toDisplayString)(r.name),1),r.subtitle?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,En,(0,e.toDisplayString)(r.subtitle),1)):(0,e.createCommentVNode)(``,!0)]),t.showDivider?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,Dn)):(0,e.createCommentVNode)(``,!0)],64)):(0,e.createCommentVNode)(``,!0)],2))}}),[[`__scopeId`,`data-v-fd1c2eec`]]),kn={class:`icon-menu`},An=[`onClick`],jn={class:`icon-menu__icon`},Mn={key:1,class:`icon-menu__fallback`},Nn={class:`icon-menu__label`},Pn=D((0,e.defineComponent)({name:`IconMenu`,__name:`index`,props:{menus:{},active:{}},emits:[`click`],setup(t,{emit:n}){let r=n,i=b();return(n,a)=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,kn,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.menus,n=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:n.path,class:(0,e.normalizeClass)([`icon-menu__item`,{"icon-menu__item--active":t.active===n.path}]),onClick:e=>r(`click`,n)},[(0,e.createElementVNode)(`div`,jn,[(0,e.unref)(i).iconComponent&&n.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(i).iconComponent),{key:0,name:n.meta.icon,size:20},null,8,[`name`])):((0,e.openBlock)(),(0,e.createElementBlock)(`span`,Mn,(0,e.toDisplayString)(n.meta?.title?.charAt(0)||`?`),1))]),(0,e.createElementVNode)(`div`,Nn,(0,e.toDisplayString)(n.meta?.title),1)],10,An))),128))]))}}),[[`__scopeId`,`data-v-f985d475`]]),Fn={class:`floating-menu__header`},In={class:`floating-menu__brand`},Ln={class:`floating-menu__brand-title`},Rn={class:`floating-menu__brand-subtitle`},zn={class:`floating-menu__list`},Bn={key:0,class:`floating-menu__group`},Vn={class:`floating-menu__group-title`},Hn=[`onClick`,`onKeydown`],Un={class:`floating-menu__item-text`},Wn=[`onClick`,`onKeydown`],Gn={class:`floating-menu__item-text`},Kn=D((0,e.defineComponent)({name:`FloatingMenu`,__name:`index`,props:{show:{type:Boolean},menuItem:{},isActive:{type:Function}},emits:[`click`],setup(t,{emit:n}){let r=n,i=b(),a={...x,...i.brand};return(n,o)=>((0,e.openBlock)(),(0,e.createBlock)(e.Transition,{name:`slide-fade`},{default:(0,e.withCtx)(()=>[t.show&&t.menuItem?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:0,class:(0,e.normalizeClass)([`floating-menu`,[(0,e.unref)(i).isDark.value?`dark-theme`:`light-theme`]]),role:`navigation`,"aria-label":`二级功能导航`},[(0,e.createElementVNode)(`div`,Fn,[(0,e.createElementVNode)(`div`,In,[(0,e.createElementVNode)(`span`,Ln,(0,e.toDisplayString)(a.name),1),(0,e.createElementVNode)(`span`,Rn,(0,e.toDisplayString)(a.subtitle),1)])]),(0,e.createElementVNode)(`div`,zn,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.menuItem.children,n=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:n.path},[n.children&&n.children.length>0?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,Bn,[(0,e.createElementVNode)(`div`,Vn,[(0,e.unref)(i).iconComponent&&n.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(i).iconComponent),{key:0,name:n.meta.icon,size:16},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,null,(0,e.toDisplayString)(n.meta?.title),1)]),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(n.children,n=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:n.path,class:(0,e.normalizeClass)([`floating-menu__item floating-menu__item--sub`,{active:t.isActive?.(n.path)}]),role:`link`,tabindex:`0`,onClick:e=>r(`click`,n),onKeydown:[(0,e.withKeys)(e=>r(`click`,n),[`enter`]),(0,e.withKeys)((0,e.withModifiers)(e=>r(`click`,n),[`prevent`]),[`space`])]},[(0,e.unref)(i).iconComponent&&n.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(i).iconComponent),{key:0,name:n.meta.icon,size:16},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,Un,(0,e.toDisplayString)(n.meta?.title),1)],42,Hn))),128))])):((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:1,class:(0,e.normalizeClass)([`floating-menu__item`,{active:t.isActive?.(n.path)}]),role:`link`,tabindex:`0`,onClick:e=>r(`click`,n),onKeydown:[(0,e.withKeys)(e=>r(`click`,n),[`enter`]),(0,e.withKeys)((0,e.withModifiers)(e=>r(`click`,n),[`prevent`]),[`space`])]},[(0,e.unref)(i).iconComponent&&n.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(i).iconComponent),{key:0,name:n.meta.icon,size:18},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,Gn,(0,e.toDisplayString)(n.meta?.title),1)],42,Wn))],64))),128))])],2)):(0,e.createCommentVNode)(``,!0)]),_:1}))}}),[[`__scopeId`,`data-v-3dc6f434`]]),qn={class:`side-menu__header`},Jn={class:`side-menu__header-icon`},Yn={class:`side-menu__header-title`},Xn={class:`side-menu__list`},Zn={key:0,class:`side-menu__group`},Qn={class:`side-menu__group-label`},$n=[`onClick`],er={class:`side-menu__item-text`},$=[`onClick`],tr={class:`side-menu__item-text`},nr=D((0,e.defineComponent)({name:`SideMenu`,__name:`index`,props:{menus:{},activeItem:{},isActive:{type:Function}},emits:[`click`],setup(t,{emit:n}){let r=n,i=b(),a=(0,e.ref)(!1);return(n,o)=>t.menus.length>0?((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:0},[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`side-menu-toggle`,[(0,e.unref)(i).isDark.value?`dark-theme`:`light-theme`,{active:!a.value}]]),onClick:o[0]||=e=>a.value=!a.value},[(0,e.createElementVNode)(`i`,{class:(0,e.normalizeClass)([`toggle-icon`,a.value?`i-ri:side-bar-line`:`i-ri:arrow-right-s-line`])},null,2)],2),(0,e.createVNode)(e.Transition,{name:`glass-slide`},{default:(0,e.withCtx)(()=>[a.value?(0,e.createCommentVNode)(``,!0):((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:0,class:(0,e.normalizeClass)([`side-menu`,[(0,e.unref)(i).isDark.value?`dark-theme`:`light-theme`]])},[(0,e.createElementVNode)(`div`,qn,[(0,e.createElementVNode)(`div`,Jn,[(0,e.unref)(i).iconComponent&&t.activeItem?.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(i).iconComponent),{key:0,name:t.activeItem.meta.icon,size:17},null,8,[`name`])):(0,e.createCommentVNode)(``,!0)]),(0,e.createElementVNode)(`span`,Yn,(0,e.toDisplayString)(t.activeItem?.meta?.title||`菜单`),1)]),(0,e.createElementVNode)(`div`,Xn,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.menus,n=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:n.path},[n.children&&n.children.length>0?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,Zn,[(0,e.createElementVNode)(`div`,Qn,[(0,e.unref)(i).iconComponent&&n.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(i).iconComponent),{key:0,name:n.meta.icon,size:14},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,null,(0,e.toDisplayString)(n.meta?.title),1)]),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(n.children,n=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:n.path,class:(0,e.normalizeClass)([`side-menu__item`,{active:t.isActive?.(n.path)}]),onClick:e=>r(`click`,n)},[(0,e.unref)(i).iconComponent&&n.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(i).iconComponent),{key:0,name:n.meta.icon,size:15},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,er,(0,e.toDisplayString)(n.meta?.title),1)],10,$n))),128))])):((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:1,class:(0,e.normalizeClass)([`side-menu__item`,{active:t.isActive?.(n.path)}]),onClick:e=>r(`click`,n)},[(0,e.unref)(i).iconComponent&&n.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(i).iconComponent),{key:0,name:n.meta.icon,size:16},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,tr,(0,e.toDisplayString)(n.meta?.title),1)],10,$))],64))),128))])],2))]),_:1})],64)):(0,e.createCommentVNode)(``,!0)}}),[[`__scopeId`,`data-v-1909f229`]]),rr=[`aria-hidden`],ir={class:`drawer-menu__content`},ar={class:`drawer-menu__grid`},or=[`onClick`,`onKeydown`],sr={key:0,class:`drawer-menu__items`},cr=[`onClick`,`onKeydown`],lr={class:`drawer-menu__item-text`},ur={key:0,class:`drawer-menu__sub-items`},dr={class:`drawer-menu__sub-title`},fr=[`onClick`,`onKeydown`],pr={class:`drawer-menu__item-text`},mr=D((0,e.defineComponent)({name:`DrawerMenu`,__name:`index`,props:{menus:{},show:{type:Boolean}},setup(t){let n=b(),i=(0,r.useRouter)(),a=(0,e.inject)(y,{show:()=>{},startHide:()=>{},hide:()=>{}}),o=e=>{e.path&&(i.push(e.path),a.hide())};return(r,i)=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{class:(0,e.normalizeClass)([`drawer-menu`,[(0,e.unref)(n).isDark.value?`dark-theme`:`light-theme`,{visible:t.show}]]),role:`navigation`,"aria-label":`功能导航`,"aria-hidden":!t.show,onMouseenter:i[0]||=t=>(0,e.unref)(a).show(),onMouseleave:i[1]||=t=>(0,e.unref)(a).startHide()},[i[2]||=(0,e.createElementVNode)(`div`,{class:`drawer-menu__header`},[(0,e.createElementVNode)(`div`,{class:`drawer-menu__title`},[(0,e.createElementVNode)(`span`,{class:`grid-icon`},[(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`)]),(0,e.createElementVNode)(`span`,null,`功能导航`)])],-1),(0,e.createElementVNode)(`div`,ir,[(0,e.createElementVNode)(`div`,ar,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.menus,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.path,class:`drawer-menu__category`},[(0,e.createElementVNode)(`div`,{class:`drawer-menu__category-header`,role:`link`,tabindex:`0`,onClick:e=>o(t),onKeydown:[(0,e.withKeys)(e=>o(t),[`enter`]),(0,e.withKeys)((0,e.withModifiers)(e=>o(t),[`prevent`]),[`space`])]},[(0,e.unref)(n).iconComponent&&t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(n).iconComponent),{key:0,name:t.meta.icon,size:18},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,null,(0,e.toDisplayString)(t.meta?.title),1)],40,or),t.children&&t.children.length>0?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,sr,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.children,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.path,class:`drawer-menu__item`,role:`link`,tabindex:`0`,onClick:e=>o(t),onKeydown:[(0,e.withKeys)(e=>o(t),[`enter`]),(0,e.withKeys)((0,e.withModifiers)(e=>o(t),[`prevent`]),[`space`])]},[(0,e.unref)(n).iconComponent&&t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(n).iconComponent),{key:0,name:t.meta.icon,size:16},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,lr,(0,e.toDisplayString)(t.meta?.title),1)],40,cr))),128)),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.children,t=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:t.path},[t.children&&t.children.length>0?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,ur,[(0,e.createElementVNode)(`div`,dr,(0,e.toDisplayString)(t.meta?.title),1),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.children,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:t.path,class:`drawer-menu__item drawer-menu__item--sub`,role:`link`,tabindex:`0`,onClick:e=>o(t),onKeydown:[(0,e.withKeys)(e=>o(t),[`enter`]),(0,e.withKeys)((0,e.withModifiers)(e=>o(t),[`prevent`]),[`space`])]},[(0,e.unref)(n).iconComponent&&t.meta?.icon?((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)((0,e.unref)(n).iconComponent),{key:0,name:t.meta.icon,size:14},null,8,[`name`])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,pr,(0,e.toDisplayString)(t.meta?.title),1)],40,fr))),128))])):(0,e.createCommentVNode)(``,!0)],64))),128))])):(0,e.createCommentVNode)(``,!0)]))),128))])])],42,rr))}}),[[`__scopeId`,`data-v-91d54a20`]]),hr=D((0,e.defineComponent)({name:`MenuTrigger`,__name:`index`,props:{show:{type:Boolean}},setup(t){let n=(0,e.inject)(y,{show:()=>{},startHide:()=>{},hide:()=>{}});return(t,r)=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{class:`menu-trigger`,onMouseenter:r[0]||=t=>(0,e.unref)(n).show(),onMouseleave:r[1]||=t=>(0,e.unref)(n).startHide()},[...r[2]||=[(0,e.createElementVNode)(`div`,{class:`menu-trigger__indicator`},[(0,e.createElementVNode)(`span`,{class:`hamburger-icon`},[(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`),(0,e.createElementVNode)(`span`)])],-1)]],32))}}),[[`__scopeId`,`data-v-2c20af78`]]);function gr(e,t={}){let n=g(t);return n().syncCSSVariables(),n}exports.BORDER_RADIUS_MAP=s,exports.BrandLogo=On,exports.COLOR_SWATCHES=u,exports.C_CardLayout=Q,exports.CardLayout=Q,exports.C_LayoutContainer=dt,exports.C_MixLayout=Y,exports.MixLayout=Y,exports.C_MixTopLayout=X,exports.MixTopLayout=X,exports.C_ReverseHorizontalMixLayout=Z,exports.ReverseHorizontalMixLayout=Z,exports.C_SideLayout=C,exports.SideLayout=C,exports.C_TopLayout=N,exports.TopLayout=N,exports.DEFAULT_BRAND_CONFIG=x,exports.DEFAULT_SETTINGS=l,exports.DRAWER_HANDLER_KEY=y,exports.DrawerMenu=mr,exports.FloatingMenu=Kn,exports.IconMenu=Pn,exports.LAYOUT_CONTEXT_KEY=v,exports.LAYOUT_MODES=o,exports.MenuTrigger=hr,exports.PRESET_COLORS=i,exports.ResponsiveMenu=O,exports.SettingsDrawer=bn,exports.SideMenu=nr,exports.THEME_PRESETS=a,exports.TRANSITION_MAP=c,exports.adjustColor=h,exports.createSettingsStore=g,exports.sanitizeSettingsPatch=m,exports.setupLayout=gr,exports.useLayoutCache=S,exports.useLayoutContext=b,exports.useMenuSplit=F,exports.useSettingsStore=_;
|
|
39
39
|
//# sourceMappingURL=index.cjs.map
|