@lumal/core 0.0.3-beta → 0.0.4-beta

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/{components-DCp2KGvo.js → components-B5Xd-iBK.js} +14 -6
  3. package/dist/components-CRxtQpsQ.cjs +2 -0
  4. package/dist/components.cjs +1 -1
  5. package/dist/components.js +1 -1
  6. package/dist/core.css +1 -1
  7. package/dist/index.cjs +1 -1
  8. package/dist/index.js +2 -2
  9. package/dist/{layout-B7yJhQXN.js → layout-DQzFKvly.js} +472 -445
  10. package/dist/layout-zJLDCf1c.cjs +1 -0
  11. package/dist/layout.cjs +1 -1
  12. package/dist/layout.js +1 -1
  13. package/dist/request.cjs +1 -1
  14. package/dist/request.js +89 -75
  15. package/dist/src/components/crud-table/LumalCrudTable.vue.d.ts.map +1 -1
  16. package/dist/src/components/schema-table/LumalSchemaTable.vue.d.ts.map +1 -1
  17. package/dist/src/components/schema-table/LumalSchemaTableCell.vue.d.ts.map +1 -1
  18. package/dist/src/layout/LumalGlobalSearch.vue.d.ts.map +1 -1
  19. package/dist/src/layout/LumalHeader.vue.d.ts +4 -4
  20. package/dist/src/layout/LumalHeader.vue.d.ts.map +1 -1
  21. package/dist/src/layout/LumalLayout.vue.d.ts.map +1 -1
  22. package/dist/src/layout/LumalRouterView.vue.d.ts.map +1 -1
  23. package/dist/src/layout/LumalSidebarMenuItem.vue.d.ts.map +1 -1
  24. package/dist/src/layout/LumalTabs.vue.d.ts.map +1 -1
  25. package/dist/src/layout/LumalTopNav.vue.d.ts.map +1 -1
  26. package/dist/src/layout/LumalTopNavMenuItem.vue.d.ts +1 -0
  27. package/dist/src/layout/LumalTopNavMenuItem.vue.d.ts.map +1 -1
  28. package/dist/src/request/client.d.ts.map +1 -1
  29. package/dist/src/request/types.d.ts +5 -3
  30. package/dist/src/request/types.d.ts.map +1 -1
  31. package/package.json +3 -3
  32. package/theme-chalk/index.scss +1 -0
  33. package/dist/components-oqKxhgFp.cjs +0 -2
  34. package/dist/layout-BgyM9WJi.cjs +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # @lumal/core
2
2
 
3
+ ## 0.0.4-beta (2026-10-20)
4
+
5
+ ### Patch Changes
6
+
7
+ - 落实 onRequest URL 改写契约,缓存、认证作用域、重复提交、错误报告及刷新重放使用最终请求上下文。
8
+ - 修复多根路由页面的 Transition/KeepAlive 切换,保留标签关闭、刷新与缓存淘汰生命周期;关闭动画不启用 out-in。
9
+ - 修复内容最大化的零宽度和表格插槽回显,统一导航、全屏等状态图标,补齐 radio-button 主题样式。
10
+ - Core 与图标依赖同步为 0.0.4-beta,minimal/request 保持轻量边界。
11
+
3
12
  ## 0.0.3-beta (2026-10-16)
4
13
 
5
14
  ### Minor Changes
@@ -729,7 +729,7 @@ var X = {
729
729
  style: b(t(e))
730
730
  }, [e.color ? (C(), c("span", Z)) : s("", !0), l("span", null, O(e.label), 1)], 4))), 128))])) : (C(), c("span", Q, O(e.display.text), 1));
731
731
  }
732
- }), [["__scopeId", "data-v-ad0cf9f4"]]);
732
+ }), [["__scopeId", "data-v-1569bd9d"]]);
733
733
  //#endregion
734
734
  //#region src/components/schema-table/normalize.ts
735
735
  function Me(e, t) {
@@ -782,10 +782,12 @@ var Fe = {
782
782
  }, We = [
783
783
  "disabled",
784
784
  "aria-label",
785
+ "title",
785
786
  "onClick"
786
787
  ], Ge = [
787
788
  "disabled",
788
789
  "aria-label",
790
+ "title",
789
791
  "onClick"
790
792
  ], Ke = {
791
793
  key: 1,
@@ -1097,13 +1099,15 @@ var Fe = {
1097
1099
  type: "button",
1098
1100
  disabled: r === 0,
1099
1101
  "aria-label": `上移${e.label}`,
1102
+ title: `上移${e.label}`,
1100
1103
  onClick: (t) => V(String(e.field), -1)
1101
- }, " ↑ ", 8, We), l("button", {
1104
+ }, [f(k(I), { name: "lumal:arrow-up" })], 8, We), l("button", {
1102
1105
  type: "button",
1103
1106
  disabled: r === ue.value.length - 1,
1104
1107
  "aria-label": `下移${e.label}`,
1108
+ title: `下移${e.label}`,
1105
1109
  onClick: (t) => V(String(e.field), 1)
1106
- }, " ↓ ", 8, Ge)]))], 40, He))), 128))])])])) : s("", !0)])) : s("", !0)
1110
+ }, [f(k(I), { name: "lumal:arrow-down" })], 8, Ge)]))], 40, He))), 128))])])])) : s("", !0)])) : s("", !0)
1107
1111
  ])) : s("", !0),
1108
1112
  n.error ? (C(), c("div", Ke, [l("span", null, O(xe.value), 1), l("button", {
1109
1113
  type: "button",
@@ -1186,6 +1190,7 @@ var Fe = {
1186
1190
  }, void 0, !0)]), f(k(_e), {
1187
1191
  visible: Ne(t, r),
1188
1192
  teleported: !0,
1193
+ role: "menu",
1189
1194
  trigger: "click",
1190
1195
  placement: "bottom-end",
1191
1196
  "popper-class": "lumal-schema-table__mobile-actions-popper",
@@ -1240,7 +1245,7 @@ var Fe = {
1240
1245
  ])])) : s("", !0)
1241
1246
  ], 512));
1242
1247
  }
1243
- }), [["__scopeId", "data-v-e0b97914"]]), Qe = /* @__PURE__ */ p({
1248
+ }), [["__scopeId", "data-v-3580df56"]]), Qe = /* @__PURE__ */ p({
1244
1249
  __name: "LumalCrudEditor",
1245
1250
  props: /*@__PURE__*/ h({
1246
1251
  beforeClose: {},
@@ -1946,7 +1951,10 @@ var st = { class: "lumal-crud-table__query-actions" }, ct = {
1946
1951
  title: e.toolbar?.fullscreenText ?? (H.value ? "退出全屏" : "全屏"),
1947
1952
  onClick: He
1948
1953
  }, {
1949
- default: P(() => [f(k(I), { name: H.value ? "lumal:fullscreen-exit" : "lumal:fullscreen" }, null, 8, ["name"])]),
1954
+ default: P(() => [f(k(I), {
1955
+ name: H.value ? "lumal:fullscreen-exit" : "lumal:fullscreen",
1956
+ morph: ""
1957
+ }, null, 8, ["name"])]),
1950
1958
  _: 1
1951
1959
  }, 8, ["aria-label", "title"])) : s("", !0)
1952
1960
  ])]),
@@ -2095,7 +2103,7 @@ var st = { class: "lumal-crud-table__query-actions" }, ct = {
2095
2103
  ])
2096
2104
  ], 512));
2097
2105
  }
