@lumal/core 0.0.1-beta → 0.0.3-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 (86) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/LICENSE +21 -21
  3. package/README.md +22 -13
  4. package/dist/auth.cjs +1 -1
  5. package/dist/auth.js +13 -29
  6. package/dist/components-DCp2KGvo.js +2254 -0
  7. package/dist/components-oqKxhgFp.cjs +2 -0
  8. package/dist/components.cjs +1 -1
  9. package/dist/components.js +3 -3
  10. package/dist/{composables-C9EuCUjj.js → composables-BxZG0_RZ.js} +53 -40
  11. package/dist/composables-Dsl-todB.cjs +1 -0
  12. package/dist/composables.cjs +1 -1
  13. package/dist/composables.js +18 -17
  14. package/dist/context-Bdx-ZJbt.js +13 -0
  15. package/dist/context-CWQ1OO16.cjs +1 -0
  16. package/dist/core.css +1 -1
  17. package/dist/createLumalApp-BxQL77Qt.js +38 -0
  18. package/dist/createLumalApp-C5o7gAlu.cjs +1 -0
  19. package/dist/{dictionary-B7tsaVqB.js → dictionary-DnRiNaKi.js} +1 -1
  20. package/dist/{dictionary-ClEWtQCU.cjs → dictionary-Dt70z10M.cjs} +1 -1
  21. package/dist/dictionary.cjs +1 -1
  22. package/dist/dictionary.js +3 -3
  23. package/dist/index.cjs +1 -1
  24. package/dist/index.js +15 -58
  25. package/dist/{layout-C8H9wuQa.js → layout-B7yJhQXN.js} +473 -429
  26. package/dist/layout-BgyM9WJi.cjs +1 -0
  27. package/dist/layout.cjs +1 -1
  28. package/dist/layout.js +1 -1
  29. package/dist/minimal.cjs +1 -0
  30. package/dist/minimal.js +10 -0
  31. package/dist/{permission-CCkqvnWg.js → permission-CHw9eXd8.js} +24 -34
  32. package/dist/permission-CoqteYAi.cjs +1 -0
  33. package/dist/permission.cjs +1 -1
  34. package/dist/permission.js +4 -3
  35. package/dist/request.cjs +1 -1
  36. package/dist/request.js +103 -80
  37. package/dist/router.cjs +1 -1
  38. package/dist/router.js +24 -21
  39. package/dist/src/app/createLumalAdmin.d.ts +1 -1
  40. package/dist/src/app/createLumalAdmin.d.ts.map +1 -1
  41. package/dist/src/app/createLumalApp.d.ts +7 -0
  42. package/dist/src/app/createLumalApp.d.ts.map +1 -0
  43. package/dist/src/app/types.d.ts +5 -0
  44. package/dist/src/app/types.d.ts.map +1 -1
  45. package/dist/src/auth/createAuthSession.d.ts.map +1 -1
  46. package/dist/src/components/crud-table/LumalCrudTable.vue.d.ts.map +1 -1
  47. package/dist/src/components/crud-table/useCrudData.d.ts.map +1 -1
  48. package/dist/src/components/crud-table/useCrudDialog.d.ts +1 -1
  49. package/dist/src/components/crud-table/useCrudDialog.d.ts.map +1 -1
  50. package/dist/src/components/schema-form/LumalSchemaForm.vue.d.ts.map +1 -1
  51. package/dist/src/components/schema-table/LumalSchemaTable.vue.d.ts.map +1 -1
  52. package/dist/src/components/schema-table/cell.d.ts +1 -1
  53. package/dist/src/components/schema-table/cell.d.ts.map +1 -1
  54. package/dist/src/composables/usePagination.d.ts.map +1 -1
  55. package/dist/src/dictionary/index.d.ts +1 -1
  56. package/dist/src/dictionary/index.d.ts.map +1 -1
  57. package/dist/src/dictionary/normalize.d.ts +3 -1
  58. package/dist/src/dictionary/normalize.d.ts.map +1 -1
  59. package/dist/src/dictionary/store.d.ts.map +1 -1
  60. package/dist/src/layout/LumalGlobalSearch.vue.d.ts.map +1 -1
  61. package/dist/src/layout/LumalLayout.vue.d.ts +6 -2
  62. package/dist/src/layout/LumalLayout.vue.d.ts.map +1 -1
  63. package/dist/src/layout/LumalRouterView.vue.d.ts +2 -0
  64. package/dist/src/layout/LumalRouterView.vue.d.ts.map +1 -1
  65. package/dist/src/layout/LumalTabs.vue.d.ts.map +1 -1
  66. package/dist/src/minimal/index.d.ts +5 -0
  67. package/dist/src/minimal/index.d.ts.map +1 -0
  68. package/dist/src/request/client.d.ts.map +1 -1
  69. package/dist/src/request/types.d.ts +8 -2
  70. package/dist/src/request/types.d.ts.map +1 -1
  71. package/dist/src/router/index.d.ts.map +1 -1
  72. package/dist/src/utils/index.d.ts +1 -1
  73. package/dist/src/utils/index.d.ts.map +1 -1
  74. package/dist/src/utils/storage.d.ts +2 -0
  75. package/dist/src/utils/storage.d.ts.map +1 -1
  76. package/dist/storage-CCBa7Qh8.cjs +1 -0
  77. package/dist/storage-CorgkMJU.js +41 -0
  78. package/dist/utils.cjs +1 -1
  79. package/dist/utils.js +32 -54
  80. package/package.json +9 -3
  81. package/theme-chalk/index.scss +2 -2
  82. package/dist/components-DJiHYQQB.cjs +0 -2
  83. package/dist/components-DYmKh-eF.js +0 -2206
  84. package/dist/composables-C4twj5Ov.cjs +0 -1
  85. package/dist/layout-ZnyG9X3N.cjs +0 -1
  86. package/dist/permission-6sXtjGMS.cjs +0 -1
