@jari-ace/element-plus-component 0.2.2 → 0.2.3

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 (124) hide show
  1. package/README.md +1 -1
  2. package/dist/components/rolePicker/baseRolePicker.vue.d.ts.map +1 -1
  3. package/dist/components/rolePicker/baseRolePicker.vue.js +4 -2
  4. package/dist/components/rolePicker/baseRolePicker.vue.js.map +1 -1
  5. package/lib/index.css +1 -1
  6. package/lib/index.js +297 -297
  7. package/lib/index.umd.cjs +2 -2
  8. package/package.json +61 -61
  9. package/packages/components/autoComplete/JaAutoComplete.vue +47 -47
  10. package/packages/components/autoComplete/index.ts +5 -5
  11. package/packages/components/avatar/JaAvatar.vue +126 -126
  12. package/packages/components/avatar/avatarToken.ts +11 -11
  13. package/packages/components/avatar/defaultImg.ts +14 -14
  14. package/packages/components/avatar/index.ts +7 -7
  15. package/packages/components/button/JaButton.vue +51 -51
  16. package/packages/components/button/index.ts +4 -4
  17. package/packages/components/channelPicker/index.ts +7 -7
  18. package/packages/components/channelPicker/src/ChannelPicker.vue +43 -43
  19. package/packages/components/channelPicker/src/JaChannelPicker.vue +42 -42
  20. package/packages/components/checkbox/JaCheckbox.vue +73 -73
  21. package/packages/components/checkbox/index.ts +4 -4
  22. package/packages/components/checkboxGroup/JaCheckboxGroup.vue +45 -45
  23. package/packages/components/checkboxGroup/index.ts +4 -4
  24. package/packages/components/customGroupTree/index.ts +10 -10
  25. package/packages/components/customGroupTree/src/customGroupTree.vue +91 -91
  26. package/packages/components/datePicker/JaDatePicker.vue +52 -52
  27. package/packages/components/datePicker/index.ts +4 -4
  28. package/packages/components/departmentPicker/index.ts +4 -4
  29. package/packages/components/departmentPicker/src/DepartmentPicker.vue +107 -107
  30. package/packages/components/departmentPicker/src/consts.ts +2 -2
  31. package/packages/components/departmentTree/index.ts +10 -10
  32. package/packages/components/departmentTree/src/departmentTree.vue +135 -135
  33. package/packages/components/dropdownButton/JaDropdownButton.vue +59 -59
  34. package/packages/components/dropdownButton/index.ts +4 -4
  35. package/packages/components/enumList/EnumListInput.vue +107 -107
  36. package/packages/components/enumList/JaEnumList.vue +39 -39
  37. package/packages/components/enumList/index.ts +7 -7
  38. package/packages/components/enumPicker/index.ts +5 -5
  39. package/packages/components/enumPicker/src/EnumPicker.vue +103 -103
  40. package/packages/components/form/JaForm.vue +146 -146
  41. package/packages/components/form/index.ts +5 -5
  42. package/packages/components/form/types.ts +4 -4
  43. package/packages/components/formItem/JaFormItem.vue +87 -87
  44. package/packages/components/formItem/index.ts +4 -4
  45. package/packages/components/index.ts +34 -34
  46. package/packages/components/input/JaInput.vue +143 -143
  47. package/packages/components/input/index.ts +4 -4
  48. package/packages/components/inputI18n/I18nBundleEditor.vue +76 -76
  49. package/packages/components/inputI18n/InputI18n.vue +146 -146
  50. package/packages/components/inputI18n/JaInputI18n.vue +50 -50
  51. package/packages/components/inputI18n/index.ts +8 -8
  52. package/packages/components/inputNumber/JaInputNumber.vue +98 -98
  53. package/packages/components/inputNumber/index.ts +4 -4
  54. package/packages/components/mapItemList/JaMapItemList.vue +35 -35
  55. package/packages/components/mapItemList/MapItemListInput.vue +191 -191
  56. package/packages/components/mapItemList/index.ts +7 -7
  57. package/packages/components/numberList/JaNumberList.vue +36 -36
  58. package/packages/components/numberList/NumberListInput.vue +111 -111
  59. package/packages/components/numberList/index.ts +7 -7
  60. package/packages/components/properyPicker/JaPropertyPicker.vue +38 -38
  61. package/packages/components/properyPicker/PropertyPicker.vue +314 -314
  62. package/packages/components/properyPicker/index.ts +7 -7
  63. package/packages/components/radioGroup/JaRadioGroup.vue +50 -50
  64. package/packages/components/radioGroup/index.ts +4 -4
  65. package/packages/components/rolePicker/RoleEditor.vue +129 -129
  66. package/packages/components/rolePicker/RolePicker.vue +44 -44
  67. package/packages/components/rolePicker/RolePickerRaw.vue +56 -56
  68. package/packages/components/rolePicker/baseRolePicker.vue +91 -87
  69. package/packages/components/rolePicker/index.ts +10 -10
  70. package/packages/components/scrollbar/Scrollbar.vue +89 -89
  71. package/packages/components/scrollbar/index.ts +5 -5
  72. package/packages/components/scrollbar/utils.ts +17 -17
  73. package/packages/components/select/JaSelect.vue +48 -48
  74. package/packages/components/select/index.ts +4 -4
  75. package/packages/components/stringList/JaStringList.vue +36 -36
  76. package/packages/components/stringList/StringListInput.vue +96 -96
  77. package/packages/components/stringList/index.ts +7 -7
  78. package/packages/components/switch/JaSwitch.vue +50 -50
  79. package/packages/components/switch/index.ts +4 -4
  80. package/packages/components/timePicker/JaTimePicker.vue +52 -52
  81. package/packages/components/timePicker/index.ts +5 -5
  82. package/packages/components/tip/index.ts +4 -4
  83. package/packages/components/tip/src/AceTip.vue +43 -43
  84. package/packages/components/upload/index.ts +6 -6
  85. package/packages/components/upload/src/Upload.vue +25 -25
  86. package/packages/components/upload/src/type.ts +3 -3
  87. package/packages/components/userGroupPicker/index.ts +4 -4
  88. package/packages/components/userGroupPicker/src/UserGroupPicker.vue +94 -94
  89. package/packages/components/userGroupTree/index.ts +10 -10
  90. package/packages/components/userGroupTree/src/userGroupTree.vue +149 -149
  91. package/packages/components/userPicker/index.ts +10 -10
  92. package/packages/components/userPicker/src/CustomGroupManager.vue +189 -189
  93. package/packages/components/userPicker/src/JaUserList.vue +317 -317
  94. package/packages/components/userPicker/src/JaUserPicker.vue +40 -40
  95. package/packages/components/userPicker/src/UserPicker.vue +472 -472
  96. package/packages/components/userSelectDialog/index.ts +6 -6
  97. package/packages/components/userSelectDialog/src/userSelectDialog.vue +462 -462
  98. package/packages/components/userTag/UserInfoTag.vue +397 -397
  99. package/packages/components/userTag/index.ts +6 -6
  100. package/packages/components/userTag/sharedAxios.ts +8 -8
  101. package/packages/directives/auth/index.ts +41 -41
  102. package/packages/directives/autofocus/index.ts +29 -29
  103. package/packages/directives/index.ts +10 -10
  104. package/packages/directives/shortcut/index.ts +192 -192
  105. package/packages/hooks/useAppInstances.ts +34 -34
  106. package/packages/hooks/useBackendValidations.ts +81 -81
  107. package/packages/hooks/useBridage.ts +157 -157
  108. package/packages/hooks/useClassificationLevels.ts +62 -62
  109. package/packages/hooks/useDateTimeShortCuts.ts +65 -65
  110. package/packages/hooks/useRealms.ts +28 -28
  111. package/packages/hooks/useTreeData.ts +45 -45
  112. package/packages/hooks/useUserRefQuery.ts +232 -232
  113. package/packages/index.ts +24 -24
  114. package/packages/list.json +7 -7
  115. package/packages/types/custom.d.ts +13 -13
  116. package/packages/types/window.d.ts +16 -16
  117. package/packages/utils/install.ts +43 -43
  118. package/packages/utils/objectUtils.ts +31 -31
  119. package/theme-style/fonts/iconfont.json +5196 -5196
  120. package/theme-style/index.scss +10 -10
  121. package/theme-style/styles/element-plus-var.scss +1419 -1419
  122. package/theme-style/styles/iconfont.css +2979 -2979
  123. package/theme-style/styles/theme-var.scss +72 -72
  124. package/theme-style/styles/transition.scss +122 -122