2098
- }), [["__scopeId", "data-v-9c07c262"]]), _t = { class: "lumal-info-table__value" }, vt = /*#__PURE__*/ r(/* @__PURE__ */ p({
2106
+ }), [["__scopeId", "data-v-c86f2c66"]]), _t = { class: "lumal-info-table__value" }, vt = /*#__PURE__*/ r(/* @__PURE__ */ p({
2099
2107
  __name: "LumalInfoTable",
2100
2108
  props: {
2101
2109
  items: {},
@@ -0,0 +1,2 @@
1
+ const e=require("./composables-Dsl-todB.cjs"),t=require("./_plugin-vue_export-helper-BTmtiIyf.cjs");let n=require("vue"),r=require("@lumal/icons-vue"),i=require("element-plus");var a=(0,n.defineComponent)({__name:`LumalPagination`,props:(0,n.mergeModels)({total:{},pageSizes:{default:()=>[10,20,50,100]},disabled:{type:Boolean,default:!1}},{page:{default:1},pageModifiers:{},pageSize:{default:10},pageSizeModifiers:{}}),emits:(0,n.mergeModels)([`change`],[`update:page`,`update:pageSize`]),setup(e,{expose:t,emit:r}){let a=e,o=r,s=(0,n.useModel)(e,`page`),c=(0,n.useModel)(e,`pageSize`),l=(0,n.useTemplateRef)(`paginationRef`),u=(0,n.computed)(()=>Math.max(1,Math.ceil(a.total/c.value)));function d(e,t){o(`change`,{page:e,pageSize:t})}function f(e){if(a.disabled)return;let t=Math.min(Math.max(e,1),u.value);s.value=t,d(t,c.value)}function p(e){a.disabled||(c.value=e,s.value=1,d(1,e))}return t({getPaginationElement:()=>l.value?.$el,getPaginationInstance:()=>l.value}),(t,r)=>((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElPagination),{ref_key:`paginationRef`,ref:l,class:`lumal-pagination`,background:``,layout:`total, sizes, prev, pager, next, jumper`,"current-page":s.value,"page-size":c.value,"page-sizes":e.pageSizes,total:e.total,disabled:e.disabled,onCurrentChange:f,onSizeChange:p},null,8,[`current-page`,`page-size`,`page-sizes`,`total`,`disabled`]))}}),o=t.t(a,[[`__scopeId`,`data-v-d546f46b`]]);function s(e){return`lumal-schema-form-${e.replace(/[^\w-]/g,`-`)}`}function c(e,t){return typeof e==`function`?!!e(t):!!e}function l(e,t,n){return typeof e==`function`?e(t):e??n}function u(e,t){return!e.authority||t.canAccess?.(e.authority)!==!1}function d(e=[],t={}){let r=t.model??{};return e.filter(e=>e.field.trim()).map(e=>{let i={field:e.field,getValues:()=>r,mode:t.mode??`create`,model:r,setFieldValue:t.setFieldValue??(()=>void 0),value:r[e.field]},a=e.component??(e.dictionary||e.dictType?`select`:`input`),o=c(e.hidden,i),d=c(e.disabled,i),f=e.readonlyAuthority?t.canAccess?.(e.readonlyAuthority)===!1:!1,p=i.mode===`view`||f||c(e.readonly,i),m=!o&&a!==`hidden`&&u(e,t),h=l(e.componentProps,i,{}),g=typeof e.options==`function`?e.options(i):(0,n.unref)(e.options);return{...e,id:s(e.field),component:a,componentProps:{...h},description:l(e.description,i,``),disabled:d,help:l(e.help,i,``),options:g??[],required:c(e.required,i),readonly:p,renderable:m,rules:l(e.rules,i,[])}})}function f(e,t={}){return e.reduce((e,t)=>(!(t.field in e)&&t.defaultValue!==void 0&&(e[t.field]=t.defaultValue),e),{...t})}var p={key:0,class:`lumal-schema-form__readonly-value`},m={key:0,class:`lumal-schema-form__description`},h={key:1,class:`lumal-schema-form__help`},g=(0,n.defineComponent)({__name:`LumalSchemaForm`,props:(0,n.mergeModels)({canAccess:{},actionLayout:{default:`rowEnd`},actionPosition:{default:`right`},columns:{default:1},compact:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},gutter:{default:16},labelPosition:{default:`right`},labelWidth:{default:`auto`},loading:{type:Boolean,default:!1},mode:{default:`create`},resetText:{default:`重置`},schemas:{},scrollToFirstError:{type:Boolean,default:!0},showReset:{type:Boolean,default:!1},submitLoading:{type:Boolean,default:!1},submitOnEnter:{type:Boolean,default:!1},submitText:{default:`提交`},showActions:{type:Boolean,default:!1}},{modelValue:{default:()=>({})},modelModifiers:{}}),emits:(0,n.mergeModels)([`reset`,`submit`,`valuesChange`],[`update:modelValue`]),setup(t,{expose:r,emit:a}){let o=t,s=a,c=(0,n.useModel)(t,`modelValue`),l=(0,n.useTemplateRef)(`formRef`),u=i.ElLoading.directive,g=(0,n.shallowRef)(o.mode);(0,n.watch)(()=>o.mode,e=>{g.value=e});let _=(0,n.shallowRef)({...c.value}),v=(0,n.reactive)(f(d(o.schemas,{canAccess:o.canAccess,mode:g.value,model:c.value,setFieldValue:N}),c.value)),y=(0,n.computed)(()=>v),b=(0,n.shallowRef)([]);function x(){b.value=o.schemas.map(e=>(0,n.computed)(()=>d([e],{canAccess:o.canAccess,mode:g.value,model:v,setFieldValue:N})[0]));let e=f(d(o.schemas,{canAccess:o.canAccess,mode:g.value,model:v,setFieldValue:N}),v);Object.keys(e).forEach(t=>{Object.hasOwn(v,t)||(v[t]=e[t])})}(0,n.watch)(()=>o.schemas,x,{deep:!0,immediate:!0});let S=(0,n.computed)(()=>b.value.map(e=>e.value).filter(e=>!!e)),C=(0,n.computed)(()=>S.value.filter(e=>e.renderable));function w(e){let t=v,n=e;Object.keys(t).forEach(e=>{Object.hasOwn(n,e)||delete t[e]}),Object.assign(t,n)}(0,n.watch)(()=>c.value,w,{deep:!0});let{dictionaryMap:T}=e.i(()=>S.value.map(e=>e.dictionary??e.dictType));function E(e){let t=y.value[e];return typeof t==`number`||typeof t==`string`?t:t==null?``:String(t)}function D(e){let t=y.value[e];return Array.isArray(t)?t.filter(e=>typeof e==`boolean`||typeof e==`number`||typeof e==`string`):typeof t==`boolean`||typeof t==`number`||typeof t==`string`?t:``}function ee(e){let t=D(e);return Array.isArray(t)?t[0]??``:t}function te(e){let t=y.value[e];if(typeof t==`number`)return t;if(typeof t==`string`&&t.trim())return Number(t)}function ne(e){return!!y.value[e]}function re(e){let t=y.value[e];return Array.isArray(t)?t.filter(e=>typeof e==`number`||typeof e==`string`):[]}function ie(e){let t=y.value[e];if(t instanceof Date||typeof t==`number`||typeof t==`string`||Array.isArray(t)&&t.every(e=>e instanceof Date||typeof e==`number`||typeof e==`string`))return t}function O(e){return e.component===`datetime`?`datetime`:e.component===`daterange`?`daterange`:`date`}function ae(e){let t=y.value[e];if(typeof t==`boolean`||typeof t==`number`||typeof t==`string`||t&&typeof t==`object`)return t}function oe(e){return String(e.componentProps.type??`text`)}function se(e){return e.component===`daterange`?[`${e.id}-start`,`${e.id}-end`]:e.id}function ce(e){return e.component===`daterange`?[`${e.field}-start`,`${e.field}-end`]:e.field}function k(e){return o.disabled||e.disabled||e.readonly||g.value===`edit`&&!!e.editDisabled||!!e.componentProps.disabled}function A(e){return typeof e.span==`number`?Math.min(24,Math.max(1,e.span)):Math.floor(24/Math.max(1,o.columns))}function j(e){let t=e.dictionary??e.dictType;return t?T.value[t]??[]:e.options}function M(e){return e.componentProps}function le(e){let t=y.value[e.field];if(e.formatter)return e.formatter(t,y.value);let n=(Array.isArray(t)?t:[t]).map(t=>j(e).find(e=>String(e.value)===String(t))?.label??t).filter(e=>e!=null&&e!==``);return n.length>0?n.map(String).join(`, `):`-`}function ue(e,t){return{field:e,getValues:()=>y.value,mode:g.value,model:y.value,setFieldValue:N,value:t}}function N(e,t){v[e]=t;let n={...v};c.value=n,S.value.find(t=>t.field===e)?.onChange?.(t,ue(e,t)),s(`valuesChange`,n,[e])}function P(e,t){N(e,t)}async function F(){g.value===`view`||o.submitLoading||await me()&&s(`submit`,y.value)}function de(e){!o.submitOnEnter||e.isComposing||e.target?.tagName===`TEXTAREA`||(e.preventDefault(),F())}function fe(){he(),s(`reset`,y.value)}function I(e){return`field-${e.field}`}function pe(e){return`prefix-${e.field}`}function L(e){return`suffix-${e.field}`}function R(e){let t={...v,...e};w(t),c.value=t}function z(e){g.value=e}async function me(){try{return await l.value?.validate?.()!==!1}catch(e){if(o.scrollToFirstError&&e&&typeof e==`object`){let t=Object.keys(e)[0];t&&l.value?.scrollToField?.(t)}return!1}}function he(){l.value?.resetFields?.();let e=f(S.value,_.value);w(e),c.value=e}function ge(e){l.value?.clearValidate?.(e)}function _e(e){l.value?.scrollToField?.(e)}function ve(e){return(l.value?.$el)?.querySelector(`[data-field="${e}"] input, [data-field="${e}"] textarea, [data-field="${e}"] select, [data-field="${e}"] button`)??void 0}return r({clearValidate:ge,getFieldComponent:ve,getFormElement:()=>l.value?.$el,getFormInstance:()=>l.value,getValues:()=>y.value,resetFields:he,scrollToField:_e,setFieldValue:N,setMode:z,setValues:R,validate:me}),(e,r)=>(0,n.withDirectives)(((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElForm),{ref_key:`formRef`,ref:l,class:(0,n.normalizeClass)([`lumal-schema-form`,{"is-compact":o.compact}]),disabled:o.disabled,"label-position":o.labelPosition,"label-width":o.labelWidth,model:y.value,onKeydown:(0,n.withKeys)(de,[`enter`]),onSubmit:(0,n.withModifiers)(F,[`prevent`])},{default:(0,n.withCtx)(()=>[(0,n.createVNode)((0,n.unref)(i.ElRow),{class:`lumal-schema-form__row`,gutter:o.gutter,"data-columns":o.columns},{default:(0,n.withCtx)(()=>[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(C.value,t=>((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElCol),{key:t.field,span:A(t),class:(0,n.normalizeClass)({"is-full-span":A(t)===24})},{default:(0,n.withCtx)(()=>[(0,n.createVNode)((0,n.unref)(i.ElFormItem),{class:`lumal-schema-form__item`,label:t.label,prop:t.field,required:t.required,rules:t.rules,"data-field":t.field},{default:(0,n.withCtx)(()=>[(0,n.renderSlot)(e.$slots,pe(t),{model:y.value,schema:t,value:y.value[t.field]},void 0,!0),(0,n.renderSlot)(e.$slots,I(t),{model:y.value,schema:t,value:y.value[t.field]},()=>[g.value===`view`?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,p,(0,n.toDisplayString)(le(t)),1)):t.component===`textarea`?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElInput),(0,n.mergeProps)({key:1,ref_for:!0},M(t),{id:t.id,"model-value":E(t.field),name:t.field,placeholder:t.placeholder,disabled:k(t),required:t.required,type:`textarea`,"onUpdate:modelValue":e=>P(t.field,e)}),null,16,[`id`,`model-value`,`name`,`placeholder`,`disabled`,`required`,`onUpdate:modelValue`])):t.component===`select`?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElSelect),(0,n.mergeProps)({key:2,ref_for:!0},M(t),{id:t.id,"model-value":D(t.field),name:t.field,placeholder:t.placeholder,disabled:k(t),required:t.required,"onUpdate:modelValue":e=>P(t.field,e)}),{default:(0,n.withCtx)(()=>[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(j(t),e=>((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElOption),{key:String(e.value),label:e.label,value:e.value,disabled:e.disabled},null,8,[`label`,`value`,`disabled`]))),128))]),_:2},1040,[`id`,`model-value`,`name`,`placeholder`,`disabled`,`required`,`onUpdate:modelValue`])):t.component===`number`?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElInputNumber),(0,n.mergeProps)({key:3,ref_for:!0},M(t),{id:t.id,"model-value":te(t.field),name:t.field,placeholder:t.placeholder,disabled:k(t),"onUpdate:modelValue":e=>P(t.field,e)}),(0,n.createSlots)({_:2},[t.prefix?{name:`prefix`,fn:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(t.prefix),1)]),key:`0`}:void 0,t.suffix?{name:`suffix`,fn:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(t.suffix),1)]),key:`1`}:void 0]),1040,[`id`,`model-value`,`name`,`placeholder`,`disabled`,`onUpdate:modelValue`])):t.component===`switch`?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElSwitch),(0,n.mergeProps)({key:4,ref_for:!0},M(t),{"model-value":ne(t.field),name:t.field,disabled:k(t),"onUpdate:modelValue":e=>P(t.field,e)}),null,16,[`model-value`,`name`,`disabled`,`onUpdate:modelValue`])):t.component===`date`||t.component===`datetime`||t.component===`daterange`?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElDatePicker),(0,n.mergeProps)({key:5,ref_for:!0},M(t),{id:se(t),"model-value":ie(t.field),name:ce(t),placeholder:t.placeholder,disabled:k(t),type:O(t),"onUpdate:modelValue":e=>P(t.field,e)}),null,16,[`id`,`model-value`,`name`,`placeholder`,`disabled`,`type`,`onUpdate:modelValue`])):t.component===`radio`?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElRadioGroup),(0,n.mergeProps)({key:6,ref_for:!0},M(t),{"model-value":ee(t.field),name:t.field,disabled:k(t),"onUpdate:modelValue":e=>P(t.field,e)}),{default:(0,n.withCtx)(()=>[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(j(t),e=>((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElRadio),{key:String(e.value),value:e.value,disabled:e.disabled},{default:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(e.label),1)]),_:2},1032,[`value`,`disabled`]))),128))]),_:2},1040,[`model-value`,`name`,`disabled`,`onUpdate:modelValue`])):t.component===`checkbox`?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElCheckboxGroup),(0,n.mergeProps)({key:7,ref_for:!0},M(t),{"model-value":re(t.field),name:t.field,disabled:k(t),"onUpdate:modelValue":e=>P(t.field,e)}),{default:(0,n.withCtx)(()=>[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(j(t),e=>((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElCheckbox),{key:String(e.value),value:e.value,disabled:e.disabled},{default:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(e.label),1)]),_:2},1032,[`value`,`disabled`]))),128))]),_:2},1040,[`model-value`,`name`,`disabled`,`onUpdate:modelValue`])):t.component===`tree-select`?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElTreeSelect),(0,n.mergeProps)({key:8,ref_for:!0},M(t),{id:t.id,"model-value":ae(t.field),name:t.field,placeholder:t.placeholder,disabled:k(t),"onUpdate:modelValue":e=>P(t.field,e)}),null,16,[`id`,`model-value`,`name`,`placeholder`,`disabled`,`onUpdate:modelValue`])):t.component===`upload`?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElUpload),(0,n.mergeProps)({key:9,ref_for:!0},M(t),{disabled:k(t)}),{default:(0,n.withCtx)(()=>[(0,n.createVNode)((0,n.unref)(i.ElButton),{type:`primary`},{default:(0,n.withCtx)(()=>[...r[0]||=[(0,n.createTextVNode)(` 上传 `,-1)]]),_:1})]),_:1},16,[`disabled`])):((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElInput),(0,n.mergeProps)({key:10,ref_for:!0},M(t),{id:t.id,"model-value":E(t.field),name:t.field,type:oe(t),placeholder:t.placeholder,disabled:k(t),required:t.required,"onUpdate:modelValue":e=>P(t.field,e)}),(0,n.createSlots)({_:2},[t.prepend?{name:`prepend`,fn:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(t.prepend),1)]),key:`0`}:void 0,t.append?{name:`append`,fn:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(t.append),1)]),key:`1`}:void 0,t.prefix?{name:`prefix`,fn:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(t.prefix),1)]),key:`2`}:void 0,t.suffix?{name:`suffix`,fn:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(t.suffix),1)]),key:`3`}:void 0]),1040,[`id`,`model-value`,`name`,`type`,`placeholder`,`disabled`,`required`,`onUpdate:modelValue`]))],!0),(0,n.renderSlot)(e.$slots,L(t),{model:y.value,schema:t,value:y.value[t.field]},void 0,!0),t.description?((0,n.openBlock)(),(0,n.createElementBlock)(`p`,m,(0,n.toDisplayString)(t.description),1)):(0,n.createCommentVNode)(``,!0),t.help?((0,n.openBlock)(),(0,n.createElementBlock)(`p`,h,(0,n.toDisplayString)(t.help),1)):(0,n.createCommentVNode)(``,!0)]),_:2},1032,[`label`,`prop`,`required`,`rules`,`data-field`])]),_:2},1032,[`span`,`class`]))),128))]),_:3},8,[`gutter`,`data-columns`]),t.showActions&&g.value!==`view`?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:0,class:(0,n.normalizeClass)([`lumal-schema-form__actions`,[`is-${t.actionLayout}`,`is-${t.actionPosition}`]])},[t.showReset?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElButton),{key:0,"native-type":`button`,disabled:t.submitLoading,onClick:fe},{default:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(t.resetText),1)]),_:1},8,[`disabled`])):(0,n.createCommentVNode)(``,!0),(0,n.createVNode)((0,n.unref)(i.ElButton),{type:`primary`,"native-type":`submit`,loading:t.submitLoading,disabled:t.submitLoading},{default:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(t.submitText),1)]),_:1},8,[`loading`,`disabled`])],2)):(0,n.createCommentVNode)(``,!0)]),_:3},8,[`class`,`disabled`,`label-position`,`label-width`,`model`])),[[(0,n.unref)(u),o.loading]])}}),_=t.t(g,[[`__scopeId`,`data-v-a2c0ed84`]]);function v(e){return e==null||typeof e==`boolean`||typeof e==`number`||typeof e==`string`||Array.isArray(e)&&e.every(e=>typeof e==`boolean`||typeof e==`number`||typeof e==`string`)}function y(t,n,r=e.f(t)){let i=(Array.isArray(n)?n:[n]).map((e,t)=>{let n=r.get(String(e));return{...n?.color?{color:n.color}:{},key:`${String(e)}-${t}`,label:n?.label??String(e)}});return i.some(e=>e.color)?i:[]}function b(t,n,r,i=[],a){let o=t[n.field],s=n.formatter?.(o,t,r)??o;return s==null||s===``||Array.isArray(s)&&s.length===0?{tags:[],text:n.emptyText}:n.formatter?{tags:[],text:String(s)}:i.length>0&&v(s)?{tags:y(i,s,a),text:e.p(i,s,a)}:{tags:[],text:Array.isArray(s)?s.map(e=>String(e)).join(`, `):String(s)}}var x={key:0,class:`lumal-schema-table__dictionary-tags`},S={key:0,class:`lumal-schema-table__dictionary-dot`,"aria-hidden":`true`},C={key:1},w=(0,n.defineComponent)({__name:`LumalSchemaTableCell`,props:{display:{}},setup(e){function t(e){return e.color?{"--lumal-dictionary-color":e.color}:void 0}return(r,i)=>e.display.tags.length?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,x,[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.display.tags,e=>((0,n.openBlock)(),(0,n.createElementBlock)(`span`,{key:e.key,class:`lumal-schema-table__dictionary-tag`,style:(0,n.normalizeStyle)(t(e))},[e.color?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,S)):(0,n.createCommentVNode)(``,!0),(0,n.createElementVNode)(`span`,null,(0,n.toDisplayString)(e.label),1)],4))),128))])):((0,n.openBlock)(),(0,n.createElementBlock)(`span`,C,(0,n.toDisplayString)(e.display.text),1))}}),T=t.t(w,[[`__scopeId`,`data-v-1569bd9d`]]);function E(e,t){return typeof e==`function`?!!e(t):!!e}function D(e,t){return!e.authority||t.canAccess?.(e.authority)!==!1}function ee(e=[],t={}){let n={rows:t.rows??[]};return e.map(e=>({...e,field:e.field.trim()})).filter(e=>e.field).map(e=>({...e,align:e.align??`left`,componentProps:e.componentProps??{},emptyText:e.emptyText??`-`,renderable:(typeof e.hidden==`function`||!E(e.hidden,n))&&D(e,t)}))}var te={key:0,class:`lumal-schema-table__toolbar`},ne={key:0,class:`lumal-schema-table__toolbar-title`},re={key:1,class:`lumal-schema-table__toolbar-content`},ie={key:2,class:`lumal-schema-table__toolbar-tools`},O={key:0,class:`lumal-schema-table__column-settings`},ae={class:`lumal-schema-table__column-settings-trigger`,"aria-label":`列设置`,title:`列设置`},oe={class:`lumal-schema-table__column-options`},se=[`draggable`,`onDragstart`,`onDrop`],ce={key:0,class:`lumal-schema-table__column-order-actions`},k=[`disabled`,`aria-label`,`title`,`onClick`],A=[`disabled`,`aria-label`,`title`,`onClick`],j={key:1,class:`lumal-schema-table__error`,role:`alert`},M={key:2,class:`lumal-schema-table__scroll`},le={class:`lumal-schema-table__actions lumal-schema-table__actions--desktop`},ue=[`aria-expanded`,`onClick`,`onKeydown`],N={key:3,class:`lumal-schema-table__pagination`},P=(0,n.defineComponent)({__name:`LumalSchemaTable`,props:(0,n.mergeModels)({actionLabel:{default:`操作`},actionWidth:{default:160},autoResize:{type:Boolean,default:!0},canAccess:{},cellClassName:{},columnResizable:{type:Boolean,default:!0},columnSettings:{},columns:{},defaultExpandAll:{type:Boolean},emptyText:{default:`暂无数据`},error:{type:[Error,String,Boolean],default:!1},errorText:{default:`数据加载失败`},headerCellClassName:{},indexLabel:{default:`#`},indexWidth:{default:64},loading:{type:Boolean,default:!1},mobileActionLabel:{default:`更多`},mobileActionWidth:{default:72},pageSizes:{default:()=>[10,20,50,100]},pagination:{type:Boolean,default:!1},rowClassName:{},rowKey:{type:[String,Function],default:`id`},rows:{default:()=>[]},retryText:{default:`重新加载`},scaleColumnWidth:{type:Boolean,default:!0},selection:{type:Boolean,default:!1},showColumnSettings:{type:Boolean,default:!1},showIndex:{type:Boolean,default:!1},tableProps:{default:()=>({})},total:{default:0},treeProps:{}},{page:{default:1},pageModifiers:{},pageSize:{default:10},pageSizeModifiers:{}}),emits:(0,n.mergeModels)([`currentChange`,`expandChange`,`filterChange`,`pageChange`,`retry`,`rowClick`,`selectionChange`,`sortChange`],[`update:page`,`update:pageSize`]),setup(t,{expose:a,emit:s}){let c=t,l=s,u=(0,n.useModel)(t,`page`),d=(0,n.useModel)(t,`pageSize`),f=i.ElLoading.directive,p=(0,n.useTemplateRef)(`containerRef`),m=(0,n.useTemplateRef)(`tableRef`),h=(0,n.shallowRef)(new Set),g=(0,n.shallowRef)([]),_=(0,n.shallowRef)([]),v=(0,n.shallowRef)([]),y=(0,n.shallowRef)(typeof window<`u`&&window.innerWidth<=768),x=(0,n.shallowRef)(null),S,C,w=``,E=(0,n.computed)(()=>ee(c.columns,{canAccess:c.canAccess})),D=(0,n.computed)(()=>{let e=g.value;if(e.length===0)return E.value;let t=new Map(e.map((e,t)=>[e,t]));return[...E.value].sort((e,n)=>(t.get(String(e.field))??2**53-1)-(t.get(String(n.field))??2**53-1))}),P=(0,n.computed)(()=>D.value.filter(e=>e.renderable&&!h.value.has(String(e.field)))),F=(0,n.computed)(()=>D.value.filter(e=>e.renderable&&!e.fixed&&e.configurable!==!1)),de=(0,n.computed)(()=>[...P.value].reverse().find(e=>!e.fixed)?.field),{dictionaryMap:fe}=e.i(()=>E.value.map(e=>e.dictionary??e.dictType)),I=(0,n.computed)(()=>new Map(E.value.map(t=>{let n=V(t);return[String(t.field),e.f(n)]}))),pe=(0,n.computed)(()=>new Map(c.rows.map((e,t)=>[e,t]))),L=(0,n.computed)(()=>{if(typeof c.rowKey!=`function`)return c.rowKey;let e=c.rowKey,t=pe.value;return n=>String(e(n,t.get(n)??-1))}),R=(0,n.computed)(()=>c.pagination&&c.total>0),z=(0,n.computed)(()=>c.showColumnSettings||c.columnSettings?.enabled),me=(0,n.computed)(()=>y.value?c.mobileActionWidth:c.actionWidth),he=(0,n.computed)(()=>c.error instanceof Error?c.error.message||c.errorText:typeof c.error==`string`?c.error:c.errorText),ge=(0,n.computed)(()=>c.defaultExpandAll??!!c.tableProps.defaultExpandAll),_e=(0,n.computed)(()=>c.treeProps??c.tableProps.treeProps??{children:`children`,hasChildren:`hasChildren`});function ve(e){let t=new Set(h.value);if(t.has(e))t.delete(e);else{if(F.value.filter(e=>!t.has(String(e.field))).length<=1)return;t.add(e)}h.value=t,B(),(0,n.nextTick)(()=>m.value?.doLayout?.())}function ye(){h.value=new Set,g.value=E.value.map(e=>String(e.field)),B(),(0,n.nextTick)(()=>m.value?.doLayout?.())}function be(e,t){let r=F.value.map(e=>String(e.field)),i=r.indexOf(e),a=i+t;if(i<0||a<0||a>=r.length)return;let o=r[a],s=D.value.map(e=>String(e.field)),c=s.indexOf(e),l=s.indexOf(o);s.splice(c,1),s.splice(l,0,e),g.value=s,B(),(0,n.nextTick)(()=>m.value?.doLayout?.())}function xe(e){w=e}function Se(e){if(!w||w===e){w=``;return}let t=D.value.map(e=>String(e.field)),r=t.indexOf(w),i=t.indexOf(e);r>=0&&i>=0&&(t.splice(r,1),t.splice(i,0,w),g.value=t,B(),(0,n.nextTick)(()=>m.value?.doLayout?.())),w=``}function B(){let e=c.columnSettings?.storageKey;if(!(!e||typeof localStorage>`u`))try{localStorage.setItem(e,JSON.stringify({hidden:[...h.value],order:g.value}))}catch{}}function Ce(){g.value=E.value.map(e=>String(e.field));let e=c.columnSettings?.storageKey;if(!(!e||typeof localStorage>`u`))try{let t=JSON.parse(localStorage.getItem(e)??`{}`),n=new Set(E.value.map(e=>String(e.field)));h.value=new Set((t.hidden??[]).filter(e=>n.has(e))),g.value=[...(t.order??[]).filter(e=>n.has(e)),...[...n].filter(e=>!(t.order??[]).includes(e))]}catch{ye()}}function V(e){let t=e.dictionary??e.dictType;return t?fe.value[t]??[]:(0,n.unref)(e.options)??[]}function H(e,t,n){return typeof t.hidden==`function`&&!!t.hidden({rows:c.rows,row:e,index:n})}function U(e,t,n){return b(e,t,n,V(t),I.value.get(String(t.field)))}function W(e){return(t,n,r,i)=>H(t,e,i)?``:U(t,e,i).text}let G=(0,n.computed)(()=>new Map(E.value.map(e=>[String(e.field),W(e)])));function K(e){return G.value.get(String(e.field))}function q(e){if(!c.scaleColumnWidth)return;let t=e.minWidth??e.componentProps.minWidth;return e.field===de.value?t??e.width??e.componentProps.width:t}function J(e){if(!(!c.scaleColumnWidth||e.field===de.value))return e.width}function Y(e,t){if(typeof c.rowKey==`function`)return c.rowKey(e,t);let n=c.rowKey?e[c.rowKey]:void 0;return typeof n==`string`||typeof n==`number`?n:void 0}function X(e,t){let n=Y(e,t);return n===void 0?`index:${t}`:`row:${typeof n}:${n}`}function we(e,t){return x.value===X(e,t)}function Te(e,t,n){let r=X(e,t);n?x.value=r:x.value===r&&(x.value=null)}function Ee(e,t){let n=X(e,t);x.value=x.value===n?null:n}function Z(){x.value=null}function Q(e){_.value=e,v.value=e.map(e=>Y(e,pe.value.get(e)??-1)).filter(e=>e!==void 0),l(`selectionChange`,e,v.value)}function De(e){l(`pageChange`,e)}function Oe(e,t,n){l(`rowClick`,e,t,n)}function $(e,t){l(`currentChange`,e,t)}function ke(e,t){l(`expandChange`,e,t)}function Ae(){if(typeof window>`u`)return;let e=window.innerWidth<=768;e!==y.value&&(y.value=e,e||Z(),(0,n.nextTick)(()=>m.value?.doLayout?.()))}function je(e){e.key===`Escape`&&Z()}function Me(){!c.autoResize||typeof ResizeObserver>`u`||!p.value||(S=new ResizeObserver(()=>{C&&clearTimeout(C),C=setTimeout(()=>{C=void 0,m.value?.doLayout?.()})}),S.observe(p.value))}function Ne(){S?.disconnect(),S=void 0,C&&=(clearTimeout(C),void 0)}return(0,n.watch)(()=>c.autoResize,()=>{Ne(),Me()}),(0,n.watch)(()=>[c.columns.map(e=>String(e.field)).join(`\0`),c.columnSettings?.storageKey],Ce),(0,n.watch)(x,e=>{typeof document>`u`||(document.removeEventListener(`keydown`,je),e!==null&&document.addEventListener(`keydown`,je))}),(0,n.onMounted)(()=>{Ce(),Ae(),Me(),window.addEventListener(`resize`,Ae)}),(0,n.onBeforeUnmount)(()=>{Ne(),window.removeEventListener(`resize`,Ae),document.removeEventListener(`keydown`,je)}),a({clearSelection:()=>m.value?.clearSelection?.(),doLayout:()=>m.value?.doLayout?.(),getSelectedRowKeys:()=>[...v.value],getSelectedRows:()=>[..._.value],getColumnOrder:()=>[...g.value],getExportData:(e=c.rows)=>{let t=new Map(e.map((e,t)=>[e,t]));return{columns:P.value.map(e=>({field:String(e.field),label:e.label})),rows:e.map(e=>P.value.map(n=>U(e,n,t.get(e)??-1).text))}},getVisibleColumns:()=>[...P.value],resetColumnSettings:ye,getTableElement:()=>m.value?.$el,getTableInstance:()=>m.value,toggleRowSelection:(e,t)=>m.value?.toggleRowSelection?.(e,t)}),(e,a)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{ref_key:`containerRef`,ref:p,class:`lumal-schema-table`},[e.$slots[`toolbar-title`]||e.$slots.toolbar||e.$slots[`toolbar-tools`]||z.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,te,[e.$slots[`toolbar-title`]?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,ne,[(0,n.renderSlot)(e.$slots,`toolbar-title`,{},void 0,!0)])):(0,n.createCommentVNode)(``,!0),e.$slots.toolbar?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,re,[(0,n.renderSlot)(e.$slots,`toolbar`,{},void 0,!0)])):(0,n.createCommentVNode)(``,!0),e.$slots[`toolbar-tools`]||z.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,ie,[(0,n.renderSlot)(e.$slots,`toolbar-tools`,{},void 0,!0),z.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,O,[(0,n.createElementVNode)(`details`,null,[(0,n.createElementVNode)(`summary`,ae,[(0,n.createVNode)((0,n.unref)(r.LumalIcon),{name:`lumal:grid`})]),(0,n.createElementVNode)(`div`,oe,[(0,n.createElementVNode)(`div`,{class:`lumal-schema-table__column-options-header`},[a[6]||=(0,n.createElementVNode)(`strong`,null,`列设置`,-1),(0,n.createElementVNode)(`button`,{type:`button`,onClick:ye},` 恢复默认 `)]),((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(F.value,(e,o)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:String(e.field),class:`lumal-schema-table__column-option`,draggable:t.columnSettings?.reorderable!==!1,onDragstart:t=>xe(String(e.field)),onDragover:a[0]||=(0,n.withModifiers)(()=>{},[`prevent`]),onDrop:t=>Se(String(e.field))},[(0,n.createVNode)((0,n.unref)(i.ElCheckbox),{"model-value":!h.value.has(String(e.field)),"onUpdate:modelValue":t=>ve(String(e.field))},{default:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(e.label),1)]),_:2},1032,[`model-value`,`onUpdate:modelValue`]),t.columnSettings?.reorderable===!1?(0,n.createCommentVNode)(``,!0):((0,n.openBlock)(),(0,n.createElementBlock)(`span`,ce,[(0,n.createElementVNode)(`button`,{type:`button`,disabled:o===0,"aria-label":`上移${e.label}`,title:`上移${e.label}`,onClick:t=>be(String(e.field),-1)},[(0,n.createVNode)((0,n.unref)(r.LumalIcon),{name:`lumal:arrow-up`})],8,k),(0,n.createElementVNode)(`button`,{type:`button`,disabled:o===F.value.length-1,"aria-label":`下移${e.label}`,title:`下移${e.label}`,onClick:t=>be(String(e.field),1)},[(0,n.createVNode)((0,n.unref)(r.LumalIcon),{name:`lumal:arrow-down`})],8,A)]))],40,se))),128))])])])):(0,n.createCommentVNode)(``,!0)])):(0,n.createCommentVNode)(``,!0)])):(0,n.createCommentVNode)(``,!0),t.error?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,j,[(0,n.createElementVNode)(`span`,null,(0,n.toDisplayString)(he.value),1),(0,n.createElementVNode)(`button`,{type:`button`,onClick:a[1]||=e=>l(`retry`)},(0,n.toDisplayString)(t.retryText),1)])):((0,n.openBlock)(),(0,n.createElementBlock)(`div`,M,[(0,n.withDirectives)(((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElTable),(0,n.mergeProps)({ref_key:`tableRef`,ref:m},t.tableProps,{class:`lumal-schema-table__body`,data:t.rows,"row-key":L.value,"empty-text":t.emptyText,"row-class-name":t.rowClassName,"cell-class-name":t.cellClassName,"header-cell-class-name":t.headerCellClassName,"default-expand-all":ge.value,"tree-props":_e.value,"data-loading":t.loading,onSelectionChange:Q,onSortChange:a[2]||=e=>l(`sortChange`,e),onFilterChange:a[3]||=e=>l(`filterChange`,e),onRowClick:Oe,onCurrentChange:$,onExpandChange:ke}),{default:(0,n.withCtx)(()=>[t.selection?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElTableColumn),{key:0,type:`selection`,width:`48`})):(0,n.createCommentVNode)(``,!0),t.showIndex?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElTableColumn),{key:1,type:`index`,label:t.indexLabel,width:t.indexWidth},null,8,[`label`,`width`])):(0,n.createCommentVNode)(``,!0),((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(P.value,r=>((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElTableColumn),(0,n.mergeProps)({key:String(r.field)},{ref_for:!0},r.componentProps,{prop:String(r.field),label:r.label,align:r.align,width:J(r),"min-width":q(r),fixed:r.fixed,resizable:t.columnResizable,"show-overflow-tooltip":r.showOverflowTooltip??!0,formatter:K(r),"data-field":String(r.field)}),{default:(0,n.withCtx)(({row:t,$index:i})=>[H(t,r,i)?(0,n.createCommentVNode)(``,!0):(0,n.renderSlot)(e.$slots,`table-${String(r.field)}`,{key:0,row:t,index:i,column:r,value:t[r.field]},()=>[(0,n.createVNode)(T,{display:U(t,r,i)},null,8,[`display`])],!0)]),_:2},1040,[`prop`,`label`,`align`,`width`,`min-width`,`fixed`,`resizable`,`show-overflow-tooltip`,`formatter`,`data-field`]))),128)),e.$slots.actions?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElTableColumn),{key:2,fixed:`right`,label:t.actionLabel,width:me.value,"data-field":`actions`},{default:(0,n.withCtx)(({row:r,$index:a})=>[(0,n.createElementVNode)(`div`,le,[(0,n.renderSlot)(e.$slots,`actions`,{row:r,index:a},void 0,!0)]),(0,n.createVNode)((0,n.unref)(i.ElPopover),{visible:we(r,a),teleported:!0,role:`menu`,trigger:`click`,placement:`bottom-end`,"popper-class":`lumal-schema-table__mobile-actions-popper`,"onUpdate:visible":e=>Te(r,a,e)},{reference:(0,n.withCtx)(()=>[(0,n.createElementVNode)(`button`,{type:`button`,class:`lumal-schema-table__mobile-actions`,"aria-haspopup":`menu`,"aria-expanded":we(r,a),onClick:(0,n.withModifiers)(e=>Ee(r,a),[`stop`]),onKeydown:(0,n.withKeys)((0,n.withModifiers)(Z,[`stop`,`prevent`]),[`esc`])},(0,n.toDisplayString)(t.mobileActionLabel),41,ue)]),default:(0,n.withCtx)(()=>[(0,n.createElementVNode)(`div`,{class:`lumal-schema-table__mobile-actions-menu`,role:`menu`,onClickCapture:Z},[(0,n.renderSlot)(e.$slots,`actions`,{row:r,index:a},void 0,!0)],32)]),_:2},1032,[`visible`,`onUpdate:visible`])]),_:3},8,[`label`,`width`])):(0,n.createCommentVNode)(``,!0)]),_:3},16,[`data`,`row-key`,`empty-text`,`row-class-name`,`cell-class-name`,`header-cell-class-name`,`default-expand-all`,`tree-props`,`data-loading`])),[[(0,n.unref)(f),t.loading]])])),R.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,N,[(0,n.createVNode)((0,n.unref)(o),{page:u.value,"onUpdate:page":a[4]||=e=>u.value=e,"page-size":d.value,"onUpdate:pageSize":a[5]||=e=>d.value=e,total:t.total,"page-sizes":t.pageSizes,onChange:De},null,8,[`page`,`page-size`,`total`,`page-sizes`])])):(0,n.createCommentVNode)(``,!0)],512))}}),F=t.t(P,[[`__scopeId`,`data-v-3580df56`]]),de=(0,n.defineComponent)({__name:`LumalCrudEditor`,props:(0,n.mergeModels)({beforeClose:{},closeOnClickModal:{type:Boolean,default:!1},destroyOnClose:{type:Boolean,default:!0},title:{},type:{default:`dialog`},width:{default:`min(920px, calc(100vw - 32px))`}},{modelValue:{type:Boolean,default:!1},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=(0,n.useModel)(e,`modelValue`);return(r,a)=>e.type===`drawer`?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElDrawer),{key:0,modelValue:t.value,"onUpdate:modelValue":a[0]||=e=>t.value=e,title:e.title,size:e.width,"close-on-click-modal":e.closeOnClickModal,"destroy-on-close":e.destroyOnClose,"before-close":e.beforeClose,class:`lumal-crud-table__drawer`},{footer:(0,n.withCtx)(()=>[(0,n.renderSlot)(r.$slots,`footer`)]),default:(0,n.withCtx)(()=>[(0,n.renderSlot)(r.$slots,`default`)]),_:3},8,[`modelValue`,`title`,`size`,`close-on-click-modal`,`destroy-on-close`,`before-close`])):((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElDialog),{key:1,modelValue:t.value,"onUpdate:modelValue":a[1]||=e=>t.value=e,title:e.title,width:e.width,"close-on-click-modal":e.closeOnClickModal,"destroy-on-close":e.destroyOnClose,"before-close":e.beforeClose,class:`lumal-crud-table__dialog`},{footer:(0,n.withCtx)(()=>[(0,n.renderSlot)(r.$slots,`footer`)]),default:(0,n.withCtx)(()=>[(0,n.renderSlot)(r.$slots,`default`)]),_:3},8,[`modelValue`,`title`,`width`,`close-on-click-modal`,`destroy-on-close`,`before-close`]))}});function fe(e=[],t=[]){return t.length>0?[...t]:e.filter(e=>e.showInForm!==!1&&e.field!==`action`).map(e=>({append:e.append,component:e.component??(e.dictionary||e.dictType?`select`:`input`),componentProps:e.formComponentProps,defaultValue:e.defaultValue,dictionary:e.dictionary,dictType:e.dictType,editDisabled:e.editDisabled,field:e.field,label:e.label,options:e.options,placeholder:e.placeholder,prefix:e.prefix,prepend:e.prepend,required:e.required,rules:e.rules,span:e.span,suffix:e.suffix}))}function I(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function pe(e){let t=(0,n.shallowRef)([]),r=(0,n.shallowRef)(0),i=(0,n.shallowRef)(!1),a=(0,n.shallowRef)(``),o=0,s=(0,n.computed)(()=>e.dataSource.value?t.value:e.rows.value),c=(0,n.computed)(()=>e.dataSource.value?r.value:e.total.value),l=(0,n.computed)(()=>e.loading.value||i.value);function u(t){let n=e.dataSource.value;return n?.parseResponse?n.parseResponse(t):!I(t)||!Array.isArray(t.items)||typeof t.total!=`number`?{items:[],total:0}:{items:t.items,total:t.total}}async function d(){let n=++o,s=e.dataSource.value;if(!s){i.value=!1,a.value=``;return}i.value=!0,a.value=``;try{let i=u(await s.fetch({page:e.page.value,pageSize:e.pageSize.value,query:{...e.queryModel.value}}));n===o&&(t.value=i.items,r.value=i.total)}catch(e){n===o&&(a.value=e instanceof Error?e.message:String(e),t.value=[],r.value=0)}finally{n===o&&(i.value=!1)}}return{currentLoading:l,currentRows:s,currentTotal:c,error:a,load:d}}function L(e){try{return JSON.stringify(e)}catch{return String(e)}}function R(e){try{return structuredClone(e)}catch{return JSON.parse(JSON.stringify(e))}}function z(e){let t=(0,n.shallowRef)(!1),r=(0,n.shallowRef)(`create`),i=(0,n.shallowRef)({}),a=(0,n.shallowRef)(`{}`),o=(0,n.shallowRef)(),s=(0,n.shallowRef)(!1),c=(0,n.shallowRef)(``),l=(0,n.computed)(()=>r.value!==`view`&&L(i.value)!==a.value);function u(e,n){let s=n?R(n):{};r.value=e,o.value=n,i.value=s,a.value=L(s),c.value=``,t.value=!0}async function d(n,i){if(s.value)return!1;let l=e.dataSource.value;if(!l)return t.value=!1,!0;s.value=!0,c.value=``;try{return i&&!await i()?!1:(r.value===`edit`&&o.value?await l.update?.(o.value,n):await l.create?.(n),a.value=L(n),t.value=!1,s.value=!1,await e.afterSave(),!0)}catch(e){return c.value=e instanceof Error?e.message:String(e),!1}finally{s.value=!1}}return{dirty:l,editingRow:o,error:c,mode:r,model:i,open:u,saving:s,submit:d,visible:t}}function me(e){let t=(0,n.shallowRef)(e.defaultCollapsed.value),r=(0,n.computed)(()=>f(d(e.schemas.value))),i=(0,n.computed)(()=>{if(!e.collapsible.value||!t.value)return e.schemas.value;let n=24/e.columns.value,r=e.columns.value*e.collapsedRows.value,i=0;return e.schemas.value.filter(e=>{let t=Math.max(1,Math.ceil((e.span??n)/n));return i+t>r?!1:(i+=t,!0)})}),a=(0,n.computed)(()=>e.collapsible.value&&i.value.length<e.schemas.value.length);function o(){let t={...r.value};return e.model.value=t,t}function s(){t.value=!t.value}return{canCollapse:a,collapsed:t,defaultModel:r,reset:o,toggle:s,visibleSchemas:i}}function he(){let e=(0,n.shallowRef)([]),t=(0,n.shallowRef)([]);function r(){e.value=[],t.value=[]}function i(n,r=[]){e.value=n,t.value=r}return{clear:r,selectedRowKeys:t,selectedRows:e,update:i}}var ge={class:`lumal-crud-table__query-actions`},_e={key:1,class:`lumal-crud-table__error`,role:`alert`},ve={class:`lumal-crud-table__table-panel`},ye={class:`lumal-crud-table__body`},be={class:`lumal-crud-table__toolbar-tools`},xe={key:0,class:`lumal-crud-table__extra`},Se={key:1,class:`lumal-crud-table__pagination`},B={key:0,class:`lumal-crud-table__dialog-error`,role:`alert`},Ce={class:`lumal-crud-table__dialog-footer`},V=(0,n.defineComponent)({__name:`LumalCrudTable`,props:(0,n.mergeModels)({title:{},querySchemas:{default:()=>[]},formSchemas:{default:()=>[]},columns:{default:()=>[]},dataSource:{},rows:{default:()=>[]},rowKey:{},total:{default:0},pageSizes:{default:()=>[10,20,50,100]},pagination:{type:[Boolean,Object],default:!0},loading:{type:Boolean,default:!1},emptyText:{default:`暂无数据`},searchText:{default:`查询`},resetText:{default:`重置`},createText:{default:`新增`},batchDeleteText:{default:`批量删除`},selection:{type:Boolean,default:!1},query:{},table:{},toolbar:{},actions:{},editor:{}},{queryModel:{default:()=>({})},queryModelModifiers:{},page:{default:1},pageModifiers:{},pageSize:{default:10},pageSizeModifiers:{}}),emits:(0,n.mergeModels)([`search`,`reset`,`pageChange`,`export`,`operationError`],[`update:queryModel`,`update:page`,`update:pageSize`]),setup(e,{expose:t,emit:a}){let s=e,c=a,l=(0,n.useModel)(e,`queryModel`),u=(0,n.useModel)(e,`page`),d=(0,n.useModel)(e,`pageSize`),f=(0,n.useTemplateRef)(`crudRef`),p=(0,n.useTemplateRef)(`queryRef`),m=(0,n.useTemplateRef)(`queryFormRef`),h=(0,n.useTemplateRef)(`dialogFormRef`),g=(0,n.useTemplateRef)(`tableRef`),v=(0,n.computed)(()=>s.query?.schemas??s.querySchemas),y=(0,n.computed)(()=>s.table?.columns??s.columns),b=(0,n.computed)(()=>y.value.filter(e=>e.showInTable!==!1)),x=(0,n.computed)(()=>fe(y.value,s.formSchemas)),S=(0,n.computed)(()=>s.table?.rowKey??s.rowKey),C=(0,n.computed)(()=>s.table?.selection??s.selection),w=(0,n.computed)(()=>s.table?.emptyText??s.emptyText),T=(0,n.shallowRef)(3),E=(0,n.computed)(()=>Math.max(1,s.query?.columns??T.value)),D=(0,n.computed)(()=>s.query?.collapsible??!1),ee=(0,n.computed)(()=>s.query?.defaultCollapsed??!0),te=(0,n.computed)(()=>Math.max(1,s.query?.collapsedRows??1)),ne=(0,n.computed)(()=>typeof s.pagination==`object`?s.pagination.enabled!==!1:s.pagination),re=(0,n.computed)(()=>typeof s.pagination==`object`?s.pagination.pageSizes??s.pageSizes:s.pageSizes),ie=(0,n.computed)(()=>v.value.length>0),O=(0,n.computed)(()=>x.value.length>0),ae=(0,n.computed)(()=>O.value&&s.toolbar?.create!==!1),oe=(0,n.computed)(()=>C.value&&s.toolbar?.batchDelete!==!1),se=(0,n.computed)(()=>!!s.dataSource&&s.toolbar?.refresh!==!1),ce=(0,n.computed)(()=>!!s.toolbar?.export),k=(0,n.computed)(()=>s.toolbar?.fullscreen!==!1),A=(0,n.computed)(()=>ie.value&&s.toolbar?.queryToggle!==!1),j=(0,n.computed)(()=>ae.value||oe.value||ce.value),M=(0,n.computed)(()=>A.value||se.value||k.value),le=typeof window<`u`&&typeof window.matchMedia==`function`&&window.matchMedia(`(max-width: 768px)`).matches,ue={desktop:s.query?.defaultVisible??!0,mobile:s.query?.mobileDefaultVisible??s.query?.defaultVisible??!0},N=(0,n.computed)(()=>s.dataSource),P=(0,n.shallowRef)(!1),I=(0,n.shallowRef)(!1),L=(0,n.shallowRef)(le),R=(0,n.computed)(()=>L.value?`mobile`:`desktop`),V=(0,n.shallowRef)(ue),H=(0,n.shallowRef)(ue[le?`mobile`:`desktop`]),U,W,G,K=pe({dataSource:N,loading:(0,n.computed)(()=>s.loading),page:u,pageSize:d,queryModel:l,rows:(0,n.computed)(()=>s.rows),total:(0,n.computed)(()=>s.total)}),q=me({collapsedRows:te,collapsible:D,columns:E,defaultCollapsed:ee,model:l,schemas:v}),J=he(),Y=z({dataSource:N,afterSave:K.load}),X=(0,n.computed)(()=>K.currentLoading.value||P.value),we=(0,n.computed)(()=>ne.value&&K.currentTotal.value>0),Te=(0,n.computed)(()=>({create:s.editor?.createTitle??s.toolbar?.createText??s.createText,edit:s.editor?.editTitle??`编辑`,view:s.editor?.viewTitle??`查看`})[Y.mode.value]);(0,n.watch)(()=>s.dataSource,()=>void K.load(),{immediate:!0}),(0,n.watch)([u,d],()=>void K.load());function Ee(){I.value=typeof document<`u`&&document.fullscreenElement===f.value}function Z(e){if(s.query?.columns!==void 0||e<=0)return;let t=e>=1280?4:e>=960?3:e>=640?2:1;T.value!==t&&(T.value=t)}function Q(){W?.disconnect(),W=void 0,p.value&&(Z(p.value.clientWidth),!(typeof ResizeObserver>`u`)&&(W=new ResizeObserver(e=>Z(e[0]?.contentRect.width??0)),W.observe(p.value)))}function De(e){L.value!==e&&(L.value=e,H.value=V.value[R.value],(0,n.nextTick)(()=>{H.value?Q():W?.disconnect(),g.value?.doLayout()}))}function Oe(e){De(e.matches)}(0,n.onMounted)(()=>{typeof document<`u`&&document.addEventListener(`fullscreenchange`,Ee),typeof window<`u`&&typeof window.matchMedia==`function`&&(G=window.matchMedia(`(max-width: 768px)`),De(G.matches),G.addEventListener?.(`change`,Oe)),Q()}),(0,n.onBeforeUnmount)(()=>{typeof document<`u`&&document.removeEventListener(`fullscreenchange`,Ee),G?.removeEventListener?.(`change`,Oe),W?.disconnect(),U&&clearTimeout(U)}),(0,n.watch)(()=>s.query?.columns,e=>{e===void 0&&Z(p.value?.clientWidth??0)}),(0,n.watch)([()=>s.query?.defaultVisible,()=>s.query?.mobileDefaultVisible],([e,t])=>{V.value={desktop:e??!0,mobile:t??e??!0},H.value=V.value[R.value]});function $(){c(`search`,{...l.value}),u.value===1?K.load():u.value=1}function ke(){let e=q.reset();m.value?.resetFields(),c(`reset`,e),u.value===1?K.load():u.value=1}function Ae(){s.query?.submitOnChange&&(U&&clearTimeout(U),U=setTimeout($,Math.max(0,s.query.submitDebounce??300)))}async function je(){let e=[...J.selectedRows.value],t=e.length>0?e:K.currentRows.value,n={columns:b.value,query:{...l.value},rows:t,selectedRows:e};c(`export`,{query:n.query,selectedRows:e});let r=typeof s.toolbar?.export==`object`?s.toolbar.export:void 0;if(r?.handler){await r.handler(n);return}let i=g.value?.getExportData(t);if(!i||typeof document>`u`||typeof URL>`u`||typeof navigator<`u`&&navigator.userAgent.toLowerCase().includes(`jsdom`))return;let a=e=>`"${e.replace(/"/g,`""`)}"`,o=[i.columns.map(e=>a(e.label)).join(`,`),...i.rows.map(e=>e.map(a).join(`,`))].join(`
2
+ `),u=new Blob([`\uFEFF${o}`],{type:`text/csv;charset=utf-8`}),d=URL.createObjectURL(u),f=document.createElement(`a`);f.href=d,f.download=r?.filename??`lumal-export-${Date.now()}.csv`,f.click(),URL.revokeObjectURL(d)}async function Me(){if(!(!f.value||typeof document>`u`))try{document.fullscreenElement===f.value?await document.exitFullscreen?.():await f.value.requestFullscreen?.()}catch(e){c(`operationError`,e)}}function Ne(e){c(`pageChange`,e)}function Pe(){if(H.value=!H.value,V.value={...V.value,[R.value]:H.value},H.value){(0,n.nextTick)(()=>{Q(),g.value?.doLayout()});return}W?.disconnect(),(0,n.nextTick)(()=>g.value?.doLayout())}function Fe(e,t,n,r){return typeof e==`function`?e(n,r):e??t}function Ie(){Y.open(`create`)}function Le(e){Y.open(`edit`,e)}function Re(e){Y.open(`view`,e)}async function ze(e){!await Y.submit(e,async()=>await h.value?.validate()!==!1)&&Y.error.value&&c(`operationError`,Error(Y.error.value))}async function Be(e){let t=s.actions?.confirmRemove;if(t===!1)return!0;if(typeof t==`function`)return t(e);let n=typeof t?.message==`function`?t.message(e):t?.message??`确定删除选中的 ${e.length} 条数据吗?`;try{return await i.ElMessageBox.confirm(n,t?.title??`删除确认`,{cancelButtonText:t?.cancelButtonText??`取消`,confirmButtonText:t?.confirmButtonText??`删除`,type:`warning`}),!0}catch{return!1}}async function Ve(e){P.value=!0;try{return await e(),Je(),await K.load(),!0}catch(e){return c(`operationError`,e),!1}finally{P.value=!1}}async function He(e){let t=s.dataSource?.remove,n=!s.dataSource?.beforeRemove||await s.dataSource.beforeRemove([e]);!t||!n||!await Be([e])||await Ve(()=>t(e))}async function Ue(){let e=[...J.selectedRows.value],t=!s.dataSource?.beforeRemove||await s.dataSource.beforeRemove(e);e.length===0||!t||!await Be(e)||await Ve(()=>s.dataSource?.removeMany?s.dataSource.removeMany(e):Promise.all(e.map(e=>s.dataSource?.remove?.(e))))}async function We(){if(Y.saving.value)return!1;if(!Y.dirty.value)return!0;if(s.editor?.confirmClose)return s.editor.confirmClose({mode:Y.mode.value,model:Y.model.value,row:Y.editingRow.value});try{return await i.ElMessageBox.confirm(`表单内容尚未保存,确定关闭吗?`,`关闭确认`,{cancelButtonText:`继续编辑`,confirmButtonText:`关闭`,type:`warning`}),!0}catch{return!1}}function Ge(e){We().then(t=>{t&&e()})}function Ke(){We().then(e=>{e&&(Y.visible.value=!1)})}function qe(){ze(Y.model.value)}function Je(){J.clear(),g.value?.clearSelection()}return t({clearSelection:Je,getCrudElement:()=>f.value,closeEditor:Ke,getEditorForm:()=>h.value,getQueryForm:()=>m.value,getSelectedRowKeys:()=>[...J.selectedRowKeys.value],getSelectedRows:()=>[...J.selectedRows.value],getTable:()=>g.value,isLoading:()=>X.value,openCreate:Ie,openEdit:Le,openView:Re,query:$,reset:ke,reload:K.load,removeRow:He,removeSelectedRows:Ue,setFormData:e=>h.value?.setValues(e),toggleFullscreen:Me,toggleQuery:q.toggle,toggleQueryPanel:Pe}),(t,a)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{ref_key:`crudRef`,ref:f,class:`lumal-crud-table`},[ie.value?(0,n.withDirectives)(((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:0,ref_key:`queryRef`,ref:p,class:(0,n.normalizeClass)([`lumal-crud-table__query`,{"is-collapsed":(0,n.unref)(q).collapsed.value}])},[(0,n.createVNode)((0,n.unref)(_),{ref_key:`queryFormRef`,ref:m,modelValue:l.value,"onUpdate:modelValue":a[0]||=e=>l.value=e,schemas:(0,n.unref)(q).visibleSchemas.value,columns:E.value,"label-width":e.query?.labelWidth??88,class:`lumal-crud-table__query-form`,onValuesChange:Ae},(0,n.createSlots)({_:2},[(0,n.renderList)((0,n.unref)(q).visibleSchemas.value.filter(e=>t.$slots[`query-${String(e.field)}`]),e=>({name:`field-${String(e.field)}`,fn:(0,n.withCtx)(r=>[(0,n.renderSlot)(t.$slots,`query-${String(e.field)}`,(0,n.normalizeProps)((0,n.guardReactiveProps)(r)),void 0,!0)])}))]),1032,[`modelValue`,`schemas`,`columns`,`label-width`]),(0,n.createElementVNode)(`div`,ge,[(0,n.createVNode)((0,n.unref)(i.ElButton),{type:`primary`,"native-type":`button`,"data-action":`search`,onClick:$},{default:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(e.query?.searchText??e.searchText),1)]),_:1}),(0,n.createVNode)((0,n.unref)(i.ElButton),{"native-type":`button`,"data-action":`reset`,onClick:ke},{default:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(e.query?.resetText??e.resetText),1)]),_:1}),(0,n.unref)(q).canCollapse.value?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElButton),{key:0,"native-type":`button`,"data-action":`toggle-query`,"aria-expanded":String(!(0,n.unref)(q).collapsed.value),onClick:(0,n.unref)(q).toggle},{default:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)((0,n.unref)(q).collapsed.value?`展开`:`收起`),1)]),_:1},8,[`aria-expanded`,`onClick`])):(0,n.createCommentVNode)(``,!0)])],2)),[[n.vShow,H.value]]):(0,n.createCommentVNode)(``,!0),(0,n.unref)(K).error.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,_e,[(0,n.createElementVNode)(`span`,null,(0,n.toDisplayString)((0,n.unref)(K).error.value),1),(0,n.createVNode)((0,n.unref)(i.ElButton),{"native-type":`button`,"data-action":`retry`,onClick:(0,n.unref)(K).load},{default:(0,n.withCtx)(()=>[...a[5]||=[(0,n.createTextVNode)(` 重试 `,-1)]]),_:1},8,[`onClick`])])):(0,n.createCommentVNode)(``,!0),(0,n.createElementVNode)(`section`,ve,[(0,n.createElementVNode)(`div`,ye,[(0,n.createVNode)((0,n.unref)(F),{ref_key:`tableRef`,ref:g,columns:b.value,rows:(0,n.unref)(K).currentRows.value,"row-key":S.value,"empty-text":w.value,loading:X.value,selection:C.value,"show-column-settings":e.table?.showColumnSettings,"column-settings":e.table?.columnSettings,"auto-resize":e.table?.autoResize??!0,"action-width":e.table?.actionWidth,"mobile-action-width":e.table?.mobileActionWidth,"table-props":{height:`100%`,border:!0},onSelectionChange:(0,n.unref)(J).update},(0,n.createSlots)({_:2},[t.$slots[`table-title`]||e.title?{name:`toolbar-title`,fn:(0,n.withCtx)(()=>[(0,n.renderSlot)(t.$slots,`table-title`,{},()=>[(0,n.createTextVNode)((0,n.toDisplayString)(e.title),1)],!0)]),key:`0`}:void 0,j.value||t.$slots.actions||t.$slots[`toolbar-actions`]?{name:`toolbar`,fn:(0,n.withCtx)(()=>[(0,n.createElementVNode)(`div`,{class:(0,n.normalizeClass)([`lumal-crud-table__toolbar`,`is-${e.toolbar?.actionsPosition??`right`}`])},[ae.value?(0,n.renderSlot)(t.$slots,`create-action`,{key:0,openCreate:Ie},()=>[(0,n.createVNode)((0,n.unref)(i.ElButton),{type:`primary`,"native-type":`button`,"data-action":`create`,onClick:Ie},{default:(0,n.withCtx)(()=>[(0,n.createVNode)((0,n.unref)(r.LumalIcon),{name:`lumal:plus`}),(0,n.createTextVNode)(` `+(0,n.toDisplayString)(e.toolbar?.createText??e.createText),1)]),_:1})],!0):(0,n.createCommentVNode)(``,!0),oe.value?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElButton),{key:1,"native-type":`button`,"data-action":`batch-remove`,disabled:(0,n.unref)(J).selectedRows.value.length===0||P.value,onClick:Ue},{default:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(e.toolbar?.batchDeleteText??e.batchDeleteText),1)]),_:1},8,[`disabled`])):(0,n.createCommentVNode)(``,!0),ce.value?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElButton),{key:2,"native-type":`button`,"data-action":`export`,onClick:je},{default:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(e.toolbar?.exportText??`导出`),1)]),_:1})):(0,n.createCommentVNode)(``,!0),(0,n.renderSlot)(t.$slots,`toolbar-actions`,{reload:(0,n.unref)(K).load,openCreate:Ie,selectedRows:(0,n.unref)(J).selectedRows.value,selectedRowKeys:(0,n.unref)(J).selectedRowKeys.value,clearSelection:Je},void 0,!0),(0,n.renderSlot)(t.$slots,`actions`,{},void 0,!0)],2)]),key:`1`}:void 0,M.value||t.$slots[`toolbar-tools`]?{name:`toolbar-tools`,fn:(0,n.withCtx)(()=>[(0,n.createElementVNode)(`div`,be,[(0,n.renderSlot)(t.$slots,`toolbar-tools`,{reload:(0,n.unref)(K).load,toggleFullscreen:Me},void 0,!0),A.value?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElButton),{key:0,circle:``,"native-type":`button`,"data-action":`toggle-query-panel`,class:(0,n.normalizeClass)({"is-active":H.value}),"aria-expanded":String(H.value),"aria-label":H.value?`隐藏筛选条件`:`显示筛选条件`,title:H.value?`隐藏筛选条件`:`显示筛选条件`,onClick:Pe},{default:(0,n.withCtx)(()=>[(0,n.createVNode)((0,n.unref)(r.LumalIcon),{name:`lumal:filter`})]),_:1},8,[`class`,`aria-expanded`,`aria-label`,`title`])):(0,n.createCommentVNode)(``,!0),se.value?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElButton),{key:1,circle:``,"native-type":`button`,"data-action":`refresh`,"aria-label":e.toolbar?.refreshText??`刷新`,title:e.toolbar?.refreshText??`刷新`,onClick:(0,n.unref)(K).load},{default:(0,n.withCtx)(()=>[(0,n.createVNode)((0,n.unref)(r.LumalIcon),{name:`lumal:refresh`})]),_:1},8,[`aria-label`,`title`,`onClick`])):(0,n.createCommentVNode)(``,!0),k.value?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElButton),{key:2,circle:``,"native-type":`button`,"data-action":`fullscreen`,"aria-label":e.toolbar?.fullscreenText??(I.value?`退出全屏`:`全屏`),title:e.toolbar?.fullscreenText??(I.value?`退出全屏`:`全屏`),onClick:Me},{default:(0,n.withCtx)(()=>[(0,n.createVNode)((0,n.unref)(r.LumalIcon),{name:I.value?`lumal:fullscreen-exit`:`lumal:fullscreen`,morph:``},null,8,[`name`])]),_:1},8,[`aria-label`,`title`])):(0,n.createCommentVNode)(``,!0)])]),key:`2`}:void 0,(0,n.renderList)(b.value.filter(e=>t.$slots[`table-${String(e.field)}`]),e=>({name:`table-${String(e.field)}`,fn:(0,n.withCtx)(r=>[(0,n.renderSlot)(t.$slots,`table-${String(e.field)}`,(0,n.normalizeProps)((0,n.guardReactiveProps)(r)),void 0,!0)])})),O.value||N.value?.remove||t.$slots[`row-actions`]?{name:`actions`,fn:(0,n.withCtx)(({row:r,index:a})=>[(0,n.renderSlot)(t.$slots,`row-actions`,{row:r,index:a,openView:Re,openEdit:Le,removeRow:He},()=>[Fe(e.actions?.view,O.value,r,a)?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElButton),{key:0,"native-type":`button`,"data-action":`view`,onClick:e=>Re(r)},{default:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(e.actions?.viewText??`查看`),1)]),_:1},8,[`onClick`])):(0,n.createCommentVNode)(``,!0),Fe(e.actions?.edit,O.value,r,a)?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElButton),{key:1,"native-type":`button`,"data-action":`edit`,onClick:e=>Le(r)},{default:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(e.actions?.editText??`编辑`),1)]),_:1},8,[`onClick`])):(0,n.createCommentVNode)(``,!0),Fe(e.actions?.remove,!!N.value?.remove,r,a)?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElButton),{key:2,type:`danger`,"native-type":`button`,"data-action":`remove`,onClick:e=>He(r)},{default:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(e.actions?.removeText??`删除`),1)]),_:1},8,[`onClick`])):(0,n.createCommentVNode)(``,!0)],!0)]),key:`3`}:void 0]),1032,[`columns`,`rows`,`row-key`,`empty-text`,`loading`,`selection`,`show-column-settings`,`column-settings`,`auto-resize`,`action-width`,`mobile-action-width`,`onSelectionChange`])]),t.$slots.default?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,xe,[(0,n.renderSlot)(t.$slots,`default`,{},void 0,!0)])):(0,n.createCommentVNode)(``,!0),we.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,Se,[(0,n.createVNode)((0,n.unref)(o),{page:u.value,"onUpdate:page":a[1]||=e=>u.value=e,"page-size":d.value,"onUpdate:pageSize":a[2]||=e=>d.value=e,total:(0,n.unref)(K).currentTotal.value,"page-sizes":re.value,onChange:Ne},null,8,[`page`,`page-size`,`total`,`page-sizes`])])):(0,n.createCommentVNode)(``,!0)]),(0,n.createVNode)(de,{modelValue:(0,n.unref)(Y).visible.value,"onUpdate:modelValue":a[4]||=e=>(0,n.unref)(Y).visible.value=e,title:Te.value,type:e.editor?.type??`dialog`,width:e.editor?.width??(e.editor?.type===`drawer`?`min(720px, 92vw)`:`min(920px, calc(100vw - 32px))`),"close-on-click-modal":e.editor?.closeOnClickModal??!1,"destroy-on-close":e.editor?.destroyOnClose??!0,"before-close":Ge},{footer:(0,n.withCtx)(()=>[(0,n.renderSlot)(t.$slots,`footer`,{mode:(0,n.unref)(Y).mode.value,model:(0,n.unref)(Y).model.value,close:Ke,submit:qe},()=>[(0,n.createElementVNode)(`div`,Ce,[(0,n.createVNode)((0,n.unref)(i.ElButton),{"native-type":`button`,onClick:Ke},{default:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)((0,n.unref)(Y).mode.value===`view`?`关闭`:`取消`),1)]),_:1}),(0,n.unref)(Y).mode.value===`view`?(0,n.createCommentVNode)(``,!0):((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElButton),{key:0,type:`primary`,"native-type":`button`,loading:(0,n.unref)(Y).saving.value,onClick:qe},{default:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(e.editor?.submitText??`保存`),1)]),_:1},8,[`loading`]))])],!0)]),default:(0,n.withCtx)(()=>[(0,n.unref)(Y).error.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,B,(0,n.toDisplayString)((0,n.unref)(Y).error.value),1)):(0,n.createCommentVNode)(``,!0),(0,n.createVNode)((0,n.unref)(_),{ref_key:`dialogFormRef`,ref:h,modelValue:(0,n.unref)(Y).model.value,"onUpdate:modelValue":a[3]||=e=>(0,n.unref)(Y).model.value=e,mode:(0,n.unref)(Y).mode.value,schemas:x.value,columns:e.editor?.columns??2,"label-width":e.editor?.labelWidth??88,loading:e.editor?.loading,disabled:(0,n.unref)(Y).saving.value||e.editor?.disabled,"submit-loading":(0,n.unref)(Y).saving.value,"show-actions":!1,onSubmit:ze},(0,n.createSlots)({_:2},[(0,n.renderList)(x.value.filter(e=>t.$slots[`form-${String(e.field)}`]),e=>({name:`field-${String(e.field)}`,fn:(0,n.withCtx)(r=>[(0,n.renderSlot)(t.$slots,`form-${String(e.field)}`,(0,n.normalizeProps)((0,n.guardReactiveProps)(r)),void 0,!0)])}))]),1032,[`modelValue`,`mode`,`schemas`,`columns`,`label-width`,`loading`,`disabled`,`submit-loading`])]),_:3},8,[`modelValue`,`title`,`type`,`width`,`close-on-click-modal`,`destroy-on-close`])],512))}}),H=t.t(V,[[`__scopeId`,`data-v-c86f2c66`]]),U={class:`lumal-info-table__value`},W=(0,n.defineComponent)({__name:`LumalInfoTable`,props:{items:{},columns:{default:1},labelWidth:{default:`88px`},emptyText:{default:`-`},bordered:{type:Boolean,default:!0}},setup(e,{expose:t}){let r=e,i=(0,n.useTemplateRef)(`infoTableRef`),a=(0,n.computed)(()=>r.items.filter(e=>!e.hidden)),o=(0,n.computed)(()=>({"--lumal-info-table-columns":String(Math.max(1,r.columns))})),s=(0,n.computed)(()=>({width:typeof r.labelWidth==`number`?`${r.labelWidth}px`:r.labelWidth}));function c(e){return e.value===void 0||e.value===null||e.value===``?e.emptyText??r.emptyText:String(e.value)}function l(e){return Math.max(1,Math.min(e.span??1,r.columns))}return t({getInfoTableElement:()=>i.value}),(t,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(`dl`,{ref_key:`infoTableRef`,ref:i,class:(0,n.normalizeClass)([`lumal-info-table`,{"lumal-info-table--bordered":e.bordered}]),style:(0,n.normalizeStyle)(o.value)},[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(a.value,e=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:e.label,class:`lumal-info-table__item`,style:(0,n.normalizeStyle)({gridColumn:`span ${l(e)}`})},[(0,n.createElementVNode)(`dt`,{class:`lumal-info-table__label`,style:(0,n.normalizeStyle)(s.value)},(0,n.toDisplayString)(e.label),5),(0,n.createElementVNode)(`dd`,U,(0,n.toDisplayString)(c(e)),1)],4))),128))],6))}}),G=t.t(W,[[`__scopeId`,`data-v-3dfbcf43`]]),K={key:0,class:`lumal-page__header`},q={class:`lumal-page__heading`},J={key:0,class:`lumal-page__title`},Y={key:0,class:`lumal-page__description`},X={key:0,class:`lumal-page__actions`},we={key:1,class:`lumal-page__loading`},Te=(0,n.defineComponent)({__name:`LumalPage`,props:{title:{},description:{},contentClass:{default:``},fill:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},loadingText:{default:`加载中`},noPadding:{type:Boolean,default:!1}},setup(e,{expose:t}){let r=e,i=(0,n.useTemplateRef)(`pageRef`),a=(0,n.useSlots)(),o=(0,n.computed)(()=>!!(r.title||r.description||a.title||a.actions));return t({getPageElement:()=>i.value}),(t,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(`section`,{ref_key:`pageRef`,ref:i,class:(0,n.normalizeClass)([`lumal-page`,{"is-fill":e.fill,"is-no-padding":e.noPadding}])},[o.value?((0,n.openBlock)(),(0,n.createElementBlock)(`header`,K,[(0,n.createElementVNode)(`div`,q,[(0,n.renderSlot)(t.$slots,`title`,{},()=>[e.title?((0,n.openBlock)(),(0,n.createElementBlock)(`h2`,J,(0,n.toDisplayString)(e.title),1)):(0,n.createCommentVNode)(``,!0)],!0),e.description?((0,n.openBlock)(),(0,n.createElementBlock)(`p`,Y,(0,n.toDisplayString)(e.description),1)):(0,n.createCommentVNode)(``,!0)]),t.$slots.actions?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,X,[(0,n.renderSlot)(t.$slots,`actions`,{},void 0,!0)])):(0,n.createCommentVNode)(``,!0)])):(0,n.createCommentVNode)(``,!0),(0,n.createElementVNode)(`div`,{class:(0,n.normalizeClass)([`lumal-page__body`,e.contentClass])},[(0,n.renderSlot)(t.$slots,`default`,{},void 0,!0)],2),e.loading?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,we,(0,n.toDisplayString)(e.loadingText),1)):(0,n.createCommentVNode)(``,!0)],2))}}),Ee=t.t(Te,[[`__scopeId`,`data-v-c57520b6`]]),Z={key:0,class:`lumal-page-layout__query`},Q={class:`lumal-page-layout__query-body`},De={class:`lumal-page-layout__query-actions`},Oe={key:1,class:`lumal-page-layout__toolbar`},$={class:`lumal-page-layout__content`},ke={key:2,class:`lumal-page-layout__pagination`},Ae=(0,n.defineComponent)({__name:`LumalPageLayout`,props:{contentScrollable:{type:Boolean,default:!0},fill:{type:Boolean,default:!1},searchText:{default:`查询`},resetText:{default:`重置`},queryCollapsed:{type:Boolean,default:!1},surface:{type:Boolean,default:!0}},emits:[`reset`,`search`],setup(e,{expose:t,emit:r}){let a=e,o=r,s=(0,n.useTemplateRef)(`pageLayoutRef`),c=(0,n.useSlots)(),l=(0,n.computed)(()=>!!(c.query||c.form)),u=(0,n.computed)(()=>!!c.toolbar),d=(0,n.computed)(()=>!!c.pagination);function f(){o(`search`)}function p(){o(`reset`)}return t({getPageLayoutElement:()=>s.value}),(t,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(`section`,{ref_key:`pageLayoutRef`,ref:s,class:(0,n.normalizeClass)([`lumal-page-layout`,{"is-content-scrollable":e.contentScrollable,"is-fill":e.fill,"is-surface":e.surface}])},[l.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,Z,[(0,n.withDirectives)((0,n.createElementVNode)(`div`,Q,[(0,n.renderSlot)(t.$slots,`query`,{},()=>[(0,n.renderSlot)(t.$slots,`form`,{},void 0,!0)],!0)],512),[[n.vShow,!a.queryCollapsed]]),(0,n.createElementVNode)(`div`,De,[(0,n.createVNode)((0,n.unref)(i.ElButton),{type:`primary`,"native-type":`button`,"data-action":`search`,onClick:f},{default:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(a.searchText),1)]),_:1}),(0,n.createVNode)((0,n.unref)(i.ElButton),{"native-type":`button`,"data-action":`reset`,onClick:p},{default:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)(a.resetText),1)]),_:1})])])):(0,n.createCommentVNode)(``,!0),u.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,Oe,[(0,n.renderSlot)(t.$slots,`toolbar`,{},void 0,!0)])):(0,n.createCommentVNode)(``,!0),(0,n.createElementVNode)(`div`,$,[(0,n.renderSlot)(t.$slots,`default`,{},void 0,!0)]),d.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,ke,[(0,n.renderSlot)(t.$slots,`pagination`,{},void 0,!0)])):(0,n.createCommentVNode)(``,!0)],2))}}),je=t.t(Ae,[[`__scopeId`,`data-v-d4b9bb06`]]);Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return fe}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return H}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return Ee}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return F}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return G}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return je}});
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./components-oqKxhgFp.cjs"),t=require("./permission-CoqteYAi.cjs");let n=require("@lumal/icons-vue");exports.LumalAccessControl=t.n,exports.LumalCrudTable=e.i,Object.defineProperty(exports,"LumalIcon",{enumerable:!0,get:function(){return n.LumalIcon}}),Object.defineProperty(exports,"LumalIconPicker",{enumerable:!0,get:function(){return n.LumalIconPicker}}),Object.defineProperty(exports,"LumalIconPickerDialog",{enumerable:!0,get:function(){return n.LumalIconPickerDialog}}),exports.LumalInfoTable=e.r,exports.LumalPage=e.n,exports.LumalPageLayout=e.t,exports.LumalPagination=e.c,exports.LumalSchemaForm=e.s,exports.LumalSchemaTable=e.o,exports.deriveCrudFormSchemas=e.a;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./components-CRxtQpsQ.cjs"),t=require("./permission-CoqteYAi.cjs");let n=require("@lumal/icons-vue");exports.LumalAccessControl=t.n,exports.LumalCrudTable=e.i,Object.defineProperty(exports,"LumalIcon",{enumerable:!0,get:function(){return n.LumalIcon}}),Object.defineProperty(exports,"LumalIconPicker",{enumerable:!0,get:function(){return n.LumalIconPicker}}),Object.defineProperty(exports,"LumalIconPickerDialog",{enumerable:!0,get:function(){return n.LumalIconPickerDialog}}),exports.LumalInfoTable=e.r,exports.LumalPage=e.n,exports.LumalPageLayout=e.t,exports.LumalPagination=e.c,exports.LumalSchemaForm=e.s,exports.LumalSchemaTable=e.o,exports.deriveCrudFormSchemas=e.a;
@@ -1,3 +1,3 @@
1
- import { a as e, c as t, d as n, i as r, l as i, n as a, o, r as s, s as c, t as l, u } from "./components-DCp2KGvo.js";
1
+ import { a as e, c as t, d as n, i as r, l as i, n as a, o, r as s, s as c, t as l, u } from "./components-B5Xd-iBK.js";
2
2
  import { n as d } from "./permission-CHw9eXd8.js";