@@ -1,2 +0,0 @@
1
- const e=require("./composables-C4twj5Ov.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-e5a835aa`]]);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)({...c.value}),_=(0,n.shallowRef)(o.mode);(0,n.watch)(()=>o.mode,e=>{_.value=e});let v=(0,n.computed)(()=>d(o.schemas,{canAccess:o.canAccess,mode:_.value,model:c.value,setFieldValue:j})),y=(0,n.computed)(()=>v.value.filter(e=>e.renderable)),b=(0,n.computed)(()=>f(v.value,c.value)),{dictionaryMap:x}=e.i(()=>v.value.map(e=>e.dictionary??e.dictType));function S(e){let t=b.value[e];return typeof t==`number`||typeof t==`string`?t:t==null?``:String(t)}function C(e){let t=b.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 w(e){let t=C(e);return Array.isArray(t)?t[0]??``:t}function ee(e){let t=b.value[e];if(typeof t==`number`)return t;if(typeof t==`string`&&t.trim())return Number(t)}function T(e){return!!b.value[e]}function E(e){let t=b.value[e];return Array.isArray(t)?t.filter(e=>typeof e==`number`||typeof e==`string`):[]}function te(e){let t=b.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 ne(e){return e.component===`datetime`?`datetime`:e.component===`daterange`?`daterange`:`date`}function re(e){let t=b.value[e];if(typeof t==`boolean`||typeof t==`number`||typeof t==`string`||t&&typeof t==`object`)return t}function ie(e){return String(e.componentProps.type??`text`)}function ae(e){return e.component===`daterange`?[`${e.id}-start`,`${e.id}-end`]:e.id}function D(e){return e.component===`daterange`?[`${e.field}-start`,`${e.field}-end`]:e.field}function O(e){return o.disabled||e.disabled||e.readonly||_.value===`edit`&&!!e.editDisabled||!!e.componentProps.disabled}function oe(e){return typeof e.span==`number`?Math.min(24,Math.max(1,e.span)):Math.floor(24/Math.max(1,o.columns))}function k(e){let t=e.dictionary??e.dictType;return t?x.value[t]??[]:e.options}function A(e){return e.componentProps}function se(e){let t=b.value[e.field];if(e.formatter)return e.formatter(t,b.value);let n=(Array.isArray(t)?t:[t]).map(t=>k(e).find(e=>String(e.value)===String(t))?.label??t).filter(e=>e!=null&&e!==``);return n.length>0?n.map(String).join(`, `):`-`}function ce(e,t){return{field:e,getValues:()=>b.value,mode:_.value,model:b.value,setFieldValue:j,value:t}}function j(e,t){let n={...b.value,[e]:t};c.value=n,v.value.find(t=>t.field===e)?.onChange?.(t,ce(e,t)),s(`valuesChange`,n,[e])}function M(e,t){j(e,t)}async function N(){_.value===`view`||o.submitLoading||await fe()&&s(`submit`,b.value)}function le(e){!o.submitOnEnter||e.isComposing||e.target?.tagName===`TEXTAREA`||(e.preventDefault(),N())}function P(){R(),s(`reset`,b.value)}function F(e){return`field-${e.field}`}function I(e){return`prefix-${e.field}`}function ue(e){return`suffix-${e.field}`}function de(e){c.value={...b.value,...e}}function L(e){_.value=e}async function fe(){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 R(){l.value?.resetFields?.(),c.value=f(v.value,g.value)}function pe(e){l.value?.clearValidate?.(e)}function me(e){l.value?.scrollToField?.(e)}function he(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:pe,getFieldComponent:he,getFormElement:()=>l.value?.$el,getFormInstance:()=>l.value,getValues:()=>b.value,resetFields:R,scrollToField:me,setFieldValue:j,setMode:L,setValues:de,validate:fe}),(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:b.value,onKeydown:(0,n.withKeys)(le,[`enter`]),onSubmit:(0,n.withModifiers)(N,[`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)(y.value,t=>((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElCol),{key:t.field,span:oe(t),class:(0,n.normalizeClass)({"is-full-span":oe(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,I(t),{model:b.value,schema:t,value:b.value[t.field]},void 0,!0),(0,n.renderSlot)(e.$slots,F(t),{model:b.value,schema:t,value:b.value[t.field]},()=>[_.value===`view`?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,p,(0,n.toDisplayString)(se(t)),1)):t.component===`textarea`?((0,n.openBlock)(),(0,n.createBlock)((0,n.unref)(i.ElInput),(0,n.mergeProps)({key:1,ref_for:!0},A(t),{id:t.id,"model-value":S(t.field),name:t.field,placeholder:t.placeholder,disabled:O(t),required:t.required,type:`textarea`,"onUpdate:modelValue":e=>M(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},A(t),{id:t.id,"model-value":C(t.field),name:t.field,placeholder:t.placeholder,disabled:O(t),required:t.required,"onUpdate:modelValue":e=>M(t.field,e)}),{default:(0,n.withCtx)(()=>[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(k(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},A(t),{id:t.id,"model-value":ee(t.field),name:t.field,placeholder:t.placeholder,disabled:O(t),"onUpdate:modelValue":e=>M(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},A(t),{"model-value":T(t.field),name:t.field,disabled:O(t),"onUpdate:modelValue":e=>M(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},A(t),{id:ae(t),"model-value":te(t.field),name:D(t),placeholder:t.placeholder,disabled:O(t),type:ne(t),"onUpdate:modelValue":e=>M(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},A(t),{"model-value":w(t.field),name:t.field,disabled:O(t),"onUpdate:modelValue":e=>M(t.field,e)}),{default:(0,n.withCtx)(()=>[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(k(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},A(t),{"model-value":E(t.field),name:t.field,disabled:O(t),"onUpdate:modelValue":e=>M(t.field,e)}),{default:(0,n.withCtx)(()=>[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(k(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},A(t),{id:t.id,"model-value":re(t.field),name:t.field,placeholder:t.placeholder,disabled:O(t),"onUpdate:modelValue":e=>M(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},A(t),{disabled:O(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},A(t),{id:t.id,"model-value":S(t.field),name:t.field,type:ie(t),placeholder:t.placeholder,disabled:O(t),required:t.required,"onUpdate:modelValue":e=>M(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,ue(t),{model:b.value,schema:t,value:b.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&&_.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:P},{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-5c24440d`]]);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(e,t){let n=(Array.isArray(t)?t:[t]).map((t,n)=>{let r=e.find(e=>String(e.value)===String(t));return{...r?.color?{color:r.color}:{},key:`${String(t)}-${n}`,label:r?.label??String(t)}});return n.some(e=>e.color)?n:[]}function b(t,n,r,i=[]){let a=t[n.field],o=n.formatter?.(a,t,r)??a;return o==null||o===``||Array.isArray(o)&&o.length===0?{tags:[],text:n.emptyText}:n.formatter?{tags:[],text:String(o)}:i.length>0&&v(o)?{tags:y(i,o),text:e.f(i,o)}:{tags:[],text:Array.isArray(o)?o.map(e=>String(e)).join(`, `):String(o)}}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))}}),ee=t.t(w,[[`__scopeId`,`data-v-ad0cf9f4`]]);function T(e,t){return typeof e==`function`?!!e(t):!!e}function E(e,t){return!e.authority||t.canAccess?.(e.authority)!==!1}function te(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`||!T(e.hidden,n))&&E(e,t)}))}var ne={key:0,class:`lumal-schema-table__toolbar`},re={key:0,class:`lumal-schema-table__toolbar-title`},ie={key:1,class:`lumal-schema-table__toolbar-content`},ae={key:2,class:`lumal-schema-table__toolbar-tools`},D={key:0,class:`lumal-schema-table__column-settings`},O={class:`lumal-schema-table__column-settings-trigger`,"aria-label":`列设置`,title:`列设置`},oe={class:`lumal-schema-table__column-options`},k=[`draggable`,`onDragstart`,`onDrop`],A={key:0,class:`lumal-schema-table__column-order-actions`},se=[`disabled`,`aria-label`,`onClick`],ce=[`disabled`,`aria-label`,`onClick`],j={key:1,class:`lumal-schema-table__error`,role:`alert`},M={key:2,class:`lumal-schema-table__scroll`},N={class:`lumal-schema-table__actions lumal-schema-table__actions--desktop`},le=[`aria-expanded`,`onClick`,`onKeydown`],P={key:3,class:`lumal-schema-table__pagination`},F=(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=``,T=(0,n.computed)(()=>te(c.columns,{canAccess:c.canAccess,rows:c.rows})),E=(0,n.computed)(()=>{let e=g.value;if(e.length===0)return T.value;let t=new Map(e.map((e,t)=>[e,t]));return[...T.value].sort((e,n)=>(t.get(String(e.field))??2**53-1)-(t.get(String(n.field))??2**53-1))}),F=(0,n.computed)(()=>E.value.filter(e=>e.renderable&&!h.value.has(String(e.field)))),I=(0,n.computed)(()=>E.value.filter(e=>e.renderable&&!e.fixed&&e.configurable!==!1)),ue=(0,n.computed)(()=>[...F.value].reverse().find(e=>!e.fixed)?.field),{dictionaryMap:de}=e.i(()=>T.value.map(e=>e.dictionary??e.dictType)),L=(0,n.computed)(()=>{if(typeof c.rowKey!=`function`)return c.rowKey;let e=c.rowKey;return t=>String(e(t,c.rows.indexOf(t)))}),fe=(0,n.computed)(()=>c.pagination&&c.total>0),R=(0,n.computed)(()=>c.showColumnSettings||c.columnSettings?.enabled),pe=(0,n.computed)(()=>y.value?c.mobileActionWidth:c.actionWidth),me=(0,n.computed)(()=>c.error instanceof Error?c.error.message||c.errorText:typeof c.error==`string`?c.error:c.errorText),he=(0,n.computed)(()=>c.defaultExpandAll??!!c.tableProps.defaultExpandAll),ge=(0,n.computed)(()=>c.treeProps??c.tableProps.treeProps??{children:`children`,hasChildren:`hasChildren`});function _e(e){let t=new Set(h.value);if(t.has(e))t.delete(e);else{if(I.value.filter(e=>!t.has(String(e.field))).length<=1)return;t.add(e)}h.value=t,Se(),(0,n.nextTick)(()=>m.value?.doLayout?.())}function ve(){h.value=new Set,g.value=T.value.map(e=>String(e.field)),Se(),(0,n.nextTick)(()=>m.value?.doLayout?.())}function ye(e,t){let r=I.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=E.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,Se(),(0,n.nextTick)(()=>m.value?.doLayout?.())}function be(e){w=e}function xe(e){if(!w||w===e){w=``;return}let t=E.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,Se(),(0,n.nextTick)(()=>m.value?.doLayout?.())),w=``}function Se(){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=T.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(T.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{ve()}}function we(e){let t=e.dictionary??e.dictType;return t?de.value[t]??[]:(0,n.unref)(e.options)??[]}function z(e,t,n){return typeof t.hidden==`function`&&!!t.hidden({rows:c.rows,row:e,index:n})}function B(e,t,n){return b(e,t,n,we(t))}function V(e){return(t,n,r,i)=>z(t,e,i)?``:B(t,e,i).text}function H(e){if(!c.scaleColumnWidth)return;let t=e.minWidth??e.componentProps.minWidth;return e.field===ue.value?t??e.width??e.componentProps.width:t}function U(e){if(!(!c.scaleColumnWidth||e.field===ue.value))return e.width}function W(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 G(e,t){let n=W(e,t);return n===void 0?`index:${t}`:`row:${typeof n}:${n}`}function K(e,t){return x.value===G(e,t)}function q(e,t,n){let r=G(e,t);n?x.value=r:x.value===r&&(x.value=null)}function J(e,t){let n=G(e,t);x.value=x.value===n?null:n}function Y(){x.value=null}function Te(e){_.value=e,v.value=e.map(e=>W(e,c.rows.indexOf(e))).filter(e=>e!==void 0),l(`selectionChange`,e,v.value)}function Ee(e){l(`pageChange`,e)}function De(e,t,n){l(`rowClick`,e,t,n)}function X(e,t){l(`currentChange`,e,t)}function Oe(e,t){l(`expandChange`,e,t)}function Z(){if(typeof window>`u`)return;let e=window.innerWidth<=768;e!==y.value&&(y.value=e,e||Y(),(0,n.nextTick)(()=>m.value?.doLayout?.()))}function Q(e){e.key===`Escape`&&Y()}function $(){!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 ke(){S?.disconnect(),S=void 0,C&&=(clearTimeout(C),void 0)}return(0,n.watch)(()=>c.autoResize,()=>{ke(),$()}),(0,n.watch)(()=>[c.columns,c.columnSettings?.storageKey],Ce,{deep:!0}),(0,n.watch)(x,e=>{typeof document>`u`||(document.removeEventListener(`keydown`,Q),e!==null&&document.addEventListener(`keydown`,Q))}),(0,n.onMounted)(()=>{Ce(),Z(),$(),window.addEventListener(`resize`,Z)}),(0,n.onBeforeUnmount)(()=>{ke(),window.removeEventListener(`resize`,Z),document.removeEventListener(`keydown`,Q)}),a({clearSelection:()=>m.value?.clearSelection?.(),doLayout:()=>m.value?.doLayout?.(),getSelectedRowKeys:()=>[...v.value],getSelectedRows:()=>[..._.value],getColumnOrder:()=>[...g.value],getExportData:(e=c.rows)=>({columns:F.value.map(e=>({field:String(e.field),label:e.label})),rows:e.map(e=>F.value.map(t=>B(e,t,c.rows.indexOf(e)).text))}),getVisibleColumns:()=>[...F.value],resetColumnSettings:ve,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`]||R.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,ne,[e.$slots[`toolbar-title`]?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,re,[(0,n.renderSlot)(e.$slots,`toolbar-title`,{},void 0,!0)])):(0,n.createCommentVNode)(``,!0),e.$slots.toolbar?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,ie,[(0,n.renderSlot)(e.$slots,`toolbar`,{},void 0,!0)])):(0,n.createCommentVNode)(``,!0),e.$slots[`toolbar-tools`]||R.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,ae,[(0,n.renderSlot)(e.$slots,`toolbar-tools`,{},void 0,!0),R.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,D,[(0,n.createElementVNode)(`details`,null,[(0,n.createElementVNode)(`summary`,O,[(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:ve},` 恢复默认 `)]),((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(I.value,(e,r)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:String(e.field),class:`lumal-schema-table__column-option`,draggable:t.columnSettings?.reorderable!==!1,onDragstart:t=>be(String(e.field)),onDragover:a[0]||=(0,n.withModifiers)(()=>{},[`prevent`]),onDrop:t=>xe(String(e.field))},[(0,n.createVNode)((0,n.unref)(i.ElCheckbox),{"model-value":!h.value.has(String(e.field)),"onUpdate:modelValue":t=>_e(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`,A,[(0,n.createElementVNode)(`button`,{type:`button`,disabled:r===0,"aria-label":`上移${e.label}`,onClick:t=>ye(String(e.field),-1)},` ↑ `,8,se),(0,n.createElementVNode)(`button`,{type:`button`,disabled:r===I.value.length-1,"aria-label":`下移${e.label}`,onClick:t=>ye(String(e.field),1)},` ↓ `,8,ce)]))],40,k))),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)(me.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":he.value,"tree-props":ge.value,"data-loading":t.loading,onSelectionChange:Te,onSortChange:a[2]||=e=>l(`sortChange`,e),onFilterChange:a[3]||=e=>l(`filterChange`,e),onRowClick:De,onCurrentChange:X,onExpandChange:Oe}),{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)(F.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:U(r),"min-width":H(r),fixed:r.fixed,resizable:t.columnResizable,"show-overflow-tooltip":r.showOverflowTooltip??!0,formatter:V(r),"data-field":String(r.field)}),{default:(0,n.withCtx)(({row:t,$index:i})=>[z(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)(ee,{display:B(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:pe.value,"data-field":`actions`},{default:(0,n.withCtx)(({row:r,$index:a})=>[(0,n.createElementVNode)(`div`,N,[(0,n.renderSlot)(e.$slots,`actions`,{row:r,index:a},void 0,!0)]),(0,n.createVNode)((0,n.unref)(i.ElPopover),{visible:K(r,a),teleported:!0,trigger:`click`,placement:`bottom-end`,"popper-class":`lumal-schema-table__mobile-actions-popper`,"onUpdate:visible":e=>q(r,a,e)},{reference:(0,n.withCtx)(()=>[(0,n.createElementVNode)(`button`,{type:`button`,class:`lumal-schema-table__mobile-actions`,"aria-haspopup":`menu`,"aria-expanded":K(r,a),onClick:(0,n.withModifiers)(e=>J(r,a),[`stop`]),onKeydown:(0,n.withKeys)((0,n.withModifiers)(Y,[`stop`,`prevent`]),[`esc`])},(0,n.toDisplayString)(t.mobileActionLabel),41,le)]),default:(0,n.withCtx)(()=>[(0,n.createElementVNode)(`div`,{class:`lumal-schema-table__mobile-actions-menu`,role:`menu`,onClickCapture:Y},[(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]])])),fe.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,P,[(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:Ee},null,8,[`page`,`page-size`,`total`,`page-sizes`])])):(0,n.createCommentVNode)(``,!0)],512))}}),I=t.t(F,[[`__scopeId`,`data-v-0cb1dbee`]]),ue=(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 de(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 L(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function fe(e){let t=(0,n.shallowRef)([]),r=(0,n.shallowRef)(0),i=(0,n.shallowRef)(!1),a=(0,n.shallowRef)(``),o=(0,n.computed)(()=>e.dataSource.value?t.value:e.rows.value),s=(0,n.computed)(()=>e.dataSource.value?r.value:e.total.value),c=(0,n.computed)(()=>e.loading.value||i.value);function l(t){let n=e.dataSource.value;return n?.parseResponse?n.parseResponse(t):!L(t)||!Array.isArray(t.items)||typeof t.total!=`number`?{items:[],total:0}:{items:t.items,total:t.total}}async function u(){let n=e.dataSource.value;if(n){i.value=!0,a.value=``;try{let i=l(await n.fetch({page:e.page.value,pageSize:e.pageSize.value,query:{...e.queryModel.value}}));t.value=i.items,r.value=i.total}catch(e){a.value=e instanceof Error?e.message:String(e),t.value=[],r.value=0}finally{i.value=!1}}}return{currentLoading:c,currentRows:o,currentTotal:s,error:a,load:u}}function R(e){try{return JSON.stringify(e)}catch{return String(e)}}function pe(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`&&R(i.value)!==R(a.value));function u(e,n){let s=n?{...n}:{};r.value=e,o.value=n,i.value=s,a.value={...s},c.value=``,t.value=!0}async function d(n){let i=e.dataSource.value;if(!i)return t.value=!1,!0;s.value=!0,c.value=``;try{return r.value===`edit`&&o.value?await i.update?.(o.value,n):await i.create?.(n),a.value={...n},t.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`},Ce={key:0,class:`lumal-crud-table__dialog-error`,role:`alert`},we={class:`lumal-crud-table__dialog-footer`},z=(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)(()=>de(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),ee=(0,n.shallowRef)(3),T=(0,n.computed)(()=>Math.max(1,s.query?.columns??ee.value)),E=(0,n.computed)(()=>s.query?.collapsible??!1),te=(0,n.computed)(()=>s.query?.defaultCollapsed??!0),ne=(0,n.computed)(()=>Math.max(1,s.query?.collapsedRows??1)),re=(0,n.computed)(()=>typeof s.pagination==`object`?s.pagination.enabled!==!1:s.pagination),ie=(0,n.computed)(()=>typeof s.pagination==`object`?s.pagination.pageSizes??s.pageSizes:s.pageSizes),ae=(0,n.computed)(()=>v.value.length>0),D=(0,n.computed)(()=>x.value.length>0),O=(0,n.computed)(()=>D.value&&s.toolbar?.create!==!1),oe=(0,n.computed)(()=>C.value&&s.toolbar?.batchDelete!==!1),k=(0,n.computed)(()=>!!s.dataSource&&s.toolbar?.refresh!==!1),A=(0,n.computed)(()=>!!s.toolbar?.export),se=(0,n.computed)(()=>s.toolbar?.fullscreen!==!1),ce=(0,n.computed)(()=>ae.value&&s.toolbar?.queryToggle!==!1),j=(0,n.computed)(()=>O.value||oe.value||A.value),M=(0,n.computed)(()=>ce.value||k.value||se.value),N=typeof window<`u`&&typeof window.matchMedia==`function`&&window.matchMedia(`(max-width: 768px)`).matches,le={desktop:s.query?.defaultVisible??!0,mobile:s.query?.mobileDefaultVisible??s.query?.defaultVisible??!0},P=(0,n.computed)(()=>s.dataSource),F=(0,n.shallowRef)(!1),L=(0,n.shallowRef)(!1),R=(0,n.shallowRef)(N),z=(0,n.computed)(()=>R.value?`mobile`:`desktop`),B=(0,n.shallowRef)(le),V=(0,n.shallowRef)(le[N?`mobile`:`desktop`]),H,U,W,G=fe({dataSource:P,loading:(0,n.computed)(()=>s.loading),page:u,pageSize:d,queryModel:l,rows:(0,n.computed)(()=>s.rows),total:(0,n.computed)(()=>s.total)}),K=me({collapsedRows:ne,collapsible:E,columns:T,defaultCollapsed:te,model:l,schemas:v}),q=he(),J=pe({dataSource:P,afterSave:G.load}),Y=(0,n.computed)(()=>G.currentLoading.value||F.value),Te=(0,n.computed)(()=>re.value&&G.currentTotal.value>0),Ee=(0,n.computed)(()=>({create:s.editor?.createTitle??s.toolbar?.createText??s.createText,edit:s.editor?.editTitle??`编辑`,view:s.editor?.viewTitle??`查看`})[J.mode.value]);(0,n.watch)(()=>s.dataSource,()=>void G.load(),{immediate:!0}),(0,n.watch)([u,d],()=>void G.load());function De(){L.value=typeof document<`u`&&document.fullscreenElement===f.value}function X(e){if(s.query?.columns!==void 0||e<=0)return;let t=e>=1280?4:e>=960?3:e>=640?2:1;ee.value!==t&&(ee.value=t)}function Oe(){U?.disconnect(),U=void 0,p.value&&(X(p.value.clientWidth),!(typeof ResizeObserver>`u`)&&(U=new ResizeObserver(e=>X(e[0]?.contentRect.width??0)),U.observe(p.value)))}function Z(e){R.value!==e&&(R.value=e,V.value=B.value[z.value],(0,n.nextTick)(()=>{V.value?Oe():U?.disconnect(),g.value?.doLayout()}))}function Q(e){Z(e.matches)}(0,n.onMounted)(()=>{typeof document<`u`&&document.addEventListener(`fullscreenchange`,De),typeof window<`u`&&typeof window.matchMedia==`function`&&(W=window.matchMedia(`(max-width: 768px)`),Z(W.matches),W.addEventListener?.(`change`,Q)),Oe()}),(0,n.onBeforeUnmount)(()=>{typeof document<`u`&&document.removeEventListener(`fullscreenchange`,De),W?.removeEventListener?.(`change`,Q),U?.disconnect(),H&&clearTimeout(H)}),(0,n.watch)(()=>s.query?.columns,e=>{e===void 0&&X(p.value?.clientWidth??0)}),(0,n.watch)([()=>s.query?.defaultVisible,()=>s.query?.mobileDefaultVisible],([e,t])=>{B.value={desktop:e??!0,mobile:t??e??!0},V.value=B.value[z.value]});function $(){c(`search`,{...l.value}),u.value===1?G.load():u.value=1}function ke(){let e=K.reset();m.value?.resetFields(),c(`reset`,e),u.value===1?G.load():u.value=1}function Ae(){s.query?.submitOnChange&&(H&&clearTimeout(H),H=setTimeout($,Math.max(0,s.query.submitDebounce??300)))}async function je(){let e=[...q.selectedRows.value],t=e.length>0?e:G.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(V.value=!V.value,B.value={...B.value,[z.value]:V.value},V.value){(0,n.nextTick)(()=>{Oe(),g.value?.doLayout()});return}U?.disconnect(),(0,n.nextTick)(()=>g.value?.doLayout())}function Fe(e,t,n,r){return typeof e==`function`?e(n,r):e??t}function Ie(){J.open(`create`)}function Le(e){J.open(`edit`,e)}function Re(e){J.open(`view`,e)}async function ze(e){await h.value?.validate()!==!1&&!await J.submit(e)&&J.error.value&&c(`operationError`,Error(J.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){F.value=!0;try{return await e(),Je(),await G.load(),!0}catch(e){return c(`operationError`,e),!1}finally{F.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=[...q.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(J.saving.value)return!1;if(!J.dirty.value)return!0;if(s.editor?.confirmClose)return s.editor.confirmClose({mode:J.mode.value,model:J.model.value,row:J.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&&(J.visible.value=!1)})}function qe(){ze(J.model.value)}function Je(){q.clear(),g.value?.clearSelection()}return t({clearSelection:Je,getCrudElement:()=>f.value,closeEditor:Ke,getEditorForm:()=>h.value,getQueryForm:()=>m.value,getSelectedRowKeys:()=>[...q.selectedRowKeys.value],getSelectedRows:()=>[...q.selectedRows.value],getTable:()=>g.value,isLoading:()=>Y.value,openCreate:Ie,openEdit:Le,openView:Re,query:$,reset:ke,reload:G.load,removeRow:He,removeSelectedRows:Ue,setFormData:e=>h.value?.setValues(e),toggleFullscreen:Me,toggleQuery:K.toggle,toggleQueryPanel:Pe}),(t,a)=>((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{ref_key:`crudRef`,ref:f,class:`lumal-crud-table`},[ae.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)(K).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)(K).visibleSchemas.value,columns:T.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)(K).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)(K).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)(K).collapsed.value),onClick:(0,n.unref)(K).toggle},{default:(0,n.withCtx)(()=>[(0,n.createTextVNode)((0,n.toDisplayString)((0,n.unref)(K).collapsed.value?`展开`:`收起`),1)]),_:1},8,[`aria-expanded`,`onClick`])):(0,n.createCommentVNode)(``,!0)])],2)),[[n.vShow,V.value]]):(0,n.createCommentVNode)(``,!0),(0,n.unref)(G).error.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,_e,[(0,n.createElementVNode)(`span`,null,(0,n.toDisplayString)((0,n.unref)(G).error.value),1),(0,n.createVNode)((0,n.unref)(i.ElButton),{"native-type":`button`,"data-action":`retry`,onClick:(0,n.unref)(G).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)(I),{ref_key:`tableRef`,ref:g,columns:b.value,rows:(0,n.unref)(G).currentRows.value,"row-key":S.value,"empty-text":w.value,loading:Y.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)(q).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`}`])},[O.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)(q).selectedRows.value.length===0||F.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),A.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)(G).load,openCreate:Ie,selectedRows:(0,n.unref)(q).selectedRows.value,selectedRowKeys:(0,n.unref)(q).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)(G).load,toggleFullscreen:Me},void 0,!0),ce.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":V.value}),"aria-expanded":String(V.value),"aria-label":V.value?`隐藏筛选条件`:`显示筛选条件`,title:V.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),k.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)(G).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),se.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??(L.value?`退出全屏`:`全屏`),title:e.toolbar?.fullscreenText??(L.value?`退出全屏`:`全屏`),onClick:Me},{default:(0,n.withCtx)(()=>[(0,n.createVNode)((0,n.unref)(r.LumalIcon),{name:L.value?`lumal:fullscreen-exit`:`lumal:fullscreen`},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)])})),D.value||P.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,D.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,D.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,!!P.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),Te.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)(G).currentTotal.value,"page-sizes":ie.value,onChange:Ne},null,8,[`page`,`page-size`,`total`,`page-sizes`])])):(0,n.createCommentVNode)(``,!0)]),(0,n.createVNode)(ue,{modelValue:(0,n.unref)(J).visible.value,"onUpdate:modelValue":a[4]||=e=>(0,n.unref)(J).visible.value=e,title:Ee.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)(J).mode.value,model:(0,n.unref)(J).model.value,close:Ke,submit:qe},()=>[(0,n.createElementVNode)(`div`,we,[(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)(J).mode.value===`view`?`关闭`:`取消`),1)]),_:1}),(0,n.unref)(J).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)(J).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)(J).error.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,Ce,(0,n.toDisplayString)((0,n.unref)(J).error.value),1)):(0,n.createCommentVNode)(``,!0),(0,n.createVNode)((0,n.unref)(_),{ref_key:`dialogFormRef`,ref:h,modelValue:(0,n.unref)(J).model.value,"onUpdate:modelValue":a[3]||=e=>(0,n.unref)(J).model.value=e,mode:(0,n.unref)(J).mode.value,schemas:x.value,columns:e.editor?.columns??2,"label-width":e.editor?.labelWidth??88,loading:e.editor?.loading,disabled:(0,n.unref)(J).saving.value||e.editor?.disabled,"submit-loading":(0,n.unref)(J).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))}}),B=t.t(z,[[`__scopeId`,`data-v-68c1d18f`]]),V={class:`lumal-info-table__value`},H=(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`,V,(0,n.toDisplayString)(c(e)),1)],4))),128))],6))}}),U=t.t(H,[[`__scopeId`,`data-v-4066d619`]]),W={key:0,class:`lumal-page__header`},G={class:`lumal-page__heading`},K={key:0,class:`lumal-page__title`},q={key:0,class:`lumal-page__description`},J={key:0,class:`lumal-page__actions`},Y={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`,W,[(0,n.createElementVNode)(`div`,G,[(0,n.renderSlot)(t.$slots,`title`,{},()=>[e.title?((0,n.openBlock)(),(0,n.createElementBlock)(`h2`,K,(0,n.toDisplayString)(e.title),1)):(0,n.createCommentVNode)(``,!0)],!0),e.description?((0,n.openBlock)(),(0,n.createElementBlock)(`p`,q,(0,n.toDisplayString)(e.description),1)):(0,n.createCommentVNode)(``,!0)]),t.$slots.actions?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,J,[(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`,Y,(0,n.toDisplayString)(e.loadingText),1)):(0,n.createCommentVNode)(``,!0)],2))}}),Ee=t.t(Te,[[`__scopeId`,`data-v-07931bf6`]]),De={key:0,class:`lumal-page-layout__query`},X={class:`lumal-page-layout__query-body`},Oe={class:`lumal-page-layout__query-actions`},Z={key:1,class:`lumal-page-layout__toolbar`},Q={class:`lumal-page-layout__content`},$={key:2,class:`lumal-page-layout__pagination`},ke=(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`,De,[(0,n.withDirectives)((0,n.createElementVNode)(`div`,X,[(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`,Oe,[(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`,Z,[(0,n.renderSlot)(t.$slots,`toolbar`,{},void 0,!0)])):(0,n.createCommentVNode)(``,!0),(0,n.createElementVNode)(`div`,Q,[(0,n.renderSlot)(t.$slots,`default`,{},void 0,!0)]),d.value?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,$,[(0,n.renderSlot)(t.$slots,`pagination`,{},void 0,!0)])):(0,n.createCommentVNode)(``,!0)],2))}}),Ae=t.t(ke,[[`__scopeId`,`data-v-8e09ec3e`]]);Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return de}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return B}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return Ee}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return I}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return U}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return Ae}});