package/lib/index.umd.cjs CHANGED
@@ -1,4 +1,4 @@
1
- (function(b,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("element-plus"),require("@jari-ace/app-bolts"),require("@element-plus/icons-vue")):typeof define=="function"&&define.amd?define(["exports","vue","element-plus","@jari-ace/app-bolts","@element-plus/icons-vue"],e):(b=typeof globalThis<"u"?globalThis:b||self,e(b.Lib={},b.vue,b.elementPlus,b.jariAceAppBolts,b.elementPlusIconVue))})(this,function(b,e,g,D,j){"use strict";const M=(t,a)=>(t.install=r=>{for(const o of[t,...Object.values({})])r.component(o.name,o)},t),Fe=M(e.defineComponent({__name:"Upload",props:{action:{},method:{},data:{},filename:{},file:{},headers:{},onError:{type:Function},onProgress:{type:Function},onSuccess:{type:Function},withCredentials:{type:Boolean}},setup(t){const a=e.reactive({fileList:[]});return(r,o)=>{const n=e.resolveComponent("el-button"),d=e.resolveComponent("el-upload");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(d,{"file-list":a.fileList,"onUpdate:fileList":o[0]||(o[0]=s=>a.fileList=s),class:"ace-upload","list-type":"picture"},{tip:e.withCtx(()=>o[2]||(o[2]=[e.createElementVNode("div",{class:"el-upload__tip"},"jpg/png files with a size less than 500kb",-1)])),default:e.withCtx(()=>[e.createVNode(n,{type:"primary"},{default:e.withCtx(()=>o[1]||(o[1]=[e.createTextVNode("Click to upload")])),_:1,__:[1]})]),_:1},8,["file-list"])])}}})),Xt={class:"text-box"},Zt=e.defineComponent({__name:"AceTip",props:{type:{default:"primary"},text:{default:""}},setup(t){const a=t;return(r,o)=>(e.openBlock(),e.createElementBlock("div",{class:"ace-tip-sfc",style:e.normalizeStyle({backgroundColor:`var(--el-color-${a.type}-light-9)`,border:` var(--el-color-${a.type})`})},[e.renderSlot(r.$slots,"icon",{},void 0,!0),e.createElementVNode("p",Xt,e.toDisplayString(a.text),1)],4))}}),K=(t,a)=>{const r=t.__vccOpts||t;for(const[o,n]of a)r[o]=n;return r},Ue=M(K(Zt,[["__scopeId","data-v-2d61860f"]]));function Le(t,a,r){const o=e.reactive({});let n=[];a||(a=D.createAxiosWithoutCache()),a.setDefaultRequestConfig({validationErrorProcessor:l=>{n=l}});for(const l of t){const c={trigger:"blur",validator:(u,i,f)=>{if(!n)return;let p=!1;for(const m of n){let w=m.fieldName;w!=null&&w.endsWith("[]")&&(w=w.substring(0,w.length-2)),w===l&&(p=!0,f(new Error(m.message)))}p||f()}};r&&r[l]?Array.isArray(r[l])?o[l]=[c,...r[l]]:o[l]=[c,r[l]]:o[l]=c}return{removeFieldError:l=>{n=n.filter(c=>c.fieldName!==l)},clearFiledErrors:()=>{n=[]},axios:a,rules:o}}function we(t,a){let r={};t={...t},a={...a};const o=Object.keys(t),n=Object.keys(a);return o.length>0&&n.length===0?t:o.length===0&&n.length>0?a:o.length===0&&n.length===0?{}:(n.forEach(d=>{o.includes(d)?Array.isArray(t[d])&&Array.isArray(a[d])?r[d]=[...t[d],...a[d]]:!Array.isArray(t[d])&&Array.isArray(a[d])?r[d]=[t[d],...a[d]]:Array.isArray(t[d])&&!Array.isArray(a[d])?r[d]=[...t[d],a[d]]:!Array.isArray(t[d])&&!Array.isArray(a[d])&&(r[d]=[t[d],a[d]]):r[d]=a[d],delete t[d],delete a[d]}),r={...r,...t},r)}const ze=M(e.defineComponent({__name:"JaForm",props:{model:{},inline:{type:Boolean,default:!1},labelPosition:{default:"top"},labelWidth:{},labelSuffix:{},hideRequiredAsterisk:{type:Boolean,default:!0},showMessage:{type:Boolean,default:!0},inlineMessage:{type:Boolean,default:!0},statusIcon:{type:Boolean,default:!1},validateOnRuleChange:{type:Boolean,default:!0},rules:{},size:{default:"small"},disabled:{type:Boolean},scrollToError:{type:Boolean,default:!0},validator:{},requiredPosition:{default:"right"}},emits:["validate","click"],setup(t,{expose:a}){const r=e.ref(void 0),o=t;e.provide("aceFormValidator",o.validator),e.provide("aceFormModel",o.model),e.provide("aceFormSize",o.size),e.provide("aceFormRequiredPosition",o.requiredPosition);const n=e.ref({}),d=e.computed(()=>o.model.formData?o.model.formData:o.model);return a({elForm:r,getElForm:()=>r.value,validate:async(s,l)=>{r&&(r.value.clearValidate(),o.rules&&Object.keys(o.rules).length>0?await r.value.validate((c,u)=>{c?s().then(()=>{var i;(i=o.validator)==null||i.clearFiledErrors()}).catch(()=>{n.value=we(o.rules,o.validator.rules),r.value.validate(),l&&l()}):console.log("error submit!",u)}):s().then(()=>{var c;(c=o.validator)==null||c.clearFiledErrors()}).catch(async()=>{n.value=we(o.rules,o.validator.rules),await r.value.validate(),l&&l()}))},getRules:()=>n.value}),e.watch(()=>o.model.formData,()=>{var s;(s=o.validator)==null||s.clearFiledErrors()}),e.watch(()=>o.rules,()=>{n.value=we(o.rules,o.validator.rules)},{immediate:!0}),(s,l)=>(e.openBlock(),e.createBlock(e.unref(g.ElForm),{ref_key:"formRef",ref:r,model:d.value,rules:n.value,inline:s.inline,"label-position":s.labelPosition,"label-width":s.labelWidth,"label-suffix":s.labelSuffix,"hide-required-asterisk":s.hideRequiredAsterisk,"show-message":s.showMessage,"inline-message":s.inlineMessage,"status-icon":s.statusIcon,"validate-on-rule-change":s.validateOnRuleChange,size:s.size,disabled:s.disabled,"scroll-to-error":s.scrollToError,onValidate:l[0]||(l[0]=(c,u,i)=>s.$emit("validate",c,u,i)),onClick:l[1]||(l[1]=()=>s.$emit("click"))},{default:e.withCtx(()=>[e.renderSlot(s.$slots,"default")]),_:3},8,["model","rules","inline","label-position","label-width","label-suffix","hide-required-asterisk","show-message","inline-message","status-icon","validate-on-rule-change","size","disabled","scroll-to-error"]))}})),vt={key:0,style:{color:"red"}},eo=["innerHTML"],to={key:1,style:{color:"red"}},v=M(e.defineComponent({__name:"JaFormItem",props:{prop:{},rules:{},label:{},labelWidth:{},labelRemark:{},required:{type:Boolean,default:!1},error:{},showMessage:{type:Boolean,default:!0},inlineMessage:{type:Boolean,default:!0},size:{default:"small"},requiredPosition:{},labelGap:{default:"4px"}},setup(t,{expose:a}){const r=e.inject("aceFormRequiredPosition"),o=t;e.provide("aceFormItemProp",o.prop);const n=e.computed(()=>o.requiredPosition||r),d=e.ref(null);return a({resetField:()=>{d.value.resetField()},clearValidate:()=>{d.value.clearValidate()},elFormItem:d}),(s,l)=>(e.openBlock(),e.createBlock(e.unref(g.ElFormItem),{ref_key:"formItem",ref:d,prop:s.prop,rules:s.rules,"label-width":s.labelWidth,error:s.error,"show-message":s.showMessage,"inline-message":s.inlineMessage,size:s.size},{label:e.withCtx(()=>[e.createElementVNode("div",{style:e.normalizeStyle([{display:"flex"},{gap:s.labelGap}])},[o.required&&n.value==="left"?(e.openBlock(),e.createElementBlock("span",vt,"*")):e.createCommentVNode("",!0),e.createVNode(e.unref(g.ElText),{class:"el-form-item__label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.label)+" ",1),s.labelRemark?(e.openBlock(),e.createBlock(e.unref(g.ElTooltip),{key:0,placement:"top"},{content:e.withCtx(()=>[e.createElementVNode("div",{innerHTML:s.labelRemark},null,8,eo)]),default:e.withCtx(()=>[e.createVNode(e.unref(g.ElIcon),null,{default:e.withCtx(()=>[e.createVNode(e.unref(j.QuestionFilled))]),_:1})]),_:1})):e.createCommentVNode("",!0)]),_:1}),o.required&&n.value==="right"?(e.openBlock(),e.createElementBlock("span",to,"*")):e.createCommentVNode("",!0)],4)]),default:e.withCtx(()=>[e.renderSlot(s.$slots,"default"),e.renderSlot(s.$slots,"error")]),_:3},8,["prop","rules","label-width","error","show-message","inline-message","size"]))}}));function L(t,a){if(!a||a.length==0)throw new Error("prop不能为空,请检查所有的ja-form-item的prop属性是否都已设置");const r=a.split(".");let o=t;for(let n=0;n<r.length&&(o=o[r[n]],!!o);n++);return o}function q(t,a,r){if(!a||a.length==0)throw new Error("prop不能为空,请检查所有的ja-form-item的prop属性是否都已设置");const o=a.split(".");let n=t;for(let d=0;d<o.length-1&&(n=n[o[d]],!!n);d++);n&&(n[o[o.length-1]]=r)}const se=M(e.defineComponent({__name:"JaInput",props:{type:{default:"text"},maxLength:{},minLength:{},showWordLimit:{type:Boolean,default:!1},placeholder:{},clearable:{type:Boolean,default:!1},formatter:{},parser:{},showPassword:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},size:{},prefixIcon:{},suffixIcon:{},rows:{default:2},autosize:{type:[Boolean,Object],default:!1},autocomplete:{default:"off"},name:{},readonly:{type:Boolean,default:!1},max:{},min:{},step:{},resize:{},autofocus:{type:Boolean,default:!1},form:{},label:{},tabindex:{},validateEvent:{type:Boolean,default:!0},inputStyle:{type:[Boolean,null,String,Object,Array]}},emits:["blur","focus","change","input","clear"],setup(t,{expose:a,emit:r}){const o=e.inject("aceFormModel"),n=e.inject("aceFormItemProp"),d=e.inject("aceFormValidator"),s=e.ref({}),l=r;function c(i){d.removeFieldError(n),q(o.formData,n,u.value),l("change",i)}const u=e.ref(L(o.formData,n));return e.watch(()=>o.formData,()=>{u.value=L(o.formData,n)},{deep:!0}),a({focus(){s.value.focus()},blur(){s.value.blur()},select(){s.value.select()},clear(){s.value.clear()},elInput:s}),(i,f)=>(e.openBlock(),e.createBlock(e.unref(g.ElInput),{ref_key:"input",ref:s,type:i.type,modelValue:u.value,"onUpdate:modelValue":f[0]||(f[0]=p=>u.value=p),maxlength:i.maxLength,minLength:i.minLength,"show-word-limit":i.showWordLimit,placeholder:i.placeholder,clearable:i.clearable,formatter:i.formatter,parser:i.parser,"show-password":i.showPassword,disabled:i.disabled,size:i.size,"prefix-icon":i.prefixIcon,"suffix-icon":i.suffixIcon,rows:i.rows,autosize:i.autosize,autocomplete:i.autocomplete,name:i.name,readonly:i.readonly,max:i.max,min:i.min,step:i.step,resize:i.resize,autofocus:i.autofocus,form:i.form,label:i.label,tabindex:i.tabindex,"validate-event":i.validateEvent,onBlur:f[1]||(f[1]=p=>i.$emit("blur",p)),onFocus:f[2]||(f[2]=p=>i.$emit("focus",p)),onChange:c,onInput:f[3]||(f[3]=p=>i.$emit("input",p)),onClear:f[4]||(f[4]=()=>i.$emit("clear"))},e.createSlots({_:2},[e.renderList(i.$slots,(p,m)=>({name:m,fn:e.withCtx(()=>[e.renderSlot(i.$slots,m)])}))]),1032,["type","modelValue","maxlength","minLength","show-word-limit","placeholder","clearable","formatter","parser","show-password","disabled","size","prefix-icon","suffix-icon","rows","autosize","autocomplete","name","readonly","max","min","step","resize","autofocus","form","label","tabindex","validate-event"]))}})),je=M(e.defineComponent({__name:"JaCheckbox",props:{label:{type:[String,Number,Boolean,Object]},trueLabel:{},falseLabel:{},disabled:{type:Boolean,default:!1},border:{type:Boolean,default:!1},size:{},name:{},checked:{type:Boolean,default:!1},indeterminate:{type:Boolean,default:!1},validateEvent:{type:Boolean,default:!0}},emits:["change"],setup(t,{expose:a,emit:r}){const o=e.inject("aceFormModel"),n=e.inject("aceFormItemProp"),d=e.inject("aceFormValidator"),s=e.ref({}),l=r;function c(i){d.removeFieldError(n),q(o.formData,n,u.value),l("change",i)}const u=e.ref(L(o.formData,n));return e.watch(()=>o.formData,()=>{u.value=L(o.formData,n)}),a({elCheckbox:s}),(i,f)=>(e.openBlock(),e.createBlock(e.unref(g.ElCheckbox),{ref_key:"checkbox",ref:s,modelValue:u.value,"onUpdate:modelValue":f[0]||(f[0]=p=>u.value=p),disabled:i.disabled,"true-label":i.trueLabel,"false-label":i.falseLabel,border:i.border,size:i.size,name:i.name,checked:i.checked,indeterminate:i.indeterminate,"validate-event":i.validateEvent,label:i.label,onChange:c},{default:e.withCtx(()=>[e.renderSlot(i.$slots,"default")]),_:3},8,["modelValue","disabled","true-label","false-label","border","size","name","checked","indeterminate","validate-event","label"]))}})),Re=M(e.defineComponent({__name:"JaInputNumber",props:{min:{default:-1/0},max:{default:1/0},step:{default:1},stepStrictly:{type:Boolean,default:!1},precision:{},size:{default:"small"},readonly:{type:Boolean,default:!1},disabled:{type:Boolean},controls:{type:Boolean,default:!0},controlsPosition:{},name:{},label:{},ariaLabel:{},placeholder:{},id:{},valueOnClear:{},validateEvent:{type:Boolean,default:!0}},emits:["blur","focus","change"],setup(t,{expose:a,emit:r}){const o=t,n=e.inject("aceFormModel"),d=e.inject("aceFormItemProp"),s=e.inject("aceFormValidator"),l=e.computed(()=>o.size?o.size:e.inject("aceFormSize")),c=e.ref(),u=r;function i(p){s.removeFieldError(d),q(n.formData,d,f.value),u("change",p)}const f=e.ref(L(n.formData,d));return e.watch(()=>n.formData,()=>{f.value=L(n.formData,d)},{deep:!0}),a({focus(){var p;(p=c==null?void 0:c.value)==null||p.focus()},blur(){var p;(p=c==null?void 0:c.value)==null||p.blur()},elInputNumber:c}),(p,m)=>(e.openBlock(),e.createBlock(e.unref(g.ElInputNumber),{min:p.min,max:p.max,label:p.label,disabled:p.disabled,id:p.id,"aria-label":p.ariaLabel,controls:p.controls,"controls-position":p.controlsPosition,modelValue:f.value,"onUpdate:modelValue":m[0]||(m[0]=w=>f.value=w),name:p.name,placeholder:p.placeholder,precision:p.precision,readonly:p.readonly,size:l.value,step:p.step,"step-strictly":p.stepStrictly,"value-on-clear":p.valueOnClear,"validate-event":p.validateEvent,onChange:i,onBlur:m[1]||(m[1]=w=>p.$emit("blur",w)),onFocus:m[2]||(m[2]=w=>p.$emit("focus",w))},{default:e.withCtx(()=>[e.renderSlot(p.$slots,"decrease-icon"),e.renderSlot(p.$slots,"increase-icon")]),_:3},8,["min","max","label","disabled","id","aria-label","controls","controls-position","modelValue","name","placeholder","precision","readonly","size","step","step-strictly","value-on-clear","validate-event"]))}})),Je=M(e.defineComponent({__name:"JaSelect",emits:["change"],setup(t,{expose:a,emit:r}){const o=e.ref({}),n=e.inject("aceFormModel"),d=e.inject("aceFormItemProp"),s=e.inject("aceFormValidator"),l=r;function c(i){s.removeFieldError(d),q(n.formData,d,u.value),l("change",i)}const u=e.ref(L(n.formData,d));return e.watch(()=>n.formData,()=>{u.value=L(n.formData,d)},{deep:!0}),a({focus:()=>o.value.focus(),blur:()=>o.value.blur(),elSelect:o}),(i,f)=>(e.openBlock(),e.createBlock(e.unref(g.ElSelect),e.mergeProps({ref_key:"input",ref:o,modelValue:u.value,"onUpdate:modelValue":f[0]||(f[0]=p=>u.value=p),onChange:c},i.$attrs),e.createSlots({_:2},[e.renderList(i.$slots,(p,m)=>({name:m,fn:e.withCtx(()=>[e.renderSlot(i.$slots,m)])}))]),1040,["modelValue"]))}})),Pe=M(e.defineComponent({__name:"JaDatePicker",emits:["change"],setup(t,{expose:a,emit:r}){const o=e.ref({}),n=e.inject("aceFormModel"),d=e.inject("aceFormItemProp"),s=e.inject("aceFormValidator"),l=r,c=e.ref({});function u(f){s.removeFieldError(d),q(n.formData,d,i.value),l("change",f)}const i=e.ref(L(n.formData,d));return e.watch(()=>n.formData,()=>{i.value=L(n.formData,d)},{deep:!0}),e.onMounted(()=>{Object.entries(o.value).filter(([p,m])=>m instanceof Function).forEach(([p,m])=>{c.value[p]=m})}),a(c.value),(f,p)=>(e.openBlock(),e.createBlock(e.unref(g.ElDatePicker),e.mergeProps({ref_key:"input",ref:o,modelValue:e.unref(n).formData[e.unref(d)],"onUpdate:modelValue":p[0]||(p[0]=m=>e.unref(n).formData[e.unref(d)]=m),onChange:u},f.$attrs),e.createSlots({_:2},[e.renderList(f.$slots,(m,w)=>({name:w,fn:e.withCtx(()=>[e.renderSlot(f.$slots,w)])}))]),1040,["modelValue"]))}}));function oo(t){const a=["Ctrl","Alt","Shift","Meta"],r=["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","1","2","3","4","5","6","7","8","9","0","Tab","F1","F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12","ArrowUp","ArrowDown","ArrowLeft","ArrowRight","Enter","Escape","Space"];if(t.length<2)return!1;for(let n=0;n<t.length-1;n++)if(!a.includes(t[n]))return!1;const o=t[t.length-1];return r.includes(o)}let oe={};function Oe(t,a,r){var n;const o=((n=t.arg)==null?void 0:n.split("+"))??[];if(!(!o||o.length===0))if(oo(o)){if(a.__vueShortcutHandler__)return;const d=s=>{var i;let l=!0;for(const f of o)f==="Ctrl"&&!s.ctrlKey&&(l=!1),f==="Alt"&&!s.altKey&&(l=!1),f==="Shift"&&!s.shiftKey&&(l=!1),f==="Meta"&&!s.metaKey&&(l=!1);const c=o.length>0?o[o.length-1]:null;s.key&&c&&s.key.toUpperCase()!==c.toUpperCase()&&(l=!1);let u=!1;r.component?u=(i=r.component.props)==null?void 0:i.disabled:r.props?u=r.props.disabled:u=a.hasAttribute("disabled"),l&&!u&&(s.preventDefault(),t.value?t.value(a,t,r):(a.focus(),a.click()))};ao({keys:t.arg,handler:d,el:a,prev:oe[t.arg]})}else console.warn(`Invalid shortcut key combination: ${o.join("+")}`)}function Ge(t){t.__vueShortcutHandler__&&ro(t.__vueShortcutHandler__)}function ao(t){const a=t.prev,r=(window.rawWindow??window).document;a&&r.removeEventListener("keydown",a.handler),r.addEventListener("keydown",t.handler),oe[t.keys]=t,t.el.__vueShortcutHandler__=t}function ro(t){const a=oe[t.keys];if(a&&a==t){const r=(window.rawWindow??window).document;r.removeEventListener("keydown",t.handler),t.prev?(r.addEventListener("keydown",t.prev.handler),oe[t.keys]=t.prev):oe[t.keys]=void 0}else if(a){let r=a;for(;r&&r.prev!=t;)r=r.prev;r&&(r.prev=t.prev)}t.prev&&delete t.prev,delete t.el.__vueShortcutHandler__}const no=t=>{if(t.offsetParent===null)return!1;const a=t.getBoundingClientRect(),r=window.rawWindow??window;return a.top<=r.innerHeight&&a.bottom>=0&&a.left<=r.innerWidth&&a.right>=0},lo={root:null,rootMargin:"0px",threshold:.1},ce={mounted(t,a,r){no(t)&&Oe(a,t,r);const o=d=>{d.forEach(s=>{s.isIntersecting?Oe(a,t,r):Ge(t)})},n=new IntersectionObserver(o,lo);t.__visibilityObserver__=n,n.observe(t)},unmounted(t){t.__visibilityObserver__.disconnect(),delete t.__visibilityObserver__,Ge(t)}};function qe(t,a){t.disable?(a.disabled=!0,a.classList.add("disabled")):a.style.display="none"}const We={mounted(t,a){const r=D.useLoginUser(),{value:o,modifiers:n}=a,d=typeof o=="string"?o.split(/,/):o??[];!d||d.length===0||(n.any?d.some(s=>r.hasRole(s))||qe(n,t):d.every(s=>r.hasRole(s))||qe(n,t))}},W=M(e.defineComponent({__name:"JaButton",props:{tooltip:{},shortcut:{},auth:{},authModifiers:{default:()=>({disable:!0,any:!1})},tooltipPlacement:{default:"bottom"}},setup(t,{expose:a}){const r=e.ref({}),o=t,n=ce;return a({elButton:r}),(d,s)=>(e.openBlock(),e.createBlock(e.unref(g.ElTooltip),{placement:d.tooltipPlacement,"append-to":"body"},{content:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(`${o.tooltip??""} ${o.shortcut?"(":""}${o.shortcut??""}${o.shortcut?")":""}`),1)]),default:e.withCtx(()=>[e.withDirectives((e.openBlock(),e.createBlock(e.unref(g.ElButton),e.mergeProps({ref_key:"input",ref:r},d.$attrs),e.createSlots({_:2},[e.renderList(d.$slots,(l,c)=>({name:c,fn:e.withCtx(()=>[e.renderSlot(d.$slots,c)])}))]),1040)),[[e.unref(We),d.auth,d.authModifiers],[e.unref(n),void 0,d.shortcut]])]),_:3},8,["placement"]))}})),He=M(e.defineComponent({__name:"JaDropdownButton",props:{tooltip:{},shortcut:{},buttonText:{},tooltipPlacement:{default:"top"},type:{default:"default"}},setup(t,{expose:a}){const r=e.ref(),o=e.ref(),n=t,d=ce;a({elButton:r,elDropdown:o});function s(l){l.focus()}return(l,c)=>(e.openBlock(),e.createBlock(e.unref(g.ElTooltip),{placement:l.tooltipPlacement},{content:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(`${n.tooltip??""} ${n.tooltip?"(":""}${n.shortcut??""}${n.tooltip?")":""}`),1)]),default:e.withCtx(()=>[e.createVNode(e.unref(g.ElDropdown),e.mergeProps({size:"default",ref_key:"dropdown",ref:o,trigger:"click"},l.$attrs),e.createSlots({default:e.withCtx(()=>[e.withDirectives((e.openBlock(),e.createBlock(e.unref(g.ElButton),e.mergeProps({ref_key:"input",ref:r,type:l.type,size:"default"},l.$attrs),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(n.buttonText)+" ",1),e.createVNode(e.unref(g.ElIcon),{class:"el-icon--right"},{default:e.withCtx(()=>[e.createVNode(e.unref(j.ArrowDown))]),_:1})]),_:1},16,["type"])),[[e.unref(d),s,l.shortcut]])]),_:2},[e.renderList(l.$slots,(u,i)=>({name:i,fn:e.withCtx(()=>[e.renderSlot(l.$slots,i)])}))]),1040)]),_:3},8,["placement"]))}})),Ke=M(e.defineComponent({__name:"JaSwitch",emits:["change"],setup(t,{expose:a,emit:r}){const o=e.ref(),n=e.inject("aceFormModel"),d=e.inject("aceFormItemProp"),s=e.inject("aceFormValidator"),l=r;function c(i){s.removeFieldError(d),q(n.formData,d,u.value),l("change",i)}const u=e.ref(L(n.formData,d));return e.watch(()=>n.formData,()=>{u.value=L(n.formData,d)},{deep:!0}),a({focus:()=>{var i;return(i=o.value)==null?void 0:i.focus()},blur:()=>{var i;return(i=o.value)==null?void 0:i.blur()},elSwitch:o}),(i,f)=>(e.openBlock(),e.createBlock(e.unref(g.ElSwitch),e.mergeProps({ref_key:"input",ref:o,modelValue:u.value,"onUpdate:modelValue":f[0]||(f[0]=p=>u.value=p),onChange:c},i.$attrs),e.createSlots({_:2},[e.renderList(i.$slots,(p,m)=>({name:m,fn:e.withCtx(()=>[e.renderSlot(i.$slots,m)])}))]),1040,["modelValue"]))}})),io={style:{width:"100%"}},so=["onClick"],Qe=e.defineComponent({__name:"StringListInput",props:{modelValue:{},size:{}},emits:["update:modelValue","change"],setup(t,{emit:a}){var i;const r=t,o=a;function n(f){s.value.splice(f,1)}function d(){s.value.push({v:""})}const s=e.ref(((i=r.modelValue)==null?void 0:i.map(f=>({v:f})))??[{v:""}]);let l=!1,c=!1;e.onBeforeMount(()=>u(r.modelValue));function u(f){if(c){c=!1;return}l=!0,f?(s.value=f.map(p=>({v:p})),s.value.length==0&&s.value.push({v:""})):s.value=[{v:""}]}return e.watch(()=>r.modelValue,f=>{u(f)}),e.watch(()=>s.value,()=>{if(l){l=!1;return}c=!0;const f=s.value.map(p=>p.v).filter(p=>p&&p.length>0);o("update:modelValue",f),o("change",f)},{deep:!0}),(f,p)=>(e.openBlock(),e.createElementBlock("div",io,[e.createVNode(e.unref(g.ElSpace),{direction:"vertical",style:{"align-items":"stretch",width:"100%"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(m,w)=>(e.openBlock(),e.createBlock(e.unref(g.ElInput),{key:w,modelValue:m.v,"onUpdate:modelValue":C=>m.v=C,size:f.size},{append:e.withCtx(()=>[e.createVNode(e.unref(g.ElTooltip),{content:"删除",placement:"right"},{default:e.withCtx(()=>{var C;return[e.withDirectives(e.createElementVNode("div",{onClick:y=>n(w),style:{margin:"0 -20px",padding:"0 20px"}},[e.createVNode(e.unref(g.ElIcon),null,{default:e.withCtx(()=>[e.createVNode(e.unref(j.Minus))]),_:1})],8,so),[[e.vShow,w<(((C=s.value)==null?void 0:C.length)??0)-1]])]}),_:2},1024),e.createVNode(e.unref(g.ElTooltip),{content:"添加",placement:"right"},{default:e.withCtx(()=>{var C;return[e.withDirectives(e.createElementVNode("div",{onClick:p[0]||(p[0]=y=>d()),style:{margin:"0 -20px",padding:"0 20px"}},[e.createVNode(e.unref(g.ElIcon),null,{default:e.withCtx(()=>[e.createVNode(e.unref(j.Plus))]),_:1})],512),[[e.vShow,w===(((C=s.value)==null?void 0:C.length)??0)-1]])]}),_:2},1024)]),_:2},1032,["modelValue","onUpdate:modelValue","size"]))),128))]),_:1})]))}}),Ye=M(e.defineComponent({__name:"JaStringList",emits:["change"],setup(t,{emit:a}){const r=e.inject("aceFormModel"),o=e.inject("aceFormItemProp"),n=e.inject("aceFormValidator"),d=a;function s(c){n.removeFieldError(o),q(r.formData,o,l.value),d("change",c)}const l=e.ref(L(r.formData,o)??[""]);return e.watch(()=>r.formData,()=>{l.value=L(r.formData,o)??[""]},{deep:!0}),(c,u)=>(e.openBlock(),e.createBlock(Qe,e.mergeProps({modelValue:l.value,"onUpdate:modelValue":u[0]||(u[0]=i=>l.value=i),onChange:s},c.$attrs),null,16,["modelValue"]))}})),Xe=M(Qe),co={style:{width:"100%"},class:"ja-number-list"},fo={class:"el-input-group__append"},uo={class:"el-input-group__append"},Ze=K(e.defineComponent({__name:"NumberListInput",props:{modelValue:{},precision:{},step:{},size:{}},emits:["update:modelValue","change"],setup(t,{emit:a}){var i;const r=t,o=a;function n(f){s.value.splice(f,1)}function d(){s.value.push({v:0})}const s=e.ref(((i=r.modelValue)==null?void 0:i.map(f=>({v:f})))??[{v:0}]);let l=!1,c=!1;e.onBeforeMount(()=>u(r.modelValue));function u(f){if(f){if(c){c=!1;return}l=!0,f?(s.value=f.map(p=>({v:p})),s.value.length==0&&s.value.push({v:0})):s.value=[{v:0}]}}return e.watch(()=>r.modelValue,f=>{u(f)}),e.watch(()=>s.value,()=>{if(l){l=!1;return}c=!0;const f=s.value.map(p=>p.v);o("update:modelValue",f),o("change",f)},{deep:!0}),(f,p)=>{const m=e.resolveComponent("el-tooltip");return e.openBlock(),e.createElementBlock("div",co,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(w,C)=>(e.openBlock(),e.createElementBlock("div",{class:"ja-input-box",key:C},[e.createVNode(e.unref(g.ElInputNumber),{modelValue:w.v,"onUpdate:modelValue":y=>w.v=y,precision:f.precision,size:f.size,step:f.step},null,8,["modelValue","onUpdate:modelValue","precision","size","step"]),e.createVNode(m,{content:"删除",placement:"right"},{default:e.withCtx(()=>{var y;return[e.withDirectives(e.createElementVNode("div",fo,[e.createVNode(e.unref(g.ElButton),{link:"",icon:e.unref(j.Minus),onClick:h=>n(C),size:f.size},null,8,["icon","onClick","size"])],512),[[e.vShow,C<(((y=s.value)==null?void 0:y.length)??0)-1]])]}),_:2},1024),e.createVNode(m,{content:"添加",placement:"right"},{default:e.withCtx(()=>{var y;return[e.withDirectives(e.createElementVNode("div",uo,[e.createVNode(e.unref(g.ElButton),{onClick:p[0]||(p[0]=h=>d()),size:f.size,link:"",icon:e.unref(j.Plus)},null,8,["size","icon"])],512),[[e.vShow,C===(((y=s.value)==null?void 0:y.length)??0)-1]])]}),_:2},1024)]))),128))])}}}),[["__scopeId","data-v-d4e93caa"]]),ve=M(e.defineComponent({__name:"JaNumberList",emits:["change"],setup(t,{emit:a}){const r=e.inject("aceFormModel"),o=e.inject("aceFormItemProp"),n=e.inject("aceFormValidator"),d=a;function s(c){n.removeFieldError(o),q(r.formData,o,l.value),d("change",c)}const l=e.ref(L(r.formData,o)??[0]);return e.watch(()=>r.formData,()=>{l.value=L(r.formData,o)??[0]},{deep:!0}),(c,u)=>(e.openBlock(),e.createBlock(Ze,e.mergeProps({modelValue:l.value,"onUpdate:modelValue":u[0]||(u[0]=i=>l.value=i),onChange:s},c.$attrs),null,16,["modelValue"]))}})),et=M(Ze),po={style:{width:"100%"},class:"ja-enum-list"},mo={class:"el-input-group__append"},ho={class:"el-input-group__append"},tt=K(e.defineComponent({__name:"EnumListInput",props:{modelValue:{},enumValues:{},size:{}},emits:["update:modelValue","change"],setup(t,{emit:a}){var i;const r=t,o=a;function n(f){s.value.splice(f,1)}function d(){s.value.push({v:""})}const s=e.ref(((i=r.modelValue)==null?void 0:i.map(f=>({v:f})))??[{v:""}]);let l=!1,c=!1;e.onBeforeMount(()=>u(r.modelValue));function u(f){if(c){c=!1;return}l=!0,s.value=f.map(p=>({v:p})),s.value.length==0&&s.value.push({v:""})}return e.watch(()=>r.modelValue,f=>{u(f)}),e.watch(()=>s.value,()=>{if(l){l=!1;return}c=!0;const f=s.value.map(p=>p.v).filter(p=>p&&p.length>0);o("update:modelValue",f),o("change",f)},{deep:!0}),(f,p)=>{const m=e.resolveComponent("el-option"),w=e.resolveComponent("el-tooltip");return e.openBlock(),e.createElementBlock("div",po,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(C,y)=>(e.openBlock(),e.createElementBlock("div",{class:"ja-input-box",key:y},[e.createVNode(e.unref(g.ElSelect),{modelValue:C.v,"onUpdate:modelValue":h=>C.v=h,size:f.size},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Object.keys(r.enumValues),h=>(e.openBlock(),e.createBlock(m,{key:h,label:h,value:r.enumValues[h]},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue","size"]),e.createVNode(w,{content:"删除",placement:"right"},{default:e.withCtx(()=>{var h;return[e.withDirectives(e.createElementVNode("div",mo,[e.createVNode(e.unref(g.ElButton),{link:"",icon:e.unref(j.Minus),onClick:I=>n(y),size:f.size},null,8,["icon","onClick","size"])],512),[[e.vShow,y<(((h=s.value)==null?void 0:h.length)??0)-1]])]}),_:2},1024),e.createVNode(w,{content:"添加",placement:"right"},{default:e.withCtx(()=>{var h;return[e.withDirectives(e.createElementVNode("div",ho,[e.createVNode(e.unref(g.ElButton),{onClick:p[0]||(p[0]=I=>d()),size:f.size,link:"",icon:e.unref(j.Plus)},null,8,["size","icon"])],512),[[e.vShow,y===(((h=s.value)==null?void 0:h.length)??0)-1]])]}),_:2},1024)]))),128))])}}}),[["__scopeId","data-v-7f910f6d"]]),ot=M(e.defineComponent({__name:"JaEnumList",props:{enumValues:{}},emits:["change"],setup(t,{emit:a}){const r=e.inject("aceFormModel"),o=e.inject("aceFormItemProp"),n=e.inject("aceFormValidator"),d=a;function s(c){n.removeFieldError(o),q(r.formData,o,l.value),d("change",c)}const l=e.ref(L(r.formData,o)??[""]);return e.watch(()=>r.formData,()=>{l.value=L(r.formData,o)??[""]},{deep:!0}),(c,u)=>(e.openBlock(),e.createBlock(tt,e.mergeProps({modelValue:l.value,"onUpdate:modelValue":u[0]||(u[0]=i=>l.value=i),"enum-values":c.enumValues,onChange:s},c.$attrs),null,16,["modelValue","enum-values"]))}})),at=M(tt),go={style:{width:"100%"},class:"ja-enum-list"},yo={class:"splitter"},wo={class:"el-input-group__append"},ko={class:"el-input-group__append"},rt=K(e.defineComponent({__name:"MapItemListInput",props:{modelValue:{},enumValues:{},valueType:{default:"String"},size:{}},emits:["update:modelValue","change"],setup(t,{emit:a}){const r=t,o=a;function n(m){var w;(w=s.value)==null||w.splice(m,1)}function d(){var m;(m=s.value)==null||m.push({k:""})}const s=e.ref([]);let l=!1,c=!1,u=e.ref(),i=e.ref({});function f(){switch(console.log("map item value comp type:",r.valueType),r.valueType){case"String":u.value=g.ElInput,i.value={};break;case"Integer":case"Long":u.value=g.ElInputNumber;break;case"Decimal":u.value=g.ElInputNumber,i.value={precision:2,step:.1};break;case"Enum":u.value=g.ElSelect;break;case"Boolean":u.value=g.ElSwitch;break;case"DATE":u.value=g.ElDatePicker,i.value={type:"date"};break;case"TIMESTAMP":u.value=g.ElDatePicker,i.value={type:"datetime"};break}}e.onBeforeMount(()=>{p(r.modelValue),f()});function p(m){if(c){c=!1;return}if(m){l=!0;const w=Object.keys(m);s.value=w.map(C=>({k:C,v:m[C]})),s.value.length==0&&s.value.push({k:""})}else s.value=[{k:""}]}return e.watch(()=>r.modelValue,m=>{p(m)},{deep:!0}),e.watch(()=>s.value,()=>{var w;if(l){l=!1;return}c=!0;const m=(w=s.value)==null?void 0:w.filter(C=>C.k&&C.v).reduce((C,y)=>(C[y.k]=y.v,C),{});o("update:modelValue",m),o("change",m)},{deep:!0}),e.watch(()=>r.valueType,()=>{f()}),(m,w)=>{const C=e.resolveComponent("el-text"),y=e.resolveComponent("el-option"),h=e.resolveComponent("el-tooltip");return e.openBlock(),e.createElementBlock("div",go,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(I,A)=>(e.openBlock(),e.createElementBlock("div",{class:"ja-input-box",key:A},[e.createVNode(e.unref(g.ElInput),{modelValue:I.k,"onUpdate:modelValue":k=>I.k=k,size:m.size,placeholder:"键"},null,8,["modelValue","onUpdate:modelValue","size"]),e.createElementVNode("div",yo,[e.createVNode(C,null,{default:e.withCtx(()=>w[1]||(w[1]=[e.createTextVNode(":")])),_:1,__:[1]})]),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(u)),e.mergeProps({modelValue:I.v,"onUpdate:modelValue":k=>I.v=k,size:m.size,placeholder:"值"},{ref_for:!0},e.unref(i)),{default:e.withCtx(()=>[r.valueType=="Enum"?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.keys(r.enumValues??{}),k=>(e.openBlock(),e.createBlock(y,{key:k,label:k,value:r.enumValues?r.enumValues[k]:""},null,8,["label","value"]))),128)):e.createCommentVNode("",!0)]),_:2},1040,["modelValue","onUpdate:modelValue","size"])),e.createVNode(h,{content:"删除",placement:"right"},{default:e.withCtx(()=>{var k;return[e.withDirectives(e.createElementVNode("div",wo,[e.createVNode(e.unref(g.ElButton),{link:"",icon:e.unref(j.Minus),onClick:_=>n(A),size:m.size},null,8,["icon","onClick","size"])],512),[[e.vShow,A<(((k=s.value)==null?void 0:k.length)??0)-1]])]}),_:2},1024),e.createVNode(h,{content:"添加",placement:"right"},{default:e.withCtx(()=>{var k;return[e.withDirectives(e.createElementVNode("div",ko,[e.createVNode(e.unref(g.ElButton),{onClick:w[0]||(w[0]=_=>d()),size:m.size,link:"",icon:e.unref(j.Plus)},null,8,["size","icon"])],512),[[e.vShow,A===(((k=s.value)==null?void 0:k.length)??0)-1]])]}),_:2},1024)]))),128))])}}}),[["__scopeId","data-v-f8df7c64"]]),nt=M(e.defineComponent({__name:"JaMapItemList",emits:["change"],setup(t,{emit:a}){const r=e.inject("aceFormModel"),o=e.inject("aceFormItemProp"),n=e.inject("aceFormValidator"),d=a;function s(c){n.removeFieldError(o),q(r.formData,o,l.value),d("change",c)}const l=e.ref(L(r.formData,o)??{"":""});return e.watch(()=>r.formData,()=>{l.value=L(r.formData,o)??{"":""}}),(c,u)=>(e.openBlock(),e.createBlock(rt,e.mergeProps({modelValue:l.value,"onUpdate:modelValue":u[0]||(u[0]=i=>l.value=i),onChange:s},c.$attrs),null,16,["modelValue"]))}})),lt=M(rt);function Vo(t,a){return{...t,label:typeof a=="string"&&typeof t[a]=="string"?t[a]:"",children:[]}}function Z(t,a){const r={},o=[];for(let n=0;n<t.length;n++){const d=t[n],s=Vo(d,a);r[d.id]=s,d.parentId?r[d.parentId].children.push(s):o.push(s)}return o}const ke="-1",it="-100",st=M(e.defineComponent({__name:"DepartmentPicker",props:e.mergeModels({realmId:{},modelValue:{},size:{default:"default"},showNodeAll:{type:Boolean,default:!1},allId:{default:ke},multiple:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["change"],["update:modelValue"]),setup(t,{emit:a}){const r=D.createAxiosWithoutCache(),o=D.useDepartmentApi(r),n=t,d=a,s=e.useModel(t,"modelValue");if(n.multiple&&!Array.isArray(s.value))throw new Error("部门选择器设置multiple为true,但是绑定的v-model值是单值");if(!n.multiple&&Array.isArray(s.value))throw new Error("部门选择器未设置multiple为true,但是绑定的v-model值是数组");const l=e.reactive({department:[]}),c=()=>{n.realmId&&o.getNormal(n.realmId??"0",D.FromDeptSelect.BAT).then(i=>{l.department=[...Z(i,"name")],n.showNodeAll&&l.department.unshift({label:"所有部门",id:n.allId,children:[],hasChildren:!1,sortIndex:0,sortPath:"",dataVersion:0,disabled:!0})})},u=i=>{d("change",Array.isArray(i)?l.department.filter(f=>i.findIndex(p=>f.id===p)>=0):l.department.find(f=>f.id===i))};return c(),e.watch(()=>n.realmId,()=>{c()}),(i,f)=>(e.openBlock(),e.createBlock(e.unref(g.ElTreeSelect),e.mergeProps({style:{width:"100%"},data:l.department,size:n.size,"node-key":"id","check-strictly":"","current-node-key":s.value,"highlight-current":"",modelValue:s.value,"onUpdate:modelValue":f[0]||(f[0]=p=>s.value=p),multiple:i.multiple,onChange:u},i.$attrs,{"collapse-tags":"","collapse-tags-tooltip":"","tag-type":"info",teleported:""}),null,16,["data","size","current-node-key","modelValue","multiple"]))}})),ct=e.ref(Date.now());function dt(){ct.value=Date.now()}function Ve(){return ct}const Ce=`data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1280.000000pt' height='1248.000000pt' viewBox='-384 -374 2048 2048' preserveAspectRatio='xMidYMid meet'%3E%3Cg transform='translate(0.000000,1248.000000) scale(0.100000,-0.100000)'
1
+ (function(b,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("element-plus"),require("@jari-ace/app-bolts"),require("@element-plus/icons-vue")):typeof define=="function"&&define.amd?define(["exports","vue","element-plus","@jari-ace/app-bolts","@element-plus/icons-vue"],e):(b=typeof globalThis<"u"?globalThis:b||self,e(b.Lib={},b.vue,b.elementPlus,b.jariAceAppBolts,b.elementPlusIconVue))})(this,function(b,e,g,D,j){"use strict";const M=(t,a)=>(t.install=r=>{for(const o of[t,...Object.values({})])r.component(o.name,o)},t),Fe=M(e.defineComponent({__name:"Upload",props:{action:{},method:{},data:{},filename:{},file:{},headers:{},onError:{type:Function},onProgress:{type:Function},onSuccess:{type:Function},withCredentials:{type:Boolean}},setup(t){const a=e.reactive({fileList:[]});return(r,o)=>{const n=e.resolveComponent("el-button"),d=e.resolveComponent("el-upload");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(d,{"file-list":a.fileList,"onUpdate:fileList":o[0]||(o[0]=s=>a.fileList=s),class:"ace-upload","list-type":"picture"},{tip:e.withCtx(()=>o[2]||(o[2]=[e.createElementVNode("div",{class:"el-upload__tip"},"jpg/png files with a size less than 500kb",-1)])),default:e.withCtx(()=>[e.createVNode(n,{type:"primary"},{default:e.withCtx(()=>o[1]||(o[1]=[e.createTextVNode("Click to upload")])),_:1,__:[1]})]),_:1},8,["file-list"])])}}})),Xt={class:"text-box"},Zt=e.defineComponent({__name:"AceTip",props:{type:{default:"primary"},text:{default:""}},setup(t){const a=t;return(r,o)=>(e.openBlock(),e.createElementBlock("div",{class:"ace-tip-sfc",style:e.normalizeStyle({backgroundColor:`var(--el-color-${a.type}-light-9)`,border:` var(--el-color-${a.type})`})},[e.renderSlot(r.$slots,"icon",{},void 0,!0),e.createElementVNode("p",Xt,e.toDisplayString(a.text),1)],4))}}),K=(t,a)=>{const r=t.__vccOpts||t;for(const[o,n]of a)r[o]=n;return r},Ue=M(K(Zt,[["__scopeId","data-v-2cc0dc68"]]));function Le(t,a,r){const o=e.reactive({});let n=[];a||(a=D.createAxiosWithoutCache()),a.setDefaultRequestConfig({validationErrorProcessor:l=>{n=l}});for(const l of t){const c={trigger:"blur",validator:(u,i,f)=>{if(!n)return;let p=!1;for(const m of n){let w=m.fieldName;w!=null&&w.endsWith("[]")&&(w=w.substring(0,w.length-2)),w===l&&(p=!0,f(new Error(m.message)))}p||f()}};r&&r[l]?Array.isArray(r[l])?o[l]=[c,...r[l]]:o[l]=[c,r[l]]:o[l]=c}return{removeFieldError:l=>{n=n.filter(c=>c.fieldName!==l)},clearFiledErrors:()=>{n=[]},axios:a,rules:o}}function we(t,a){let r={};t={...t},a={...a};const o=Object.keys(t),n=Object.keys(a);return o.length>0&&n.length===0?t:o.length===0&&n.length>0?a:o.length===0&&n.length===0?{}:(n.forEach(d=>{o.includes(d)?Array.isArray(t[d])&&Array.isArray(a[d])?r[d]=[...t[d],...a[d]]:!Array.isArray(t[d])&&Array.isArray(a[d])?r[d]=[t[d],...a[d]]:Array.isArray(t[d])&&!Array.isArray(a[d])?r[d]=[...t[d],a[d]]:!Array.isArray(t[d])&&!Array.isArray(a[d])&&(r[d]=[t[d],a[d]]):r[d]=a[d],delete t[d],delete a[d]}),r={...r,...t},r)}const ze=M(e.defineComponent({__name:"JaForm",props:{model:{},inline:{type:Boolean,default:!1},labelPosition:{default:"top"},labelWidth:{},labelSuffix:{},hideRequiredAsterisk:{type:Boolean,default:!0},showMessage:{type:Boolean,default:!0},inlineMessage:{type:Boolean,default:!0},statusIcon:{type:Boolean,default:!1},validateOnRuleChange:{type:Boolean,default:!0},rules:{},size:{default:"small"},disabled:{type:Boolean},scrollToError:{type:Boolean,default:!0},validator:{},requiredPosition:{default:"right"}},emits:["validate","click"],setup(t,{expose:a}){const r=e.ref(void 0),o=t;e.provide("aceFormValidator",o.validator),e.provide("aceFormModel",o.model),e.provide("aceFormSize",o.size),e.provide("aceFormRequiredPosition",o.requiredPosition);const n=e.ref({}),d=e.computed(()=>o.model.formData?o.model.formData:o.model);return a({elForm:r,getElForm:()=>r.value,validate:async(s,l)=>{r&&(r.value.clearValidate(),o.rules&&Object.keys(o.rules).length>0?await r.value.validate((c,u)=>{c?s().then(()=>{var i;(i=o.validator)==null||i.clearFiledErrors()}).catch(()=>{n.value=we(o.rules,o.validator.rules),r.value.validate(),l&&l()}):console.log("error submit!",u)}):s().then(()=>{var c;(c=o.validator)==null||c.clearFiledErrors()}).catch(async()=>{n.value=we(o.rules,o.validator.rules),await r.value.validate(),l&&l()}))},getRules:()=>n.value}),e.watch(()=>o.model.formData,()=>{var s;(s=o.validator)==null||s.clearFiledErrors()}),e.watch(()=>o.rules,()=>{n.value=we(o.rules,o.validator.rules)},{immediate:!0}),(s,l)=>(e.openBlock(),e.createBlock(e.unref(g.ElForm),{ref_key:"formRef",ref:r,model:d.value,rules:n.value,inline:s.inline,"label-position":s.labelPosition,"label-width":s.labelWidth,"label-suffix":s.labelSuffix,"hide-required-asterisk":s.hideRequiredAsterisk,"show-message":s.showMessage,"inline-message":s.inlineMessage,"status-icon":s.statusIcon,"validate-on-rule-change":s.validateOnRuleChange,size:s.size,disabled:s.disabled,"scroll-to-error":s.scrollToError,onValidate:l[0]||(l[0]=(c,u,i)=>s.$emit("validate",c,u,i)),onClick:l[1]||(l[1]=()=>s.$emit("click"))},{default:e.withCtx(()=>[e.renderSlot(s.$slots,"default")]),_:3},8,["model","rules","inline","label-position","label-width","label-suffix","hide-required-asterisk","show-message","inline-message","status-icon","validate-on-rule-change","size","disabled","scroll-to-error"]))}})),vt={key:0,style:{color:"red"}},eo=["innerHTML"],to={key:1,style:{color:"red"}},v=M(e.defineComponent({__name:"JaFormItem",props:{prop:{},rules:{},label:{},labelWidth:{},labelRemark:{},required:{type:Boolean,default:!1},error:{},showMessage:{type:Boolean,default:!0},inlineMessage:{type:Boolean,default:!0},size:{default:"small"},requiredPosition:{},labelGap:{default:"4px"}},setup(t,{expose:a}){const r=e.inject("aceFormRequiredPosition"),o=t;e.provide("aceFormItemProp",o.prop);const n=e.computed(()=>o.requiredPosition||r),d=e.ref(null);return a({resetField:()=>{d.value.resetField()},clearValidate:()=>{d.value.clearValidate()},elFormItem:d}),(s,l)=>(e.openBlock(),e.createBlock(e.unref(g.ElFormItem),{ref_key:"formItem",ref:d,prop:s.prop,rules:s.rules,"label-width":s.labelWidth,error:s.error,"show-message":s.showMessage,"inline-message":s.inlineMessage,size:s.size},{label:e.withCtx(()=>[e.createElementVNode("div",{style:e.normalizeStyle([{display:"flex"},{gap:s.labelGap}])},[o.required&&n.value==="left"?(e.openBlock(),e.createElementBlock("span",vt,"*")):e.createCommentVNode("",!0),e.createVNode(e.unref(g.ElText),{class:"el-form-item__label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.label)+" ",1),s.labelRemark?(e.openBlock(),e.createBlock(e.unref(g.ElTooltip),{key:0,placement:"top"},{content:e.withCtx(()=>[e.createElementVNode("div",{innerHTML:s.labelRemark},null,8,eo)]),default:e.withCtx(()=>[e.createVNode(e.unref(g.ElIcon),null,{default:e.withCtx(()=>[e.createVNode(e.unref(j.QuestionFilled))]),_:1})]),_:1})):e.createCommentVNode("",!0)]),_:1}),o.required&&n.value==="right"?(e.openBlock(),e.createElementBlock("span",to,"*")):e.createCommentVNode("",!0)],4)]),default:e.withCtx(()=>[e.renderSlot(s.$slots,"default"),e.renderSlot(s.$slots,"error")]),_:3},8,["prop","rules","label-width","error","show-message","inline-message","size"]))}}));function L(t,a){if(!a||a.length==0)throw new Error("prop不能为空,请检查所有的ja-form-item的prop属性是否都已设置");const r=a.split(".");let o=t;for(let n=0;n<r.length&&(o=o[r[n]],!!o);n++);return o}function q(t,a,r){if(!a||a.length==0)throw new Error("prop不能为空,请检查所有的ja-form-item的prop属性是否都已设置");const o=a.split(".");let n=t;for(let d=0;d<o.length-1&&(n=n[o[d]],!!n);d++);n&&(n[o[o.length-1]]=r)}const se=M(e.defineComponent({__name:"JaInput",props:{type:{default:"text"},maxLength:{},minLength:{},showWordLimit:{type:Boolean,default:!1},placeholder:{},clearable:{type:Boolean,default:!1},formatter:{},parser:{},showPassword:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},size:{},prefixIcon:{},suffixIcon:{},rows:{default:2},autosize:{type:[Boolean,Object],default:!1},autocomplete:{default:"off"},name:{},readonly:{type:Boolean,default:!1},max:{},min:{},step:{},resize:{},autofocus:{type:Boolean,default:!1},form:{},label:{},tabindex:{},validateEvent:{type:Boolean,default:!0},inputStyle:{type:[Boolean,null,String,Object,Array]}},emits:["blur","focus","change","input","clear"],setup(t,{expose:a,emit:r}){const o=e.inject("aceFormModel"),n=e.inject("aceFormItemProp"),d=e.inject("aceFormValidator"),s=e.ref({}),l=r;function c(i){d.removeFieldError(n),q(o.formData,n,u.value),l("change",i)}const u=e.ref(L(o.formData,n));return e.watch(()=>o.formData,()=>{u.value=L(o.formData,n)},{deep:!0}),a({focus(){s.value.focus()},blur(){s.value.blur()},select(){s.value.select()},clear(){s.value.clear()},elInput:s}),(i,f)=>(e.openBlock(),e.createBlock(e.unref(g.ElInput),{ref_key:"input",ref:s,type:i.type,modelValue:u.value,"onUpdate:modelValue":f[0]||(f[0]=p=>u.value=p),maxlength:i.maxLength,minLength:i.minLength,"show-word-limit":i.showWordLimit,placeholder:i.placeholder,clearable:i.clearable,formatter:i.formatter,parser:i.parser,"show-password":i.showPassword,disabled:i.disabled,size:i.size,"prefix-icon":i.prefixIcon,"suffix-icon":i.suffixIcon,rows:i.rows,autosize:i.autosize,autocomplete:i.autocomplete,name:i.name,readonly:i.readonly,max:i.max,min:i.min,step:i.step,resize:i.resize,autofocus:i.autofocus,form:i.form,label:i.label,tabindex:i.tabindex,"validate-event":i.validateEvent,onBlur:f[1]||(f[1]=p=>i.$emit("blur",p)),onFocus:f[2]||(f[2]=p=>i.$emit("focus",p)),onChange:c,onInput:f[3]||(f[3]=p=>i.$emit("input",p)),onClear:f[4]||(f[4]=()=>i.$emit("clear"))},e.createSlots({_:2},[e.renderList(i.$slots,(p,m)=>({name:m,fn:e.withCtx(()=>[e.renderSlot(i.$slots,m)])}))]),1032,["type","modelValue","maxlength","minLength","show-word-limit","placeholder","clearable","formatter","parser","show-password","disabled","size","prefix-icon","suffix-icon","rows","autosize","autocomplete","name","readonly","max","min","step","resize","autofocus","form","label","tabindex","validate-event"]))}})),je=M(e.defineComponent({__name:"JaCheckbox",props:{label:{type:[String,Number,Boolean,Object]},trueLabel:{},falseLabel:{},disabled:{type:Boolean,default:!1},border:{type:Boolean,default:!1},size:{},name:{},checked:{type:Boolean,default:!1},indeterminate:{type:Boolean,default:!1},validateEvent:{type:Boolean,default:!0}},emits:["change"],setup(t,{expose:a,emit:r}){const o=e.inject("aceFormModel"),n=e.inject("aceFormItemProp"),d=e.inject("aceFormValidator"),s=e.ref({}),l=r;function c(i){d.removeFieldError(n),q(o.formData,n,u.value),l("change",i)}const u=e.ref(L(o.formData,n));return e.watch(()=>o.formData,()=>{u.value=L(o.formData,n)}),a({elCheckbox:s}),(i,f)=>(e.openBlock(),e.createBlock(e.unref(g.ElCheckbox),{ref_key:"checkbox",ref:s,modelValue:u.value,"onUpdate:modelValue":f[0]||(f[0]=p=>u.value=p),disabled:i.disabled,"true-label":i.trueLabel,"false-label":i.falseLabel,border:i.border,size:i.size,name:i.name,checked:i.checked,indeterminate:i.indeterminate,"validate-event":i.validateEvent,label:i.label,onChange:c},{default:e.withCtx(()=>[e.renderSlot(i.$slots,"default")]),_:3},8,["modelValue","disabled","true-label","false-label","border","size","name","checked","indeterminate","validate-event","label"]))}})),Re=M(e.defineComponent({__name:"JaInputNumber",props:{min:{default:-1/0},max:{default:1/0},step:{default:1},stepStrictly:{type:Boolean,default:!1},precision:{},size:{default:"small"},readonly:{type:Boolean,default:!1},disabled:{type:Boolean},controls:{type:Boolean,default:!0},controlsPosition:{},name:{},label:{},ariaLabel:{},placeholder:{},id:{},valueOnClear:{},validateEvent:{type:Boolean,default:!0}},emits:["blur","focus","change"],setup(t,{expose:a,emit:r}){const o=t,n=e.inject("aceFormModel"),d=e.inject("aceFormItemProp"),s=e.inject("aceFormValidator"),l=e.computed(()=>o.size?o.size:e.inject("aceFormSize")),c=e.ref(),u=r;function i(p){s.removeFieldError(d),q(n.formData,d,f.value),u("change",p)}const f=e.ref(L(n.formData,d));return e.watch(()=>n.formData,()=>{f.value=L(n.formData,d)},{deep:!0}),a({focus(){var p;(p=c==null?void 0:c.value)==null||p.focus()},blur(){var p;(p=c==null?void 0:c.value)==null||p.blur()},elInputNumber:c}),(p,m)=>(e.openBlock(),e.createBlock(e.unref(g.ElInputNumber),{min:p.min,max:p.max,label:p.label,disabled:p.disabled,id:p.id,"aria-label":p.ariaLabel,controls:p.controls,"controls-position":p.controlsPosition,modelValue:f.value,"onUpdate:modelValue":m[0]||(m[0]=w=>f.value=w),name:p.name,placeholder:p.placeholder,precision:p.precision,readonly:p.readonly,size:l.value,step:p.step,"step-strictly":p.stepStrictly,"value-on-clear":p.valueOnClear,"validate-event":p.validateEvent,onChange:i,onBlur:m[1]||(m[1]=w=>p.$emit("blur",w)),onFocus:m[2]||(m[2]=w=>p.$emit("focus",w))},{default:e.withCtx(()=>[e.renderSlot(p.$slots,"decrease-icon"),e.renderSlot(p.$slots,"increase-icon")]),_:3},8,["min","max","label","disabled","id","aria-label","controls","controls-position","modelValue","name","placeholder","precision","readonly","size","step","step-strictly","value-on-clear","validate-event"]))}})),Je=M(e.defineComponent({__name:"JaSelect",emits:["change"],setup(t,{expose:a,emit:r}){const o=e.ref({}),n=e.inject("aceFormModel"),d=e.inject("aceFormItemProp"),s=e.inject("aceFormValidator"),l=r;function c(i){s.removeFieldError(d),q(n.formData,d,u.value),l("change",i)}const u=e.ref(L(n.formData,d));return e.watch(()=>n.formData,()=>{u.value=L(n.formData,d)},{deep:!0}),a({focus:()=>o.value.focus(),blur:()=>o.value.blur(),elSelect:o}),(i,f)=>(e.openBlock(),e.createBlock(e.unref(g.ElSelect),e.mergeProps({ref_key:"input",ref:o,modelValue:u.value,"onUpdate:modelValue":f[0]||(f[0]=p=>u.value=p),onChange:c},i.$attrs),e.createSlots({_:2},[e.renderList(i.$slots,(p,m)=>({name:m,fn:e.withCtx(()=>[e.renderSlot(i.$slots,m)])}))]),1040,["modelValue"]))}})),Pe=M(e.defineComponent({__name:"JaDatePicker",emits:["change"],setup(t,{expose:a,emit:r}){const o=e.ref({}),n=e.inject("aceFormModel"),d=e.inject("aceFormItemProp"),s=e.inject("aceFormValidator"),l=r,c=e.ref({});function u(f){s.removeFieldError(d),q(n.formData,d,i.value),l("change",f)}const i=e.ref(L(n.formData,d));return e.watch(()=>n.formData,()=>{i.value=L(n.formData,d)},{deep:!0}),e.onMounted(()=>{Object.entries(o.value).filter(([p,m])=>m instanceof Function).forEach(([p,m])=>{c.value[p]=m})}),a(c.value),(f,p)=>(e.openBlock(),e.createBlock(e.unref(g.ElDatePicker),e.mergeProps({ref_key:"input",ref:o,modelValue:e.unref(n).formData[e.unref(d)],"onUpdate:modelValue":p[0]||(p[0]=m=>e.unref(n).formData[e.unref(d)]=m),onChange:u},f.$attrs),e.createSlots({_:2},[e.renderList(f.$slots,(m,w)=>({name:w,fn:e.withCtx(()=>[e.renderSlot(f.$slots,w)])}))]),1040,["modelValue"]))}}));function oo(t){const a=["Ctrl","Alt","Shift","Meta"],r=["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","1","2","3","4","5","6","7","8","9","0","Tab","F1","F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12","ArrowUp","ArrowDown","ArrowLeft","ArrowRight","Enter","Escape","Space"];if(t.length<2)return!1;for(let n=0;n<t.length-1;n++)if(!a.includes(t[n]))return!1;const o=t[t.length-1];return r.includes(o)}let oe={};function Oe(t,a,r){var n;const o=((n=t.arg)==null?void 0:n.split("+"))??[];if(!(!o||o.length===0))if(oo(o)){if(a.__vueShortcutHandler__)return;const d=s=>{var i;let l=!0;for(const f of o)f==="Ctrl"&&!s.ctrlKey&&(l=!1),f==="Alt"&&!s.altKey&&(l=!1),f==="Shift"&&!s.shiftKey&&(l=!1),f==="Meta"&&!s.metaKey&&(l=!1);const c=o.length>0?o[o.length-1]:null;s.key&&c&&s.key.toUpperCase()!==c.toUpperCase()&&(l=!1);let u=!1;r.component?u=(i=r.component.props)==null?void 0:i.disabled:r.props?u=r.props.disabled:u=a.hasAttribute("disabled"),l&&!u&&(s.preventDefault(),t.value?t.value(a,t,r):(a.focus(),a.click()))};ao({keys:t.arg,handler:d,el:a,prev:oe[t.arg]})}else console.warn(`Invalid shortcut key combination: ${o.join("+")}`)}function Ge(t){t.__vueShortcutHandler__&&ro(t.__vueShortcutHandler__)}function ao(t){const a=t.prev,r=(window.rawWindow??window).document;a&&r.removeEventListener("keydown",a.handler),r.addEventListener("keydown",t.handler),oe[t.keys]=t,t.el.__vueShortcutHandler__=t}function ro(t){const a=oe[t.keys];if(a&&a==t){const r=(window.rawWindow??window).document;r.removeEventListener("keydown",t.handler),t.prev?(r.addEventListener("keydown",t.prev.handler),oe[t.keys]=t.prev):oe[t.keys]=void 0}else if(a){let r=a;for(;r&&r.prev!=t;)r=r.prev;r&&(r.prev=t.prev)}t.prev&&delete t.prev,delete t.el.__vueShortcutHandler__}const no=t=>{if(t.offsetParent===null)return!1;const a=t.getBoundingClientRect(),r=window.rawWindow??window;return a.top<=r.innerHeight&&a.bottom>=0&&a.left<=r.innerWidth&&a.right>=0},lo={root:null,rootMargin:"0px",threshold:.1},ce={mounted(t,a,r){no(t)&&Oe(a,t,r);const o=d=>{d.forEach(s=>{s.isIntersecting?Oe(a,t,r):Ge(t)})},n=new IntersectionObserver(o,lo);t.__visibilityObserver__=n,n.observe(t)},unmounted(t){t.__visibilityObserver__.disconnect(),delete t.__visibilityObserver__,Ge(t)}};function qe(t,a){t.disable?(a.disabled=!0,a.classList.add("disabled")):a.style.display="none"}const We={mounted(t,a){const r=D.useLoginUser(),{value:o,modifiers:n}=a,d=typeof o=="string"?o.split(/,/):o??[];!d||d.length===0||(n.any?d.some(s=>r.hasRole(s))||qe(n,t):d.every(s=>r.hasRole(s))||qe(n,t))}},W=M(e.defineComponent({__name:"JaButton",props:{tooltip:{},shortcut:{},auth:{},authModifiers:{default:()=>({disable:!0,any:!1})},tooltipPlacement:{default:"bottom"}},setup(t,{expose:a}){const r=e.ref({}),o=t,n=ce;return a({elButton:r}),(d,s)=>(e.openBlock(),e.createBlock(e.unref(g.ElTooltip),{placement:d.tooltipPlacement,"append-to":"body"},{content:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(`${o.tooltip??""} ${o.shortcut?"(":""}${o.shortcut??""}${o.shortcut?")":""}`),1)]),default:e.withCtx(()=>[e.withDirectives((e.openBlock(),e.createBlock(e.unref(g.ElButton),e.mergeProps({ref_key:"input",ref:r},d.$attrs),e.createSlots({_:2},[e.renderList(d.$slots,(l,c)=>({name:c,fn:e.withCtx(()=>[e.renderSlot(d.$slots,c)])}))]),1040)),[[e.unref(We),d.auth,d.authModifiers],[e.unref(n),void 0,d.shortcut]])]),_:3},8,["placement"]))}})),He=M(e.defineComponent({__name:"JaDropdownButton",props:{tooltip:{},shortcut:{},buttonText:{},tooltipPlacement:{default:"top"},type:{default:"default"}},setup(t,{expose:a}){const r=e.ref(),o=e.ref(),n=t,d=ce;a({elButton:r,elDropdown:o});function s(l){l.focus()}return(l,c)=>(e.openBlock(),e.createBlock(e.unref(g.ElTooltip),{placement:l.tooltipPlacement},{content:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(`${n.tooltip??""} ${n.tooltip?"(":""}${n.shortcut??""}${n.tooltip?")":""}`),1)]),default:e.withCtx(()=>[e.createVNode(e.unref(g.ElDropdown),e.mergeProps({size:"default",ref_key:"dropdown",ref:o,trigger:"click"},l.$attrs),e.createSlots({default:e.withCtx(()=>[e.withDirectives((e.openBlock(),e.createBlock(e.unref(g.ElButton),e.mergeProps({ref_key:"input",ref:r,type:l.type,size:"default"},l.$attrs),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(n.buttonText)+" ",1),e.createVNode(e.unref(g.ElIcon),{class:"el-icon--right"},{default:e.withCtx(()=>[e.createVNode(e.unref(j.ArrowDown))]),_:1})]),_:1},16,["type"])),[[e.unref(d),s,l.shortcut]])]),_:2},[e.renderList(l.$slots,(u,i)=>({name:i,fn:e.withCtx(()=>[e.renderSlot(l.$slots,i)])}))]),1040)]),_:3},8,["placement"]))}})),Ke=M(e.defineComponent({__name:"JaSwitch",emits:["change"],setup(t,{expose:a,emit:r}){const o=e.ref(),n=e.inject("aceFormModel"),d=e.inject("aceFormItemProp"),s=e.inject("aceFormValidator"),l=r;function c(i){s.removeFieldError(d),q(n.formData,d,u.value),l("change",i)}const u=e.ref(L(n.formData,d));return e.watch(()=>n.formData,()=>{u.value=L(n.formData,d)},{deep:!0}),a({focus:()=>{var i;return(i=o.value)==null?void 0:i.focus()},blur:()=>{var i;return(i=o.value)==null?void 0:i.blur()},elSwitch:o}),(i,f)=>(e.openBlock(),e.createBlock(e.unref(g.ElSwitch),e.mergeProps({ref_key:"input",ref:o,modelValue:u.value,"onUpdate:modelValue":f[0]||(f[0]=p=>u.value=p),onChange:c},i.$attrs),e.createSlots({_:2},[e.renderList(i.$slots,(p,m)=>({name:m,fn:e.withCtx(()=>[e.renderSlot(i.$slots,m)])}))]),1040,["modelValue"]))}})),io={style:{width:"100%"}},so=["onClick"],Qe=e.defineComponent({__name:"StringListInput",props:{modelValue:{},size:{}},emits:["update:modelValue","change"],setup(t,{emit:a}){var i;const r=t,o=a;function n(f){s.value.splice(f,1)}function d(){s.value.push({v:""})}const s=e.ref(((i=r.modelValue)==null?void 0:i.map(f=>({v:f})))??[{v:""}]);let l=!1,c=!1;e.onBeforeMount(()=>u(r.modelValue));function u(f){if(c){c=!1;return}l=!0,f?(s.value=f.map(p=>({v:p})),s.value.length==0&&s.value.push({v:""})):s.value=[{v:""}]}return e.watch(()=>r.modelValue,f=>{u(f)}),e.watch(()=>s.value,()=>{if(l){l=!1;return}c=!0;const f=s.value.map(p=>p.v).filter(p=>p&&p.length>0);o("update:modelValue",f),o("change",f)},{deep:!0}),(f,p)=>(e.openBlock(),e.createElementBlock("div",io,[e.createVNode(e.unref(g.ElSpace),{direction:"vertical",style:{"align-items":"stretch",width:"100%"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(m,w)=>(e.openBlock(),e.createBlock(e.unref(g.ElInput),{key:w,modelValue:m.v,"onUpdate:modelValue":C=>m.v=C,size:f.size},{append:e.withCtx(()=>[e.createVNode(e.unref(g.ElTooltip),{content:"删除",placement:"right"},{default:e.withCtx(()=>{var C;return[e.withDirectives(e.createElementVNode("div",{onClick:y=>n(w),style:{margin:"0 -20px",padding:"0 20px"}},[e.createVNode(e.unref(g.ElIcon),null,{default:e.withCtx(()=>[e.createVNode(e.unref(j.Minus))]),_:1})],8,so),[[e.vShow,w<(((C=s.value)==null?void 0:C.length)??0)-1]])]}),_:2},1024),e.createVNode(e.unref(g.ElTooltip),{content:"添加",placement:"right"},{default:e.withCtx(()=>{var C;return[e.withDirectives(e.createElementVNode("div",{onClick:p[0]||(p[0]=y=>d()),style:{margin:"0 -20px",padding:"0 20px"}},[e.createVNode(e.unref(g.ElIcon),null,{default:e.withCtx(()=>[e.createVNode(e.unref(j.Plus))]),_:1})],512),[[e.vShow,w===(((C=s.value)==null?void 0:C.length)??0)-1]])]}),_:2},1024)]),_:2},1032,["modelValue","onUpdate:modelValue","size"]))),128))]),_:1})]))}}),Ye=M(e.defineComponent({__name:"JaStringList",emits:["change"],setup(t,{emit:a}){const r=e.inject("aceFormModel"),o=e.inject("aceFormItemProp"),n=e.inject("aceFormValidator"),d=a;function s(c){n.removeFieldError(o),q(r.formData,o,l.value),d("change",c)}const l=e.ref(L(r.formData,o)??[""]);return e.watch(()=>r.formData,()=>{l.value=L(r.formData,o)??[""]},{deep:!0}),(c,u)=>(e.openBlock(),e.createBlock(Qe,e.mergeProps({modelValue:l.value,"onUpdate:modelValue":u[0]||(u[0]=i=>l.value=i),onChange:s},c.$attrs),null,16,["modelValue"]))}})),Xe=M(Qe),co={style:{width:"100%"},class:"ja-number-list"},fo={class:"el-input-group__append"},uo={class:"el-input-group__append"},Ze=K(e.defineComponent({__name:"NumberListInput",props:{modelValue:{},precision:{},step:{},size:{}},emits:["update:modelValue","change"],setup(t,{emit:a}){var i;const r=t,o=a;function n(f){s.value.splice(f,1)}function d(){s.value.push({v:0})}const s=e.ref(((i=r.modelValue)==null?void 0:i.map(f=>({v:f})))??[{v:0}]);let l=!1,c=!1;e.onBeforeMount(()=>u(r.modelValue));function u(f){if(f){if(c){c=!1;return}l=!0,f?(s.value=f.map(p=>({v:p})),s.value.length==0&&s.value.push({v:0})):s.value=[{v:0}]}}return e.watch(()=>r.modelValue,f=>{u(f)}),e.watch(()=>s.value,()=>{if(l){l=!1;return}c=!0;const f=s.value.map(p=>p.v);o("update:modelValue",f),o("change",f)},{deep:!0}),(f,p)=>{const m=e.resolveComponent("el-tooltip");return e.openBlock(),e.createElementBlock("div",co,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(w,C)=>(e.openBlock(),e.createElementBlock("div",{class:"ja-input-box",key:C},[e.createVNode(e.unref(g.ElInputNumber),{modelValue:w.v,"onUpdate:modelValue":y=>w.v=y,precision:f.precision,size:f.size,step:f.step},null,8,["modelValue","onUpdate:modelValue","precision","size","step"]),e.createVNode(m,{content:"删除",placement:"right"},{default:e.withCtx(()=>{var y;return[e.withDirectives(e.createElementVNode("div",fo,[e.createVNode(e.unref(g.ElButton),{link:"",icon:e.unref(j.Minus),onClick:h=>n(C),size:f.size},null,8,["icon","onClick","size"])],512),[[e.vShow,C<(((y=s.value)==null?void 0:y.length)??0)-1]])]}),_:2},1024),e.createVNode(m,{content:"添加",placement:"right"},{default:e.withCtx(()=>{var y;return[e.withDirectives(e.createElementVNode("div",uo,[e.createVNode(e.unref(g.ElButton),{onClick:p[0]||(p[0]=h=>d()),size:f.size,link:"",icon:e.unref(j.Plus)},null,8,["size","icon"])],512),[[e.vShow,C===(((y=s.value)==null?void 0:y.length)??0)-1]])]}),_:2},1024)]))),128))])}}}),[["__scopeId","data-v-a3fae0c2"]]),ve=M(e.defineComponent({__name:"JaNumberList",emits:["change"],setup(t,{emit:a}){const r=e.inject("aceFormModel"),o=e.inject("aceFormItemProp"),n=e.inject("aceFormValidator"),d=a;function s(c){n.removeFieldError(o),q(r.formData,o,l.value),d("change",c)}const l=e.ref(L(r.formData,o)??[0]);return e.watch(()=>r.formData,()=>{l.value=L(r.formData,o)??[0]},{deep:!0}),(c,u)=>(e.openBlock(),e.createBlock(Ze,e.mergeProps({modelValue:l.value,"onUpdate:modelValue":u[0]||(u[0]=i=>l.value=i),onChange:s},c.$attrs),null,16,["modelValue"]))}})),et=M(Ze),po={style:{width:"100%"},class:"ja-enum-list"},mo={class:"el-input-group__append"},ho={class:"el-input-group__append"},tt=K(e.defineComponent({__name:"EnumListInput",props:{modelValue:{},enumValues:{},size:{}},emits:["update:modelValue","change"],setup(t,{emit:a}){var i;const r=t,o=a;function n(f){s.value.splice(f,1)}function d(){s.value.push({v:""})}const s=e.ref(((i=r.modelValue)==null?void 0:i.map(f=>({v:f})))??[{v:""}]);let l=!1,c=!1;e.onBeforeMount(()=>u(r.modelValue));function u(f){if(c){c=!1;return}l=!0,s.value=f.map(p=>({v:p})),s.value.length==0&&s.value.push({v:""})}return e.watch(()=>r.modelValue,f=>{u(f)}),e.watch(()=>s.value,()=>{if(l){l=!1;return}c=!0;const f=s.value.map(p=>p.v).filter(p=>p&&p.length>0);o("update:modelValue",f),o("change",f)},{deep:!0}),(f,p)=>{const m=e.resolveComponent("el-option"),w=e.resolveComponent("el-tooltip");return e.openBlock(),e.createElementBlock("div",po,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(C,y)=>(e.openBlock(),e.createElementBlock("div",{class:"ja-input-box",key:y},[e.createVNode(e.unref(g.ElSelect),{modelValue:C.v,"onUpdate:modelValue":h=>C.v=h,size:f.size},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Object.keys(r.enumValues),h=>(e.openBlock(),e.createBlock(m,{key:h,label:h,value:r.enumValues[h]},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue","size"]),e.createVNode(w,{content:"删除",placement:"right"},{default:e.withCtx(()=>{var h;return[e.withDirectives(e.createElementVNode("div",mo,[e.createVNode(e.unref(g.ElButton),{link:"",icon:e.unref(j.Minus),onClick:I=>n(y),size:f.size},null,8,["icon","onClick","size"])],512),[[e.vShow,y<(((h=s.value)==null?void 0:h.length)??0)-1]])]}),_:2},1024),e.createVNode(w,{content:"添加",placement:"right"},{default:e.withCtx(()=>{var h;return[e.withDirectives(e.createElementVNode("div",ho,[e.createVNode(e.unref(g.ElButton),{onClick:p[0]||(p[0]=I=>d()),size:f.size,link:"",icon:e.unref(j.Plus)},null,8,["size","icon"])],512),[[e.vShow,y===(((h=s.value)==null?void 0:h.length)??0)-1]])]}),_:2},1024)]))),128))])}}}),[["__scopeId","data-v-49923459"]]),ot=M(e.defineComponent({__name:"JaEnumList",props:{enumValues:{}},emits:["change"],setup(t,{emit:a}){const r=e.inject("aceFormModel"),o=e.inject("aceFormItemProp"),n=e.inject("aceFormValidator"),d=a;function s(c){n.removeFieldError(o),q(r.formData,o,l.value),d("change",c)}const l=e.ref(L(r.formData,o)??[""]);return e.watch(()=>r.formData,()=>{l.value=L(r.formData,o)??[""]},{deep:!0}),(c,u)=>(e.openBlock(),e.createBlock(tt,e.mergeProps({modelValue:l.value,"onUpdate:modelValue":u[0]||(u[0]=i=>l.value=i),"enum-values":c.enumValues,onChange:s},c.$attrs),null,16,["modelValue","enum-values"]))}})),at=M(tt),go={style:{width:"100%"},class:"ja-enum-list"},yo={class:"splitter"},wo={class:"el-input-group__append"},ko={class:"el-input-group__append"},rt=K(e.defineComponent({__name:"MapItemListInput",props:{modelValue:{},enumValues:{},valueType:{default:"String"},size:{}},emits:["update:modelValue","change"],setup(t,{emit:a}){const r=t,o=a;function n(m){var w;(w=s.value)==null||w.splice(m,1)}function d(){var m;(m=s.value)==null||m.push({k:""})}const s=e.ref([]);let l=!1,c=!1,u=e.ref(),i=e.ref({});function f(){switch(console.log("map item value comp type:",r.valueType),r.valueType){case"String":u.value=g.ElInput,i.value={};break;case"Integer":case"Long":u.value=g.ElInputNumber;break;case"Decimal":u.value=g.ElInputNumber,i.value={precision:2,step:.1};break;case"Enum":u.value=g.ElSelect;break;case"Boolean":u.value=g.ElSwitch;break;case"DATE":u.value=g.ElDatePicker,i.value={type:"date"};break;case"TIMESTAMP":u.value=g.ElDatePicker,i.value={type:"datetime"};break}}e.onBeforeMount(()=>{p(r.modelValue),f()});function p(m){if(c){c=!1;return}if(m){l=!0;const w=Object.keys(m);s.value=w.map(C=>({k:C,v:m[C]})),s.value.length==0&&s.value.push({k:""})}else s.value=[{k:""}]}return e.watch(()=>r.modelValue,m=>{p(m)},{deep:!0}),e.watch(()=>s.value,()=>{var w;if(l){l=!1;return}c=!0;const m=(w=s.value)==null?void 0:w.filter(C=>C.k&&C.v).reduce((C,y)=>(C[y.k]=y.v,C),{});o("update:modelValue",m),o("change",m)},{deep:!0}),e.watch(()=>r.valueType,()=>{f()}),(m,w)=>{const C=e.resolveComponent("el-text"),y=e.resolveComponent("el-option"),h=e.resolveComponent("el-tooltip");return e.openBlock(),e.createElementBlock("div",go,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(I,A)=>(e.openBlock(),e.createElementBlock("div",{class:"ja-input-box",key:A},[e.createVNode(e.unref(g.ElInput),{modelValue:I.k,"onUpdate:modelValue":k=>I.k=k,size:m.size,placeholder:"键"},null,8,["modelValue","onUpdate:modelValue","size"]),e.createElementVNode("div",yo,[e.createVNode(C,null,{default:e.withCtx(()=>w[1]||(w[1]=[e.createTextVNode(":")])),_:1,__:[1]})]),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(u)),e.mergeProps({modelValue:I.v,"onUpdate:modelValue":k=>I.v=k,size:m.size,placeholder:"值"},{ref_for:!0},e.unref(i)),{default:e.withCtx(()=>[r.valueType=="Enum"?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Object.keys(r.enumValues??{}),k=>(e.openBlock(),e.createBlock(y,{key:k,label:k,value:r.enumValues?r.enumValues[k]:""},null,8,["label","value"]))),128)):e.createCommentVNode("",!0)]),_:2},1040,["modelValue","onUpdate:modelValue","size"])),e.createVNode(h,{content:"删除",placement:"right"},{default:e.withCtx(()=>{var k;return[e.withDirectives(e.createElementVNode("div",wo,[e.createVNode(e.unref(g.ElButton),{link:"",icon:e.unref(j.Minus),onClick:_=>n(A),size:m.size},null,8,["icon","onClick","size"])],512),[[e.vShow,A<(((k=s.value)==null?void 0:k.length)??0)-1]])]}),_:2},1024),e.createVNode(h,{content:"添加",placement:"right"},{default:e.withCtx(()=>{var k;return[e.withDirectives(e.createElementVNode("div",ko,[e.createVNode(e.unref(g.ElButton),{onClick:w[0]||(w[0]=_=>d()),size:m.size,link:"",icon:e.unref(j.Plus)},null,8,["size","icon"])],512),[[e.vShow,A===(((k=s.value)==null?void 0:k.length)??0)-1]])]}),_:2},1024)]))),128))])}}}),[["__scopeId","data-v-bebb510c"]]),nt=M(e.defineComponent({__name:"JaMapItemList",emits:["change"],setup(t,{emit:a}){const r=e.inject("aceFormModel"),o=e.inject("aceFormItemProp"),n=e.inject("aceFormValidator"),d=a;function s(c){n.removeFieldError(o),q(r.formData,o,l.value),d("change",c)}const l=e.ref(L(r.formData,o)??{"":""});return e.watch(()=>r.formData,()=>{l.value=L(r.formData,o)??{"":""}}),(c,u)=>(e.openBlock(),e.createBlock(rt,e.mergeProps({modelValue:l.value,"onUpdate:modelValue":u[0]||(u[0]=i=>l.value=i),onChange:s},c.$attrs),null,16,["modelValue"]))}})),lt=M(rt);function Vo(t,a){return{...t,label:typeof a=="string"&&typeof t[a]=="string"?t[a]:"",children:[]}}function Z(t,a){const r={},o=[];for(let n=0;n<t.length;n++){const d=t[n],s=Vo(d,a);r[d.id]=s,d.parentId?r[d.parentId].children.push(s):o.push(s)}return o}const ke="-1",it="-100",st=M(e.defineComponent({__name:"DepartmentPicker",props:e.mergeModels({realmId:{},modelValue:{},size:{default:"default"},showNodeAll:{type:Boolean,default:!1},allId:{default:ke},multiple:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["change"],["update:modelValue"]),setup(t,{emit:a}){const r=D.createAxiosWithoutCache(),o=D.useDepartmentApi(r),n=t,d=a,s=e.useModel(t,"modelValue");if(n.multiple&&!Array.isArray(s.value))throw new Error("部门选择器设置multiple为true,但是绑定的v-model值是单值");if(!n.multiple&&Array.isArray(s.value))throw new Error("部门选择器未设置multiple为true,但是绑定的v-model值是数组");const l=e.reactive({department:[]}),c=()=>{n.realmId&&o.getNormal(n.realmId??"0",D.FromDeptSelect.BAT).then(i=>{l.department=[...Z(i,"name")],n.showNodeAll&&l.department.unshift({label:"所有部门",id:n.allId,children:[],hasChildren:!1,sortIndex:0,sortPath:"",dataVersion:0,disabled:!0})})},u=i=>{d("change",Array.isArray(i)?l.department.filter(f=>i.findIndex(p=>f.id===p)>=0):l.department.find(f=>f.id===i))};return c(),e.watch(()=>n.realmId,()=>{c()}),(i,f)=>(e.openBlock(),e.createBlock(e.unref(g.ElTreeSelect),e.mergeProps({style:{width:"100%"},data:l.department,size:n.size,"node-key":"id","check-strictly":"","current-node-key":s.value,"highlight-current":"",modelValue:s.value,"onUpdate:modelValue":f[0]||(f[0]=p=>s.value=p),multiple:i.multiple,onChange:u},i.$attrs,{"collapse-tags":"","collapse-tags-tooltip":"","tag-type":"info",teleported:""}),null,16,["data","size","current-node-key","modelValue","multiple"]))}})),ct=e.ref(Date.now());function dt(){ct.value=Date.now()}function Ve(){return ct}const Ce=`data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1280.000000pt' height='1248.000000pt' viewBox='-384 -374 2048 2048' preserveAspectRatio='xMidYMid meet'%3E%3Cg transform='translate(0.000000,1248.000000) scale(0.100000,-0.100000)'
2
2
  fill='%23fff' stroke='none'%3E%3Cpath d='M6005 12474 c-22 -2 -89 -9 -149 -14 -542 -53 -1087 -253 -1556 -571
3
3
  -1089 -738 -1659 -2029 -1470 -3331 117 -802 507 -1518 1129 -2075 454 -406
4
4
  1057 -697 1666 -802 220 -39 317 -46 595 -46 278 0 375 7 595 46 1218 211
@@ -11,4 +11,4 @@ c-58 -10 -181 -38 -275 -61 -807 -204 -1528 -616 -2120 -1210 -726 -728 -1170
11
11
  19 4525 19 4730 0 495 -47 873 -112 1690 -291 697 -153 961 -197 1230 -208
12
12
  254 -10 438 21 605 103 172 84 315 254 390 463 74 203 108 420 117 736 34
13
13
  1230 -451 2439 -1332 3320 -707 707 -1608 1156 -2597 1294 -206 29 -201 30
14
- -283 -33z'/%3E%3C/g%3E%3C/svg%3E`,de=M(K(e.defineComponent({__name:"JaAvatar",props:{userId:{},username:{},realm:{},doNotLoadAvatar:{type:Boolean,default:!1},hasAvatar:{type:Boolean},firstName:{}},setup(t){const a=t,r=Ve(),o=e.ref(!1),n=e.ref(),d=e.ref();o.value=!0,e.onMounted(async()=>{await e.nextTick()});const s=e.computed(()=>{if(!(o.value&&a.hasAvatar&&!a.doNotLoadAvatar))return a.firstName?"":Ce;if(a.userId&&a.userId.length>0){const c="/ace-app-service/avatar/"+a.userId;return window.appDescriptor.env.isDevMode()?new URL("/ace"+c,location.origin).toString()+"?t="+r.value.toString():new URL(c,location.origin).toString()+"?t="+r.value.toString()}if(a.realm&&a.realm.length>0&&a.username&&a.username.length>0){const c="/ace-app-service/avatar/"+a.realm+"/"+a.username;return window.appDescriptor.env.isDevMode()?new URL("/ace"+c,location.origin).toString()+"?t="+r.value.toString():new URL(c,location.origin).toString()+"?t="+r.value.toString()}return a.firstName?"":Ce});function l(c){var f;if(!c)return;let i=((f=n.value)==null?void 0:f.$el.clientWidth)/2.8;c.style.fontSize=i+"px"}return e.onUnmounted(()=>{}),e.watch(d,()=>l(d.value)),(c,u)=>(e.openBlock(),e.createBlock(e.unref(g.ElAvatar),e.mergeProps({src:s.value},c.$attrs,{ref_key:"avatar",ref:n,class:"ja-avatar"}),{default:e.withCtx(()=>[a.firstName&&a.firstName.length>0?(e.openBlock(),e.createElementBlock("span",{key:0,class:"user-name-avatar",ref_key:"usernameSpan",ref:d},e.toDisplayString(c.firstName),513)):(e.openBlock(),e.createBlock(e.unref(g.ElImage),{key:1,style:{height:"100%"},src:e.unref(Ce),alt:"用户头像"},null,8,["src"]))]),_:1},16,["src"]))}}),[["__scopeId","data-v-23297931"]]));let _e;function Co(){return _e||(_e=D.createAxiosWithoutCache()),_e}const _o={class:"portrait"},bo={class:"user-info"},Eo={class:"dropdown"},Bo={class:"header"},No={class:"tools"},Io={style:{margin:"0","font-weight":"600"}},Ao={style:{margin:"0","font-size":"14px",color:"var(--el-color-info-light-3)"}},Do={style:{margin:"0"}},ae=M(K(e.defineComponent({__name:"UserInfoTag",props:{closable:{type:Boolean,default:!1},userId:{},fullName:{default:"无名氏"},realm:{},username:{},theme:{default:"skyGray"},hasAvatar:{type:Boolean},placement:{default:"bottom"}},emits:["closed"],setup(t,{emit:a}){const r={primary:"user-info-tag--root theme-primary",success:"user-info-tag--root theme-success",warning:"user-info-tag--root theme-warning",danger:"user-info-tag--root theme-danger",info:"user-info-tag--root theme-info",lotusPink:"user-info-tag--root theme-lotus-pink",wineRed:"user-info-tag--root theme-wine-red",autumnOrange:"user-info-tag--root theme-autumn-orange",sunYellow:"user-info-tag--root theme-sun-yellow",seaBlue:"user-info-tag--root theme-sea-blue",moonlightBlue:"user-info-tag--root theme-moonlight-blue",clovePurple:"user-info-tag--root theme-clove-purple",skyGray:"user-info-tag--root theme-sky-gray"},o=t,n=e.ref();let d=Co(),s=D.useLoading(d),l=D.useUserApi(d);const c=e.ref(!1),u=e.ref(!1),i=a;e.onUnmounted(()=>{d=void 0,s=void 0,l=void 0});function f(){if(!n.value)if(o.userId)l==null||l.getById(o.userId).then(y=>{n.value=y,p()});else if(o.username&&o.realm){let y=o.username;if(y.indexOf("\\")>=0){const h=y.split("\\");y=h[h.length-1]}l==null||l.getByUserName(o.realm,y).then(h=>{n.value=h,p()})}else throw new Error("user-info-tag组件的userId和(realm, userName)属性不能都为空")}function p(){n.value&&(l==null||l.checkBookmarked(n.value.id).then(y=>c.value=y))}function m(){u.value=!1,i("closed",o.userId,o.realm,o.username)}function w(){n.value&&(l==null||l.bookmarkUser(n.value.id).then(()=>c.value=!0))}function C(){n.value&&(l==null||l.unbookmarkUser(n.value.id).then(()=>c.value=!1))}return(y,h)=>(e.openBlock(),e.createBlock(e.unref(g.ElPopover),{width:"auto","hide-after":200,onBeforeEnter:f,placement:y.placement,visible:u.value,"onUpdate:visible":h[3]||(h[3]=I=>u.value=I)},{reference:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(r[o.theme])},[e.createElementVNode("div",_o,[e.createVNode(e.unref(de),{size:24,"user-id":y.userId,realm:y.realm,username:y.username,"has-avatar":!1},null,8,["user-id","realm","username"])]),e.createElementVNode("div",bo,[e.createTextVNode(e.toDisplayString(y.fullName)+" ",1),y.closable?(e.openBlock(),e.createElementBlock("div",{key:0,class:"close-btn",onClick:h[0]||(h[0]=I=>m())},[e.createVNode(e.unref(g.ElIcon),{size:10},{default:e.withCtx(()=>[e.createVNode(e.unref(j.Close))]),_:1})])):e.createCommentVNode("",!0)])],2)]),default:e.withCtx(()=>{var I,A,k,_,S,R,O;return[e.withDirectives((e.openBlock(),e.createElementBlock("div",Eo,[e.createElementVNode("div",Bo,[e.createVNode(e.unref(de),{"user-id":y.userId,realm:y.realm,username:y.username,size:75,"has-avatar":(I=n.value)==null?void 0:I.hasAvatar,style:{"margin-bottom":"8px"}},null,8,["user-id","realm","username","has-avatar"]),e.createElementVNode("div",No,[e.createVNode(e.unref(g.ElTooltip),{content:c.value?"取消常用人员":"设置为常用人员"},{default:e.withCtx(()=>[c.value?(e.openBlock(),e.createBlock(e.unref(g.ElIcon),{key:1,color:"#FFBF29",onClick:h[2]||(h[2]=J=>C()),size:16},{default:e.withCtx(()=>[e.createVNode(e.unref(j.StarFilled))]),_:1})):(e.openBlock(),e.createBlock(e.unref(g.ElIcon),{key:0,onClick:h[1]||(h[1]=J=>w()),size:16},{default:e.withCtx(()=>[e.createVNode(e.unref(j.Star))]),_:1}))]),_:1},8,["content"])])]),e.createElementVNode("div",null,[e.createElementVNode("p",Io,e.toDisplayString(y.fullName),1),e.createElementVNode("p",Ao," @"+e.toDisplayString(((k=(A=n.value)==null?void 0:A.department)==null?void 0:k.name)??"无归属部门"),1)]),e.createElementVNode("p",Do,[h[4]||(h[4]=e.createElementVNode("span",{class:"label"},"手机:",-1)),e.createTextVNode(" "+e.toDisplayString(!((_=n.value)!=null&&_.mobile)||n.value.mobile.length===0?"(未填写手机号)":(S=n.value)==null?void 0:S.mobile)+" ",1),h[5]||(h[5]=e.createElementVNode("br",null,null,-1)),h[6]||(h[6]=e.createElementVNode("span",{class:"label"},"邮箱:",-1)),e.createTextVNode(" "+e.toDisplayString(!((R=n.value)!=null&&R.email)||n.value.email.length===0?"(未填写邮箱号)":(O=n.value)==null?void 0:O.email),1)])])),[[e.vShow,u.value],[e.unref(g.vLoading),!!e.unref(s)]])]}),_:1},8,["placement","visible"]))}}),[["__scopeId","data-v-b26877d9"]]));function fe(t){var a=typeof t;return t!=null&&(a=="object"||a=="function")}var So=typeof global=="object"&&global&&global.Object===Object&&global,$o=typeof self=="object"&&self&&self.Object===Object&&self,ft=So||$o||Function("return this")(),be=function(){return ft.Date.now()},To=/\s/;function Mo(t){for(var a=t.length;a--&&To.test(t.charAt(a)););return a}var xo=/^\s+/;function ut(t){return t&&t.slice(0,Mo(t)+1).replace(xo,"")}var ee=ft.Symbol,pt=Object.prototype,Fo=pt.hasOwnProperty,Uo=pt.toString,re=ee?ee.toStringTag:void 0;function Lo(t){var a=Fo.call(t,re),r=t[re];try{t[re]=void 0;var o=!0}catch{}var n=Uo.call(t);return o&&(a?t[re]=r:delete t[re]),n}var zo=Object.prototype,jo=zo.toString;function Ro(t){return jo.call(t)}var Jo="[object Null]",Po="[object Undefined]",mt=ee?ee.toStringTag:void 0;function Oo(t){return t==null?t===void 0?Po:Jo:mt&&mt in Object(t)?Lo(t):Ro(t)}function Go(t){return t!=null&&typeof t=="object"}var qo="[object Symbol]";function ht(t){return typeof t=="symbol"||Go(t)&&Oo(t)==qo}var gt=NaN,Wo=/^[-+]0x[0-9a-f]+$/i,Ho=/^0b[01]+$/i,Ko=/^0o[0-7]+$/i,Qo=parseInt;function yt(t){if(typeof t=="number")return t;if(ht(t))return gt;if(fe(t)){var a=typeof t.valueOf=="function"?t.valueOf():t;t=fe(a)?a+"":a}if(typeof t!="string")return t===0?t:+t;t=ut(t);var r=Ho.test(t);return r||Ko.test(t)?Qo(t.slice(2),r?2:8):Wo.test(t)?gt:+t}var Yo="Expected a function",Xo=Math.max,Zo=Math.min;function Ee(t,a,r){var o,n,d,s,l,c,u=0,i=!1,f=!1,p=!0;if(typeof t!="function")throw new TypeError(Yo);a=yt(a)||0,fe(r)&&(i=!!r.leading,f="maxWait"in r,d=f?Xo(yt(r.maxWait)||0,a):d,p="trailing"in r?!!r.trailing:p);function m(S){var R=o,O=n;return o=n=void 0,u=S,s=t.apply(O,R),s}function w(S){return u=S,l=setTimeout(h,a),i?m(S):s}function C(S){var R=S-c,O=S-u,J=a-R;return f?Zo(J,d-O):J}function y(S){var R=S-c,O=S-u;return c===void 0||R>=a||R<0||f&&O>=d}function h(){var S=be();if(y(S))return I(S);l=setTimeout(h,C(S))}function I(S){return l=void 0,p&&o?m(S):(o=n=void 0,s)}function A(){l!==void 0&&clearTimeout(l),u=0,o=c=n=l=void 0}function k(){return l===void 0?s:I(be())}function _(){var S=be(),R=y(S);if(o=arguments,n=this,c=S,R){if(l===void 0)return w(c);if(f)return clearTimeout(l),l=setTimeout(h,a),m(c)}return l===void 0&&(l=setTimeout(h,a)),s}return _.cancel=A,_.flush=k,_}const ue=e.ref([]);function pe(){const t=D.useRealmApi(),a=async()=>{if(ue.value.length!==0)return;const o={};ue.value=await t.getAll(o)};return{realms:ue,getAllRealms:a,getDefaultRealm:async()=>(await a(),ue.value.find(o=>o.name==="ace-platform"))}}function Be(t,a,r,o,n,d){const s=e.ref({}),l=e.ref({currentPage:1,pageSize:50}),c=e.ref({total:0,users:[]});n||(n=D.createAxiosWithoutCache());const u=D.useUserApi(n),i=D.useLoading(n),f=e.ref(!1);function p(){C().then(y=>{r&&r(y,f.value),f.value=!1})}const m=Ee(p,300);function w(){c.value.total=0,c.value.users=[],l.value.currentPage!==1?l.value.currentPage=1:m()}e.watch(s,()=>{f.value=!0,w()},{deep:!0}),e.watch(()=>l.value.pageSize,()=>{f.value=!0,w()}),e.watch(()=>l.value.currentPage,()=>{C().then(y=>{r&&r(y,f.value),f.value=!1})});async function C(){if(t&&!t())return Promise.resolve(void 0);if(!s.value.realmId){const J=await pe().getDefaultRealm();s.value.realmId=J.id}const y=D.useUserQueryBuilder(),h=y.getQEntity();y.and(h.realm.id.eq(s.value.realmId)).and(h.recycled.eq(!1));const I=s.value.currentDept;I&&(I.id==it?y.and(h.department.isNull()):I.id!==ke&&y.and(h.department.sortPath.startWith(I.sortPath)));const A=s.value.classificationLevel;A&&y.and(h.classifiedLevel.loe(A));const k=s.value.currentGroup;k&&y.and(h.userGroups.any().group.sortPath.startWith(k.sortPath));const _=s.value.currentCustomGroup;_&&y.and(h.customGroups.any().customGroup.sortPath.startWith(_.sortPath));const S=s.value.name;if(S){const J="%"+S.split("").join("%")+"%";y.and(h.username.like(J).or(h.fullName.like(J)).or(h.pinYinName.like(J)).or(h.mobile.like(J)))}a&&y.and(a(h));const R=s.value.currentSort;R&&y.orderBy(R);const O=y.build();if(d)return u.queryUserRefs(O).then(J=>(c.value.users=J,J));{const J=l.value.currentPage-1;return u.queryUserRefsPaged(O,J,l.value.pageSize).then(Q=>(o&&J>0?c.value.users.push(...Q.content):c.value.users=Q.content,c.value.total=Q.totalElements,Q.content))}}return{queryParams:s,pageParams:l,queryResult:c,queryUsers:C,loading:i}}const Ne=M(K(e.defineComponent({__name:"departmentTree",props:e.mergeModels({realmId:{},showNoDepartment:{type:Boolean,default:!1},multiple:{type:Boolean}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["change","loaded"],["update:modelValue"]),setup(t,{expose:a,emit:r}){const o=e.ref(),n=D.createAxiosWithoutCache(),d=D.useLoading(n),s=D.useDepartmentApi(n),l=t,c=r,u=e.useModel(t,"modelValue"),i=e.computed({get(){var w;return(w=u.value)==null?void 0:w.id},set(w){u.value=f.departments.find(C=>C.id===w)??null}}),f=e.shallowReactive({departments:[]}),p=async()=>{if(!l.realmId)return;const w=await s.getNormal(l.realmId,D.FromDeptSelect.BT);f.departments=[{id:ke,label:"所有部门",name:"所有部门",shortCode:"",children:[],hasChildren:!1,sortIndex:-1,sortPath:"",dataVersion:0,entity:!1,attributes:{}},...l.showNoDepartment?[{id:it,label:"无归属部门",name:"无归属部门",shortCode:"",children:[],hasChildren:!1,sortIndex:-100,sortPath:"no_dept",dataVersion:0,entity:!1,attributes:{}}]:[],...Z(w,"name")],i.value=f.departments[0].id,c("loaded",f.departments)},m=w=>{u.value=w,c("change",w)};return e.watch(()=>l.realmId,()=>{p()}),a({reload:p}),p(),(w,C)=>e.withDirectives((e.openBlock(),e.createBlock(e.unref(g.ElTree),{ref_key:"deptTree",ref:o,data:e.unref(f).departments,size:"default","node-key":"id","default-expand-all":"","highlight-current":"","current-node-key":i.value,"expand-on-click-node":!1,onCurrentChange:m,props:{class:y=>{var h;return((h=u.value)==null?void 0:h.id)===y.id?"selected-group":"group"}}},null,8,["data","current-node-key","props"])),[[e.unref(g.vLoading),e.unref(d)]])}}),[["__scopeId","data-v-3d45613c"]])),Ie="com.csicit.ace.scrollbar.wrapped";var vo="Expected a function";function ne(t,a,r){var o=!0,n=!0;if(typeof t!="function")throw new TypeError(vo);return fe(r)&&(o="leading"in r?!!r.leading:o,n="trailing"in r?!!r.trailing:n),Ee(t,a,{leading:o,maxWait:a,trailing:n})}const ea={class:"ja-user-group-tree"},Ae=M(K(e.defineComponent({__name:"userGroupTree",props:e.mergeModels({realmId:{},multiple:{type:Boolean},showConsoleApp:{type:Boolean},appId:{},nodeHeight:{default:"auto"}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["change","loaded"],["update:modelValue"]),async setup(t,{expose:a,emit:r}){let o,n;const d=e.ref(),s=D.createAxiosWithoutCache(),l=D.useLoading(s),c=D.useUserGroupApi(s),u=D.useAppApi(s),i=t,f=r,p=e.useModel(t,"modelValue"),m=e.ref(i.appId),w=e.computed({get(){var k;return(k=p.value)==null?void 0:k.id},set(k){p.value=h.groups.find(_=>_.id===k)??null}}),[C,y]=([o,n]=e.withAsyncContext(()=>Promise.all([u.getGlobalApp(),u.getAccessible()])),o=await o,n(),o);if(y.unshift(C),!i.showConsoleApp){const k=y.findIndex(_=>_.name=="ace-app-manage");k>=0&&y.splice(k,1)}m.value||(m.value=C.id);const h=e.shallowReactive({groups:[]}),I=async()=>{if(!i.realmId||!m.value)return;const k=await c.getByAppIdAndRealm(m.value,i.realmId);h.groups=[...Z(k,"name")],!p.value&&h.groups.length>0&&(w.value=h.groups[0].id),f("loaded",h.groups)},A=k=>{p.value=k,f("change",k)};return e.watch(()=>i.realmId,()=>{I()}),e.watch(()=>i.appId,()=>{m.value=i.appId}),e.watch(m,()=>{I()}),a({reload:I,elTree:d}),I(),(k,_)=>(e.openBlock(),e.createElementBlock("div",ea,[i.appId?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(g.ElSelect),{key:0,modelValue:m.value,"onUpdate:modelValue":_[0]||(_[0]=S=>m.value=S),style:{width:"100%"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(y),S=>(e.openBlock(),e.createBlock(e.unref(g.ElOption),{key:S.id,label:S.caption,value:S.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])),e.withDirectives(e.createVNode(e.unref(g.ElTree),e.mergeProps({style:{width:"100%","--ja-group-tree-node-height":i.nodeHeight},ref_key:"groupTree",ref:d,data:e.unref(h).groups,size:"default","node-key":"id","highlight-current":"","default-expand-all":"","current-node-key":w.value,"expand-on-click-node":!1},k.$attrs,{onCurrentChange:A,props:{class:S=>{var R;return((R=p.value)==null?void 0:R.id)===S.id?"selected-group":"group"}}}),null,16,["style","data","current-node-key","props"]),[[e.unref(g.vLoading),e.unref(l)]])]))}}),[["__scopeId","data-v-69d218a4"]])),ta=M(K(e.defineComponent({__name:"customGroupTree",props:e.mergeModels({multiple:{type:Boolean}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["change","loaded"],["update:modelValue"]),setup(t,{expose:a,emit:r}){const o=e.ref(),n=D.createAxiosWithoutCache(),d=D.useLoading(n),s=D.useCustomGroupApi(n),l=r,c=e.useModel(t,"modelValue"),u=e.computed({get(){var m;return(m=c.value)==null?void 0:m.id},set(m){c.value=i.groups.find(w=>w.id===m)??null}}),i=e.shallowReactive({groups:[]}),f=async()=>{const m=await s.getAll();i.groups=[...Z(m,"name")],i.groups.length>0&&(c.value=i.groups[0],u.value=c.value.id),l("loaded",i.groups)},p=m=>{c.value=m,l("change",m)};return a({reload:f}),f(),(m,w)=>e.withDirectives((e.openBlock(),e.createBlock(e.unref(g.ElTree),{ref_key:"deptTree",ref:o,data:e.unref(i).groups,size:"default","node-key":"id","default-expand-all":"","highlight-current":"","current-node-key":u.value,"expand-on-click-node":!1,onCurrentChange:p,props:{class:C=>{var y;return((y=c.value)==null?void 0:y.id)===C.id?"selected-group":"group"}}},null,8,["data","current-node-key","props"])),[[e.unref(g.vLoading),e.unref(d)]])}}),[["__scopeId","data-v-78c7dcfc"]])),oa={class:"ja-user-select-dialog"},aa={class:"ja-user-select-dialog__content"},ra={style:{display:"flex","flex-direction":"row","align-content":"baseline",width:"100%",gap:"0"}},De=M(K(e.defineComponent({__name:"userSelectDialog",props:e.mergeModels({realmId:{type:String,required:!1},multiple:{type:Boolean,required:!1,default:!1},classificationLevel:{type:Number,required:!1,default:!1},customFilter:{type:Function,required:!1}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(t,{expose:a}){const r=t,o=e.useModel(t,"modelValue"),n=e.ref();async function d(){if(r.realmId)n.value=r.realmId;else{const E=await pe().getDefaultRealm();n.value=E.id}}if(d(),r.multiple){if(o.value||(o.value=[]),!Array.isArray(o.value))throw new Error("多选模式的选择用户对话框(multiple设置为true)的v-model必须是数组类型")}else if(Array.isArray(o.value))throw new Error("单选模式的选择用户对话框(multiple设置为false)的v-model只能为空或是单个UserReference对象");const s=e.ref(!1),l=e.ref(),c=e.ref(),u=e.ref(),i=D.createAxiosWithoutCache(),f=D.useLoading(i),p=e.ref(!1),m=e.ref([]),w=e.reactive(new Map),C=e.ref("dept");e.provide(Ie,void 0);const y=e.ref(Array.isArray(o.value)?[...o.value]:o.value),h=Be(void 0,r.customFilter,E=>{p.value||(m.value=E??[])},!1,i,!0),I=[{key:"user",dataKey:"id",width:290,title:"用户",cellRenderer:({cellData:E,rowData:$,rowIndex:H})=>{const{hasAvatar:Yt,fullName:Vr}=$,ye=$,Cr=H;return e.h("div",{class:"user-row",onMousedown:()=>P(ye),onMouseenter:()=>x(ye),onMouseup:B,onMouseover:_r=>F(_r,Cr)},[e.h(g.ElIcon,{color:"#0D6A9F"},()=>R(ye)?e.h(j.Check):void 0),e.h(ae,{userId:E,theme:O(ye),placement:"right-start",hasAvatar:!1,fullName:Vr}),e.h("div",{style:"flex:auto"})])}}],A=e.ref(!1),k=e.ref(),_=ne(N,100),S=ne(J,100);e.watch(l,()=>{C.value=="dept"&&(h.queryParams.value.currentDept=l.value)}),e.watch(c,()=>{C.value=="group"&&(h.queryParams.value.currentGroup=c.value)}),e.watch(u,()=>{C.value=="customGroup"&&(h.queryParams.value.currentCustomGroup=u.value)}),e.watch(()=>r.classificationLevel,()=>{h.queryParams.value.classificationLevel=r.classificationLevel}),e.watch(C,()=>{C.value==="dept"?(h.queryParams.value.currentDept=l.value,h.queryParams.value.currentGroup=void 0,h.queryParams.value.currentCustomGroup=void 0):C.value==="group"?(h.queryParams.value.currentDept=void 0,h.queryParams.value.currentCustomGroup=void 0,h.queryParams.value.currentGroup=c.value):C.value==="customGroup"&&(h.queryParams.value.currentDept=void 0,h.queryParams.value.currentCustomGroup=u.value,h.queryParams.value.currentGroup=void 0)});function R(E){return Array.isArray(y.value)?w.has(E.id):y.value&&y.value.id===E.id}function O(E){return R(E)?"autumnOrange":"skyGray"}function J(E){if(Array.isArray(y.value)){const $=y.value.findIndex(H=>H.id===E.id);$>=0?(w.delete(E.id),y.value.splice($,1)):(w.set(E.id,E),y.value.push(E))}else y.value=E}e.onUnmounted(()=>{_.cancel(),S.cancel()});function Q(){if(Array.isArray(y.value)){const E=h.queryResult.value.users.filter($=>!R($));E.forEach($=>w.set($.id,$)),y.value.push(...E)}}function Y(){Array.isArray(y.value)&&(w.clear(),y.value.splice(0))}function V(){if(Array.isArray(y.value)){const E=h.queryResult.value.users.filter($=>!R($));w.clear(),E.forEach($=>w.set($.id,$)),y.value.splice(0),y.value.push(...E)}}function U(){o.value=y.value,s.value=!1}function T(){p.value=!p.value,p.value?Array.isArray(y.value)?m.value=[...y.value]:m.value=y.value?[y.value]:[]:m.value=h.queryResult.value.users}function G(){!h.queryParams.value.realmId&&n.value&&(h.queryParams.value.realmId=n.value),y.value=Array.isArray(o.value)?[...o.value]:o.value,Array.isArray(o.value)&&(w.clear(),o.value.forEach(E=>w.set(E.id,E)))}function P(E){J(E),A.value=!0}function B(){A.value=!1}function x(E){A.value&&J(E)}let z;function N(){z&&z<m.value.length&&k.value.scrollToRow(z+1),z=void 0}function F(E,$){A.value=E.buttons>0,A.value&&(z=$,_())}return a({show(){s.value=!0}}),(E,$)=>(e.openBlock(),e.createBlock(e.unref(g.ElDialog),{modelValue:s.value,"onUpdate:modelValue":$[5]||($[5]=H=>s.value=H),"destroy-on-close":"",draggable:"",width:"640",title:"选择人员","append-to-body":"",onOpen:G},{footer:e.withCtx(()=>[e.createVNode(e.unref(W),{type:"primary",shortcut:"Ctrl+Alt+Enter",onClick:U,size:"default"},{default:e.withCtx(()=>$[10]||($[10]=[e.createTextVNode("确定 ")])),_:1,__:[10]}),e.createVNode(e.unref(g.ElButton),{plain:"",size:"default",onClick:$[4]||($[4]=H=>s.value=!1)},{default:e.withCtx(()=>$[11]||($[11]=[e.createTextVNode("取消")])),_:1,__:[11]})]),default:e.withCtx(()=>[e.createElementVNode("div",oa,[e.createVNode(e.unref(g.ElTabs),{class:"ja-user-select-dialog__left",modelValue:C.value,"onUpdate:modelValue":$[3]||($[3]=H=>C.value=H)},{default:e.withCtx(()=>[e.createVNode(e.unref(g.ElTabPane),{name:"dept",label:"按部门",class:"ja-user-select-dialog__left-dept-pane"},{default:e.withCtx(()=>[e.createVNode(e.unref(g.ElScrollbar),{height:"400"},{default:e.withCtx(()=>[e.createVNode(e.unref(Ne),{modelValue:l.value,"onUpdate:modelValue":$[0]||($[0]=H=>l.value=H),"realm-id":n.value},null,8,["modelValue","realm-id"])]),_:1})]),_:1}),e.createVNode(e.unref(g.ElTabPane),{name:"group",label:"按用户组"},{default:e.withCtx(()=>[e.createVNode(e.unref(g.ElScrollbar),{height:"400"},{default:e.withCtx(()=>[e.createVNode(e.unref(Ae),{modelValue:c.value,"onUpdate:modelValue":$[1]||($[1]=H=>c.value=H),"realm-id":n.value},null,8,["modelValue","realm-id"])]),_:1})]),_:1}),e.createVNode(e.unref(g.ElTabPane),{name:"customGroup",label:"按自定义组"},{default:e.withCtx(()=>[e.createVNode(e.unref(g.ElScrollbar),{height:"400"},{default:e.withCtx(()=>[e.createVNode(e.unref(ta),{modelValue:u.value,"onUpdate:modelValue":$[2]||($[2]=H=>u.value=H)},null,8,["modelValue"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),e.createElementVNode("div",aa,[e.withDirectives((e.openBlock(),e.createBlock(e.unref(g.ElTableV2),{ref_key:"userTable",ref:k,"row-height":40,"header-height":40,columns:I,data:m.value,width:300,height:450,fixed:""},{header:e.withCtx(()=>[e.createElementVNode("div",ra,[e.createVNode(e.unref(g.ElText),{style:{flex:"auto","font-weight":"600"}},{default:e.withCtx(()=>[$[6]||($[6]=e.createTextVNode(" 人员 ")),e.createVNode(e.unref(g.ElTooltip),{content:"切换筛选条件,不会清除已选人员。支持鼠标拖动多选。"},{default:e.withCtx(()=>[r.multiple?(e.openBlock(),e.createBlock(e.unref(g.ElIcon),{key:0},{default:e.withCtx(()=>[e.createVNode(e.unref(j.QuestionFilled))]),_:1})):e.createCommentVNode("",!0)]),_:1})]),_:1,__:[6]}),r.multiple?(e.openBlock(),e.createBlock(e.unref(g.ElText),{key:0,style:{flex:"none","margin-right":"12px"}},{default:e.withCtx(()=>[e.createVNode(e.unref(g.ElTooltip),{content:p.value?"显示所有人员":"只显示选中人员"},{default:e.withCtx(()=>[e.createVNode(e.unref(g.ElIcon),{size:"15",onClick:T},{default:e.withCtx(()=>[p.value?(e.openBlock(),e.createBlock(e.unref(j.View),{key:1})):(e.openBlock(),e.createBlock(e.unref(j.Hide),{key:0}))]),_:1})]),_:1},8,["content"])]),_:1})):e.createCommentVNode("",!0),r.multiple?(e.openBlock(),e.createBlock(e.unref(W),{key:1,plain:"",style:{flex:"none"},link:"",tooltip:"全部选中",shortcut:"Ctrl+A",onClick:Q},{default:e.withCtx(()=>$[7]||($[7]=[e.createTextVNode("全选 ")])),_:1,__:[7]})):e.createCommentVNode("",!0),r.multiple?(e.openBlock(),e.createBlock(e.unref(W),{key:2,plain:"",style:{flex:"none"},link:"",tooltip:"清除全部选中项",shortcut:"Ctrl+Q",onClick:Y},{default:e.withCtx(()=>$[8]||($[8]=[e.createTextVNode("全消 ")])),_:1,__:[8]})):e.createCommentVNode("",!0),r.multiple?(e.openBlock(),e.createBlock(e.unref(W),{key:3,plain:"",style:{flex:"none"},link:"",tooltip:"清除选中项,并选中之前未被选中项",shortcut:"Ctrl+F",onClick:V},{default:e.withCtx(()=>$[9]||($[9]=[e.createTextVNode("反选 ")])),_:1,__:[9]})):e.createCommentVNode("",!0)])]),_:1},8,["data"])),[[e.unref(g.vLoading),e.unref(f)]])])])]),_:1},8,["modelValue"]))}}),[["__scopeId","data-v-bb59eef3"]])),Se=M(e.defineComponent({__name:"Scrollbar",setup(t,{expose:a}){const r=e.ref(),o=e.ref([]),n=new Map;a({elScrollbar:r}),e.provide(Ie,o);let d=!1;e.watch(o,()=>{d&&l()},{deep:!0});const s=new IntersectionObserver(c=>{c.forEach(u=>{const i=n.get(u.target);i==null||i.onInView(u.isIntersecting)})});async function l(){var u;await e.nextTick();const c=(u=r.value)==null?void 0:u.$el;if(o.value){try{for(let i=0;i<o.value.length;i++)if(o.value[i]){const f=o.value[i],p=f.childElement.getBoundingClientRect(),m=c.getBoundingClientRect();p.top>=m.top&&p.bottom<=m.bottom&&p.left>=m.left&&p.right<=m.right&&f.onInView(!0),n.set(f.childElement,f),s.observe(f.childElement)}}finally{o.value&&o.value.splice(0)}d=!0}}return e.onMounted(async()=>{await l()}),e.onUnmounted(()=>{n.forEach(c=>{s.disconnect()})}),(c,u)=>(e.openBlock(),e.createBlock(e.unref(g.ElScrollbar),e.mergeProps({ref_key:"scroll",ref:r,class:"scroll-container"},c.$attrs),e.createSlots({_:2},[e.renderList(c.$slots,(i,f)=>({name:f,fn:e.withCtx(()=>[e.renderSlot(c.$slots,f)])}))]),1040))}}));function na(t,a){for(var r=-1,o=t==null?0:t.length,n=Array(o);++r<o;)n[r]=a(t[r],r,t);return n}var la=Array.isArray,wt=ee?ee.prototype:void 0,kt=wt?wt.toString:void 0;function $e(t){if(typeof t=="string")return t;if(la(t))return na(t,$e)+"";if(ht(t))return kt?kt.call(t):"";var a=t+"";return a=="0"&&1/t==-1/0?"-0":a}function ia(t,a,r,o){for(var n=t.length,d=r+-1;++d<n;)if(a(t[d],d,t))return d;return-1}function sa(t){return t!==t}function ca(t,a,r){for(var o=r-1,n=t.length;++o<n;)if(t[o]===a)return o;return-1}function Vt(t,a,r){return a===a?ca(t,a,r):ia(t,sa,r)}function da(t){return t==null?"":$e(t)}function fa(t,a,r){var o=-1,n=t.length;a<0&&(a=-a>n?0:n+a),r=r>n?n:r,r<0&&(r+=n),n=a>r?0:r-a>>>0,a>>>=0;for(var d=Array(n);++o<n;)d[o]=t[o+a];return d}function ua(t,a,r){var o=t.length;return r=r===void 0?o:r,!a&&r>=o?t:fa(t,a,r)}var pa="\\ud800-\\udfff",ma="\\u0300-\\u036f",ha="\\ufe20-\\ufe2f",ga="\\u20d0-\\u20ff",ya=ma+ha+ga,wa="\\ufe0e\\ufe0f",ka="\\u200d",Va=RegExp("["+ka+pa+ya+wa+"]");function Ca(t){return Va.test(t)}function _a(t){return t.split("")}var Ct="\\ud800-\\udfff",ba="\\u0300-\\u036f",Ea="\\ufe20-\\ufe2f",Ba="\\u20d0-\\u20ff",Na=ba+Ea+Ba,Ia="\\ufe0e\\ufe0f",Aa="["+Ct+"]",Te="["+Na+"]",Me="\\ud83c[\\udffb-\\udfff]",Da="(?:"+Te+"|"+Me+")",_t="[^"+Ct+"]",bt="(?:\\ud83c[\\udde6-\\uddff]){2}",Et="[\\ud800-\\udbff][\\udc00-\\udfff]",Sa="\\u200d",Bt=Da+"?",Nt="["+Ia+"]?",$a="(?:"+Sa+"(?:"+[_t,bt,Et].join("|")+")"+Nt+Bt+")*",Ta=Nt+Bt+$a,Ma="(?:"+[_t+Te+"?",Te,bt,Et,Aa].join("|")+")",xa=RegExp(Me+"(?="+Me+")|"+Ma+Ta,"g");function Fa(t){return t.match(xa)||[]}function It(t){return Ca(t)?Fa(t):_a(t)}function Ua(t,a){for(var r=t.length;r--&&Vt(a,t[r],0)>-1;);return r}function La(t,a){for(var r=-1,o=t.length;++r<o&&Vt(a,t[r],0)>-1;);return r}function za(t,a,r){if(t=da(t),t&&a===void 0)return ut(t);if(!t||!(a=$e(a)))return t;var o=It(t),n=It(a),d=La(o,n),s=Ua(o,n)+1;return ua(o,d,s).join("")}const le=new Map,xe={mounted(t){let a;if(t instanceof HTMLInputElement)a=setTimeout(()=>t==null?void 0:t.focus(),500),le.set(t,a);else{const r=t.querySelectorAll("input");r.length>0&&r.item(0)instanceof HTMLInputElement&&(a=setTimeout(()=>{var o;return(o=r==null?void 0:r.item(0))==null?void 0:o.focus()},500),le.set(t,a))}},onUnmounted(t){le.has(t)&&(clearTimeout(le.get(t)),le.delete(t))}},ja={class:"ja-custom-group-manager"},Ra=K(e.defineComponent({__name:"CustomGroupManager",props:{users:{default:()=>[]}},setup(t,{expose:a}){const r=e.ref(!1),o=D.createAxiosWithoutCache(),n=D.useCustomGroupApi(o),d=e.ref(),s={label:"name",children:"children",isLeaf:(k,_)=>!k.hasChildren,class:k=>{var _;return k.id===((_=l.value)==null?void 0:_.id)?"selected-group":"group"}},l=e.ref(),c=e.ref(!1),u=e.ref(),i=D.useLoading(o),f=t,p={};async function m(){const k=Z(await n.getAll()),_={id:"-1",name:"[顶级组]",children:k,dataVersion:0,hasChildren:k.length>0,label:"",parentId:void 0,sortIndex:0,sortPath:""};return d.value=[_],_}async function w(){l.value=await m()}function C(k){l.value=k}function y(){u.value=void 0,c.value=!0}async function h(){var k,_;await n.create({name:u.value,parentId:((k=l.value)==null?void 0:k.id)=="-1"||(_=l.value)==null?void 0:_.id}),c.value=!1,await m()}async function I(){l.value&&l.value.id!=="-1"&&(await g.ElMessageBox.confirm("确定要删除选中的自定义组?","确认删除"),await n.delete(l.value.id),await m(),l.value=void 0)}async function A(){var k;if(!l.value||l.value.id==="-1"){g.ElMessage.warning("请选择要保存到的自定义用户组");return}await n.setMembers({id:l.value.id,userIds:((k=f.users)==null?void 0:k.map(_=>_.id))??[]},p),r.value=!1}return a({show(){r.value=!0},close(){r.value=!1}}),(k,_)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(g.ElDialog),{modelValue:r.value,"onUpdate:modelValue":_[1]||(_[1]=S=>r.value=S),"destroy-on-close":"","append-to-body":"",draggable:"",title:"保存为自定义组",width:"360",onOpen:w},{footer:e.withCtx(()=>[e.createVNode(e.unref(W),{type:"primary",shortcut:"Alt+O",loading:e.unref(i),onClick:A},{default:e.withCtx(()=>_[6]||(_[6]=[e.createTextVNode("确定 ")])),_:1,__:[6]},8,["loading"]),e.createVNode(e.unref(g.ElButton),{onClick:_[0]||(_[0]=S=>r.value=!1)},{default:e.withCtx(()=>_[7]||(_[7]=[e.createTextVNode("取消")])),_:1,__:[7]})]),default:e.withCtx(()=>[e.createElementVNode("div",ja,[e.createVNode(e.unref(g.ElSpace),null,{default:e.withCtx(()=>[e.createVNode(e.unref(g.ElText),null,{default:e.withCtx(()=>_[5]||(_[5]=[e.createTextVNode("请创建或选择要保存为的自定义组:")])),_:1,__:[5]}),e.createVNode(e.unref(W),{circle:"",icon:e.unref(j.Plus),tooltip:"添加自定义组",shortcut:"Alt+G",size:"small",onClick:y,loading:e.unref(i)},null,8,["icon","loading"]),e.createVNode(e.unref(W),{circle:"",icon:e.unref(j.Minus),tooltip:"删除自定义组",shortcut:"Alt+D",size:"small",onClick:I,loading:e.unref(i)},null,8,["icon","loading"])]),_:1}),e.createVNode(e.unref(g.ElScrollbar),{height:"360px"},{default:e.withCtx(()=>{var S;return[e.createVNode(e.unref(g.ElTree),{data:d.value,"node-key":"id",props:s,"default-expand-all":"","expand-on-click-node":!1,onCurrentChange:C,"current-node-key":((S=l.value)==null?void 0:S.id)??-1},null,8,["data","current-node-key"])]}),_:1})])]),_:1},8,["modelValue"]),e.createVNode(e.unref(g.ElDialog),{modelValue:c.value,"onUpdate:modelValue":_[4]||(_[4]=S=>c.value=S),"destroy-on-close":"","append-to-body":"",title:"添加自定义组",width:"360px"},{footer:e.withCtx(()=>[e.createVNode(e.unref(W),{type:"primary",shortcut:"Alt+P",onClick:h,loading:e.unref(i),size:"default"},{default:e.withCtx(()=>_[8]||(_[8]=[e.createTextVNode(" 确定 ")])),_:1,__:[8]},8,["loading"]),e.createVNode(e.unref(g.ElButton),{onClick:_[3]||(_[3]=S=>c.value=!1),size:"default"},{default:e.withCtx(()=>_[9]||(_[9]=[e.createTextVNode("取消")])),_:1,__:[9]})]),default:e.withCtx(()=>[e.createVNode(e.unref(g.ElForm),{"label-position":"top"},{default:e.withCtx(()=>[e.createVNode(e.unref(g.ElFormItem),{label:"自定义组名",required:""},{default:e.withCtx(()=>[e.withDirectives(e.createVNode(e.unref(g.ElInput),{modelValue:u.value,"onUpdate:modelValue":_[2]||(_[2]=S=>u.value=S),style:{width:"100%"}},null,8,["modelValue"]),[[e.unref(xe)]])]),_:1})]),_:1})]),_:1},8,["modelValue"])],64))}}),[["__scopeId","data-v-8ef9bcd8"]]),Ja={class:"ja-user-list"},Pa=["onMouseenter","onMousedown","onMouseover"],Oa={key:0,class:"page-indicator"},Ga={class:"nb-spinner"},qa=1,At=K(e.defineComponent({__name:"JaUserList",props:e.mergeModels({emptyText:{},multiple:{type:Boolean},total:{},pageSize:{},height:{},loading:{type:Boolean},users:{}},{modelValue:{required:!0},modelModifiers:{},page:{required:!0},pageModifiers:{}}),emits:e.mergeModels(["arrowKeyDown","itemClicked"],["update:modelValue","update:page"]),setup(t,{expose:a,emit:r}){const o=t,n=e.ref(0),d=e.ref(),s=e.ref(!1),l=e.useModel(t,"modelValue"),c=e.useModel(t,"page"),u=r,f=ne(()=>{var U;const V=(U=d.value)==null?void 0:U.wrapRef;V&&V.scrollHeight-V.scrollTop<=V.clientHeight+qa&&c.value<o.total/o.pageSize&&c.value++},200);function p(V){if(o.multiple){if(!Array.isArray(l.value))throw new Error("UserPicker组件设置为多选模式(multiple)时,v-model必须绑定UserReference数组");const U=l.value.findIndex(T=>T.id==V.id);U<0?l.value.push(V):l.value.splice(U,1)}else{if(Array.isArray(l.value))throw new Error("UserPicker组件设置为单选模式时,v-model必须绑定UserReference对象或null");l.value!==null&&V.id===l.value.id?l.value=null:l.value=V}}let m;function w(V){p(V),s.value=!0,m=V}function C(){s.value=!1,u("itemClicked",m),m=void 0}function y(V){console.log("点击"),s.value&&p(V)}function h(){n.value<o.users.length-1&&n.value++,A()}function I(){n.value>0&&n.value--,A()}const A=()=>{e.nextTick(()=>{var T,G,P;const V=(T=d.value)==null?void 0:T.$refs.wrapRef,U=V==null?void 0:V.querySelectorAll("li")[n.value];if(U&&V){const B=U.offsetTop,x=U.offsetTop+U.offsetHeight,z=V.scrollTop,N=V.scrollTop+V.clientHeight;x>N?(G=d.value)==null||G.scrollTo(0,x-V.clientHeight+U.offsetHeight-38):B<z&&((P=d.value)==null||P.scrollTo(0,B))}})},k=ne(h,100),_=ne(I,100);function S(V,U){var T;if(n.value=U,s.value=V.buttons>0,s.value){const G=(T=d.value)==null?void 0:T.$refs.wrapRef,P=V.target;if(P&&G){const B=P.offsetTop,x=P.offsetTop+P.offsetHeight,z=G.scrollTop,N=G.scrollTop+G.clientHeight;x+20>N?k():B<z+20&&_()}}}function R(V){var U;if(o.multiple){if(!Array.isArray(l.value))throw new Error("UserPicker组件设置为多选模式(multiple)时,v-model必须绑定UserReference数组");return l.value.some(T=>T.id===V.id)}else{if(Array.isArray(l.value))throw new Error("UserPicker组件设置为单选模式时,v-model必须绑定UserReference对象");return((U=l.value)==null?void 0:U.id)===V.id}}const O=V=>{var U;return Array.isArray(J.value)?J.value.some(T=>T.id===V.id)?"autumnOrange":"skyGray":((U=J.value)==null?void 0:U.id)===V.id?"autumnOrange":"skyGray"},J=e.computed(()=>{const V=Array.isArray(l.value);if(o.multiple&&V)return l.value;if(!o.multiple&&!V)return l.value?[l.value]:[];if(!o.multiple&&V)return l.value;throw new Error("UserPicker组件设置为多选模式(multiple)时,v-model必须绑定UserReference数组")});function Q(V){return V===n.value?"active":""}const Y=e.computed(()=>o.loading&&o.users.length==0);return a({scrollUp(){I()},scrollDown(){h()},activeIndex:n}),e.watch(()=>o.users,()=>{n.value=0},{deep:!1}),e.onUnmounted(()=>{k.cancel(),_.cancel(),f.cancel()}),(V,U)=>(e.openBlock(),e.createElementBlock("div",Ja,[e.withDirectives((e.openBlock(),e.createBlock(e.unref(g.ElScrollbar),{height:V.height,ref_key:"scrollbar",ref:d,always:"",onScroll:e.unref(f)},{default:e.withCtx(()=>[V.users.length>0?(e.openBlock(),e.createElementBlock("ul",{key:0,onMouseup:C},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.users,(T,G)=>(e.openBlock(),e.createElementBlock("li",{key:T.id,class:e.normalizeClass(Q(G)),onMouseenter:P=>s.value&&y(T),onMousedown:P=>w(T),onMouseover:P=>S(P,G)},[e.createVNode(e.unref(g.ElIcon),{color:"#0D6A9F"},{default:e.withCtx(()=>[R(T)?(e.openBlock(),e.createBlock(e.unref(j.Check),{key:0})):e.createCommentVNode("",!0)]),_:2},1024),e.createVNode(e.unref(ae),{"user-id":T.id,"full-name":T.fullName,"has-avatar":T.hasAvatar,placement:"left-start",theme:O(T)},null,8,["user-id","full-name","has-avatar","theme"])],42,Pa))),128))],32)):(e.openBlock(),e.createBlock(e.unref(g.ElEmpty),{key:1,description:V.emptyText},null,8,["description"]))]),_:1},8,["height","onScroll"])),[[e.unref(g.vLoading),Y.value]]),V.users.length>0?(e.openBlock(),e.createElementBlock("div",Oa,[e.withDirectives(e.createElementVNode("div",Ga,null,512),[[e.vShow,V.loading]]),e.createTextVNode(" 已加载 "+e.toDisplayString(c.value)+" /"+e.toDisplayString(Math.ceil(V.total/V.pageSize))+"页 ",1)])):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-9ce99611"]]),Wa={class:"ja-user-picker__root"},Ha={style:{display:"flex","align-items":"center"}},Ka={class:"ja-user-picker-bookmark__dropdown"},Qa={style:{width:"100%",display:"flex","align-content":"center","justify-content":"end","margin-bottom":"4px"}},Ya={style:{color:"var(--el-color-info-light-5)"}},Xa={class:"dropdown-header"},Za={key:0,class:"ja-user-picker__tag-container"},va={key:0,class:"more-tag"},er={key:1},ie=0,Dt=K(e.defineComponent({__name:"UserPicker",props:e.mergeModels({trigger:{default:"hover"},realmId:{},shortcut:{default:"Ctrl+Alt+U"},multiple:{type:Boolean,default:!1},classificationLevel:{default:0},customFilter:{},maxShowCount:{default:20},height:{},maxHeight:{default:"100%"},showUserTag:{type:Boolean,default:!0}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const a=t,r=e.ref(),o=e.ref();async function n(){if(a.realmId)r.value=a.realmId;else{const N=await pe().getDefaultRealm();r.value=N.id}}n(),e.watch(()=>a.realmId,n);const d=D.createAxiosWithoutCache(),s=D.useUserApi(d),l=e.shallowRef([]),c=e.useModel(t,"modelValue"),u=e.ref(),i=e.ref(!1),{queryResult:f,queryParams:p,pageParams:m,loading:w}=Be(()=>p.value.name!=null&&p.value.name.length>ie,a.customFilter,(N,F)=>{var E,$;N?(l.value=f.value.users,F&&(($=(E=y.value)==null?void 0:E.elScrollbar)==null||$.scrollTo(0,0))):_()},!0,d,!1),C=e.ref(),y=e.ref(),h=e.ref(),I=e.ref(),A=e.ref();function k(N){if(a.multiple){if(!Array.isArray(c.value))throw new Error("UserPicker组件设置为多选模式(multiple)时,v-model必须绑定UserReference数组");const F=c.value.findIndex(E=>E.id==N.id);F<0?c.value.push(N):c.value.splice(F,1)}else{if(Array.isArray(c.value))throw new Error("UserPicker组件设置为单选模式时,v-model必须绑定UserReference对象或者null");c.value!==null&&N.id===c.value.id?c.value=null:c.value=N}}function _(){a.realmId&&(p.value.realmId=a.realmId),p.value.name&&p.value.name.length>ie&&(p.value.name=void 0);const N=D.useUserQueryBuilder();if(a.customFilter){const F=N.getQEntity();N.and(a.customFilter(F))}s.getBookmarkedUsers(N.build()).then(F=>{l.value=F}),setTimeout(()=>{var F;(F=u.value)==null||F.focus()},300)}function S(){var N;i.value=!1,(N=C.value)==null||N.$el.focus()}function R(){var N;(N=I.value)==null||N.show()}function O(N){if(Array.isArray(c.value)){const F=c.value.findIndex(E=>E.id==N);F>=0&&c.value.splice(F,1)}else c.value=null}function J(){var N;A.value.scrollDown(),(N=u.value)==null||N.focus()}function Q(){var N;A.value.scrollUp(),(N=u.value)==null||N.focus()}function Y(){var N;k(l.value[(N=A.value)==null?void 0:N.activeIndex])}function V(){i.value=!0}function U(){const N=c.value;N.push(...l.value.filter(F=>!N.some(E=>E.id===F.id)))}function T(){a.multiple?c.value=[]:c.value=null}function G(){var N;(N=u.value)==null||N.focus()}const P=e.computed(()=>{if(a.multiple&&Array.isArray(c.value))return c.value;if(!a.multiple&&!Array.isArray(c.value))return c.value?[c.value]:[];throw new Error("UserPicker组件设置为多选模式(multiple)时,v-model必须绑定UserReference数组")});function B(){var N;(N=h.value)==null||N.show(),i.value=!1}function x(){i.value=!0}const z=e.computed(()=>P.value.slice(0,a.maxShowCount));return e.watch(()=>a.classificationLevel,()=>{p.value.classificationLevel=a.classificationLevel}),(N,F)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(Se),e.mergeProps({"max-height":a.maxHeight,height:a.height},N.$attrs,{style:{"overflow-x":"hidden"}}),{default:e.withCtx(()=>[e.withDirectives((e.openBlock(),e.createElementBlock("div",Wa,[e.createVNode(e.unref(g.ElPopover),{ref_key:"bookmarkDropdown",ref:o,onShow:_,onHide:S,visible:i.value,"onUpdate:visible":F[3]||(F[3]=E=>i.value=E),width:"auto",teleported:"",trigger:a.trigger},{reference:e.withCtx(()=>[e.createElementVNode("div",Ha,[N.$slots.default?e.renderSlot(N.$slots,"default",{key:0},void 0,!0):(e.openBlock(),e.createBlock(e.unref(g.ElButton),{key:1,circle:"",icon:e.unref(j.Plus),size:"small",ref_key:"btn",ref:C,onMouseover:x},null,8,["icon"]))])]),default:e.withCtx(()=>[e.createElementVNode("div",Ka,[e.createElementVNode("div",Qa,[e.createVNode(e.unref(g.ElSpace),{style:{flex:"auto"}},{default:e.withCtx(()=>[e.createVNode(e.unref(W),{circle:"",size:"small",onClick:B,plain:"",type:"primary",tooltip:"对话框筛选(大批量选择)",shortcut:"Ctrl+Alt+I",icon:e.unref(j.Notebook)},null,8,["icon"]),e.createVNode(e.unref(W),{circle:"",size:"small",onClick:T,type:"danger",plain:"",icon:e.unref(j.Delete),tooltip:"清空选择",shortcut:"Alt+C"},null,8,["icon"]),a.multiple?(e.openBlock(),e.createBlock(e.unref(W),{key:0,circle:"",size:"small",onClick:U,type:"success",plain:"",icon:e.unref(j.Finished),tooltip:"全选(已加载的数据)",shortcut:"Ctrl+A"},null,8,["icon"])):e.createCommentVNode("",!0),e.createVNode(e.unref(W),{circle:"",size:"small",onClick:R,type:"warning",icon:e.unref(j.Setting),plain:"",tooltip:"将已选中用户保存为自定义组,方便以后选择使用"},null,8,["icon"])]),_:1}),e.createElementVNode("div",Ya," 弹出快捷键:"+e.toDisplayString(a.shortcut),1)]),e.createVNode(e.unref(g.ElInput),{modelValue:e.unref(p).name,"onUpdate:modelValue":F[0]||(F[0]=E=>e.unref(p).name=E),ref_key:"inputSearchText",ref:u,"suffix-icon":e.unref(j.Search),placeholder:"请输入拼音名、姓名或手机号查询",autocomplete:"off",onKeydown:[e.withKeys(Y,["enter"]),e.withKeys(e.withModifiers(Q,["stop","prevent"]),["up"]),e.withKeys(e.withModifiers(J,["stop","prevent"]),["down"])]},null,8,["modelValue","suffix-icon","onKeydown"]),e.createElementVNode("div",Xa,[e.createVNode(e.unref(g.ElText),null,{default:e.withCtx(()=>[e.unref(p).name&&e.unref(p).name.length>ie?(e.openBlock(),e.createBlock(e.unref(g.ElIcon),{key:0},{default:e.withCtx(()=>[e.createVNode(e.unref(j.Search))]),_:1})):(e.openBlock(),e.createBlock(e.unref(g.ElIcon),{key:1,color:"#FFBF29"},{default:e.withCtx(()=>[e.createVNode(e.unref(j.StarFilled))]),_:1})),e.createTextVNode(" "+e.toDisplayString(e.unref(p).name&&e.unref(p).name.length>ie?"查询结果":"常用人员"),1)]),_:1})]),e.createVNode(At,{ref_key:"userList",ref:A,total:e.unref(f).total,"empty-text":e.unref(p).name&&e.unref(p).name.length>ie?void 0:"无可选常用人员","page-size":e.unref(m).pageSize,loading:e.unref(w),users:l.value,height:300,modelValue:c.value,"onUpdate:modelValue":F[1]||(F[1]=E=>c.value=E),page:e.unref(m).currentPage,"onUpdate:page":F[2]||(F[2]=E=>e.unref(m).currentPage=E),multiple:a.multiple,onItemClicked:G,onArrowKeyDown:G},null,8,["total","empty-text","page-size","loading","users","modelValue","page","multiple"])])]),_:3},8,["visible","trigger"]),a.showUserTag?(e.openBlock(),e.createElementBlock("div",Za,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(z.value,E=>(e.openBlock(),e.createBlock(e.unref(ae),{key:E.id,"user-id":E.id,"full-name":E.fullName,closable:"","has-avatar":E.hasAvatar,onClosed:O},null,8,["user-id","full-name","has-avatar"]))),128)),P.value.length>a.maxShowCount?(e.openBlock(),e.createElementBlock("div",va," +"+e.toDisplayString(P.value.length-a.maxShowCount)+"人 ",1)):e.createCommentVNode("",!0),P.value.length===0?(e.openBlock(),e.createElementBlock("div",er,[e.createVNode(e.unref(g.ElText),{type:"info"},{default:e.withCtx(()=>F[5]||(F[5]=[e.createTextVNode(" <暂无选中人员>")])),_:1,__:[5]})])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createVNode(e.unref(De),{ref_key:"dialogUserSelector",ref:h,multiple:a.multiple,"realm-id":r.value,classificationLevel:a.classificationLevel,customFilter:a.customFilter,modelValue:c.value,"onUpdate:modelValue":F[4]||(F[4]=E=>c.value=E)},null,8,["multiple","realm-id","classificationLevel","customFilter","modelValue"])])),[[e.unref(ce),V,a.shortcut]])]),_:3},16,["max-height","height"]),e.createVNode(Ra,{ref_key:"dlgCustomGroupManager",ref:I,users:Array.isArray(c.value)?c.value:c.value?[c.value]:null},null,8,["users"])],64))}}),[["__scopeId","data-v-bd45be54"]]),tr=e.defineComponent({__name:"JaUserPicker",emits:["change"],setup(t,{emit:a}){const r=e.inject("aceFormModel"),o=e.inject("aceFormItemProp"),n=e.inject("aceFormValidator"),d=a;function s(c){n.removeFieldError(o),q(r.formData,o,l.value),d("change",c)}const l=e.ref(L(r.formData,o)??[]);return e.watch(()=>r.formData,()=>{l.value=L(r.formData,o)??[]},{deep:!0}),(c,u)=>(e.openBlock(),e.createBlock(Dt,e.mergeProps({modelValue:l.value,"onUpdate:modelValue":u[0]||(u[0]=i=>l.value=i),onChange:s},c.$attrs),{default:e.withCtx(()=>[e.renderSlot(c.$slots,"default")]),_:3},16,["modelValue"]))}}),St=M(Dt),$t=M(tr),Tt=M(At),Mt=M(e.defineComponent({__name:"JaTimePicker",emits:["change"],setup(t,{expose:a,emit:r}){const o=e.ref({}),n=e.inject("aceFormModel"),d=e.inject("aceFormItemProp"),s=e.inject("aceFormValidator"),l=r,c=e.ref({});function u(f){s.removeFieldError(d),q(n.formData,d,i.value),l("change",f)}const i=e.ref(L(n.formData,d));return e.watch(()=>n.formData,()=>{i.value=L(n.formData,d)},{deep:!0}),e.onMounted(()=>{Object.entries(o.value).filter(([p,m])=>m instanceof Function).forEach(([p,m])=>{c.value[p]=m})}),a(c.value),(f,p)=>(e.openBlock(),e.createBlock(e.unref(g.ElTimePicker),e.mergeProps({ref_key:"input",ref:o,modelValue:e.unref(n).formData[e.unref(d)],"onUpdate:modelValue":p[0]||(p[0]=m=>e.unref(n).formData[e.unref(d)]=m),onChange:u},f.$attrs),e.createSlots({_:2},[e.renderList(f.$slots,(m,w)=>({name:w,fn:e.withCtx(()=>[e.renderSlot(f.$slots,w)])}))]),1040,["modelValue"]))}})),xt=M(e.defineComponent({__name:"UserGroupPicker",props:e.mergeModels({realmId:{},appId:{},modelValue:{},size:{default:"default"},multiple:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["change"],["update:modelValue"]),setup(t,{emit:a}){const r=D.createAxiosWithoutCache(),o=D.useUserGroupApi(r),n=t,d=e.useModel(t,"modelValue"),s=a;if(n.multiple&&!Array.isArray(d.value))throw new Error("用户组选择器设置multiple为true,但是绑定的v-model值是单值");if(!n.multiple&&Array.isArray(d.value))throw new Error("用户组选择器未设置multiple为true,但是绑定的v-model值是数组");const l=e.reactive({groups:[]}),c=()=>{!n.realmId||!n.appId||o.getByAppIdAndRealm(n.appId,n.realmId??"0").then(i=>{l.groups=[...Z(i,"name")],!d.value&&!n.multiple&&(d.value=l.groups[0].id)})},u=i=>{s("change",Array.isArray(i)?l.groups.filter(f=>i.findIndex(p=>f.id===p)>=0):l.groups.find(f=>f.id===i))};return c(),e.watch(()=>n.realmId,()=>{c()}),e.watch(()=>n.appId,c),(i,f)=>(e.openBlock(),e.createBlock(e.unref(g.ElTreeSelect),e.mergeProps({style:{width:"100%"},data:l.groups,size:n.size,"node-key":"id","check-strictly":"","current-node-key":d.value,"highlight-current":"",modelValue:d.value,"onUpdate:modelValue":f[0]||(f[0]=p=>d.value=p),multiple:i.multiple,onChange:u},i.$attrs,{"collapse-tags":"","collapse-tags-tooltip":"","tag-type":"info",teleported:""}),null,16,["data","size","current-node-key","modelValue","multiple"]))}})),Ft=M(e.defineComponent({__name:"JaAutoComplete",emits:["change"],setup(t,{expose:a,emit:r}){const o=e.ref(),n=e.inject("aceFormModel"),d=e.inject("aceFormItemProp"),s=e.inject("aceFormValidator"),l=r;function c(i){s.removeFieldError(d),q(n.formData,d,u.value),l("change",i)}const u=e.ref(L(n.formData,d));return e.watch(()=>n.formData,()=>{u.value=L(n.formData,d)},{deep:!0}),a({elAutocomplete:o}),(i,f)=>(e.openBlock(),e.createBlock(e.unref(g.ElAutocomplete),e.mergeProps({ref_key:"input",ref:o,modelValue:u.value,"onUpdate:modelValue":f[0]||(f[0]=p=>u.value=p),onChange:c},i.$attrs),e.createSlots({_:2},[e.renderList(i.$slots,(p,m)=>({name:m,fn:e.withCtx(()=>[e.renderSlot(i.$slots,m)])}))]),1040,["modelValue"]))}})),Ut=M(e.defineComponent({__name:"JaRadioGroup",emits:["change"],setup(t,{expose:a,emit:r}){const o=e.ref({}),n=e.inject("aceFormModel"),d=e.inject("aceFormItemProp"),s=e.inject("aceFormValidator"),l=r;function c(i){s.removeFieldError(d),q(n.formData,d,u.value),l("change",i)}const u=e.ref(L(n.formData,d));return e.watch(()=>n.formData,()=>{u.value=L(n.formData,d)},{deep:!0}),a({focus:()=>o.value.focus(),blur:()=>o.value.blur(),elRadioGroup:o}),(i,f)=>(e.openBlock(),e.createBlock(e.unref(g.ElRadioGroup),e.mergeProps({ref_key:"input",ref:o,modelValue:u.value,"onUpdate:modelValue":f[0]||(f[0]=p=>u.value=p),onChange:c},i.$attrs),e.createSlots({_:2},[e.renderList(i.$slots,(p,m)=>({name:m,fn:e.withCtx(()=>[e.renderSlot(i.$slots,m)])}))]),1040,["modelValue"]))}})),or=e.defineComponent({__name:"baseRolePicker",props:e.mergeModels({appName:{}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["change"],["update:modelValue"]),setup(t,{expose:a,emit:r}){const o=D.createAxiosWithoutCache(),n=D.useRoleApi(o),d=D.useAppApi(o),s=t,l=e.ref(),c=e.ref([]),u=async()=>{s.appName&&(l.value=await d.getByName(s.appName),c.value=await n.getAllRole(l.value.id),console.log(c.value),i.value?p.value=y(i.value,c.value):p.value=void 0)},i=e.useModel(t,"modelValue"),f=r,p=e.ref();e.watch(()=>s.appName,u),u();const m={label:h=>h.caption?h.caption:h.name,isLeaf:h=>!h.hasChildren},w=e.ref();function C(h){p.value=y(h,c.value),f("change",h)}function y(h,I){for(let A=0;A<I.length;A++){if(I[A].name===h)return I[A];const k=I[A].children;if(k){const _=y(h,k);if(_)return _}}}return a({loadData:u,currentRole:p,elTreeSelect:w}),(h,I)=>(e.openBlock(),e.createBlock(e.unref(g.ElTreeSelect),e.mergeProps({ref_key:"select",ref:w,data:c.value,"node-key":"name","current-node-key":i.value,"value-key":"name",props:m},h.$attrs,{clearable:"","check-strictly":"","highlight-current":!0,onChange:C,modelValue:i.value,"onUpdate:modelValue":I[0]||(I[0]=A=>i.value=A)}),e.createSlots({_:2},[e.renderList(h.$slots,(A,k)=>({name:k,fn:e.withCtx(()=>[e.renderSlot(h.$slots,k)])}))]),1040,["data","current-node-key","modelValue"]))}});let te=[];async function me(){const t=D.createAxiosWithoutCache(),a=D.useAppApi(t);return te.length===0&&(te=await a.getAll(!0)),{async getById(r){let o=te.find(n=>n.id===r);return o||(o=await a.getById(r),o&&te.push(o)),o},async getByName(r){let o=te.find(n=>n.name===r);return o||(o=await a.getByName(r),o&&te.push(o)),o}}}const ar=e.defineComponent({__name:"RoleEditor",props:e.mergeModels({appName:{}},{modelValue:{type:Boolean,default:!1},modelModifiers:{}}),emits:e.mergeModels(["success"],["update:modelValue"]),setup(t,{emit:a}){const r=e.useModel(t,"modelValue"),o=t,n=a,d={hasChildren:!1,parentId:"0",releaseSource:"",app:{id:"0"},caption:"",compositeRoles:[],dataVersion:0,description:"",id:"0",name:""},s=e.ref({formData:{...d}}),l=D.createAxiosWithoutCache(),c=Le(Object.keys(d),l),u=D.useLoading(l),i=D.useRoleApi(l),f=e.ref(),p=e.ref(),m=e.ref();async function w(){if(s.value.formData={...d},!o.appName)throw new Error("rolePicker组件的appName属性不能为空");m.value=await(await me()).getByName(o.appName)}async function C(){var I,A;if(!o.appName)return;const y=s.value.formData,h=(I=p.value)==null?void 0:I.currentRole;(A=f.value)==null||A.validate(()=>i.create({addTo:h?{id:h.id,name:h.name,app:{id:m.value.id}}:void 0,app:{id:m.value.id},description:y.description,name:y.name,caption:y.caption}).then(k=>{n("success",k),r.value=!1}))}return(y,h)=>{const I=e.resolveComponent("ja-input-i18n-raw"),A=e.resolveComponent("ja-form");return e.openBlock(),e.createBlock(e.unref(g.ElDrawer),{"destroy-on-close":"","append-to-body":"",title:"新建角色",modelValue:r.value,"onUpdate:modelValue":h[2]||(h[2]=k=>r.value=k),onOpen:w},{footer:e.withCtx(()=>[e.createVNode(e.unref(W),{size:"default",type:"primary",onClick:C,loading:e.unref(u),shortcut:"Alt+Enter"},{default:e.withCtx(()=>h[3]||(h[3]=[e.createTextVNode("确定 ")])),_:1,__:[3]},8,["loading"]),e.createVNode(e.unref(g.ElButton),{size:"default",onClick:h[1]||(h[1]=k=>r.value=!1)},{default:e.withCtx(()=>h[4]||(h[4]=[e.createTextVNode("取消")])),_:1,__:[4]})]),default:e.withCtx(()=>[e.createVNode(A,{ref_key:"formRef",ref:f,model:s.value,validator:e.unref(c)},{default:e.withCtx(()=>[e.createVNode(e.unref(v),{label:"角色名称",prop:"name",required:""},{default:e.withCtx(()=>[e.withDirectives(e.createVNode(e.unref(se),null,null,512),[[e.unref(xe)]])]),_:1}),e.createVNode(e.unref(v),{label:"上级角色",prop:"none"},{default:e.withCtx(()=>[e.createVNode(e.unref(he),{ref_key:"rolePicker",ref:p,placeholder:"请选择上级角色,置空表示添加顶层角色","app-name":o.appName},null,8,["app-name"])]),_:1}),e.createVNode(e.unref(v),{label:"角色标题",prop:"caption",required:""},{default:e.withCtx(()=>{var k;return[e.createVNode(I,{"app-id":(k=m.value)==null?void 0:k.id,size:"small",modelValue:s.value.formData.caption,"onUpdate:modelValue":h[0]||(h[0]=_=>s.value.formData.caption=_)},null,8,["app-id","modelValue"])]}),_:1}),e.createVNode(e.unref(v),{label:"角色说明",prop:"description"},{default:e.withCtx(()=>[e.createVNode(e.unref(se),{type:"textarea"})]),_:1})]),_:1},8,["model","validator"])]),_:1},8,["modelValue"])}}}),rr={class:"ja-role-picker"},Lt=K(e.defineComponent({__name:"RolePickerRaw",props:e.mergeModels({appName:{}},{modelValue:{required:!1},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const a=t,r=e.useModel(t,"modelValue");function o(l){var c;r.value=l.name,(c=n.value)==null||c.loadData()}const n=e.ref(),d=e.ref(!1);function s(){d.value=!0}return(l,c)=>(e.openBlock(),e.createElementBlock("div",rr,[e.createVNode(e.unref(he),e.mergeProps({ref_key:"picker",ref:n,"app-name":a.appName,style:{flex:"auto"}},l.$attrs,{modelValue:r.value,"onUpdate:modelValue":c[1]||(c[1]=u=>r.value=u)}),e.createSlots({footer:e.withCtx(()=>[e.createVNode(e.unref(W),{link:"",type:"primary",icon:e.unref(j.Plus),shortcut:"Alt+I",style:{width:"100%"},onClick:s},{default:e.withCtx(()=>c[2]||(c[2]=[e.createTextVNode(" 新建角色(Alt+I) ")])),_:1,__:[2]},8,["icon"]),e.createVNode(ar,{modelValue:d.value,"onUpdate:modelValue":c[0]||(c[0]=u=>d.value=u),"app-name":a.appName,onSuccess:o},null,8,["modelValue","app-name"])]),_:2},[e.renderList(l.$slots,(u,i)=>({name:i,fn:e.withCtx(()=>[e.renderSlot(l.$slots,i,{},void 0,!0)])}))]),1040,["app-name","modelValue"])]))}}),[["__scopeId","data-v-36b2392a"]]),nr=e.defineComponent({__name:"RolePicker",props:{appName:{}},emits:["change"],setup(t,{emit:a}){const r=t,o=e.ref(),n=e.inject("aceFormModel"),d=e.inject("aceFormItemProp"),s=e.inject("aceFormValidator"),l=a;function c(i){s.removeFieldError(d),q(n.formData,d,u.value),l("change",i)}const u=e.ref(L(n.formData,d));return e.watch(()=>n.formData,()=>{u.value=L(n.formData,d)},{deep:!0}),(i,f)=>(e.openBlock(),e.createBlock(Lt,e.mergeProps({ref_key:"picker",ref:o,"app-name":r.appName,modelValue:u.value,"onUpdate:modelValue":f[0]||(f[0]=p=>u.value=p),onChange:c},i.$attrs),e.createSlots({_:2},[e.renderList(i.$slots,(p,m)=>({name:m,fn:e.withCtx(()=>[e.renderSlot(i.$slots,m)])}))]),1040,["app-name","modelValue"]))}}),he=M(or),zt=M(nr),jt=M(Lt),Rt=e.defineComponent({__name:"ChannelPicker",props:e.mergeModels({appName:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const a=D.createAxiosWithoutCache(),r=D.useChannelApi(a),o=t,n=e.ref(),d=e.ref(),s=e.useModel(t,"modelValue");e.onBeforeMount(()=>{l()});async function l(){console.log("load channels of app "+o.appName),o.appName&&(n.value=await r.getAll(o.appName),d.value=n.value)}function c(u){var i;d.value=((i=n.value)==null?void 0:i.filter(f=>f.name.indexOf(u)>-1))??[]}return e.watch(()=>o.appName,l),(u,i)=>(e.openBlock(),e.createBlock(e.unref(g.ElSelect),e.mergeProps({filterable:"","filter-method":c,"value-key":"id",modelValue:s.value,"onUpdate:modelValue":i[0]||(i[0]=f=>s.value=f)},u.$attrs),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,f=>(e.openBlock(),e.createBlock(e.unref(g.ElOption),{key:f.id,label:f.name,value:f},null,8,["label","value"]))),128))]),_:1},16,["modelValue"]))}}),Jt=M(e.defineComponent({__name:"JaChannelPicker",emits:["change"],setup(t,{emit:a}){const r=e.inject("aceFormModel"),o=e.inject("aceFormItemProp"),n=e.inject("aceFormValidator"),d=a;function s(c){n.removeFieldError(o),q(r.formData,o,l.value),d("change",c)}const l=e.ref(L(r.formData,o));return e.watch(()=>r.formData,()=>{l.value=L(r.formData,o)},{deep:!0}),(c,u)=>(e.openBlock(),e.createBlock(Rt,e.mergeProps({modelValue:l.value,"onUpdate:modelValue":u[0]||(u[0]=i=>l.value=i),onChange:s},c.$attrs),null,16,["modelValue"]))}})),Pt=M(Rt),lr={class:"ja-property-picker__dropdown"},ir={key:0},sr=["onMouseenter","onClick"],cr={key:0,class:"entity-type"},dr={key:1},Ot=K(e.defineComponent({__name:"PropertyPicker",props:e.mergeModels({entityId:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const a=t;let r;const o=e.useModel(t,"modelValue"),n=e.ref([]),d=D.createAxiosWithoutCache(),s=D.useEntityApi(d),l=e.ref(),c={},u=e.ref(0),i=D.useLoading(d),f=e.ref(!1),p=e.ref(!1),m=e.ref(),w=e.ref(),C=e.ref("");let y=e.ref(!1);async function h(){if(r||(r=a.entityId),r){let B=c[r];B||(B=await s.getProperties(r),c[r]=B),l.value=B}else l.value=[]}function I(B){let x;B?x=B.join("."):x="",x!==o.value&&(o.value=x),e.nextTick(async()=>{var N;r=a.entityId,await h();let z=c[r];if(z){for(let F=0;F<B.length;F++){const E=B[F];let $=z.find(H=>H.name===E);$&&$.entityType?(r=$.entityType.id,F<B.length-1?(await h(),z=c[r]):$.dataType==="ENTITY"&&$.collectionType==="NONE"?(r=$.entityType.id,h()):(r="-1",h())):(r="-1",h())}(N=m.value)==null||N.focus()}})}function A(B){return B.caption&&B.caption.length>0?B.name+"("+B.caption+")":B.name}function k(B){u.value=B}function _(B){return u.value===B?"active":""}function S(B){var x,z;(x=n.value)==null||x.push(B.name),C.value="",(z=m.value)==null||z.focus()}function R(B){var x;(x=n.value)==null||x.pop()}function O(){var z;if(!r)return;const B=c[r];if(!B)return;const x=(z=m.value)==null?void 0:z.value;x&&x.length>0?l.value=[...B].filter(N=>N.name.toLowerCase().indexOf(x.toLowerCase())>-1):l.value=B,G()}function J(){l.value&&(u.value<l.value.length-1&&u.value++,G())}function Q(){u.value>0&&u.value--,G()}function Y(){if(!l.value)return;const B=l.value[u.value];B&&S(B)}function V(){var B;C.value&&C.value.length>0||(B=n.value)==null||B.pop()}function U(B){B&&e.nextTick(()=>{var x;(x=m.value)==null||x.focus()}),y.value=B}const T=e.computed(()=>{var B;return n.value&&n.value.length>0?(B=n.value)==null?void 0:B.join("."):"请选择属性"}),G=()=>{e.nextTick(()=>{var z,N,F;const B=(z=w.value)==null?void 0:z.$refs.wrapRef,x=B==null?void 0:B.querySelectorAll("li")[u.value];if(x&&B){const E=x.offsetTop,$=x.offsetTop+x.offsetHeight,H=B.scrollTop,Yt=B.scrollTop+B.clientHeight;$>Yt?(N=w.value)==null||N.scrollTo(0,$-B.clientHeight+x.offsetHeight-38):E<H&&((F=w.value)==null||F.scrollTo(0,E))}})};e.watch(()=>a.entityId,h),e.watch(n,()=>I(n.value),{deep:!0});function P(){if(o.value&&o.value.length>0){const B=o.value.split(".");B.length!==n.value.length&&(n.value=B)}else n.value.length>0&&(n.value=[])}return e.watch(o,()=>{P()}),o.value&&o.value.length>0?P():h(),e.watch(l,()=>{u.value=0,G()}),(B,x)=>(e.openBlock(),e.createBlock(e.unref(g.ElDropdown),{onVisibleChange:U},{dropdown:e.withCtx(()=>[e.createElementVNode("div",lr,[e.createElementVNode("div",{class:e.normalizeClass(["el-input-tag el-input-tag--small el-input-tag__wrapper",{"is-hovering":f.value,"is-focused":p.value}]),onMouseenter:x[3]||(x[3]=z=>f.value=!0),onMouseleave:x[4]||(x[4]=z=>f.value=!1)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,z=>(e.openBlock(),e.createBlock(e.unref(g.ElTag),{id:z,onClose:N=>R(),closable:""},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(z),1)]),_:2},1032,["id","onClose"]))),256)),e.withDirectives(e.createElementVNode("input",{ref_key:"filterInput",ref:m,type:"text",style:{flex:"auto"},class:"el-input-tag__input","onUpdate:modelValue":x[0]||(x[0]=z=>C.value=z),placeholder:"属性名过滤",onFocus:x[1]||(x[1]=z=>p.value=!0),onBlur:x[2]||(x[2]=z=>p.value=!1),onKeydown:[e.withKeys(V,["delete"]),e.withKeys(J,["down"]),e.withKeys(Q,["up"]),e.withKeys(Y,["enter"])],onInput:O},null,544),[[e.vModelText,C.value]])],34),e.withDirectives((e.openBlock(),e.createBlock(e.unref(g.ElScrollbar),{height:"300px",always:"",ref_key:"scrollbar",ref:w},{default:e.withCtx(()=>{var z;return[((z=l.value)==null?void 0:z.length)??!1?(e.openBlock(),e.createElementBlock("ul",ir,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,(N,F)=>(e.openBlock(),e.createElementBlock("li",{key:N.id,onMouseenter:E=>k(F),onClick:E=>S(N),class:e.normalizeClass(_(F))},[N.dataType==="ENTITY"?(e.openBlock(),e.createElementBlock("span",cr,e.toDisplayString(A(N)),1)):(e.openBlock(),e.createElementBlock("span",dr,e.toDisplayString(A(N)),1))],42,sr))),128))])):(e.openBlock(),e.createBlock(e.unref(g.ElEmpty),{key:1,description:"无可选属性"}))]}),_:1})),[[e.unref(g.vLoading),e.unref(i)]])])]),default:e.withCtx(()=>[e.createVNode(e.unref(g.ElTag),{type:"primary"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(T.value)+" ",1),e.unref(y)?(e.openBlock(),e.createBlock(e.unref(g.ElIcon),{key:0},{default:e.withCtx(()=>[e.createVNode(e.unref(j.ArrowUp))]),_:1})):(e.openBlock(),e.createBlock(e.unref(g.ElIcon),{key:1},{default:e.withCtx(()=>[e.createVNode(e.unref(j.ArrowDown))]),_:1}))]),_:1})]),_:1}))}}),[["__scopeId","data-v-24d9cf5a"]]),Gt=M(e.defineComponent({__name:"JaPropertyPicker",emits:["change"],setup(t,{emit:a}){const r=e.inject("aceFormModel"),o=e.inject("aceFormItemProp"),n=e.inject("aceFormValidator"),d=a;function s(c){n.removeFieldError(o),q(r.formData,o,l.value),d("change",c)}const l=e.ref(L(r.formData,o)??"");return e.watch(()=>r.formData,()=>{l.value=L(r.formData,o)??""},{deep:!0}),(c,u)=>(e.openBlock(),e.createBlock(Ot,e.mergeProps({modelValue:l.value,"onUpdate:modelValue":u[0]||(u[0]=i=>l.value=i),onChange:s},c.$attrs),null,16,["modelValue"]))}})),qt=M(Ot),fr=e.defineComponent({__name:"I18nBundleEditor",props:e.mergeModels({appId:{},preKey:{}},{modelValue:{type:Boolean,default:!1,required:!0},modelModifiers:{}}),emits:e.mergeModels(["success"],["update:modelValue"]),async setup(t,{emit:a}){let r,o;const n=e.useModel(t,"modelValue"),d=t,s=D.createAxiosWithoutCache(),l=D.useAppMessageApi(s),c=e.ref(),u=e.ref(""),i=e.ref({}),f=a,p=([r,o]=e.withAsyncContext(()=>me()),r=await r,o(),r);function m(){C(),u.value=d.preKey??"",i.value={}}async function w(){const y={key:u.value,messages:i.value,appInstance:{id:d.appId}};await l.createBundle(y),n.value=!1,f("success",u.value)}async function C(){c.value=await p.getById(d.appId)}return e.watch(()=>d.appId,async()=>{await C()}),(y,h)=>{const I=e.resolveDirective("focus");return e.openBlock(),e.createBlock(e.unref(g.ElDrawer),{"destroy-on-close":"","append-to-body":"",modelValue:n.value,"onUpdate:modelValue":h[2]||(h[2]=A=>n.value=A),title:"创建国际化文本",onOpen:m},{footer:e.withCtx(()=>[e.createVNode(e.unref(W),{size:"default",shortcut:"Alt+Enter",type:"primary",onClick:w},{default:e.withCtx(()=>h[3]||(h[3]=[e.createTextVNode("确定 ")])),_:1,__:[3]}),e.createVNode(e.unref(g.ElButton),{size:"default",plain:"",onClick:h[1]||(h[1]=A=>n.value=!1)},{default:e.withCtx(()=>h[4]||(h[4]=[e.createTextVNode("取消")])),_:1,__:[4]})]),default:e.withCtx(()=>[e.createVNode(e.unref(g.ElForm),{"label-position":"top",size:"default"},{default:e.withCtx(()=>{var A;return[e.createVNode(e.unref(g.ElFormItem),{label:"文本键",required:""},{default:e.withCtx(()=>[e.withDirectives(e.createVNode(e.unref(g.ElInput),{modelValue:u.value,"onUpdate:modelValue":h[0]||(h[0]=k=>u.value=k)},null,8,["modelValue"]),[[I]])]),_:1}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((A=c.value)==null?void 0:A.supportedLocales,k=>(e.openBlock(),e.createBlock(e.unref(g.ElFormItem),{key:k,label:k},{default:e.withCtx(()=>[e.createVNode(e.unref(g.ElInput),{type:"textarea",rows:4,modelValue:i.value[k],"onUpdate:modelValue":_=>i.value[k]=_},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1032,["label"]))),128))]}),_:1})]),_:1},8,["modelValue"])}}}),Wt=M(e.defineComponent({__name:"InputI18n",props:e.mergeModels({appId:{},size:{default:"default"},textarea:{type:Boolean,default:!1},disabled:{type:Boolean}},{modelValue:{default:""},modelModifiers:{}}),emits:e.mergeModels(["change","focus","blur"],["update:modelValue"]),async setup(t,{expose:a,emit:r}){let o,n;const d=t,s=e.useModel(t,"modelValue"),l=D.createAxiosWithoutCache(),c=D.useAppMessageApi(l),u=D.useLoginUser().locale,i=e.ref(),f=e.ref(!1),p=e.ref(!1),m=e.ref(),w=e.ref(""),C=([o,n]=e.withAsyncContext(()=>me()),o=await o,n(),o),y=e.ref(""),h=e.ref(""),I=e.ref(),A=r,k=Ee(S,500);let _;async function S(V){if(V||(V=s.value),!d.appId)return;const U=await C.getById(d.appId);if(w.value=U.name,!V||!w.value){h.value="";return}h.value=V;let T=V;V&&V.length>0&&(T=za(T),T.startsWith("{")&&T.endsWith("}")&&(T=T.substring(1,T.length-1)));const P=(await c.getByKey(w.value,T,{cancelDuplicatedRequest:!1})).find(B=>B.locale===u);P&&(h.value=P.message)}async function R(V){y.value=V,i.value=await c.searchKeys(w.value,V)}async function O(){var V;f.value=!0,await e.nextTick(),A("focus"),(V=m.value)==null||V.focus()}function J(){_=setTimeout(()=>{f.value=!1},200),A("blur")}e.onUnmounted(()=>{k.cancel(),_&&clearTimeout(_)}),e.watch(s,()=>{k()},{deep:!0,immediate:!0});function Q(V){A("change",V)}async function Y(V){await R(y.value),s.value="{"+V+"}",I.value.focus}return a({focus(){I==null||I.value.focus()},blur(){m==null||m.value.blur()}}),(V,U)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.withDirectives(e.createVNode(e.unref(g.ElInput),{ref_key:"selectI18n",ref:I,onFocus:O,modelValue:h.value,"onUpdate:modelValue":U[0]||(U[0]=T=>h.value=T),size:V.size,disabled:V.disabled,type:V.textarea?"textarea":void 0},null,8,["modelValue","size","disabled","type"]),[[e.vShow,!f.value]]),e.withDirectives(e.createVNode(e.unref(g.ElSelect),{ref_key:"select",ref:m,filterable:"",remote:"","remote-method":R,disabled:V.disabled,"default-first-option":"","remote-show-suffix":"",onChange:Q,size:V.size,"allow-create":"",clearable:"",onBlur:J,modelValue:s.value,"onUpdate:modelValue":U[2]||(U[2]=T=>s.value=T)},{footer:e.withCtx(()=>[e.createVNode(e.unref(W),{link:"",style:{width:"100%"},type:"primary",onClick:U[1]||(U[1]=T=>p.value=!0),shortcut:"Alt+I"},{default:e.withCtx(()=>U[4]||(U[4]=[e.createTextVNode(" 新建国际化文本(Alt+I) ")])),_:1,__:[4]})]),default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,T=>(e.openBlock(),e.createBlock(e.unref(g.ElOption),{key:T,value:"{"+T+"}",label:"{"+T+"}"},null,8,["value","label"]))),128))]),_:1},8,["disabled","size","modelValue"]),[[e.vShow,f.value]]),e.createVNode(fr,{"app-id":V.appId,"pre-key":y.value,modelValue:p.value,"onUpdate:modelValue":U[3]||(U[3]=T=>p.value=T),onSuccess:Y},null,8,["app-id","pre-key","modelValue"])],64))}})),Ht=M(e.defineComponent({__name:"JaCheckboxGroup",emits:["change"],setup(t,{expose:a,emit:r}){const o=e.ref({}),n=e.inject("aceFormModel"),d=e.inject("aceFormItemProp"),s=e.inject("aceFormValidator"),l=r;function c(i){s.removeFieldError(d),q(n.formData,d,u.value),l("change",i)}const u=e.ref(L(n.formData,d));return e.watch(()=>n.formData,()=>{u.value=L(n.formData,d)},{deep:!0}),a({focus:()=>o.value.focus(),blur:()=>o.value.blur(),elCheckboxGroup:o}),(i,f)=>(e.openBlock(),e.createBlock(e.unref(g.ElCheckboxGroup),e.mergeProps({ref_key:"input",ref:o,modelValue:u.value,"onUpdate:modelValue":f[0]||(f[0]=p=>u.value=p),onChange:c},i.$attrs),e.createSlots({_:2},[e.renderList(i.$slots,(p,m)=>({name:m,fn:e.withCtx(()=>[e.renderSlot(i.$slots,m)])}))]),1040,["modelValue"]))}})),Kt=M(e.defineComponent({__name:"EnumPicker",props:e.mergeModels({clearable:{type:Boolean,default:!0},filterable:{type:Boolean,default:!0},keyField:{default:"value"},multiple:{type:Boolean,default:!1},name:{},serviceName:{}},{modelValue:{default:()=>[]},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const a=t,r=e.ref([]),o=e.ref(!1),n=e.useModel(t,"modelValue"),d=D.createAxiosWithoutCache(),s=D.useEnumApi(d);async function l(){!a.name||!a.serviceName||(o.value=!0,s.queryByName(a.serviceName,a.name).then(i=>{r.value=i.values}).finally(()=>{o.value=!1}))}const c=e.computed(()=>a.multiple?n.value.map(i=>i[a.keyField])||[]:n.value[0]!==void 0?n.value[0][a.keyField]:""),u=i=>{if(typeof i=="string"){const f=r.value.find(p=>p[a.keyField]===i);n.value=f?[f]:[]}else n.value=r.value.filter(f=>i.includes(f[a.keyField]))};return l(),e.watch(()=>a.name,l),e.watch(()=>a.serviceName,l),(i,f)=>{const p=e.resolveDirective("loading");return e.withDirectives((e.openBlock(),e.createBlock(e.unref(g.ElSelect),{"model-value":c.value,filterable:a.filterable,multiple:a.multiple,clearable:a.clearable,onChange:u},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,m=>(e.openBlock(),e.createBlock(e.unref(g.ElOption),{key:m.id,value:m[a.keyField],label:m.text},null,8,["value","label"]))),128))]),_:1},8,["model-value","filterable","multiple","clearable"])),[[p,o.value]])}}})),ur=Object.freeze(Object.defineProperty({__proto__:null,AceTip:Ue,AceUpload:Fe,JaAutocomplete:Ft,JaAvatar:de,JaBaseRolePicker:he,JaButton:W,JaChannelPicker:Jt,JaChannelPickerRaw:Pt,JaCheckbox:je,JaCheckboxGroup:Ht,JaDatePicker:Pe,JaDepartmentPicker:st,JaDepartmentTree:Ne,JaDropdownButton:He,JaEnumList:ot,JaEnumListRaw:at,JaEnumPicker:Kt,JaForm:ze,JaFormItem:v,JaInput:se,JaInputI18nRaw:Wt,JaInputNumber:Re,JaMapItemList:nt,JaMapItemListRaw:lt,JaNumberList:ve,JaNumberListRaw:et,JaPropertyPicker:Gt,JaPropertyPickerRaw:qt,JaRadioGroup:Ut,JaRolePicker:zt,JaRolePickerRaw:jt,JaScrollbar:Se,JaSelect:Je,JaStringList:Ye,JaStringListRaw:Xe,JaSwitch:Ke,JaTimePicker:Mt,JaUserGroupPicker:xt,JaUserGroupTree:Ae,JaUserInfoTag:ae,JaUserList:Tt,JaUserPicker:$t,JaUserPickerRaw:St,JaUserSelectDialog:De,getAvatarToken:Ve,updateAvatarToken:dt},Symbol.toStringTag,{value:"Module"}));function Qt(t){t.directive("focus",xe),t.directive("shortcut",ce),t.directive("auth",We)}const pr=[{text:"近一天",value:()=>{const t=new Date,a=new Date;return a.setDate(a.getDate()-1),[a,t]}},{text:"近三天",value:()=>{const t=new Date,a=new Date;return a.setDate(a.getDate()-3),[a,t]}},{text:"近一周",value:()=>{const t=new Date,a=new Date;return a.setDate(a.getDate()-7),[a,t]}},{text:"近一月",value:()=>{const t=new Date,a=new Date;return a.setMonth(a.getMonth()-1),[a,t]}},{text:"近三月",value:()=>{const t=new Date,a=new Date;return a.setMonth(a.getMonth()-3),[a,t]}},{text:"近半年",value:()=>{const t=new Date,a=new Date;return a.setMonth(a.getMonth()-6),[a,t]}},{text:"近一年",value:()=>{const t=new Date,a=new Date;return a.setFullYear(a.getFullYear()-1),[a,t]}}];function mr(t){if(!t)throw new Error("无法获取到应用名称,请确保VITE_APP_NAME环境变量已配置或者在创建时传入appName参数。");if(!window.microApp)throw new Error("无法获取到window.microApp。");const a=e.ref(new Set),r=(u,i=!0,f=!0)=>{const p={sender:t,timestamp:Date.now(),payload:u};i?window.microApp.forceDispatch(p):window.microApp.dispatch(p,m=>{console.log("消息是否有返回值",m)}),f&&s()},o=(u,i=!0)=>{const f={sender:"app-demo",timestamp:Date.now(),payload:u};window.microApp.setGlobalData(f),i&&s()},n=(u,i=!0)=>{window.microApp.addGlobalDataListener(u,i)},d=()=>window.microApp.getData(),s=()=>{window.microApp.clearData()},l=(u,i=!1)=>{window.microApp.addDataListener(u,i),a.value.add(u)},c=u=>{window.microApp.removeDataListener(u),a.value.delete(u)};return e.onUnmounted(()=>{window.microApp.clearDataListener(),a.value.clear()}),{sendMessage:r,onMessage:l,clearCache:s,getBaseAppData:d,offMessage:c,listeners:a,sendGlobalMessage:o,onGlobalMessage:n}}const X=e.ref();async function ge(t){if(!X.value){t||(t="ace-global-app");const a=D.createAxiosWithoutCache(),r=D.useAppServiceApi(a);X.value=await r.getClassificationLevels(t)}}async function hr(t){return await ge(t),X.value.system}async function gr(t){return await ge(t),X.value.user}async function yr(t){await ge(t);const a=new Map;for(let r=0;r<X.value.user.length;r++){const o=X.value.user[r];a.set(o.value,o.label)}return a}async function wr(t){await ge(t);const a=new Map;for(let r=0;r<X.value.system.length;r++){const o=X.value.system[r];a.set(o.value,o.label)}return a}const kr={install(t){for(const[a,r]of Object.entries(ur))t.component(a,r);Qt(t)}};b.AceTip=Ue,b.AceUpload=Fe,b.AceVueUI=kr,b.JaAutocomplete=Ft,b.JaAvatar=de,b.JaBaseRolePicker=he,b.JaButton=W,b.JaChannelPicker=Jt,b.JaChannelPickerRaw=Pt,b.JaCheckbox=je,b.JaCheckboxGroup=Ht,b.JaDatePicker=Pe,b.JaDepartmentPicker=st,b.JaDepartmentTree=Ne,b.JaDropdownButton=He,b.JaEnumList=ot,b.JaEnumListRaw=at,b.JaEnumPicker=Kt,b.JaForm=ze,b.JaFormItem=v,b.JaInput=se,b.JaInputI18nRaw=Wt,b.JaInputNumber=Re,b.JaMapItemList=nt,b.JaMapItemListRaw=lt,b.JaNumberList=ve,b.JaNumberListRaw=et,b.JaPropertyPicker=Gt,b.JaPropertyPickerRaw=qt,b.JaRadioGroup=Ut,b.JaRolePicker=zt,b.JaRolePickerRaw=jt,b.JaScrollbar=Se,b.JaSelect=Je,b.JaStringList=Ye,b.JaStringListRaw=Xe,b.JaSwitch=Ke,b.JaTimePicker=Mt,b.JaUserGroupPicker=xt,b.JaUserGroupTree=Ae,b.JaUserInfoTag=ae,b.JaUserList=Tt,b.JaUserPicker=$t,b.JaUserPickerRaw=St,b.JaUserSelectDialog=De,b.SCROLL_BAR_WRAPPED_INJECT_KEY=Ie,b.getAvatarToken=Ve,b.installDirectives=Qt,b.shortcuts=pr,b.updateAvatarToken=dt,b.useAppInstances=me,b.useBackendValidations=Le,b.useBridge=mr,b.useRealms=pe,b.useSystemClassificationLevelMap=wr,b.useSystemClassificationLevels=hr,b.useTreeData=Z,b.useUserClassificationLevel=gr,b.useUserClassificationLevelMap=yr,b.useUserRefQuery=Be,Object.defineProperty(b,Symbol.toStringTag,{value:"Module"})});
14
+ -283 -33z'/%3E%3C/g%3E%3C/svg%3E`,de=M(K(e.defineComponent({__name:"JaAvatar",props:{userId:{},username:{},realm:{},doNotLoadAvatar:{type:Boolean,default:!1},hasAvatar:{type:Boolean},firstName:{}},setup(t){const a=t,r=Ve(),o=e.ref(!1),n=e.ref(),d=e.ref();o.value=!0,e.onMounted(async()=>{await e.nextTick()});const s=e.computed(()=>{if(!(o.value&&a.hasAvatar&&!a.doNotLoadAvatar))return a.firstName?"":Ce;if(a.userId&&a.userId.length>0){const c="/ace-app-service/avatar/"+a.userId;return window.appDescriptor.env.isDevMode()?new URL("/ace"+c,location.origin).toString()+"?t="+r.value.toString():new URL(c,location.origin).toString()+"?t="+r.value.toString()}if(a.realm&&a.realm.length>0&&a.username&&a.username.length>0){const c="/ace-app-service/avatar/"+a.realm+"/"+a.username;return window.appDescriptor.env.isDevMode()?new URL("/ace"+c,location.origin).toString()+"?t="+r.value.toString():new URL(c,location.origin).toString()+"?t="+r.value.toString()}return a.firstName?"":Ce});function l(c){var f;if(!c)return;let i=((f=n.value)==null?void 0:f.$el.clientWidth)/2.8;c.style.fontSize=i+"px"}return e.onUnmounted(()=>{}),e.watch(d,()=>l(d.value)),(c,u)=>(e.openBlock(),e.createBlock(e.unref(g.ElAvatar),e.mergeProps({src:s.value},c.$attrs,{ref_key:"avatar",ref:n,class:"ja-avatar"}),{default:e.withCtx(()=>[a.firstName&&a.firstName.length>0?(e.openBlock(),e.createElementBlock("span",{key:0,class:"user-name-avatar",ref_key:"usernameSpan",ref:d},e.toDisplayString(c.firstName),513)):(e.openBlock(),e.createBlock(e.unref(g.ElImage),{key:1,style:{height:"100%"},src:e.unref(Ce),alt:"用户头像"},null,8,["src"]))]),_:1},16,["src"]))}}),[["__scopeId","data-v-575c2d3a"]]));let _e;function Co(){return _e||(_e=D.createAxiosWithoutCache()),_e}const _o={class:"portrait"},bo={class:"user-info"},Eo={class:"dropdown"},Bo={class:"header"},No={class:"tools"},Io={style:{margin:"0","font-weight":"600"}},Ao={style:{margin:"0","font-size":"14px",color:"var(--el-color-info-light-3)"}},Do={style:{margin:"0"}},ae=M(K(e.defineComponent({__name:"UserInfoTag",props:{closable:{type:Boolean,default:!1},userId:{},fullName:{default:"无名氏"},realm:{},username:{},theme:{default:"skyGray"},hasAvatar:{type:Boolean},placement:{default:"bottom"}},emits:["closed"],setup(t,{emit:a}){const r={primary:"user-info-tag--root theme-primary",success:"user-info-tag--root theme-success",warning:"user-info-tag--root theme-warning",danger:"user-info-tag--root theme-danger",info:"user-info-tag--root theme-info",lotusPink:"user-info-tag--root theme-lotus-pink",wineRed:"user-info-tag--root theme-wine-red",autumnOrange:"user-info-tag--root theme-autumn-orange",sunYellow:"user-info-tag--root theme-sun-yellow",seaBlue:"user-info-tag--root theme-sea-blue",moonlightBlue:"user-info-tag--root theme-moonlight-blue",clovePurple:"user-info-tag--root theme-clove-purple",skyGray:"user-info-tag--root theme-sky-gray"},o=t,n=e.ref();let d=Co(),s=D.useLoading(d),l=D.useUserApi(d);const c=e.ref(!1),u=e.ref(!1),i=a;e.onUnmounted(()=>{d=void 0,s=void 0,l=void 0});function f(){if(!n.value)if(o.userId)l==null||l.getById(o.userId).then(y=>{n.value=y,p()});else if(o.username&&o.realm){let y=o.username;if(y.indexOf("\\")>=0){const h=y.split("\\");y=h[h.length-1]}l==null||l.getByUserName(o.realm,y).then(h=>{n.value=h,p()})}else throw new Error("user-info-tag组件的userId和(realm, userName)属性不能都为空")}function p(){n.value&&(l==null||l.checkBookmarked(n.value.id).then(y=>c.value=y))}function m(){u.value=!1,i("closed",o.userId,o.realm,o.username)}function w(){n.value&&(l==null||l.bookmarkUser(n.value.id).then(()=>c.value=!0))}function C(){n.value&&(l==null||l.unbookmarkUser(n.value.id).then(()=>c.value=!1))}return(y,h)=>(e.openBlock(),e.createBlock(e.unref(g.ElPopover),{width:"auto","hide-after":200,onBeforeEnter:f,placement:y.placement,visible:u.value,"onUpdate:visible":h[3]||(h[3]=I=>u.value=I)},{reference:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(r[o.theme])},[e.createElementVNode("div",_o,[e.createVNode(e.unref(de),{size:24,"user-id":y.userId,realm:y.realm,username:y.username,"has-avatar":!1},null,8,["user-id","realm","username"])]),e.createElementVNode("div",bo,[e.createTextVNode(e.toDisplayString(y.fullName)+" ",1),y.closable?(e.openBlock(),e.createElementBlock("div",{key:0,class:"close-btn",onClick:h[0]||(h[0]=I=>m())},[e.createVNode(e.unref(g.ElIcon),{size:10},{default:e.withCtx(()=>[e.createVNode(e.unref(j.Close))]),_:1})])):e.createCommentVNode("",!0)])],2)]),default:e.withCtx(()=>{var I,A,k,_,S,R,O;return[e.withDirectives((e.openBlock(),e.createElementBlock("div",Eo,[e.createElementVNode("div",Bo,[e.createVNode(e.unref(de),{"user-id":y.userId,realm:y.realm,username:y.username,size:75,"has-avatar":(I=n.value)==null?void 0:I.hasAvatar,style:{"margin-bottom":"8px"}},null,8,["user-id","realm","username","has-avatar"]),e.createElementVNode("div",No,[e.createVNode(e.unref(g.ElTooltip),{content:c.value?"取消常用人员":"设置为常用人员"},{default:e.withCtx(()=>[c.value?(e.openBlock(),e.createBlock(e.unref(g.ElIcon),{key:1,color:"#FFBF29",onClick:h[2]||(h[2]=J=>C()),size:16},{default:e.withCtx(()=>[e.createVNode(e.unref(j.StarFilled))]),_:1})):(e.openBlock(),e.createBlock(e.unref(g.ElIcon),{key:0,onClick:h[1]||(h[1]=J=>w()),size:16},{default:e.withCtx(()=>[e.createVNode(e.unref(j.Star))]),_:1}))]),_:1},8,["content"])])]),e.createElementVNode("div",null,[e.createElementVNode("p",Io,e.toDisplayString(y.fullName),1),e.createElementVNode("p",Ao," @"+e.toDisplayString(((k=(A=n.value)==null?void 0:A.department)==null?void 0:k.name)??"无归属部门"),1)]),e.createElementVNode("p",Do,[h[4]||(h[4]=e.createElementVNode("span",{class:"label"},"手机:",-1)),e.createTextVNode(" "+e.toDisplayString(!((_=n.value)!=null&&_.mobile)||n.value.mobile.length===0?"(未填写手机号)":(S=n.value)==null?void 0:S.mobile)+" ",1),h[5]||(h[5]=e.createElementVNode("br",null,null,-1)),h[6]||(h[6]=e.createElementVNode("span",{class:"label"},"邮箱:",-1)),e.createTextVNode(" "+e.toDisplayString(!((R=n.value)!=null&&R.email)||n.value.email.length===0?"(未填写邮箱号)":(O=n.value)==null?void 0:O.email),1)])])),[[e.vShow,u.value],[e.unref(g.vLoading),!!e.unref(s)]])]}),_:1},8,["placement","visible"]))}}),[["__scopeId","data-v-51ad1216"]]));function fe(t){var a=typeof t;return t!=null&&(a=="object"||a=="function")}var So=typeof global=="object"&&global&&global.Object===Object&&global,$o=typeof self=="object"&&self&&self.Object===Object&&self,ft=So||$o||Function("return this")(),be=function(){return ft.Date.now()},To=/\s/;function Mo(t){for(var a=t.length;a--&&To.test(t.charAt(a)););return a}var xo=/^\s+/;function ut(t){return t&&t.slice(0,Mo(t)+1).replace(xo,"")}var ee=ft.Symbol,pt=Object.prototype,Fo=pt.hasOwnProperty,Uo=pt.toString,re=ee?ee.toStringTag:void 0;function Lo(t){var a=Fo.call(t,re),r=t[re];try{t[re]=void 0;var o=!0}catch{}var n=Uo.call(t);return o&&(a?t[re]=r:delete t[re]),n}var zo=Object.prototype,jo=zo.toString;function Ro(t){return jo.call(t)}var Jo="[object Null]",Po="[object Undefined]",mt=ee?ee.toStringTag:void 0;function Oo(t){return t==null?t===void 0?Po:Jo:mt&&mt in Object(t)?Lo(t):Ro(t)}function Go(t){return t!=null&&typeof t=="object"}var qo="[object Symbol]";function ht(t){return typeof t=="symbol"||Go(t)&&Oo(t)==qo}var gt=NaN,Wo=/^[-+]0x[0-9a-f]+$/i,Ho=/^0b[01]+$/i,Ko=/^0o[0-7]+$/i,Qo=parseInt;function yt(t){if(typeof t=="number")return t;if(ht(t))return gt;if(fe(t)){var a=typeof t.valueOf=="function"?t.valueOf():t;t=fe(a)?a+"":a}if(typeof t!="string")return t===0?t:+t;t=ut(t);var r=Ho.test(t);return r||Ko.test(t)?Qo(t.slice(2),r?2:8):Wo.test(t)?gt:+t}var Yo="Expected a function",Xo=Math.max,Zo=Math.min;function Ee(t,a,r){var o,n,d,s,l,c,u=0,i=!1,f=!1,p=!0;if(typeof t!="function")throw new TypeError(Yo);a=yt(a)||0,fe(r)&&(i=!!r.leading,f="maxWait"in r,d=f?Xo(yt(r.maxWait)||0,a):d,p="trailing"in r?!!r.trailing:p);function m(S){var R=o,O=n;return o=n=void 0,u=S,s=t.apply(O,R),s}function w(S){return u=S,l=setTimeout(h,a),i?m(S):s}function C(S){var R=S-c,O=S-u,J=a-R;return f?Zo(J,d-O):J}function y(S){var R=S-c,O=S-u;return c===void 0||R>=a||R<0||f&&O>=d}function h(){var S=be();if(y(S))return I(S);l=setTimeout(h,C(S))}function I(S){return l=void 0,p&&o?m(S):(o=n=void 0,s)}function A(){l!==void 0&&clearTimeout(l),u=0,o=c=n=l=void 0}function k(){return l===void 0?s:I(be())}function _(){var S=be(),R=y(S);if(o=arguments,n=this,c=S,R){if(l===void 0)return w(c);if(f)return clearTimeout(l),l=setTimeout(h,a),m(c)}return l===void 0&&(l=setTimeout(h,a)),s}return _.cancel=A,_.flush=k,_}const ue=e.ref([]);function pe(){const t=D.useRealmApi(),a=async()=>{if(ue.value.length!==0)return;const o={};ue.value=await t.getAll(o)};return{realms:ue,getAllRealms:a,getDefaultRealm:async()=>(await a(),ue.value.find(o=>o.name==="ace-platform"))}}function Be(t,a,r,o,n,d){const s=e.ref({}),l=e.ref({currentPage:1,pageSize:50}),c=e.ref({total:0,users:[]});n||(n=D.createAxiosWithoutCache());const u=D.useUserApi(n),i=D.useLoading(n),f=e.ref(!1);function p(){C().then(y=>{r&&r(y,f.value),f.value=!1})}const m=Ee(p,300);function w(){c.value.total=0,c.value.users=[],l.value.currentPage!==1?l.value.currentPage=1:m()}e.watch(s,()=>{f.value=!0,w()},{deep:!0}),e.watch(()=>l.value.pageSize,()=>{f.value=!0,w()}),e.watch(()=>l.value.currentPage,()=>{C().then(y=>{r&&r(y,f.value),f.value=!1})});async function C(){if(t&&!t())return Promise.resolve(void 0);if(!s.value.realmId){const J=await pe().getDefaultRealm();s.value.realmId=J.id}const y=D.useUserQueryBuilder(),h=y.getQEntity();y.and(h.realm.id.eq(s.value.realmId)).and(h.recycled.eq(!1));const I=s.value.currentDept;I&&(I.id==it?y.and(h.department.isNull()):I.id!==ke&&y.and(h.department.sortPath.startWith(I.sortPath)));const A=s.value.classificationLevel;A&&y.and(h.classifiedLevel.loe(A));const k=s.value.currentGroup;k&&y.and(h.userGroups.any().group.sortPath.startWith(k.sortPath));const _=s.value.currentCustomGroup;_&&y.and(h.customGroups.any().customGroup.sortPath.startWith(_.sortPath));const S=s.value.name;if(S){const J="%"+S.split("").join("%")+"%";y.and(h.username.like(J).or(h.fullName.like(J)).or(h.pinYinName.like(J)).or(h.mobile.like(J)))}a&&y.and(a(h));const R=s.value.currentSort;R&&y.orderBy(R);const O=y.build();if(d)return u.queryUserRefs(O).then(J=>(c.value.users=J,J));{const J=l.value.currentPage-1;return u.queryUserRefsPaged(O,J,l.value.pageSize).then(Q=>(o&&J>0?c.value.users.push(...Q.content):c.value.users=Q.content,c.value.total=Q.totalElements,Q.content))}}return{queryParams:s,pageParams:l,queryResult:c,queryUsers:C,loading:i}}const Ne=M(K(e.defineComponent({__name:"departmentTree",props:e.mergeModels({realmId:{},showNoDepartment:{type:Boolean,default:!1},multiple:{type:Boolean}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["change","loaded"],["update:modelValue"]),setup(t,{expose:a,emit:r}){const o=e.ref(),n=D.createAxiosWithoutCache(),d=D.useLoading(n),s=D.useDepartmentApi(n),l=t,c=r,u=e.useModel(t,"modelValue"),i=e.computed({get(){var w;return(w=u.value)==null?void 0:w.id},set(w){u.value=f.departments.find(C=>C.id===w)??null}}),f=e.shallowReactive({departments:[]}),p=async()=>{if(!l.realmId)return;const w=await s.getNormal(l.realmId,D.FromDeptSelect.BT);f.departments=[{id:ke,label:"所有部门",name:"所有部门",shortCode:"",children:[],hasChildren:!1,sortIndex:-1,sortPath:"",dataVersion:0,entity:!1,attributes:{}},...l.showNoDepartment?[{id:it,label:"无归属部门",name:"无归属部门",shortCode:"",children:[],hasChildren:!1,sortIndex:-100,sortPath:"no_dept",dataVersion:0,entity:!1,attributes:{}}]:[],...Z(w,"name")],i.value=f.departments[0].id,c("loaded",f.departments)},m=w=>{u.value=w,c("change",w)};return e.watch(()=>l.realmId,()=>{p()}),a({reload:p}),p(),(w,C)=>e.withDirectives((e.openBlock(),e.createBlock(e.unref(g.ElTree),{ref_key:"deptTree",ref:o,data:e.unref(f).departments,size:"default","node-key":"id","default-expand-all":"","highlight-current":"","current-node-key":i.value,"expand-on-click-node":!1,onCurrentChange:m,props:{class:y=>{var h;return((h=u.value)==null?void 0:h.id)===y.id?"selected-group":"group"}}},null,8,["data","current-node-key","props"])),[[e.unref(g.vLoading),e.unref(d)]])}}),[["__scopeId","data-v-b247a32f"]])),Ie="com.csicit.ace.scrollbar.wrapped";var vo="Expected a function";function ne(t,a,r){var o=!0,n=!0;if(typeof t!="function")throw new TypeError(vo);return fe(r)&&(o="leading"in r?!!r.leading:o,n="trailing"in r?!!r.trailing:n),Ee(t,a,{leading:o,maxWait:a,trailing:n})}const ea={class:"ja-user-group-tree"},Ae=M(K(e.defineComponent({__name:"userGroupTree",props:e.mergeModels({realmId:{},multiple:{type:Boolean},showConsoleApp:{type:Boolean},appId:{},nodeHeight:{default:"auto"}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["change","loaded"],["update:modelValue"]),async setup(t,{expose:a,emit:r}){let o,n;const d=e.ref(),s=D.createAxiosWithoutCache(),l=D.useLoading(s),c=D.useUserGroupApi(s),u=D.useAppApi(s),i=t,f=r,p=e.useModel(t,"modelValue"),m=e.ref(i.appId),w=e.computed({get(){var k;return(k=p.value)==null?void 0:k.id},set(k){p.value=h.groups.find(_=>_.id===k)??null}}),[C,y]=([o,n]=e.withAsyncContext(()=>Promise.all([u.getGlobalApp(),u.getAccessible()])),o=await o,n(),o);if(y.unshift(C),!i.showConsoleApp){const k=y.findIndex(_=>_.name=="ace-app-manage");k>=0&&y.splice(k,1)}m.value||(m.value=C.id);const h=e.shallowReactive({groups:[]}),I=async()=>{if(!i.realmId||!m.value)return;const k=await c.getByAppIdAndRealm(m.value,i.realmId);h.groups=[...Z(k,"name")],!p.value&&h.groups.length>0&&(w.value=h.groups[0].id),f("loaded",h.groups)},A=k=>{p.value=k,f("change",k)};return e.watch(()=>i.realmId,()=>{I()}),e.watch(()=>i.appId,()=>{m.value=i.appId}),e.watch(m,()=>{I()}),a({reload:I,elTree:d}),I(),(k,_)=>(e.openBlock(),e.createElementBlock("div",ea,[i.appId?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(g.ElSelect),{key:0,modelValue:m.value,"onUpdate:modelValue":_[0]||(_[0]=S=>m.value=S),style:{width:"100%"}},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(y),S=>(e.openBlock(),e.createBlock(e.unref(g.ElOption),{key:S.id,label:S.caption,value:S.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])),e.withDirectives(e.createVNode(e.unref(g.ElTree),e.mergeProps({style:{width:"100%","--ja-group-tree-node-height":i.nodeHeight},ref_key:"groupTree",ref:d,data:e.unref(h).groups,size:"default","node-key":"id","highlight-current":"","default-expand-all":"","current-node-key":w.value,"expand-on-click-node":!1},k.$attrs,{onCurrentChange:A,props:{class:S=>{var R;return((R=p.value)==null?void 0:R.id)===S.id?"selected-group":"group"}}}),null,16,["style","data","current-node-key","props"]),[[e.unref(g.vLoading),e.unref(l)]])]))}}),[["__scopeId","data-v-d45cc589"]])),ta=M(K(e.defineComponent({__name:"customGroupTree",props:e.mergeModels({multiple:{type:Boolean}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["change","loaded"],["update:modelValue"]),setup(t,{expose:a,emit:r}){const o=e.ref(),n=D.createAxiosWithoutCache(),d=D.useLoading(n),s=D.useCustomGroupApi(n),l=r,c=e.useModel(t,"modelValue"),u=e.computed({get(){var m;return(m=c.value)==null?void 0:m.id},set(m){c.value=i.groups.find(w=>w.id===m)??null}}),i=e.shallowReactive({groups:[]}),f=async()=>{const m=await s.getAll();i.groups=[...Z(m,"name")],i.groups.length>0&&(c.value=i.groups[0],u.value=c.value.id),l("loaded",i.groups)},p=m=>{c.value=m,l("change",m)};return a({reload:f}),f(),(m,w)=>e.withDirectives((e.openBlock(),e.createBlock(e.unref(g.ElTree),{ref_key:"deptTree",ref:o,data:e.unref(i).groups,size:"default","node-key":"id","default-expand-all":"","highlight-current":"","current-node-key":u.value,"expand-on-click-node":!1,onCurrentChange:p,props:{class:C=>{var y;return((y=c.value)==null?void 0:y.id)===C.id?"selected-group":"group"}}},null,8,["data","current-node-key","props"])),[[e.unref(g.vLoading),e.unref(d)]])}}),[["__scopeId","data-v-4e04bc5c"]])),oa={class:"ja-user-select-dialog"},aa={class:"ja-user-select-dialog__content"},ra={style:{display:"flex","flex-direction":"row","align-content":"baseline",width:"100%",gap:"0"}},De=M(K(e.defineComponent({__name:"userSelectDialog",props:e.mergeModels({realmId:{type:String,required:!1},multiple:{type:Boolean,required:!1,default:!1},classificationLevel:{type:Number,required:!1,default:!1},customFilter:{type:Function,required:!1}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(t,{expose:a}){const r=t,o=e.useModel(t,"modelValue"),n=e.ref();async function d(){if(r.realmId)n.value=r.realmId;else{const E=await pe().getDefaultRealm();n.value=E.id}}if(d(),r.multiple){if(o.value||(o.value=[]),!Array.isArray(o.value))throw new Error("多选模式的选择用户对话框(multiple设置为true)的v-model必须是数组类型")}else if(Array.isArray(o.value))throw new Error("单选模式的选择用户对话框(multiple设置为false)的v-model只能为空或是单个UserReference对象");const s=e.ref(!1),l=e.ref(),c=e.ref(),u=e.ref(),i=D.createAxiosWithoutCache(),f=D.useLoading(i),p=e.ref(!1),m=e.ref([]),w=e.reactive(new Map),C=e.ref("dept");e.provide(Ie,void 0);const y=e.ref(Array.isArray(o.value)?[...o.value]:o.value),h=Be(void 0,r.customFilter,E=>{p.value||(m.value=E??[])},!1,i,!0),I=[{key:"user",dataKey:"id",width:290,title:"用户",cellRenderer:({cellData:E,rowData:$,rowIndex:H})=>{const{hasAvatar:Yt,fullName:Vr}=$,ye=$,Cr=H;return e.h("div",{class:"user-row",onMousedown:()=>P(ye),onMouseenter:()=>x(ye),onMouseup:B,onMouseover:_r=>F(_r,Cr)},[e.h(g.ElIcon,{color:"#0D6A9F"},()=>R(ye)?e.h(j.Check):void 0),e.h(ae,{userId:E,theme:O(ye),placement:"right-start",hasAvatar:!1,fullName:Vr}),e.h("div",{style:"flex:auto"})])}}],A=e.ref(!1),k=e.ref(),_=ne(N,100),S=ne(J,100);e.watch(l,()=>{C.value=="dept"&&(h.queryParams.value.currentDept=l.value)}),e.watch(c,()=>{C.value=="group"&&(h.queryParams.value.currentGroup=c.value)}),e.watch(u,()=>{C.value=="customGroup"&&(h.queryParams.value.currentCustomGroup=u.value)}),e.watch(()=>r.classificationLevel,()=>{h.queryParams.value.classificationLevel=r.classificationLevel}),e.watch(C,()=>{C.value==="dept"?(h.queryParams.value.currentDept=l.value,h.queryParams.value.currentGroup=void 0,h.queryParams.value.currentCustomGroup=void 0):C.value==="group"?(h.queryParams.value.currentDept=void 0,h.queryParams.value.currentCustomGroup=void 0,h.queryParams.value.currentGroup=c.value):C.value==="customGroup"&&(h.queryParams.value.currentDept=void 0,h.queryParams.value.currentCustomGroup=u.value,h.queryParams.value.currentGroup=void 0)});function R(E){return Array.isArray(y.value)?w.has(E.id):y.value&&y.value.id===E.id}function O(E){return R(E)?"autumnOrange":"skyGray"}function J(E){if(Array.isArray(y.value)){const $=y.value.findIndex(H=>H.id===E.id);$>=0?(w.delete(E.id),y.value.splice($,1)):(w.set(E.id,E),y.value.push(E))}else y.value=E}e.onUnmounted(()=>{_.cancel(),S.cancel()});function Q(){if(Array.isArray(y.value)){const E=h.queryResult.value.users.filter($=>!R($));E.forEach($=>w.set($.id,$)),y.value.push(...E)}}function Y(){Array.isArray(y.value)&&(w.clear(),y.value.splice(0))}function V(){if(Array.isArray(y.value)){const E=h.queryResult.value.users.filter($=>!R($));w.clear(),E.forEach($=>w.set($.id,$)),y.value.splice(0),y.value.push(...E)}}function U(){o.value=y.value,s.value=!1}function T(){p.value=!p.value,p.value?Array.isArray(y.value)?m.value=[...y.value]:m.value=y.value?[y.value]:[]:m.value=h.queryResult.value.users}function G(){!h.queryParams.value.realmId&&n.value&&(h.queryParams.value.realmId=n.value),y.value=Array.isArray(o.value)?[...o.value]:o.value,Array.isArray(o.value)&&(w.clear(),o.value.forEach(E=>w.set(E.id,E)))}function P(E){J(E),A.value=!0}function B(){A.value=!1}function x(E){A.value&&J(E)}let z;function N(){z&&z<m.value.length&&k.value.scrollToRow(z+1),z=void 0}function F(E,$){A.value=E.buttons>0,A.value&&(z=$,_())}return a({show(){s.value=!0}}),(E,$)=>(e.openBlock(),e.createBlock(e.unref(g.ElDialog),{modelValue:s.value,"onUpdate:modelValue":$[5]||($[5]=H=>s.value=H),"destroy-on-close":"",draggable:"",width:"640",title:"选择人员","append-to-body":"",onOpen:G},{footer:e.withCtx(()=>[e.createVNode(e.unref(W),{type:"primary",shortcut:"Ctrl+Alt+Enter",onClick:U,size:"default"},{default:e.withCtx(()=>$[10]||($[10]=[e.createTextVNode("确定 ")])),_:1,__:[10]}),e.createVNode(e.unref(g.ElButton),{plain:"",size:"default",onClick:$[4]||($[4]=H=>s.value=!1)},{default:e.withCtx(()=>$[11]||($[11]=[e.createTextVNode("取消")])),_:1,__:[11]})]),default:e.withCtx(()=>[e.createElementVNode("div",oa,[e.createVNode(e.unref(g.ElTabs),{class:"ja-user-select-dialog__left",modelValue:C.value,"onUpdate:modelValue":$[3]||($[3]=H=>C.value=H)},{default:e.withCtx(()=>[e.createVNode(e.unref(g.ElTabPane),{name:"dept",label:"按部门",class:"ja-user-select-dialog__left-dept-pane"},{default:e.withCtx(()=>[e.createVNode(e.unref(g.ElScrollbar),{height:"400"},{default:e.withCtx(()=>[e.createVNode(e.unref(Ne),{modelValue:l.value,"onUpdate:modelValue":$[0]||($[0]=H=>l.value=H),"realm-id":n.value},null,8,["modelValue","realm-id"])]),_:1})]),_:1}),e.createVNode(e.unref(g.ElTabPane),{name:"group",label:"按用户组"},{default:e.withCtx(()=>[e.createVNode(e.unref(g.ElScrollbar),{height:"400"},{default:e.withCtx(()=>[e.createVNode(e.unref(Ae),{modelValue:c.value,"onUpdate:modelValue":$[1]||($[1]=H=>c.value=H),"realm-id":n.value},null,8,["modelValue","realm-id"])]),_:1})]),_:1}),e.createVNode(e.unref(g.ElTabPane),{name:"customGroup",label:"按自定义组"},{default:e.withCtx(()=>[e.createVNode(e.unref(g.ElScrollbar),{height:"400"},{default:e.withCtx(()=>[e.createVNode(e.unref(ta),{modelValue:u.value,"onUpdate:modelValue":$[2]||($[2]=H=>u.value=H)},null,8,["modelValue"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),e.createElementVNode("div",aa,[e.withDirectives((e.openBlock(),e.createBlock(e.unref(g.ElTableV2),{ref_key:"userTable",ref:k,"row-height":40,"header-height":40,columns:I,data:m.value,width:300,height:450,fixed:""},{header:e.withCtx(()=>[e.createElementVNode("div",ra,[e.createVNode(e.unref(g.ElText),{style:{flex:"auto","font-weight":"600"}},{default:e.withCtx(()=>[$[6]||($[6]=e.createTextVNode(" 人员 ")),e.createVNode(e.unref(g.ElTooltip),{content:"切换筛选条件,不会清除已选人员。支持鼠标拖动多选。"},{default:e.withCtx(()=>[r.multiple?(e.openBlock(),e.createBlock(e.unref(g.ElIcon),{key:0},{default:e.withCtx(()=>[e.createVNode(e.unref(j.QuestionFilled))]),_:1})):e.createCommentVNode("",!0)]),_:1})]),_:1,__:[6]}),r.multiple?(e.openBlock(),e.createBlock(e.unref(g.ElText),{key:0,style:{flex:"none","margin-right":"12px"}},{default:e.withCtx(()=>[e.createVNode(e.unref(g.ElTooltip),{content:p.value?"显示所有人员":"只显示选中人员"},{default:e.withCtx(()=>[e.createVNode(e.unref(g.ElIcon),{size:"15",onClick:T},{default:e.withCtx(()=>[p.value?(e.openBlock(),e.createBlock(e.unref(j.View),{key:1})):(e.openBlock(),e.createBlock(e.unref(j.Hide),{key:0}))]),_:1})]),_:1},8,["content"])]),_:1})):e.createCommentVNode("",!0),r.multiple?(e.openBlock(),e.createBlock(e.unref(W),{key:1,plain:"",style:{flex:"none"},link:"",tooltip:"全部选中",shortcut:"Ctrl+A",onClick:Q},{default:e.withCtx(()=>$[7]||($[7]=[e.createTextVNode("全选 ")])),_:1,__:[7]})):e.createCommentVNode("",!0),r.multiple?(e.openBlock(),e.createBlock(e.unref(W),{key:2,plain:"",style:{flex:"none"},link:"",tooltip:"清除全部选中项",shortcut:"Ctrl+Q",onClick:Y},{default:e.withCtx(()=>$[8]||($[8]=[e.createTextVNode("全消 ")])),_:1,__:[8]})):e.createCommentVNode("",!0),r.multiple?(e.openBlock(),e.createBlock(e.unref(W),{key:3,plain:"",style:{flex:"none"},link:"",tooltip:"清除选中项,并选中之前未被选中项",shortcut:"Ctrl+F",onClick:V},{default:e.withCtx(()=>$[9]||($[9]=[e.createTextVNode("反选 ")])),_:1,__:[9]})):e.createCommentVNode("",!0)])]),_:1},8,["data"])),[[e.unref(g.vLoading),e.unref(f)]])])])]),_:1},8,["modelValue"]))}}),[["__scopeId","data-v-efd26932"]])),Se=M(e.defineComponent({__name:"Scrollbar",setup(t,{expose:a}){const r=e.ref(),o=e.ref([]),n=new Map;a({elScrollbar:r}),e.provide(Ie,o);let d=!1;e.watch(o,()=>{d&&l()},{deep:!0});const s=new IntersectionObserver(c=>{c.forEach(u=>{const i=n.get(u.target);i==null||i.onInView(u.isIntersecting)})});async function l(){var u;await e.nextTick();const c=(u=r.value)==null?void 0:u.$el;if(o.value){try{for(let i=0;i<o.value.length;i++)if(o.value[i]){const f=o.value[i],p=f.childElement.getBoundingClientRect(),m=c.getBoundingClientRect();p.top>=m.top&&p.bottom<=m.bottom&&p.left>=m.left&&p.right<=m.right&&f.onInView(!0),n.set(f.childElement,f),s.observe(f.childElement)}}finally{o.value&&o.value.splice(0)}d=!0}}return e.onMounted(async()=>{await l()}),e.onUnmounted(()=>{n.forEach(c=>{s.disconnect()})}),(c,u)=>(e.openBlock(),e.createBlock(e.unref(g.ElScrollbar),e.mergeProps({ref_key:"scroll",ref:r,class:"scroll-container"},c.$attrs),e.createSlots({_:2},[e.renderList(c.$slots,(i,f)=>({name:f,fn:e.withCtx(()=>[e.renderSlot(c.$slots,f)])}))]),1040))}}));function na(t,a){for(var r=-1,o=t==null?0:t.length,n=Array(o);++r<o;)n[r]=a(t[r],r,t);return n}var la=Array.isArray,wt=ee?ee.prototype:void 0,kt=wt?wt.toString:void 0;function $e(t){if(typeof t=="string")return t;if(la(t))return na(t,$e)+"";if(ht(t))return kt?kt.call(t):"";var a=t+"";return a=="0"&&1/t==-1/0?"-0":a}function ia(t,a,r,o){for(var n=t.length,d=r+-1;++d<n;)if(a(t[d],d,t))return d;return-1}function sa(t){return t!==t}function ca(t,a,r){for(var o=r-1,n=t.length;++o<n;)if(t[o]===a)return o;return-1}function Vt(t,a,r){return a===a?ca(t,a,r):ia(t,sa,r)}function da(t){return t==null?"":$e(t)}function fa(t,a,r){var o=-1,n=t.length;a<0&&(a=-a>n?0:n+a),r=r>n?n:r,r<0&&(r+=n),n=a>r?0:r-a>>>0,a>>>=0;for(var d=Array(n);++o<n;)d[o]=t[o+a];return d}function ua(t,a,r){var o=t.length;return r=r===void 0?o:r,!a&&r>=o?t:fa(t,a,r)}var pa="\\ud800-\\udfff",ma="\\u0300-\\u036f",ha="\\ufe20-\\ufe2f",ga="\\u20d0-\\u20ff",ya=ma+ha+ga,wa="\\ufe0e\\ufe0f",ka="\\u200d",Va=RegExp("["+ka+pa+ya+wa+"]");function Ca(t){return Va.test(t)}function _a(t){return t.split("")}var Ct="\\ud800-\\udfff",ba="\\u0300-\\u036f",Ea="\\ufe20-\\ufe2f",Ba="\\u20d0-\\u20ff",Na=ba+Ea+Ba,Ia="\\ufe0e\\ufe0f",Aa="["+Ct+"]",Te="["+Na+"]",Me="\\ud83c[\\udffb-\\udfff]",Da="(?:"+Te+"|"+Me+")",_t="[^"+Ct+"]",bt="(?:\\ud83c[\\udde6-\\uddff]){2}",Et="[\\ud800-\\udbff][\\udc00-\\udfff]",Sa="\\u200d",Bt=Da+"?",Nt="["+Ia+"]?",$a="(?:"+Sa+"(?:"+[_t,bt,Et].join("|")+")"+Nt+Bt+")*",Ta=Nt+Bt+$a,Ma="(?:"+[_t+Te+"?",Te,bt,Et,Aa].join("|")+")",xa=RegExp(Me+"(?="+Me+")|"+Ma+Ta,"g");function Fa(t){return t.match(xa)||[]}function It(t){return Ca(t)?Fa(t):_a(t)}function Ua(t,a){for(var r=t.length;r--&&Vt(a,t[r],0)>-1;);return r}function La(t,a){for(var r=-1,o=t.length;++r<o&&Vt(a,t[r],0)>-1;);return r}function za(t,a,r){if(t=da(t),t&&a===void 0)return ut(t);if(!t||!(a=$e(a)))return t;var o=It(t),n=It(a),d=La(o,n),s=Ua(o,n)+1;return ua(o,d,s).join("")}const le=new Map,xe={mounted(t){let a;if(t instanceof HTMLInputElement)a=setTimeout(()=>t==null?void 0:t.focus(),500),le.set(t,a);else{const r=t.querySelectorAll("input");r.length>0&&r.item(0)instanceof HTMLInputElement&&(a=setTimeout(()=>{var o;return(o=r==null?void 0:r.item(0))==null?void 0:o.focus()},500),le.set(t,a))}},onUnmounted(t){le.has(t)&&(clearTimeout(le.get(t)),le.delete(t))}},ja={class:"ja-custom-group-manager"},Ra=K(e.defineComponent({__name:"CustomGroupManager",props:{users:{default:()=>[]}},setup(t,{expose:a}){const r=e.ref(!1),o=D.createAxiosWithoutCache(),n=D.useCustomGroupApi(o),d=e.ref(),s={label:"name",children:"children",isLeaf:(k,_)=>!k.hasChildren,class:k=>{var _;return k.id===((_=l.value)==null?void 0:_.id)?"selected-group":"group"}},l=e.ref(),c=e.ref(!1),u=e.ref(),i=D.useLoading(o),f=t,p={};async function m(){const k=Z(await n.getAll()),_={id:"-1",name:"[顶级组]",children:k,dataVersion:0,hasChildren:k.length>0,label:"",parentId:void 0,sortIndex:0,sortPath:""};return d.value=[_],_}async function w(){l.value=await m()}function C(k){l.value=k}function y(){u.value=void 0,c.value=!0}async function h(){var k,_;await n.create({name:u.value,parentId:((k=l.value)==null?void 0:k.id)=="-1"||(_=l.value)==null?void 0:_.id}),c.value=!1,await m()}async function I(){l.value&&l.value.id!=="-1"&&(await g.ElMessageBox.confirm("确定要删除选中的自定义组?","确认删除"),await n.delete(l.value.id),await m(),l.value=void 0)}async function A(){var k;if(!l.value||l.value.id==="-1"){g.ElMessage.warning("请选择要保存到的自定义用户组");return}await n.setMembers({id:l.value.id,userIds:((k=f.users)==null?void 0:k.map(_=>_.id))??[]},p),r.value=!1}return a({show(){r.value=!0},close(){r.value=!1}}),(k,_)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(g.ElDialog),{modelValue:r.value,"onUpdate:modelValue":_[1]||(_[1]=S=>r.value=S),"destroy-on-close":"","append-to-body":"",draggable:"",title:"保存为自定义组",width:"360",onOpen:w},{footer:e.withCtx(()=>[e.createVNode(e.unref(W),{type:"primary",shortcut:"Alt+O",loading:e.unref(i),onClick:A},{default:e.withCtx(()=>_[6]||(_[6]=[e.createTextVNode("确定 ")])),_:1,__:[6]},8,["loading"]),e.createVNode(e.unref(g.ElButton),{onClick:_[0]||(_[0]=S=>r.value=!1)},{default:e.withCtx(()=>_[7]||(_[7]=[e.createTextVNode("取消")])),_:1,__:[7]})]),default:e.withCtx(()=>[e.createElementVNode("div",ja,[e.createVNode(e.unref(g.ElSpace),null,{default:e.withCtx(()=>[e.createVNode(e.unref(g.ElText),null,{default:e.withCtx(()=>_[5]||(_[5]=[e.createTextVNode("请创建或选择要保存为的自定义组:")])),_:1,__:[5]}),e.createVNode(e.unref(W),{circle:"",icon:e.unref(j.Plus),tooltip:"添加自定义组",shortcut:"Alt+G",size:"small",onClick:y,loading:e.unref(i)},null,8,["icon","loading"]),e.createVNode(e.unref(W),{circle:"",icon:e.unref(j.Minus),tooltip:"删除自定义组",shortcut:"Alt+D",size:"small",onClick:I,loading:e.unref(i)},null,8,["icon","loading"])]),_:1}),e.createVNode(e.unref(g.ElScrollbar),{height:"360px"},{default:e.withCtx(()=>{var S;return[e.createVNode(e.unref(g.ElTree),{data:d.value,"node-key":"id",props:s,"default-expand-all":"","expand-on-click-node":!1,onCurrentChange:C,"current-node-key":((S=l.value)==null?void 0:S.id)??-1},null,8,["data","current-node-key"])]}),_:1})])]),_:1},8,["modelValue"]),e.createVNode(e.unref(g.ElDialog),{modelValue:c.value,"onUpdate:modelValue":_[4]||(_[4]=S=>c.value=S),"destroy-on-close":"","append-to-body":"",title:"添加自定义组",width:"360px"},{footer:e.withCtx(()=>[e.createVNode(e.unref(W),{type:"primary",shortcut:"Alt+P",onClick:h,loading:e.unref(i),size:"default"},{default:e.withCtx(()=>_[8]||(_[8]=[e.createTextVNode(" 确定 ")])),_:1,__:[8]},8,["loading"]),e.createVNode(e.unref(g.ElButton),{onClick:_[3]||(_[3]=S=>c.value=!1),size:"default"},{default:e.withCtx(()=>_[9]||(_[9]=[e.createTextVNode("取消")])),_:1,__:[9]})]),default:e.withCtx(()=>[e.createVNode(e.unref(g.ElForm),{"label-position":"top"},{default:e.withCtx(()=>[e.createVNode(e.unref(g.ElFormItem),{label:"自定义组名",required:""},{default:e.withCtx(()=>[e.withDirectives(e.createVNode(e.unref(g.ElInput),{modelValue:u.value,"onUpdate:modelValue":_[2]||(_[2]=S=>u.value=S),style:{width:"100%"}},null,8,["modelValue"]),[[e.unref(xe)]])]),_:1})]),_:1})]),_:1},8,["modelValue"])],64))}}),[["__scopeId","data-v-1bab28b9"]]),Ja={class:"ja-user-list"},Pa=["onMouseenter","onMousedown","onMouseover"],Oa={key:0,class:"page-indicator"},Ga={class:"nb-spinner"},qa=1,At=K(e.defineComponent({__name:"JaUserList",props:e.mergeModels({emptyText:{},multiple:{type:Boolean},total:{},pageSize:{},height:{},loading:{type:Boolean},users:{}},{modelValue:{required:!0},modelModifiers:{},page:{required:!0},pageModifiers:{}}),emits:e.mergeModels(["arrowKeyDown","itemClicked"],["update:modelValue","update:page"]),setup(t,{expose:a,emit:r}){const o=t,n=e.ref(0),d=e.ref(),s=e.ref(!1),l=e.useModel(t,"modelValue"),c=e.useModel(t,"page"),u=r,f=ne(()=>{var U;const V=(U=d.value)==null?void 0:U.wrapRef;V&&V.scrollHeight-V.scrollTop<=V.clientHeight+qa&&c.value<o.total/o.pageSize&&c.value++},200);function p(V){if(o.multiple){if(!Array.isArray(l.value))throw new Error("UserPicker组件设置为多选模式(multiple)时,v-model必须绑定UserReference数组");const U=l.value.findIndex(T=>T.id==V.id);U<0?l.value.push(V):l.value.splice(U,1)}else{if(Array.isArray(l.value))throw new Error("UserPicker组件设置为单选模式时,v-model必须绑定UserReference对象或null");l.value!==null&&V.id===l.value.id?l.value=null:l.value=V}}let m;function w(V){p(V),s.value=!0,m=V}function C(){s.value=!1,u("itemClicked",m),m=void 0}function y(V){console.log("点击"),s.value&&p(V)}function h(){n.value<o.users.length-1&&n.value++,A()}function I(){n.value>0&&n.value--,A()}const A=()=>{e.nextTick(()=>{var T,G,P;const V=(T=d.value)==null?void 0:T.$refs.wrapRef,U=V==null?void 0:V.querySelectorAll("li")[n.value];if(U&&V){const B=U.offsetTop,x=U.offsetTop+U.offsetHeight,z=V.scrollTop,N=V.scrollTop+V.clientHeight;x>N?(G=d.value)==null||G.scrollTo(0,x-V.clientHeight+U.offsetHeight-38):B<z&&((P=d.value)==null||P.scrollTo(0,B))}})},k=ne(h,100),_=ne(I,100);function S(V,U){var T;if(n.value=U,s.value=V.buttons>0,s.value){const G=(T=d.value)==null?void 0:T.$refs.wrapRef,P=V.target;if(P&&G){const B=P.offsetTop,x=P.offsetTop+P.offsetHeight,z=G.scrollTop,N=G.scrollTop+G.clientHeight;x+20>N?k():B<z+20&&_()}}}function R(V){var U;if(o.multiple){if(!Array.isArray(l.value))throw new Error("UserPicker组件设置为多选模式(multiple)时,v-model必须绑定UserReference数组");return l.value.some(T=>T.id===V.id)}else{if(Array.isArray(l.value))throw new Error("UserPicker组件设置为单选模式时,v-model必须绑定UserReference对象");return((U=l.value)==null?void 0:U.id)===V.id}}const O=V=>{var U;return Array.isArray(J.value)?J.value.some(T=>T.id===V.id)?"autumnOrange":"skyGray":((U=J.value)==null?void 0:U.id)===V.id?"autumnOrange":"skyGray"},J=e.computed(()=>{const V=Array.isArray(l.value);if(o.multiple&&V)return l.value;if(!o.multiple&&!V)return l.value?[l.value]:[];if(!o.multiple&&V)return l.value;throw new Error("UserPicker组件设置为多选模式(multiple)时,v-model必须绑定UserReference数组")});function Q(V){return V===n.value?"active":""}const Y=e.computed(()=>o.loading&&o.users.length==0);return a({scrollUp(){I()},scrollDown(){h()},activeIndex:n}),e.watch(()=>o.users,()=>{n.value=0},{deep:!1}),e.onUnmounted(()=>{k.cancel(),_.cancel(),f.cancel()}),(V,U)=>(e.openBlock(),e.createElementBlock("div",Ja,[e.withDirectives((e.openBlock(),e.createBlock(e.unref(g.ElScrollbar),{height:V.height,ref_key:"scrollbar",ref:d,always:"",onScroll:e.unref(f)},{default:e.withCtx(()=>[V.users.length>0?(e.openBlock(),e.createElementBlock("ul",{key:0,onMouseup:C},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.users,(T,G)=>(e.openBlock(),e.createElementBlock("li",{key:T.id,class:e.normalizeClass(Q(G)),onMouseenter:P=>s.value&&y(T),onMousedown:P=>w(T),onMouseover:P=>S(P,G)},[e.createVNode(e.unref(g.ElIcon),{color:"#0D6A9F"},{default:e.withCtx(()=>[R(T)?(e.openBlock(),e.createBlock(e.unref(j.Check),{key:0})):e.createCommentVNode("",!0)]),_:2},1024),e.createVNode(e.unref(ae),{"user-id":T.id,"full-name":T.fullName,"has-avatar":T.hasAvatar,placement:"left-start",theme:O(T)},null,8,["user-id","full-name","has-avatar","theme"])],42,Pa))),128))],32)):(e.openBlock(),e.createBlock(e.unref(g.ElEmpty),{key:1,description:V.emptyText},null,8,["description"]))]),_:1},8,["height","onScroll"])),[[e.unref(g.vLoading),Y.value]]),V.users.length>0?(e.openBlock(),e.createElementBlock("div",Oa,[e.withDirectives(e.createElementVNode("div",Ga,null,512),[[e.vShow,V.loading]]),e.createTextVNode(" 已加载 "+e.toDisplayString(c.value)+" /"+e.toDisplayString(Math.ceil(V.total/V.pageSize))+"页 ",1)])):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-66ef9a59"]]),Wa={class:"ja-user-picker__root"},Ha={style:{display:"flex","align-items":"center"}},Ka={class:"ja-user-picker-bookmark__dropdown"},Qa={style:{width:"100%",display:"flex","align-content":"center","justify-content":"end","margin-bottom":"4px"}},Ya={style:{color:"var(--el-color-info-light-5)"}},Xa={class:"dropdown-header"},Za={key:0,class:"ja-user-picker__tag-container"},va={key:0,class:"more-tag"},er={key:1},ie=0,Dt=K(e.defineComponent({__name:"UserPicker",props:e.mergeModels({trigger:{default:"hover"},realmId:{},shortcut:{default:"Ctrl+Alt+U"},multiple:{type:Boolean,default:!1},classificationLevel:{default:0},customFilter:{},maxShowCount:{default:20},height:{},maxHeight:{default:"100%"},showUserTag:{type:Boolean,default:!0}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const a=t,r=e.ref(),o=e.ref();async function n(){if(a.realmId)r.value=a.realmId;else{const N=await pe().getDefaultRealm();r.value=N.id}}n(),e.watch(()=>a.realmId,n);const d=D.createAxiosWithoutCache(),s=D.useUserApi(d),l=e.shallowRef([]),c=e.useModel(t,"modelValue"),u=e.ref(),i=e.ref(!1),{queryResult:f,queryParams:p,pageParams:m,loading:w}=Be(()=>p.value.name!=null&&p.value.name.length>ie,a.customFilter,(N,F)=>{var E,$;N?(l.value=f.value.users,F&&(($=(E=y.value)==null?void 0:E.elScrollbar)==null||$.scrollTo(0,0))):_()},!0,d,!1),C=e.ref(),y=e.ref(),h=e.ref(),I=e.ref(),A=e.ref();function k(N){if(a.multiple){if(!Array.isArray(c.value))throw new Error("UserPicker组件设置为多选模式(multiple)时,v-model必须绑定UserReference数组");const F=c.value.findIndex(E=>E.id==N.id);F<0?c.value.push(N):c.value.splice(F,1)}else{if(Array.isArray(c.value))throw new Error("UserPicker组件设置为单选模式时,v-model必须绑定UserReference对象或者null");c.value!==null&&N.id===c.value.id?c.value=null:c.value=N}}function _(){a.realmId&&(p.value.realmId=a.realmId),p.value.name&&p.value.name.length>ie&&(p.value.name=void 0);const N=D.useUserQueryBuilder();if(a.customFilter){const F=N.getQEntity();N.and(a.customFilter(F))}s.getBookmarkedUsers(N.build()).then(F=>{l.value=F}),setTimeout(()=>{var F;(F=u.value)==null||F.focus()},300)}function S(){var N;i.value=!1,(N=C.value)==null||N.$el.focus()}function R(){var N;(N=I.value)==null||N.show()}function O(N){if(Array.isArray(c.value)){const F=c.value.findIndex(E=>E.id==N);F>=0&&c.value.splice(F,1)}else c.value=null}function J(){var N;A.value.scrollDown(),(N=u.value)==null||N.focus()}function Q(){var N;A.value.scrollUp(),(N=u.value)==null||N.focus()}function Y(){var N;k(l.value[(N=A.value)==null?void 0:N.activeIndex])}function V(){i.value=!0}function U(){const N=c.value;N.push(...l.value.filter(F=>!N.some(E=>E.id===F.id)))}function T(){a.multiple?c.value=[]:c.value=null}function G(){var N;(N=u.value)==null||N.focus()}const P=e.computed(()=>{if(a.multiple&&Array.isArray(c.value))return c.value;if(!a.multiple&&!Array.isArray(c.value))return c.value?[c.value]:[];throw new Error("UserPicker组件设置为多选模式(multiple)时,v-model必须绑定UserReference数组")});function B(){var N;(N=h.value)==null||N.show(),i.value=!1}function x(){i.value=!0}const z=e.computed(()=>P.value.slice(0,a.maxShowCount));return e.watch(()=>a.classificationLevel,()=>{p.value.classificationLevel=a.classificationLevel}),(N,F)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(Se),e.mergeProps({"max-height":a.maxHeight,height:a.height},N.$attrs,{style:{"overflow-x":"hidden"}}),{default:e.withCtx(()=>[e.withDirectives((e.openBlock(),e.createElementBlock("div",Wa,[e.createVNode(e.unref(g.ElPopover),{ref_key:"bookmarkDropdown",ref:o,onShow:_,onHide:S,visible:i.value,"onUpdate:visible":F[3]||(F[3]=E=>i.value=E),width:"auto",teleported:"",trigger:a.trigger},{reference:e.withCtx(()=>[e.createElementVNode("div",Ha,[N.$slots.default?e.renderSlot(N.$slots,"default",{key:0},void 0,!0):(e.openBlock(),e.createBlock(e.unref(g.ElButton),{key:1,circle:"",icon:e.unref(j.Plus),size:"small",ref_key:"btn",ref:C,onMouseover:x},null,8,["icon"]))])]),default:e.withCtx(()=>[e.createElementVNode("div",Ka,[e.createElementVNode("div",Qa,[e.createVNode(e.unref(g.ElSpace),{style:{flex:"auto"}},{default:e.withCtx(()=>[e.createVNode(e.unref(W),{circle:"",size:"small",onClick:B,plain:"",type:"primary",tooltip:"对话框筛选(大批量选择)",shortcut:"Ctrl+Alt+I",icon:e.unref(j.Notebook)},null,8,["icon"]),e.createVNode(e.unref(W),{circle:"",size:"small",onClick:T,type:"danger",plain:"",icon:e.unref(j.Delete),tooltip:"清空选择",shortcut:"Alt+C"},null,8,["icon"]),a.multiple?(e.openBlock(),e.createBlock(e.unref(W),{key:0,circle:"",size:"small",onClick:U,type:"success",plain:"",icon:e.unref(j.Finished),tooltip:"全选(已加载的数据)",shortcut:"Ctrl+A"},null,8,["icon"])):e.createCommentVNode("",!0),e.createVNode(e.unref(W),{circle:"",size:"small",onClick:R,type:"warning",icon:e.unref(j.Setting),plain:"",tooltip:"将已选中用户保存为自定义组,方便以后选择使用"},null,8,["icon"])]),_:1}),e.createElementVNode("div",Ya," 弹出快捷键:"+e.toDisplayString(a.shortcut),1)]),e.createVNode(e.unref(g.ElInput),{modelValue:e.unref(p).name,"onUpdate:modelValue":F[0]||(F[0]=E=>e.unref(p).name=E),ref_key:"inputSearchText",ref:u,"suffix-icon":e.unref(j.Search),placeholder:"请输入拼音名、姓名或手机号查询",autocomplete:"off",onKeydown:[e.withKeys(Y,["enter"]),e.withKeys(e.withModifiers(Q,["stop","prevent"]),["up"]),e.withKeys(e.withModifiers(J,["stop","prevent"]),["down"])]},null,8,["modelValue","suffix-icon","onKeydown"]),e.createElementVNode("div",Xa,[e.createVNode(e.unref(g.ElText),null,{default:e.withCtx(()=>[e.unref(p).name&&e.unref(p).name.length>ie?(e.openBlock(),e.createBlock(e.unref(g.ElIcon),{key:0},{default:e.withCtx(()=>[e.createVNode(e.unref(j.Search))]),_:1})):(e.openBlock(),e.createBlock(e.unref(g.ElIcon),{key:1,color:"#FFBF29"},{default:e.withCtx(()=>[e.createVNode(e.unref(j.StarFilled))]),_:1})),e.createTextVNode(" "+e.toDisplayString(e.unref(p).name&&e.unref(p).name.length>ie?"查询结果":"常用人员"),1)]),_:1})]),e.createVNode(At,{ref_key:"userList",ref:A,total:e.unref(f).total,"empty-text":e.unref(p).name&&e.unref(p).name.length>ie?void 0:"无可选常用人员","page-size":e.unref(m).pageSize,loading:e.unref(w),users:l.value,height:300,modelValue:c.value,"onUpdate:modelValue":F[1]||(F[1]=E=>c.value=E),page:e.unref(m).currentPage,"onUpdate:page":F[2]||(F[2]=E=>e.unref(m).currentPage=E),multiple:a.multiple,onItemClicked:G,onArrowKeyDown:G},null,8,["total","empty-text","page-size","loading","users","modelValue","page","multiple"])])]),_:3},8,["visible","trigger"]),a.showUserTag?(e.openBlock(),e.createElementBlock("div",Za,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(z.value,E=>(e.openBlock(),e.createBlock(e.unref(ae),{key:E.id,"user-id":E.id,"full-name":E.fullName,closable:"","has-avatar":E.hasAvatar,onClosed:O},null,8,["user-id","full-name","has-avatar"]))),128)),P.value.length>a.maxShowCount?(e.openBlock(),e.createElementBlock("div",va," +"+e.toDisplayString(P.value.length-a.maxShowCount)+"人 ",1)):e.createCommentVNode("",!0),P.value.length===0?(e.openBlock(),e.createElementBlock("div",er,[e.createVNode(e.unref(g.ElText),{type:"info"},{default:e.withCtx(()=>F[5]||(F[5]=[e.createTextVNode(" <暂无选中人员>")])),_:1,__:[5]})])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createVNode(e.unref(De),{ref_key:"dialogUserSelector",ref:h,multiple:a.multiple,"realm-id":r.value,classificationLevel:a.classificationLevel,customFilter:a.customFilter,modelValue:c.value,"onUpdate:modelValue":F[4]||(F[4]=E=>c.value=E)},null,8,["multiple","realm-id","classificationLevel","customFilter","modelValue"])])),[[e.unref(ce),V,a.shortcut]])]),_:3},16,["max-height","height"]),e.createVNode(Ra,{ref_key:"dlgCustomGroupManager",ref:I,users:Array.isArray(c.value)?c.value:c.value?[c.value]:null},null,8,["users"])],64))}}),[["__scopeId","data-v-e16138f6"]]),tr=e.defineComponent({__name:"JaUserPicker",emits:["change"],setup(t,{emit:a}){const r=e.inject("aceFormModel"),o=e.inject("aceFormItemProp"),n=e.inject("aceFormValidator"),d=a;function s(c){n.removeFieldError(o),q(r.formData,o,l.value),d("change",c)}const l=e.ref(L(r.formData,o)??[]);return e.watch(()=>r.formData,()=>{l.value=L(r.formData,o)??[]},{deep:!0}),(c,u)=>(e.openBlock(),e.createBlock(Dt,e.mergeProps({modelValue:l.value,"onUpdate:modelValue":u[0]||(u[0]=i=>l.value=i),onChange:s},c.$attrs),{default:e.withCtx(()=>[e.renderSlot(c.$slots,"default")]),_:3},16,["modelValue"]))}}),St=M(Dt),$t=M(tr),Tt=M(At),Mt=M(e.defineComponent({__name:"JaTimePicker",emits:["change"],setup(t,{expose:a,emit:r}){const o=e.ref({}),n=e.inject("aceFormModel"),d=e.inject("aceFormItemProp"),s=e.inject("aceFormValidator"),l=r,c=e.ref({});function u(f){s.removeFieldError(d),q(n.formData,d,i.value),l("change",f)}const i=e.ref(L(n.formData,d));return e.watch(()=>n.formData,()=>{i.value=L(n.formData,d)},{deep:!0}),e.onMounted(()=>{Object.entries(o.value).filter(([p,m])=>m instanceof Function).forEach(([p,m])=>{c.value[p]=m})}),a(c.value),(f,p)=>(e.openBlock(),e.createBlock(e.unref(g.ElTimePicker),e.mergeProps({ref_key:"input",ref:o,modelValue:e.unref(n).formData[e.unref(d)],"onUpdate:modelValue":p[0]||(p[0]=m=>e.unref(n).formData[e.unref(d)]=m),onChange:u},f.$attrs),e.createSlots({_:2},[e.renderList(f.$slots,(m,w)=>({name:w,fn:e.withCtx(()=>[e.renderSlot(f.$slots,w)])}))]),1040,["modelValue"]))}})),xt=M(e.defineComponent({__name:"UserGroupPicker",props:e.mergeModels({realmId:{},appId:{},modelValue:{},size:{default:"default"},multiple:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["change"],["update:modelValue"]),setup(t,{emit:a}){const r=D.createAxiosWithoutCache(),o=D.useUserGroupApi(r),n=t,d=e.useModel(t,"modelValue"),s=a;if(n.multiple&&!Array.isArray(d.value))throw new Error("用户组选择器设置multiple为true,但是绑定的v-model值是单值");if(!n.multiple&&Array.isArray(d.value))throw new Error("用户组选择器未设置multiple为true,但是绑定的v-model值是数组");const l=e.reactive({groups:[]}),c=()=>{!n.realmId||!n.appId||o.getByAppIdAndRealm(n.appId,n.realmId??"0").then(i=>{l.groups=[...Z(i,"name")],!d.value&&!n.multiple&&(d.value=l.groups[0].id)})},u=i=>{s("change",Array.isArray(i)?l.groups.filter(f=>i.findIndex(p=>f.id===p)>=0):l.groups.find(f=>f.id===i))};return c(),e.watch(()=>n.realmId,()=>{c()}),e.watch(()=>n.appId,c),(i,f)=>(e.openBlock(),e.createBlock(e.unref(g.ElTreeSelect),e.mergeProps({style:{width:"100%"},data:l.groups,size:n.size,"node-key":"id","check-strictly":"","current-node-key":d.value,"highlight-current":"",modelValue:d.value,"onUpdate:modelValue":f[0]||(f[0]=p=>d.value=p),multiple:i.multiple,onChange:u},i.$attrs,{"collapse-tags":"","collapse-tags-tooltip":"","tag-type":"info",teleported:""}),null,16,["data","size","current-node-key","modelValue","multiple"]))}})),Ft=M(e.defineComponent({__name:"JaAutoComplete",emits:["change"],setup(t,{expose:a,emit:r}){const o=e.ref(),n=e.inject("aceFormModel"),d=e.inject("aceFormItemProp"),s=e.inject("aceFormValidator"),l=r;function c(i){s.removeFieldError(d),q(n.formData,d,u.value),l("change",i)}const u=e.ref(L(n.formData,d));return e.watch(()=>n.formData,()=>{u.value=L(n.formData,d)},{deep:!0}),a({elAutocomplete:o}),(i,f)=>(e.openBlock(),e.createBlock(e.unref(g.ElAutocomplete),e.mergeProps({ref_key:"input",ref:o,modelValue:u.value,"onUpdate:modelValue":f[0]||(f[0]=p=>u.value=p),onChange:c},i.$attrs),e.createSlots({_:2},[e.renderList(i.$slots,(p,m)=>({name:m,fn:e.withCtx(()=>[e.renderSlot(i.$slots,m)])}))]),1040,["modelValue"]))}})),Ut=M(e.defineComponent({__name:"JaRadioGroup",emits:["change"],setup(t,{expose:a,emit:r}){const o=e.ref({}),n=e.inject("aceFormModel"),d=e.inject("aceFormItemProp"),s=e.inject("aceFormValidator"),l=r;function c(i){s.removeFieldError(d),q(n.formData,d,u.value),l("change",i)}const u=e.ref(L(n.formData,d));return e.watch(()=>n.formData,()=>{u.value=L(n.formData,d)},{deep:!0}),a({focus:()=>o.value.focus(),blur:()=>o.value.blur(),elRadioGroup:o}),(i,f)=>(e.openBlock(),e.createBlock(e.unref(g.ElRadioGroup),e.mergeProps({ref_key:"input",ref:o,modelValue:u.value,"onUpdate:modelValue":f[0]||(f[0]=p=>u.value=p),onChange:c},i.$attrs),e.createSlots({_:2},[e.renderList(i.$slots,(p,m)=>({name:m,fn:e.withCtx(()=>[e.renderSlot(i.$slots,m)])}))]),1040,["modelValue"]))}})),or=e.defineComponent({__name:"baseRolePicker",props:e.mergeModels({appName:{}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["change"],["update:modelValue"]),setup(t,{expose:a,emit:r}){const o=D.createAxiosWithoutCache(),n=D.useRoleApi(o),d=D.useAppApi(o),s=t,l=e.ref(),c=e.ref([]),u=async()=>{s.appName&&(l.value=await d.getByName(s.appName),c.value=(await n.getAllRole(l.value.id)).map(h=>(h.name=h.appName+"."+h.name,h)),i.value?p.value=y(i.value,c.value):p.value=void 0)},i=e.useModel(t,"modelValue"),f=r,p=e.ref();e.watch(()=>s.appName,u),u();const m={label:h=>h.caption?h.caption:h.name,isLeaf:h=>!h.hasChildren},w=e.ref();function C(h){p.value=y(h,c.value),f("change",h)}function y(h,I){for(let A=0;A<I.length;A++){if(I[A].name===h)return I[A];const k=I[A].children;if(k){const _=y(h,k);if(_)return _}}}return a({loadData:u,currentRole:p,elTreeSelect:w}),(h,I)=>(e.openBlock(),e.createBlock(e.unref(g.ElTreeSelect),e.mergeProps({ref_key:"select",ref:w,data:c.value,"node-key":"name","current-node-key":i.value,"value-key":"name",props:m},h.$attrs,{clearable:"","check-strictly":"","highlight-current":!0,onChange:C,modelValue:i.value,"onUpdate:modelValue":I[0]||(I[0]=A=>i.value=A)}),e.createSlots({_:2},[e.renderList(h.$slots,(A,k)=>({name:k,fn:e.withCtx(()=>[e.renderSlot(h.$slots,k)])}))]),1040,["data","current-node-key","modelValue"]))}});let te=[];async function me(){const t=D.createAxiosWithoutCache(),a=D.useAppApi(t);return te.length===0&&(te=await a.getAll(!0)),{async getById(r){let o=te.find(n=>n.id===r);return o||(o=await a.getById(r),o&&te.push(o)),o},async getByName(r){let o=te.find(n=>n.name===r);return o||(o=await a.getByName(r),o&&te.push(o)),o}}}const ar=e.defineComponent({__name:"RoleEditor",props:e.mergeModels({appName:{}},{modelValue:{type:Boolean,default:!1},modelModifiers:{}}),emits:e.mergeModels(["success"],["update:modelValue"]),setup(t,{emit:a}){const r=e.useModel(t,"modelValue"),o=t,n=a,d={hasChildren:!1,parentId:"0",releaseSource:"",app:{id:"0"},caption:"",compositeRoles:[],dataVersion:0,description:"",id:"0",name:""},s=e.ref({formData:{...d}}),l=D.createAxiosWithoutCache(),c=Le(Object.keys(d),l),u=D.useLoading(l),i=D.useRoleApi(l),f=e.ref(),p=e.ref(),m=e.ref();async function w(){if(s.value.formData={...d},!o.appName)throw new Error("rolePicker组件的appName属性不能为空");m.value=await(await me()).getByName(o.appName)}async function C(){var I,A;if(!o.appName)return;const y=s.value.formData,h=(I=p.value)==null?void 0:I.currentRole;(A=f.value)==null||A.validate(()=>i.create({addTo:h?{id:h.id,name:h.name,app:{id:m.value.id}}:void 0,app:{id:m.value.id},description:y.description,name:y.name,caption:y.caption}).then(k=>{n("success",k),r.value=!1}))}return(y,h)=>{const I=e.resolveComponent("ja-input-i18n-raw"),A=e.resolveComponent("ja-form");return e.openBlock(),e.createBlock(e.unref(g.ElDrawer),{"destroy-on-close":"","append-to-body":"",title:"新建角色",modelValue:r.value,"onUpdate:modelValue":h[2]||(h[2]=k=>r.value=k),onOpen:w},{footer:e.withCtx(()=>[e.createVNode(e.unref(W),{size:"default",type:"primary",onClick:C,loading:e.unref(u),shortcut:"Alt+Enter"},{default:e.withCtx(()=>h[3]||(h[3]=[e.createTextVNode("确定 ")])),_:1,__:[3]},8,["loading"]),e.createVNode(e.unref(g.ElButton),{size:"default",onClick:h[1]||(h[1]=k=>r.value=!1)},{default:e.withCtx(()=>h[4]||(h[4]=[e.createTextVNode("取消")])),_:1,__:[4]})]),default:e.withCtx(()=>[e.createVNode(A,{ref_key:"formRef",ref:f,model:s.value,validator:e.unref(c)},{default:e.withCtx(()=>[e.createVNode(e.unref(v),{label:"角色名称",prop:"name",required:""},{default:e.withCtx(()=>[e.withDirectives(e.createVNode(e.unref(se),null,null,512),[[e.unref(xe)]])]),_:1}),e.createVNode(e.unref(v),{label:"上级角色",prop:"none"},{default:e.withCtx(()=>[e.createVNode(e.unref(he),{ref_key:"rolePicker",ref:p,placeholder:"请选择上级角色,置空表示添加顶层角色","app-name":o.appName},null,8,["app-name"])]),_:1}),e.createVNode(e.unref(v),{label:"角色标题",prop:"caption",required:""},{default:e.withCtx(()=>{var k;return[e.createVNode(I,{"app-id":(k=m.value)==null?void 0:k.id,size:"small",modelValue:s.value.formData.caption,"onUpdate:modelValue":h[0]||(h[0]=_=>s.value.formData.caption=_)},null,8,["app-id","modelValue"])]}),_:1}),e.createVNode(e.unref(v),{label:"角色说明",prop:"description"},{default:e.withCtx(()=>[e.createVNode(e.unref(se),{type:"textarea"})]),_:1})]),_:1},8,["model","validator"])]),_:1},8,["modelValue"])}}}),rr={class:"ja-role-picker"},Lt=K(e.defineComponent({__name:"RolePickerRaw",props:e.mergeModels({appName:{}},{modelValue:{required:!1},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const a=t,r=e.useModel(t,"modelValue");function o(l){var c;r.value=l.name,(c=n.value)==null||c.loadData()}const n=e.ref(),d=e.ref(!1);function s(){d.value=!0}return(l,c)=>(e.openBlock(),e.createElementBlock("div",rr,[e.createVNode(e.unref(he),e.mergeProps({ref_key:"picker",ref:n,"app-name":a.appName,style:{flex:"auto"}},l.$attrs,{modelValue:r.value,"onUpdate:modelValue":c[1]||(c[1]=u=>r.value=u)}),e.createSlots({footer:e.withCtx(()=>[e.createVNode(e.unref(W),{link:"",type:"primary",icon:e.unref(j.Plus),shortcut:"Alt+I",style:{width:"100%"},onClick:s},{default:e.withCtx(()=>c[2]||(c[2]=[e.createTextVNode(" 新建角色(Alt+I) ")])),_:1,__:[2]},8,["icon"]),e.createVNode(ar,{modelValue:d.value,"onUpdate:modelValue":c[0]||(c[0]=u=>d.value=u),"app-name":a.appName,onSuccess:o},null,8,["modelValue","app-name"])]),_:2},[e.renderList(l.$slots,(u,i)=>({name:i,fn:e.withCtx(()=>[e.renderSlot(l.$slots,i,{},void 0,!0)])}))]),1040,["app-name","modelValue"])]))}}),[["__scopeId","data-v-dd3083a0"]]),nr=e.defineComponent({__name:"RolePicker",props:{appName:{}},emits:["change"],setup(t,{emit:a}){const r=t,o=e.ref(),n=e.inject("aceFormModel"),d=e.inject("aceFormItemProp"),s=e.inject("aceFormValidator"),l=a;function c(i){s.removeFieldError(d),q(n.formData,d,u.value),l("change",i)}const u=e.ref(L(n.formData,d));return e.watch(()=>n.formData,()=>{u.value=L(n.formData,d)},{deep:!0}),(i,f)=>(e.openBlock(),e.createBlock(Lt,e.mergeProps({ref_key:"picker",ref:o,"app-name":r.appName,modelValue:u.value,"onUpdate:modelValue":f[0]||(f[0]=p=>u.value=p),onChange:c},i.$attrs),e.createSlots({_:2},[e.renderList(i.$slots,(p,m)=>({name:m,fn:e.withCtx(()=>[e.renderSlot(i.$slots,m)])}))]),1040,["app-name","modelValue"]))}}),he=M(or),zt=M(nr),jt=M(Lt),Rt=e.defineComponent({__name:"ChannelPicker",props:e.mergeModels({appName:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const a=D.createAxiosWithoutCache(),r=D.useChannelApi(a),o=t,n=e.ref(),d=e.ref(),s=e.useModel(t,"modelValue");e.onBeforeMount(()=>{l()});async function l(){console.log("load channels of app "+o.appName),o.appName&&(n.value=await r.getAll(o.appName),d.value=n.value)}function c(u){var i;d.value=((i=n.value)==null?void 0:i.filter(f=>f.name.indexOf(u)>-1))??[]}return e.watch(()=>o.appName,l),(u,i)=>(e.openBlock(),e.createBlock(e.unref(g.ElSelect),e.mergeProps({filterable:"","filter-method":c,"value-key":"id",modelValue:s.value,"onUpdate:modelValue":i[0]||(i[0]=f=>s.value=f)},u.$attrs),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,f=>(e.openBlock(),e.createBlock(e.unref(g.ElOption),{key:f.id,label:f.name,value:f},null,8,["label","value"]))),128))]),_:1},16,["modelValue"]))}}),Jt=M(e.defineComponent({__name:"JaChannelPicker",emits:["change"],setup(t,{emit:a}){const r=e.inject("aceFormModel"),o=e.inject("aceFormItemProp"),n=e.inject("aceFormValidator"),d=a;function s(c){n.removeFieldError(o),q(r.formData,o,l.value),d("change",c)}const l=e.ref(L(r.formData,o));return e.watch(()=>r.formData,()=>{l.value=L(r.formData,o)},{deep:!0}),(c,u)=>(e.openBlock(),e.createBlock(Rt,e.mergeProps({modelValue:l.value,"onUpdate:modelValue":u[0]||(u[0]=i=>l.value=i),onChange:s},c.$attrs),null,16,["modelValue"]))}})),Pt=M(Rt),lr={class:"ja-property-picker__dropdown"},ir={key:0},sr=["onMouseenter","onClick"],cr={key:0,class:"entity-type"},dr={key:1},Ot=K(e.defineComponent({__name:"PropertyPicker",props:e.mergeModels({entityId:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const a=t;let r;const o=e.useModel(t,"modelValue"),n=e.ref([]),d=D.createAxiosWithoutCache(),s=D.useEntityApi(d),l=e.ref(),c={},u=e.ref(0),i=D.useLoading(d),f=e.ref(!1),p=e.ref(!1),m=e.ref(),w=e.ref(),C=e.ref("");let y=e.ref(!1);async function h(){if(r||(r=a.entityId),r){let B=c[r];B||(B=await s.getProperties(r),c[r]=B),l.value=B}else l.value=[]}function I(B){let x;B?x=B.join("."):x="",x!==o.value&&(o.value=x),e.nextTick(async()=>{var N;r=a.entityId,await h();let z=c[r];if(z){for(let F=0;F<B.length;F++){const E=B[F];let $=z.find(H=>H.name===E);$&&$.entityType?(r=$.entityType.id,F<B.length-1?(await h(),z=c[r]):$.dataType==="ENTITY"&&$.collectionType==="NONE"?(r=$.entityType.id,h()):(r="-1",h())):(r="-1",h())}(N=m.value)==null||N.focus()}})}function A(B){return B.caption&&B.caption.length>0?B.name+"("+B.caption+")":B.name}function k(B){u.value=B}function _(B){return u.value===B?"active":""}function S(B){var x,z;(x=n.value)==null||x.push(B.name),C.value="",(z=m.value)==null||z.focus()}function R(B){var x;(x=n.value)==null||x.pop()}function O(){var z;if(!r)return;const B=c[r];if(!B)return;const x=(z=m.value)==null?void 0:z.value;x&&x.length>0?l.value=[...B].filter(N=>N.name.toLowerCase().indexOf(x.toLowerCase())>-1):l.value=B,G()}function J(){l.value&&(u.value<l.value.length-1&&u.value++,G())}function Q(){u.value>0&&u.value--,G()}function Y(){if(!l.value)return;const B=l.value[u.value];B&&S(B)}function V(){var B;C.value&&C.value.length>0||(B=n.value)==null||B.pop()}function U(B){B&&e.nextTick(()=>{var x;(x=m.value)==null||x.focus()}),y.value=B}const T=e.computed(()=>{var B;return n.value&&n.value.length>0?(B=n.value)==null?void 0:B.join("."):"请选择属性"}),G=()=>{e.nextTick(()=>{var z,N,F;const B=(z=w.value)==null?void 0:z.$refs.wrapRef,x=B==null?void 0:B.querySelectorAll("li")[u.value];if(x&&B){const E=x.offsetTop,$=x.offsetTop+x.offsetHeight,H=B.scrollTop,Yt=B.scrollTop+B.clientHeight;$>Yt?(N=w.value)==null||N.scrollTo(0,$-B.clientHeight+x.offsetHeight-38):E<H&&((F=w.value)==null||F.scrollTo(0,E))}})};e.watch(()=>a.entityId,h),e.watch(n,()=>I(n.value),{deep:!0});function P(){if(o.value&&o.value.length>0){const B=o.value.split(".");B.length!==n.value.length&&(n.value=B)}else n.value.length>0&&(n.value=[])}return e.watch(o,()=>{P()}),o.value&&o.value.length>0?P():h(),e.watch(l,()=>{u.value=0,G()}),(B,x)=>(e.openBlock(),e.createBlock(e.unref(g.ElDropdown),{onVisibleChange:U},{dropdown:e.withCtx(()=>[e.createElementVNode("div",lr,[e.createElementVNode("div",{class:e.normalizeClass(["el-input-tag el-input-tag--small el-input-tag__wrapper",{"is-hovering":f.value,"is-focused":p.value}]),onMouseenter:x[3]||(x[3]=z=>f.value=!0),onMouseleave:x[4]||(x[4]=z=>f.value=!1)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,z=>(e.openBlock(),e.createBlock(e.unref(g.ElTag),{id:z,onClose:N=>R(),closable:""},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(z),1)]),_:2},1032,["id","onClose"]))),256)),e.withDirectives(e.createElementVNode("input",{ref_key:"filterInput",ref:m,type:"text",style:{flex:"auto"},class:"el-input-tag__input","onUpdate:modelValue":x[0]||(x[0]=z=>C.value=z),placeholder:"属性名过滤",onFocus:x[1]||(x[1]=z=>p.value=!0),onBlur:x[2]||(x[2]=z=>p.value=!1),onKeydown:[e.withKeys(V,["delete"]),e.withKeys(J,["down"]),e.withKeys(Q,["up"]),e.withKeys(Y,["enter"])],onInput:O},null,544),[[e.vModelText,C.value]])],34),e.withDirectives((e.openBlock(),e.createBlock(e.unref(g.ElScrollbar),{height:"300px",always:"",ref_key:"scrollbar",ref:w},{default:e.withCtx(()=>{var z;return[((z=l.value)==null?void 0:z.length)??!1?(e.openBlock(),e.createElementBlock("ul",ir,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,(N,F)=>(e.openBlock(),e.createElementBlock("li",{key:N.id,onMouseenter:E=>k(F),onClick:E=>S(N),class:e.normalizeClass(_(F))},[N.dataType==="ENTITY"?(e.openBlock(),e.createElementBlock("span",cr,e.toDisplayString(A(N)),1)):(e.openBlock(),e.createElementBlock("span",dr,e.toDisplayString(A(N)),1))],42,sr))),128))])):(e.openBlock(),e.createBlock(e.unref(g.ElEmpty),{key:1,description:"无可选属性"}))]}),_:1})),[[e.unref(g.vLoading),e.unref(i)]])])]),default:e.withCtx(()=>[e.createVNode(e.unref(g.ElTag),{type:"primary"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(T.value)+" ",1),e.unref(y)?(e.openBlock(),e.createBlock(e.unref(g.ElIcon),{key:0},{default:e.withCtx(()=>[e.createVNode(e.unref(j.ArrowUp))]),_:1})):(e.openBlock(),e.createBlock(e.unref(g.ElIcon),{key:1},{default:e.withCtx(()=>[e.createVNode(e.unref(j.ArrowDown))]),_:1}))]),_:1})]),_:1}))}}),[["__scopeId","data-v-f2487dc4"]]),Gt=M(e.defineComponent({__name:"JaPropertyPicker",emits:["change"],setup(t,{emit:a}){const r=e.inject("aceFormModel"),o=e.inject("aceFormItemProp"),n=e.inject("aceFormValidator"),d=a;function s(c){n.removeFieldError(o),q(r.formData,o,l.value),d("change",c)}const l=e.ref(L(r.formData,o)??"");return e.watch(()=>r.formData,()=>{l.value=L(r.formData,o)??""},{deep:!0}),(c,u)=>(e.openBlock(),e.createBlock(Ot,e.mergeProps({modelValue:l.value,"onUpdate:modelValue":u[0]||(u[0]=i=>l.value=i),onChange:s},c.$attrs),null,16,["modelValue"]))}})),qt=M(Ot),fr=e.defineComponent({__name:"I18nBundleEditor",props:e.mergeModels({appId:{},preKey:{}},{modelValue:{type:Boolean,default:!1,required:!0},modelModifiers:{}}),emits:e.mergeModels(["success"],["update:modelValue"]),async setup(t,{emit:a}){let r,o;const n=e.useModel(t,"modelValue"),d=t,s=D.createAxiosWithoutCache(),l=D.useAppMessageApi(s),c=e.ref(),u=e.ref(""),i=e.ref({}),f=a,p=([r,o]=e.withAsyncContext(()=>me()),r=await r,o(),r);function m(){C(),u.value=d.preKey??"",i.value={}}async function w(){const y={key:u.value,messages:i.value,appInstance:{id:d.appId}};await l.createBundle(y),n.value=!1,f("success",u.value)}async function C(){c.value=await p.getById(d.appId)}return e.watch(()=>d.appId,async()=>{await C()}),(y,h)=>{const I=e.resolveDirective("focus");return e.openBlock(),e.createBlock(e.unref(g.ElDrawer),{"destroy-on-close":"","append-to-body":"",modelValue:n.value,"onUpdate:modelValue":h[2]||(h[2]=A=>n.value=A),title:"创建国际化文本",onOpen:m},{footer:e.withCtx(()=>[e.createVNode(e.unref(W),{size:"default",shortcut:"Alt+Enter",type:"primary",onClick:w},{default:e.withCtx(()=>h[3]||(h[3]=[e.createTextVNode("确定 ")])),_:1,__:[3]}),e.createVNode(e.unref(g.ElButton),{size:"default",plain:"",onClick:h[1]||(h[1]=A=>n.value=!1)},{default:e.withCtx(()=>h[4]||(h[4]=[e.createTextVNode("取消")])),_:1,__:[4]})]),default:e.withCtx(()=>[e.createVNode(e.unref(g.ElForm),{"label-position":"top",size:"default"},{default:e.withCtx(()=>{var A;return[e.createVNode(e.unref(g.ElFormItem),{label:"文本键",required:""},{default:e.withCtx(()=>[e.withDirectives(e.createVNode(e.unref(g.ElInput),{modelValue:u.value,"onUpdate:modelValue":h[0]||(h[0]=k=>u.value=k)},null,8,["modelValue"]),[[I]])]),_:1}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList((A=c.value)==null?void 0:A.supportedLocales,k=>(e.openBlock(),e.createBlock(e.unref(g.ElFormItem),{key:k,label:k},{default:e.withCtx(()=>[e.createVNode(e.unref(g.ElInput),{type:"textarea",rows:4,modelValue:i.value[k],"onUpdate:modelValue":_=>i.value[k]=_},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1032,["label"]))),128))]}),_:1})]),_:1},8,["modelValue"])}}}),Wt=M(e.defineComponent({__name:"InputI18n",props:e.mergeModels({appId:{},size:{default:"default"},textarea:{type:Boolean,default:!1},disabled:{type:Boolean}},{modelValue:{default:""},modelModifiers:{}}),emits:e.mergeModels(["change","focus","blur"],["update:modelValue"]),async setup(t,{expose:a,emit:r}){let o,n;const d=t,s=e.useModel(t,"modelValue"),l=D.createAxiosWithoutCache(),c=D.useAppMessageApi(l),u=D.useLoginUser().locale,i=e.ref(),f=e.ref(!1),p=e.ref(!1),m=e.ref(),w=e.ref(""),C=([o,n]=e.withAsyncContext(()=>me()),o=await o,n(),o),y=e.ref(""),h=e.ref(""),I=e.ref(),A=r,k=Ee(S,500);let _;async function S(V){if(V||(V=s.value),!d.appId)return;const U=await C.getById(d.appId);if(w.value=U.name,!V||!w.value){h.value="";return}h.value=V;let T=V;V&&V.length>0&&(T=za(T),T.startsWith("{")&&T.endsWith("}")&&(T=T.substring(1,T.length-1)));const P=(await c.getByKey(w.value,T,{cancelDuplicatedRequest:!1})).find(B=>B.locale===u);P&&(h.value=P.message)}async function R(V){y.value=V,i.value=await c.searchKeys(w.value,V)}async function O(){var V;f.value=!0,await e.nextTick(),A("focus"),(V=m.value)==null||V.focus()}function J(){_=setTimeout(()=>{f.value=!1},200),A("blur")}e.onUnmounted(()=>{k.cancel(),_&&clearTimeout(_)}),e.watch(s,()=>{k()},{deep:!0,immediate:!0});function Q(V){A("change",V)}async function Y(V){await R(y.value),s.value="{"+V+"}",I.value.focus}return a({focus(){I==null||I.value.focus()},blur(){m==null||m.value.blur()}}),(V,U)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.withDirectives(e.createVNode(e.unref(g.ElInput),{ref_key:"selectI18n",ref:I,onFocus:O,modelValue:h.value,"onUpdate:modelValue":U[0]||(U[0]=T=>h.value=T),size:V.size,disabled:V.disabled,type:V.textarea?"textarea":void 0},null,8,["modelValue","size","disabled","type"]),[[e.vShow,!f.value]]),e.withDirectives(e.createVNode(e.unref(g.ElSelect),{ref_key:"select",ref:m,filterable:"",remote:"","remote-method":R,disabled:V.disabled,"default-first-option":"","remote-show-suffix":"",onChange:Q,size:V.size,"allow-create":"",clearable:"",onBlur:J,modelValue:s.value,"onUpdate:modelValue":U[2]||(U[2]=T=>s.value=T)},{footer:e.withCtx(()=>[e.createVNode(e.unref(W),{link:"",style:{width:"100%"},type:"primary",onClick:U[1]||(U[1]=T=>p.value=!0),shortcut:"Alt+I"},{default:e.withCtx(()=>U[4]||(U[4]=[e.createTextVNode(" 新建国际化文本(Alt+I) ")])),_:1,__:[4]})]),default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,T=>(e.openBlock(),e.createBlock(e.unref(g.ElOption),{key:T,value:"{"+T+"}",label:"{"+T+"}"},null,8,["value","label"]))),128))]),_:1},8,["disabled","size","modelValue"]),[[e.vShow,f.value]]),e.createVNode(fr,{"app-id":V.appId,"pre-key":y.value,modelValue:p.value,"onUpdate:modelValue":U[3]||(U[3]=T=>p.value=T),onSuccess:Y},null,8,["app-id","pre-key","modelValue"])],64))}})),Ht=M(e.defineComponent({__name:"JaCheckboxGroup",emits:["change"],setup(t,{expose:a,emit:r}){const o=e.ref({}),n=e.inject("aceFormModel"),d=e.inject("aceFormItemProp"),s=e.inject("aceFormValidator"),l=r;function c(i){s.removeFieldError(d),q(n.formData,d,u.value),l("change",i)}const u=e.ref(L(n.formData,d));return e.watch(()=>n.formData,()=>{u.value=L(n.formData,d)},{deep:!0}),a({focus:()=>o.value.focus(),blur:()=>o.value.blur(),elCheckboxGroup:o}),(i,f)=>(e.openBlock(),e.createBlock(e.unref(g.ElCheckboxGroup),e.mergeProps({ref_key:"input",ref:o,modelValue:u.value,"onUpdate:modelValue":f[0]||(f[0]=p=>u.value=p),onChange:c},i.$attrs),e.createSlots({_:2},[e.renderList(i.$slots,(p,m)=>({name:m,fn:e.withCtx(()=>[e.renderSlot(i.$slots,m)])}))]),1040,["modelValue"]))}})),Kt=M(e.defineComponent({__name:"EnumPicker",props:e.mergeModels({clearable:{type:Boolean,default:!0},filterable:{type:Boolean,default:!0},keyField:{default:"value"},multiple:{type:Boolean,default:!1},name:{},serviceName:{}},{modelValue:{default:()=>[]},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const a=t,r=e.ref([]),o=e.ref(!1),n=e.useModel(t,"modelValue"),d=D.createAxiosWithoutCache(),s=D.useEnumApi(d);async function l(){!a.name||!a.serviceName||(o.value=!0,s.queryByName(a.serviceName,a.name).then(i=>{r.value=i.values}).finally(()=>{o.value=!1}))}const c=e.computed(()=>a.multiple?n.value.map(i=>i[a.keyField])||[]:n.value[0]!==void 0?n.value[0][a.keyField]:""),u=i=>{if(typeof i=="string"){const f=r.value.find(p=>p[a.keyField]===i);n.value=f?[f]:[]}else n.value=r.value.filter(f=>i.includes(f[a.keyField]))};return l(),e.watch(()=>a.name,l),e.watch(()=>a.serviceName,l),(i,f)=>{const p=e.resolveDirective("loading");return e.withDirectives((e.openBlock(),e.createBlock(e.unref(g.ElSelect),{"model-value":c.value,filterable:a.filterable,multiple:a.multiple,clearable:a.clearable,onChange:u},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,m=>(e.openBlock(),e.createBlock(e.unref(g.ElOption),{key:m.id,value:m[a.keyField],label:m.text},null,8,["value","label"]))),128))]),_:1},8,["model-value","filterable","multiple","clearable"])),[[p,o.value]])}}})),ur=Object.freeze(Object.defineProperty({__proto__:null,AceTip:Ue,AceUpload:Fe,JaAutocomplete:Ft,JaAvatar:de,JaBaseRolePicker:he,JaButton:W,JaChannelPicker:Jt,JaChannelPickerRaw:Pt,JaCheckbox:je,JaCheckboxGroup:Ht,JaDatePicker:Pe,JaDepartmentPicker:st,JaDepartmentTree:Ne,JaDropdownButton:He,JaEnumList:ot,JaEnumListRaw:at,JaEnumPicker:Kt,JaForm:ze,JaFormItem:v,JaInput:se,JaInputI18nRaw:Wt,JaInputNumber:Re,JaMapItemList:nt,JaMapItemListRaw:lt,JaNumberList:ve,JaNumberListRaw:et,JaPropertyPicker:Gt,JaPropertyPickerRaw:qt,JaRadioGroup:Ut,JaRolePicker:zt,JaRolePickerRaw:jt,JaScrollbar:Se,JaSelect:Je,JaStringList:Ye,JaStringListRaw:Xe,JaSwitch:Ke,JaTimePicker:Mt,JaUserGroupPicker:xt,JaUserGroupTree:Ae,JaUserInfoTag:ae,JaUserList:Tt,JaUserPicker:$t,JaUserPickerRaw:St,JaUserSelectDialog:De,getAvatarToken:Ve,updateAvatarToken:dt},Symbol.toStringTag,{value:"Module"}));function Qt(t){t.directive("focus",xe),t.directive("shortcut",ce),t.directive("auth",We)}const pr=[{text:"近一天",value:()=>{const t=new Date,a=new Date;return a.setDate(a.getDate()-1),[a,t]}},{text:"近三天",value:()=>{const t=new Date,a=new Date;return a.setDate(a.getDate()-3),[a,t]}},{text:"近一周",value:()=>{const t=new Date,a=new Date;return a.setDate(a.getDate()-7),[a,t]}},{text:"近一月",value:()=>{const t=new Date,a=new Date;return a.setMonth(a.getMonth()-1),[a,t]}},{text:"近三月",value:()=>{const t=new Date,a=new Date;return a.setMonth(a.getMonth()-3),[a,t]}},{text:"近半年",value:()=>{const t=new Date,a=new Date;return a.setMonth(a.getMonth()-6),[a,t]}},{text:"近一年",value:()=>{const t=new Date,a=new Date;return a.setFullYear(a.getFullYear()-1),[a,t]}}];function mr(t){if(!t)throw new Error("无法获取到应用名称,请确保VITE_APP_NAME环境变量已配置或者在创建时传入appName参数。");if(!window.microApp)throw new Error("无法获取到window.microApp。");const a=e.ref(new Set),r=(u,i=!0,f=!0)=>{const p={sender:t,timestamp:Date.now(),payload:u};i?window.microApp.forceDispatch(p):window.microApp.dispatch(p,m=>{console.log("消息是否有返回值",m)}),f&&s()},o=(u,i=!0)=>{const f={sender:"app-demo",timestamp:Date.now(),payload:u};window.microApp.setGlobalData(f),i&&s()},n=(u,i=!0)=>{window.microApp.addGlobalDataListener(u,i)},d=()=>window.microApp.getData(),s=()=>{window.microApp.clearData()},l=(u,i=!1)=>{window.microApp.addDataListener(u,i),a.value.add(u)},c=u=>{window.microApp.removeDataListener(u),a.value.delete(u)};return e.onUnmounted(()=>{window.microApp.clearDataListener(),a.value.clear()}),{sendMessage:r,onMessage:l,clearCache:s,getBaseAppData:d,offMessage:c,listeners:a,sendGlobalMessage:o,onGlobalMessage:n}}const X=e.ref();async function ge(t){if(!X.value){t||(t="ace-global-app");const a=D.createAxiosWithoutCache(),r=D.useAppServiceApi(a);X.value=await r.getClassificationLevels(t)}}async function hr(t){return await ge(t),X.value.system}async function gr(t){return await ge(t),X.value.user}async function yr(t){await ge(t);const a=new Map;for(let r=0;r<X.value.user.length;r++){const o=X.value.user[r];a.set(o.value,o.label)}return a}async function wr(t){await ge(t);const a=new Map;for(let r=0;r<X.value.system.length;r++){const o=X.value.system[r];a.set(o.value,o.label)}return a}const kr={install(t){for(const[a,r]of Object.entries(ur))t.component(a,r);Qt(t)}};b.AceTip=Ue,b.AceUpload=Fe,b.AceVueUI=kr,b.JaAutocomplete=Ft,b.JaAvatar=de,b.JaBaseRolePicker=he,b.JaButton=W,b.JaChannelPicker=Jt,b.JaChannelPickerRaw=Pt,b.JaCheckbox=je,b.JaCheckboxGroup=Ht,b.JaDatePicker=Pe,b.JaDepartmentPicker=st,b.JaDepartmentTree=Ne,b.JaDropdownButton=He,b.JaEnumList=ot,b.JaEnumListRaw=at,b.JaEnumPicker=Kt,b.JaForm=ze,b.JaFormItem=v,b.JaInput=se,b.JaInputI18nRaw=Wt,b.JaInputNumber=Re,b.JaMapItemList=nt,b.JaMapItemListRaw=lt,b.JaNumberList=ve,b.JaNumberListRaw=et,b.JaPropertyPicker=Gt,b.JaPropertyPickerRaw=qt,b.JaRadioGroup=Ut,b.JaRolePicker=zt,b.JaRolePickerRaw=jt,b.JaScrollbar=Se,b.JaSelect=Je,b.JaStringList=Ye,b.JaStringListRaw=Xe,b.JaSwitch=Ke,b.JaTimePicker=Mt,b.JaUserGroupPicker=xt,b.JaUserGroupTree=Ae,b.JaUserInfoTag=ae,b.JaUserList=Tt,b.JaUserPicker=$t,b.JaUserPickerRaw=St,b.JaUserSelectDialog=De,b.SCROLL_BAR_WRAPPED_INJECT_KEY=Ie,b.getAvatarToken=Ve,b.installDirectives=Qt,b.shortcuts=pr,b.updateAvatarToken=dt,b.useAppInstances=me,b.useBackendValidations=Le,b.useBridge=mr,b.useRealms=pe,b.useSystemClassificationLevelMap=wr,b.useSystemClassificationLevels=hr,b.useTreeData=Z,b.useUserClassificationLevel=gr,b.useUserClassificationLevelMap=yr,b.useUserRefQuery=Be,Object.defineProperty(b,Symbol.toStringTag,{value:"Module"})});