3
3
  export { d as LumalAccessControl, c as LumalCrudTable, l as LumalIcon, a as LumalIconPicker, s as LumalIconPickerDialog, o as LumalInfoTable, e as LumalPage, r as LumalPageLayout, n as LumalPagination, u as LumalSchemaForm, i as LumalSchemaTable, t as deriveCrudFormSchemas };
package/dist/core.css CHANGED
@@ -1,2 +1,2 @@
1
- .lumal-pagination[data-v-d546f46b]{flex-wrap:wrap;justify-content:flex-end;row-gap:8px;width:100%;min-width:0;display:flex}@media (width<=640px){.lumal-pagination[data-v-d546f46b]{justify-content:flex-start;row-gap:4px}.lumal-pagination[data-v-d546f46b] .el-pagination__jump{display:none}.lumal-pagination[data-v-d546f46b] .el-pagination__sizes{margin-left:0}}.lumal-schema-form[data-v-a2c0ed84]{gap:18px;width:100%;min-width:0;display:grid}.lumal-schema-form__row[data-v-a2c0ed84]{row-gap:18px;min-width:0}.lumal-schema-form__item[data-v-a2c0ed84]{width:100%;margin-bottom:0}.lumal-schema-form__item[data-v-a2c0ed84] .el-form-item__content{min-width:0}.lumal-schema-form.is-compact .lumal-schema-form__row[data-v-a2c0ed84]{row-gap:10px}.lumal-schema-form__description[data-v-a2c0ed84],.lumal-schema-form__help[data-v-a2c0ed84]{width:100%;color:var(--el-text-color-secondary);font-size:calc(var(--lumal-font-size-base,14px) - 2px);margin:6px 0 0;line-height:1.5}.lumal-schema-form__help[data-v-a2c0ed84]{color:var(--el-color-info)}.lumal-schema-form__item[data-v-a2c0ed84] .el-input,.lumal-schema-form__item[data-v-a2c0ed84] .el-input-number,.lumal-schema-form__item[data-v-a2c0ed84] .el-select,.lumal-schema-form__item[data-v-a2c0ed84] .el-cascader,.lumal-schema-form__item[data-v-a2c0ed84] .el-date-editor,.lumal-schema-form__item[data-v-a2c0ed84] .el-tree-select{width:100%;min-width:0}.lumal-schema-form__readonly-value[data-v-a2c0ed84]{min-height:32px;color:var(--el-text-color-regular);overflow-wrap:anywhere;line-height:32px}.lumal-schema-form__actions[data-v-a2c0ed84]{border-top:1px solid var(--el-border-color-lighter);justify-content:flex-end;padding-top:16px;display:flex}.lumal-schema-form__actions.is-left[data-v-a2c0ed84]{justify-content:flex-start}.lumal-schema-form__actions.is-center[data-v-a2c0ed84]{justify-content:center}.lumal-schema-form__actions.is-inline[data-v-a2c0ed84]{border-top:0;padding-top:0}.lumal-schema-form__actions.is-newLine[data-v-a2c0ed84]{margin-top:4px}@media (width<=1024px){.lumal-schema-form__row[data-v-a2c0ed84] .el-col:not(.is-full-span){flex:0 0 50%;max-width:50%}}@media (width<=768px){.lumal-schema-form[data-v-a2c0ed84]{gap:12px}.lumal-schema-form__row[data-v-a2c0ed84]{row-gap:10px}.lumal-schema-form__row[data-v-a2c0ed84] .el-col.el-col{flex:0 0 100%;max-width:100%}.lumal-schema-form[data-v-a2c0ed84] .el-input__wrapper,.lumal-schema-form[data-v-a2c0ed84] .el-select__wrapper,.lumal-schema-form[data-v-a2c0ed84] .el-input-number,.lumal-schema-form[data-v-a2c0ed84] .el-date-editor{min-height:32px}.lumal-schema-form__actions[data-v-a2c0ed84]{justify-content:stretch;padding-top:12px}.lumal-schema-form__actions[data-v-a2c0ed84] .el-button{flex:auto;min-height:32px}}@media (width<=480px){.lumal-schema-form__item[data-v-a2c0ed84]{display:block}.lumal-schema-form__item[data-v-a2c0ed84] .el-form-item__label{justify-content:flex-start;height:auto;padding:0 0 6px;line-height:20px;width:100%!important}.lumal-schema-form__item[data-v-a2c0ed84] .el-form-item__content{width:100%;margin-left:0!important}}.lumal-schema-table__dictionary-tags[data-v-ad0cf9f4]{flex-wrap:wrap;align-items:center;gap:4px;max-width:100%;display:inline-flex}.lumal-schema-table__dictionary-tag[data-v-ad0cf9f4]{border:1px solid;border-color:color-mix(in srgb, var(--lumal-dictionary-color,var(--el-border-color)) 32%, var(--el-border-color-lighter));max-width:100%;min-height:24px;color:color-mix(in srgb, var(--lumal-dictionary-color,var(--el-text-color-regular)) 82%, var(--el-text-color-primary));background:color-mix(in srgb, var(--lumal-dictionary-color,var(--el-fill-color)) 10%, var(--el-bg-color));border-radius:999px;align-items:center;gap:6px;padding:2px 8px;display:inline-flex}.lumal-schema-table__dictionary-dot[data-v-ad0cf9f4]{background:var(--lumal-dictionary-color);width:7px;height:7px;box-shadow:0 0 0 1px color-mix(in srgb, var(--lumal-dictionary-color) 70%, transparent);border-radius:50%;flex:none;display:inline-block}.lumal-schema-table[data-v-e0b97914]{gap:16px;width:100%;min-width:0;display:grid}.lumal-schema-table__toolbar[data-v-e0b97914],.lumal-schema-table__pagination[data-v-e0b97914]{justify-content:flex-end;display:flex}.lumal-schema-table__toolbar[data-v-e0b97914]{align-items:center;gap:8px;min-height:40px}.lumal-schema-table__toolbar-content[data-v-e0b97914]{flex:auto;justify-content:flex-start;min-width:0;display:flex}.lumal-schema-table__toolbar-title[data-v-e0b97914]{min-width:0;color:var(--el-text-color-primary);font-size:calc(var(--lumal-font-size-base,14px) + 2px);flex:none;font-weight:600;line-height:1.5}.lumal-schema-table__toolbar-tools[data-v-e0b97914]{flex:none;justify-content:flex-end;align-items:center;gap:8px;margin-left:auto;display:flex}.lumal-schema-table__toolbar-tools[data-v-e0b97914] .el-button{margin-left:0}.lumal-schema-table__toolbar-tools[data-v-e0b97914] .el-button.is-circle{flex:0 0 30px;width:30px;min-width:30px;height:30px;min-height:30px;padding:0}.lumal-schema-table__column-options[data-v-e0b97914]{z-index:var(--lumal-z-dropdown);border:1px solid var(--el-border-color-lighter);border-radius:var(--el-border-radius-base);background:var(--el-bg-color-overlay);width:max-content;min-width:200px;box-shadow:var(--lumal-shadow-base);flex-direction:column;gap:6px;padding:12px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.lumal-schema-table__column-options-header[data-v-e0b97914],.lumal-schema-table__column-option[data-v-e0b97914]{justify-content:space-between;align-items:center;gap:12px;display:flex}.lumal-schema-table__column-options-header[data-v-e0b97914]{border-bottom:1px solid var(--el-border-color-lighter);padding-bottom:8px}.lumal-schema-table__column-options-header button[data-v-e0b97914],.lumal-schema-table__column-order-actions button[data-v-e0b97914],.lumal-schema-table__error button[data-v-e0b97914]{border:1px solid var(--el-border-color);border-radius:var(--el-border-radius-small);min-height:32px;color:var(--el-text-color-regular);background:var(--el-fill-color-blank);cursor:pointer;padding:0 8px}.lumal-schema-table__column-option[draggable=true][data-v-e0b97914]{cursor:grab}.lumal-schema-table__column-order-actions[data-v-e0b97914]{gap:4px;display:inline-flex}.lumal-schema-table__column-order-actions button[data-v-e0b97914]{min-width:32px;padding:0}.lumal-schema-table__column-order-actions button[data-v-e0b97914]:disabled{cursor:not-allowed;opacity:.45}.lumal-schema-table__error[data-v-e0b97914]{border:1px dashed var(--el-color-danger-light-5);border-radius:var(--el-border-radius-base);min-height:160px;color:var(--el-color-danger);background:var(--el-color-danger-light-9);justify-content:center;align-items:center;gap:12px;padding:24px;display:flex}.lumal-schema-table__column-settings[data-v-e0b97914]{position:relative}.lumal-schema-table__column-settings-trigger[data-v-e0b97914] .lumal-icon{width:16px;height:16px}.lumal-schema-table__column-settings-trigger[data-v-e0b97914]{box-sizing:border-box;border:1px solid var(--el-border-color);width:30px;height:30px;color:var(--el-text-color-regular);background:var(--el-fill-color-blank);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;list-style:none;display:inline-flex}.lumal-schema-table__column-settings-trigger[data-v-e0b97914]::-webkit-details-marker{display:none}.lumal-schema-table__scroll[data-v-e0b97914]{width:100%;min-width:0;overflow-x:auto}.lumal-schema-table__body[data-v-e0b97914]{width:100%;min-width:720px}.lumal-schema-table__actions[data-v-e0b97914]{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.lumal-schema-table__mobile-actions[data-v-e0b97914]{box-sizing:border-box;border-radius:var(--el-border-radius-small);color:var(--el-color-primary);font:inherit;cursor:pointer;background:0 0;border:0;display:none}.lumal-schema-table__mobile-actions-menu[data-v-e0b97914]{gap:6px;min-width:112px;display:grid}.lumal-schema-table__mobile-actions-menu[data-v-e0b97914] .el-button{justify-content:flex-start;width:100%;margin-left:0}@media (width<=768px){.lumal-schema-table[data-v-e0b97914]{gap:12px}.lumal-schema-table__toolbar[data-v-e0b97914]{flex-wrap:wrap;justify-content:flex-start;align-items:center;row-gap:8px}.lumal-schema-table__toolbar-content[data-v-e0b97914]{flex:auto;justify-content:flex-start;min-width:0}.lumal-schema-table__toolbar-tools[data-v-e0b97914]{flex:0 auto;justify-content:flex-end;gap:6px;min-width:0;margin-left:auto}.lumal-schema-table__toolbar-tools[data-v-e0b97914] .el-button.is-circle{flex-basis:28px;width:28px;min-width:28px;height:28px;min-height:28px}.lumal-schema-table__column-settings-trigger[data-v-e0b97914]{width:28px;min-width:28px;height:28px;min-height:28px}.lumal-schema-table__pagination[data-v-e0b97914]{justify-content:flex-start;overflow-x:auto}.lumal-schema-table__actions--desktop[data-v-e0b97914]{display:none}.lumal-schema-table__mobile-actions[data-v-e0b97914]{justify-content:center;align-items:center;min-width:48px;height:32px;min-height:32px;padding:0 8px;display:inline-flex}.lumal-schema-table__mobile-actions[data-v-e0b97914]:hover,.lumal-schema-table__mobile-actions[data-v-e0b97914]:focus-visible,.lumal-schema-table__mobile-actions[aria-expanded=true][data-v-e0b97914]{background:var(--el-color-primary-light-9);outline:none}.lumal-schema-table__body[data-v-e0b97914] .el-table__body .el-table__cell{padding:8px 0}.lumal-schema-table__body[data-v-e0b97914] .el-table__body .cell{min-height:32px;line-height:32px}}.lumal-crud-table[data-v-9c07c262]{box-sizing:border-box;flex-direction:column;flex:auto;gap:16px;width:100%;min-width:0;height:100%;min-height:0;max-height:100%;display:flex;overflow:hidden}.lumal-crud-table[data-v-9c07c262]:fullscreen{box-sizing:border-box;background:var(--el-bg-color-page);height:100dvh;padding:16px;overflow:auto}.lumal-crud-table__query[data-v-9c07c262]{gap:var(--lumal-space-3,12px);border:1px solid var(--el-border-color-lighter);border-radius:calc(8px * var(--lumal-radius-scale,1));background:var(--el-fill-color-light);flex:none;padding:16px;display:grid}.lumal-crud-table__query-form[data-v-9c07c262] .lumal-schema-form__row{row-gap:14px}.lumal-crud-table__query-form[data-v-9c07c262] .el-form-item__label{color:var(--el-text-color-regular);font-weight:500}.lumal-crud-table__query-actions[data-v-9c07c262],.lumal-crud-table__toolbar[data-v-9c07c262],.lumal-crud-table__toolbar-tools[data-v-9c07c262]{gap:var(--lumal-space-2,8px);flex-wrap:wrap;align-items:center;min-width:0;display:flex}.lumal-crud-table__toolbar[data-v-9c07c262]{justify-content:flex-start;width:100%}.lumal-crud-table__toolbar.is-right[data-v-9c07c262]{justify-content:flex-end}.lumal-crud-table__toolbar-tools[data-v-9c07c262]{flex:none;justify-content:flex-end}.lumal-crud-table__toolbar-tools[data-v-9c07c262] [data-action=toggle-query-panel].is-active{border-color:var(--el-color-primary-light-5);color:var(--el-color-primary);background:var(--el-color-primary-light-9)}.lumal-crud-table__query-actions[data-v-9c07c262]{justify-content:flex-end}.lumal-crud-table__error[data-v-9c07c262],.lumal-crud-table__dialog-error[data-v-9c07c262]{gap:var(--lumal-space-3,12px);border:1px solid var(--el-color-danger-light-7);border-radius:var(--el-border-radius-base);color:var(--el-color-danger-dark-2);background:var(--el-color-danger-light-9);justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.lumal-crud-table__table-panel[data-v-9c07c262],.lumal-crud-table__body[data-v-9c07c262],.lumal-crud-table__extra[data-v-9c07c262]{width:100%;min-width:0}.lumal-crud-table__table-panel[data-v-9c07c262]{box-sizing:border-box;border:1px solid var(--el-border-color-lighter);border-radius:calc(8px * var(--lumal-radius-scale,1));background:var(--el-bg-color);flex-direction:column;flex:auto;min-height:0;padding:16px;display:flex}.lumal-crud-table__body[data-v-9c07c262]{flex:auto;min-height:0;display:flex}.lumal-crud-table__body[data-v-9c07c262] .lumal-schema-table{grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0}.lumal-crud-table__body[data-v-9c07c262] .lumal-schema-table__scroll{height:100%;min-height:0}.lumal-crud-table__pagination[data-v-9c07c262]{flex:none;min-width:0;padding-top:12px}@media (width>=960px){.lumal-crud-table__query.is-collapsed[data-v-9c07c262]{grid-template-columns:minmax(0,1fr) auto;align-items:end}.lumal-crud-table__query.is-collapsed .lumal-crud-table__query-actions[data-v-9c07c262]{white-space:nowrap;align-self:end}}.lumal-crud-table__dialog-error[data-v-9c07c262]{margin-bottom:var(--lumal-space-4,16px)}.lumal-crud-table__dialog-footer[data-v-9c07c262]{justify-content:flex-end;gap:8px;display:flex}.lumal-crud-table__dialog .el-dialog__header{border-bottom:1px solid var(--el-border-color-lighter);margin-right:0;padding:20px 24px 16px}.lumal-crud-table__dialog .el-dialog__body{padding:24px}.lumal-crud-table__dialog .el-dialog__footer{border-top:1px solid var(--el-border-color-lighter);padding:16px 24px}@media (width<=768px){.lumal-crud-table[data-v-9c07c262]{gap:12px;height:auto;max-height:none;overflow:visible}.lumal-crud-table__query[data-v-9c07c262]{gap:10px;padding:12px}.lumal-crud-table__query-form[data-v-9c07c262] .lumal-schema-form__row{row-gap:10px}.lumal-crud-table__table-panel[data-v-9c07c262]{flex:none;padding:12px}.lumal-crud-table__body[data-v-9c07c262]{flex:none;min-height:0}.lumal-crud-table__body[data-v-9c07c262] .lumal-schema-table{grid-template-rows:auto auto;height:auto;min-height:0}.lumal-crud-table__body[data-v-9c07c262] .lumal-schema-table__scroll{height:auto;min-height:160px;max-height:min(56dvh,480px);overflow:auto}.lumal-crud-table__query-actions[data-v-9c07c262]{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.lumal-crud-table__query-actions[data-v-9c07c262] .el-button{min-height:32px;margin-left:0}.lumal-crud-table__query-actions[data-v-9c07c262] [data-action=toggle-query]{grid-column:1/-1}.lumal-crud-table__toolbar[data-v-9c07c262] .el-button{min-height:32px;margin-left:0}.lumal-crud-table__toolbar-tools[data-v-9c07c262] .el-button{margin-left:0}.lumal-crud-table__dialog.el-dialog{flex-direction:column;max-height:calc(100dvh - 24px);margin:12px auto;display:flex;width:calc(100vw - 24px)!important}.lumal-crud-table__dialog .el-dialog__header{padding:12px}.lumal-crud-table__dialog .el-dialog__body{min-height:0;padding:12px;overflow-y:auto}.lumal-crud-table__dialog .el-dialog__footer{padding:10px 12px 12px}.lumal-crud-table__dialog-footer[data-v-9c07c262] .el-button{min-height:32px;margin-left:0}}@media (width<=480px){.lumal-crud-table__dialog-footer[data-v-9c07c262] .el-button{flex:1 1 0}}.lumal-info-table[data-v-3dfbcf43]{grid-template-columns:repeat(var(--lumal-info-table-columns), minmax(0, 1fr));border-radius:8px;margin:0;display:grid;overflow:hidden}.lumal-info-table--bordered[data-v-3dfbcf43]{border:1px solid var(--el-border-color-lighter)}.lumal-info-table__item[data-v-3dfbcf43]{border-bottom:1px solid var(--el-border-color-lighter);background:var(--el-bg-color);min-width:0;display:flex}.lumal-info-table__label[data-v-3dfbcf43]{box-sizing:border-box;color:var(--el-text-color-regular);background:var(--el-fill-color-light);font-size:calc(var(--lumal-font-size-base,14px) - 1px);flex:none;margin:0;padding:10px 12px;font-weight:600;line-height:1.5}.lumal-info-table__value[data-v-3dfbcf43]{min-width:0;color:var(--el-text-color-primary);font-size:calc(var(--lumal-font-size-base,14px) - 1px);overflow-wrap:anywhere;flex:auto;margin:0;padding:10px 12px;line-height:1.5}@media (width<=760px){.lumal-info-table[data-v-3dfbcf43]{grid-template-columns:1fr}.lumal-info-table__item[data-v-3dfbcf43]{grid-column:span 1!important}}.lumal-page[data-v-c57520b6]{box-sizing:border-box;border:1px solid var(--el-border-color-lighter);border-radius:calc(10px * var(--lumal-radius-scale,1));background:var(--el-bg-color);min-width:0;box-shadow:var(--lumal-shadow-light);align-content:start;gap:16px;padding:20px;display:grid;position:relative}.lumal-page.is-fill[data-v-c57520b6]{grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0}.lumal-page.is-no-padding[data-v-c57520b6]{box-shadow:none;background:0 0;border:0;padding:0}.lumal-page__header[data-v-c57520b6]{justify-content:space-between;align-items:flex-start;gap:16px;min-width:0;display:flex}.lumal-page__heading[data-v-c57520b6]{min-width:0}.lumal-page__title[data-v-c57520b6]{color:var(--el-text-color-primary);font-size:calc(var(--lumal-font-size-base,14px) + 4px);margin:0;line-height:1.4}.lumal-page__description[data-v-c57520b6]{color:var(--el-text-color-secondary);font-size:var(--lumal-font-size-base,14px);margin:4px 0 0;line-height:1.5}.lumal-page__actions[data-v-c57520b6]{flex:none;align-items:center;gap:8px;display:flex}.lumal-page__body[data-v-c57520b6]{min-width:0;min-height:0}.lumal-page.is-fill .lumal-page__body[data-v-c57520b6]{overflow:auto}.lumal-page__loading[data-v-c57520b6]{color:var(--el-text-color-regular);background:color-mix(in srgb, var(--el-bg-color) 82%, transparent);font-size:var(--lumal-font-size-base,14px);place-items:center;display:grid;position:absolute;inset:0}@media (width<=768px){.lumal-page[data-v-c57520b6]{gap:12px;padding:12px}.lumal-page__header[data-v-c57520b6]{flex-direction:column}.lumal-page__actions[data-v-c57520b6]{flex-wrap:wrap;width:100%}}.lumal-page-layout[data-v-d4b9bb06]{gap:16px;min-width:0;display:grid}.lumal-page-layout.is-fill[data-v-d4b9bb06]{grid-template-rows:auto auto minmax(0,1fr) auto;height:100%;min-height:0}.lumal-page-layout__query[data-v-d4b9bb06],.lumal-page-layout__toolbar[data-v-d4b9bb06],.lumal-page-layout__content[data-v-d4b9bb06],.lumal-page-layout__pagination[data-v-d4b9bb06]{min-width:0}.lumal-page-layout.is-surface .lumal-page-layout__query[data-v-d4b9bb06]{border:1px solid var(--el-border-color-lighter);border-radius:var(--el-border-radius-base);background:var(--el-fill-color-blank);gap:12px;padding:16px;display:grid}.lumal-page-layout__query-body[data-v-d4b9bb06]{min-width:0}.lumal-page-layout__query-actions[data-v-d4b9bb06]{justify-content:flex-end;gap:8px;display:flex}.lumal-page-layout.is-surface .lumal-page-layout__toolbar[data-v-d4b9bb06]{border:1px solid var(--el-border-color-lighter);border-radius:var(--el-border-radius-base);background:var(--el-fill-color-blank);justify-content:space-between;align-items:center;gap:8px;padding:12px 16px;display:flex}.lumal-page-layout__content[data-v-d4b9bb06]{min-width:0;min-height:0;overflow:hidden}.lumal-page-layout.is-content-scrollable .lumal-page-layout__content[data-v-d4b9bb06]{overflow:auto}.lumal-page-layout.is-surface .lumal-page-layout__content[data-v-d4b9bb06]{border:1px solid var(--el-border-color-lighter);border-radius:var(--el-border-radius-base);background:var(--el-fill-color-blank)}.lumal-page-layout__pagination[data-v-d4b9bb06]{justify-content:flex-end;padding:12px 16px;display:flex}.lumal-page-layout.is-surface .lumal-page-layout__pagination[data-v-d4b9bb06]{border:1px solid var(--el-border-color-lighter);border-radius:var(--el-border-radius-base);background:var(--el-fill-color-blank)}@media (width<=768px){.lumal-page-layout[data-v-d4b9bb06]{gap:12px}.lumal-page-layout__query[data-v-d4b9bb06],.lumal-page-layout__toolbar[data-v-d4b9bb06],.lumal-page-layout__pagination[data-v-d4b9bb06]{padding:12px}.lumal-page-layout__query-actions[data-v-d4b9bb06],.lumal-page-layout__pagination[data-v-d4b9bb06]{justify-content:flex-start}.lumal-page-layout__query-actions[data-v-d4b9bb06] .el-button{min-height:32px;padding-inline:12px}}.lumal-breadcrumb[data-v-53a036d9]{min-height:40px;padding:0 var(--lumal-page-gutter,20px);border-bottom:1px solid var(--el-border-color-lighter);background:var(--el-bg-color);flex:none;align-items:center;display:flex}.lumal-breadcrumb__list[data-v-53a036d9],.lumal-breadcrumb__item[data-v-53a036d9],.lumal-breadcrumb__current[data-v-53a036d9],.lumal-breadcrumb__link[data-v-53a036d9]{align-items:center;min-width:0;display:flex}.lumal-breadcrumb__list[data-v-53a036d9]{margin:0;padding:0;list-style:none;overflow:hidden}.lumal-breadcrumb__item[data-v-53a036d9]{flex:none;gap:8px}.lumal-breadcrumb__separator[data-v-53a036d9]{color:var(--el-text-color-placeholder);flex:none}.lumal-breadcrumb__link[data-v-53a036d9]{color:var(--el-text-color-regular);cursor:pointer;font:inherit;background:0 0;border:0;gap:5px;padding:4px 0}.lumal-breadcrumb__link[data-v-53a036d9]:hover{color:var(--el-color-primary)}.lumal-breadcrumb__link[data-v-53a036d9]:focus-visible{border-radius:var(--el-border-radius-small);outline:2px solid var(--el-color-primary);outline-offset:2px}.lumal-breadcrumb__current[data-v-53a036d9]{max-width:240px;color:var(--el-text-color-primary);text-overflow:ellipsis;white-space:nowrap;gap:5px;font-weight:500;overflow:hidden}@media (width<=768px){.lumal-breadcrumb[data-v-53a036d9]{display:none}}.lumal-content[data-v-a0d6361c]{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;background:var(--el-bg-color-page);flex-direction:column;flex:auto;min-width:0;min-height:0;padding:14px;display:flex;overflow:hidden auto}@media (width<=1024px){.lumal-content[data-v-a0d6361c]{padding:10px}}@media (width<=768px){.lumal-content[data-v-a0d6361c]{padding:6px}}.lumal-global-search__trigger[data-v-d6fd5c73]{border:1px solid var(--el-border-color-lighter);border-radius:var(--el-border-radius-base);min-width:44px;height:36px;color:var(--el-text-color-regular);cursor:pointer;background:var(--el-fill-color-light);font:inherit;justify-content:center;align-items:center;gap:7px;padding:0 9px;display:inline-flex}.lumal-global-search__trigger[data-v-d6fd5c73]:hover{border-color:var(--el-color-primary-light-5);color:var(--el-color-primary)}.lumal-global-search__trigger[data-v-d6fd5c73]:focus-visible,.lumal-global-search__dialog button[data-v-d6fd5c73]:focus-visible,.lumal-global-search__dialog input[data-v-d6fd5c73]:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.lumal-global-search__trigger-label[data-v-d6fd5c73]{font-size:calc(var(--lumal-font-size-base,14px) - 1px)}.lumal-global-search__trigger kbd[data-v-d6fd5c73]{border:1px solid var(--el-border-color);color:var(--el-text-color-secondary);background:var(--el-bg-color);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:calc(var(--lumal-font-size-base,14px) - 3px);border-radius:4px;padding:2px 5px;line-height:1.2}.lumal-global-search__backdrop[data-v-d6fd5c73]{z-index:calc(var(--lumal-z-drawer,1200) + 20);background:color-mix(in srgb, var(--el-color-black) 48%, transparent);justify-content:center;align-items:flex-start;padding:min(14vh,120px) 16px 24px;display:flex;position:fixed;inset:0}.lumal-global-search__dialog[data-v-d6fd5c73]{border:1px solid var(--el-border-color-light);border-radius:var(--el-border-radius-base);background:var(--el-bg-color);width:min(640px,100%);max-height:min(640px,76vh);box-shadow:var(--el-box-shadow-dark);flex-direction:column;display:flex;overflow:hidden}.lumal-global-search__header[data-v-d6fd5c73]{border-bottom:1px solid var(--el-border-color-lighter);justify-content:space-between;align-items:center;min-height:52px;padding:0 14px 0 18px;display:flex}.lumal-global-search__header h2[data-v-d6fd5c73]{font-size:calc(var(--lumal-font-size-base,14px) + 2px);margin:0;font-weight:600}.lumal-global-search__header button[data-v-d6fd5c73]{border-radius:var(--el-border-radius-base);width:40px;height:40px;color:var(--el-text-color-secondary);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.lumal-global-search__input-wrap[data-v-d6fd5c73]{border:1px solid var(--el-border-color);border-radius:var(--el-border-radius-base);min-height:52px;color:var(--el-text-color-placeholder);background:var(--el-fill-color-lighter);align-items:center;gap:10px;margin:14px;padding:0 14px;display:flex}.lumal-global-search__input-wrap[data-v-d6fd5c73]:focus-within{border-color:var(--el-color-primary)}.lumal-global-search__input-wrap input[data-v-d6fd5c73]{width:100%;min-width:0;height:48px;color:var(--el-text-color-primary);font:inherit;background:0 0;border:0;outline:0;padding:0}.lumal-global-search__results[data-v-d6fd5c73]{min-height:0;margin:0;padding:0 10px 12px;list-style:none;overflow-y:auto}.lumal-global-search__results button[data-v-d6fd5c73]{border-radius:var(--el-border-radius-base);width:100%;min-height:52px;color:var(--el-text-color-regular);cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.lumal-global-search__results button[data-v-d6fd5c73]:hover,.lumal-global-search__results button.is-active[data-v-d6fd5c73]{color:var(--el-color-primary);background:var(--el-color-primary-light-9)}.lumal-global-search__results button>span[data-v-d6fd5c73]{flex-direction:column;gap:2px;min-width:0;display:flex}.lumal-global-search__results strong[data-v-d6fd5c73],.lumal-global-search__results small[data-v-d6fd5c73]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lumal-global-search__results strong[data-v-d6fd5c73]{font-size:var(--lumal-font-size-base,14px);font-weight:600}.lumal-global-search__results small[data-v-d6fd5c73],.lumal-global-search__results code[data-v-d6fd5c73]{color:var(--el-text-color-secondary);font-size:calc(var(--lumal-font-size-base,14px) - 2px)}.lumal-global-search__results code[data-v-d6fd5c73]{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.lumal-global-search__empty[data-v-d6fd5c73]{color:var(--el-text-color-secondary);text-align:center;margin:0;padding:28px 20px 36px}.lumal-global-search__sr-only[data-v-d6fd5c73]{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (width<=1024px){.lumal-global-search__trigger-label[data-v-d6fd5c73],.lumal-global-search__trigger kbd[data-v-d6fd5c73]{display:none}}@media (prefers-reduced-motion:reduce){.lumal-global-search[data-v-d6fd5c73] *{scroll-behavior:auto!important}}.lumal-header[data-v-e9574860]{z-index:var(--lumal-z-header);border-bottom:1px solid var(--el-border-color-lighter);background:var(--el-bg-color);flex:none;justify-content:space-between;align-items:center;min-width:0;padding:0 12px;display:flex;position:relative}.lumal-header__left[data-v-e9574860]{align-items:center;gap:8px;min-width:0;display:flex}.lumal-header__toggle[data-v-e9574860]{width:32px;height:32px;color:var(--el-text-color-regular);border-radius:6px;flex:none;order:-1;margin-left:-4px;padding:0}.lumal-header__toggle[data-v-e9574860]:hover{color:var(--el-text-color-primary);background:var(--el-fill-color-light)}.lumal-header__toggle.is-after-title[data-v-e9574860]{order:initial;margin-left:0;margin-right:-4px}.lumal-header__toggle.is-mobile-only[data-v-e9574860]{display:none}.lumal-header__toggle svg[data-v-e9574860]{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.8px;width:16px;height:16px}.lumal-header__title[data-v-e9574860]{min-width:0;color:var(--el-text-color-primary);font-size:var(--lumal-font-size-base,14px);text-overflow:ellipsis;white-space:nowrap;font-weight:600;line-height:1.2;overflow:hidden}.lumal-header__navigation[data-v-e9574860]{flex:auto;align-self:stretch;align-items:center;min-width:0;margin-left:12px;display:flex;overflow:hidden}.lumal-header__breadcrumb[data-v-e9574860]{flex:auto;align-items:center;min-width:0;margin-left:12px;display:flex;overflow:hidden}.lumal-header__actions[data-v-e9574860]{flex:none;align-items:center;gap:4px;margin-left:8px;display:flex}@media (width<=1024px){.lumal-header[data-v-e9574860]{padding:0 10px}.lumal-header__navigation[data-v-e9574860],.lumal-header__breadcrumb[data-v-e9574860]{margin-left:8px}}@media (width<=768px){.lumal-header[data-v-e9574860]{padding:0 10px}.lumal-header__navigation[data-v-e9574860],.lumal-header__breadcrumb[data-v-e9574860]{display:none}.lumal-header__toggle.is-mobile-only[data-v-e9574860]{display:inline-flex}.lumal-header__left[data-v-e9574860]{flex:auto}}.lumal-menu-badge[data-v-0ca73e4b]{--lumal-menu-badge-color:var(--el-color-primary);min-width:18px;height:18px;color:var(--el-color-white);background:var(--lumal-menu-badge-color);font-size:calc(var(--lumal-font-size-base,14px) - 3px);font-variant-numeric:tabular-nums;border-radius:9px;flex:none;justify-content:center;align-items:center;padding:0 5px;line-height:18px;display:inline-flex}.lumal-menu-badge.is-dot[data-v-0ca73e4b]{width:8px;min-width:8px;height:8px;padding:0}.lumal-menu-badge.is-success[data-v-0ca73e4b]{--lumal-menu-badge-color:var(--el-color-success)}.lumal-menu-badge.is-warning[data-v-0ca73e4b]{--lumal-menu-badge-color:var(--el-color-warning)}.lumal-menu-badge.is-danger[data-v-0ca73e4b]{--lumal-menu-badge-color:var(--el-color-danger)}.lumal-menu-badge.is-info[data-v-0ca73e4b]{--lumal-menu-badge-color:var(--el-color-info)}.lumal-sidebar-menu-item__icon[data-v-a5f8c946]{flex:none;justify-content:center;align-items:center;margin-right:8px;font-style:normal;display:inline-flex}.lumal-sidebar-menu-item__label[data-v-a5f8c946]{align-items:center;gap:6px;min-width:0;display:flex}.lumal-sidebar-menu-item__title[data-v-a5f8c946]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lumal-sidebar-menu-item__external[data-v-a5f8c946]{color:var(--el-text-color-placeholder);font-size:calc(var(--lumal-font-size-base,14px) - 2px);margin-left:auto}.lumal-sidebar[data-v-d9c4d4bc]{border-right:1px solid var(--el-border-color-lighter);background:var(--el-bg-color);min-height:0;transition:width var(--lumal-motion-duration-base) var(--lumal-easing-standard), transform var(--lumal-motion-duration-base) var(--lumal-easing-standard);flex:none}.lumal-sidebar__scrollbar[data-v-d9c4d4bc]{height:100%}.lumal-sidebar__menu[data-v-d9c4d4bc]{border-right:0;min-height:100%;padding:12px 8px}.lumal-sidebar__menu[data-v-d9c4d4bc] .el-menu-item,.lumal-sidebar__menu[data-v-d9c4d4bc] .el-sub-menu__title{border-radius:var(--el-border-radius-base);height:44px;margin:2px 0}.lumal-sidebar__menu[data-v-d9c4d4bc] .el-menu-item.is-active{background:var(--el-color-primary-light-9);font-weight:600}.lumal-sidebar__menu.el-menu--collapse[data-v-d9c4d4bc] .el-menu-item,.lumal-sidebar__menu.el-menu--collapse[data-v-d9c4d4bc] .el-sub-menu__title{justify-content:center;padding-left:0!important;padding-right:0!important}.lumal-sidebar__menu.el-menu--collapse[data-v-d9c4d4bc] .lumal-sidebar-menu-item__icon{justify-content:center;align-items:center;width:20px;height:20px;margin:0;display:inline-flex}.lumal-tabs[data-v-5ebf2b13]{width:100%;min-width:0;height:var(--lumal-tabbar-height);border-bottom:1px solid var(--el-border-color-lighter);background:var(--el-bg-color);flex:none;display:flex;position:relative}.lumal-tabs__viewport[data-v-5ebf2b13]{scrollbar-width:none;flex:auto;min-width:0;overflow:auto hidden}.lumal-tabs__viewport[data-v-5ebf2b13]::-webkit-scrollbar{display:none}.lumal-tabs__list[data-v-5ebf2b13]{box-sizing:border-box;align-items:stretch;gap:2px;width:max-content;min-width:100%;height:100%;padding:3px 6px 0;display:flex}.lumal-tabs__item[data-v-5ebf2b13]{border-radius:var(--lumal-radius-small) var(--lumal-radius-small) 0 0;min-width:88px;max-width:min(240px,32vw);color:var(--el-text-color-regular);transition:color var(--lumal-motion-duration-fast) var(--lumal-easing-standard), background-color var(--lumal-motion-duration-fast) var(--lumal-easing-standard);align-items:center;display:flex;position:relative}.lumal-tabs__item[data-v-5ebf2b13]:hover{background:var(--el-fill-color-light)}.lumal-tabs__tab[data-v-5ebf2b13]{min-width:0;height:100%;color:inherit;cursor:pointer;background:0 0;border:0;flex:auto;align-items:center;gap:5px;padding:0 26px 0 10px;display:flex}.lumal-tabs__tab[data-v-5ebf2b13]:focus-visible,.lumal-tabs__tool[data-v-5ebf2b13]:focus-visible,.lumal-tabs__close[data-v-5ebf2b13]:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:-2px}.lumal-tabs__label[data-v-5ebf2b13]{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lumal-tabs__close[data-v-5ebf2b13]{width:18px;height:18px;color:var(--el-text-color-secondary);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:7px;transform:translateY(-50%)}.lumal-tabs__close[data-v-5ebf2b13]:hover{color:var(--el-text-color-primary);background:var(--el-fill-color)}.lumal-tabs__tool[data-v-5ebf2b13]{border:0;border-left:1px solid var(--el-border-color-lighter);width:36px;height:100%;color:var(--el-text-color-secondary);cursor:pointer;background:0 0;flex:0 0 36px;place-items:center;padding:0;display:grid}.lumal-tabs__tool[data-v-5ebf2b13]:hover:not(:disabled){color:var(--el-text-color-primary);background:var(--el-fill-color-light)}.lumal-tabs__tool[data-v-5ebf2b13]:disabled{cursor:default;opacity:.35}.lumal-tabs__item--ghost[data-v-5ebf2b13]{opacity:.4}.lumal-tabs__item--chosen[data-v-5ebf2b13]{box-shadow:inset 0 0 0 1px var(--el-color-primary-light-5)}.lumal-tabs.is-style-chrome .lumal-tabs__item.is-active[data-v-5ebf2b13]{color:var(--el-color-primary);background:var(--el-color-primary-light-9);box-shadow:inset 0 -2px var(--el-color-primary);position:relative}.lumal-tabs.is-style-chrome .lumal-tabs__item.is-active[data-v-5ebf2b13]:before,.lumal-tabs.is-style-chrome .lumal-tabs__item.is-active[data-v-5ebf2b13]:after{content:"";pointer-events:none;width:8px;height:8px;position:absolute;bottom:0}.lumal-tabs.is-style-chrome .lumal-tabs__item.is-active[data-v-5ebf2b13]:before{box-shadow:2px 2px 0 0 var(--el-color-primary-light-9);border-bottom-right-radius:8px;left:-8px}.lumal-tabs.is-style-chrome .lumal-tabs__item.is-active[data-v-5ebf2b13]:after{box-shadow:-2px 2px 0 0 var(--el-color-primary-light-9);border-bottom-left-radius:8px;right:-8px}.lumal-tabs.is-style-chrome .lumal-tabs__list>.lumal-tabs__item.is-active+.lumal-tabs__item .lumal-tabs__tab[data-v-5ebf2b13]:before{display:none}.lumal-tabs.is-style-chrome .lumal-tabs__list>.lumal-tabs__item+.lumal-tabs__item .lumal-tabs__tab[data-v-5ebf2b13]:before{content:"";background:var(--el-border-color-light);width:1px;position:absolute;top:12px;bottom:10px;left:-3px}.lumal-tabs.is-style-chrome .lumal-tabs__list>.lumal-tabs__item.is-active+.lumal-tabs__item .lumal-tabs__tab[data-v-5ebf2b13]:before,.lumal-tabs.is-style-chrome .lumal-tabs__list>.lumal-tabs__item+.lumal-tabs__item.is-active .lumal-tabs__tab[data-v-5ebf2b13]:before{display:none}.lumal-tabs.is-style-plain .lumal-tabs__item.is-active[data-v-5ebf2b13]{color:var(--el-color-primary);border-bottom:2px solid var(--el-color-primary)}.lumal-tabs.is-style-plain .lumal-tabs__list>.lumal-tabs__item+.lumal-tabs__item[data-v-5ebf2b13]{border-left:1px solid var(--el-border-color-lighter)}.lumal-tabs.is-style-card .lumal-tabs__item[data-v-5ebf2b13]{border-radius:var(--lumal-radius-small);border:1px solid #0000}.lumal-tabs.is-style-card .lumal-tabs__item.is-active[data-v-5ebf2b13]{border-color:var(--el-border-color-light);color:var(--el-color-primary);background:var(--el-bg-color);box-shadow:0 1px 3px color-mix(in srgb, var(--el-color-primary) 12%, transparent)}.lumal-tabs.is-style-card .lumal-tabs__item[data-v-5ebf2b13]:not(.is-active){background:var(--el-fill-color-light)}.lumal-tabs.is-style-card .lumal-tabs__list[data-v-5ebf2b13]{gap:4px;padding-top:4px}.lumal-tabs.is-style-brisk .lumal-tabs__item.is-active[data-v-5ebf2b13]{color:var(--el-color-primary)}.lumal-tabs.is-style-brisk .lumal-tabs__item.is-active[data-v-5ebf2b13]:after{content:"";background:var(--el-color-primary);transform-origin:50%;height:2px;animation:lumal-tab-brisk-underline-5ebf2b13 .16s var(--lumal-easing-standard);border-radius:2px;position:absolute;bottom:4px;left:14px;right:14px}@keyframes lumal-tab-brisk-underline-5ebf2b13{0%{opacity:0;transform:scaleX(.2)}to{opacity:1;transform:scaleX(1)}}.lumal-tabs__item.is-pinned .lumal-tabs__tab[data-v-5ebf2b13],.lumal-tabs__item.is-not-draggable[data-v-5ebf2b13]{cursor:default}@media (pointer:coarse){.lumal-tabs__item.is-not-draggable[data-v-5ebf2b13],.lumal-tabs__item[data-v-5ebf2b13]{cursor:default}}@media (width<=768px){.lumal-tabs[data-v-5ebf2b13]{height:40px}.lumal-tabs__list[data-v-5ebf2b13]{gap:1px;padding:3px 4px 0}.lumal-tabs__item[data-v-5ebf2b13]{min-width:72px;max-width:min(180px,42vw)}.lumal-tabs__tab[data-v-5ebf2b13]{gap:4px;padding:0 22px 0 8px}.lumal-tabs__close[data-v-5ebf2b13]{right:5px}.lumal-tabs__tool[data-v-5ebf2b13]{flex-basis:32px;width:32px}.lumal-tabs__tool--refresh[data-v-5ebf2b13],.lumal-tabs__tool--maximize[data-v-5ebf2b13]{display:none}}@media (prefers-reduced-motion:reduce){.lumal-tabs__item[data-v-5ebf2b13]{transition:none}.lumal-tabs.is-style-brisk .lumal-tabs__item.is-active[data-v-5ebf2b13]:after{animation:none}}.lumal-tab-enter-active[data-v-5ebf2b13],.lumal-tab-leave-active[data-v-5ebf2b13]{transition:opacity .16s var(--lumal-easing-standard), transform .16s var(--lumal-easing-standard)}.lumal-tab-enter-from[data-v-5ebf2b13]{opacity:0;transform:translate(-8px)}.lumal-tab-leave-to[data-v-5ebf2b13]{opacity:0;transform:translate(8px)}.lumal-tab-move[data-v-5ebf2b13]{transition:transform .16s var(--lumal-easing-standard)}@media (prefers-reduced-motion:reduce){.lumal-tab-enter-active[data-v-5ebf2b13],.lumal-tab-leave-active[data-v-5ebf2b13],.lumal-tab-move[data-v-5ebf2b13]{transition:none}}.lumal-tabs-context-menu{z-index:var(--lumal-z-context-menu);border:1px solid var(--el-border-color-lighter);border-radius:var(--lumal-radius-base);background:var(--el-bg-color-overlay);min-width:168px;box-shadow:var(--lumal-shadow-base);transform-origin:0 0;animation:lumal-tab-menu-in .14s var(--lumal-easing-standard);padding:4px;display:grid;position:fixed}@keyframes lumal-tab-menu-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.lumal-tabs-context-menu button{border-radius:var(--lumal-radius-small);color:var(--el-text-color-regular);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:8px 12px;display:flex}.lumal-tabs-context-menu button:hover:not(:disabled){color:var(--el-text-color-primary);background:var(--el-fill-color-light)}.lumal-tabs-context-menu button:disabled{color:var(--el-text-color-placeholder);cursor:not-allowed}.lumal-tabs-context-menu button:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:-2px}.lumal-tabs-context-menu__divider{background:var(--el-border-color-lighter);height:1px;margin:4px 6px}@media (prefers-reduced-motion:reduce){.lumal-tabs-context-menu{animation:none}}.lumal-top-nav-menu-item__label[data-v-f78b5b43]{align-items:center;gap:6px;min-width:0;display:inline-flex}.lumal-top-nav-menu-item__external[data-v-f78b5b43]{color:var(--el-text-color-placeholder);font-size:calc(var(--lumal-font-size-base,14px) - 2px);margin-left:4px}.lumal-top-nav[data-v-1c664f72]{--lumal-top-nav-item-height:36px;--lumal-top-nav-item-radius:6px;--lumal-top-nav-item-gap:2px;--lumal-top-nav-item-padding-x:12px;width:100%;max-width:var(--lumal-top-nav-max-width);flex:auto;align-items:center;min-width:0;height:100%;display:flex;background:0 0!important;border-bottom:0!important}.lumal-top-nav.is-align-left[data-v-1c664f72]{justify-content:flex-start;margin-right:auto}.lumal-top-nav.is-align-center[data-v-1c664f72]{justify-content:center;margin-left:auto;margin-right:auto}.lumal-top-nav.is-align-right[data-v-1c664f72]{justify-content:flex-end;margin-left:auto}.lumal-top-nav[data-v-1c664f72] .el-menu-item,.lumal-top-nav[data-v-1c664f72] .el-sub-menu__title{margin:0 var(--lumal-top-nav-item-gap);border-radius:var(--lumal-top-nav-item-radius);color:var(--el-text-color-regular);font-size:calc(var(--lumal-font-size-base,14px) - 1px);justify-content:center;align-items:center;gap:6px;font-weight:500;line-height:1;transition:color .15s,background-color .15s;display:inline-flex;height:var(--lumal-top-nav-item-height)!important;min-height:var(--lumal-top-nav-item-height)!important;padding:0 var(--lumal-top-nav-item-padding-x)!important;border-bottom:0!important}.lumal-top-nav[data-v-1c664f72] .el-sub-menu{height:var(--lumal-top-nav-item-height);margin:0}.lumal-top-nav[data-v-1c664f72] .el-sub-menu .el-sub-menu__icon-arrow{margin-top:1px;margin-left:4px;font-size:10px}.lumal-top-nav[data-v-1c664f72] .el-menu-item:not(.is-disabled):hover,.lumal-top-nav[data-v-1c664f72] .el-menu-item:not(.is-disabled):focus,.lumal-top-nav[data-v-1c664f72] .el-sub-menu__title:hover{color:var(--el-text-color-primary)!important;background-color:var(--el-fill-color-light)!important}.lumal-top-nav[data-v-1c664f72] .el-menu-item.is-active,.lumal-top-nav[data-v-1c664f72] .el-sub-menu.is-active>.el-sub-menu__title,.lumal-top-nav[data-v-1c664f72] .el-sub-menu.is-active>.el-tooltip__trigger>.el-sub-menu__title{font-weight:600;color:var(--el-color-primary)!important;background-color:color-mix(in srgb, var(--el-color-primary) 12%, transparent)!important;border-bottom:0!important}.lumal-top-nav[data-v-1c664f72] .el-menu--horizontal>.el-menu-item.is-active,.lumal-top-nav[data-v-1c664f72] .el-menu--horizontal>.el-sub-menu.is-active .el-sub-menu__title{border-bottom:0!important}.lumal-top-nav[data-v-1c664f72] .el-menu--popup .el-menu-item,.lumal-top-nav[data-v-1c664f72] .el-menu--popup .el-sub-menu__title{border-radius:var(--lumal-top-nav-item-radius);justify-content:flex-start;margin:2px 6px;height:36px!important;min-height:36px!important}.lumal-top-nav__external[data-v-1c664f72]{color:var(--el-text-color-placeholder);font-size:calc(var(--lumal-font-size-base,14px) - 2px)}.lumal-top-nav__label[data-v-1c664f72]{align-items:center;gap:4px;min-width:0;display:inline-flex}.lumal-layout[data-v-bac59663]{background:var(--el-bg-color-page);min-width:0;height:100dvh;min-height:100dvh;position:relative;overflow:hidden}.lumal-layout__body[data-v-bac59663]{flex:auto;min-width:0;min-height:0;position:relative;overflow:hidden}.lumal-layout__main[data-v-bac59663]{background:var(--el-bg-color-page);flex:auto;width:0;min-width:0;min-height:0;overflow:hidden}.lumal-layout__sidebar-scrim[data-v-bac59663],.lumal-layout__mobile-sidebar[data-v-bac59663]{display:none}.lumal-layout__header-breadcrumb[data-v-bac59663]{background:0 0;border-bottom:0;width:100%;min-height:0;padding:0}.lumal-layout.is-content-maximized .lumal-layout__main[data-v-bac59663]{z-index:var(--lumal-z-scrim);background:var(--el-bg-color-page);position:absolute;inset:0}.lumal-layout-sidebar-enter-active[data-v-bac59663],.lumal-layout-sidebar-leave-active[data-v-bac59663]{transition:width var(--lumal-motion-duration-base) var(--lumal-easing-standard), opacity var(--lumal-motion-duration-fast) ease, transform var(--lumal-motion-duration-base) var(--lumal-easing-standard), border-color var(--lumal-motion-duration-fast) ease;overflow:hidden}.lumal-layout-sidebar-leave-active[data-v-bac59663]{pointer-events:none}.lumal-layout-sidebar-enter-from[data-v-bac59663],.lumal-layout-sidebar-leave-to[data-v-bac59663]{opacity:0;border-right-color:#0000;transform:translate(-12px);width:0!important}@media (width<=768px){.lumal-layout__desktop-sidebar[data-v-bac59663]{display:none}.lumal-layout__mobile-sidebar[data-v-bac59663]{z-index:var(--lumal-z-drawer);box-shadow:var(--lumal-shadow-base);display:block;position:absolute;inset:0 auto 0 0;transform:translate(0);width:min(var(--lumal-sidebar-width,248px), 84vw)!important}.lumal-layout.is-mobile-menu-hidden .lumal-layout__mobile-sidebar[data-v-bac59663]{pointer-events:none;transform:translate(-100%)}.lumal-layout__sidebar-scrim[data-v-bac59663]{z-index:var(--lumal-z-scrim);background:color-mix(in srgb, var(--lumal-color-text-primary) 42%, transparent);cursor:pointer;border:0;padding:0;display:block;position:absolute;inset:0}.lumal-layout.is-mobile-menu-hidden .lumal-layout__sidebar-scrim[data-v-bac59663]{display:none}.lumal-layout__main[data-v-bac59663]{width:100%}}@media (prefers-reduced-motion:reduce){.lumal-layout__body[data-v-bac59663] .lumal-sidebar,.lumal-layout-sidebar-enter-active[data-v-bac59663],.lumal-layout-sidebar-leave-active[data-v-bac59663]{transition:none}}.lumal-router-view[data-v-f438a089]{flex-direction:column;flex:auto;width:100%;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden visible}.lumal-router-view[data-v-f438a089]>*{box-sizing:border-box;flex:auto;width:100%;min-width:0}.lumal-router-view__progress[data-v-f438a089]{z-index:3000;background:color-mix(in srgb, var(--el-color-primary) 14%, transparent);height:2px;position:fixed;top:0;left:0;right:0;overflow:hidden}.lumal-router-view__progress-bar[data-v-f438a089]{background:var(--el-color-primary);transform-origin:0;width:100%;height:100%;animation:.32s ease-out both lumal-router-view-progress-f438a089;display:block}.lumal-router-view__loading[data-v-f438a089]{z-index:19;background:color-mix(in srgb, var(--el-bg-color-page) 72%, transparent);pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.lumal-router-view__loading-dot[data-v-f438a089]{border:3px solid color-mix(in srgb, var(--el-color-primary) 18%, transparent);border-top-color:var(--el-color-primary);border-radius:999px;width:28px;height:28px;animation:.72s linear infinite lumal-router-view-loading-f438a089}.fade-side-enter-active[data-v-f438a089],.fade-side-leave-active[data-v-f438a089]{transition:opacity var(--lumal-motion-duration-slow) var(--lumal-easing-standard), transform var(--lumal-motion-duration-slow) var(--lumal-easing-standard)}.fade-side-enter-from[data-v-f438a089]{opacity:0;transform:translate(-30px)}.fade-side-leave-to[data-v-f438a089]{opacity:0;transform:translate(30px)}.fade-enter-active[data-v-f438a089],.fade-leave-active[data-v-f438a089]{transition:opacity var(--lumal-motion-duration-base) var(--lumal-easing-standard)}.fade-enter-from[data-v-f438a089],.fade-leave-to[data-v-f438a089]{opacity:0}.fade-bottom-enter-active[data-v-f438a089],.fade-bottom-leave-active[data-v-f438a089]{transition:opacity var(--lumal-motion-duration-base) var(--lumal-easing-standard), transform var(--lumal-motion-duration-slow) var(--lumal-easing-standard)}.fade-bottom-enter-from[data-v-f438a089]{opacity:0;transform:translateY(10%)}.fade-bottom-leave-to[data-v-f438a089]{opacity:0;transform:translateY(-10%)}.zoom-fade-enter-active[data-v-f438a089],.zoom-fade-leave-active[data-v-f438a089]{transition:opacity var(--lumal-motion-duration-slow) var(--lumal-easing-standard), transform var(--lumal-motion-duration-slow) var(--lumal-easing-standard)}.zoom-fade-enter-from[data-v-f438a089]{opacity:0;transform:scale(1.2)}.zoom-fade-leave-to[data-v-f438a089]{opacity:0;transform:scale(.8)}@keyframes lumal-router-view-progress-f438a089{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes lumal-router-view-loading-f438a089{to{transform:rotate(360deg)}}.lumal-theme-settings[data-v-e1228cb0]{height:100%;min-height:0;color:var(--el-text-color-primary);flex-direction:column;display:flex;overflow:hidden;container-type:inline-size}.lumal-theme-settings__tabs[data-v-e1228cb0]{border:1px solid var(--el-border-color-lighter);background:var(--el-fill-color);border-radius:9px;flex:none;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:12px;padding:4px;display:grid}.lumal-theme-settings__tab[data-v-e1228cb0]{min-height:34px;color:var(--el-text-color-secondary);cursor:pointer;font-size:calc(var(--lumal-font-size-base,14px) - 1px);background:0 0;border:0;border-radius:6px;padding:0 8px;font-weight:600;transition:color .2s,background-color .2s,box-shadow .2s}.lumal-theme-settings__tab[data-v-e1228cb0]:hover{color:var(--el-text-color-primary)}.lumal-theme-settings__tab.is-active[data-v-e1228cb0]{color:var(--el-color-primary);background:var(--el-bg-color);box-shadow:0 1px 3px color-mix(in srgb, var(--el-color-black) 12%, transparent)}.lumal-theme-settings__scroll[data-v-e1228cb0]{scrollbar-width:thin;flex:1;min-height:0;padding:18px 4px 22px;overflow-y:auto}.lumal-theme-settings__pane[data-v-e1228cb0]{gap:26px;display:grid}.lumal-theme-settings__section[data-v-e1228cb0]{gap:12px;display:grid}.lumal-theme-settings__section+.lumal-theme-settings__section[data-v-e1228cb0]{border-top:0;padding-top:0}h4[data-v-e1228cb0]{color:var(--el-text-color-primary);font-size:var(--lumal-font-size-base,14px);letter-spacing:.01em;margin:0;font-weight:700}.lumal-theme-settings__row[data-v-e1228cb0]{min-height:34px;font-size:calc(var(--lumal-font-size-base,14px) - 1px);justify-content:space-between;align-items:center;gap:12px;padding:0 4px;display:flex}.lumal-theme-settings__row.is-stacked[data-v-e1228cb0]{grid-template-columns:1fr auto;display:grid}.lumal-theme-settings__row.is-stacked[data-v-e1228cb0] .el-slider{grid-column:1;width:100%}.lumal-theme-settings__row.is-stacked[data-v-e1228cb0] .el-input-number{grid-area:2/2;width:112px}.is-disabled[data-v-e1228cb0]{opacity:.48}.lumal-theme-settings__card-grid[data-v-e1228cb0],.lumal-theme-settings__layout-grid[data-v-e1228cb0],.lumal-theme-settings__transition-grid[data-v-e1228cb0]{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.lumal-theme-settings__card-grid.is-three[data-v-e1228cb0],.lumal-theme-settings__layout-grid[data-v-e1228cb0]{grid-template-columns:repeat(3,minmax(0,1fr))}.lumal-theme-settings__transition-grid[data-v-e1228cb0]{grid-template-columns:repeat(4,minmax(0,1fr))}button[data-v-e1228cb0]{font:inherit}.lumal-theme-settings__mode-card[data-v-e1228cb0],.lumal-theme-settings__layout-card[data-v-e1228cb0],.lumal-theme-settings__transition-card[data-v-e1228cb0]{border:1px solid var(--el-border-color-lighter);min-width:0;min-height:62px;color:var(--el-text-color-secondary);cursor:pointer;background:var(--el-bg-color);box-shadow:0 1px 2px color-mix(in srgb, var(--el-color-black) 4%, transparent);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:8px;transition:border-color .2s,color .2s,background-color .2s,box-shadow .2s;display:flex}.lumal-theme-settings__mode-card[data-v-e1228cb0]:hover,.lumal-theme-settings__layout-card[data-v-e1228cb0]:hover,.lumal-theme-settings__transition-card[data-v-e1228cb0]:hover{border-color:var(--el-color-primary-light-5);color:var(--el-text-color-primary);box-shadow:0 3px 8px color-mix(in srgb, var(--el-color-black) 8%, transparent)}.lumal-theme-settings__mode-card.is-active[data-v-e1228cb0],.lumal-theme-settings__layout-card.is-active[data-v-e1228cb0],.lumal-theme-settings__transition-card.is-active[data-v-e1228cb0]{border-color:var(--el-color-primary);color:var(--el-color-primary);background:color-mix(in srgb, var(--el-color-primary) 8%, var(--el-bg-color));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--el-color-primary) 30%, transparent)}.lumal-theme-settings__mode-card[data-v-e1228cb0]:focus-visible,.lumal-theme-settings__layout-card[data-v-e1228cb0]:focus-visible,.lumal-theme-settings__transition-card[data-v-e1228cb0]:focus-visible,.lumal-theme-settings__tab[data-v-e1228cb0]:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.lumal-theme-settings__mode-icon[data-v-e1228cb0]{flex:none}.lumal-theme-settings__mode-card>span[data-v-e1228cb0]:last-child{white-space:nowrap;word-break:keep-all}.lumal-theme-settings__color-grid[data-v-e1228cb0]{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.lumal-theme-settings__color-card[data-v-e1228cb0]{border:1px solid var(--el-border-color-lighter);min-width:0;min-height:68px;color:var(--el-text-color-secondary);cursor:pointer;background:var(--el-bg-color);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:8px 6px;transition:border-color .2s,color .2s,background-color .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.lumal-theme-settings__color-card[data-v-e1228cb0]:hover{border-color:var(--el-color-primary-light-5);color:var(--el-text-color-primary)}.lumal-theme-settings__color-card.is-active[data-v-e1228cb0]{border-color:var(--el-color-primary);color:var(--el-color-primary);background:color-mix(in srgb, var(--el-color-primary) 6%, var(--el-bg-color));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--el-color-primary) 25%, transparent)}.lumal-theme-settings__color-card i[data-v-e1228cb0]{width:28px;height:20px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--el-color-black) 8%, transparent);border-radius:6px;flex:none}.lumal-theme-settings__color-card i.is-custom[data-v-e1228cb0]{background:linear-gradient(135deg,#3b82f6,#8b5cf6 50%,#ef4444)}.lumal-theme-settings__color-card>span[data-v-e1228cb0]{min-width:0;max-width:100%;font-size:calc(var(--lumal-font-size-base,14px) - 2px);text-overflow:ellipsis;white-space:nowrap;word-break:keep-all;overflow:hidden}.lumal-theme-settings__color-card input[data-v-e1228cb0]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.lumal-theme-settings__radius-grid[data-v-e1228cb0],.lumal-theme-settings__segments[data-v-e1228cb0]{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.lumal-theme-settings__radius-grid button[data-v-e1228cb0],.lumal-theme-settings__segments button[data-v-e1228cb0]{border:1px solid var(--el-border-color-lighter);min-height:32px;color:var(--el-text-color-secondary);cursor:pointer;background:var(--el-bg-color);border-radius:6px}.lumal-theme-settings__radius-grid button.is-active[data-v-e1228cb0],.lumal-theme-settings__segments button.is-active[data-v-e1228cb0]{border-color:var(--el-color-primary);color:var(--el-color-primary);background:var(--el-color-primary-light-9)}.lumal-theme-settings__segments[data-v-e1228cb0]{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.lumal-theme-settings__tab-style[data-v-e1228cb0]{grid-template-columns:repeat(4,1fr)}.lumal-theme-settings__layout-preview[data-v-e1228cb0]{width:100%;max-height:48px;color:var(--el-color-primary)}.lumal-theme-settings__layout-preview rect[data-v-e1228cb0]{fill:var(--el-fill-color);stroke:color-mix(in srgb, var(--el-border-color) 80%, transparent);stroke-width:1px}.lumal-theme-settings__layout-preview rect.is-background[data-v-e1228cb0]{fill:var(--el-fill-color-lighter)}.lumal-theme-settings__layout-preview rect.is-medium[data-v-e1228cb0]{fill:var(--el-color-primary-light-7);stroke:var(--el-color-primary-light-5)}.lumal-theme-settings__layout-preview rect.is-strong[data-v-e1228cb0]{fill:var(--el-color-primary-light-5);stroke:var(--el-color-primary-light-3)}.lumal-theme-settings__transition-card[data-v-e1228cb0]{min-height:64px;font-size:calc(var(--lumal-font-size-base,14px) - 2px);padding:7px 4px}.lumal-theme-settings__transition-preview[data-v-e1228cb0]{background:var(--el-fill-color-light);border-radius:6px;width:42px;height:30px;position:relative}.lumal-theme-settings__transition-preview i[data-v-e1228cb0]{background:var(--el-color-primary-light-5);opacity:.3;border-radius:5px;position:absolute;inset:7px 10px}.lumal-theme-settings__transition-preview i[data-v-e1228cb0]:last-child{opacity:1}.lumal-theme-settings__transition-card:not(:disabled).is-fade-side i[data-v-e1228cb0]:last-child{animation:2.4s infinite lumal-settings-side-e1228cb0}.lumal-theme-settings__transition-card:not(:disabled).is-fade i[data-v-e1228cb0]:last-child{animation:2.4s infinite lumal-settings-fade-e1228cb0}.lumal-theme-settings__transition-card:not(:disabled).is-fade-bottom i[data-v-e1228cb0]:last-child{animation:2.4s infinite lumal-settings-bottom-e1228cb0}.lumal-theme-settings__transition-card:not(:disabled).is-zoom-fade i[data-v-e1228cb0]:last-child{animation:2.4s infinite lumal-settings-zoom-e1228cb0}.lumal-theme-settings__transition-card[data-v-e1228cb0]:disabled{cursor:not-allowed;opacity:.45}.lumal-theme-settings__actions[data-v-e1228cb0]{border-top:1px solid var(--el-border-color-lighter);background:var(--el-bg-color-page);flex:none;padding:12px 4px 0}.lumal-theme-settings__reset[data-v-e1228cb0]{border-color:var(--el-border-color);background:var(--el-bg-color);gap:8px;width:100%;min-height:38px}@keyframes lumal-settings-side-e1228cb0{0%,20%,to{opacity:0;transform:translate(-10px)}40%,80%{opacity:1;transform:translate(0)}}@keyframes lumal-settings-fade-e1228cb0{0%,20%,to{opacity:0}40%,80%{opacity:1}}@keyframes lumal-settings-bottom-e1228cb0{0%,20%,to{opacity:0;transform:translateY(8px)}40%,80%{opacity:1;transform:translateY(0)}}@keyframes lumal-settings-zoom-e1228cb0{0%,20%,to{opacity:0;transform:scale(.82)}40%,80%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.lumal-theme-settings[data-v-e1228cb0] *,.lumal-theme-settings[data-v-e1228cb0] :before,.lumal-theme-settings[data-v-e1228cb0] :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation:none!important}}@container (width<=320px){.lumal-theme-settings__transition-grid[data-v-e1228cb0]{grid-template-columns:repeat(2,minmax(0,1fr))}}
1
+ .lumal-pagination[data-v-d546f46b]{flex-wrap:wrap;justify-content:flex-end;row-gap:8px;width:100%;min-width:0;display:flex}@media (width<=640px){.lumal-pagination[data-v-d546f46b]{justify-content:flex-start;row-gap:4px}.lumal-pagination[data-v-d546f46b] .el-pagination__jump{display:none}.lumal-pagination[data-v-d546f46b] .el-pagination__sizes{margin-left:0}}.lumal-schema-form[data-v-a2c0ed84]{gap:18px;width:100%;min-width:0;display:grid}.lumal-schema-form__row[data-v-a2c0ed84]{row-gap:18px;min-width:0}.lumal-schema-form__item[data-v-a2c0ed84]{width:100%;margin-bottom:0}.lumal-schema-form__item[data-v-a2c0ed84] .el-form-item__content{min-width:0}.lumal-schema-form.is-compact .lumal-schema-form__row[data-v-a2c0ed84]{row-gap:10px}.lumal-schema-form__description[data-v-a2c0ed84],.lumal-schema-form__help[data-v-a2c0ed84]{width:100%;color:var(--el-text-color-secondary);font-size:calc(var(--lumal-font-size-base,14px) - 2px);margin:6px 0 0;line-height:1.5}.lumal-schema-form__help[data-v-a2c0ed84]{color:var(--el-color-info)}.lumal-schema-form__item[data-v-a2c0ed84] .el-input,.lumal-schema-form__item[data-v-a2c0ed84] .el-input-number,.lumal-schema-form__item[data-v-a2c0ed84] .el-select,.lumal-schema-form__item[data-v-a2c0ed84] .el-cascader,.lumal-schema-form__item[data-v-a2c0ed84] .el-date-editor,.lumal-schema-form__item[data-v-a2c0ed84] .el-tree-select{width:100%;min-width:0}.lumal-schema-form__readonly-value[data-v-a2c0ed84]{min-height:32px;color:var(--el-text-color-regular);overflow-wrap:anywhere;line-height:32px}.lumal-schema-form__actions[data-v-a2c0ed84]{border-top:1px solid var(--el-border-color-lighter);justify-content:flex-end;padding-top:16px;display:flex}.lumal-schema-form__actions.is-left[data-v-a2c0ed84]{justify-content:flex-start}.lumal-schema-form__actions.is-center[data-v-a2c0ed84]{justify-content:center}.lumal-schema-form__actions.is-inline[data-v-a2c0ed84]{border-top:0;padding-top:0}.lumal-schema-form__actions.is-newLine[data-v-a2c0ed84]{margin-top:4px}@media (width<=1024px){.lumal-schema-form__row[data-v-a2c0ed84] .el-col:not(.is-full-span){flex:0 0 50%;max-width:50%}}@media (width<=768px){.lumal-schema-form[data-v-a2c0ed84]{gap:12px}.lumal-schema-form__row[data-v-a2c0ed84]{row-gap:10px}.lumal-schema-form__row[data-v-a2c0ed84] .el-col.el-col{flex:0 0 100%;max-width:100%}.lumal-schema-form[data-v-a2c0ed84] .el-input__wrapper,.lumal-schema-form[data-v-a2c0ed84] .el-select__wrapper,.lumal-schema-form[data-v-a2c0ed84] .el-input-number,.lumal-schema-form[data-v-a2c0ed84] .el-date-editor{min-height:32px}.lumal-schema-form__actions[data-v-a2c0ed84]{justify-content:stretch;padding-top:12px}.lumal-schema-form__actions[data-v-a2c0ed84] .el-button{flex:auto;min-height:32px}}@media (width<=480px){.lumal-schema-form__item[data-v-a2c0ed84]{display:block}.lumal-schema-form__item[data-v-a2c0ed84] .el-form-item__label{justify-content:flex-start;height:auto;padding:0 0 6px;line-height:20px;width:100%!important}.lumal-schema-form__item[data-v-a2c0ed84] .el-form-item__content{width:100%;margin-left:0!important}}.lumal-schema-table__dictionary-tags[data-v-1569bd9d]{vertical-align:middle;flex-wrap:wrap;align-items:center;gap:4px;max-width:100%;display:inline-flex}.lumal-schema-table__dictionary-tag[data-v-1569bd9d]{border:1px solid;border-color:color-mix(in srgb, var(--lumal-dictionary-color,var(--el-border-color)) 32%, var(--el-border-color-lighter));max-width:100%;min-height:24px;color:color-mix(in srgb, var(--lumal-dictionary-color,var(--el-text-color-regular)) 82%, var(--el-text-color-primary));background:color-mix(in srgb, var(--lumal-dictionary-color,var(--el-fill-color)) 10%, var(--el-bg-color));border-radius:999px;align-items:center;gap:6px;padding:2px 8px;line-height:1.5;display:inline-flex}.lumal-schema-table__dictionary-dot[data-v-1569bd9d]{background:var(--lumal-dictionary-color);width:7px;height:7px;box-shadow:0 0 0 1px color-mix(in srgb, var(--lumal-dictionary-color) 70%, transparent);border-radius:50%;flex:none;display:inline-block}.lumal-schema-table[data-v-3580df56]{gap:16px;width:100%;min-width:0;display:grid}.lumal-schema-table__toolbar[data-v-3580df56],.lumal-schema-table__pagination[data-v-3580df56]{justify-content:flex-end;display:flex}.lumal-schema-table__toolbar[data-v-3580df56]{align-items:center;gap:8px;min-height:40px}.lumal-schema-table__toolbar-content[data-v-3580df56]{flex:auto;justify-content:flex-start;min-width:0;display:flex}.lumal-schema-table__toolbar-title[data-v-3580df56]{min-width:0;color:var(--el-text-color-primary);font-size:calc(var(--lumal-font-size-base,14px) + 2px);flex:none;font-weight:600;line-height:1.5}.lumal-schema-table__toolbar-tools[data-v-3580df56]{flex:none;justify-content:flex-end;align-items:center;gap:8px;margin-left:auto;display:flex}.lumal-schema-table__toolbar-tools[data-v-3580df56] .el-button{margin-left:0}.lumal-schema-table__toolbar-tools[data-v-3580df56] .el-button.is-circle{flex:0 0 30px;width:30px;min-width:30px;height:30px;min-height:30px;padding:0}.lumal-schema-table__column-options[data-v-3580df56]{z-index:var(--lumal-z-dropdown);border:1px solid var(--el-border-color-lighter);border-radius:var(--el-border-radius-base);background:var(--el-bg-color-overlay);width:max-content;min-width:200px;box-shadow:var(--lumal-shadow-base);flex-direction:column;gap:6px;padding:12px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.lumal-schema-table__column-options-header[data-v-3580df56],.lumal-schema-table__column-option[data-v-3580df56]{justify-content:space-between;align-items:center;gap:12px;display:flex}.lumal-schema-table__column-options-header[data-v-3580df56]{border-bottom:1px solid var(--el-border-color-lighter);padding-bottom:8px}.lumal-schema-table__column-options-header button[data-v-3580df56],.lumal-schema-table__column-order-actions button[data-v-3580df56],.lumal-schema-table__error button[data-v-3580df56]{border:1px solid var(--el-border-color);border-radius:var(--el-border-radius-small);min-height:32px;color:var(--el-text-color-regular);background:var(--el-fill-color-blank);cursor:pointer;padding:0 8px}.lumal-schema-table__column-option[draggable=true][data-v-3580df56]{cursor:grab}.lumal-schema-table__column-order-actions[data-v-3580df56]{gap:4px;display:inline-flex}.lumal-schema-table__column-order-actions button[data-v-3580df56]{min-width:32px;padding:0}.lumal-schema-table__column-order-actions button[data-v-3580df56]:disabled{cursor:not-allowed;opacity:.45}.lumal-schema-table__error[data-v-3580df56]{border:1px dashed var(--el-color-danger-light-5);border-radius:var(--el-border-radius-base);min-height:160px;color:var(--el-color-danger);background:var(--el-color-danger-light-9);justify-content:center;align-items:center;gap:12px;padding:24px;display:flex}.lumal-schema-table__column-settings[data-v-3580df56]{position:relative}.lumal-schema-table__column-settings-trigger[data-v-3580df56] .lumal-icon{width:16px;height:16px}.lumal-schema-table__column-settings-trigger[data-v-3580df56]{box-sizing:border-box;border:1px solid var(--el-border-color);width:30px;height:30px;color:var(--el-text-color-regular);background:var(--el-fill-color-blank);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;list-style:none;display:inline-flex}.lumal-schema-table__column-settings-trigger[data-v-3580df56]::-webkit-details-marker{display:none}.lumal-schema-table__scroll[data-v-3580df56]{width:100%;min-width:0;overflow-x:auto}.lumal-schema-table__body[data-v-3580df56]{width:100%;min-width:720px}.lumal-schema-table__actions[data-v-3580df56]{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.lumal-schema-table__mobile-actions[data-v-3580df56]{box-sizing:border-box;border-radius:var(--el-border-radius-small);color:var(--el-color-primary);font:inherit;cursor:pointer;background:0 0;border:0;display:none}.lumal-schema-table__mobile-actions-menu[data-v-3580df56]{gap:6px;min-width:112px;display:grid}.lumal-schema-table__mobile-actions-menu[data-v-3580df56] .el-button{justify-content:flex-start;width:100%;margin-left:0}@media (width<=768px){.lumal-schema-table[data-v-3580df56]{gap:12px}.lumal-schema-table__toolbar[data-v-3580df56]{flex-wrap:wrap;justify-content:flex-start;align-items:center;row-gap:8px}.lumal-schema-table__toolbar-content[data-v-3580df56]{flex:auto;justify-content:flex-start;min-width:0}.lumal-schema-table__toolbar-tools[data-v-3580df56]{flex:0 auto;justify-content:flex-end;gap:6px;min-width:0;margin-left:auto}.lumal-schema-table__toolbar-tools[data-v-3580df56] .el-button.is-circle{flex-basis:28px;width:28px;min-width:28px;height:28px;min-height:28px}.lumal-schema-table__column-settings-trigger[data-v-3580df56]{width:28px;min-width:28px;height:28px;min-height:28px}.lumal-schema-table__pagination[data-v-3580df56]{justify-content:flex-start;overflow-x:auto}.lumal-schema-table__actions--desktop[data-v-3580df56]{display:none}.lumal-schema-table__mobile-actions[data-v-3580df56]{justify-content:center;align-items:center;min-width:48px;height:32px;min-height:32px;padding:0 8px;display:inline-flex}.lumal-schema-table__mobile-actions[data-v-3580df56]:hover,.lumal-schema-table__mobile-actions[data-v-3580df56]:focus-visible,.lumal-schema-table__mobile-actions[aria-expanded=true][data-v-3580df56]{background:var(--el-color-primary-light-9);outline:none}.lumal-schema-table__body[data-v-3580df56] .el-table__body .el-table__cell{padding:8px 0}.lumal-schema-table__body[data-v-3580df56] .el-table__body .cell{min-height:32px;line-height:32px}}.lumal-crud-table[data-v-c86f2c66]{box-sizing:border-box;flex-direction:column;flex:auto;gap:16px;width:100%;min-width:0;height:100%;min-height:0;max-height:100%;display:flex;overflow:hidden}.lumal-crud-table[data-v-c86f2c66]:fullscreen{box-sizing:border-box;background:var(--el-bg-color-page);height:100dvh;padding:16px;overflow:auto}.lumal-crud-table__query[data-v-c86f2c66]{gap:var(--lumal-space-3,12px);border:1px solid var(--el-border-color-lighter);border-radius:calc(8px * var(--lumal-radius-scale,1));background:var(--el-fill-color-light);flex:none;padding:16px;display:grid}.lumal-crud-table__query-form[data-v-c86f2c66] .lumal-schema-form__row{row-gap:14px}.lumal-crud-table__query-form[data-v-c86f2c66] .el-form-item__label{color:var(--el-text-color-regular);font-weight:500}.lumal-crud-table__query-actions[data-v-c86f2c66],.lumal-crud-table__toolbar[data-v-c86f2c66],.lumal-crud-table__toolbar-tools[data-v-c86f2c66]{gap:var(--lumal-space-2,8px);flex-wrap:wrap;align-items:center;min-width:0;display:flex}.lumal-crud-table__toolbar[data-v-c86f2c66]{justify-content:flex-start;width:100%}.lumal-crud-table__toolbar.is-right[data-v-c86f2c66]{justify-content:flex-end}.lumal-crud-table__toolbar-tools[data-v-c86f2c66]{flex:none;justify-content:flex-end}.lumal-crud-table__toolbar-tools[data-v-c86f2c66] [data-action=toggle-query-panel].is-active{border-color:var(--el-color-primary-light-5);color:var(--el-color-primary);background:var(--el-color-primary-light-9)}.lumal-crud-table__query-actions[data-v-c86f2c66]{justify-content:flex-end}.lumal-crud-table__error[data-v-c86f2c66],.lumal-crud-table__dialog-error[data-v-c86f2c66]{gap:var(--lumal-space-3,12px);border:1px solid var(--el-color-danger-light-7);border-radius:var(--el-border-radius-base);color:var(--el-color-danger-dark-2);background:var(--el-color-danger-light-9);justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.lumal-crud-table__table-panel[data-v-c86f2c66],.lumal-crud-table__body[data-v-c86f2c66],.lumal-crud-table__extra[data-v-c86f2c66]{width:100%;min-width:0}.lumal-crud-table__table-panel[data-v-c86f2c66]{box-sizing:border-box;border:1px solid var(--el-border-color-lighter);border-radius:calc(8px * var(--lumal-radius-scale,1));background:var(--el-bg-color);flex-direction:column;flex:auto;min-height:0;padding:16px;display:flex}.lumal-crud-table__body[data-v-c86f2c66]{flex:auto;min-height:0;display:flex}.lumal-crud-table__body[data-v-c86f2c66] .lumal-schema-table{grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0}.lumal-crud-table__body[data-v-c86f2c66] .lumal-schema-table__scroll{height:100%;min-height:0}.lumal-crud-table__pagination[data-v-c86f2c66]{flex:none;min-width:0;padding-top:12px}@media (width>=960px){.lumal-crud-table__query.is-collapsed[data-v-c86f2c66]{grid-template-columns:minmax(0,1fr) auto;align-items:end}.lumal-crud-table__query.is-collapsed .lumal-crud-table__query-actions[data-v-c86f2c66]{white-space:nowrap;align-self:end}}.lumal-crud-table__dialog-error[data-v-c86f2c66]{margin-bottom:var(--lumal-space-4,16px)}.lumal-crud-table__dialog-footer[data-v-c86f2c66]{justify-content:flex-end;gap:8px;display:flex}.lumal-crud-table__dialog .el-dialog__header{border-bottom:1px solid var(--el-border-color-lighter);margin-right:0;padding:20px 24px 16px}.lumal-crud-table__dialog .el-dialog__body{padding:24px}.lumal-crud-table__dialog .el-dialog__footer{border-top:1px solid var(--el-border-color-lighter);padding:16px 24px}@media (width<=768px){.lumal-crud-table[data-v-c86f2c66]{gap:12px;height:auto;max-height:none;overflow:visible}.lumal-crud-table__query[data-v-c86f2c66]{gap:10px;padding:12px}.lumal-crud-table__query-form[data-v-c86f2c66] .lumal-schema-form__row{row-gap:10px}.lumal-crud-table__table-panel[data-v-c86f2c66]{flex:none;padding:12px}.lumal-crud-table__body[data-v-c86f2c66]{flex:none;min-height:0}.lumal-crud-table__body[data-v-c86f2c66] .lumal-schema-table{grid-template-rows:auto auto;height:auto;min-height:0}.lumal-crud-table__body[data-v-c86f2c66] .lumal-schema-table__scroll{height:auto;min-height:160px;max-height:min(56dvh,480px);overflow:auto}.lumal-crud-table__query-actions[data-v-c86f2c66]{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.lumal-crud-table__query-actions[data-v-c86f2c66] .el-button{min-height:32px;margin-left:0}.lumal-crud-table__query-actions[data-v-c86f2c66] [data-action=toggle-query]{grid-column:1/-1}.lumal-crud-table__toolbar[data-v-c86f2c66] .el-button{min-height:32px;margin-left:0}.lumal-crud-table__toolbar-tools[data-v-c86f2c66] .el-button{margin-left:0}.lumal-crud-table__dialog.el-dialog{flex-direction:column;max-height:calc(100dvh - 24px);margin:12px auto;display:flex;width:calc(100vw - 24px)!important}.lumal-crud-table__dialog .el-dialog__header{padding:12px}.lumal-crud-table__dialog .el-dialog__body{min-height:0;padding:12px;overflow-y:auto}.lumal-crud-table__dialog .el-dialog__footer{padding:10px 12px 12px}.lumal-crud-table__dialog-footer[data-v-c86f2c66] .el-button{min-height:32px;margin-left:0}}@media (width<=480px){.lumal-crud-table__dialog-footer[data-v-c86f2c66] .el-button{flex:1 1 0}}.lumal-info-table[data-v-3dfbcf43]{grid-template-columns:repeat(var(--lumal-info-table-columns), minmax(0, 1fr));border-radius:8px;margin:0;display:grid;overflow:hidden}.lumal-info-table--bordered[data-v-3dfbcf43]{border:1px solid var(--el-border-color-lighter)}.lumal-info-table__item[data-v-3dfbcf43]{border-bottom:1px solid var(--el-border-color-lighter);background:var(--el-bg-color);min-width:0;display:flex}.lumal-info-table__label[data-v-3dfbcf43]{box-sizing:border-box;color:var(--el-text-color-regular);background:var(--el-fill-color-light);font-size:calc(var(--lumal-font-size-base,14px) - 1px);flex:none;margin:0;padding:10px 12px;font-weight:600;line-height:1.5}.lumal-info-table__value[data-v-3dfbcf43]{min-width:0;color:var(--el-text-color-primary);font-size:calc(var(--lumal-font-size-base,14px) - 1px);overflow-wrap:anywhere;flex:auto;margin:0;padding:10px 12px;line-height:1.5}@media (width<=760px){.lumal-info-table[data-v-3dfbcf43]{grid-template-columns:1fr}.lumal-info-table__item[data-v-3dfbcf43]{grid-column:span 1!important}}.lumal-page[data-v-c57520b6]{box-sizing:border-box;border:1px solid var(--el-border-color-lighter);border-radius:calc(10px * var(--lumal-radius-scale,1));background:var(--el-bg-color);min-width:0;box-shadow:var(--lumal-shadow-light);align-content:start;gap:16px;padding:20px;display:grid;position:relative}.lumal-page.is-fill[data-v-c57520b6]{grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0}.lumal-page.is-no-padding[data-v-c57520b6]{box-shadow:none;background:0 0;border:0;padding:0}.lumal-page__header[data-v-c57520b6]{justify-content:space-between;align-items:flex-start;gap:16px;min-width:0;display:flex}.lumal-page__heading[data-v-c57520b6]{min-width:0}.lumal-page__title[data-v-c57520b6]{color:var(--el-text-color-primary);font-size:calc(var(--lumal-font-size-base,14px) + 4px);margin:0;line-height:1.4}.lumal-page__description[data-v-c57520b6]{color:var(--el-text-color-secondary);font-size:var(--lumal-font-size-base,14px);margin:4px 0 0;line-height:1.5}.lumal-page__actions[data-v-c57520b6]{flex:none;align-items:center;gap:8px;display:flex}.lumal-page__body[data-v-c57520b6]{min-width:0;min-height:0}.lumal-page.is-fill .lumal-page__body[data-v-c57520b6]{overflow:auto}.lumal-page__loading[data-v-c57520b6]{color:var(--el-text-color-regular);background:color-mix(in srgb, var(--el-bg-color) 82%, transparent);font-size:var(--lumal-font-size-base,14px);place-items:center;display:grid;position:absolute;inset:0}@media (width<=768px){.lumal-page[data-v-c57520b6]{gap:12px;padding:12px}.lumal-page__header[data-v-c57520b6]{flex-direction:column}.lumal-page__actions[data-v-c57520b6]{flex-wrap:wrap;width:100%}}.lumal-page-layout[data-v-d4b9bb06]{gap:16px;min-width:0;display:grid}.lumal-page-layout.is-fill[data-v-d4b9bb06]{grid-template-rows:auto auto minmax(0,1fr) auto;height:100%;min-height:0}.lumal-page-layout__query[data-v-d4b9bb06],.lumal-page-layout__toolbar[data-v-d4b9bb06],.lumal-page-layout__content[data-v-d4b9bb06],.lumal-page-layout__pagination[data-v-d4b9bb06]{min-width:0}.lumal-page-layout.is-surface .lumal-page-layout__query[data-v-d4b9bb06]{border:1px solid var(--el-border-color-lighter);border-radius:var(--el-border-radius-base);background:var(--el-fill-color-blank);gap:12px;padding:16px;display:grid}.lumal-page-layout__query-body[data-v-d4b9bb06]{min-width:0}.lumal-page-layout__query-actions[data-v-d4b9bb06]{justify-content:flex-end;gap:8px;display:flex}.lumal-page-layout.is-surface .lumal-page-layout__toolbar[data-v-d4b9bb06]{border:1px solid var(--el-border-color-lighter);border-radius:var(--el-border-radius-base);background:var(--el-fill-color-blank);justify-content:space-between;align-items:center;gap:8px;padding:12px 16px;display:flex}.lumal-page-layout__content[data-v-d4b9bb06]{min-width:0;min-height:0;overflow:hidden}.lumal-page-layout.is-content-scrollable .lumal-page-layout__content[data-v-d4b9bb06]{overflow:auto}.lumal-page-layout.is-surface .lumal-page-layout__content[data-v-d4b9bb06]{border:1px solid var(--el-border-color-lighter);border-radius:var(--el-border-radius-base);background:var(--el-fill-color-blank)}.lumal-page-layout__pagination[data-v-d4b9bb06]{justify-content:flex-end;padding:12px 16px;display:flex}.lumal-page-layout.is-surface .lumal-page-layout__pagination[data-v-d4b9bb06]{border:1px solid var(--el-border-color-lighter);border-radius:var(--el-border-radius-base);background:var(--el-fill-color-blank)}@media (width<=768px){.lumal-page-layout[data-v-d4b9bb06]{gap:12px}.lumal-page-layout__query[data-v-d4b9bb06],.lumal-page-layout__toolbar[data-v-d4b9bb06],.lumal-page-layout__pagination[data-v-d4b9bb06]{padding:12px}.lumal-page-layout__query-actions[data-v-d4b9bb06],.lumal-page-layout__pagination[data-v-d4b9bb06]{justify-content:flex-start}.lumal-page-layout__query-actions[data-v-d4b9bb06] .el-button{min-height:32px;padding-inline:12px}}.lumal-breadcrumb[data-v-53a036d9]{min-height:40px;padding:0 var(--lumal-page-gutter,20px);border-bottom:1px solid var(--el-border-color-lighter);background:var(--el-bg-color);flex:none;align-items:center;display:flex}.lumal-breadcrumb__list[data-v-53a036d9],.lumal-breadcrumb__item[data-v-53a036d9],.lumal-breadcrumb__current[data-v-53a036d9],.lumal-breadcrumb__link[data-v-53a036d9]{align-items:center;min-width:0;display:flex}.lumal-breadcrumb__list[data-v-53a036d9]{margin:0;padding:0;list-style:none;overflow:hidden}.lumal-breadcrumb__item[data-v-53a036d9]{flex:none;gap:8px}.lumal-breadcrumb__separator[data-v-53a036d9]{color:var(--el-text-color-placeholder);flex:none}.lumal-breadcrumb__link[data-v-53a036d9]{color:var(--el-text-color-regular);cursor:pointer;font:inherit;background:0 0;border:0;gap:5px;padding:4px 0}.lumal-breadcrumb__link[data-v-53a036d9]:hover{color:var(--el-color-primary)}.lumal-breadcrumb__link[data-v-53a036d9]:focus-visible{border-radius:var(--el-border-radius-small);outline:2px solid var(--el-color-primary);outline-offset:2px}.lumal-breadcrumb__current[data-v-53a036d9]{max-width:240px;color:var(--el-text-color-primary);text-overflow:ellipsis;white-space:nowrap;gap:5px;font-weight:500;overflow:hidden}@media (width<=768px){.lumal-breadcrumb[data-v-53a036d9]{display:none}}.lumal-content[data-v-a0d6361c]{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;background:var(--el-bg-color-page);flex-direction:column;flex:auto;min-width:0;min-height:0;padding:14px;display:flex;overflow:hidden auto}@media (width<=1024px){.lumal-content[data-v-a0d6361c]{padding:10px}}@media (width<=768px){.lumal-content[data-v-a0d6361c]{padding:6px}}.lumal-global-search__trigger[data-v-f2b1e55b]{border:1px solid var(--el-border-color-lighter);border-radius:var(--el-border-radius-base);min-width:44px;height:36px;color:var(--el-text-color-regular);cursor:pointer;background:var(--el-fill-color-light);font:inherit;justify-content:center;align-items:center;gap:7px;padding:0 9px;display:inline-flex}.lumal-global-search__trigger[data-v-f2b1e55b]:hover{border-color:var(--el-color-primary-light-5);color:var(--el-color-primary)}.lumal-global-search__trigger[data-v-f2b1e55b]:focus-visible,.lumal-global-search__dialog button[data-v-f2b1e55b]:focus-visible,.lumal-global-search__dialog input[data-v-f2b1e55b]:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.lumal-global-search__trigger-label[data-v-f2b1e55b]{font-size:calc(var(--lumal-font-size-base,14px) - 1px)}.lumal-global-search__trigger kbd[data-v-f2b1e55b]{border:1px solid var(--el-border-color);color:var(--el-text-color-secondary);background:var(--el-bg-color);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:calc(var(--lumal-font-size-base,14px) - 3px);border-radius:4px;padding:2px 5px;line-height:1.2}.lumal-global-search__backdrop[data-v-f2b1e55b]{z-index:calc(var(--lumal-z-drawer,1200) + 20);background:color-mix(in srgb, var(--el-color-black) 48%, transparent);justify-content:center;align-items:flex-start;padding:min(14vh,120px) 16px 24px;display:flex;position:fixed;inset:0}.lumal-global-search__dialog[data-v-f2b1e55b]{border:1px solid var(--el-border-color-light);border-radius:var(--el-border-radius-base);background:var(--el-bg-color);width:min(640px,100%);max-height:min(640px,76vh);box-shadow:var(--el-box-shadow-dark);flex-direction:column;display:flex;overflow:hidden}.lumal-global-search__header[data-v-f2b1e55b]{border-bottom:1px solid var(--el-border-color-lighter);justify-content:space-between;align-items:center;min-height:52px;padding:0 14px 0 18px;display:flex}.lumal-global-search__header h2[data-v-f2b1e55b]{font-size:calc(var(--lumal-font-size-base,14px) + 2px);margin:0;font-weight:600}.lumal-global-search__header button[data-v-f2b1e55b]{border-radius:var(--el-border-radius-base);width:40px;height:40px;color:var(--el-text-color-secondary);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.lumal-global-search__input-wrap[data-v-f2b1e55b]{border:1px solid var(--el-border-color);border-radius:var(--el-border-radius-base);min-height:52px;color:var(--el-text-color-placeholder);background:var(--el-fill-color-lighter);align-items:center;gap:10px;margin:14px;padding:0 14px;display:flex}.lumal-global-search__input-wrap[data-v-f2b1e55b]:focus-within{border-color:var(--el-color-primary)}.lumal-global-search__input-wrap input[data-v-f2b1e55b]{width:100%;min-width:0;height:48px;color:var(--el-text-color-primary);font:inherit;background:0 0;border:0;outline:0;padding:0}.lumal-global-search__results[data-v-f2b1e55b]{min-height:0;margin:0;padding:0 10px 12px;list-style:none;overflow-y:auto}.lumal-global-search__results button[data-v-f2b1e55b]{border-radius:var(--el-border-radius-base);width:100%;min-height:52px;color:var(--el-text-color-regular);cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.lumal-global-search__results button[data-v-f2b1e55b]:hover,.lumal-global-search__results button.is-active[data-v-f2b1e55b]{color:var(--el-color-primary);background:var(--el-color-primary-light-9)}.lumal-global-search__results button>span[data-v-f2b1e55b]{flex-direction:column;gap:2px;min-width:0;display:flex}.lumal-global-search__results strong[data-v-f2b1e55b],.lumal-global-search__results small[data-v-f2b1e55b]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lumal-global-search__results strong[data-v-f2b1e55b]{font-size:var(--lumal-font-size-base,14px);font-weight:600}.lumal-global-search__results small[data-v-f2b1e55b],.lumal-global-search__results code[data-v-f2b1e55b]{color:var(--el-text-color-secondary);font-size:calc(var(--lumal-font-size-base,14px) - 2px)}.lumal-global-search__results code[data-v-f2b1e55b]{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.lumal-global-search__empty[data-v-f2b1e55b]{color:var(--el-text-color-secondary);text-align:center;margin:0;padding:28px 20px 36px}.lumal-global-search__sr-only[data-v-f2b1e55b]{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (width<=1024px){.lumal-global-search__trigger-label[data-v-f2b1e55b],.lumal-global-search__trigger kbd[data-v-f2b1e55b]{display:none}}@media (prefers-reduced-motion:reduce){.lumal-global-search[data-v-f2b1e55b] *{scroll-behavior:auto!important}}.lumal-header[data-v-abe2c07a]{z-index:var(--lumal-z-header);border-bottom:1px solid var(--el-border-color-lighter);background:var(--el-bg-color);flex:none;justify-content:space-between;align-items:center;min-width:0;padding:0 12px;display:flex;position:relative}.lumal-header__left[data-v-abe2c07a]{align-items:center;gap:8px;min-width:0;display:flex}.lumal-header__toggle[data-v-abe2c07a]{width:32px;height:32px;color:var(--el-text-color-regular);border-radius:6px;flex:none;order:-1;margin-left:-4px;padding:0}.lumal-header__toggle[data-v-abe2c07a]:hover{color:var(--el-text-color-primary);background:var(--el-fill-color-light)}.lumal-header__toggle.is-after-title[data-v-abe2c07a]{order:initial;margin-left:0;margin-right:-4px}.lumal-header__toggle.is-mobile-only[data-v-abe2c07a]{display:none}.lumal-header__title[data-v-abe2c07a]{min-width:0;color:var(--el-text-color-primary);font-size:var(--lumal-font-size-base,14px);text-overflow:ellipsis;white-space:nowrap;font-weight:600;line-height:1.2;overflow:hidden}.lumal-header__navigation[data-v-abe2c07a]{flex:auto;align-self:stretch;align-items:center;min-width:0;margin-left:12px;display:flex;overflow:hidden}.lumal-header__breadcrumb[data-v-abe2c07a]{flex:auto;align-items:center;min-width:0;margin-left:12px;display:flex;overflow:hidden}.lumal-header__actions[data-v-abe2c07a]{flex:none;align-items:center;gap:4px;margin-left:8px;display:flex}@media (width<=1024px){.lumal-header[data-v-abe2c07a]{padding:0 10px}.lumal-header__navigation[data-v-abe2c07a],.lumal-header__breadcrumb[data-v-abe2c07a]{margin-left:8px}}@media (width<=768px){.lumal-header[data-v-abe2c07a]{padding:0 10px}.lumal-header__navigation[data-v-abe2c07a],.lumal-header__breadcrumb[data-v-abe2c07a]{display:none}.lumal-header__toggle.is-mobile-only[data-v-abe2c07a]{display:inline-flex}.lumal-header__left[data-v-abe2c07a]{flex:auto}}.lumal-menu-badge[data-v-0ca73e4b]{--lumal-menu-badge-color:var(--el-color-primary);min-width:18px;height:18px;color:var(--el-color-white);background:var(--lumal-menu-badge-color);font-size:calc(var(--lumal-font-size-base,14px) - 3px);font-variant-numeric:tabular-nums;border-radius:9px;flex:none;justify-content:center;align-items:center;padding:0 5px;line-height:18px;display:inline-flex}.lumal-menu-badge.is-dot[data-v-0ca73e4b]{width:8px;min-width:8px;height:8px;padding:0}.lumal-menu-badge.is-success[data-v-0ca73e4b]{--lumal-menu-badge-color:var(--el-color-success)}.lumal-menu-badge.is-warning[data-v-0ca73e4b]{--lumal-menu-badge-color:var(--el-color-warning)}.lumal-menu-badge.is-danger[data-v-0ca73e4b]{--lumal-menu-badge-color:var(--el-color-danger)}.lumal-menu-badge.is-info[data-v-0ca73e4b]{--lumal-menu-badge-color:var(--el-color-info)}.lumal-sidebar-menu-item__icon[data-v-9466482e]{flex:none;justify-content:center;align-items:center;margin-right:8px;font-style:normal;display:inline-flex}.lumal-sidebar-menu-item__label[data-v-9466482e]{align-items:center;gap:6px;min-width:0;display:flex}.lumal-sidebar-menu-item__title[data-v-9466482e]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lumal-sidebar-menu-item__external[data-v-9466482e]{color:var(--el-text-color-placeholder);font-size:calc(var(--lumal-font-size-base,14px) - 2px);margin-left:auto}.lumal-sidebar[data-v-d9c4d4bc]{border-right:1px solid var(--el-border-color-lighter);background:var(--el-bg-color);min-height:0;transition:width var(--lumal-motion-duration-base) var(--lumal-easing-standard), transform var(--lumal-motion-duration-base) var(--lumal-easing-standard);flex:none}.lumal-sidebar__scrollbar[data-v-d9c4d4bc]{height:100%}.lumal-sidebar__menu[data-v-d9c4d4bc]{border-right:0;min-height:100%;padding:12px 8px}.lumal-sidebar__menu[data-v-d9c4d4bc] .el-menu-item,.lumal-sidebar__menu[data-v-d9c4d4bc] .el-sub-menu__title{border-radius:var(--el-border-radius-base);height:44px;margin:2px 0}.lumal-sidebar__menu[data-v-d9c4d4bc] .el-menu-item.is-active{background:var(--el-color-primary-light-9);font-weight:600}.lumal-sidebar__menu.el-menu--collapse[data-v-d9c4d4bc] .el-menu-item,.lumal-sidebar__menu.el-menu--collapse[data-v-d9c4d4bc] .el-sub-menu__title{justify-content:center;padding-left:0!important;padding-right:0!important}.lumal-sidebar__menu.el-menu--collapse[data-v-d9c4d4bc] .lumal-sidebar-menu-item__icon{justify-content:center;align-items:center;width:20px;height:20px;margin:0;display:inline-flex}.lumal-tabs[data-v-d6a33e63]{width:100%;min-width:0;height:var(--lumal-tabbar-height);border-bottom:1px solid var(--el-border-color-lighter);background:var(--el-bg-color);flex:none;display:flex;position:relative}.lumal-tabs__viewport[data-v-d6a33e63]{scrollbar-width:none;flex:auto;min-width:0;overflow:auto hidden}.lumal-tabs__viewport[data-v-d6a33e63]::-webkit-scrollbar{display:none}.lumal-tabs__list[data-v-d6a33e63]{box-sizing:border-box;align-items:stretch;gap:2px;width:max-content;min-width:100%;height:100%;padding:3px 6px 0;display:flex}.lumal-tabs__item[data-v-d6a33e63]{border-radius:var(--lumal-radius-small) var(--lumal-radius-small) 0 0;min-width:88px;max-width:min(240px,32vw);color:var(--el-text-color-regular);transition:color var(--lumal-motion-duration-fast) var(--lumal-easing-standard), background-color var(--lumal-motion-duration-fast) var(--lumal-easing-standard);align-items:center;display:flex;position:relative}.lumal-tabs__item[data-v-d6a33e63]:hover{background:var(--el-fill-color-light)}.lumal-tabs__tab[data-v-d6a33e63]{min-width:0;height:100%;color:inherit;cursor:pointer;background:0 0;border:0;flex:auto;align-items:center;gap:5px;padding:0 26px 0 10px;display:flex}.lumal-tabs__tab[data-v-d6a33e63]:focus-visible,.lumal-tabs__tool[data-v-d6a33e63]:focus-visible,.lumal-tabs__close[data-v-d6a33e63]:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:-2px}.lumal-tabs__label[data-v-d6a33e63]{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lumal-tabs__close[data-v-d6a33e63]{width:18px;height:18px;color:var(--el-text-color-secondary);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:7px;transform:translateY(-50%)}.lumal-tabs__close[data-v-d6a33e63]:hover{color:var(--el-text-color-primary);background:var(--el-fill-color)}.lumal-tabs__tool[data-v-d6a33e63]{border:0;border-left:1px solid var(--el-border-color-lighter);width:36px;height:100%;color:var(--el-text-color-secondary);cursor:pointer;background:0 0;flex:0 0 36px;place-items:center;padding:0;display:grid}.lumal-tabs__tool[data-v-d6a33e63]:hover:not(:disabled){color:var(--el-text-color-primary);background:var(--el-fill-color-light)}.lumal-tabs__tool[data-v-d6a33e63]:disabled{cursor:default;opacity:.35}.lumal-tabs__item--ghost[data-v-d6a33e63]{opacity:.4}.lumal-tabs__item--chosen[data-v-d6a33e63]{box-shadow:inset 0 0 0 1px var(--el-color-primary-light-5)}.lumal-tabs.is-style-chrome .lumal-tabs__item.is-active[data-v-d6a33e63]{color:var(--el-color-primary);background:var(--el-color-primary-light-9);box-shadow:inset 0 -2px var(--el-color-primary);position:relative}.lumal-tabs.is-style-chrome .lumal-tabs__item.is-active[data-v-d6a33e63]:before,.lumal-tabs.is-style-chrome .lumal-tabs__item.is-active[data-v-d6a33e63]:after{content:"";pointer-events:none;width:8px;height:8px;position:absolute;bottom:0}.lumal-tabs.is-style-chrome .lumal-tabs__item.is-active[data-v-d6a33e63]:before{box-shadow:2px 2px 0 0 var(--el-color-primary-light-9);border-bottom-right-radius:8px;left:-8px}.lumal-tabs.is-style-chrome .lumal-tabs__item.is-active[data-v-d6a33e63]:after{box-shadow:-2px 2px 0 0 var(--el-color-primary-light-9);border-bottom-left-radius:8px;right:-8px}.lumal-tabs.is-style-chrome .lumal-tabs__list>.lumal-tabs__item.is-active+.lumal-tabs__item .lumal-tabs__tab[data-v-d6a33e63]:before{display:none}.lumal-tabs.is-style-chrome .lumal-tabs__list>.lumal-tabs__item+.lumal-tabs__item .lumal-tabs__tab[data-v-d6a33e63]:before{content:"";background:var(--el-border-color-light);width:1px;position:absolute;top:12px;bottom:10px;left:-3px}.lumal-tabs.is-style-chrome .lumal-tabs__list>.lumal-tabs__item.is-active+.lumal-tabs__item .lumal-tabs__tab[data-v-d6a33e63]:before,.lumal-tabs.is-style-chrome .lumal-tabs__list>.lumal-tabs__item+.lumal-tabs__item.is-active .lumal-tabs__tab[data-v-d6a33e63]:before{display:none}.lumal-tabs.is-style-plain .lumal-tabs__item.is-active[data-v-d6a33e63]{color:var(--el-color-primary);border-bottom:2px solid var(--el-color-primary)}.lumal-tabs.is-style-plain .lumal-tabs__list>.lumal-tabs__item+.lumal-tabs__item[data-v-d6a33e63]{border-left:1px solid var(--el-border-color-lighter)}.lumal-tabs.is-style-card .lumal-tabs__item[data-v-d6a33e63]{border-radius:var(--lumal-radius-small);border:1px solid #0000}.lumal-tabs.is-style-card .lumal-tabs__item.is-active[data-v-d6a33e63]{border-color:var(--el-border-color-light);color:var(--el-color-primary);background:var(--el-bg-color);box-shadow:0 1px 3px color-mix(in srgb, var(--el-color-primary) 12%, transparent)}.lumal-tabs.is-style-card .lumal-tabs__item[data-v-d6a33e63]:not(.is-active){background:var(--el-fill-color-light)}.lumal-tabs.is-style-card .lumal-tabs__list[data-v-d6a33e63]{gap:4px;padding-top:4px}.lumal-tabs.is-style-brisk .lumal-tabs__item.is-active[data-v-d6a33e63]{color:var(--el-color-primary)}.lumal-tabs.is-style-brisk .lumal-tabs__item.is-active[data-v-d6a33e63]:after{content:"";background:var(--el-color-primary);transform-origin:50%;height:2px;animation:lumal-tab-brisk-underline-d6a33e63 .16s var(--lumal-easing-standard);border-radius:2px;position:absolute;bottom:4px;left:14px;right:14px}@keyframes lumal-tab-brisk-underline-d6a33e63{0%{opacity:0;transform:scaleX(.2)}to{opacity:1;transform:scaleX(1)}}.lumal-tabs__item.is-pinned .lumal-tabs__tab[data-v-d6a33e63],.lumal-tabs__item.is-not-draggable[data-v-d6a33e63]{cursor:default}@media (pointer:coarse){.lumal-tabs__item.is-not-draggable[data-v-d6a33e63],.lumal-tabs__item[data-v-d6a33e63]{cursor:default}}@media (width<=768px){.lumal-tabs[data-v-d6a33e63]{height:40px}.lumal-tabs__list[data-v-d6a33e63]{gap:1px;padding:3px 4px 0}.lumal-tabs__item[data-v-d6a33e63]{min-width:72px;max-width:min(180px,42vw)}.lumal-tabs__tab[data-v-d6a33e63]{gap:4px;padding:0 22px 0 8px}.lumal-tabs__close[data-v-d6a33e63]{right:5px}.lumal-tabs__tool[data-v-d6a33e63]{flex-basis:32px;width:32px}.lumal-tabs__tool--refresh[data-v-d6a33e63],.lumal-tabs__tool--maximize[data-v-d6a33e63]{display:none}}@media (prefers-reduced-motion:reduce){.lumal-tabs__item[data-v-d6a33e63]{transition:none}.lumal-tabs.is-style-brisk .lumal-tabs__item.is-active[data-v-d6a33e63]:after{animation:none}}.lumal-tab-enter-active[data-v-d6a33e63],.lumal-tab-leave-active[data-v-d6a33e63]{transition:opacity .16s var(--lumal-easing-standard), transform .16s var(--lumal-easing-standard)}.lumal-tab-enter-from[data-v-d6a33e63]{opacity:0;transform:translate(-8px)}.lumal-tab-leave-to[data-v-d6a33e63]{opacity:0;transform:translate(8px)}.lumal-tab-move[data-v-d6a33e63]{transition:transform .16s var(--lumal-easing-standard)}@media (prefers-reduced-motion:reduce){.lumal-tab-enter-active[data-v-d6a33e63],.lumal-tab-leave-active[data-v-d6a33e63],.lumal-tab-move[data-v-d6a33e63]{transition:none}}.lumal-tabs-context-menu{z-index:var(--lumal-z-context-menu);border:1px solid var(--el-border-color-lighter);border-radius:var(--lumal-radius-base);background:var(--el-bg-color-overlay);min-width:168px;box-shadow:var(--lumal-shadow-base);transform-origin:0 0;animation:lumal-tab-menu-in .14s var(--lumal-easing-standard);padding:4px;display:grid;position:fixed}@keyframes lumal-tab-menu-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.lumal-tabs-context-menu button{border-radius:var(--lumal-radius-small);color:var(--el-text-color-regular);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:8px 12px;display:flex}.lumal-tabs-context-menu button:hover:not(:disabled){color:var(--el-text-color-primary);background:var(--el-fill-color-light)}.lumal-tabs-context-menu button:disabled{color:var(--el-text-color-placeholder);cursor:not-allowed}.lumal-tabs-context-menu button:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:-2px}.lumal-tabs-context-menu__divider{background:var(--el-border-color-lighter);height:1px;margin:4px 6px}@media (prefers-reduced-motion:reduce){.lumal-tabs-context-menu{animation:none}}.lumal-top-nav-menu-item__label[data-v-71cabfc8]{align-items:center;gap:6px;min-width:0;display:inline-flex}.lumal-top-nav-menu-item__external[data-v-71cabfc8]{color:var(--el-text-color-placeholder);font-size:calc(var(--lumal-font-size-base,14px) - 2px);margin-left:4px}.lumal-top-nav[data-v-3669f4a6]{--lumal-top-nav-item-height:36px;--lumal-top-nav-item-radius:6px;--lumal-top-nav-item-gap:2px;--lumal-top-nav-item-padding-x:12px;width:100%;max-width:var(--lumal-top-nav-max-width);flex:auto;align-items:center;min-width:0;height:100%;display:flex;background:0 0!important;border-bottom:0!important}.lumal-top-nav.is-align-left[data-v-3669f4a6]{justify-content:flex-start;margin-right:auto}.lumal-top-nav.is-align-center[data-v-3669f4a6]{justify-content:center;margin-left:auto;margin-right:auto}.lumal-top-nav.is-align-right[data-v-3669f4a6]{justify-content:flex-end;margin-left:auto}.lumal-top-nav[data-v-3669f4a6] .el-menu-item,.lumal-top-nav[data-v-3669f4a6] .el-sub-menu__title{margin:0 var(--lumal-top-nav-item-gap);border-radius:var(--lumal-top-nav-item-radius);color:var(--el-text-color-regular);font-size:calc(var(--lumal-font-size-base,14px) - 1px);justify-content:center;align-items:center;gap:6px;font-weight:500;line-height:1;transition:color .15s,background-color .15s;display:inline-flex;height:var(--lumal-top-nav-item-height)!important;min-height:var(--lumal-top-nav-item-height)!important;padding:0 var(--lumal-top-nav-item-padding-x)!important;border-bottom:0!important}.lumal-top-nav[data-v-3669f4a6] .el-sub-menu{height:var(--lumal-top-nav-item-height);margin:0}.lumal-top-nav[data-v-3669f4a6] .el-sub-menu .el-sub-menu__icon-arrow{margin-top:1px;margin-left:4px;font-size:10px}.lumal-top-nav[data-v-3669f4a6] .el-menu-item:not(.is-disabled):hover,.lumal-top-nav[data-v-3669f4a6] .el-menu-item:not(.is-disabled):focus,.lumal-top-nav[data-v-3669f4a6] .el-sub-menu__title:hover{color:var(--el-text-color-primary)!important;background-color:var(--el-fill-color-light)!important}.lumal-top-nav[data-v-3669f4a6] .el-menu-item.is-active,.lumal-top-nav[data-v-3669f4a6] .el-sub-menu.is-active>.el-sub-menu__title,.lumal-top-nav[data-v-3669f4a6] .el-sub-menu.is-active>.el-tooltip__trigger>.el-sub-menu__title{font-weight:600;color:var(--el-color-primary)!important;background-color:color-mix(in srgb, var(--el-color-primary) 12%, transparent)!important;border-bottom:0!important}.lumal-top-nav[data-v-3669f4a6] .el-menu--horizontal>.el-menu-item.is-active,.lumal-top-nav[data-v-3669f4a6] .el-menu--horizontal>.el-sub-menu.is-active .el-sub-menu__title{border-bottom:0!important}.lumal-top-nav[data-v-3669f4a6] .el-menu--popup .el-menu-item,.lumal-top-nav[data-v-3669f4a6] .el-menu--popup .el-sub-menu__title{border-radius:var(--lumal-top-nav-item-radius);justify-content:flex-start;margin:2px 6px;height:36px!important;min-height:36px!important}.lumal-top-nav__external[data-v-3669f4a6]{color:var(--el-text-color-placeholder);font-size:calc(var(--lumal-font-size-base,14px) - 2px)}.lumal-top-nav__label[data-v-3669f4a6]{align-items:center;gap:4px;min-width:0;display:inline-flex}.lumal-layout[data-v-d4178515]{background:var(--el-bg-color-page);min-width:0;height:100dvh;min-height:100dvh;position:relative;overflow:hidden}.lumal-layout__body[data-v-d4178515]{flex:auto;min-width:0;min-height:0;position:relative;overflow:hidden}.lumal-layout__main[data-v-d4178515]{background:var(--el-bg-color-page);flex:auto;width:0;min-width:0;min-height:0;overflow:hidden}.lumal-layout__sidebar-scrim[data-v-d4178515],.lumal-layout__mobile-sidebar[data-v-d4178515]{display:none}.lumal-layout__header-breadcrumb[data-v-d4178515]{background:0 0;border-bottom:0;width:100%;min-height:0;padding:0}.lumal-layout.is-content-maximized .lumal-layout__main[data-v-d4178515]{z-index:var(--lumal-z-scrim);background:var(--el-bg-color-page);width:100%;position:absolute;inset:0}.lumal-layout-sidebar-enter-active[data-v-d4178515],.lumal-layout-sidebar-leave-active[data-v-d4178515]{transition:width var(--lumal-motion-duration-base) var(--lumal-easing-standard), opacity var(--lumal-motion-duration-fast) ease, transform var(--lumal-motion-duration-base) var(--lumal-easing-standard), border-color var(--lumal-motion-duration-fast) ease;overflow:hidden}.lumal-layout-sidebar-leave-active[data-v-d4178515]{pointer-events:none}.lumal-layout-sidebar-enter-from[data-v-d4178515],.lumal-layout-sidebar-leave-to[data-v-d4178515]{opacity:0;border-right-color:#0000;transform:translate(-12px);width:0!important}@media (width<=768px){.lumal-layout__desktop-sidebar[data-v-d4178515]{display:none}.lumal-layout__mobile-sidebar[data-v-d4178515]{z-index:var(--lumal-z-drawer);box-shadow:var(--lumal-shadow-base);display:block;position:absolute;inset:0 auto 0 0;transform:translate(0);width:min(var(--lumal-sidebar-width,248px), 84vw)!important}.lumal-layout.is-mobile-menu-hidden .lumal-layout__mobile-sidebar[data-v-d4178515]{pointer-events:none;transform:translate(-100%)}.lumal-layout__sidebar-scrim[data-v-d4178515]{z-index:var(--lumal-z-scrim);background:color-mix(in srgb, var(--lumal-color-text-primary) 42%, transparent);cursor:pointer;border:0;padding:0;display:block;position:absolute;inset:0}.lumal-layout.is-mobile-menu-hidden .lumal-layout__sidebar-scrim[data-v-d4178515]{display:none}.lumal-layout__main[data-v-d4178515]{width:100%}}@media (prefers-reduced-motion:reduce){.lumal-layout__body[data-v-d4178515] .lumal-sidebar,.lumal-layout-sidebar-enter-active[data-v-d4178515],.lumal-layout-sidebar-leave-active[data-v-d4178515]{transition:none}}.lumal-router-view[data-v-e4c57039]{flex-direction:column;flex:auto;width:100%;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden visible}.lumal-router-view[data-v-e4c57039]>*{flex:auto}.lumal-router-view[data-v-e4c57039]>.lumal-router-view__page>*{box-sizing:border-box;width:100%;min-width:0}.lumal-router-view[data-v-e4c57039]>.lumal-router-view__page{flex-direction:column;min-height:0;display:flex}.lumal-router-view__progress[data-v-e4c57039]{z-index:3000;background:color-mix(in srgb, var(--el-color-primary) 14%, transparent);height:2px;position:fixed;top:0;left:0;right:0;overflow:hidden}.lumal-router-view__progress-bar[data-v-e4c57039]{background:var(--el-color-primary);transform-origin:0;width:100%;height:100%;animation:.32s ease-out both lumal-router-view-progress-e4c57039;display:block}.lumal-router-view__loading[data-v-e4c57039]{z-index:19;background:color-mix(in srgb, var(--el-bg-color-page) 72%, transparent);pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.lumal-router-view__loading-dot[data-v-e4c57039]{border:3px solid color-mix(in srgb, var(--el-color-primary) 18%, transparent);border-top-color:var(--el-color-primary);border-radius:999px;width:28px;height:28px;animation:.72s linear infinite lumal-router-view-loading-e4c57039}.fade-side-enter-active[data-v-e4c57039],.fade-side-leave-active[data-v-e4c57039]{transition:opacity var(--lumal-motion-duration-slow) var(--lumal-easing-standard), transform var(--lumal-motion-duration-slow) var(--lumal-easing-standard)}.fade-side-enter-from[data-v-e4c57039]{opacity:0;transform:translate(-30px)}.fade-side-leave-to[data-v-e4c57039]{opacity:0;transform:translate(30px)}.fade-enter-active[data-v-e4c57039],.fade-leave-active[data-v-e4c57039]{transition:opacity var(--lumal-motion-duration-base) var(--lumal-easing-standard)}.fade-enter-from[data-v-e4c57039],.fade-leave-to[data-v-e4c57039]{opacity:0}.fade-bottom-enter-active[data-v-e4c57039],.fade-bottom-leave-active[data-v-e4c57039]{transition:opacity var(--lumal-motion-duration-base) var(--lumal-easing-standard), transform var(--lumal-motion-duration-slow) var(--lumal-easing-standard)}.fade-bottom-enter-from[data-v-e4c57039]{opacity:0;transform:translateY(10%)}.fade-bottom-leave-to[data-v-e4c57039]{opacity:0;transform:translateY(-10%)}.zoom-fade-enter-active[data-v-e4c57039],.zoom-fade-leave-active[data-v-e4c57039]{transition:opacity var(--lumal-motion-duration-slow) var(--lumal-easing-standard), transform var(--lumal-motion-duration-slow) var(--lumal-easing-standard)}.zoom-fade-enter-from[data-v-e4c57039]{opacity:0;transform:scale(1.2)}.zoom-fade-leave-to[data-v-e4c57039]{opacity:0;transform:scale(.8)}@keyframes lumal-router-view-progress-e4c57039{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes lumal-router-view-loading-e4c57039{to{transform:rotate(360deg)}}.lumal-theme-settings[data-v-e1228cb0]{height:100%;min-height:0;color:var(--el-text-color-primary);flex-direction:column;display:flex;overflow:hidden;container-type:inline-size}.lumal-theme-settings__tabs[data-v-e1228cb0]{border:1px solid var(--el-border-color-lighter);background:var(--el-fill-color);border-radius:9px;flex:none;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:12px;padding:4px;display:grid}.lumal-theme-settings__tab[data-v-e1228cb0]{min-height:34px;color:var(--el-text-color-secondary);cursor:pointer;font-size:calc(var(--lumal-font-size-base,14px) - 1px);background:0 0;border:0;border-radius:6px;padding:0 8px;font-weight:600;transition:color .2s,background-color .2s,box-shadow .2s}.lumal-theme-settings__tab[data-v-e1228cb0]:hover{color:var(--el-text-color-primary)}.lumal-theme-settings__tab.is-active[data-v-e1228cb0]{color:var(--el-color-primary);background:var(--el-bg-color);box-shadow:0 1px 3px color-mix(in srgb, var(--el-color-black) 12%, transparent)}.lumal-theme-settings__scroll[data-v-e1228cb0]{scrollbar-width:thin;flex:1;min-height:0;padding:18px 4px 22px;overflow-y:auto}.lumal-theme-settings__pane[data-v-e1228cb0]{gap:26px;display:grid}.lumal-theme-settings__section[data-v-e1228cb0]{gap:12px;display:grid}.lumal-theme-settings__section+.lumal-theme-settings__section[data-v-e1228cb0]{border-top:0;padding-top:0}h4[data-v-e1228cb0]{color:var(--el-text-color-primary);font-size:var(--lumal-font-size-base,14px);letter-spacing:.01em;margin:0;font-weight:700}.lumal-theme-settings__row[data-v-e1228cb0]{min-height:34px;font-size:calc(var(--lumal-font-size-base,14px) - 1px);justify-content:space-between;align-items:center;gap:12px;padding:0 4px;display:flex}.lumal-theme-settings__row.is-stacked[data-v-e1228cb0]{grid-template-columns:1fr auto;display:grid}.lumal-theme-settings__row.is-stacked[data-v-e1228cb0] .el-slider{grid-column:1;width:100%}.lumal-theme-settings__row.is-stacked[data-v-e1228cb0] .el-input-number{grid-area:2/2;width:112px}.is-disabled[data-v-e1228cb0]{opacity:.48}.lumal-theme-settings__card-grid[data-v-e1228cb0],.lumal-theme-settings__layout-grid[data-v-e1228cb0],.lumal-theme-settings__transition-grid[data-v-e1228cb0]{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.lumal-theme-settings__card-grid.is-three[data-v-e1228cb0],.lumal-theme-settings__layout-grid[data-v-e1228cb0]{grid-template-columns:repeat(3,minmax(0,1fr))}.lumal-theme-settings__transition-grid[data-v-e1228cb0]{grid-template-columns:repeat(4,minmax(0,1fr))}button[data-v-e1228cb0]{font:inherit}.lumal-theme-settings__mode-card[data-v-e1228cb0],.lumal-theme-settings__layout-card[data-v-e1228cb0],.lumal-theme-settings__transition-card[data-v-e1228cb0]{border:1px solid var(--el-border-color-lighter);min-width:0;min-height:62px;color:var(--el-text-color-secondary);cursor:pointer;background:var(--el-bg-color);box-shadow:0 1px 2px color-mix(in srgb, var(--el-color-black) 4%, transparent);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:8px;transition:border-color .2s,color .2s,background-color .2s,box-shadow .2s;display:flex}.lumal-theme-settings__mode-card[data-v-e1228cb0]:hover,.lumal-theme-settings__layout-card[data-v-e1228cb0]:hover,.lumal-theme-settings__transition-card[data-v-e1228cb0]:hover{border-color:var(--el-color-primary-light-5);color:var(--el-text-color-primary);box-shadow:0 3px 8px color-mix(in srgb, var(--el-color-black) 8%, transparent)}.lumal-theme-settings__mode-card.is-active[data-v-e1228cb0],.lumal-theme-settings__layout-card.is-active[data-v-e1228cb0],.lumal-theme-settings__transition-card.is-active[data-v-e1228cb0]{border-color:var(--el-color-primary);color:var(--el-color-primary);background:color-mix(in srgb, var(--el-color-primary) 8%, var(--el-bg-color));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--el-color-primary) 30%, transparent)}.lumal-theme-settings__mode-card[data-v-e1228cb0]:focus-visible,.lumal-theme-settings__layout-card[data-v-e1228cb0]:focus-visible,.lumal-theme-settings__transition-card[data-v-e1228cb0]:focus-visible,.lumal-theme-settings__tab[data-v-e1228cb0]:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.lumal-theme-settings__mode-icon[data-v-e1228cb0]{flex:none}.lumal-theme-settings__mode-card>span[data-v-e1228cb0]:last-child{white-space:nowrap;word-break:keep-all}.lumal-theme-settings__color-grid[data-v-e1228cb0]{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.lumal-theme-settings__color-card[data-v-e1228cb0]{border:1px solid var(--el-border-color-lighter);min-width:0;min-height:68px;color:var(--el-text-color-secondary);cursor:pointer;background:var(--el-bg-color);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:8px 6px;transition:border-color .2s,color .2s,background-color .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.lumal-theme-settings__color-card[data-v-e1228cb0]:hover{border-color:var(--el-color-primary-light-5);color:var(--el-text-color-primary)}.lumal-theme-settings__color-card.is-active[data-v-e1228cb0]{border-color:var(--el-color-primary);color:var(--el-color-primary);background:color-mix(in srgb, var(--el-color-primary) 6%, var(--el-bg-color));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--el-color-primary) 25%, transparent)}.lumal-theme-settings__color-card i[data-v-e1228cb0]{width:28px;height:20px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--el-color-black) 8%, transparent);border-radius:6px;flex:none}.lumal-theme-settings__color-card i.is-custom[data-v-e1228cb0]{background:linear-gradient(135deg,#3b82f6,#8b5cf6 50%,#ef4444)}.lumal-theme-settings__color-card>span[data-v-e1228cb0]{min-width:0;max-width:100%;font-size:calc(var(--lumal-font-size-base,14px) - 2px);text-overflow:ellipsis;white-space:nowrap;word-break:keep-all;overflow:hidden}.lumal-theme-settings__color-card input[data-v-e1228cb0]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.lumal-theme-settings__radius-grid[data-v-e1228cb0],.lumal-theme-settings__segments[data-v-e1228cb0]{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.lumal-theme-settings__radius-grid button[data-v-e1228cb0],.lumal-theme-settings__segments button[data-v-e1228cb0]{border:1px solid var(--el-border-color-lighter);min-height:32px;color:var(--el-text-color-secondary);cursor:pointer;background:var(--el-bg-color);border-radius:6px}.lumal-theme-settings__radius-grid button.is-active[data-v-e1228cb0],.lumal-theme-settings__segments button.is-active[data-v-e1228cb0]{border-color:var(--el-color-primary);color:var(--el-color-primary);background:var(--el-color-primary-light-9)}.lumal-theme-settings__segments[data-v-e1228cb0]{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.lumal-theme-settings__tab-style[data-v-e1228cb0]{grid-template-columns:repeat(4,1fr)}.lumal-theme-settings__layout-preview[data-v-e1228cb0]{width:100%;max-height:48px;color:var(--el-color-primary)}.lumal-theme-settings__layout-preview rect[data-v-e1228cb0]{fill:var(--el-fill-color);stroke:color-mix(in srgb, var(--el-border-color) 80%, transparent);stroke-width:1px}.lumal-theme-settings__layout-preview rect.is-background[data-v-e1228cb0]{fill:var(--el-fill-color-lighter)}.lumal-theme-settings__layout-preview rect.is-medium[data-v-e1228cb0]{fill:var(--el-color-primary-light-7);stroke:var(--el-color-primary-light-5)}.lumal-theme-settings__layout-preview rect.is-strong[data-v-e1228cb0]{fill:var(--el-color-primary-light-5);stroke:var(--el-color-primary-light-3)}.lumal-theme-settings__transition-card[data-v-e1228cb0]{min-height:64px;font-size:calc(var(--lumal-font-size-base,14px) - 2px);padding:7px 4px}.lumal-theme-settings__transition-preview[data-v-e1228cb0]{background:var(--el-fill-color-light);border-radius:6px;width:42px;height:30px;position:relative}.lumal-theme-settings__transition-preview i[data-v-e1228cb0]{background:var(--el-color-primary-light-5);opacity:.3;border-radius:5px;position:absolute;inset:7px 10px}.lumal-theme-settings__transition-preview i[data-v-e1228cb0]:last-child{opacity:1}.lumal-theme-settings__transition-card:not(:disabled).is-fade-side i[data-v-e1228cb0]:last-child{animation:2.4s infinite lumal-settings-side-e1228cb0}.lumal-theme-settings__transition-card:not(:disabled).is-fade i[data-v-e1228cb0]:last-child{animation:2.4s infinite lumal-settings-fade-e1228cb0}.lumal-theme-settings__transition-card:not(:disabled).is-fade-bottom i[data-v-e1228cb0]:last-child{animation:2.4s infinite lumal-settings-bottom-e1228cb0}.lumal-theme-settings__transition-card:not(:disabled).is-zoom-fade i[data-v-e1228cb0]:last-child{animation:2.4s infinite lumal-settings-zoom-e1228cb0}.lumal-theme-settings__transition-card[data-v-e1228cb0]:disabled{cursor:not-allowed;opacity:.45}.lumal-theme-settings__actions[data-v-e1228cb0]{border-top:1px solid var(--el-border-color-lighter);background:var(--el-bg-color-page);flex:none;padding:12px 4px 0}.lumal-theme-settings__reset[data-v-e1228cb0]{border-color:var(--el-border-color);background:var(--el-bg-color);gap:8px;width:100%;min-height:38px}@keyframes lumal-settings-side-e1228cb0{0%,20%,to{opacity:0;transform:translate(-10px)}40%,80%{opacity:1;transform:translate(0)}}@keyframes lumal-settings-fade-e1228cb0{0%,20%,to{opacity:0}40%,80%{opacity:1}}@keyframes lumal-settings-bottom-e1228cb0{0%,20%,to{opacity:0;transform:translateY(8px)}40%,80%{opacity:1;transform:translateY(0)}}@keyframes lumal-settings-zoom-e1228cb0{0%,20%,to{opacity:0;transform:scale(.82)}40%,80%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.lumal-theme-settings[data-v-e1228cb0] *,.lumal-theme-settings[data-v-e1228cb0] :before,.lumal-theme-settings[data-v-e1228cb0] :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation:none!important}}@container (width<=320px){.lumal-theme-settings__transition-grid[data-v-e1228cb0]{grid-template-columns:repeat(2,minmax(0,1fr))}}
2
2
  /*$vite$:1*/
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./layout-BgyM9WJi.cjs"),t=require("./composables-Dsl-todB.cjs"),n=require("./dictionary-Dt70z10M.cjs"),r=require("./createLumalApp-C5o7gAlu.cjs"),i=require("./components-oqKxhgFp.cjs"),a=require("./permission-CoqteYAi.cjs"),o=require("./LumalThemeSettingsPanel-C6aPhgUX.cjs"),s=require("./router.cjs");let c=require("@lumal/icons-vue");var l={LumalAccessControl:a.n,LumalBreadcrumb:e.P,LumalContent:e.N,LumalCrudTable:i.i,LumalHeader:e.j,LumalIcon:c.LumalIcon,LumalIconPicker:c.LumalIconPicker,LumalIconPickerDialog:c.LumalIconPickerDialog,LumalInfoTable:i.r,LumalGlobalSearch:e.M,LumalLayout:e.n,LumalPage:i.n,LumalPageLayout:i.t,LumalPagination:i.c,LumalRouterView:e.t,LumalSchemaForm:i.s,LumalSchemaTable:i.o,LumalSidebar:e.A,LumalTabs:e.k,LumalThemeSettingsPanel:o.t,LumalTopNav:e.O};function u(e){let t=e.preset===`minimal`,n=e.components??!t,i=n===!0?l:Array.isArray(n)?Object.fromEntries(n.filter(e=>!!l[e]).map(e=>[e,l[e]])):n;return r.t({...e,components:i,dictionary:e.dictionary??(!t&&void 0)})}exports.LumalAccessControl=a.n,exports.LumalCrudTable=i.i,Object.defineProperty(exports,"LumalIcon",{enumerable:!0,get:function(){return c.LumalIcon}}),Object.defineProperty(exports,"LumalIconPicker",{enumerable:!0,get:function(){return c.LumalIconPicker}}),Object.defineProperty(exports,"LumalIconPickerDialog",{enumerable:!0,get:function(){return c.LumalIconPickerDialog}}),exports.LumalInfoTable=i.r,exports.LumalPage=i.n,exports.LumalPageLayout=i.t,exports.LumalPagination=i.c,exports.LumalSchemaForm=i.s,exports.LumalSchemaTable=i.o,exports.MenuRouteConflictError=s.MenuRouteConflictError,exports.createDictionaryFetcherWithFallback=n.t,exports.createDictionaryOptionIndex=t.f,exports.createDictionaryStore=t.d,exports.createGlobComponentResolver=s.createGlobComponentResolver,exports.createLumalAdmin=u,exports.createMenuRouteRuntime=s.createMenuRouteRuntime,exports.createRouteRecords=s.createRouteRecords,exports.createRouteRegistry=s.createRouteRegistry,exports.createSidebarMenus=s.createSidebarMenus,exports.createTopMenus=s.createTopMenus,exports.deriveCrudFormSchemas=i.a,exports.dictionaryContextKey=t.u,exports.findFirstAccessibleMenu=s.findFirstAccessibleMenu,exports.getActiveDictionaryContext=t.a,exports.getDictionaryLabel=t.p,exports.getDictionaryOptions=t.t,exports.getDictionaryValueLabel=t.n,exports.installDictionary=t.o,exports.normalizeDictionaryOptionList=t.m,exports.normalizeDictionaryOptions=t.h,exports.normalizeMenuNodes=s.normalizeMenuNodes,exports.normalizeMenuRecords=s.normalizeMenuRecords,exports.provideDictionaryContext=t.s,exports.setActiveDictionaryContext=t.c,exports.useDictionary=t.r,exports.useDictionaryContext=t.l,exports.useDictionaryMap=t.i;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./layout-zJLDCf1c.cjs"),t=require("./composables-Dsl-todB.cjs"),n=require("./dictionary-Dt70z10M.cjs"),r=require("./createLumalApp-C5o7gAlu.cjs"),i=require("./components-CRxtQpsQ.cjs"),a=require("./permission-CoqteYAi.cjs"),o=require("./LumalThemeSettingsPanel-C6aPhgUX.cjs"),s=require("./router.cjs");let c=require("@lumal/icons-vue");var l={LumalAccessControl:a.n,LumalBreadcrumb:e.P,LumalContent:e.N,LumalCrudTable:i.i,LumalHeader:e.j,LumalIcon:c.LumalIcon,LumalIconPicker:c.LumalIconPicker,LumalIconPickerDialog:c.LumalIconPickerDialog,LumalInfoTable:i.r,LumalGlobalSearch:e.M,LumalLayout:e.n,LumalPage:i.n,LumalPageLayout:i.t,LumalPagination:i.c,LumalRouterView:e.t,LumalSchemaForm:i.s,LumalSchemaTable:i.o,LumalSidebar:e.A,LumalTabs:e.k,LumalThemeSettingsPanel:o.t,LumalTopNav:e.O};function u(e){let t=e.preset===`minimal`,n=e.components??!t,i=n===!0?l:Array.isArray(n)?Object.fromEntries(n.filter(e=>!!l[e]).map(e=>[e,l[e]])):n;return r.t({...e,components:i,dictionary:e.dictionary??(!t&&void 0)})}exports.LumalAccessControl=a.n,exports.LumalCrudTable=i.i,Object.defineProperty(exports,"LumalIcon",{enumerable:!0,get:function(){return c.LumalIcon}}),Object.defineProperty(exports,"LumalIconPicker",{enumerable:!0,get:function(){return c.LumalIconPicker}}),Object.defineProperty(exports,"LumalIconPickerDialog",{enumerable:!0,get:function(){return c.LumalIconPickerDialog}}),exports.LumalInfoTable=i.r,exports.LumalPage=i.n,exports.LumalPageLayout=i.t,exports.LumalPagination=i.c,exports.LumalSchemaForm=i.s,exports.LumalSchemaTable=i.o,exports.MenuRouteConflictError=s.MenuRouteConflictError,exports.createDictionaryFetcherWithFallback=n.t,exports.createDictionaryOptionIndex=t.f,exports.createDictionaryStore=t.d,exports.createGlobComponentResolver=s.createGlobComponentResolver,exports.createLumalAdmin=u,exports.createMenuRouteRuntime=s.createMenuRouteRuntime,exports.createRouteRecords=s.createRouteRecords,exports.createRouteRegistry=s.createRouteRegistry,exports.createSidebarMenus=s.createSidebarMenus,exports.createTopMenus=s.createTopMenus,exports.deriveCrudFormSchemas=i.a,exports.dictionaryContextKey=t.u,exports.findFirstAccessibleMenu=s.findFirstAccessibleMenu,exports.getActiveDictionaryContext=t.a,exports.getDictionaryLabel=t.p,exports.getDictionaryOptions=t.t,exports.getDictionaryValueLabel=t.n,exports.installDictionary=t.o,exports.normalizeDictionaryOptionList=t.m,exports.normalizeDictionaryOptions=t.h,exports.normalizeMenuNodes=s.normalizeMenuNodes,exports.normalizeMenuRecords=s.normalizeMenuRecords,exports.provideDictionaryContext=t.s,exports.setActiveDictionaryContext=t.c,exports.useDictionary=t.r,exports.useDictionaryContext=t.l,exports.useDictionaryMap=t.i;
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import { a as e, c as t, d as n, f as r, h as i, i as a, l as o, m as s, n as c, o as l, p as u, r as d, s as f, t as p, u as m } from "./composables-BxZG0_RZ.js";
2
2
  import { t as h } from "./dictionary-DnRiNaKi.js";
3
3
  import { t as g } from "./createLumalApp-BxQL77Qt.js";
4
- import { a as _, c as v, d as y, i as b, l as x, n as S, o as C, r as w, s as T, t as E, u as D } from "./components-DCp2KGvo.js";
5
- import { A as O, M as k, N as A, O as j, P as M, j as N, k as P, n as F, t as I } from "./layout-B7yJhQXN.js";
4
+ import { a as _, c as v, d as y, i as b, l as x, n as S, o as C, r as w, s as T, t as E, u as D } from "./components-B5Xd-iBK.js";
5
+ import { A as O, M as k, N as A, O as j, P as M, j as N, k as P, n as F, t as I } from "./layout-DQzFKvly.js";
6
6
  import { n as L } from "./permission-CHw9eXd8.js";
7
7
  import { t as R } from "./LumalThemeSettingsPanel-BFkZzwEW.js";
8
8
  import { MenuRouteConflictError as z, createGlobComponentResolver as B, createMenuRouteRuntime as V, createRouteRecords as H, createRouteRegistry as U, createSidebarMenus as W, createTopMenus as G, findFirstAccessibleMenu as K, normalizeMenuNodes as q, normalizeMenuRecords as J } from "./router.js";