@farris/ui-vue 1.6.5-beta.7 → 1.6.5

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 (192) hide show
  1. package/components/accordion/index.esm.js +65 -65
  2. package/components/accordion/index.umd.cjs +1 -1
  3. package/components/avatar/index.esm.js +360 -361
  4. package/components/avatar/index.umd.cjs +1 -1
  5. package/components/button-edit/index.esm.js +524 -520
  6. package/components/button-edit/index.umd.cjs +1 -1
  7. package/components/calendar/index.esm.js +134 -134
  8. package/components/calendar/index.umd.cjs +1 -1
  9. package/components/capsule/index.esm.js +192 -192
  10. package/components/capsule/index.umd.cjs +1 -1
  11. package/components/code-editor/index.esm.js +8 -8
  12. package/components/code-editor/index.umd.cjs +3 -3
  13. package/components/collection-property-editor/index.esm.js +72 -72
  14. package/components/collection-property-editor/index.umd.cjs +1 -1
  15. package/components/color-picker/index.esm.js +291 -289
  16. package/components/color-picker/index.umd.cjs +1 -1
  17. package/components/combo-list/index.esm.js +190 -181
  18. package/components/combo-list/index.umd.cjs +1 -1
  19. package/components/combo-tree/index.esm.js +113 -112
  20. package/components/combo-tree/index.umd.cjs +1 -1
  21. package/components/common/index.esm.js +3 -1
  22. package/components/common/index.umd.cjs +1 -1
  23. package/components/component/index.esm.js +309 -309
  24. package/components/component/index.umd.cjs +1 -1
  25. package/components/condition/index.esm.js +1125 -1124
  26. package/components/condition/index.umd.cjs +1 -1
  27. package/components/content-container/index.esm.js +472 -472
  28. package/components/content-container/index.umd.cjs +1 -1
  29. package/components/data-grid/index.esm.js +99 -99
  30. package/components/data-grid/index.umd.cjs +1 -1
  31. package/components/data-view/index.esm.js +3387 -3321
  32. package/components/data-view/index.umd.cjs +1 -1
  33. package/components/date-picker/index.esm.js +1604 -1601
  34. package/components/date-picker/index.umd.cjs +1 -1
  35. package/components/designer-canvas/index.esm.js +1082 -1079
  36. package/components/designer-canvas/index.umd.cjs +1 -1
  37. package/components/discussion-editor/index.esm.js +973 -1040
  38. package/components/discussion-editor/index.umd.cjs +6 -6
  39. package/components/dropdown/index.esm.js +335 -330
  40. package/components/dropdown/index.umd.cjs +2 -2
  41. package/components/dynamic-form/index.esm.js +177 -177
  42. package/components/dynamic-form/index.umd.cjs +1 -1
  43. package/components/dynamic-resolver/index.esm.js +6 -6
  44. package/components/dynamic-resolver/index.umd.cjs +1 -1
  45. package/components/dynamic-view/index.esm.js +344 -344
  46. package/components/dynamic-view/index.umd.cjs +1 -1
  47. package/components/events-editor/index.esm.js +644 -644
  48. package/components/events-editor/index.umd.cjs +3 -3
  49. package/components/expression-editor/index.esm.js +1773 -1760
  50. package/components/expression-editor/index.umd.cjs +4 -4
  51. package/components/fieldset/index.esm.js +55 -55
  52. package/components/fieldset/index.umd.cjs +1 -1
  53. package/components/filter-bar/index.esm.js +879 -869
  54. package/components/filter-bar/index.umd.cjs +1 -1
  55. package/components/filter-condition-editor/index.esm.js +1091 -1077
  56. package/components/filter-condition-editor/index.umd.cjs +3 -3
  57. package/components/flow-canvas/index.esm.js +215 -215
  58. package/components/flow-canvas/index.umd.cjs +1 -1
  59. package/components/html-template/index.esm.js +164 -164
  60. package/components/html-template/index.umd.cjs +1 -1
  61. package/components/image-cropper/index.esm.js +198 -198
  62. package/components/image-cropper/index.umd.cjs +1 -1
  63. package/components/json-editor/index.esm.js +64 -64
  64. package/components/json-editor/index.umd.cjs +1 -1
  65. package/components/language-textbox/index.esm.js +140 -140
  66. package/components/language-textbox/index.umd.cjs +1 -1
  67. package/components/layout/index.esm.js +111 -111
  68. package/components/layout/index.umd.cjs +1 -1
  69. package/components/list-nav/index.esm.js +90 -90
  70. package/components/list-nav/index.umd.cjs +1 -1
  71. package/components/list-view/index.esm.js +139 -141
  72. package/components/list-view/index.umd.cjs +3 -3
  73. package/components/locale/index.esm.js +833 -901
  74. package/components/locale/index.umd.cjs +6 -6
  75. package/components/lookup/index.esm.js +1352 -1351
  76. package/components/lookup/index.umd.cjs +1 -1
  77. package/components/mapping-editor/index.esm.js +1387 -1383
  78. package/components/mapping-editor/index.umd.cjs +1 -1
  79. package/components/menu-lookup/index.esm.js +1059 -1127
  80. package/components/menu-lookup/index.umd.cjs +6 -6
  81. package/components/message-box/index.esm.js +217 -217
  82. package/components/message-box/index.umd.cjs +1 -1
  83. package/components/modal/index.esm.js +283 -283
  84. package/components/modal/index.umd.cjs +1 -1
  85. package/components/nav/index.esm.js +106 -106
  86. package/components/nav/index.umd.cjs +1 -1
  87. package/components/number-range/index.esm.js +194 -194
  88. package/components/number-range/index.umd.cjs +1 -1
  89. package/components/number-spinner/index.esm.js +463 -462
  90. package/components/number-spinner/index.umd.cjs +1 -1
  91. package/components/order/index.esm.js +883 -876
  92. package/components/order/index.umd.cjs +4 -4
  93. package/components/page-footer/index.esm.js +94 -94
  94. package/components/page-footer/index.umd.cjs +1 -1
  95. package/components/page-header/index.esm.js +942 -939
  96. package/components/page-header/index.umd.cjs +1 -1
  97. package/components/pagination/index.esm.js +82 -82
  98. package/components/pagination/index.umd.cjs +1 -1
  99. package/components/popover/index.esm.js +59 -57
  100. package/components/popover/index.umd.cjs +1 -1
  101. package/components/progress/index.esm.js +113 -113
  102. package/components/progress/index.umd.cjs +2 -2
  103. package/components/property-editor/index.esm.js +151 -150
  104. package/components/property-editor/index.umd.cjs +1 -1
  105. package/components/property-panel/index.esm.js +739 -739
  106. package/components/property-panel/index.umd.cjs +2 -2
  107. package/components/query-solution/index.esm.js +4142 -4190
  108. package/components/query-solution/index.umd.cjs +6 -6
  109. package/components/radio-button/index.esm.js +182 -182
  110. package/components/radio-button/index.umd.cjs +1 -1
  111. package/components/rate/index.esm.js +106 -106
  112. package/components/rate/index.umd.cjs +1 -1
  113. package/components/response-layout/index.esm.js +535 -535
  114. package/components/response-layout/index.umd.cjs +1 -1
  115. package/components/response-layout-editor/index.esm.js +1456 -1443
  116. package/components/response-layout-editor/index.umd.cjs +1 -1
  117. package/components/response-toolbar/index.esm.js +779 -776
  118. package/components/response-toolbar/index.umd.cjs +1 -1
  119. package/components/schema-selector/index.esm.js +1875 -1866
  120. package/components/schema-selector/index.umd.cjs +7 -7
  121. package/components/search-box/index.esm.js +151 -147
  122. package/components/search-box/index.umd.cjs +1 -1
  123. package/components/section/index.esm.js +1236 -1233
  124. package/components/section/index.umd.cjs +1 -1
  125. package/components/smoke-detector/index.esm.js +163 -163
  126. package/components/smoke-detector/index.umd.cjs +1 -1
  127. package/components/sort-condition-editor/index.esm.js +1097 -1083
  128. package/components/sort-condition-editor/index.umd.cjs +3 -3
  129. package/components/splitter/index.esm.js +3 -3
  130. package/components/splitter/index.umd.cjs +1 -1
  131. package/components/step/index.esm.js +133 -133
  132. package/components/step/index.umd.cjs +1 -1
  133. package/components/switch/index.esm.js +103 -98
  134. package/components/switch/index.umd.cjs +1 -1
  135. package/components/tabs/index.esm.js +1596 -1593
  136. package/components/tabs/index.umd.cjs +2 -2
  137. package/components/tags/index.esm.js +93 -93
  138. package/components/tags/index.umd.cjs +1 -1
  139. package/components/text/index.esm.js +138 -138
  140. package/components/text/index.umd.cjs +1 -1
  141. package/components/textarea/index.esm.js +684 -684
  142. package/components/textarea/index.umd.cjs +2 -2
  143. package/components/time-picker/index.esm.js +935 -929
  144. package/components/time-picker/index.umd.cjs +1 -1
  145. package/components/tooltip/index.esm.js +173 -171
  146. package/components/tooltip/index.umd.cjs +1 -1
  147. package/components/transfer/index.esm.js +190 -192
  148. package/components/transfer/index.umd.cjs +4 -4
  149. package/components/tree-grid/index.esm.js +124 -124
  150. package/components/tree-grid/index.umd.cjs +1 -1
  151. package/components/tree-view/index.esm.js +2363 -2278
  152. package/components/tree-view/index.umd.cjs +1 -1
  153. package/components/uploader/index.esm.js +170 -170
  154. package/components/uploader/index.umd.cjs +2 -2
  155. package/components/verify-detail/index.esm.js +196 -196
  156. package/components/verify-detail/index.umd.cjs +1 -1
  157. package/components/video/index.esm.js +227 -227
  158. package/components/video/index.umd.cjs +1 -1
  159. package/components/weather/index.esm.js +9 -9
  160. package/components/weather/index.umd.cjs +2 -2
  161. package/designer/button-edit/index.esm.js +353 -353
  162. package/designer/button-edit/index.umd.cjs +1 -1
  163. package/designer/checkbox/index.esm.js +7 -3
  164. package/designer/checkbox/index.umd.cjs +1 -1
  165. package/designer/checkbox-group/index.esm.js +38 -33
  166. package/designer/checkbox-group/index.umd.cjs +1 -1
  167. package/designer/data-grid/index.esm.js +3562 -3536
  168. package/designer/data-grid/index.umd.cjs +6 -6
  169. package/designer/data-view/index.esm.js +3 -3
  170. package/designer/data-view/index.umd.cjs +3 -3
  171. package/designer/farris-designer.all.esm.js +4203 -4193
  172. package/designer/farris-designer.all.umd.cjs +9 -9
  173. package/designer/input-group/index.esm.js +97 -97
  174. package/designer/input-group/index.umd.cjs +1 -1
  175. package/designer/list-view/index.esm.js +1868 -1854
  176. package/designer/list-view/index.umd.cjs +8 -8
  177. package/designer/radio-group/index.esm.js +954 -949
  178. package/designer/radio-group/index.umd.cjs +1 -1
  179. package/farris.all.esm.js +16195 -16126
  180. package/farris.all.umd.cjs +30 -30
  181. package/locales/data-grid/ui/en.json +2 -2
  182. package/locales/designer/en.json +7 -6
  183. package/locales/designer/zh-CHS.json +2 -1
  184. package/locales/designer/zh-CHT.json +2 -1
  185. package/locales/ui/en.json +7 -6
  186. package/locales/ui/zh-CHS.json +2 -1
  187. package/locales/ui/zh-CHT.json +2 -1
  188. package/package.json +1 -1
  189. package/types/combo-list/src/property-config/combo-list.property-config.d.ts +0 -6
  190. package/types/data-view/composition/types.d.ts +10 -4
  191. package/types/lookup/src/composition/use-dialog.d.ts +2 -0
  192. package/types/lookup/src/composition/use-input-change.d.ts +1 -0
@@ -1 +1 @@
1
- (function(j,i){typeof exports=="object"&&typeof module<"u"?i(exports,require("vue"),require("../../designer/button-edit/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../dynamic-resolver/index.umd.js"),require("../property-panel/index.umd.js"),require("../field-selector/index.umd.js"),require("../notify/index.umd.js"),require("../modal/index.umd.js"),require("../button-edit/index.umd.js"),require("../layout/index.umd.js"),require("../data-grid/index.umd.js"),require("lodash-es"),require("../common/index.umd.js"),require("vue-i18n"),require("../tree-grid/index.umd.js"),require("../combo-list/index.umd.js"),require("../popover/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","../../designer/button-edit/index.umd.js","../designer-canvas/index.umd.js","../dynamic-resolver/index.umd.js","../property-panel/index.umd.js","../field-selector/index.umd.js","../notify/index.umd.js","../modal/index.umd.js","../button-edit/index.umd.js","../layout/index.umd.js","../data-grid/index.umd.js","lodash-es","../common/index.umd.js","vue-i18n","../tree-grid/index.umd.js","../combo-list/index.umd.js","../popover/index.umd.js"],i):(j=typeof globalThis<"u"?globalThis:j||self,i(j.lookup={},j.Vue,j.FButtonEditDesign,j.designerCanvas,j.dynamicResolver,j.propertyPanel,j.fieldSelector,j.notify,j.modal,j.buttonEdit,j.layout,j.dataGrid,j.LodashES,j.common,j.vueI18n,j.treeGrid,j.comboList,j.FPopover))})(this,function(j,i,ge,vt,He,De,Pe,Le,Ct,Je,Oe,xe,re,Ce,Tt,Be,Qe,St){"use strict";var bn=Object.defineProperty;var vn=(j,i,ge)=>i in j?bn(j,i,{enumerable:!0,configurable:!0,writable:!0,value:ge}):j[i]=ge;var te=(j,i,ge)=>vn(j,typeof i!="symbol"?i+"":i,ge);function Xe(e){return typeof e=="string"&&e.startsWith("{")&&e.endsWith("}")?(e=e.replace(/'/g,'"'),{mappingFields:JSON.parse(e)}):{mappingFields:e}}const wt=new Map([["appearance",He.resolveAppearance],["mappingFields",(e,a,t)=>{if(a)return Xe(a);const{mappingFields:n}=t;return Xe(n)}],["uri",(e,a,t)=>{var n;return a?{uri:a}:{uri:(n=t==null?void 0:t.dataSource)==null?void 0:n.uri}}],["idField",(e,a,t)=>{var n;return a?{idField:a}:{idField:(n=t==null?void 0:t.dataSource)==null?void 0:n.idField}}]]),Ft={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/lookup.schema.json",title:"lookup",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a combo list",type:"string"},type:{description:"The type string of number combo list component",type:"string",default:"lookup"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},editable:{description:"",type:"boolean",default:!1},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:"帮助"},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:"请选择"},readonly:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},textField:{description:"帮助显示文本字段",type:"string",default:""},mappingFields:{description:"帮助字段映射",type:"object",default:{}},uri:{type:"string",default:""},dataSource:{type:"object",default:null},displayType:{type:"string",default:"list"},"onUpdate:dataMapping":{type:"object",default:null},onClear:{type:"object",default:null},context:{type:"object",default:null},enableToSelect:{type:"boolean",default:!0},idValue:{type:"string",default:""},multiSelect:{type:"boolean",default:!1},separator:{type:"string",default:","},fitColumns:{type:"boolean",default:!0},enableFavorite:{type:"boolean",default:!1},enableUserData:{type:"boolean",default:!1},showSelections:{type:"boolean",default:!0},treeToList:{type:"boolean",default:!1},navTreeToList:{type:"boolean",default:!1},showNavigation:{type:"boolean",default:!0},dictPicking:{type:"object",default:null},dictPicked:{type:"object",default:null},enableSearchBar:{type:"boolean",default:!0},searchAnyField:{type:"boolean",default:!0},dialog:{type:"object",default:null},idField:{type:"string",default:"id"},pagination:{type:"object",default:null},allowFreeInput:{type:"boolean",default:!1},loadTreeDataType:{type:"string",default:"default"},onlySelectLeaf:{type:"boolean",default:!1},enableFullTree:{type:"boolean",default:!0},beforeLoadData:{type:"object",default:null},beforeSelectData:{type:"object",default:null},enableCascade:{type:"boolean",default:!1},showCascadeControl:{type:"boolean",default:!0},cascadeItems:{type:"object",default:{both:!0,up:!0,down:!0,disable:!0}},cascadeValue:{type:"string",default:"both"},expandLevel:{type:"number",default:0},enableClear:{type:"boolean",default:!0},openType:{type:"string",default:"Modal"},enableTitle:{type:"boolean",default:!1},showIncludeChildNodes:{type:"boolean",default:!0},includeChildNodesValue:{type:"boolean",default:!0},enableEqualSearch:{type:"boolean",default:!1},onClearMapping:{type:"string",default:""}},required:["type"],ignore:["appearance","binding","visible"],events:{dictPicking:"帮助前事件",dictPicked:"帮助后事件",beforeSelectData:"数据选择确认前事件",beforeLoadData:"数据加载前事件",clear:"清空事件"}};function It(e,a,t){return a}var Ae=(e=>(e.Both="both",e.Up="up",e.Down="down",e.Disable="disable",e))(Ae||{});const Ee=[{value:"both",text:"同步选择"},{value:"up",text:"包含上级"},{value:"down",text:"包含下级"},{value:"disable",text:"仅选择自身"}],je="";var ce=(e=>(e.List="LIST",e.Tree="TREELIST",e.ListList="NAVLIST",e.TreeList="NAVTREELIST",e.ListTree="NAVLISTTREE",e))(ce||{}),fe=(e=>(e.default="default",e.all="all",e.async="async",e))(fe||{});const ye="__lookup_active_tab__",kt="__lookup_user_data_id__";var ie=(e=>(e.dataList="datalist",e.favorite="favorite",e))(ie||{});const Re={showPageInfo:!0,enable:!1,showLimits:!0,sizeLimits:[10,20,30,50,100],size:20,index:1,total:0,mode:"server",showGoto:!1},Ke=Symbol("f_lookup-http-service_token");var Te=(e=>(e[e.Equal=0]="Equal",e[e.NotEqual=1]="NotEqual",e[e.Greater=2]="Greater",e[e.GreaterOrEqual=3]="GreaterOrEqual",e[e.Less=4]="Less",e[e.LessOrEqual=5]="LessOrEqual",e[e.Like=6]="Like",e[e.LikeStartWith=7]="LikeStartWith",e[e.LikeEndWith=8]="LikeEndWith",e[e.NotLike=9]="NotLike",e[e.NotLikeStartWith=10]="NotLikeStartWith",e[e.NotLikeEndWith=11]="NotLikeEndWith",e[e.Is=12]="Is",e[e.IsNot=13]="IsNot",e[e.In=14]="In",e[e.NotIn=15]="NotIn",e))(Te||{}),Se=(e=>(e[e.Empty=0]="Empty",e[e.And=1]="And",e[e.Or=2]="Or",e))(Se||{}),Ye=(e=>(e[e.Value=0]="Value",e[e.Expression=1]="Expression",e.FrontExpress="frontExpress",e))(Ye||{});const Ze={showCloseButton:!0,showMaxButton:!0,draggable:!0,resizeable:!0,enableEsc:!0,rememberSize:!0};function Pt(){function e(a,t){const n={};return n.dictPicking=o=>t.call("dictPicking",[o,a]),n.beforeLoadData=o=>t.call("beforeLoadData",[o,a]),n.beforeSelectData=o=>t.call("beforeSelectData",[o,a]),n.dictPicked=o=>t.call("dictPicked",[o,a]),n}return{resolve:e}}const we={id:{type:String,require:!0},uri:{type:String,default:""},readonly:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},editable:{type:Boolean,default:!1},enableFavorite:{type:Boolean,default:!1},mappingFields:{type:Object,default:null},fitColumns:{type:Boolean,default:!0},columns:{type:Array,default:[]},idField:{type:String,default:"id"},textField:{type:String,defalut:"name"},data:{type:Array,default:[]},displayType:{type:String,default:ce.List},dialog:{type:Object,default:{title:""}},multiSelect:{type:Boolean,default:!1},showSelections:{type:Boolean,default:!0},separator:{type:String,default:","},pagination:{type:Object,default:Re},enableClear:{type:Boolean,default:!0},inputType:{type:String,default:"text"},idValue:{type:String,default:""},dictPicking:{type:Function,default:null},dictPicked:{type:Function,default:null},beforeSelectData:{type:Function,default:null},beforeLoadData:{type:Function,default:null},enableSearchBar:{type:Boolean,default:!0},searchFields:{type:Array,default:[]},searchAnyField:{type:Boolean,default:!0},navigation:{type:Object,default:null},textChangeType:{type:String,default:"any"},showNavigation:{type:Boolean,default:!0},showIncludeChildNodes:{type:Boolean,default:!0},includeChildNodesValue:{type:Boolean,default:!0},enableMultiFieldSearch:{type:Boolean,default:!1},treeToList:{type:Boolean,default:!1},navTreeToList:{type:Boolean,default:!1},loadTreeDataType:{type:String,default:fe.default},enableToSelect:{type:Boolean,default:!0},customData:{type:Object,default:null},modelValue:{type:String,default:""},enableUserData:{type:Boolean,default:!1},userDataKey:{type:String,default:""},onReady:{type:Function,default:null},context:{type:Object,default:{}},placeholder:{type:String,default:""},loader:{type:Function,default:null},allowFreeInput:{type:Boolean,default:!1},onlySelectLeaf:{type:Boolean,default:!1},enableFullTree:{type:Boolean,default:!0},enableCascade:{type:Boolean,default:!1},showCascadeControl:{type:Boolean,default:!0},cascadeItems:{type:Object,default:{both:!0,up:!0,down:!0,disable:!0}},cascadeValue:{type:String,default:"both"},expandLevel:{type:Number,default:0},openType:{type:String,default:"Modal"},enableTitle:{type:Boolean,default:!1},enableEqualSearch:{type:Boolean,default:!1},togglePopupOnClickInput:{type:Boolean,default:!1}},Ue=He.createPropsResolver(we,Ft,wt,It),et=Pt();function Ve(e){let a=[10,20,30,50,100];return e&&(typeof e=="string"&&(a=e.replaceAll("[","").replaceAll("]","").replaceAll(" ","").split(",")),Array.isArray(e)&&(a=e)),a.map(t=>({value:parseInt(t,10)})).sort((t,n)=>t.value-n.value)}const Y={convertFrom:(e,a)=>{const t=e.editor?e.editor:e;return a==="multiSelect"||a==="enableTitle"?!!t[a]:a==="separator"?t[a]||",":a==="onlySelectLeaf"?t[a]==null?!1:t[a]:a==="loadTreeDataType"?t[a]||"default":a==="placeholder"?t.placeholder||"请选择":a==="openType"?t[a]||"Modal":t[a]},convertTo:(e,a,t)=>{const n=e.editor?e.editor:e;if(n[a]=t,a==="multiSelect"&&!t&&(n.enableCascade=!1),a==="openType"){if(t==="Popup")n.showSelections=!1,n.enableCascade=!1;else if(n.dialog){const{width:o}=n.dialog,{displayType:l}=n;l&&l.toUpperCase().indexOf("NAV")>-1&&(!o||o<520)&&(n.dialog.width=960)}}n.multiSelect&&n.openType==="Popup"&&(n.editable=!1,n.allowFreeInput=!1)}};function Lt(e){let a="form_group_"+Date.now();return e&&(a=e.replaceAll("-","_").replaceAll(".","_")),"lookup."+a}function xt(e,a){const{enablePager:t,pageSize:n,pageList:o}=a;e.pagination=e.pagination||{},Object.assign(e.pagination,{enable:t,sizeLimits:Ve(o).map(l=>l.value),size:n,showLimits:!0,showGoto:!1,mode:"server"})}const ze={convertFrom:(e,a)=>{var n;return(n=(e.editor?e.editor:e).dataSource)==null?void 0:n.displayName},convertTo:(e,a,t)=>{if(t&&t.length>0){const n=e.editor?e.editor:e,o=t[0],{name:l,id:r,metadataContent:u,code:s}=o;n.dataSource||(n.dataSource={}),n.dataSource.displayName=`${l}(${s})`,n.helpId=r;const{displayType:c,idField:f,textField:p}=u;n.displayType=c,n.dataSource.idField=f,n.textField=p,n.dataSource.type="ViewObject",n.enableEqualSearch=!1;const{pageInfo:v}=u.dataSource;xt(n,v);const{treeInfo:F}=c.toUpperCase()==="NAVTREELIST"?u.navigation:u.dataSource;if(F){const{onlySelectLeaf:b,loadDataType:m}=F;n.loadTreeDataType="default",n.onlySelectLeaf=b??!1}if(n.dataSource.uri||(n.dataSource.uri=Lt(e.id)),n.dialog){const{width:b}=n.dialog;c&&c.toUpperCase().indexOf("NAV")>-1&&(!b||b<520)&&(n.dialog.width=960)}}}},Et={convertFrom:(e,a)=>{var t;return(t=e.editor.dataSource)==null?void 0:t.idField},convertTo:(e,a,t)=>{if(t&&t.length>0){const n=t[0];e.editor.dataSource.idField=n==null?void 0:n.bindingPath}}},Vt={convertFrom:(e,a)=>{var t;return(t=e.editor)==null?void 0:t.textField},convertTo:(e,a,t)=>{if(t&&t.length>0){const n=t[0];e.editor.textField=n==null?void 0:n.bindingPath}}},Nt={convertFrom:(e,a)=>e.editor.displayType?e.editor.displayType.toUpperCase():"LIST",convertTo:(e,a,t)=>{e.editor.displayType=t}},ue={convertFrom:(e,a)=>{var l;let t=e.editor?e.editor.dialog:e.dialog;const n=e.editor?e.editor.openType:e.openType;if(t||(t={}),a==="title")return t[a]||je;if(!n||n==="Modal"){if(a==="width")return(l=t.displayType)!=null&&l.toUpperCase().startsWith("NAV")?t[a]||960:t[a]||590;if(a==="height")return t[a]||620;if(a==="navigatorWidth")return t[a]||320}else{if(a==="width")return t[a]||460;if(a==="height")return t[a]||380}if(a==="draggable")return!0;if(["showMaxButton","showCloseButton","resizeable","enableEsc","rememberSize"].includes(a))return t[a]==null?!0:t[a]},convertTo:(e,a,t)=>{const n=e.editor?e.editor:e;n.dialog=n.dialog||{},n.dialog[a]=t}},Mt={convertFrom:(e,a)=>{const t=e.editor?e.editor:e;if(t.pagination=t.pagination||{},a==="enable"||a==="showLimits")return t.pagination[a]==null?!1:t.pagination[a];if(a==="sizeLimits"){const n=t.pagination[a];return Ve(n)}if(a==="size")return t.pagination[a]||20},convertTo:(e,a,t)=>{var o;const n=e.editor?e.editor.pagination||{}:e;if(n.pagination=n.pagination||{},a==="sizeLimits"){const l=t.map(u=>u.value);n.pagination[a]=l;const r=((o=n.pagination)==null?void 0:o.size)??20;l.includes(r)||(n.pagination.size=l[0]);return}n.pagination[a]=t}},Dt=[{label:"clear",name:"清空事件"},{label:"dictPicking",name:"帮助前事件"},{label:"beforeLoadData",name:"数据加载前事件"},{label:"beforeSelectData",name:"选择数据确认前事件"},{label:"dictPicked",name:"帮助后事件"}],Ot=[{label:"dictPicking",name:"帮助前事件"},{label:"beforeLoadData",name:"数据加载前事件"},{label:"beforeSelectData",name:"选择数据确认前事件"},{label:"dictPicked",name:"帮助后事件"}],tt=Symbol("schema_repository_token");function nt(e,a){const t=n=>n&&n.length?n.map(o=>`${o.name}[${o.bindingPath}]`).join(","):"";return{dataSourceEditor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:e,formBasicInfo:a.formSchemaUtils.getFormMetadataBasicInfo()},viewOptions:a.formSchemaUtils.designerMode==="PC_RTC"?[{id:"total",title:"全部",type:"List",dataSource:"Total"}]:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(n,o)=>`${n==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:tt},dataSourceConverter:ze,defaultConverter:Y,idFieldEditor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",disabled:!1,editorParams:{propertyData:e,formBasicInfo:a.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Pe.FieldSelectorRepositoryToken},textFieldEditor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:e,formBasicInfo:a.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Pe.FieldSelectorRepositoryToken},mappingFieldsEditor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:e,formBasicInfo:a.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!0,formatter:(n,o)=>`${o.raw.name} [${o.raw.bindingPath}]`,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],repositoryToken:Pe.FieldSelectorRepositoryToken,displayFormatter:t},toData:{editable:!1,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],dataSource:()=>{const n=a.designViewModelUtils.getAllFields2TreeByVMId(a.viewModelId),o=a.schemaService.getPrimaryField();return o?n.filter(l=>l.data.bindingPath!==o):n},formatter:(n,o)=>`${o.raw.name} [${o.raw.bindingPath}]`,displayFormatter:t}}}}function at(e){var l,r;const a={type:"combo-list",enableClear:!1,editable:!1},t={type:"number-spinner",useThousands:!1},n=()=>e.displayType?e.displayType.toUpperCase():"",o=()=>n().startsWith("NAV")?e.showNavigation===void 0?!0:!!e.showNavigation:!1;return{openType:{description:"窗口展示方式:弹出窗口、下拉面板",title:"打开方式",type:"string",refreshPanelAfterChanged:!0,$converter:Y,editor:{...a,data:[{text:"弹出窗口",value:"Modal"},{text:"下拉面板",value:"Popup"}],valueField:"value",textField:"text",idField:"value"},visible:!0,defaultValue:"Modal"},title:{description:"帮助标题",title:"标题",type:"string",visible:e.openType!=="Popup",$converter:ue},width:{description:"窗口宽度,最小值:300px",title:"宽度",type:"number",editor:{...t,min:o()?520:300,needValid:!0},$converter:ue},height:{description:"窗口高度,最小值:200px",title:"高度",type:"number",editor:{...t,min:200,needValid:!0},$converter:ue},showNavigation:{description:"显示导航栏",$converter:Y,refreshPanelAfterChanged:!0,title:"显示导航栏",type:"boolean",visible:n().includes("NAV")&&e.openType!=="Popup"},navigatorWidth:{description:"导航栏宽度,最小200px, 最大为窗口宽度减去200px",title:"导航栏宽度",type:"number",visible:o()&&e.openType!=="Popup",editor:{...t,min:200,max:(((l=e==null?void 0:e.dialog)==null?void 0:l.width)??960)-200,needValid:!0},$converter:ue},resizeable:{description:"允许鼠标拖拽窗口边缘调整尺寸",title:"允许调整窗口尺寸",type:"boolean",visible:e.openType!=="Popup",$converter:ue},rememberSize:{description:"记录窗口尺寸",title:"记录窗口尺寸",type:"boolean",visible:!!e.enableUserData&&(((r=e==null?void 0:e.dialog)==null?void 0:r.resizeable)??!0)&&e.openType!=="Popup",$converter:ue},enableEsc:{description:"允许ESC关闭",title:"允许ESC关闭",type:"boolean",visible:e.openType!=="Popup",$converter:ue},showMaxButton:{description:"显示最大化按钮",title:"显示最大化按钮",type:"boolean",visible:e.openType!=="Popup",$converter:ue},showCloseButton:{description:"显示关闭按钮",title:"显示关闭按钮",type:"boolean",visible:e.openType!=="Popup",$converter:ue}}}function it(e,a=!0){var l,r,u,s;const t=!((l=e.pagination)!=null&&l.enable),n=()=>e.displayType?e.displayType.toUpperCase():"",o=(c,f)=>{const p=n()!=="TREELIST"||c.treeToList;return f&&p?c.pagination&&c.pagination[f]:p};return{hide:n()==="TREELIST"||!e.helpId||t,description:"分页配置",title:"分页",parentPropertyID:"pagination",$converter:Mt,properties:{showLimits:{description:"显示每页条数选择器",title:"显示条数选择器",type:"boolean",refreshPanelAfterChanged:a,visible:o(e)},sizeLimits:{description:"每页可显示条数",title:"每页显示条数",type:"array",refreshPanelAfterChanged:a,visible:o(e,"showLimits"),editor:{columns:[{field:"value",title:"显示条数",dataType:"number",editor:{type:"number-spinner",useThousands:!1,min:10,max:1e4}}],title:"每页显示条数编辑器",modalWidth:400,modalHeight:500,type:"item-collection-editor",valueField:"value",nameField:"value",requiredFields:["value"],uniqueFields:["value"],modelValue:Ve((r=e.pagination)==null?void 0:r.sizeLimits),beforeSubmit:({notifyService:c,data:f})=>!f||!f.length?(c==null||c.warning({message:"每页显示条数不能为空!"}),!1):new Set(f.map(v=>parseInt(v.value,10))).size===f.length?!0:(c==null||c.warning({message:"每页显示条数不能重复!"}),!1)}},size:{description:"默认显示条数",title:"默认显示条数",type:"number",visible:o(e),editor:{type:"combo-list",enableClear:!1,editable:!1,data:Ve((u=e.pagination)==null?void 0:u.sizeLimits),textField:"value",idField:"value",valueField:"value",modelValue:(s=e.pagination)==null?void 0:s.size}}}}}class ot extends De.InputBaseProperty{constructor(){super(...arguments);te(this,"comboListEditor",{type:"combo-list",enableClear:!1,editable:!1});te(this,"numberEditor",{type:"number-spinner",useThousands:!1});te(this,"readonlyEditor",{...this.comboListEditor,editable:!0});te(this,"visibleEditor",{...this.comboListEditor,editable:!1});te(this,"requiredEditor",{...this.comboListEditor,editable:!1});te(this,"freeInputEditor",{...this.comboListEditor,editable:!1})}getExpressionConfig(t,n){const o=["validate"];return t.type==="form-group"&&o.push("dataPicking"),new De.ExpressionProperty(this.formSchemaUtils).getExpressionConfig(t,"Field",o)}getPropertyConfig(t,n,o="Card"){var d;const l=(d=t.binding)!=null&&d.field?[]:["Const","Variable","StateMachine"];this.readonlyEditor=this.getPropertyEditorParams(t,l,"readonly"),this.visibleEditor=this.getPropertyEditorParams(t,l,"visible"),this.requiredEditor=this.getPropertyEditorParams(t,l,"required"),this.freeInputEditor=this.getPropertyEditorParams(t,["Const","Variable"],"allowFreeInput");const r=this.getBasicProperties(t,n,o),u=this.getBehaviorConfig(t),s=this.getAppearanceProperties(t,n),c=this.getLookupConfig(t),f=this.getEventPropConfig(t),p=this.getDialogPropertyConfig(t),v=this.getPageConfig(t.editor),F=this.getTreePropConfig(t.editor),b=this.getSearchConfig(t),m=this.getExpressionConfig(t,"Field"),h={basic:r,appearance:s,behavior:u,lookup:c,treeConfig:F,dialog:p,pager:v,searchConfig:b,expressions:m};return t.type==="form-group"&&(h.eventsEditor=f),{type:"object",categories:h}}getGridFieldEdtiorPropConfig(t){return this.getPropertyConfig(t,null,"Grid").categories}flattenTreeNodes(t){return t.reduce((n,o)=>{var l;return n.push(o),(l=o.children)!=null&&l.length&&n.push(...this.flattenTreeNodes(o.children)),n},[])}isSimpleStringField(){var u;const t=((u=this.designViewModelField)==null?void 0:u.path)||"";if(!t||!t.includes("."))return!0;const n=t.split("."),o=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);if(!(o!=null&&o.length))return!1;const l=o.find(s=>s.data.code===n[0]);if(!l)return!1;const r=[l,...this.flattenTreeNodes(l.children)];return!n.reduce((s,c,f)=>[...s,f?`${s[f-1]}.${c}`:c],[]).some(s=>{var c,f,p;return((p=(f=(c=r.find(v=>v.data.path===s))==null?void 0:c.data)==null?void 0:f.type)==null?void 0:p.$type)==="EntityType"})}getBehaviorConfig(t){return{description:"Basic Infomation",title:"行为",properties:{visible:{description:"运行时组件是否可见",title:"是否可见",type:"boolean",editor:this.visibleEditor}},setPropertyRelates:(n,o)=>{this.afterMutilEditorChanged(o,n)}}}changeBindingField(t,n){super.changeBindingField(t,n),t.editor.multiSelect=!1}getDisplayType(t){return t.displayType?t.displayType.toUpperCase():""}mapFieldsDisplayFormatter(t){return t&&t.length?t.map(n=>`${n.name}[${n.bindingPath}]`).join(","):""}getSearchConfig(t){var n;return{description:"Lookup Search Infomation",title:"搜索",parentPropertyID:"editor",properties:{enableSearchBar:{$converter:Y,description:"是否启用搜索栏",refreshPanelAfterChanged:!0,title:"启用搜索栏",type:"boolean",visible:!1},searchAnyField:{description:"显示所有列",$converter:Y,title:"允许查询所有列",type:"boolean",visible:t.editor.openType!=="Popup"&&t.editor.enableSearchBar==null?!0:!!t.editor.enableSearchBar},enableEqualSearch:{$converter:Y,description:"是否启用等于搜索",title:"启用精确搜索",type:"boolean",visible:t.editor.openType!=="Popup"&&(((n=t.editor)==null?void 0:n.enableSearchBar)??!0)!==!1&&this.getDisplayType(t.editor)!=="TREELIST"}},hide:t.editor.openType==="Popup"}}getLookupConfig(t){const n=t.editor,o=()=>{const c=this.formSchemaUtils.getFormSchema().module.entity[0].id,f=this.formSchemaUtils.getFormMetadataBasicInfo();return{propertyData:n,formBasicInfo:f,viewModelId:c,dataSourceId:n.helpId}},{dataSourceEditor:l,idFieldEditor:r,textFieldEditor:u,mappingFieldsEditor:s}=nt(n,this);return{description:"Basic Infomation",title:"编辑器",setPropertyRelates:(c,f)=>{if(c)switch(c.propertyID){case"readonly":case"required":this.afterMutilEditorChanged(f,c);break}},parentPropertyID:"editor",properties:{readonly:{description:"",title:"只读",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.readonlyEditor},required:{description:"",title:"必填",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.requiredEditor},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string",$converter:Y},enableTitle:{description:"鼠标悬停显示文本内容",title:"悬停提示",type:"boolean",$converter:Y,editor:this.comboListEditor},editable:{description:"",title:"允许编辑",type:"boolean",$converter:Y,refreshPanelAfterChanged:!0,editor:this.comboListEditor,visible:!(n.multiSelect&&n.openType==="Popup")},allowFreeInput:{description:"",title:"任意输入",type:"boolean",$converter:Y,editor:this.freeInputEditor,visible:!!n.editable&&this.isSimpleStringField()},enableClear:{title:"启用清除按钮",type:"boolean",$converter:Y},dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{...l,displayFormatter:c=>c&&c.length?c.map(f=>`${f.name}(${f.code})`).join(","):"",validateFunction:async c=>this.formSchemaUtils.designerMode!=="PC_RTC"?!0:this.checkSameBESource(c,t),onSubmitModal:c=>{if(c){delete n.mappingFields;const f=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(f.relativePath,c[0].data).then(p=>JSON.parse(p==null?void 0:p.metadata.content))}}},$converter:ze},filterConditions:{descriptions:"帮助过滤条件",title:"过滤条件",type:"string",$converter:Y,editor:{type:"filter-condition-editor",editable:!1,displayText:"点击配置",enableClear:!1,enableExpression:!0,editorParams:{propertyData:n,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo(),viewModelId:this.formSchemaUtils.getFormSchema().module.entity[0].id},idField:"path",repositoryToken:Pe.FieldSelectorRepositoryToken,beforeOpen:async({repository:c,notifyService:f})=>{var h;if(!(n==null?void 0:n.helpId))return f==null||f.warning({message:"请先配置数据源!"}),!1;const v=o(),b=new De.ExpressionProperty(this.formSchemaUtils).getEntitiesAndVariables();let m={};if(c){const d=await c.getData(v),y=await c.getLookupConditions(v);m={fieldList:d,conditionList:y}}return(h=b.variables)!=null&&h.forms&&(b.variables.forms.items=b.variables.forms.items.filter(d=>d.category==="remote")),{...m,...b,isServerSide:!0}},onSubmitModal:async({loadingService:c,repository:f,conditions:p,originalConditions:v,FMessageBoxService:F})=>{if(f)try{const b=o(),m=await f.getLookupConditions(b)||[];return JSON.stringify(m)!==JSON.stringify(v.value)?(c==null||c.clearAll(),F.question("视图对象中的帮助过滤条件已更改,请点击确定同步过滤数据","",()=>{p.value=m,v.value=JSON.parse(JSON.stringify(p.value))},()=>{}),!1):(JSON.stringify(p.value)===JSON.stringify(v.value)||await f.saveFilterCondition(p.value,b,this.formSchemaUtils.getFormMetadataBasicInfo()),!0)}catch{return F==null||F.error("保存失败",""),!1}finally{c==null||c.clearAll()}}},visible:!!n.helpId},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:Nt,editor:{type:"combo-list",editable:!1,disabled:!0,data:[{text:"列表",value:"LIST"},{text:"树列表",value:"TREELIST"},{text:"双列表",value:"NAVLIST"},{text:"左树右列表",value:"NAVTREELIST"}],textField:"text",idField:"value",valueField:"value"}},idField:{description:"数据源标识字段",title:"标识字段",type:"string",editor:{...r},$converter:Et},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:Vt,editor:u},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:Y,editor:{...s}},enableToSelect:{description:"数据加载后是否选中现有值",$converter:Y,title:"选中已选值",type:"boolean",editor:this.comboListEditor},multiSelect:{description:"启用多选",$converter:Y,title:"启用多选",type:"boolean",editor:this.comboListEditor,refreshPanelAfterChanged:!0,visible:this.isSimpleStringField()},showSelections:{description:"显示已选记录",$converter:Y,title:"显示已选记录",type:"boolean",visible:!!n.multiSelect&&n.openType!=="Popup"},separator:{description:"多选分隔符",$converter:Y,title:"多选分隔符",type:"string",editor:{type:"combo-list",editable:!1,disabled:!1,data:[{text:",",value:","},{text:"|",value:"|"},{text:"#",value:"#"}],textField:"text",idField:"value",valueField:"value",separator:"@"},visible:!!n.multiSelect},enableSearchBar:{description:"显示搜索工具条",$converter:Y,refreshPanelAfterChanged:!0,title:"启用搜索框",type:"boolean",visible:!1},enableFavorite:{description:"启用收藏夹",$converter:Y,title:"启用收藏夹",type:"boolean",visible:n.openType!=="Popup"},enableUserData:{description:"保存界面状态",$converter:Y,refreshPanelAfterChanged:!0,title:"保存界面状态",type:"boolean",visible:n.openType!=="Popup"}}}}showNavigatiorWidth(t){return this.getDisplayType(t).startsWith("NAV")&&t.openType!=="Popup"?t.showNavigation===void 0?!0:!!t.showNavigation:!1}getDialogPropertyConfig(t){const n=at(t.editor);return n.openType.$converter=Y,{description:"帮助窗口尺寸配置",title:"帮助窗口",parentPropertyID:"dialog",$converter:ue,properties:n}}showPagerProperty(t,n){const o=this.getDisplayType(t)!=="TREELIST"||t.treeToList;return n&&o?t.pagination&&t.pagination[n]:o}getPageConfig(t){return it(t)}showLoadType(t){const n=this.getDisplayType(t);return(n==="TREELIST"||n==="NAVTREELIST")&&!t.treeToList&&!t.navTreeToList}isTree(t){return this.getDisplayType(t)==="TREELIST"&&!t.treeToList}getTreePropConfig(t){return{hide:this.getDisplayType(t)!=="TREELIST"&&this.getDisplayType(t)!=="NAVTREELIST",description:"树形数据配置",title:"树形数据配置",parentPropertyID:"editor",properties:{treeToList:{description:"以列表的形式展示树结构数据",$converter:Y,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(t)==="TREELIST"},navTreeToList:{description:"以列表的形式展示树结构数据",$converter:Y,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(t)==="NAVTREELIST"},loadTreeDataType:{description:"树形数据加载方式",$converter:Y,title:"数据加载方式",type:"string",editor:{...this.comboListEditor,data:[{value:"default",text:"默认"},{value:"all",text:"全部加载"},{value:"async",text:"分层加载"}],textField:"text",valueField:"value"},visible:this.showLoadType(t)},enableFullTree:{description:"启用构造完整树",$converter:Y,title:"构造完整树",type:"boolean",visible:this.showLoadType(t)},onlySelectLeaf:{description:"仅选择叶子节点",$converter:Y,title:"仅选择叶子节点",type:"boolean",visible:this.isTree(t)},enableCascade:{description:"启用级联选择",$converter:Y,refreshPanelAfterChanged:!0,title:"启用级联选择",type:"boolean",visible:this.isTree(t)&&!!t.multiSelect&&t.openType!=="Popup"},showCascadeControl:{description:"是否在界面中显示级联状态",$converter:Y,title:"显示级联状态",type:"boolean",visible:!!t.enableCascade&&this.isTree(t)},cascadeValue:{description:"缺省级联选择模式",$converter:Y,title:"缺省级联选择模式",type:"string",visible:!!t.enableCascade&&this.isTree(t),editor:{...this.comboListEditor,data:Ee,textField:"text",valueField:"value"}},expandLevel:{description:"默认展开层级: 0: 不展开; -1: 全部展开;>0: 展开到指定级数 ",$converter:Y,title:"默认展开层级",type:"number",visible:this.showLoadType(t),editor:{...this.numberEditor,min:-1,max:99,needValid:!0}}}}}getEventPropConfig(t){const n=this;let o=Dt;t.editor.openType==="Popup"&&(o=o.filter(u=>u.label!=="beforeSelectData"));const l=n.eventsEditorUtils.formProperties(t,n.viewModelId,o);return{title:"事件",hideTitle:!0,properties:n.createBaseEventProperty(l),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(u,s){const c=u.propertyValue;delete s[n.viewModelId],c&&n.eventsEditorUtils.saveRelatedParameters(s,n.viewModelId,c.events,c);const f=n.designViewModelUtils.getDgViewModel(n.viewModelId);f&&n.designViewModelField&&f.changeField(n.designViewModelField.id,{valueChanging:s.fieldValueChanging,valueChanged:s.fieldValueChanged})}}}async checkSameBESource(t,n){var o,l,r,u,s;if(t&&((o=n==null?void 0:n.editor)!=null&&o.helpId)&&!n.isRtcControl){if(t.data.id===n.editor.helpId)return!0;const c=await this.metadataService.getPickMetadata("",t.data).then(m=>{var h;if((h=m==null?void 0:m.metadata)!=null&&h.content)return JSON.parse(m.metadata.content)}),f=await this.metadataService.getPickMetadata("",{id:n.editor.helpId}).then(m=>{var h;if((h=m==null?void 0:m.metadata)!=null&&h.content)return JSON.parse(m.metadata.content)}),p=(l=c==null?void 0:c.dataSource)==null?void 0:l.sourceType,v=(r=f.dataSource)==null?void 0:r.sourceType,F=(u=c==null?void 0:c.dataSource)==null?void 0:u.sourceId,b=(s=f==null?void 0:f.dataSource)==null?void 0:s.sourceId;if(p==="BE"&&v==="BE"&&F!==b)return new Le.FNotifyService().error({message:"只允许更换同数据源的帮助元数据",position:"top-center"}),!1}return!0}}function Bt(e,a){function t(n,o){const l=e.schema;return new ot(n,a).getPropertyConfig(l,o)}return{getPropsConfig:t}}const At=i.defineComponent({name:"FLookupDesign",props:we,emits:[],setup(e,a){const t=i.ref(),n=i.inject("design-item-context"),o=i.inject("designer-host-service"),l=Bt(n,o),r=vt.useDesignerComponent(t,n,l),u='<i class="f-icon f-icon-lookup"></i>',s='<i class="f-icon f-icon-arrow-chevron-down"></i>',c=i.computed(()=>e.openType==="Popup"?"Popup":"Modal"),f=i.computed(()=>c.value==="Popup"?s:u);return i.onMounted(()=>{t.value.componentInstance=r}),a.expose(r.value),()=>i.createVNode("div",{class:"f-lookup-design",ref:t},[i.createVNode(ge,{ref:t,buttonContent:f.value,readonly:!0,editable:!1,placeholder:e.placeholder},null)])}});function me(e,a){const{lookupOptions:t}=a;function n(m){return{...Re,...m}}function o(){return{enableSelectRow:!0,multiSelect:t.multiSelect,showCheckbox:t.multiSelect,multiSelectMode:"OnCheckAndClick"}}function l(){return{fitColumns:e.fitColumns,fitMode:"percentage",resizeColumn:!0}}function r(){const{displayType:m}=a.lookupOptions;return typeof m=="string"&&m in ce?!1:m.toLowerCase().startsWith("nav")}function u(){const{displayType:m,treeToList:h}=a.lookupOptions;return(m.toLowerCase()===ce.Tree.toLowerCase()||m.toLowerCase()===ce.ListTree.toLowerCase())&&!h}function s(){const{displayType:m,navTreeToList:h}=a.lookupOptions;return m.toLowerCase()===ce.TreeList.toLowerCase()&&!h}function c(){const{displayType:m,navTreeToList:h}=a.lookupOptions,d=m.toLowerCase();return d===ce.ListList.toLowerCase()||d===ce.ListTree.toLowerCase()||h}function f(){var d;return t.dialog?{width:((d=t.dialog)==null?void 0:d.navigatorWidth)||320,minWidth:200}:{width:320,minWidth:200}}function p(m){const{loadTreeDataType:h}=t;return h===fe.all||h==="default"&&(m==null?void 0:m.loadDataType)==="all"}function v(m){return(m==null?void 0:m.layerType)==="pathcode"}function F(){return t.enableCascade&&t.multiSelect}function b(){return e.openType==="Popup"}return{checkPaination:n,checkMultiSelect:o,checkColumnOptions:l,isDoubleList:r,getNavigationSize:f,isTreeList:u,navIsTreeList:s,navIsList:c,isLoadAll:p,isPathCodeTree:v,isEnableCascadeCheck:F,isDropdownMode:b}}function lt(e,a,t){var l;const n=i.ref(e.searchFields||[]),o=i.ref(((l=e.navigation)==null?void 0:l.searchFields)||[]);return i.watch(()=>a==null?void 0:a.searchFields,r=>{n.value=r}),i.watch(()=>t==null?void 0:t.searchFields,r=>{o.value=r}),{searchFieldItems:n,navSearchFieldItems:o}}function jt(e){const a=i.reactive({}),t=i.reactive({}),n=i.reactive({}),o=i.reactive({}),l=i.reactive({}),r=i.ref([]),u=i.ref(),s=i.reactive({}),c=i.reactive({canClose:!0}),f=i.ref(!1),p=["displayType","treeToList","navTreeToList","showSelections","showNavigation","multiSelect","mappingFields","loader","idField","textField","userDataKey","dialog","expandLevel","treeInfo","navTreeInfo","onlySelectLeaf","loadTreeDataType","uri","enableFullTree","cascadeValue","showCascadeControl","enableCascade","enableFavorite"];function v(){p.forEach(F=>{s[F]=e[F]})}return v(),{pageInfoState:a,lookupState:t,navigationState:n,queryState:o,searchState:l,selectionState:r,unSelectDataId:u,lookupOptions:s,searchValueChanged:f,popupState:c}}const Fe=i.ref(),pe="F_LOOKUP_HTTP_COMPOSITION_TOKEN";function Rt(e,a){const t=i.inject("FLoadingService"),n=i.inject(Ke),o=jt(e),{pageInfoState:l,lookupState:r,navigationState:u,lookupOptions:s,searchValueChanged:c}=o,{searchFieldItems:f,navSearchFieldItems:p}=lt(e,r,u),v=i.ref(e.idValue),F=i.ref(!1),b=()=>{var E;const g=(E=s.displayType)==null?void 0:E.toUpperCase();return g===ce.Tree||g===ce.TreeList},m=(g,E=!1)=>{if(g){const{layerType:A,dataField:z,parentField:X,pathField:K,layerField:ee,isDetailField:G,loadDataType:P}=g,H={layerType:A,dataField:z,parentField:X,pathField:K,layerField:ee,isDetailField:G,loadDataType:P},{onlySelectLeaf:k,loadTreeDataType:T}=s;H.onlySelectLeaf=k,H.loadDataType=T,E?s.navTreeInfo=Object.assign(s.navTreeInfo||{},H):s.treeInfo=Object.assign(s.treeInfo||{},H)}};function h(g,E,A="like"){if(E==null||!E.trim())return[];const z=Array.from(new Set(E.trim().split(" ").filter(P=>P.trim())));if(!g||!z.length)return[];const K=A==="equal"?Te.Equal:Te.Like,ee=(g||[]).map((P,H)=>{const k=z.map((T,M)=>({filterField:P.value,value:T,lbracket:"",rbracket:"",relation:Se.And,compare:K}));return k.length&&(k.length>1&&(k[0].lbracket="(",k[k.length-1].rbracket=")"),k[k.length-1].relation=Se.Or),k}).filter(P=>P.length);let G=[];return ee&&ee.length&&(G=re.flatten(ee),G.length>1&&(G[0].lbracket+="(",G[G.length-1].rbracket+=")"),G[G.length-1].relation=0),G}function d(){let{expandLevel:g}=s;return g&&!re.isNaN(g)&&(g=g<-1?-1:g),g}function y(g,E){const A={};A.category=E;let z=null,X=null;if(g!=null&&g.search){const{field:K,value:ee,isNavigation:G,type:P}=g.search,H=P||"like";if(ee&&(A.searchValue=ee.trim()),A.searchField=K?K.trim():"*",A.searchType=H,G&&(A.category="navsearch"),!e.enableMultiFieldSearch){G&&(A.searchType="like");const k=A.searchType==="equal"&&A.searchValue?[{filterField:A.searchField,value:A.searchValue,lbracket:"",rbracket:"",relation:Se.And,compare:Te.Equal}]:[],T=G?p.value:f.value,M=A.searchField==="*"?h(T,ee,H):k;M&&M.length&&(G?z=M:X=M),ee===""&&A.category==="search"&&!X&&!z&&(A.category="all")}}return b()&&(A.layerNum=d()),{searchParam:A,navSearchConditions:z,searchConditions:X}}function C(g){var A,z;if(g==="fav")return{pageIndex:1,pageSize:500};let E="default";return g==="navsearch"&&(E="navigation"),{pageIndex:((A=l[E])==null?void 0:A.index)||1,pageSize:((z=l[E])==null?void 0:z.size)||20}}function I(g){const E={},A=(g==null?void 0:g.action)||"all",{searchParam:z,navSearchConditions:X,searchConditions:K}=y(g,A);K&&(E.searchConditions=K),X&&(E.navSearchConditions=X),E.enableFullTree=e.enableFullTree,E.searchValue=JSON.stringify(z);const{pageIndex:ee,pageSize:G}=C(A);return E.pageIndex=ee,E.pageSize=G,E.treeToList=e.treeToList,E.navTreeToList=e.navTreeToList,s.loadTreeDataType===fe.default?E.loadTreeDataType="default":E.loadTreeDataType=s.loadTreeDataType===fe.all?"loadall":"layerload",g!=null&&g.relationFilter&&(E.relationFilter=[...g.relationFilter]),g!=null&&g.navNodePathCode&&(E.navPathCode=g.navNodePathCode),g.selectedInfo&&(E.selectedInfo=g.selectedInfo),E.customData=i.toRaw(Fe.value),E.id=e.id,E}function V(g){return g==null?void 0:g.map(E=>(E.resizable=!0,E))}function N(g,E){return g.map(A=>{const z=E==null?void 0:E.find(X=>X.field.toLowerCase()===A.value.toLowerCase());return z&&(A.label=z.title),A})}function w(g){g.columns&&(g.columns=V(g.columns),g.searchFields&&(g.searchFields=N(g.searchFields,g.columns))),g.navigation&&g.navigation.columns&&(g.navigation.columns=V(g.navigation.columns),g.navigation.searchFields&&(g.navigation.searchFields=N(g.navigation.searchFields,g.navigation.columns)))}function O(){return s.loader||n&&n.getData.bind(n)}function U(g){const E=O();return E?E(s.uri,g).then(A=>(w(A),c.value=!1,A)):new Promise((A,z)=>{A({...e})})}function D(g){const E=d();return E===-1?!0:E===0?!1:g<=E}function R(g,E=!1,A="layer"){g.forEach(z=>{var X;z.collapse=E?!1:s.loadTreeDataType==="all"?!D(Ce.resolveField(z.data,A)):!(z.expanded??!0),z.hasChildren=!z.leaf,(X=z.children)!=null&&X.length&&R(z.children,E,A)})}async function S(g,E){var X;const A=I(g),z=t==null?void 0:t.show();try{let K=await U(A);if(s.displayType!==K.displayType&&g.action!=="navsearch"&&(s.displayType=K.displayType),b()){const{items:ee,treeInfo:G}=K.navigation||K;if(s.loadDataType===fe.default&&(s.loadTreeDataType=(G==null?void 0:G.loadDataType)||fe.all),ee!=null&&ee.length&&G){const{dataField:P,layerField:H}=G;R(ee,!1,`${P}.${H}`)}}e.beforeLoadData&&(K=await e.beforeLoadData({data:K})),E(K)}finally{(X=z==null?void 0:z.value)==null||X.close()}}function L(g){F.value=g}function x(g,E){if(!E)return"";const{dataField:A,pathField:z}=E;return z?A?g[A][z]:Ce.resolveField(g,z):""}function W(g){const E=[];return(g.selectable||g.selectable===void 0)&&E.push(g),g.children&&g.children.length&&g.children.forEach(A=>{E.push(...W(A))}),E}function ne(g,E=!1){var K;if(!(g!=null&&g.length))return g;const A=E?(K=s.navigation)==null?void 0:K.treeInfo:s.treeInfo,{dataField:z,layerField:X}=A||{};return z&&X&&R(g,!0,`${z}.${X}`),g}function _(){try{const g=v.value;return g!==""&&g!=null?g:""}catch(g){return console.error("Error in getIdValues:",g),""}}function Q(){let g=_()||[];return Array.isArray(g)||(g=(""+g).split(e.separator)),{selectedIds:g,selected:!0}}return{includeChilds:F,updateIncludeChilds:L,idValues:v,getData:U,loadData:S,updateSearchFieldTitle:N,getPathCode:x,getChildNodes:W,lookupStates:o,httpService:n,lookupRequest:O,expandAllNodes:ne,getIdQueryParams:Q,setTreeInfo:m,getFieldValue:Ce.resolveField}}function st(e,a){i.watch(()=>e.pagination,n=>{a.default=n}),i.watch(()=>{var n;return(n=e.navigation)==null?void 0:n.pagination},n=>{a.navigation=n});function t(n,o=!1){n&&(o?a.navigation={...a.navigation,...n}:a.default={...a.default,...n})}return{updatePageInfo:t}}const Ne="F_LOOKUP_USER_DATA_SERVICE";function Ut(e,a){const t=i.inject("FLoadingService",null),{lookupStates:n,lookupRequest:o,httpService:l}=a,{lookupOptions:r}=n,u=i.computed(()=>{const b=r.userDataKey||e.id;return b?Ce.encrypt(b):""}),s=i.reactive({key:u.value,data:{}});function c(){return l?l.getSettings(s.key).then(b=>(b&&b.textValue?s.data=JSON.parse(b.textValue):s.data={},e.enableUserData||(s.data.tabIndex=ie.dataList),b)):Promise.resolve()}function f({width:b,height:m}){var h;s.data.size=((h=s.data)==null?void 0:h.size)||{},s.data.size={width:b,height:m}}function p(b=!1){if((e.enableUserData||b)&&l){const{key:m,data:h}=s,d={configkey1:m,configkey2:"",configkey3:"",textvalue:JSON.stringify(h)};return l==null?void 0:l.updateSettings(m,d)}return Promise.resolve()}function v(b){const m={category:"fav",favoriteIds:b.favoriteIds};return{searchValue:JSON.stringify(m),pageIndex:1,pageSize:500,treeToList:r.treeToList}}function F(){var d;const b=v({favoriteIds:(d=s.data)==null?void 0:d.favorites}),m=t==null?void 0:t.show(),h=o();return h?h(r.uri,b).then(y=>{var C;return(C=m.value)==null||C.close(),s.favoriteItems=y&&y.items||[],y}):Promise.resolve()}return{userDataState:s,setDialogSize:f,saveUserData:p,getFavoriteData:F,getUserData:c}}const be=Symbol("FARRIS_LOOKUP_LOCALES");function zt(e){const{t:a}=Tt.useI18n();function t(c,f,p){return c===f?a(p):c}const n=t(e.placeholder,"请选择","lookup.placeholder"),o={datalist:a("lookup.datalist")||"数据列表",favorite:a("lookup.favorites")||"收藏夹"},l={ok:a("lookup.okText")||"确定",cancel:a("lookup.cancelText")||"取消",clear:a("lookup.selectedInfo.clear")||"取消已选",addFav:a("lookup.favoriteInfo.addFavTitle")||"收藏",removeFav:a("lookup.favoriteInfo.cancelFavTitle")||"取消收藏",selectionTotal:c=>a("lookup.selectedInfo.total",[c])},r={clearSelections:a("lookup.selectedInfo.confirm")||"您确认要取消所有选中记录吗?",addedFavSuccess:a("lookup.favoriteInfo.addFav")||"已添加到收藏夹。",cancelFavSuccess:a("lookup.favoriteInfo.cancelFav")||"已从收藏夹中移除。",mustChoosAdatarow:a("lookup.mustChoosAdatarow")||"请选择一条数据。",mustWriteSomething:a("lookup.mustWriteSomething")||"请输入关键字后查询。"},u={includechildren:a("lookup.includechildren")||"包含下级",both:a("lookup.cascade.enable")||"同步选择",up:a("lookup.cascade.up")||"包含上级",down:a("lookup.cascade.down")||"包含下级",disable:a("lookup.cascade.disable")||"仅选择自身"};return{searchColumns:{allColumns:a("lookup.allColumns")||"所有列",anyFields:a("lookup.anyFields")||"全部",exactLabel:a("lookup.exact")||"精确"},placeholder:n,tree:u,messages:r,tabs:o,buttons:l}}function _e(e,a){const t=i.inject(Le.F_NOTIFY_SERVICE_TOKEN),n=i.inject(Ne),o=i.inject(be),{userDataState:l}=n;l.data=l.data||{};const r="_favorite_",u=i.ref(!1);function s({id:d,data:y},C="add"){var V,N;if(d==null&&d==="")return;const I=d;l.data.favorites=((V=l.data)==null?void 0:V.favorites)||[],l.favoriteItems=l.favoriteItems||[],C==="add"?(u.value=!1,l.data.favorites=Array.from(new Set([...((N=l.data)==null?void 0:N.favorites)||[],I])),l.favoriteItems=[...l.favoriteItems,y]):(u.value=!0,l.data.favorites=l.data.favorites.filter(w=>w!==I),l.favoriteItems=l.favoriteItems.filter(w=>w[a]!==I)),n==null||n.saveUserData(!0).then(w=>{const O=C==="add"?o.messages.addedFavSuccess:o.messages.cancelFavSuccess;t==null||t.success({message:O,position:"top-center"})})}function c(d){return d?d.raw[a]:""}const f=i.computed(()=>d=>{var C,I;const y=c(d);return(I=(C=l.data)==null?void 0:C.favorites)==null?void 0:I.includes(y)});function p(d,y,C){d.stopPropagation();const I=c(y);s({id:I,data:y.raw},f.value(y)?"remove":"add")}const v=d=>f.value(d)?o.buttons.removeFav:o.buttons.addFav,F=(d,y)=>i.createVNode("button",{type:"button",onClick:C=>{p(C,y)},class:["btn btn-link f-icon f-icon-star-outline p-0",{"f-icon-star":f.value(y)}],style:"color: #ffbd8c;",title:v(y)},null),b=(d,y)=>y.disabled?"":F(d,y),m={field:r,title:"",width:50,fixed:"right",align:"center",formatter:F};function h(d,y,C=!1){const I=re.cloneDeep(y);e.enableFavorite&&(m.formatter=C?b:F,I.push(m)),d==null||d.updateColumns(I)}return{favorite:m,removeFavoriteItem:u,setColumns:h}}function qe(e,a,t,n){const{selectionState:o,unSelectDataId:l,lookupOptions:r}=t,u=i.computed(()=>!(o.value&&o.value.length));n&&i.watch(()=>n.value,(s,c)=>{var f;if(s===ie.dataList&&s!==c&&!u.value){const p=o.value.map(v=>v[r.idField]);(f=a.value)==null||f.selectItemByIds(p)}}),i.watch(u,(s,c)=>{var f;s&&((f=a.value)==null||f.clearSelection())}),e.showSelections&&r.multiSelect&&i.watch(l,s=>{var c;s&&((c=a.value)==null||c.unSelectItemByIds(s))})}const ve=Symbol("LOOKUP_SELECTIONS_MANAGER");function rt(e,a){const{selectionState:t,unSelectDataId:n,lookupOptions:o}=a,l=i.computed(()=>o.idField);function r(d){return d[l.value]}function u(){let d=new Map;return t.value&&t.value.length&&(d=new Map(t.value.map(y=>[y[l.value],y]))),d}function s(){t.value=[]}function c(){return t.value||[]}function f(){return t.value.map(d=>d[l.value])}function p(d){if(!d)return;if(!l.value){console.error("idField is required");return}const y=Array.isArray(d)?d:[d],C=u();y.forEach(I=>{C.delete(I)}),t.value=Array.from(C.values()),n.value=y}function v(d){return u().has(d)}function F(d,y=!0){if(!d)return;if(!l.value){console.error("idField is required");return}const C=Array.isArray(d)?d:[d];if(!C.length)return;if(!C.every(N=>l.value in N)){console.error("Some items do not have the specified idField:",l.value);return}const I=C.map(N=>N[l.value]);if(!o.multiSelect){if(I.length&&v(I[0]))return;s()}const V=u();if(y){const N=new Map(C.map(w=>[w[l.value],w]));I.forEach(w=>{V.has(w)||V.set(w,N.get(w))})}else I.forEach(N=>{V.delete(N)});t.value=Array.from(V.values())}function b(d){if(!d||!d.length)return;const y=d.map(C=>C.data);F(y)}function m(d){if(d){const y=d.raw[l.value];p(y)}}function h(d){!d||!d.length||p(d)}return{updateSelections:F,clearSelections:s,getSelectionIds:f,getSelections:c,unSelectionsByIds:p,selectTreeNodes:b,unSelectTreeNode:m,unSelectTreeNodes:h,isSelected:v,getPrimaryKey:r}}function ct(e,a){const{getSelectionIds:t}=rt(e,a),{lookupOptions:n}=a;function o(u,s){u==null||u.updateDataSource(s||[])}function l(u){const s=t();if(s&&s.length){if(n.multiSelect){u==null||u.selectItemByIds(s);return}u==null||u.activeRowById(s[0])}}function r(u,s){o(u,s),l(u)}return{loadData:o,selectItemByIds:l,loadAndSelect:r}}function dt(e,a,t){const n=i.inject(ye,i.ref(ie.dataList)),o=i.inject(pe),l=i.inject(ve),{lookupStates:r,loadData:u,includeChilds:s,getPathCode:c,getChildNodes:f}=o,{lookupState:p,navigationState:v,pageInfoState:F,searchState:b,lookupOptions:m}=r,{checkPaination:h,checkMultiSelect:d,checkColumnOptions:y,navIsTreeList:C,isPathCodeTree:I}=me(e,r),{updatePageInfo:V}=st(e,F),{updateSelections:N,isSelected:w,getPrimaryKey:O}=l,{loadAndSelect:U}=ct(e,r),D=h(e.pagination),R=d(),S=y(),L=i.ref(),x=i.ref([]),{navSelectedItems:W,getNavigationIdField:ne,getRelationFilter:_}=t;V(D);const Q=i.ref(F.default),{setColumns:g}=_e(e,m.idField);i.watch(()=>F.default,q=>{var J;Q.value=q,(J=L.value)==null||J.updatePagination(q)}),qe(e,L,o.lookupStates,n);function E(q,J,oe){const se={total:J};if(oe){const{pageIndex:de,pageSize:We,enablePager:Ge,pageList:yt}=oe;Object.assign(se,{index:de,size:We,enable:Ge})}else se.enable=!1;V(se),U(L.value,q||[])}const A=i.computed(()=>{var de;if(!((de=W.value)!=null&&de.length))return null;const q=W.value,J={relationFilter:_(q)};if(!C()||!s.value)return J;const{treeInfo:oe}=v,se={action:"navAllChildren",...J};return I(oe)?Object.assign(se,{navNodePathCode:c(q[0].data,oe)}):se}),z=i.watch([()=>p==null?void 0:p.columns,()=>p==null?void 0:p.items,()=>p==null?void 0:p.pageInfo,()=>p==null?void 0:p.total,()=>p==null?void 0:p.selectedData],([q,J,oe,se,de])=>{L.value&&(q&&g(L.value,q),de&&de.length&&N(de),J&&E(J,se||0,oe))});i.watch(()=>e.idValue,q=>{x.value=q.split(e.separator)});function X(q){if(q&&q.length&&!m.multiSelect){const J=O(q[0]);if(w(J))return}N(q),a.emit("selectionsChanged",{items:q})}function K(q,J){!m.multiSelect&&e.openType==="Modal"&&(N([J]),a.emit("dblClickRow",{items:[J]}))}function ee(q){N(q==null?void 0:q.raw,!1)}function G(){const q={search:b.default,action:"list"};e.openType==="Modal"&&A.value&&Object.assign(q,A.value),u(q,J=>{E(J.items,J.total||0,J.pageInfo)})}const P=re.throttle(()=>{V({index:1}),G()},200),H=i.watch(()=>W==null?void 0:W.value,q=>{if(m.uri){P();return}const J=q.map(oe=>oe[ne()]);a.emit("navSelectionsChanged",{items:q,ids:J})}),k=i.watch(()=>b.default,q=>{if(m.uri){P();return}a.emit("search",q)}),T=i.watch(()=>s.value,()=>{if(m.uri&&W.value&&W.value.length){P();return}});function M(){z(),H(),k(),T()}i.watch(()=>m.displayType,q=>{q.toLowerCase()==="treelist"&&M()});function $({pageSize:q,pageIndex:J}){var de;let oe=J;((de=Q.value)==null?void 0:de.size)!==q&&(oe=1);const se={size:q,index:oe,isNavigation:!1};if(V(se),m.uri){G();return}a.emit("pageSizeChanged",se)}const Z=i.computed(()=>{var q;return{"lookup-datagrid":!0,"lookup-datagrid-empty":!((q=p.items)!=null&&q.length)}});function le(){return i.createVNode(xe.FDataGrid,{ref:L,class:Z.value,pagination:Q.value,summary:{enable:!1},columnOption:S,idField:m.idField,rowNumber:{enable:!1},showBorder:!0,virtualized:!0,fit:!0,selection:R,selectionValues:x.value,onSelectionUpdate:X,onUnSelectItem:ee,onChanged:$,onDoubleClickRow:K},null)}return{datagridRef:L,selectionValues:x,renderDataGrid:le,unwatches:M}}const Ie=Symbol("LOOKUP_TREEROW_OPTIONS"),ut={cascadeOption:{autoCheckChildren:!1,autoCheckParent:!1},collapseField:"collapse",hasChildrenField:"hasChildren"};function ft(e,a=!1){function t(n){(n.raw.addtional||n.raw.selectable===!1)&&(n.disabled=!0);const o=a?e.navTreeInfo:e.treeInfo;return o!=null&&o.onlySelectLeaf&&(n.disabled=!n.raw.leaf),n}return{customRowStatus:t}}function pt(e,a){const{lookupState:t,lookupOptions:n}=e;function o(h,d,y){return h.reduce((C,I)=>{var V;if(I.parents=[],d){const N=re.get(d.data,n.idField);I.parent=d,I.parents=[...y||[],N]}return I.id=re.get(I,n.idField),C.push(I),(V=I.children)!=null&&V.length&&C.push(...o(I.children,I,I.parents)),C},[])}function l(h){var d;return(d=t==null?void 0:t.flattenTreeNodes)==null?void 0:d.find(y=>y.id===h)}function r(h){var d;return((d=t==null?void 0:t.flattenTreeNodes)==null?void 0:d.filter(y=>{var C;return(C=y.parents)==null?void 0:C.includes(h)}))??[]}function u(h){var y;if(!h)return[];const d=l(h);return((y=d==null?void 0:d.parents)==null?void 0:y.map(C=>l(C)))??[]}function s(h){var I;if(!h)return[];const d=l(h),y=((I=d==null?void 0:d.parents)==null?void 0:I.map(V=>l(V)))??[],C=r(h);return[...y,...C]}function c(h,d=!0){const y=u(h).filter(I=>{var V;return!((V=I.children)!=null&&V.some(N=>{var w;return(w=e.selectionState.value)==null?void 0:w.some(O=>O[n.idField]===N.id)}))}),C=d?[]:r(h);return y.concat(C)}function f(h,d,y=!0){var I;const C={down:()=>r(h),up:()=>y?u(h):c(h),both:()=>y?s(h):c(h,!1)};return((I=C[d])==null?void 0:I.call(C))??[]}function p(h,d={},y=!1){const{field:C="*",value:I=""}=d,V=!!I,{layerType:N,dataField:w,pathField:O,layerField:U}=y?n.navTreeInfo:n.treeInfo,D=N==="parentId",R={category:y?"navchildren":"children",searchField:C,searchValue:I,searchType:"like"};if(D)R.parentId=h.raw.id;else{const L=h.raw[w];R.parentPath=re.get(L,O),R.parentLayer=re.get(L,U)}const S={searchValue:"",customData:Fe.value,enableFullTree:n.enableFullTree,loadTreeDataType:n.loadTreeDataType==="all"?"loadall":"layerload"};return V&&(S.enableFullTree=!1,S.loadTreeDataType="layerload",D&&(R.searchValue="",R.searchField="*")),S.searchValue=JSON.stringify(R),S}function v(h,d=!1){const{isEnableCascadeCheck:y}=a,{layerType:C}=d?n.navTreeInfo:n.treeInfo,I=n.loadTreeDataType!=="all"&&C==="pathcode"&&y()&&(n.cascadeValue==="both"||n.cascadeValue==="down");return h?h.data&&!h.leaf&&I:I}function F(h){const{dataField:d,pathField:y}=n.treeInfo,C=h.data[d],I=re.get(C,y);return{searchValue:JSON.stringify({category:"allChildren"}),parentsIds:[I],customData:Fe.value}}function b(h,d){let y=h,C=null;for(const I of d){const V=y.find(N=>N.data.id===I);if(!V)return null;C=V,y=V.children||[]}return C}function m(h,d,y){var O;if(!y)return;const C=l(d),I=[...(C==null?void 0:C.parents)??[],d],V=(h??[]).map(U=>({...U,hasChildren:!U.leaf,parents:[...I]})),N=b(t.flattenTreeNodes||[],I);N&&(N.children=[...V],(O=t.flattenTreeNodes)==null||O.push(...V));const{isDropdownMode:w}=a;i.nextTick(()=>{var R;if(y.addChildrenToNode(V,d),w())return;const U=((R=e.selectionState.value)==null?void 0:R.map(S=>S[n.idField]))??[],D=V.filter(S=>U.includes(S.id)).map(S=>S.id);D.length&&y.selectItemByIds(D)})}return{flattenTreeNodes:o,getParents:u,getChildren:r,getParentsAndChildren:s,getTreeNodeWithCascadeValue:f,buildGetChildrenQueryParams:p,needGetAllChildNodes:v,buildGetAllChildrenQueryParams:F,loadChildNodes:m}}function ht(e,a){const t=i.inject(ye,i.ref(ie.dataList)),n=i.inject(pe),{lookupStates:o}=n,{lookupState:l,searchState:r,lookupOptions:u}=o,s=i.inject(Ie),c=i.inject(ve),f=me(e,o),{checkMultiSelect:p,checkColumnOptions:v,isEnableCascadeCheck:F}=f,{setColumns:b}=_e(e,u.idField),{selectTreeNodes:m,unSelectTreeNode:h,unSelectTreeNodes:d,updateSelections:y,getSelectionIds:C}=c,I=p(),V=v(),N=i.ref(),w=i.ref([]),{loadAndSelect:O}=ct(e,o),{loadData:U,expandAllNodes:D,getData:R}=n,{flattenTreeNodes:S,getTreeNodeWithCascadeValue:L,buildGetChildrenQueryParams:x,needGetAllChildNodes:W,buildGetAllChildrenQueryParams:ne,loadChildNodes:_}=pt(o,f);function Q(T,M=!1){M&&(T=D(T)),l.flattenTreeNodes=S(T||[]),O(N.value,T||[])}qe(e,N,o,t);const g=i.watch([()=>l==null?void 0:l.columns,()=>l==null?void 0:l.items,()=>l==null?void 0:l.pageInfo,()=>l==null?void 0:l.total,()=>l==null?void 0:l.selectedData],([T,M,$,Z,le])=>{N.value&&(le&&le.length&&y(le),T&&b(N.value,T,!0),Q(M||[],l.action==="search"))});function E(T,M=!0){const{cascadeValue:$}=u;return F()&&$!==Ae.Disable?L(T,$,M).filter(le=>le.selectable||le.selectable===void 0).map(le=>le.id):[]}function A(T){m(T),a.emit("selectionsChanged",{items:T})}function z(T){h(T);const M=re.get(T.raw,u.idField),$=E(M);if(W(T.raw)){const Z=ne(T.raw);R(Z).then(le=>{const J=(le.items||[]).filter(se=>!se.addtional&&(se.selectable||se.selectable===void 0));J&&J.length&&m(J);const oe=(J||[]).map(se=>se.id);d([M,...$,...oe])})}else d([M,...$])}function X(T){const M=re.get(T.raw,u.idField),$=E(M);if($.length&&N.value.selectItemByIds([M,...$]),W(T.raw)){const Z=ne(T.raw);R(Z).then(le=>{const J=(le.items||[]).filter(oe=>!oe.addtional&&(oe.selectable||oe.selectable===void 0));J&&J.length&&m(J)})}}function K(T="list"){U({search:r.default,action:T},M=>{Q(M.items,T==="search")})}const ee=i.watch(()=>r.default,T=>{if(u.uri){K("search");return}a.emit("search",T)});function G(){g(),ee()}i.watch(()=>u.displayType,T=>{T.toLowerCase()!=="treelist"&&G()});function P(T){if(N.value.hasChildren(T))return Promise.resolve();const M=T.raw.id,$=x(T,r.default);return R($).then(Z=>{_((Z==null?void 0:Z.items)??[],M,N.value)})}function H(T){var Z;const{node:M,$event:$}=T;u.enableFavorite&&((Z=$.target)==null?void 0:Z.className.indexOf("f-icon-star"))>-1||!u.multiSelect&&e.openType==="Modal"&&(y([M]),a.emit("dblClickRow",{items:[M]}))}function k(){return i.createVNode(Be.FTreeGrid,{class:"lookup-treegrid",ref:N,fit:!0,data:e.data,idField:u.idField,columns:e.columns,rowNumber:{enable:!1},columnOption:V,selection:I,showBorder:!0,virtualized:!0,displayField:"code",rowOption:s,hierarchy:ut,onSelectionUpdate:A,onUnSelectItem:z,onSelectItem:X,loadData:P,onDblclickNode:H},null)}return{treegridRef:N,selectionTreeValues:w,renderTreeGrid:k,unwatches:G}}const _t={fields:{type:Array,default:()=>[]},showAllColumns:{type:Boolean,default:!0},isNavigation:{type:Boolean,default:!1},id:{type:String,default:""},enableEqualSearch:{type:Boolean,default:!1},exactLabel:{type:String,default:"精确"}},qt=i.defineComponent({name:"FLookupSearchBar",props:_t,emits:["search"],setup(e,a){const t='<i id="'+e.id+'-icon-search" class="f-icon f-icon-search"></i>',n=i.inject(pe),{queryState:o}=n.lookupStates,l=i.ref(e.fields||[]),r=i.ref(""),u=i.ref(o.value),s=i.ref(e.isNavigation),c=i.ref(),f=i.ref(!1),p=i.computed(()=>({field:r.value,value:u.value,isNavigation:s.value,type:f.value?"equal":"like"}));function v(){if(!l.value.length)return;let d="";e.showAllColumns&&(d="*"),d=l.value[0].value;const y=l.value.find(C=>!!C.isDefault);y&&(d=y.value),r.value=d}i.watch(()=>e.fields,d=>{l.value=d,v()});function F(){a.emit("search",p.value)}const b=re.debounce(()=>F(),300);function m(){u.value="",F()}function h(d){d.key==="Enter"&&b()}return i.onMounted(()=>{v(),s.value&&(u.value="")}),()=>i.createVNode("div",{class:"fv-lookup-search-bar d-flex flex-row"},[i.createVNode("div",{style:"width: 160px;"},[i.createVNode(Qe.FComboList,{ref:c,data:l.value,textField:"label",valueField:"value",idField:"value",modelValue:r.value,"onUpdate:modelValue":d=>r.value=d,enableClear:!1},null)]),i.createVNode("div",{class:"f-utils-fill ml-2 d-flex align-items-center"},[i.createVNode(Je.FButtonEdit,{buttonContent:t,class:"f-utils-fill",maxLength:200,modelValue:u.value,"onUpdate:modelValue":d=>u.value=d,onClickButton:F,enableClear:!0,onClear:m,onKeyup:h,popupOnClick:!0,id:e.id+"-search-bar"},null),e.enableEqualSearch&&i.createVNode("div",{class:"custom-control custom-checkbox custom-control-inline pr-0 m-0 ml-2"},[i.withDirectives(i.createVNode("input",{class:"custom-control-input",id:"farris-lookup_searchtype-equal",type:"checkbox","onUpdate:modelValue":d=>f.value=d},null),[[i.vModelCheckbox,f.value]]),i.createVNode("label",{class:"custom-control-label btn-link lookup-checkbox-label",for:"farris-lookup_searchtype-equal",style:"padding-left:18px;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;"},[e.exactLabel])])])])}});function $e(e,a,t,n){const{lookupState:o,searchState:l,navigationState:r}=t,{searchFieldItems:u,navSearchFieldItems:s}=lt(e,o,r),c=i.ref([]),f=i.ref([]);function p(h,d=!1){let y=h;e.searchAnyField&&(y=[{label:n.searchColumns.allColumns||"所有列",value:"*"}].concat(h)),d?f.value=y:c.value=y}p(u.value),p(s.value,!0),i.watch(()=>u.value,h=>{p(h)}),i.watch(()=>s.value,h=>{p(h,!0)});function v(){const{displayType:h,treeToList:d}=t.lookupOptions;return(h.toLowerCase()===ce.Tree.toLowerCase()||h.toLowerCase()===ce.ListTree.toLowerCase())&&!d}function F(h){const d={...h};if(a){l.navigation=d;return}l.default=d}const b=i.computed(()=>a?f.value||[]:c.value||[]);function m(){if(e.enableSearchBar&&b.value.length>0)return i.createVNode("div",{class:"p-2"},[i.createVNode(qt,{fields:b.value,id:e.id,showAllColumns:e.searchAnyField,isNavigation:a,onSearch:F,enableEqualSearch:e.enableEqualSearch&&!a&&!v(),exactLabel:n.searchColumns.exactLabel||"精确"},null)])}return{renderSearchBar:m}}function $t(e,a){var G;const t=i.inject(Ie),n=i.inject(pe),o=i.inject(be),{loadData:l,lookupStates:r,expandAllNodes:u,getFieldValue:s,getData:c}=n,{navigationState:f,pageInfoState:p,searchState:v,lookupOptions:F}=r,{renderSearchBar:b}=$e(e,!0,r,o),m=me(e,r),{checkPaination:h,navIsList:d,navIsTreeList:y}=m,{updatePageInfo:C}=st(e,p),I=i.ref([]),{buildGetChildrenQueryParams:V,loadChildNodes:N}=pt(r,m);if(d()){const P=h((G=e.navigation)==null?void 0:G.pagination);C(P,!0)}const w=i.ref(p.navigation),O={enableSelectRow:!0,multiSelect:!1,showCheckbox:!1,keepSelectingOnClick:!1},U={fitColumns:!0,fitMode:"percentage",resizeColumn:!0},D=i.ref(),R=i.ref(),S=i.ref("id");i.watch(()=>p.navigation,P=>{var H;w.value=P,(H=R.value)==null||H.updatePagination(P)});function L(P,H,k){var T,M,$;if(P=P||[],d()){const Z={total:H};if(k){const{pageIndex:le,pageSize:q,enablePager:J,pageList:oe}=k;Object.assign(Z,{index:le,size:q,enable:J})}C(Z,!0),(T=R.value)==null||T.updateDataSource(P)}else y()&&((M=v.navigation)!=null&&M.value&&(P=u(P,!0)),($=D.value)==null||$.updateDataSource(P))}function x(P){var H,k;d()?(H=R.value)==null||H.updateColumns(P):y()&&((k=D.value)==null||k.updateColumns(P))}i.watch([()=>f==null?void 0:f.columns,()=>f==null?void 0:f.items,()=>f==null?void 0:f.pageInfo,()=>f==null?void 0:f.total],([P,H,k,T])=>{P&&x(P),L(H,T||0,k)}),i.watch(()=>f==null?void 0:f.idField,P=>{S.value=P||"id"});function W(P){I.value=P}function ne(P){I.value=P}function _(){l({search:v.navigation,action:"navsearch"},P=>{L(P.items,P.total||0,P.pageInfo)})}i.watch(()=>v.navigation,P=>{if(F.uri){C({index:1},!0),_();return}a.emit("search",P)});function Q({pageSize:P,pageIndex:H}){var M;let k=H;((M=w.value)==null?void 0:M.size)!==P&&(k=1);const T={size:P,index:k};if(C(T,!0),F.uri){_();return}a.emit("pageSizeChanged",T)}function g(P){if(D.value.hasChildren(P))return Promise.resolve();const H=P.raw.id,k=V(P,v.navigation,!0);return c(k).then(T=>{N((T==null?void 0:T.items)??[],H,D.value)})}function E(){return i.createVNode(Be.FTreeGrid,{ref:D,fit:!0,idField:S.value,rowNumber:{enable:!1},columnOption:U,selection:O,virtualized:!0,showBorder:!0,rowOption:t,hierarchy:ut,onSelectionUpdate:W,loadData:g},null)}function A(){return i.createVNode(xe.FDataGrid,{ref:R,pagination:w.value,summary:{enable:!1},columnOption:U,idField:S.value,rowNumber:{enable:!1},showBorder:!0,fit:!0,virtualized:!0,selection:O,onSelectionUpdate:ne,onChanged:Q},null)}function z(){if(y())return E();if(d())return A()}function X(){return i.createVNode("div",{class:"d-flex h-100 w-100 flex-column"},[b(),i.createVNode("div",{class:"f-utils-fill px-2",style:"position: relative;"},[z()])])}function K(){return S.value}function ee(P){return f.relations&&f.relations.length?f.relations.map(k=>{const{groupField:T,helpField:M}=k,$={fieldName:M,fieldValue:""},Z=P.map(le=>s(le,T));return $.fieldValue=Z.join(","),$}):""}return{renderNavigation:X,selectedItems:I,getNavigationIdField:K,getRelationFilter:ee}}function Wt(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!i.isVNode(e)}const Gt=i.defineComponent({name:"LookupContainer",props:we,emits:["update:modelValue","search","navSelectionsChanged","pageIndexChanged","pageSizeChanged","changeDialogOptions","clearSearch","dblClickRow"],setup(e,a){i.inject(ye,i.ref(ie.dataList));const t=i.inject(pe),n=i.inject(be),{lookupStates:o,getIdQueryParams:l}=t,{lookupState:r,navigationState:u,queryState:s,lookupOptions:c,searchState:f}=o,{renderSearchBar:p}=$e(e,!1,o,n),{isDoubleList:v,getNavigationSize:F,isTreeList:b}=me(e,o),{renderNavigation:m,selectedItems:h,getNavigationIdField:d,getRelationFilter:y}=$t(e,a),{renderTreeGrid:C,unwatches:I}=ht(e,a),{renderDataGrid:V,unwatches:N}=dt(e,a,{navSelectedItems:h,getNavigationIdField:d,getRelationFilter:y}),w=i.computed(()=>b()?C:V),O=F();function U(S){var x;const L=(x=c.dialog)==null?void 0:x.title;L&&L!==je&&(S=L),a.emit("changeDialogOptions",{title:S})}function D(S,L){r.action=L,b()?N():I(),S.navigation&&(Object.keys(S.navigation).forEach(x=>{var W;u[x]=(W=S.navigation)==null?void 0:W[x]}),S.navigation.treeInfo&&(t==null||t.setTreeInfo(S.navigation.treeInfo,!0)),delete S.navigation),S.treeInfo&&(t==null||t.setTreeInfo(S.treeInfo)),Object.keys(S).forEach(x=>{r[x]=S[x]})}function R(){const S={};e.enableToSelect&&(S.selectedInfo=l()),s.value!=null&&(S.search={field:"*",value:s.value,type:"like"},S.action="search",f.default={field:"*",value:s.value,type:"like"}),t==null||t.loadData(S,L=>{i.nextTick(()=>{D(L,(S==null?void 0:S.action)||""),U(L.title||"")})})}return i.onMounted(()=>{R(),document.body.classList.add("lookup-modal-open")}),i.onUnmounted(()=>{document.body.classList.remove("lookup-modal-open")}),()=>{let S;return i.createVNode(Oe.FLayout,null,{default:()=>[v()&&e.showNavigation&&i.createVNode(Oe.FLayoutPane,{position:"left",width:O==null?void 0:O.width,minWidth:O==null?void 0:O.minWidth},Wt(S=m())?S:{default:()=>[S]}),i.createVNode(Oe.FLayoutPane,{position:"center"},{default:()=>[i.createVNode("div",{class:"d-flex h-100 w-100 flex-column"},[p(),i.createVNode("div",{class:"f-utils-fill px-2",style:"position: relative;"},[w.value()])])]})]})}}}),Ht={multiSelect:{type:Boolean,default:!1},idField:{type:String,default:"id"},displayType:{type:String,default:"list"},selectedIds:{type:Array,default:[]},showSelections:{type:Boolean,default:!1},treeToList:{type:Boolean,default:!1},enableFavorite:{type:Boolean,default:!0}},Jt=i.defineComponent({name:"FLookupFavorite",props:Ht,emits:["dblClickRow"],setup(e,a){const t=i.inject(Ie),{userDataState:n,getFavoriteData:o}=i.inject(Ne),l=i.inject(ye,i.ref(ie.dataList)),r=i.inject(ve),u=i.inject(pe),{lookupStates:s,expandAllNodes:c}=u,f=i.computed(()=>s.lookupOptions.idField||"id"),p=i.ref(e.selectedIds),{setColumns:v,removeFavoriteItem:F}=_e(e,f.value),{isTreeList:b}=me(e,s),{updateSelections:m,unSelectTreeNode:h,selectTreeNodes:d}=r,y=i.ref(),C=i.ref(),I=i.computed(()=>b()?C.value:y.value);qe(e,I,s);function V(){return n.data&&n.data.favorites&&n.data.favorites.length}function N(_){I.value.clearSelection(),_&&_.length&&I.value.selectItemByIds(_)}i.watch(()=>e.selectedIds,(_,Q)=>{JSON.stringify(_)!==JSON.stringify(Q)&&(p.value=_,p.value.length?N(p.value):I.value.clearSelection())});function w(_,Q){Q&&Q.length&&v(I.value,Q,b()),_&&(b()&&(_=c(_)),I.value.updateDataSource(_||[])),N(p.value||[])}function O(){o().then(_=>{_?w(_.items||[],_.columns):w([],null)})}i.watch(()=>l.value,(_,Q)=>{var g;_===ie.favorite&&(V()?O():w([],(g=s.lookupState)==null?void 0:g.columns))}),i.watch(()=>F.value,(_,Q)=>{l.value===ie.favorite&&_&&(b()?O():w(n.favoriteItems||[],null),F.value=!1)});const U={fitColumns:!0,fitMode:"percentage",resizeColumn:!0},D={enableSelectRow:!0,multiSelect:e.multiSelect,showCheckbox:e.multiSelect,multiSelectMode:"OnCheckAndClick"};function R(_){b()?d(_):m(_)}function S(_){b()?h(_):m(_==null?void 0:_.raw,!1)}function L(_,Q){e.multiSelect||(m([Q]),a.emit("dblClickRow",{items:[Q]}))}function x(_){const{node:Q}=_;e.multiSelect||(m([Q]),a.emit("dblClickRow",{items:[Q]}))}function W(){return i.createVNode(Be.FTreeGrid,{ref:C,fit:!0,idField:f.value,rowNumber:{enable:!1},columnOption:U,selection:D,showBorder:!0,virtualized:!0,rowOption:t,onSelectionUpdate:R,onUnSelectItem:S,onDblclickNode:x},null)}function ne(){return i.createVNode(xe.FDataGrid,{ref:y,pagination:{enable:!1},summary:{enable:!1},columnOption:U,idField:f.value,rowNumber:{enable:!1},showBorder:!0,virtualized:!0,fit:!0,selection:D,onSelectionUpdate:R,onUnSelectItem:S,onDoubleClickRow:L},null)}return()=>b()?W():ne()}}),Qt={id:{type:String},title:{type:String},height:{type:Number,default:50},draggable:{type:Boolean,default:!0},enableFavorite:{type:Boolean,default:!1},useHttpComposition:{type:Object,default:{}},userDataService:{type:Object,default:{}},useDialog:{type:Object,default:{}},selectionsManager:{type:Object,default:{}},showSelectedList:{type:Boolean,default:!1},showIncludeChildNodes:{type:Object,default:{show:!0,value:!1}},showCascadeControl:{type:Boolean,default:!1},isMaximized:{type:Boolean,default:!1},locales:{type:Object,default:{}}},Xt={idField:{type:String,default:"id"},parentRef:{type:HTMLElement,default:null},popoverOffsetX:{type:Number,default:0}},Kt=i.defineComponent({props:Xt,setup(e,a){const t=i.inject("FMessageBoxService"),n=i.inject(ve),o=i.inject(pe),{lookupState:l,selectionState:r}=o.lookupStates,u=i.inject(be),{clearSelections:s,unSelectionsByIds:c}=n,f=i.ref(),p=i.computed(()=>f),v=i.ref(),F=i.ref(e.popoverOffsetX||-15);i.watch(()=>e.popoverOffsetX,L=>{F.value=L});const b=i.computed(()=>F.value===-15?10:100),m=i.ref(e.parentRef),h="_remove_selected_";function d(L,x,W){L.stopPropagation();const ne=x.raw[e.idField];c(ne)}const y={field:h,title:"",width:50,fixed:"right",align:"center",formatter:(L,x)=>i.createVNode("button",{type:"button",onClick:W=>{d(W,x)},class:"btn btn-link f-icon f-icon-x p-0",style:"color: #dd2438;"},null)},C=i.computed(()=>{const L=re.cloneDeep((l==null?void 0:l.columns)||[]);if(L.length)return L.push(y),L});i.watch(()=>e.parentRef,L=>{m.value=L});const I={fitColumns:!0,fitMode:"percentage",resizeColumn:!0},V={enableSelectRow:!0,multiSelect:!1,showCheckbox:!1,showSelectAll:!1,multiSelectMode:"OnCheckAndClick"},N=i.ref({width:"0px",height:"0px"});let w;function O(){var _,Q;const L=((_=m.value)==null?void 0:_.offsetHeight)-100,x=200,W=r.value.length*28+60,ne=W>L?L:W<x?x:W;N.value={width:((Q=m.value)==null?void 0:Q.offsetWidth)-20+"px",height:ne+"px"}}i.watch(()=>v.value,L=>{L&&(L.updateColumns(C.value),L.updateDataSource(re.cloneDeep(r.value||[])),O())}),i.watch(()=>r.value,L=>{var x;(x=v.value)==null||x.updateDataSource(re.cloneDeep(L||[]),{keepScrollTop:!0})}),i.watch(()=>m.value,L=>{w=new ResizeObserver(()=>{m.value&&O()}),w.observe(m.value)});const U=i.computed(()=>(r.value||[]).length>0),D=i.computed(()=>({display:"flex","align-items":"center",opacity:U.value?1:.4,cursor:U.value?"pointer":"not-allowed",pointerEvents:U.value?"auto":"none"}));function R(){const L=u==null?void 0:u.messages.clearSelections;t==null||t.question(L,"",()=>{s()})}i.onMounted(()=>{O()}),i.onUnmounted(()=>{w&&m.value&&w.unobserve(m.value)});function S(){var L;(L=p.value)==null||L.value.hide()}return a.expose({hidePopup:S}),()=>i.createVNode(i.Fragment,null,[i.createVNode("div",{class:"d-flex flex-row align-items-center",style:"line-height:24px"},[i.withDirectives(i.createVNode("div",{style:D.value,innerHTML:u.buttons.selectionTotal(r.value.length)},null),[[i.resolveDirective("popover"),p.value,"toggle"]]),U.value&&i.createVNode("button",{class:"btn btn-link btn-sm p-0 pl-2",style:"line-height:24px",onClick:R},[u.buttons.clear])]),i.createVNode(St,{id:"lookup-selected-popover",customStyles:{filter:"drop-shadow(#c5c5c5 0px 0px 6px)"},offsetX:F.value,arrowOffsetX:b.value,ref:f,placement:"top-left",keepWidthWithReference:!1,fitContent:!0},{default:()=>{var L;return[i.createVNode("div",{style:N.value},[((L=f.value)==null?void 0:L.isShow)&&i.createVNode(xe.FDataGrid,{ref:v,pagination:{enable:!1},summary:{enable:!1},columnOption:I,idField:e.idField,rowNumber:{enable:!1},showBorder:!1,virtualized:!0,fit:!0,selection:V},null)])]}})])}}),Yt=i.defineComponent({props:{modelValue:{type:Boolean,default:!1},label:{type:String,default:"包含下级"}},emits:["update:modelValue"],setup(e,a){const t=i.ref(e.modelValue);function n(o){o.stopPropagation(),t.value=!t.value,a.emit("update:modelValue",t.value)}return()=>i.createVNode("div",{class:"custom-control custom-checkbox mb-0",onClick:n},[i.withDirectives(i.createVNode("input",{id:"lookup-include-childs-input","onUpdate:modelValue":o=>t.value=o,title:"checkbox-input",type:"checkbox",class:"custom-control-input"},null),[[i.vModelCheckbox,t.value]]),i.createVNode("label",{class:"custom-control-label",style:"padding-left: 1.2rem;"},[e.label])])}}),Zt=i.defineComponent({name:"FLookupCascadeSelector",props:["modelValue"],emits:["update:modelValue"],setup(e,a){const t=i.inject(be),n=i.ref(),o=i.ref(e.modelValue);return i.watch(()=>o.value,(l,r)=>{l!==r&&a.emit("update:modelValue",l)}),Ee.forEach(l=>{l.text=t.tree[l.value]}),()=>i.createVNode("div",{style:"width: 130px",class:"ml-3"},[i.createVNode(Qe.FComboList,{ref:n,data:Ee,textField:"text",valueField:"value",idField:"value",modelValue:o.value,"onUpdate:modelValue":l=>o.value=l,enableClear:!1,minPanelWidth:130,placement:"top-left"},null)])}}),en=i.defineComponent({name:"FLookupModalContainer",props:Qt,emits:["closeModal","maximize"],setup(e,a){const t=i.ref(ie.dataList);i.provide(ye,t),i.provide(pe,e.useHttpComposition),i.provide(Ne,e.userDataService),i.provide(ve,e.selectionsManager),i.provide(be,e.locales);const{tabs:n,buttons:o,tree:l}=e.locales,r=i.reactive(e.showIncludeChildNodes),u=i.ref(r.value),{lookupOptions:s}=e.useHttpComposition.lookupStates,c=s.dialog,f=i.computed(()=>s.displayType.toUpperCase()===ce.TreeList),p=ft(s,f.value);i.provide(Ie,p);const v=i.ref(e.isMaximized);i.watch(()=>e.isMaximized,(x,W)=>{v.value=x});const F=i.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:v.value}));i.ref();const b=i.computed(()=>r.show&&t.value===ie.dataList&&s.displayType&&f.value),m=i.computed(()=>b.value?-99:-15);i.watch(()=>u.value,(x,W)=>{e.useHttpComposition.updateIncludeChilds(x)}),i.watch(()=>e.showIncludeChildNodes,(x,W)=>{r.value=x,e.useHttpComposition.updateIncludeChilds(x.value)});const{userDataState:h}=e.userDataService,{cancelDialog:d,submitDialog:y}=e.useDialog,C=i.ref(),I=i.ref();function V(x){a.emit("maximize",x)}function N(x){a.emit("closeModal",x)}async function w(x){await y()&&N(x)}async function O(x){await d()&&N(x)}function U(x){t.value=x,h.data.tabIndex=x}const D=i.computed(()=>({transform:`translate3d(${t.value===ie.favorite?84:0}px, 0px, 0px)`})),R=i.computed(()=>x=>({visibility:t.value===x?"visible":"hidden",position:"absolute",top:0,transition:"all 0.3s ease-in",opacity:t.value===x?1:0})),S=i.computed(()=>{const x=e.enableFavorite?"50%":"100%",W=e.enableFavorite?100:80,ne=c.showMaxButton||c.showCloseButton?W:0;return{maxWidth:`calc(${x} - ${ne}px)`}});function L(x){x.stopPropagation(),document.body.click()}return i.onMounted(()=>{var x;h.data.favorites&&h.data.favorites.length&&(t.value=((x=h.data)==null?void 0:x.tabIndex)||ie.dataList),b.value&&e.useHttpComposition.updateIncludeChilds(u.value)}),()=>i.createVNode("div",{class:"d-flex flex-column h-100 lookup-modal",ref:C},[i.createVNode("div",{class:"d-flex justify-content-between align-items-center px-3 lookup-modal-header"},[i.createVNode("div",{class:"lookup-modal-header-title",title:e.title,style:S.value},[e.title]),e.enableFavorite&&i.createVNode("div",{class:"d-flex justify-content-center w-100"},[i.createVNode("div",{class:"lookup-modal-header-tabs-container d-flex",onMousedown:L},[i.createVNode("div",{class:"active-tab",style:D.value},null),i.createVNode("div",{class:["tab-item","d-flex",{active:t.value===ie.dataList}],onClick:()=>U(ie.dataList)},[n.datalist]),i.createVNode("div",{class:["tab-item","d-flex",{active:t.value===ie.favorite}],onClick:()=>U(ie.favorite)},[n.favorite])])]),(c.showMaxButton||c.showCloseButton)&&i.createVNode("div",{class:"d-flex flex-row h-100 justify-content-end align-items-center lookup-modal-header-buttons",onMousedown:x=>x.stopPropagation()},[c.showMaxButton&&i.createVNode("span",{class:F.value,onClick:V,style:"cursor: pointer"},null),c.showCloseButton&&i.createVNode("span",{class:"f-icon modal_close ml-2",onClick:N,style:"cursor: pointer;position: relative;top: 1px;"},null)])]),i.createVNode("div",{class:"f-utils-fill",style:"position: relative;"},[i.createVNode("div",{class:"h-100 d-flex flex-column f-utils-fill w-100",style:R.value(ie.dataList)},[a.slots.default&&a.slots.default()]),i.createVNode("div",{class:"h-100 d-flex flex-column px-2 f-utils-fill w-100",style:R.value(ie.favorite)},[a.slots.fav&&a.slots.fav()])]),i.createVNode("div",{class:"modal-footer"},[i.createVNode("div",{class:"f-utils-fill align-items-center d-flex flex-row"},[b.value&&i.createVNode(Yt,{modelValue:u.value,"onUpdate:modelValue":x=>u.value=x,label:l.includechildren},null),e.showSelectedList&&i.createVNode(Kt,{popoverOffsetX:m.value,parentRef:C.value,ref:I,idField:s.idField},null),e.showCascadeControl&&t.value===ie.dataList&&i.createVNode(Zt,{modelValue:s.cascadeValue,"onUpdate:modelValue":x=>s.cascadeValue=x},null)]),i.createVNode("button",{id:e.id+"-btncancel",name:"cancel",type:"button",class:"btn btn-secondary",onClick:O},[o.cancel]),i.createVNode("button",{id:e.id+"-btnok",name:"accept",type:"button",class:"btn btn-primary",onClick:w},[o.ok])])])}});function Me(e,a){if(e.context){if(!a&&e.context.editor){for(const n in e.context.editor)delete e.context.editor[n];return}const{editor:t}=e.context;t?Object.assign(t,a):e.context.editor=a}}function tn(e,a,t,{dictPicked:n,modelValue:o,buttonEditInstance:l,userDataService:r,useHttp:u,lookupLocales:s}){const c=i.inject(Le.F_NOTIFY_SERVICE_TOKEN,null),f=i.inject("FLoadingService"),p=i.ref(),v=i.ref("accept"),F=i.ref(),{lookupStates:b}=u,{queryState:m,lookupState:h,navigationState:d,pageInfoState:y,searchState:C,selectionState:I,lookupOptions:V}=b,{isDoubleList:N}=me(e,b),w=Object.assign({},Ze,V.dialog);V.dialog=w;const O={position:"top-center"},U=()=>{const k=t.value.map(M=>Ce.resolveField(M,V.textField)).join(e.separator),T=t.value.map(M=>M[V.idField]).join(e.separator);o.value=k,u.idValues.value=T,a.emit("update:modelValue",k),a.emit("update:idValue",T)};function D(k){return typeof k=="object"?{shouldClose:k.closeDialog,message:k.message}:{shouldClose:k,message:""}}const R=async()=>{const k={items:t.value,mappingFields:V.mappingFields};a.emit("update:dataMapping",k),Me(e,k);const T=await n(k);return D(T)};async function S(){return U(),await R()}function L(){return v.value="cancel",!0}const x=k=>{Object.keys(k).forEach(T=>{delete k[T]})},W=k=>{k.forEach(T=>{x(T)})};function ne(){document.body.classList.remove("lookup-modal-open"),f==null||f.clearAll(),W([h,d,y,C,m]),I.value=[],F.value=null}async function _(){var T;if(t.value.length===0)return c==null||c.warning({message:s.messages.mustChoosAdatarow,...O}),{shouldUpdate:!1};const k=await((T=e.beforeSelectData)==null?void 0:T.call(e,{items:t.value}));return{shouldUpdate:typeof k=="boolean"?k:(k==null?void 0:k.canSelect)??!0,message:k==null?void 0:k.message}}async function Q(){const{shouldUpdate:k,message:T}=await _();if(!k)return T&&(c==null||c.warning({message:T,...O})),!1;const M=await S(),{shouldClose:$,message:Z}=M;return $?(v.value="accept",!0):(Z&&(c==null||c.warning({message:Z,...O})),!1)}function g(){const k=(w==null?void 0:w.height)||620,T=(w==null?void 0:w.width)||590,M=(w==null?void 0:w.minWidth)||300,$=(w==null?void 0:w.minHeight)||200,Z={height:k,width:T,minWidth:M,minHeight:$};return N()&&(Z.width=(w==null?void 0:w.width)||960),Z}const{width:E,height:A,minHeight:z,minWidth:X}=g(),K=!0,ee=K&&((w==null?void 0:w.resizeable)==null?!0:w==null?void 0:w.resizeable);w.rememberSize=w.rememberSize&&ee;const G={title:w==null?void 0:w.title,fitContent:!1,showHeader:!1,dragHandle:".lookup-modal-header",height:A,width:E,minWidth:X,minHeight:z,resizeable:ee,draggable:K,enableEsc:(w==null?void 0:w.enableEsc)==null?!0:w==null?void 0:w.enableEsc,closedCallback:(k,T)=>{const M={type:v.value,button:k==null?void 0:k.target};if((T==="esc"||T==="icon")&&(M.type="esc"),M.type==="accept"&&(M.items=t.value),(M.type==="cancel"||M.type==="esc")&&(e.allowFreeInput||(o.value=e.modelValue)),r&&e.enableUserData){r.saveUserData().then(()=>{ne(),a.emit("dialogClosed",M)});return}ne(),a.emit("dialogClosed",M)},showButtons:!1,resizeHandle:k=>{if(w.rememberSize){p.value=k;const{width:T,height:M}=k.newSize.size;!(k.isMaximized??!1)&&r.setDialogSize({width:Math.round(T),height:Math.round(M)})}},enableEnter:!0,onEnter:k=>{k.event.preventDefault(),!k.event.target.closest(".fv-lookup-search-bar")&&Q().then(M=>{var $;if(M){const Z=($=l.value)==null?void 0:$.getModal();Z&&Z.close(k.event,"enter")}})}};async function P(){var k;if(e.enableUserData&&(await r.getUserData(),(k=r==null?void 0:r.userDataState)!=null&&k.data&&w.rememberSize)){const{size:T}=r.userDataState.data;T&&Object.assign(G,T)}}async function H(k){let T=!0;const M=e.dictPicking;if(M&&typeof M=="function"){const $=await M({customData:F,options:V,idValue:u.idValues});typeof $=="boolean"&&!$&&(T=!1),typeof $=="object"&&($.canOpen?$.data&&(F.value=$.data):(T=!1,$.message&&(c==null||c.error({message:$.message,position:"top-center"}))))}return T&&await P(),T}return{modalOptions:G,beforeOpenDialog:H,dialogSize:p,customData:F,updateModelValue:S,cancelDialog:L,submitDialog:Q,destroyed:ne,setModelAndIdValue:U,runDictPickedAsync:R}}function nn(e){return{dictPicked:async({items:t,mappingFields:n})=>e.dictPicked&&typeof e.dictPicked=="function"?await e.dictPicked({items:t,mappingFields:n})??!0:!0}}function mt(e,a,t,n){if(!e.editable)return;const o={items:null,mappingFields:n.mappingFields,isFreeInput:!0};a.emit("clearMapping",o),a.emit("update:modelValue",t),a.emit("update:idValue",""),Me(e,o)}function an(e,a,t){const n=i.computed(()=>e.textChangeType==="blur"||e.textChangeType==="any"),o=i.computed(()=>e.textChangeType==="enter"||e.textChangeType==="any"),{updateModelValue:l,selectedItems:r,openDialog:u,lookupOptions:s,useHttpComposition:c,isPopuped:f,usePopupComposition:p}=t,{updateSearchFieldTitle:v}=c,{lookupState:F,queryState:b,searchValueChanged:m}=c.lookupStates,h=i.ref(!1);function d(O){return re.isEmpty(O)&&m.value&&!f.value?(h.value=!0,m.value=!1,!1):m.value}function y(O){var D;if(!O||O.length!==1)return;const[U]=O;return(D=U.children)!=null&&D.length?y(U.children):U.data}function C(O,U){var R;if(!U||U.length!==1)return!1;const[D]=U;return O?(R=D.children)!=null&&R.length?y(D.children):D.data:D}async function I(O){const U={search:{field:"*",value:O,type:e.openType==="Modal"?"equal":"like"},action:"search"};m.value&&(document.body.classList.add("lookup-modal-open"),c.loadData(U,async D=>{var R;if(D.searchFields&&D.columns){const S=v(D.searchFields,D.columns);F.searchFields=S}if(m.value=!1,e.openType==="Modal"){const S=C(((R=D.displayType)==null?void 0:R.toLowerCase())==="treelist",D.items);if(S){r.value=[S],l(),b.value="",document.body.classList.remove("lookup-modal-open");return}u()}else F.action=O?"search":"list",F.items=D.items,F.total=D.total,D.pageInfo&&(F.pageInfo={...D.pageInfo})}))}function V(O,U){var R;let D=(R=O.target)==null?void 0:R.value;if(D!==""&&(D=D.trim()),d(D)){if(e.allowFreeInput)if(e.openType==="Modal"){mt(e,a,D,s);return}else{const{popupState:S}=p;S.canClose=!0,r.value=[],mt(e,a,D,s)}if(e.openType!=="Modal"&&!f.value){u(),m.value=!1;return}s.uri?I(D):a.emit("textChanged",{value:D,type:U?"blur":"enter"})}}function N(O){n.value&&V(O,!0)}function w(O){O.key==="Enter"&&o.value&&V(O,!1)}return{changeOnBlur:n,changeOnEnter:o,onInputBlur:N,onEnterKeyDown:w,isClear:h}}const on={height:{type:Number,default:500},width:{type:Number,default:500},useHttpComposition:{type:Object,default:{}},selectionsManager:{type:Object,default:{}},showSelectedList:{type:Boolean,default:!1},enableToSelect:{type:Boolean,default:!0},uri:{type:String,default:""},hidePopup:{type:Function,default:null},fitColumns:{type:Boolean,default:!0},openType:{type:String,default:"Popup"},pagination:{type:Object,default:{enable:!1,showLimits:!0,sizeLimits:[10,20,30,50,100],size:20,index:1,total:0,mode:"server",showGoto:!1}},displayType:{type:String,default:ce.List},loadTreeDataType:{type:String,default:fe.all},expandLevel:{type:Number,default:0},enableCascade:{type:Boolean,default:!1},showCascadeControl:{type:Boolean,default:!1},cascadeItems:{type:Object,default:{both:!0,up:!0,down:!0,disable:!0}},cascadeStatus:{type:String,default:"both"},enableSearchBar:{type:Boolean,default:!0},searchAnyField:{type:Boolean,default:!0},locales:{type:Object,default:{}}},ln=i.defineComponent({name:"FLookupPopupContainer",props:on,emits:["selectItemsChanged","hiddenPopup"],setup(e,a){const t=e.locales,{lookupStates:n,getIdQueryParams:o}=e.useHttpComposition,{lookupState:l,navigationState:r,queryState:u,lookupOptions:s}=n,{isTreeList:c}=me(e,n);$e(e,!1,n,t);const f=i.computed(()=>({width:`${e.width}px`,height:`${e.height}px`,padding:"5px"})),{renderDataGrid:p}=dt(e,a,{}),{renderTreeGrid:v}=ht(e,a),F=i.computed(()=>c()?v:p);function b(){const m={};e.enableToSelect&&(m.selectedInfo=o(),u.value!=null&&(m.search={field:"*",value:u.value,type:"like"},m.action="search"));const h=e.useHttpComposition;h==null||h.loadData(m,d=>{i.nextTick(()=>{l.action=m.action,d.navigation&&(Object.keys(d.navigation).forEach(y=>{var C;r[y]=(C=d.navigation)==null?void 0:C[y]}),d.navigation.treeInfo&&(h==null||h.setTreeInfo(d.navigation.treeInfo,!0)),delete d.navigation),d.treeInfo&&(h==null||h.setTreeInfo(d.treeInfo)),Object.keys(d).forEach(y=>{l[y]=d[y]})})})}return i.onMounted(()=>{b()}),i.onUnmounted(()=>{a.emit("hiddenPopup")}),()=>i.createVNode("div",{style:f.value,class:"d-flex flex-column"},[F.value()])}});function sn(e,a,t,{useHttpComposition:n,selectionsManager:o,userDataService:l,updateModelValue:r,lookupLocales:u,destroyed:s,setModelAndIdValue:c,runDictPickedAsync:f,popupState:p}){i.provide(Ne,l),i.provide(pe,n),i.provide(ve,o);const{selectionState:v,queryState:F,lookupOptions:b,searchState:m}=n.lookupStates,h=ft(b,!1);i.provide(Ie,h);const d=i.inject(Le.F_NOTIFY_SERVICE_TOKEN,null),{idValues:y}=n,C=i.computed(()=>{var L;const S=(L=t.value)==null?void 0:L.popoverRef;return S?S.shown:!1});async function I(){if(!p.canClose)return!1;if(!v.value.length)return!0;let S=null;b.multiSelect?S=await f():S=await r();const{shouldClose:L,message:x}=S;return L?!0:(x&&(d==null||d.warning({message:x,position:"top-center"})),p.canClose=!1,!1)}async function V(){var S;(S=t.value)==null||S.hidePopup()}e.openType==="Popup"&&i.watch(()=>v.value,S=>{C.value&&e.multiSelect&&c()});const N=()=>{const{width:S,height:L}=e.dialog;return{width:S||460,height:L||380}},w=i.computed(()=>{var S;return(S=t.value)==null?void 0:S.popoverRef});async function O(){C.value&&V(),F.value="",s(),a.emit("popupClosed"),p.canClose=!0,document.body.classList.remove("lookup-modal-open")}function U(){var S;C.value||(S=t.value)==null||S.showPopup()}function D(){b.multiSelect||(p.canClose=!0,V())}function R(){const{width:S,height:L}=N();return i.createVNode(ln,i.mergeProps({width:S,height:L,useHttpComposition:n,locales:u,selectionsManager:o,onHiddenPopup:O,onSelectionsChanged:D},e),null)}return{popoverInstance:w,isPopuped:C,renderPopup:R,showPopup:U,hidePopup:V,onBeforeClosePopup:I,popupState:p}}const he=i.defineComponent({name:"FLookup",props:we,emits:["update:modelValue","update:idValue","search","navSelectionsChanged","pageIndexChanged","pageSizeChanged","resize","dialogClosed","textChanged","clear","update:dataMapping","clearMapping"],setup(e,a){const t='<i id="'+e.id+'-icon_lookup" class="f-icon f-icon-lookup"></i>',n='<i id="'+e.id+'-icon_dropdown" class="f-icon f-icon-arrow-chevron-down"></i>',o=i.ref(),l=i.ref(e.modelValue),r=i.ref("");Fe.value=e.customData;const u=i.computed(()=>e.openType==="Popup"?"Popup":"Modal"),s=i.computed(()=>u.value==="Popup"?n:t),c=zt(e),f=Rt(e),{lookupOptions:p,selectionState:v,searchValueChanged:F,queryState:b,popupState:m}=f.lookupStates,h=Ut(e,f),d=i.computed(()=>e.showSelections&&p.multiSelect),y=i.computed(()=>e.editable&&(u.value==="Modal"||!p.multiSelect)),C=i.computed(()=>e.showIncludeChildNodes&&e.showNavigation&&!p.navTreeToList),I=rt(e,f.lookupStates),{dictPicked:V}=nn(e),{modalOptions:N,beforeOpenDialog:w,dialogSize:O,customData:U,updateModelValue:D,cancelDialog:R,submitDialog:S,destroyed:L,setModelAndIdValue:x,runDictPickedAsync:W}=tn(e,a,v,{dictPicked:V,modelValue:l,buttonEditInstance:o,userDataService:h,useHttp:f,lookupLocales:c}),ne=sn(e,a,o,{useHttpComposition:f,selectionsManager:I,userDataService:h,updateModelValue:D,lookupLocales:c,destroyed:L,setModelAndIdValue:x,runDictPickedAsync:W,popupState:m}),{renderPopup:_,showPopup:Q,isPopuped:g,hidePopup:E,onBeforeClosePopup:A}=ne;function z(){if(e.openType==="Popup"){Q();return}o.value&&!o.value.getModal()&&o.value.openDialog()}const{onInputBlur:X,onEnterKeyDown:K,isClear:ee}=an(e,a,{updateModelValue:D,selectedItems:v,openDialog:z,useHttpComposition:f,lookupOptions:p,usePopupComposition:ne,isPopuped:g}),G=i.reactive(N),P=i.inject(Ct.F_MODAL_SERVICE_TOKEN);i.watch(()=>U.value,B=>{Fe.value=B}),i.watch(()=>e.modelValue,B=>{l.value=B});function H(B){f.idValues.value=B,B||(v.value=[]),a.emit("update:idValue",B)}i.watch(()=>e.idValue,B=>{H(B)}),i.onMounted(()=>{}),i.onUnmounted(()=>{Me(e)}),i.watch(()=>O.value,B=>{a.emit("resize",B)}),u.value==="Popup"&&i.watch([()=>e.readonly,()=>e.disabled],([B,ae])=>{var ke;(B||ae)&&((ke=o.value)==null||ke.forceClosePopup())});async function k(){var ae;a.emit("update:modelValue",""),H(""),u.value==="Popup"&&g.value&&((ae=o.value)==null||ae.forceClosePopup());const B={items:null,mappingFields:p.mappingFields};a.emit("clear",B),Me(e,B)}i.watch(()=>ee.value,B=>{B&&(k(),ee.value=!1)});function T(B){a.emit("search",B)}function M(B){a.emit("navSelectionsChanged",B)}function $(B){a.emit("pageIndexChanged",B)}function Z(B){a.emit("pageSizeChanged",B)}async function le(B){const ae=P==null?void 0:P.getCurrentModal();ae&&ae.updateModalOptions(B),B.title&&(r.value=B.title)}function q(B){const ae=P==null?void 0:P.getCurrentModal();P&&ae.close(B)}function J(B){const ae=P==null?void 0:P.getCurrentModal();ae&&ae.maxDialog(B)}const oe=i.computed(()=>{const B=P==null?void 0:P.getCurrentModal();return B==null?void 0:B.isMaximized}),se=i.computed(()=>p.multiSelect&&p.showCascadeControl&&p.enableCascade&&ce.Tree===p.displayType.toUpperCase()&&!p.treeToList),de=i.computed(()=>v.value&&v.value.length?v.value.map(B=>B[p.idField]):[]);function We(B){for(const ae in p)B[ae]!==void 0&&(p[ae]=B[ae])}const Ge=re.debounce(B=>{X(B)},200);function yt(B){var ke;let ae=(ke=B.target)==null?void 0:ke.value;ae!==""&&(ae=ae.trim()),F.value=B.target._value!==ae,e.allowFreeInput&&H(""),F.value&&(b.value=ae),u.value==="Popup"&&F.value&&Ge(B)}function mn(){F.value=!1}async function bt(B){await S()&&(P==null||P.close())}function gn(B){e.togglePopupOnClickInput&&(g.value?E():Q())}function yn(){document.body.classList.add("lookup-modal-open"),e.editable&&setTimeout(()=>{var B;(B=o.value.getTextbox())==null||B.focus()},100)}return a.expose({openDialog:z,updateIdValue:H,mappingFields:p.mappingFields,idField:p.idField,setProps:We,clear:k}),()=>i.createVNode(Je.FButtonEdit,{ref:o,id:e.id,modelValue:l.value,"onUpdate:modelValue":B=>l.value=B,disable:e.disabled,readonly:e.readonly,editable:y.value,inputType:"text",enableClear:e.enableClear,buttonContent:s.value,buttonBehavior:u.value,modalOptions:G,onClear:k,beforeOpen:w,onBlur:X,onKeydown:K,placeholder:c.placeholder,keepWidthWithReference:!1,popupOnClick:!e.editable&&u.value==="Popup",onInput:yt,enableTitle:e.enableTitle,placement:"auto",onBeforeClearValue:mn,customClass:"f-cmp-lookup",onClick:gn,onShown:yn,beforeClosePopup:A,popupClass:"lookup-popup-panel"},{default:()=>[u.value==="Modal"&&i.createVNode(en,{title:r.value||"",enableFavorite:e.enableFavorite,onCloseModal:q,onMaximize:B=>J(B),useHttpComposition:f,userDataService:h,useDialog:{cancelDialog:R,submitDialog:S},showSelectedList:d.value,selectionsManager:I,showIncludeChildNodes:{show:C.value,value:e.includeChildNodesValue},showCascadeControl:se.value,isMaximized:oe.value,locales:c,id:e.id},{default:()=>i.createVNode(Gt,i.mergeProps(e,{onSearch:T,onNavSelectionsChanged:M,onPageIndexChanged:$,onPageSizeChanged:Z,onChangeDialogOptions:le,onDblClickRow:bt}),null),fav:()=>e.enableFavorite&&i.createVNode(Jt,{idField:p.idField,displayType:p.displayType,selectedIds:de.value,multiSelect:p.multiSelect,showSelections:d.value,treeToList:p.treeToList,onDblClickRow:bt},null)}),u.value==="Popup"&&_()]})}}),gt={button:{type:"button",name:"按钮"},"response-toolbar":{type:"response-toolbar",name:"工具栏"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮"},"content-container":{type:"content-container",name:"容器"},"input-group":{type:"input-group",name:"文本"},textarea:{type:"textarea",name:"多行文本"},lookup:{type:"lookup",name:"帮助"},"number-spinner":{type:"number-spinner",name:"数值"},"date-picker":{type:"date-picker",name:"日期"},switch:{type:"switch",name:"开关"},"radio-group":{type:"radio-group",name:"单选组"},"check-box":{type:"check-box",name:"复选框"},"check-group":{type:"check-group",name:"复选框组"},"combo-list":{type:"combo-list",name:"下拉列表"},"response-form":{type:"response-form",name:"卡片面板"},"response-layout":{type:"response-layout",name:"布局容器",icon:"response-layout-3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"response-layout-1"},"tree-grid":{type:"tree-grid",name:"树表格"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块"},component:{type:"component",name:"组件"},tabs:{type:"tabs",name:"标签页"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮"},"html-template":{type:"html-template",name:"模板容器"},"time-picker":{type:"time-picker",name:"时间选择"},section:{type:"section",name:"分组面板"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传"},"page-header":{type:"page-header",name:"页头"},"page-footer":{type:"page-footer",name:"页脚"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏"},fieldset:{type:"fieldset",name:"分组"},"query-solution":{type:"query-solution",name:"筛选方案"},drawer:{type:"drawer",name:"抽屉"},"external-container":{type:"external-container",name:"外部容器",icon:"content-container"},"list-nav":{type:"list-nav",name:"列表导航"},"list-view":{type:"list-view",name:"列表"},"filter-bar":{type:"filter-bar",name:"筛选条"},"language-textbox":{type:"language-textbox",name:"多语输入框"}},rn=i.ref(0);function cn(){rn.value++}const dn=i.ref(0);function un(e){const{formSchemaUtils:a,formStateMachineUtils:t}=e;function n(s,c=""){return{path:c+s.code,field:s.id,fullPath:s.code}}function o(s,c=""){return a.getViewModelById(s).states.map(p=>n(p,c))}function l(s){const c=a.getRootViewModelId(),f=o(s);if(s===c)return f;const p=o(c,"root-component.");return[...f,...p]}function r(s){return s.binding&&s.binding.path||s.id||""}function u(){return t&&t.getRenderStates()||[]}return{getVariables:l,getControlName:r,getStateMachines:u}}class fn{constructor(a){te(this,"sessionVariables",[{key:"CurrentSysOrgName",name:"当前组织Name",description:"当前组织Name"},{key:"CurrentSysOrgId",name:"当前组织Id",description:"当前组织Id"},{key:"CurrentUserName",name:"当前用户Name",description:"当前用户Name"},{key:"CurrentUserCode",name:"当前用户Code",description:"当前用户Code"},{key:"CurrentUserId",name:"当前用户Id",description:"当前用户Id"},{key:"CurrentLanguage",name:"当前语言编号",description:"当前登录的语言编号,例如简体中文返回'zh-CHS',英文返回'en',繁体中文'zh-CHT'"}]);te(this,"expressionNames",{compute:"计算表达式",dependency:"依赖表达式",validate:"验证表达式",dataPicking:"帮助前表达式",visible:"可见表达式",readonly:"只读表达式",required:"必填表达式"});te(this,"getExpressionConverter",(a,t)=>({convertFrom:(n,o,l,r)=>{const u=l.getExpressionRuleValue(a,t||o);return u&&u.value||""},convertTo:(n,o,l,r,u)=>{var s;if(o==="dataPicking"&&(l!=null&&l.target)){const c=`${l.target}_dataPicking`;((s=l.rules)==null?void 0:s.some(p=>p.id===c&&p.value))?n.dictPickingExpressionId=c:delete n.dictPickingExpressionId}r.updateExpression(l)}}));this.formSchemaService=a}getExpressionRule(a,t){const n=this.formSchemaService.getExpressions();if(!n)return"";const o=n.find(r=>r.target===a);if(!o)return"";const l=o.rules.find(r=>r.type===t);return l||""}getContextFormVariables(){const{module:a}=this.formSchemaService.getFormSchema();if(!a.viewmodels||a.viewmodels.length===0)return[];const t=this.formSchemaService.getRootViewModelId(),n=this.formSchemaService.getViewModelById(t);if(!n||!n.states||n.states.length===0)return[];const o=[];return n.states.forEach(l=>{o.push({key:l.code,name:l.name,description:l.name,category:l.category})}),o}createTreeNode(a,t,n="label"){return{id:a.id,name:a.name,bindingPath:a[n],parents:t,type:"field"}}buildEntityFieldsTreeData(a=null,t){const n=[];return a==null||a.forEach(o=>{var u;const l=this.createTreeNode(o,t);let r=[];(u=o.type)!=null&&u.fields&&(r=this.buildEntityFieldsTreeData(o.type.fields,[...t,o.label])),n.push({data:l,children:r,expanded:!0})}),n}buildChildEntityTreeData(a=null,t){const n=[];return a==null||a.forEach(o=>{var s,c;const l=this.createTreeNode(o,t);l.type="entity";const r=this.buildEntityFieldsTreeData((s=o.type)==null?void 0:s.fields,[...t,o.label]),u=this.buildChildEntityTreeData((c=o.type)==null?void 0:c.entities,[...t,o.label]);u!=null&&u.length&&(r==null||r.push(...u)),n.push({data:l,children:r||[],expanded:!0})}),n}getEntitiesTreeData(){const a=this.formSchemaService.getSchemaEntities();if(!(a!=null&&a.length))return[];const t=a[0];if(!(t!=null&&t.type))return[];const n=this.buildEntityFieldsTreeData(t.type.fields,[t.code]),o=this.buildChildEntityTreeData(t.type.entities,[t.code]);return o!=null&&o.length&&(n==null||n.push(...o)),{entityCode:t.code,fields:[{data:this.createTreeNode(t,[],"code"),children:n||[]}]}}getEntitiesAndVariables(){return{entities:this.getEntitiesTreeData(),variables:{session:{name:"系统变量",items:this.sessionVariables,visible:!1},forms:{name:"表单变量",items:this.getContextFormVariables(),visible:!0}}}}onBeforeOpenExpression(a,t,n){const o=n==="Field"?a.binding.field:a.id,l=this.getExpressionRule(o,t),r=this.getEntitiesAndVariables(),u={message:["validate","required","dataPicking"].includes(t)&&l?l.message:"",...r};return l.messageType!=null&&(u.messageType=l.messageType),u}buildRule(a,t,n,o){const{expression:l,message:r,messageType:u}=t,s={id:`${a}_${n}`,type:n,value:l};return(n==="validate"||n==="dataPicking"||n==="required")&&(s.message=r),n==="dataPicking"&&(s.messageType=u),n==="validate"&&o&&(s.elementId=o),s}getExpressionData(){const{expressions:a}=this.formSchemaService.getFormSchema().module;return a||[]}updateExpression(a,t,n,o){const l=t==="Field"?a.binding.field:a.id,r=this.buildRule(l,n,o,a.type==="form-group"?a.id:"");let s=this.getExpressionData().find(f=>f.targetType===t&&f.target===l);const c=f=>f.value.trim()==="";if(s){const f=s.rules.find(p=>p.id===r.id);if(f)c(r)?s.rules=s.rules.filter(p=>p.id!==r.id):(Object.assign(f,r),o==="validate"&&a.type==="form-group"&&(f.elementId=a.id));else{if(c(r))return null;s.rules=s.rules||[],s.rules.push(r)}}else{if(c(r))return null;s={target:`${l}`,rules:[r],targetType:t}}return s}getExpressionEditorOptions(a,t,n,o){return n.reduce((l,r)=>{var s,c;const u=t==="Field"?(s=a==null?void 0:a.binding)==null?void 0:s.field:a.id;return l[r]={hide:t==="Field"?!!((c=a==null?void 0:a.binding)!=null&&c.field):!1,description:"",title:this.expressionNames[r],type:"string",$converter:this.getExpressionConverter(u),refreshPanelAfterChanged:!0,editor:{type:"expression-editor",singleExpand:!1,dialogTitle:`${this.expressionNames[r]}编辑器`,showMessage:r==="validate"||r==="dataPicking"||r==="required",showMessageType:r==="dataPicking",beforeOpen:()=>this.onBeforeOpenExpression(a,r,t),onSubmitModal:f=>{const p=this.updateExpression(a,t,f,r);if(o){const v=this.buildRule(u,f,r);o(v)}return p}}},l},{})}getExpressionInfo(a,t,n){const o=t==="Field"?a.binding.field:a.id,l=this.getExpressionRule(o,n),r={value:l&&l.value,targetId:o,targetType:t,expressionType:n};return l&&l.message&&(r.message=l.message),r}getExpressionConfig(a,t,n=["compute","dependency","validate"],o){return{description:"表达式",title:"表达式",hide:!a.binding,properties:{...this.getExpressionEditorOptions(a,t,n,o)}}}getExpressionOptions(a,t,n){const o=this.getExpressionInfo(a,t,n);return{dialogTitle:`${this.expressionNames[n]}编辑器`,singleExpand:!1,showMessage:n==="required",beforeOpen:()=>this.onBeforeOpenExpression(a,n,t),expressionInfo:o}}}class pn{constructor(a,t){te(this,"componentId");te(this,"viewModelId");te(this,"eventsEditorUtils");te(this,"formSchemaUtils");te(this,"formMetadataConverter");te(this,"designViewModelUtils");te(this,"designViewModelField");te(this,"controlCreatorUtils");te(this,"designerHostService");te(this,"designerContext");te(this,"schemaService",null);te(this,"metadataService",null);te(this,"propertyConfig",{type:"object",categories:{}});var n;this.componentId=a,this.designerHostService=t,this.eventsEditorUtils=t.eventsEditorUtils,this.formSchemaUtils=t.formSchemaUtils,this.formMetadataConverter=t.formMetadataConverter,this.viewModelId=((n=this.formSchemaUtils)==null?void 0:n.getViewModelIdByComponentId(a))||"",this.designViewModelUtils=t.designViewModelUtils,this.controlCreatorUtils=t.controlCreatorUtils,this.metadataService=t.metadataService,this.schemaService=t.schemaService,this.designerContext=t.designerContext}getFormDesignerInstance(){var a,t;return(t=(a=this.designerContext)==null?void 0:a.instances)==null?void 0:t.formDesigner.value}getTableInfo(){var a;return(a=this.schemaService)==null?void 0:a.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(a){var n;const t=a.binding&&a.binding.type==="Form"&&a.binding.field;if(t){if(!this.designViewModelField){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=o.fields.find(l=>l.id===t)}a.updateOn=(n=this.designViewModelField)==null?void 0:n.updateOn}}getBasicPropConfig(a){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",idField:"value",editable:!1,data:[{value:a.type,name:gt[a.type]&&gt[a.type].name}]}}}}}getAppearanceConfig(a=null,t={},n){const o={title:"外观",description:"Appearance"},l={class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"}};for(const r in t)l[r]=Object.assign(l[r]||{},t[r]);return{...o,properties:{...l},setPropertyRelates(r,u){if(r){switch(r&&r.propertyID){case"class":case"style":{dn.value++;break}}n&&n(r,a,u)}}}}getPropertyEditorParams(a,t=[],n="visible",o={},l={},r=""){const{getVariables:u,getControlName:s,getStateMachines:c}=un(this.designerHostService),f=this.getRealTargetType(a),p=t&&t.length>0?t:["Const","Variable","StateMachine","Expression"],v={type:"property-editor",propertyTypes:p};return p.map(F=>{switch(F){case"Const":Object.assign(v,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},o);break;case"Expression":v.expressionConfig=this.getExpressionOptions(a,f,r||n);break;case"StateMachine":v.stateMachines=c();break;case"Variable":Object.assign(v,{controlName:s(a),newVariablePrefix:"is",newVariableType:"Boolean",variables:u(this.viewModelId),onBeforeOpenVariables:b=>{b.value=u(this.viewModelId)}},l);break}}),v}getVisibleProperty(a,t=""){var l;let n=["Const","Variable","StateMachine","Expression"];return t==="gridFieldEditor"?n=["Const","Expression"]:t==="form-group"&&!((l=a.binding)!=null&&l.field)&&(n=["Const","Variable","StateMachine"]),{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(a,n,"visible")}}}getBehaviorConfig(a,t="",n={},o){const l={title:"行为",description:""},r=this.getVisibleProperty(a,t);for(const s in n)r[s]=Object.assign(r[s]||{},n[s]);const u=this;return{...l,properties:{...r},setPropertyRelates(s,c){if(s){switch(s.propertyID){case"disabled":case"readonly":case"visible":u.afterMutilEditorChanged(a,s);break}o&&o(s,c)}}}}afterMutilEditorChanged(a,t){this.addNewVariableToViewModel(t,this.viewModelId),this.updateExpressionValue(t),this.clearExpression(t,a)}updateElementByParentContainer(a,t){const n=t&&t.parent&&t.parent.schema;if(!n)return;const o=n.contents.findIndex(r=>r.id===a),l=re.cloneDeep(n.contents[o]);n.contents.splice(o,1),n.contents.splice(o,0,l),cn()}addNewVariableToViewModel(a,t){const n=a.propertyValue;if(!(n&&typeof n=="object")||!(n.type==="Variable"&&n.isNewVariable))return;const r={id:n.field,category:"locale",code:n.fullPath,name:n.fullPath,type:n.newVariableType||"String"};delete n.newVariableType,delete n.isNewVariable,this.formSchemaUtils.getVariableByCode(r.code)||this.formSchemaUtils.getViewModelById(t).states.push(r)}updateExpressionValue(a){const t=a.propertyValue;if(!((t&&t.type)==="Expression"&&t.expressionInfo))return;const{expressionId:l,expressionInfo:r}=t,{targetId:u,targetType:s,expressionType:c,value:f,message:p}=r,v=this.formSchemaUtils.getModule();v.expressions=v.expressions||[];const{expressions:F}=v;let b=F.find(h=>h.target===u);b||(b={target:u,rules:[],targetType:s},F.push(b));const m=b.rules.find(h=>h.type===c);if(m)m.value=f,m.message=p;else{const h={id:l,type:c,value:f,message:p};b.rules.push(h)}delete t.expressionInfo}clearExpression(a,t){const n=a.propertyValue;if(n&&n.type==="Expression")return;const l=a.propertyID,r=this.formSchemaUtils.getExpressions(),u=t.binding?t.binding.field:t.id,s=r.find(c=>c.target===u);!s||!s.rules||(s.rules=s.rules.filter(c=>c.type!==l))}getExpressionOptions(a,t,n){return new fn(this.formSchemaUtils).getExpressionOptions(a,t,n)}getRealTargetType(a){return["response-toolbar-item","tab-toolbar-item","section-toolbar-item"].indexOf(a.type)>-1?"Button":a.binding&&a.binding.field?"Field":"Container"}createBaseEventProperty(a){const t={};return t[this.viewModelId]={type:"events-editor",editor:{initialData:a,viewSourceHandle:n=>{var o;((o=n.controller)==null?void 0:o.label.indexOf(this.formSchemaUtils.getModule().code))>-1&&this.eventsEditorUtils.jumpToMethod(n)}}},t}}class hn extends pn{constructor(t,n){super(t,n);te(this,"propertyConfigFilters",{lookup:["dataSource","filterConditions","displayType","idField","multiSelect","showSelections","enableSearchBar","searchAnyField","enableFavorite","enableUserData"],pager:["showLimits","sizeLimits","size"],treeConfig:["cascadeStatus","enableCascade","enableFullTree","expandLevel","loadTreeDataType","navTreeToList","onlySelectLeaf","showCascadeControl","treeToList"],dialog:["title","width","height","showNavigation","navigatorWidth","resizeable","rememberSize","enableEsc","showMaxButton","showCloseButton"]});te(this,"events",Ot)}getPropertyConfig(t){const n=new ot("root-component",this.designerHostService),o=n.getLookupConfig(t),l=n.getPageConfig(t.editor),r=n.getTreePropConfig(t.editor),u=n.getDialogPropertyConfig(t),s=this.getEventPropConfig(t),c={type:"object",categories:{lookup:o,treeConfig:r,pager:l,dialog:u}};return this.filterLookupPropertyConfig(c),c.categories.eventsEditor=s,c}filterLookupPropertyConfig(t){Object.keys(t.categories).forEach(n=>{const o=this.propertyConfigFilters[n],l=t.categories[n];Object.keys(l.properties).forEach(r=>{o.includes(r)||delete l.properties[r]})})}getEventPropConfig(t){const n=this,o=n.eventsEditorUtils.formProperties(t,n.viewModelId,this.events);return{title:"事件",hideTitle:!0,properties:n.createBaseEventProperty(o),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(r,u){const s=u.editor,c=r.propertyValue;delete s[n.viewModelId],c&&n.eventsEditorUtils.saveRelatedParameters(s,n.viewModelId,c.events,c),n.events.forEach(f=>{u[f.label]=s[f.label]})}}}}he.install=e=>{e.component(he.name,he)},he.register=(e,a,t,n)=>{e.lookup=he,a.lookup=Ue,n.lookup={callbackResolver:et}},he.registerDesigner=(e,a,t)=>{e.lookup=At,a.lookup=Ue},j.CascadeEnum=Ae,j.Compare=Te,j.DEFAULT_LOOKUP_DIALOG_OPTIONS=Ze,j.DEFAULT_PAGINATION_OPTIONS=Re,j.DefaultDialogTitle=je,j.ExpressValueType=Ye,j.ExternalLookupPropertyConfig=hn,j.FLookup=he,j.F_LOOKUP_HTTP_SERVICE_TOKEN=Ke,j.FilterRelation=Se,j.LOOKUP_ACTIVE_TAB=ye,j.LOOKUP_USER_DATA_ID=kt,j.LoadTreeDataType=fe,j.LookupDisplayType=ce,j.LookupSchemaRepositoryToken=tt,j.LookupTabs=ie,j.callbackResolver=et,j.cascadeItems=Ee,j.default=he,j.getLookupDialogCommonProperties=at,j.getLookupEditorCommonProperties=nt,j.getLookupPaginationProperties=it,j.lookupDataSourceConverter=ze,j.lookupProps=we,j.propsResolver=Ue,Object.defineProperties(j,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(j,i){typeof exports=="object"&&typeof module<"u"?i(exports,require("vue"),require("../../designer/button-edit/index.umd.js"),require("../designer-canvas/index.umd.js"),require("../dynamic-resolver/index.umd.js"),require("../property-panel/index.umd.js"),require("../field-selector/index.umd.js"),require("../notify/index.umd.js"),require("../modal/index.umd.js"),require("../button-edit/index.umd.js"),require("../layout/index.umd.js"),require("../data-grid/index.umd.js"),require("lodash-es"),require("../common/index.umd.js"),require("vue-i18n"),require("../tree-grid/index.umd.js"),require("../combo-list/index.umd.js"),require("../popover/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","../../designer/button-edit/index.umd.js","../designer-canvas/index.umd.js","../dynamic-resolver/index.umd.js","../property-panel/index.umd.js","../field-selector/index.umd.js","../notify/index.umd.js","../modal/index.umd.js","../button-edit/index.umd.js","../layout/index.umd.js","../data-grid/index.umd.js","lodash-es","../common/index.umd.js","vue-i18n","../tree-grid/index.umd.js","../combo-list/index.umd.js","../popover/index.umd.js"],i):(j=typeof globalThis<"u"?globalThis:j||self,i(j.lookup={},j.Vue,j.FButtonEditDesign,j.designerCanvas,j.dynamicResolver,j.propertyPanel,j.fieldSelector,j.notify,j.modal,j.buttonEdit,j.layout,j.dataGrid,j.LodashES,j.common,j.vueI18n,j.treeGrid,j.comboList,j.FPopover))})(this,function(j,i,ye,Ct,Je,Oe,Le,xe,Tt,Qe,Be,Ee,se,Te,St,Ae,Xe,wt){"use strict";var vn=Object.defineProperty;var Cn=(j,i,ye)=>i in j?vn(j,i,{enumerable:!0,configurable:!0,writable:!0,value:ye}):j[i]=ye;var ne=(j,i,ye)=>Cn(j,typeof i!="symbol"?i+"":i,ye);function Ke(e){return typeof e=="string"&&e.startsWith("{")&&e.endsWith("}")?(e=e.replace(/'/g,'"'),{mappingFields:JSON.parse(e)}):{mappingFields:e}}const Ft=new Map([["appearance",Je.resolveAppearance],["mappingFields",(e,a,t)=>{if(a)return Ke(a);const{mappingFields:n}=t;return Ke(n)}],["uri",(e,a,t)=>{var n;return a?{uri:a}:{uri:(n=t==null?void 0:t.dataSource)==null?void 0:n.uri}}],["idField",(e,a,t)=>{var n;return a?{idField:a}:{idField:(n=t==null?void 0:t.dataSource)==null?void 0:n.idField}}]]),It={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/lookup.schema.json",title:"lookup",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a combo list",type:"string"},type:{description:"The type string of number combo list component",type:"string",default:"lookup"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},editable:{description:"",type:"boolean",default:!1},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:"帮助"},lableWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:"请选择"},readonly:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"string",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},textField:{description:"帮助显示文本字段",type:"string",default:""},mappingFields:{description:"帮助字段映射",type:"object",default:{}},uri:{type:"string",default:""},dataSource:{type:"object",default:null},displayType:{type:"string",default:"list"},"onUpdate:dataMapping":{type:"object",default:null},onClear:{type:"object",default:null},context:{type:"object",default:null},enableToSelect:{type:"boolean",default:!0},idValue:{type:"string",default:""},multiSelect:{type:"boolean",default:!1},separator:{type:"string",default:","},fitColumns:{type:"boolean",default:!0},enableFavorite:{type:"boolean",default:!1},enableUserData:{type:"boolean",default:!1},showSelections:{type:"boolean",default:!0},treeToList:{type:"boolean",default:!1},navTreeToList:{type:"boolean",default:!1},showNavigation:{type:"boolean",default:!0},dictPicking:{type:"object",default:null},dictPicked:{type:"object",default:null},enableSearchBar:{type:"boolean",default:!0},searchAnyField:{type:"boolean",default:!0},dialog:{type:"object",default:null},idField:{type:"string",default:"id"},pagination:{type:"object",default:null},allowFreeInput:{type:"boolean",default:!1},loadTreeDataType:{type:"string",default:"default"},onlySelectLeaf:{type:"boolean",default:!1},enableFullTree:{type:"boolean",default:!0},beforeLoadData:{type:"object",default:null},beforeSelectData:{type:"object",default:null},enableCascade:{type:"boolean",default:!1},showCascadeControl:{type:"boolean",default:!0},cascadeItems:{type:"object",default:{both:!0,up:!0,down:!0,disable:!0}},cascadeValue:{type:"string",default:"both"},expandLevel:{type:"number",default:0},enableClear:{type:"boolean",default:!0},openType:{type:"string",default:"Modal"},enableTitle:{type:"boolean",default:!1},showIncludeChildNodes:{type:"boolean",default:!0},includeChildNodesValue:{type:"boolean",default:!0},enableEqualSearch:{type:"boolean",default:!1},onClearMapping:{type:"string",default:""}},required:["type"],ignore:["appearance","binding","visible"],events:{dictPicking:"帮助前事件",dictPicked:"帮助后事件",beforeSelectData:"数据选择确认前事件",beforeLoadData:"数据加载前事件",clear:"清空事件"}};function kt(e,a,t){return a}var je=(e=>(e.Both="both",e.Up="up",e.Down="down",e.Disable="disable",e))(je||{});const Ve=[{value:"both",text:"同步选择"},{value:"up",text:"包含上级"},{value:"down",text:"包含下级"},{value:"disable",text:"仅选择自身"}],Re="";var re=(e=>(e.List="LIST",e.Tree="TREELIST",e.ListList="NAVLIST",e.TreeList="NAVTREELIST",e.ListTree="NAVLISTTREE",e))(re||{}),fe=(e=>(e.default="default",e.all="all",e.async="async",e))(fe||{});const be="__lookup_active_tab__",Pt="__lookup_user_data_id__";var ae=(e=>(e.dataList="datalist",e.favorite="favorite",e))(ae||{});const Ue={showPageInfo:!0,enable:!1,showLimits:!0,sizeLimits:[10,20,30,50,100],size:20,index:1,total:0,mode:"server",showGoto:!1},Ye=Symbol("f_lookup-http-service_token");var Se=(e=>(e[e.Equal=0]="Equal",e[e.NotEqual=1]="NotEqual",e[e.Greater=2]="Greater",e[e.GreaterOrEqual=3]="GreaterOrEqual",e[e.Less=4]="Less",e[e.LessOrEqual=5]="LessOrEqual",e[e.Like=6]="Like",e[e.LikeStartWith=7]="LikeStartWith",e[e.LikeEndWith=8]="LikeEndWith",e[e.NotLike=9]="NotLike",e[e.NotLikeStartWith=10]="NotLikeStartWith",e[e.NotLikeEndWith=11]="NotLikeEndWith",e[e.Is=12]="Is",e[e.IsNot=13]="IsNot",e[e.In=14]="In",e[e.NotIn=15]="NotIn",e))(Se||{}),we=(e=>(e[e.Empty=0]="Empty",e[e.And=1]="And",e[e.Or=2]="Or",e))(we||{}),Ze=(e=>(e[e.Value=0]="Value",e[e.Expression=1]="Expression",e.FrontExpress="frontExpress",e))(Ze||{});const et={showCloseButton:!0,showMaxButton:!0,draggable:!0,resizeable:!0,enableEsc:!0,rememberSize:!0};function Lt(){function e(a,t){const n={};return n.dictPicking=o=>t.call("dictPicking",[o,a]),n.beforeLoadData=o=>t.call("beforeLoadData",[o,a]),n.beforeSelectData=o=>t.call("beforeSelectData",[o,a]),n.dictPicked=o=>t.call("dictPicked",[o,a]),n}return{resolve:e}}const Fe={id:{type:String,require:!0},uri:{type:String,default:""},readonly:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},editable:{type:Boolean,default:!1},enableFavorite:{type:Boolean,default:!1},mappingFields:{type:Object,default:null},fitColumns:{type:Boolean,default:!0},columns:{type:Array,default:[]},idField:{type:String,default:"id"},textField:{type:String,defalut:"name"},data:{type:Array,default:[]},displayType:{type:String,default:re.List},dialog:{type:Object,default:{title:""}},multiSelect:{type:Boolean,default:!1},showSelections:{type:Boolean,default:!0},separator:{type:String,default:","},pagination:{type:Object,default:Ue},enableClear:{type:Boolean,default:!0},inputType:{type:String,default:"text"},idValue:{type:String,default:""},dictPicking:{type:Function,default:null},dictPicked:{type:Function,default:null},beforeSelectData:{type:Function,default:null},beforeLoadData:{type:Function,default:null},enableSearchBar:{type:Boolean,default:!0},searchFields:{type:Array,default:[]},searchAnyField:{type:Boolean,default:!0},navigation:{type:Object,default:null},textChangeType:{type:String,default:"any"},showNavigation:{type:Boolean,default:!0},showIncludeChildNodes:{type:Boolean,default:!0},includeChildNodesValue:{type:Boolean,default:!0},enableMultiFieldSearch:{type:Boolean,default:!1},treeToList:{type:Boolean,default:!1},navTreeToList:{type:Boolean,default:!1},loadTreeDataType:{type:String,default:fe.default},enableToSelect:{type:Boolean,default:!0},customData:{type:Object,default:null},modelValue:{type:String,default:""},enableUserData:{type:Boolean,default:!1},userDataKey:{type:String,default:""},onReady:{type:Function,default:null},context:{type:Object,default:{}},placeholder:{type:String,default:""},loader:{type:Function,default:null},allowFreeInput:{type:Boolean,default:!1},onlySelectLeaf:{type:Boolean,default:!1},enableFullTree:{type:Boolean,default:!0},enableCascade:{type:Boolean,default:!1},showCascadeControl:{type:Boolean,default:!0},cascadeItems:{type:Object,default:{both:!0,up:!0,down:!0,disable:!0}},cascadeValue:{type:String,default:"both"},expandLevel:{type:Number,default:0},openType:{type:String,default:"Modal"},enableTitle:{type:Boolean,default:!1},enableEqualSearch:{type:Boolean,default:!1},togglePopupOnClickInput:{type:Boolean,default:!1}},ze=Je.createPropsResolver(Fe,It,Ft,kt),tt=Lt();function Ne(e){let a=[10,20,30,50,100];return e&&(typeof e=="string"&&(a=e.replaceAll("[","").replaceAll("]","").replaceAll(" ","").split(",")),Array.isArray(e)&&(a=e)),a.map(t=>({value:parseInt(t,10)})).sort((t,n)=>t.value-n.value)}const Z={convertFrom:(e,a)=>{const t=e.editor?e.editor:e;return a==="multiSelect"||a==="enableTitle"?!!t[a]:a==="separator"?t[a]||",":a==="onlySelectLeaf"?t[a]==null?!1:t[a]:a==="loadTreeDataType"?t[a]||"default":a==="placeholder"?t.placeholder||"请选择":a==="openType"?t[a]||"Modal":t[a]},convertTo:(e,a,t)=>{const n=e.editor?e.editor:e;if(n[a]=t,a==="multiSelect"&&!t&&(n.enableCascade=!1),a==="openType"){if(t==="Popup")n.showSelections=!1,n.enableCascade=!1;else if(n.dialog){const{width:o}=n.dialog,{displayType:l}=n;l&&l.toUpperCase().indexOf("NAV")>-1&&(!o||o<520)&&(n.dialog.width=960)}}n.multiSelect&&n.openType==="Popup"&&(n.editable=!1,n.allowFreeInput=!1)}};function xt(e){let a="form_group_"+Date.now();return e&&(a=e.replaceAll("-","_").replaceAll(".","_")),"lookup."+a}function Et(e,a){const{enablePager:t,pageSize:n,pageList:o}=a;e.pagination=e.pagination||{},Object.assign(e.pagination,{enable:t,sizeLimits:Ne(o).map(l=>l.value),size:n,showLimits:!0,showGoto:!1,mode:"server"})}const _e={convertFrom:(e,a)=>{var n;return(n=(e.editor?e.editor:e).dataSource)==null?void 0:n.displayName},convertTo:(e,a,t)=>{if(t&&t.length>0){const n=e.editor?e.editor:e,o=t[0],{name:l,id:r,metadataContent:u,code:s}=o;n.dataSource||(n.dataSource={}),n.dataSource.displayName=`${l}(${s})`,n.helpId=r;const{displayType:c,idField:f,textField:p}=u;n.displayType=c,n.dataSource.idField=f,n.textField=p,n.dataSource.type="ViewObject",n.enableEqualSearch=!1;const{pageInfo:C}=u.dataSource;Et(n,C);const{treeInfo:k}=c.toUpperCase()==="NAVTREELIST"?u.navigation:u.dataSource;if(k){const{onlySelectLeaf:b,loadDataType:m}=k;n.loadTreeDataType="default",n.onlySelectLeaf=b??!1}if(n.dataSource.uri||(n.dataSource.uri=xt(e.id)),n.dialog){const{width:b}=n.dialog;c&&c.toUpperCase().indexOf("NAV")>-1&&(!b||b<520)&&(n.dialog.width=960)}}}},Vt={convertFrom:(e,a)=>{var t;return(t=e.editor.dataSource)==null?void 0:t.idField},convertTo:(e,a,t)=>{if(t&&t.length>0){const n=t[0];e.editor.dataSource.idField=n==null?void 0:n.bindingPath}}},Nt={convertFrom:(e,a)=>{var t;return(t=e.editor)==null?void 0:t.textField},convertTo:(e,a,t)=>{if(t&&t.length>0){const n=t[0];e.editor.textField=n==null?void 0:n.bindingPath}}},Mt={convertFrom:(e,a)=>e.editor.displayType?e.editor.displayType.toUpperCase():"LIST",convertTo:(e,a,t)=>{e.editor.displayType=t}},ue={convertFrom:(e,a)=>{var l;let t=e.editor?e.editor.dialog:e.dialog;const n=e.editor?e.editor.openType:e.openType;if(t||(t={}),a==="title")return t[a]||Re;if(!n||n==="Modal"){if(a==="width")return(l=t.displayType)!=null&&l.toUpperCase().startsWith("NAV")?t[a]||960:t[a]||590;if(a==="height")return t[a]||620;if(a==="navigatorWidth")return t[a]||320}else{if(a==="width")return t[a]||460;if(a==="height")return t[a]||380}if(a==="draggable")return!0;if(["showMaxButton","showCloseButton","resizeable","enableEsc","rememberSize"].includes(a))return t[a]==null?!0:t[a]},convertTo:(e,a,t)=>{const n=e.editor?e.editor:e;n.dialog=n.dialog||{},n.dialog[a]=t}},Dt={convertFrom:(e,a)=>{const t=e.editor?e.editor:e;if(t.pagination=t.pagination||{},a==="enable"||a==="showLimits")return t.pagination[a]==null?!1:t.pagination[a];if(a==="sizeLimits"){const n=t.pagination[a];return Ne(n)}if(a==="size")return t.pagination[a]||20},convertTo:(e,a,t)=>{var o;const n=e.editor?e.editor.pagination||{}:e;if(n.pagination=n.pagination||{},a==="sizeLimits"){const l=t.map(u=>u.value);n.pagination[a]=l;const r=((o=n.pagination)==null?void 0:o.size)??20;l.includes(r)||(n.pagination.size=l[0]);return}n.pagination[a]=t}},Ot=[{label:"clear",name:"清空事件"},{label:"dictPicking",name:"帮助前事件"},{label:"beforeLoadData",name:"数据加载前事件"},{label:"beforeSelectData",name:"选择数据确认前事件"},{label:"dictPicked",name:"帮助后事件"}],Bt=[{label:"dictPicking",name:"帮助前事件"},{label:"beforeLoadData",name:"数据加载前事件"},{label:"beforeSelectData",name:"选择数据确认前事件"},{label:"dictPicked",name:"帮助后事件"}],nt=Symbol("schema_repository_token");function at(e,a){const t=n=>n&&n.length?n.map(o=>`${o.name}[${o.bindingPath}]`).join(","):"";return{dataSourceEditor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:e,formBasicInfo:a.formSchemaUtils.getFormMetadataBasicInfo()},viewOptions:a.formSchemaUtils.designerMode==="PC_RTC"?[{id:"total",title:"全部",type:"List",dataSource:"Total"}]:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(n,o)=>`${n==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:nt},dataSourceConverter:_e,defaultConverter:Z,idFieldEditor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",disabled:!1,editorParams:{propertyData:e,formBasicInfo:a.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Le.FieldSelectorRepositoryToken},textFieldEditor:{type:"field-selector",textField:"bindingPath",idField:"bindingPath",editorParams:{propertyData:e,formBasicInfo:a.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:Le.FieldSelectorRepositoryToken},mappingFieldsEditor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,editorParams:{propertyData:e,formBasicInfo:a.formSchemaUtils.getFormMetadataBasicInfo()},fromData:{editable:!0,formatter:(n,o)=>`${o.raw.name} [${o.raw.bindingPath}]`,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],repositoryToken:Le.FieldSelectorRepositoryToken,displayFormatter:t},toData:{editable:!1,idField:"bindingPath",textField:"name",valueField:"bindingPath",searchFields:["name","bindingPath"],dataSource:()=>{const n=a.designViewModelUtils.getAllFields2TreeByVMId(a.viewModelId),o=a.schemaService.getPrimaryField();return o?n.filter(l=>l.data.bindingPath!==o):n},formatter:(n,o)=>`${o.raw.name} [${o.raw.bindingPath}]`,displayFormatter:t}}}}function it(e){var l,r;const a={type:"combo-list",enableClear:!1,editable:!1},t={type:"number-spinner",useThousands:!1},n=()=>e.displayType?e.displayType.toUpperCase():"",o=()=>n().startsWith("NAV")?e.showNavigation===void 0?!0:!!e.showNavigation:!1;return{openType:{description:"窗口展示方式:弹出窗口、下拉面板",title:"打开方式",type:"string",refreshPanelAfterChanged:!0,$converter:Z,editor:{...a,data:[{text:"弹出窗口",value:"Modal"},{text:"下拉面板",value:"Popup"}],valueField:"value",textField:"text",idField:"value"},visible:!0,defaultValue:"Modal"},title:{description:"帮助标题",title:"标题",type:"string",visible:e.openType!=="Popup",$converter:ue},width:{description:"窗口宽度,最小值:300px",title:"宽度",type:"number",editor:{...t,min:o()?520:300,needValid:!0},$converter:ue},height:{description:"窗口高度,最小值:200px",title:"高度",type:"number",editor:{...t,min:200,needValid:!0},$converter:ue},showNavigation:{description:"显示导航栏",$converter:Z,refreshPanelAfterChanged:!0,title:"显示导航栏",type:"boolean",visible:n().includes("NAV")&&e.openType!=="Popup"},navigatorWidth:{description:"导航栏宽度,最小200px, 最大为窗口宽度减去200px",title:"导航栏宽度",type:"number",visible:o()&&e.openType!=="Popup",editor:{...t,min:200,max:(((l=e==null?void 0:e.dialog)==null?void 0:l.width)??960)-200,needValid:!0},$converter:ue},resizeable:{description:"允许鼠标拖拽窗口边缘调整尺寸",title:"允许调整窗口尺寸",type:"boolean",visible:e.openType!=="Popup",$converter:ue},rememberSize:{description:"记录窗口尺寸",title:"记录窗口尺寸",type:"boolean",visible:!!e.enableUserData&&(((r=e==null?void 0:e.dialog)==null?void 0:r.resizeable)??!0)&&e.openType!=="Popup",$converter:ue},enableEsc:{description:"允许ESC关闭",title:"允许ESC关闭",type:"boolean",visible:e.openType!=="Popup",$converter:ue},showMaxButton:{description:"显示最大化按钮",title:"显示最大化按钮",type:"boolean",visible:e.openType!=="Popup",$converter:ue},showCloseButton:{description:"显示关闭按钮",title:"显示关闭按钮",type:"boolean",visible:e.openType!=="Popup",$converter:ue}}}function ot(e,a=!0){var l,r,u,s;const t=!((l=e.pagination)!=null&&l.enable),n=()=>e.displayType?e.displayType.toUpperCase():"",o=(c,f)=>{const p=n()!=="TREELIST"||c.treeToList;return f&&p?c.pagination&&c.pagination[f]:p};return{hide:n()==="TREELIST"||!e.helpId||t,description:"分页配置",title:"分页",parentPropertyID:"pagination",$converter:Dt,properties:{showLimits:{description:"显示每页条数选择器",title:"显示条数选择器",type:"boolean",refreshPanelAfterChanged:a,visible:o(e)},sizeLimits:{description:"每页可显示条数",title:"每页显示条数",type:"array",refreshPanelAfterChanged:a,visible:o(e,"showLimits"),editor:{columns:[{field:"value",title:"显示条数",dataType:"number",editor:{type:"number-spinner",useThousands:!1,min:10,max:1e4}}],title:"每页显示条数编辑器",modalWidth:400,modalHeight:500,type:"item-collection-editor",valueField:"value",nameField:"value",requiredFields:["value"],uniqueFields:["value"],modelValue:Ne((r=e.pagination)==null?void 0:r.sizeLimits),beforeSubmit:({notifyService:c,data:f})=>!f||!f.length?(c==null||c.warning({message:"每页显示条数不能为空!"}),!1):new Set(f.map(C=>parseInt(C.value,10))).size===f.length?!0:(c==null||c.warning({message:"每页显示条数不能重复!"}),!1)}},size:{description:"默认显示条数",title:"默认显示条数",type:"number",visible:o(e),editor:{type:"combo-list",enableClear:!1,editable:!1,data:Ne((u=e.pagination)==null?void 0:u.sizeLimits),textField:"value",idField:"value",valueField:"value",modelValue:(s=e.pagination)==null?void 0:s.size}}}}}class lt extends Oe.InputBaseProperty{constructor(){super(...arguments);ne(this,"comboListEditor",{type:"combo-list",enableClear:!1,editable:!1});ne(this,"numberEditor",{type:"number-spinner",useThousands:!1});ne(this,"readonlyEditor",{...this.comboListEditor,editable:!0});ne(this,"visibleEditor",{...this.comboListEditor,editable:!1});ne(this,"requiredEditor",{...this.comboListEditor,editable:!1});ne(this,"freeInputEditor",{...this.comboListEditor,editable:!1})}getExpressionConfig(t,n){const o=["validate"];return t.type==="form-group"&&o.push("dataPicking"),new Oe.ExpressionProperty(this.formSchemaUtils).getExpressionConfig(t,"Field",o)}getPropertyConfig(t,n,o="Card"){var d;const l=(d=t.binding)!=null&&d.field?[]:["Const","Variable","StateMachine"];this.readonlyEditor=this.getPropertyEditorParams(t,l,"readonly"),this.visibleEditor=this.getPropertyEditorParams(t,l,"visible"),this.requiredEditor=this.getPropertyEditorParams(t,l,"required"),this.freeInputEditor=this.getPropertyEditorParams(t,["Const","Variable"],"allowFreeInput");const r=this.getBasicProperties(t,n,o),u=this.getBehaviorConfig(t),s=this.getAppearanceProperties(t,n),c=this.getLookupConfig(t),f=this.getEventPropConfig(t),p=this.getDialogPropertyConfig(t),C=this.getPageConfig(t.editor),k=this.getTreePropConfig(t.editor),b=this.getSearchConfig(t),m=this.getExpressionConfig(t,"Field"),h={basic:r,appearance:s,behavior:u,lookup:c,treeConfig:k,dialog:p,pager:C,searchConfig:b,expressions:m};return t.type==="form-group"&&(h.eventsEditor=f),{type:"object",categories:h}}getGridFieldEdtiorPropConfig(t){return this.getPropertyConfig(t,null,"Grid").categories}flattenTreeNodes(t){return t.reduce((n,o)=>{var l;return n.push(o),(l=o.children)!=null&&l.length&&n.push(...this.flattenTreeNodes(o.children)),n},[])}isSimpleStringField(){var u;const t=((u=this.designViewModelField)==null?void 0:u.path)||"";if(!t||!t.includes("."))return!0;const n=t.split("."),o=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);if(!(o!=null&&o.length))return!1;const l=o.find(s=>s.data.code===n[0]);if(!l)return!1;const r=[l,...this.flattenTreeNodes(l.children)];return!n.reduce((s,c,f)=>[...s,f?`${s[f-1]}.${c}`:c],[]).some(s=>{var c,f,p;return((p=(f=(c=r.find(C=>C.data.path===s))==null?void 0:c.data)==null?void 0:f.type)==null?void 0:p.$type)==="EntityType"})}getBehaviorConfig(t){return{description:"Basic Infomation",title:"行为",properties:{visible:{description:"运行时组件是否可见",title:"是否可见",type:"boolean",editor:this.visibleEditor}},setPropertyRelates:(n,o)=>{this.afterMutilEditorChanged(o,n)}}}changeBindingField(t,n){super.changeBindingField(t,n),t.editor.multiSelect=!1}getDisplayType(t){return t.displayType?t.displayType.toUpperCase():""}mapFieldsDisplayFormatter(t){return t&&t.length?t.map(n=>`${n.name}[${n.bindingPath}]`).join(","):""}getSearchConfig(t){var n;return{description:"Lookup Search Infomation",title:"搜索",parentPropertyID:"editor",properties:{enableSearchBar:{$converter:Z,description:"是否启用搜索栏",refreshPanelAfterChanged:!0,title:"启用搜索栏",type:"boolean",visible:!1},searchAnyField:{description:"显示所有列",$converter:Z,title:"允许查询所有列",type:"boolean",visible:t.editor.openType!=="Popup"&&t.editor.enableSearchBar==null?!0:!!t.editor.enableSearchBar},enableEqualSearch:{$converter:Z,description:"是否启用等于搜索",title:"启用精确搜索",type:"boolean",visible:t.editor.openType!=="Popup"&&(((n=t.editor)==null?void 0:n.enableSearchBar)??!0)!==!1&&this.getDisplayType(t.editor)!=="TREELIST"}},hide:t.editor.openType==="Popup"}}getLookupConfig(t){const n=t.editor,o=()=>{const c=this.formSchemaUtils.getFormSchema().module.entity[0].id,f=this.formSchemaUtils.getFormMetadataBasicInfo();return{propertyData:n,formBasicInfo:f,viewModelId:c,dataSourceId:n.helpId}},{dataSourceEditor:l,idFieldEditor:r,textFieldEditor:u,mappingFieldsEditor:s}=at(n,this);return{description:"Basic Infomation",title:"编辑器",setPropertyRelates:(c,f)=>{if(c)switch(c.propertyID){case"readonly":case"required":this.afterMutilEditorChanged(f,c);break}},parentPropertyID:"editor",properties:{readonly:{description:"",title:"只读",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.readonlyEditor},required:{description:"",title:"必填",type:"boolean",$converter:"/converter/property-editor.converter",editor:this.requiredEditor},placeholder:{description:"当控件没有值时在输入框中显示的文本",title:"提示文本",type:"string",$converter:Z},enableTitle:{description:"鼠标悬停显示文本内容",title:"悬停提示",type:"boolean",$converter:Z,editor:this.comboListEditor},editable:{description:"",title:"允许编辑",type:"boolean",$converter:Z,refreshPanelAfterChanged:!0,editor:this.comboListEditor,visible:!(n.multiSelect&&n.openType==="Popup")},allowFreeInput:{description:"",title:"任意输入",type:"boolean",$converter:Z,editor:this.freeInputEditor,visible:!!n.editable&&this.isSimpleStringField()},enableClear:{title:"启用清除按钮",type:"boolean",$converter:Z},dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{...l,displayFormatter:c=>c&&c.length?c.map(f=>`${f.name}(${f.code})`).join(","):"",validateFunction:async c=>this.formSchemaUtils.designerMode!=="PC_RTC"?!0:this.checkSameBESource(c,t),onSubmitModal:c=>{if(c){delete n.mappingFields;const f=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(f.relativePath,c[0].data).then(p=>JSON.parse(p==null?void 0:p.metadata.content))}}},$converter:_e},filterConditions:{descriptions:"帮助过滤条件",title:"过滤条件",type:"string",$converter:Z,editor:{type:"filter-condition-editor",editable:!1,displayText:"点击配置",enableClear:!1,enableExpression:!0,editorParams:{propertyData:n,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo(),viewModelId:this.formSchemaUtils.getFormSchema().module.entity[0].id},idField:"path",repositoryToken:Le.FieldSelectorRepositoryToken,beforeOpen:async({repository:c,notifyService:f})=>{var h;if(!(n==null?void 0:n.helpId))return f==null||f.warning({message:"请先配置数据源!"}),!1;const C=o(),b=new Oe.ExpressionProperty(this.formSchemaUtils).getEntitiesAndVariables();let m={};if(c){const d=await c.getData(C),y=await c.getLookupConditions(C);m={fieldList:d,conditionList:y}}return(h=b.variables)!=null&&h.forms&&(b.variables.forms.items=b.variables.forms.items.filter(d=>d.category==="remote")),{...m,...b,isServerSide:!0}},onSubmitModal:async({loadingService:c,repository:f,conditions:p,originalConditions:C,FMessageBoxService:k})=>{if(f)try{const b=o(),m=await f.getLookupConditions(b)||[];return JSON.stringify(m)!==JSON.stringify(C.value)?(c==null||c.clearAll(),k.question("视图对象中的帮助过滤条件已更改,请点击确定同步过滤数据","",()=>{p.value=m,C.value=JSON.parse(JSON.stringify(p.value))},()=>{}),!1):(JSON.stringify(p.value)===JSON.stringify(C.value)||await f.saveFilterCondition(p.value,b,this.formSchemaUtils.getFormMetadataBasicInfo()),!0)}catch{return k==null||k.error("保存失败",""),!1}finally{c==null||c.clearAll()}}},visible:!!n.helpId},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:Mt,editor:{type:"combo-list",editable:!1,disabled:!0,data:[{text:"列表",value:"LIST"},{text:"树列表",value:"TREELIST"},{text:"双列表",value:"NAVLIST"},{text:"左树右列表",value:"NAVTREELIST"}],textField:"text",idField:"value",valueField:"value"}},idField:{description:"数据源标识字段",title:"标识字段",type:"string",editor:{...r},$converter:Vt},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:Nt,editor:u},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:Z,editor:{...s}},enableToSelect:{description:"数据加载后是否选中现有值",$converter:Z,title:"选中已选值",type:"boolean",editor:this.comboListEditor},multiSelect:{description:"启用多选",$converter:Z,title:"启用多选",type:"boolean",editor:this.comboListEditor,refreshPanelAfterChanged:!0,visible:this.isSimpleStringField()},showSelections:{description:"显示已选记录",$converter:Z,title:"显示已选记录",type:"boolean",visible:!!n.multiSelect&&n.openType!=="Popup"},separator:{description:"多选分隔符",$converter:Z,title:"多选分隔符",type:"string",editor:{type:"combo-list",editable:!1,disabled:!1,data:[{text:",",value:","},{text:"|",value:"|"},{text:"#",value:"#"}],textField:"text",idField:"value",valueField:"value",separator:"@"},visible:!!n.multiSelect},enableSearchBar:{description:"显示搜索工具条",$converter:Z,refreshPanelAfterChanged:!0,title:"启用搜索框",type:"boolean",visible:!1},enableFavorite:{description:"启用收藏夹",$converter:Z,title:"启用收藏夹",type:"boolean",visible:n.openType!=="Popup"},enableUserData:{description:"保存界面状态",$converter:Z,refreshPanelAfterChanged:!0,title:"保存界面状态",type:"boolean",visible:n.openType!=="Popup"}}}}showNavigatiorWidth(t){return this.getDisplayType(t).startsWith("NAV")&&t.openType!=="Popup"?t.showNavigation===void 0?!0:!!t.showNavigation:!1}getDialogPropertyConfig(t){const n=it(t.editor);return n.openType.$converter=Z,{description:"帮助窗口尺寸配置",title:"帮助窗口",parentPropertyID:"dialog",$converter:ue,properties:n}}showPagerProperty(t,n){const o=this.getDisplayType(t)!=="TREELIST"||t.treeToList;return n&&o?t.pagination&&t.pagination[n]:o}getPageConfig(t){return ot(t)}showLoadType(t){const n=this.getDisplayType(t);return(n==="TREELIST"||n==="NAVTREELIST")&&!t.treeToList&&!t.navTreeToList}isTree(t){return this.getDisplayType(t)==="TREELIST"&&!t.treeToList}getTreePropConfig(t){return{hide:this.getDisplayType(t)!=="TREELIST"&&this.getDisplayType(t)!=="NAVTREELIST",description:"树形数据配置",title:"树形数据配置",parentPropertyID:"editor",properties:{treeToList:{description:"以列表的形式展示树结构数据",$converter:Z,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(t)==="TREELIST"},navTreeToList:{description:"以列表的形式展示树结构数据",$converter:Z,refreshPanelAfterChanged:!0,title:"以列表形式展示",type:"boolean",visible:this.getDisplayType(t)==="NAVTREELIST"},loadTreeDataType:{description:"树形数据加载方式",$converter:Z,title:"数据加载方式",type:"string",editor:{...this.comboListEditor,data:[{value:"default",text:"默认"},{value:"all",text:"全部加载"},{value:"async",text:"分层加载"}],textField:"text",valueField:"value"},visible:this.showLoadType(t)},enableFullTree:{description:"启用构造完整树",$converter:Z,title:"构造完整树",type:"boolean",visible:this.showLoadType(t)},onlySelectLeaf:{description:"仅选择叶子节点",$converter:Z,title:"仅选择叶子节点",type:"boolean",visible:this.isTree(t)},enableCascade:{description:"启用级联选择",$converter:Z,refreshPanelAfterChanged:!0,title:"启用级联选择",type:"boolean",visible:this.isTree(t)&&!!t.multiSelect&&t.openType!=="Popup"},showCascadeControl:{description:"是否在界面中显示级联状态",$converter:Z,title:"显示级联状态",type:"boolean",visible:!!t.enableCascade&&this.isTree(t)},cascadeValue:{description:"缺省级联选择模式",$converter:Z,title:"缺省级联选择模式",type:"string",visible:!!t.enableCascade&&this.isTree(t),editor:{...this.comboListEditor,data:Ve,textField:"text",valueField:"value"}},expandLevel:{description:"默认展开层级: 0: 不展开; -1: 全部展开;>0: 展开到指定级数 ",$converter:Z,title:"默认展开层级",type:"number",visible:this.showLoadType(t),editor:{...this.numberEditor,min:-1,max:99,needValid:!0}}}}}getEventPropConfig(t){const n=this;let o=Ot;t.editor.openType==="Popup"&&(o=o.filter(u=>u.label!=="beforeSelectData"));const l=n.eventsEditorUtils.formProperties(t,n.viewModelId,o);return{title:"事件",hideTitle:!0,properties:n.createBaseEventProperty(l),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(u,s){const c=u.propertyValue;delete s[n.viewModelId],c&&n.eventsEditorUtils.saveRelatedParameters(s,n.viewModelId,c.events,c);const f=n.designViewModelUtils.getDgViewModel(n.viewModelId);f&&n.designViewModelField&&f.changeField(n.designViewModelField.id,{valueChanging:s.fieldValueChanging,valueChanged:s.fieldValueChanged})}}}async checkSameBESource(t,n){var o,l,r,u,s;if(t&&((o=n==null?void 0:n.editor)!=null&&o.helpId)&&!n.isRtcControl){if(t.data.id===n.editor.helpId)return!0;const c=await this.metadataService.getPickMetadata("",t.data).then(m=>{var h;if((h=m==null?void 0:m.metadata)!=null&&h.content)return JSON.parse(m.metadata.content)}),f=await this.metadataService.getPickMetadata("",{id:n.editor.helpId}).then(m=>{var h;if((h=m==null?void 0:m.metadata)!=null&&h.content)return JSON.parse(m.metadata.content)}),p=(l=c==null?void 0:c.dataSource)==null?void 0:l.sourceType,C=(r=f.dataSource)==null?void 0:r.sourceType,k=(u=c==null?void 0:c.dataSource)==null?void 0:u.sourceId,b=(s=f==null?void 0:f.dataSource)==null?void 0:s.sourceId;if(p==="BE"&&C==="BE"&&k!==b)return new xe.FNotifyService().error({message:"只允许更换同数据源的帮助元数据",position:"top-center"}),!1}return!0}}function At(e,a){function t(n,o){const l=e.schema;return new lt(n,a).getPropertyConfig(l,o)}return{getPropsConfig:t}}const jt=i.defineComponent({name:"FLookupDesign",props:Fe,emits:[],setup(e,a){const t=i.ref(),n=i.inject("design-item-context"),o=i.inject("designer-host-service"),l=At(n,o),r=Ct.useDesignerComponent(t,n,l),u='<i class="f-icon f-icon-lookup"></i>',s='<i class="f-icon f-icon-arrow-chevron-down"></i>',c=i.computed(()=>e.openType==="Popup"?"Popup":"Modal"),f=i.computed(()=>c.value==="Popup"?s:u);return i.onMounted(()=>{t.value.componentInstance=r}),a.expose(r.value),()=>i.createVNode("div",{class:"f-lookup-design",ref:t},[i.createVNode(ye,{ref:t,buttonContent:f.value,readonly:!0,editable:!1,placeholder:e.placeholder},null)])}});function me(e,a){const{lookupOptions:t}=a;function n(m){return{...Ue,...m}}function o(){return{enableSelectRow:!0,multiSelect:t.multiSelect,showCheckbox:t.multiSelect,multiSelectMode:"OnCheckAndClick"}}function l(){return{fitColumns:e.fitColumns,fitMode:"percentage",resizeColumn:!0}}function r(){const{displayType:m}=a.lookupOptions;return typeof m=="string"&&m in re?!1:m.toLowerCase().startsWith("nav")}function u(){const{displayType:m,treeToList:h}=a.lookupOptions;return(m.toLowerCase()===re.Tree.toLowerCase()||m.toLowerCase()===re.ListTree.toLowerCase())&&!h}function s(){const{displayType:m,navTreeToList:h}=a.lookupOptions;return m.toLowerCase()===re.TreeList.toLowerCase()&&!h}function c(){const{displayType:m,navTreeToList:h}=a.lookupOptions,d=m.toLowerCase();return d===re.ListList.toLowerCase()||d===re.ListTree.toLowerCase()||h}function f(){var d;return t.dialog?{width:((d=t.dialog)==null?void 0:d.navigatorWidth)||320,minWidth:200}:{width:320,minWidth:200}}function p(m){const{loadTreeDataType:h}=t;return h===fe.all||h==="default"&&(m==null?void 0:m.loadDataType)==="all"}function C(m){return(m==null?void 0:m.layerType)==="pathcode"}function k(){return t.enableCascade&&t.multiSelect}function b(){return e.openType==="Popup"}return{checkPaination:n,checkMultiSelect:o,checkColumnOptions:l,isDoubleList:r,getNavigationSize:f,isTreeList:u,navIsTreeList:s,navIsList:c,isLoadAll:p,isPathCodeTree:C,isEnableCascadeCheck:k,isDropdownMode:b}}function st(e,a,t){var l;const n=i.ref(e.searchFields||[]),o=i.ref(((l=e.navigation)==null?void 0:l.searchFields)||[]);return i.watch(()=>a==null?void 0:a.searchFields,r=>{n.value=r}),i.watch(()=>t==null?void 0:t.searchFields,r=>{o.value=r}),{searchFieldItems:n,navSearchFieldItems:o}}function Rt(e){const a=i.reactive({}),t=i.reactive({}),n=i.reactive({}),o=i.reactive({}),l=i.reactive({}),r=i.ref([]),u=i.ref(),s=i.reactive({}),c=i.reactive({canClose:!0}),f=i.ref(!1),p=["displayType","treeToList","navTreeToList","showSelections","showNavigation","multiSelect","mappingFields","loader","idField","textField","userDataKey","dialog","expandLevel","treeInfo","navTreeInfo","onlySelectLeaf","loadTreeDataType","uri","enableFullTree","cascadeValue","showCascadeControl","enableCascade","enableFavorite"];function C(){p.forEach(k=>{s[k]=e[k]})}return C(),{pageInfoState:a,lookupState:t,navigationState:n,queryState:o,searchState:l,selectionState:r,unSelectDataId:u,lookupOptions:s,searchValueChanged:f,popupState:c}}const Ie=i.ref(),pe="F_LOOKUP_HTTP_COMPOSITION_TOKEN";function Ut(e,a){const t=i.inject("FLoadingService"),n=i.inject(Ye),o=Rt(e),{pageInfoState:l,lookupState:r,navigationState:u,lookupOptions:s,searchValueChanged:c}=o,{searchFieldItems:f,navSearchFieldItems:p}=st(e,r,u),C=i.ref(e.idValue),k=i.ref(!1),b=()=>{var x;const g=(x=s.displayType)==null?void 0:x.toUpperCase();return g===re.Tree||g===re.TreeList},m=(g,x=!1)=>{if(g){const{layerType:B,dataField:z,parentField:J,pathField:K,layerField:ee,isDetailField:G,loadDataType:D}=g,U={layerType:B,dataField:z,parentField:J,pathField:K,layerField:ee,isDetailField:G,loadDataType:D},{onlySelectLeaf:F,loadTreeDataType:v}=s;U.onlySelectLeaf=F,U.loadDataType=v,x?s.navTreeInfo=Object.assign(s.navTreeInfo||{},U):s.treeInfo=Object.assign(s.treeInfo||{},U)}};function h(g,x,B="like"){if(x==null||!x.trim())return[];const z=Array.from(new Set(x.trim().split(" ").filter(D=>D.trim())));if(!g||!z.length)return[];const K=B==="equal"?Se.Equal:Se.Like,ee=(g||[]).map((D,U)=>{const F=z.map((v,N)=>({filterField:D.value,value:v,lbracket:"",rbracket:"",relation:we.And,compare:K}));return F.length&&(F.length>1&&(F[0].lbracket="(",F[F.length-1].rbracket=")"),F[F.length-1].relation=we.Or),F}).filter(D=>D.length);let G=[];return ee&&ee.length&&(G=se.flatten(ee),G.length>1&&(G[0].lbracket+="(",G[G.length-1].rbracket+=")"),G[G.length-1].relation=0),G}function d(){let{expandLevel:g}=s;return g&&!se.isNaN(g)&&(g=g<-1?-1:g),g}function y(g,x){const B={};B.category=x;let z=null,J=null;if(g!=null&&g.search){const{field:K,value:ee,isNavigation:G,type:D}=g.search,U=D||"like";if(ee&&(B.searchValue=ee.trim()),B.searchField=K?K.trim():"*",B.searchType=U,G&&(B.category="navsearch"),!e.enableMultiFieldSearch){G&&(B.searchType="like");const F=B.searchType==="equal"&&B.searchValue?[{filterField:B.searchField,value:B.searchValue,lbracket:"",rbracket:"",relation:we.And,compare:Se.Equal}]:[],v=G?p.value:f.value,N=B.searchField==="*"?h(v,ee,U):F;N&&N.length&&(G?z=N:J=N),ee===""&&B.category==="search"&&!J&&!z&&(B.category="all")}}return b()&&(B.layerNum=d()),{searchParam:B,navSearchConditions:z,searchConditions:J}}function w(g){var B,z;if(g==="fav")return{pageIndex:1,pageSize:500};let x="default";return g==="navsearch"&&(x="navigation"),{pageIndex:((B=l[x])==null?void 0:B.index)||1,pageSize:((z=l[x])==null?void 0:z.size)||20}}function I(g){const x={},B=(g==null?void 0:g.action)||"all",{searchParam:z,navSearchConditions:J,searchConditions:K}=y(g,B);K&&(x.searchConditions=K),J&&(x.navSearchConditions=J),x.enableFullTree=e.enableFullTree,x.searchValue=JSON.stringify(z);const{pageIndex:ee,pageSize:G}=w(B);return x.pageIndex=ee,x.pageSize=G,x.treeToList=e.treeToList,x.navTreeToList=e.navTreeToList,s.loadTreeDataType===fe.default?x.loadTreeDataType="default":x.loadTreeDataType=s.loadTreeDataType===fe.all?"loadall":"layerload",g!=null&&g.relationFilter&&(x.relationFilter=[...g.relationFilter]),g!=null&&g.navNodePathCode&&(x.navPathCode=g.navNodePathCode),g.selectedInfo&&(x.selectedInfo=g.selectedInfo),x.customData=i.toRaw(Ie.value),x.id=e.id,x}function M(g){return g==null?void 0:g.map(x=>(x.resizable=!0,x))}function V(g,x){return g.map(B=>{const z=x==null?void 0:x.find(J=>J.field.toLowerCase()===B.value.toLowerCase());return z&&(B.label=z.title),B})}function T(g){g.columns&&(g.columns=M(g.columns),g.searchFields&&(g.searchFields=V(g.searchFields,g.columns))),g.navigation&&g.navigation.columns&&(g.navigation.columns=M(g.navigation.columns),g.navigation.searchFields&&(g.navigation.searchFields=V(g.navigation.searchFields,g.navigation.columns)))}function $(){return s.loader||n&&n.getData.bind(n)}function A(g){const x=$();return x?x(s.uri,g).then(B=>(T(B),c.value=!1,B)):new Promise((B,z)=>{B({...e})})}function q(g){const x=d();return x===-1?!0:x===0?!1:g<=x}function S(g,x=!1,B="layer"){g.forEach(z=>{var J;z.collapse=x?!1:s.loadTreeDataType==="all"?!q(Te.resolveField(z.data,B)):!(z.expanded??!0),z.hasChildren=!z.leaf,(J=z.children)!=null&&J.length&&S(z.children,x,B)})}async function P(g,x){var J;const B=I(g),z=t==null?void 0:t.show();try{let K=await A(B);if(s.displayType!==K.displayType&&g.action!=="navsearch"&&(s.displayType=K.displayType),b()){const{items:ee,treeInfo:G}=K.navigation||K;if(s.loadDataType===fe.default&&(s.loadTreeDataType=(G==null?void 0:G.loadDataType)||fe.all),ee!=null&&ee.length&&G){const{dataField:D,layerField:U}=G;S(ee,!1,`${D}.${U}`)}}e.beforeLoadData&&(K=await e.beforeLoadData({data:K})),x(K)}finally{(J=z==null?void 0:z.value)==null||J.close()}}function E(g){k.value=g}function L(g,x){if(!x)return"";const{dataField:B,pathField:z}=x;return z?B?g[B][z]:Te.resolveField(g,z):""}function H(g){const x=[];return(g.selectable||g.selectable===void 0)&&x.push(g),g.children&&g.children.length&&g.children.forEach(B=>{x.push(...H(B))}),x}function te(g,x=!1){var K;if(!(g!=null&&g.length))return g;const B=x?(K=s.navigation)==null?void 0:K.treeInfo:s.treeInfo,{dataField:z,layerField:J}=B||{};return z&&J&&S(g,!0,`${z}.${J}`),g}function _(){try{const g=C.value;return g!==""&&g!=null?g:""}catch(g){return console.error("Error in getIdValues:",g),""}}function X(){let g=_()||[];return Array.isArray(g)||(g=(""+g).split(e.separator)),{selectedIds:g,selected:!0}}return{includeChilds:k,updateIncludeChilds:E,idValues:C,getData:A,loadData:P,updateSearchFieldTitle:V,getPathCode:L,getChildNodes:H,lookupStates:o,httpService:n,lookupRequest:$,expandAllNodes:te,getIdQueryParams:X,setTreeInfo:m,getFieldValue:Te.resolveField}}function rt(e,a){i.watch(()=>e.pagination,n=>{a.default=n}),i.watch(()=>{var n;return(n=e.navigation)==null?void 0:n.pagination},n=>{a.navigation=n});function t(n,o=!1){n&&(o?a.navigation={...a.navigation,...n}:a.default={...a.default,...n})}return{updatePageInfo:t}}const Me="F_LOOKUP_USER_DATA_SERVICE";function zt(e,a){const t=i.inject("FLoadingService",null),{lookupStates:n,lookupRequest:o,httpService:l}=a,{lookupOptions:r}=n,u=i.computed(()=>{const b=r.userDataKey||e.id;return b?Te.encrypt(b):""}),s=i.reactive({key:u.value,data:{}});function c(){return l?l.getSettings(s.key).then(b=>(b&&b.textValue?s.data=JSON.parse(b.textValue):s.data={},e.enableUserData||(s.data.tabIndex=ae.dataList),b)):Promise.resolve()}function f({width:b,height:m}){var h;s.data.size=((h=s.data)==null?void 0:h.size)||{},s.data.size={width:b,height:m}}function p(b=!1){if((e.enableUserData||b)&&l){const{key:m,data:h}=s,d={configkey1:m,configkey2:"",configkey3:"",textvalue:JSON.stringify(h)};return l==null?void 0:l.updateSettings(m,d)}return Promise.resolve()}function C(b){const m={category:"fav",favoriteIds:b.favoriteIds};return{searchValue:JSON.stringify(m),pageIndex:1,pageSize:500,treeToList:r.treeToList}}function k(){var d;const b=C({favoriteIds:(d=s.data)==null?void 0:d.favorites}),m=t==null?void 0:t.show(),h=o();return h?h(r.uri,b).then(y=>{var w;return(w=m.value)==null||w.close(),s.favoriteItems=y&&y.items||[],y}):Promise.resolve()}return{userDataState:s,setDialogSize:f,saveUserData:p,getFavoriteData:k,getUserData:c}}const ve=Symbol("FARRIS_LOOKUP_LOCALES");function _t(e){const{t:a}=St.useI18n();function t(c,f,p){return c===f?a(p):c}const n=t(e.placeholder,"请选择","lookup.placeholder"),o={datalist:a("lookup.datalist")||"数据列表",favorite:a("lookup.favorites")||"收藏夹"},l={ok:a("lookup.okText")||"确定",cancel:a("lookup.cancelText")||"取消",clear:a("lookup.selectedInfo.clear")||"取消已选",addFav:a("lookup.favoriteInfo.addFavTitle")||"收藏",removeFav:a("lookup.favoriteInfo.cancelFavTitle")||"取消收藏",selectionTotal:c=>a("lookup.selectedInfo.total",[c])},r={clearSelections:a("lookup.selectedInfo.confirm")||"您确认要取消所有选中记录吗?",addedFavSuccess:a("lookup.favoriteInfo.addFav")||"已添加到收藏夹。",cancelFavSuccess:a("lookup.favoriteInfo.cancelFav")||"已从收藏夹中移除。",mustChoosAdatarow:a("lookup.mustChoosAdatarow")||"请选择一条数据。",mustWriteSomething:a("lookup.mustWriteSomething")||"请输入关键字后查询。"},u={includechildren:a("lookup.includechildren")||"包含下级",both:a("lookup.cascade.enable")||"同步选择",up:a("lookup.cascade.up")||"包含上级",down:a("lookup.cascade.down")||"包含下级",disable:a("lookup.cascade.disable")||"仅选择自身"};return{searchColumns:{allColumns:a("lookup.allColumns")||"所有列",anyFields:a("lookup.anyFields")||"全部",exactLabel:a("lookup.exact")||"精确"},placeholder:n,tree:u,messages:r,tabs:o,buttons:l}}function qe(e,a){const t=i.inject(xe.F_NOTIFY_SERVICE_TOKEN),n=i.inject(Me),o=i.inject(ve),{userDataState:l}=n;l.data=l.data||{};const r="_favorite_",u=i.ref(!1);function s({id:d,data:y},w="add"){var M,V;if(d==null&&d==="")return;const I=d;l.data.favorites=((M=l.data)==null?void 0:M.favorites)||[],l.favoriteItems=l.favoriteItems||[],w==="add"?(u.value=!1,l.data.favorites=Array.from(new Set([...((V=l.data)==null?void 0:V.favorites)||[],I])),l.favoriteItems=[...l.favoriteItems,y]):(u.value=!0,l.data.favorites=l.data.favorites.filter(T=>T!==I),l.favoriteItems=l.favoriteItems.filter(T=>T[a]!==I)),n==null||n.saveUserData(!0).then(T=>{const $=w==="add"?o.messages.addedFavSuccess:o.messages.cancelFavSuccess;t==null||t.success({message:$,position:"top-center"})})}function c(d){return d?d.raw[a]:""}const f=i.computed(()=>d=>{var w,I;const y=c(d);return(I=(w=l.data)==null?void 0:w.favorites)==null?void 0:I.includes(y)});function p(d,y,w){d.stopPropagation();const I=c(y);s({id:I,data:y.raw},f.value(y)?"remove":"add")}const C=d=>f.value(d)?o.buttons.removeFav:o.buttons.addFav,k=(d,y)=>i.createVNode("button",{type:"button",onClick:w=>{p(w,y)},class:["btn btn-link f-icon f-icon-star-outline p-0",{"f-icon-star":f.value(y)}],style:"color: #ffbd8c;",title:C(y)},null),b=(d,y)=>y.disabled?"":k(d,y),m={field:r,title:"",width:50,fixed:"right",align:"center",formatter:k};function h(d,y,w=!1){const I=se.cloneDeep(y);e.enableFavorite&&(m.formatter=w?b:k,I.push(m)),d==null||d.updateColumns(I)}return{favorite:m,removeFavoriteItem:u,setColumns:h}}function $e(e,a,t,n){const{selectionState:o,unSelectDataId:l,lookupOptions:r}=t,u=i.computed(()=>!(o.value&&o.value.length));n&&i.watch(()=>n.value,(s,c)=>{var f;if(s===ae.dataList&&s!==c&&!u.value){const p=o.value.map(C=>C[r.idField]);(f=a.value)==null||f.selectItemByIds(p)}}),i.watch(u,(s,c)=>{var f;s&&((f=a.value)==null||f.clearSelection())}),e.showSelections&&r.multiSelect&&i.watch(l,s=>{var c;s&&((c=a.value)==null||c.unSelectItemByIds(s))})}const Ce=Symbol("LOOKUP_SELECTIONS_MANAGER");function ct(e,a){const{selectionState:t,unSelectDataId:n,lookupOptions:o}=a,l=i.computed(()=>o.idField);function r(d){return d[l.value]}function u(){let d=new Map;return t.value&&t.value.length&&(d=new Map(t.value.map(y=>[y[l.value],y]))),d}function s(){t.value=[]}function c(){return t.value||[]}function f(){return t.value.map(d=>d[l.value])}function p(d){if(!d)return;if(!l.value){console.error("idField is required");return}const y=Array.isArray(d)?d:[d],w=u();y.forEach(I=>{w.delete(I)}),t.value=Array.from(w.values()),n.value=y}function C(d){return u().has(d)}function k(d,y=!0){if(!d)return;if(!l.value){console.error("idField is required");return}const w=Array.isArray(d)?d:[d];if(!w.length)return;if(!w.every(V=>l.value in V)){console.error("Some items do not have the specified idField:",l.value);return}const I=w.map(V=>V[l.value]);if(!o.multiSelect){if(I.length&&C(I[0]))return;s()}const M=u();if(y){const V=new Map(w.map(T=>[T[l.value],T]));I.forEach(T=>{M.has(T)||M.set(T,V.get(T))})}else I.forEach(V=>{M.delete(V)});t.value=Array.from(M.values())}function b(d){if(!d||!d.length)return;const y=d.map(w=>w.data);k(y)}function m(d){if(d){const y=d.raw[l.value];p(y)}}function h(d){!d||!d.length||p(d)}return{updateSelections:k,clearSelections:s,getSelectionIds:f,getSelections:c,unSelectionsByIds:p,selectTreeNodes:b,unSelectTreeNode:m,unSelectTreeNodes:h,isSelected:C,getPrimaryKey:r}}function dt(e,a){const{getSelectionIds:t}=ct(e,a),{lookupOptions:n}=a;function o(u,s){u==null||u.updateDataSource(s||[])}function l(u){const s=t();if(s&&s.length){if(n.multiSelect){u==null||u.selectItemByIds(s);return}u==null||u.activeRowById(s[0])}}function r(u,s){o(u,s),l(u)}return{loadData:o,selectItemByIds:l,loadAndSelect:r}}function ut(e,a,t){const n=i.inject(be,i.ref(ae.dataList)),o=i.inject(pe),l=i.inject(Ce),{lookupStates:r,loadData:u,includeChilds:s,getPathCode:c,getChildNodes:f}=o,{lookupState:p,navigationState:C,pageInfoState:k,searchState:b,lookupOptions:m}=r,{checkPaination:h,checkMultiSelect:d,checkColumnOptions:y,navIsTreeList:w,isLoadAll:I,isPathCodeTree:M}=me(e,r),{updatePageInfo:V}=rt(e,k),{updateSelections:T,isSelected:$,getPrimaryKey:A}=l,{loadAndSelect:q}=dt(e,r),S=h(e.pagination),P=d(),E=y(),L=i.ref(),H=i.ref([]),{navSelectedItems:te,getNavigationIdField:_,getRelationFilter:X}=t;V(S);const g=i.ref(k.default),{setColumns:x}=qe(e,m.idField),B=i.ref({"lookup-datagrid":!0,"lookup-datagrid-empty":!1});i.watch(()=>k.default,R=>{var Q;g.value=R,(Q=L.value)==null||Q.updatePagination(R)}),$e(e,L,o.lookupStates,n);function z(R,Q,oe){const ce={total:Q};if(oe){const{pageIndex:de,pageSize:Ge,enablePager:He,pageList:bt}=oe;Object.assign(ce,{index:de,size:Ge,enable:He})}else ce.enable=!1;V(ce),q(L.value,R||[]),B.value["lookup-datagrid-empty"]=!(R&&R.length)}const J=i.computed(()=>{var de;if(!((de=te.value)!=null&&de.length))return null;const R=te.value,Q={relationFilter:X(R)};if(!w()||!s.value)return Q;const{treeInfo:oe}=C,ce={action:"navAllChildren",...Q};return M(oe)?Object.assign(ce,{navNodePathCode:c(R[0].data,oe)}):ce}),K=i.watch([()=>p==null?void 0:p.columns,()=>p==null?void 0:p.items,()=>p==null?void 0:p.pageInfo,()=>p==null?void 0:p.total,()=>p==null?void 0:p.selectedData],([R,Q,oe,ce,de])=>{L.value&&(R&&x(L.value,R),de&&de.length&&T(de),Q&&z(Q,ce||0,oe))});i.watch(()=>e.idValue,R=>{H.value=R.split(e.separator)});function ee(R){if(R&&R.length&&!m.multiSelect){const Q=A(R[0]);if($(Q))return}T(R),a.emit("selectionsChanged",{items:R})}function G(R,Q){!m.multiSelect&&e.openType==="Modal"&&(T([Q]),a.emit("dblClickRow",{items:[Q]}))}function D(R){T(R==null?void 0:R.raw,!1)}function U(){const R={search:b.default,action:"list"};e.openType==="Modal"&&J.value&&Object.assign(R,J.value),u(R,Q=>{z(Q.items,Q.total||0,Q.pageInfo)})}const F=se.throttle(()=>{V({index:1}),U()},200),v=i.watch(()=>te==null?void 0:te.value,R=>{if(m.uri){F();return}const Q=R.map(oe=>oe[_()]);a.emit("navSelectionsChanged",{items:R,ids:Q})}),N=i.watch(()=>b.default,R=>{if(m.uri){F();return}a.emit("search",R)}),W=i.watch(()=>s.value,()=>{if(m.uri&&te.value&&te.value.length){F();return}});function Y(){K(),v(),N(),W()}i.watch(()=>m.displayType,R=>{R.toLowerCase()==="treelist"&&Y()});function ie({pageSize:R,pageIndex:Q}){var de;let oe=Q;((de=g.value)==null?void 0:de.size)!==R&&(oe=1);const ce={size:R,index:oe,isNavigation:!1};if(V(ce),m.uri){U();return}a.emit("pageSizeChanged",ce)}function ge(){return i.createVNode(Ee.FDataGrid,{ref:L,class:B.value,pagination:g.value,summary:{enable:!1},columnOption:E,idField:m.idField,rowNumber:{enable:!1},showBorder:!0,virtualized:!0,fit:!0,selection:P,selectionValues:H.value,onSelectionUpdate:ee,onUnSelectItem:D,onChanged:ie,onDoubleClickRow:G},null)}return{datagridRef:L,selectionValues:H,renderDataGrid:ge,unwatches:Y}}const ke=Symbol("LOOKUP_TREEROW_OPTIONS"),ft={cascadeOption:{autoCheckChildren:!1,autoCheckParent:!1},collapseField:"collapse",hasChildrenField:"hasChildren"};function pt(e,a=!1){function t(n){(n.raw.addtional||n.raw.selectable===!1)&&(n.disabled=!0);const o=a?e.navTreeInfo:e.treeInfo;return o!=null&&o.onlySelectLeaf&&(n.disabled=!n.raw.leaf),n}return{customRowStatus:t}}function ht(e,a){const{lookupState:t,lookupOptions:n}=e;function o(h,d,y){return h.reduce((w,I)=>{var M;if(I.parents=[],d){const V=se.get(d.data,n.idField);I.parent=d,I.parents=[...y||[],V]}return I.id=se.get(I,n.idField),w.push(I),(M=I.children)!=null&&M.length&&w.push(...o(I.children,I,I.parents)),w},[])}function l(h){var d;return(d=t==null?void 0:t.flattenTreeNodes)==null?void 0:d.find(y=>y.id===h)}function r(h){var d;return((d=t==null?void 0:t.flattenTreeNodes)==null?void 0:d.filter(y=>{var w;return(w=y.parents)==null?void 0:w.includes(h)}))??[]}function u(h){var y;if(!h)return[];const d=l(h);return((y=d==null?void 0:d.parents)==null?void 0:y.map(w=>l(w)))??[]}function s(h){var I;if(!h)return[];const d=l(h),y=((I=d==null?void 0:d.parents)==null?void 0:I.map(M=>l(M)))??[],w=r(h);return[...y,...w]}function c(h,d=!0){const y=u(h).filter(I=>{var M;return!((M=I.children)!=null&&M.some(V=>{var T;return(T=e.selectionState.value)==null?void 0:T.some($=>$[n.idField]===V.id)}))}),w=d?[]:r(h);return y.concat(w)}function f(h,d,y=!0){var I;const w={down:()=>r(h),up:()=>y?u(h):c(h),both:()=>y?s(h):c(h,!1)};return((I=w[d])==null?void 0:I.call(w))??[]}function p(h,d={},y=!1){const{field:w="*",value:I=""}=d,M=!!I,{layerType:V,dataField:T,pathField:$,layerField:A}=y?n.navTreeInfo:n.treeInfo,q=V==="parentId",S={category:y?"navchildren":"children",searchField:w,searchValue:I,searchType:"like"};if(q)S.parentId=h.raw.id;else{const E=h.raw[T];S.parentPath=se.get(E,$),S.parentLayer=se.get(E,A)}const P={searchValue:"",customData:Ie.value,enableFullTree:n.enableFullTree,loadTreeDataType:n.loadTreeDataType==="all"?"loadall":"layerload"};return M&&(P.enableFullTree=!1,P.loadTreeDataType="layerload",q&&(S.searchValue="",S.searchField="*")),P.searchValue=JSON.stringify(S),P}function C(h,d=!1){const{isEnableCascadeCheck:y}=a,{layerType:w}=d?n.navTreeInfo:n.treeInfo,I=n.loadTreeDataType!=="all"&&w==="pathcode"&&y()&&(n.cascadeValue==="both"||n.cascadeValue==="down");return h?h.data&&!h.leaf&&I:I}function k(h){const{dataField:d,pathField:y}=n.treeInfo,w=h.data[d],I=se.get(w,y);return{searchValue:JSON.stringify({category:"allChildren"}),parentsIds:[I],customData:Ie.value}}function b(h,d){let y=h,w=null;for(const I of d){const M=y.find(V=>V.data.id===I);if(!M)return null;w=M,y=M.children||[]}return w}function m(h,d,y){var $;if(!y)return;const w=l(d),I=[...(w==null?void 0:w.parents)??[],d],M=(h??[]).map(A=>({...A,hasChildren:!A.leaf,parents:[...I]})),V=b(t.flattenTreeNodes||[],I);V&&(V.children=[...M],($=t.flattenTreeNodes)==null||$.push(...M));const{isDropdownMode:T}=a;i.nextTick(()=>{var S;if(y.addChildrenToNode(M,d),T())return;const A=((S=e.selectionState.value)==null?void 0:S.map(P=>P[n.idField]))??[],q=M.filter(P=>A.includes(P.id)).map(P=>P.id);q.length&&y.selectItemByIds(q)})}return{flattenTreeNodes:o,getParents:u,getChildren:r,getParentsAndChildren:s,getTreeNodeWithCascadeValue:f,buildGetChildrenQueryParams:p,needGetAllChildNodes:C,buildGetAllChildrenQueryParams:k,loadChildNodes:m}}function mt(e,a){const t=i.inject(be,i.ref(ae.dataList)),n=i.inject(pe),{lookupStates:o}=n,{lookupState:l,searchState:r,lookupOptions:u}=o,s=i.inject(ke),c=i.inject(Ce),f=me(e,o),{checkMultiSelect:p,checkColumnOptions:C,isEnableCascadeCheck:k}=f,{setColumns:b}=qe(e,u.idField),{selectTreeNodes:m,unSelectTreeNode:h,unSelectTreeNodes:d,updateSelections:y,getSelectionIds:w}=c,I=p(),M=C(),V=i.ref(),T=i.ref([]),{loadAndSelect:$}=dt(e,o),{loadData:A,expandAllNodes:q,getData:S}=n,{flattenTreeNodes:P,getTreeNodeWithCascadeValue:E,buildGetChildrenQueryParams:L,needGetAllChildNodes:H,buildGetAllChildrenQueryParams:te,loadChildNodes:_}=ht(o,f);function X(v,N=!1){N&&(v=q(v)),l.flattenTreeNodes=P(v||[]),$(V.value,v||[])}$e(e,V,o,t);const g=i.watch([()=>l==null?void 0:l.columns,()=>l==null?void 0:l.items,()=>l==null?void 0:l.pageInfo,()=>l==null?void 0:l.total,()=>l==null?void 0:l.selectedData],([v,N,W,Y,ie])=>{V.value&&(ie&&ie.length&&y(ie),v&&b(V.value,v,!0),X(N||[],l.action==="search"))});function x(v,N=!0){const{cascadeValue:W}=u;return k()&&W!==je.Disable?E(v,W,N).filter(ie=>ie.selectable||ie.selectable===void 0).map(ie=>ie.id):[]}function B(v){m(v),a.emit("selectionsChanged",{items:v})}function z(v){h(v);const N=se.get(v.raw,u.idField),W=x(N);if(H(v.raw)){const Y=te(v.raw);S(Y).then(ie=>{const R=(ie.items||[]).filter(oe=>!oe.addtional&&(oe.selectable||oe.selectable===void 0));R&&R.length&&m(R);const Q=(R||[]).map(oe=>oe.id);d([N,...W,...Q])})}else d([N,...W])}function J(v){const N=se.get(v.raw,u.idField),W=x(N);if(W.length&&V.value.selectItemByIds([N,...W]),H(v.raw)){const Y=te(v.raw);S(Y).then(ie=>{const R=(ie.items||[]).filter(Q=>!Q.addtional&&(Q.selectable||Q.selectable===void 0));R&&R.length&&m(R)})}}function K(v="list"){A({search:r.default,action:v},N=>{X(N.items,v==="search")})}const ee=i.watch(()=>r.default,v=>{if(u.uri){K("search");return}a.emit("search",v)});function G(){g(),ee()}i.watch(()=>u.displayType,v=>{v.toLowerCase()!=="treelist"&&G()});function D(v){if(V.value.hasChildren(v))return Promise.resolve();const N=v.raw.id,W=L(v,r.default);return S(W).then(Y=>{_((Y==null?void 0:Y.items)??[],N,V.value)})}function U(v){var Y;const{node:N,$event:W}=v;u.enableFavorite&&((Y=W.target)==null?void 0:Y.className.indexOf("f-icon-star"))>-1||!u.multiSelect&&e.openType==="Modal"&&(y([N]),a.emit("dblClickRow",{items:[N]}))}function F(){return i.createVNode(Ae.FTreeGrid,{class:"lookup-treegrid",ref:V,fit:!0,data:e.data,idField:u.idField,columns:e.columns,rowNumber:{enable:!1},columnOption:M,selection:I,showBorder:!0,virtualized:!0,displayField:"code",rowOption:s,hierarchy:ft,onSelectionUpdate:B,onUnSelectItem:z,onSelectItem:J,loadData:D,onDblclickNode:U},null)}return{treegridRef:V,selectionTreeValues:T,renderTreeGrid:F,unwatches:G}}const qt={fields:{type:Array,default:()=>[]},showAllColumns:{type:Boolean,default:!0},isNavigation:{type:Boolean,default:!1},id:{type:String,default:""},enableEqualSearch:{type:Boolean,default:!1},exactLabel:{type:String,default:"精确"}},$t=i.defineComponent({name:"FLookupSearchBar",props:qt,emits:["search"],setup(e,a){const t='<i id="'+e.id+'-icon-search" class="f-icon f-icon-search"></i>',n=i.inject(pe),{queryState:o}=n.lookupStates,l=i.ref(e.fields||[]),r=i.ref(""),u=i.ref(o.value),s=i.ref(e.isNavigation),c=i.ref(),f=i.ref(!1),p=i.computed(()=>({field:r.value,value:u.value,isNavigation:s.value,type:f.value?"equal":"like"}));function C(){if(!l.value.length)return;let d="";e.showAllColumns&&(d="*"),d=l.value[0].value;const y=l.value.find(w=>!!w.isDefault);y&&(d=y.value),r.value=d}i.watch(()=>e.fields,d=>{l.value=d,C()});function k(){a.emit("search",p.value)}const b=se.debounce(()=>k(),300);function m(){u.value="",k()}function h(d){d.key==="Enter"&&b()}return i.onMounted(()=>{C(),s.value&&(u.value="")}),()=>i.createVNode("div",{class:"fv-lookup-search-bar d-flex flex-row"},[i.createVNode("div",{style:"width: 160px;"},[i.createVNode(Xe.FComboList,{ref:c,data:l.value,textField:"label",valueField:"value",idField:"value",modelValue:r.value,"onUpdate:modelValue":d=>r.value=d,enableClear:!1},null)]),i.createVNode("div",{class:"f-utils-fill ml-2 d-flex align-items-center"},[i.createVNode(Qe.FButtonEdit,{buttonContent:t,class:"f-utils-fill",maxLength:200,modelValue:u.value,"onUpdate:modelValue":d=>u.value=d,onClickButton:k,enableClear:!0,onClear:m,onKeyup:h,popupOnClick:!0,id:e.id+"-search-bar"},null),e.enableEqualSearch&&i.createVNode("div",{class:"custom-control custom-checkbox custom-control-inline pr-0 m-0 ml-2"},[i.withDirectives(i.createVNode("input",{class:"custom-control-input",id:"farris-lookup_searchtype-equal",type:"checkbox","onUpdate:modelValue":d=>f.value=d},null),[[i.vModelCheckbox,f.value]]),i.createVNode("label",{class:"custom-control-label btn-link lookup-checkbox-label",for:"farris-lookup_searchtype-equal",style:"padding-left:18px;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;"},[e.exactLabel])])])])}});function We(e,a,t,n){const{lookupState:o,searchState:l,navigationState:r}=t,{searchFieldItems:u,navSearchFieldItems:s}=st(e,o,r),c=i.ref([]),f=i.ref([]);function p(h,d=!1){let y=h;e.searchAnyField&&(y=[{label:n.searchColumns.allColumns||"所有列",value:"*"}].concat(h)),d?f.value=y:c.value=y}p(u.value),p(s.value,!0),i.watch(()=>u.value,h=>{p(h)}),i.watch(()=>s.value,h=>{p(h,!0)});function C(){const{displayType:h,treeToList:d}=t.lookupOptions;return(h.toLowerCase()===re.Tree.toLowerCase()||h.toLowerCase()===re.ListTree.toLowerCase())&&!d}function k(h){const d={...h};if(a){l.navigation=d;return}l.default=d}const b=i.computed(()=>a?f.value||[]:c.value||[]);function m(){if(e.enableSearchBar&&b.value.length>0)return i.createVNode("div",{class:"p-2"},[i.createVNode($t,{fields:b.value,id:e.id,showAllColumns:e.searchAnyField,isNavigation:a,onSearch:k,enableEqualSearch:e.enableEqualSearch&&!a&&!C(),exactLabel:n.searchColumns.exactLabel||"精确"},null)])}return{renderSearchBar:m}}function Wt(e,a){var G;const t=i.inject(ke),n=i.inject(pe),o=i.inject(ve),{loadData:l,lookupStates:r,expandAllNodes:u,getFieldValue:s,getData:c}=n,{navigationState:f,pageInfoState:p,searchState:C,lookupOptions:k}=r,{renderSearchBar:b}=We(e,!0,r,o),m=me(e,r),{checkPaination:h,navIsList:d,navIsTreeList:y}=m,{updatePageInfo:w}=rt(e,p),I=i.ref([]),{buildGetChildrenQueryParams:M,loadChildNodes:V}=ht(r,m);if(d()){const D=h((G=e.navigation)==null?void 0:G.pagination);w(D,!0)}const T=i.ref(p.navigation),$={enableSelectRow:!0,multiSelect:!1,showCheckbox:!1,keepSelectingOnClick:!1},A={fitColumns:!0,fitMode:"percentage",resizeColumn:!0},q=i.ref(),S=i.ref(),P=i.ref("id");i.watch(()=>p.navigation,D=>{var U;T.value=D,(U=S.value)==null||U.updatePagination(D)});function E(D,U,F){var v,N,W;if(D=D||[],d()){const Y={total:U};if(F){const{pageIndex:ie,pageSize:ge,enablePager:R,pageList:Q}=F;Object.assign(Y,{index:ie,size:ge,enable:R})}w(Y,!0),(v=S.value)==null||v.updateDataSource(D)}else y()&&((N=C.navigation)!=null&&N.value&&(D=u(D,!0)),(W=q.value)==null||W.updateDataSource(D))}function L(D){var U,F;d()?(U=S.value)==null||U.updateColumns(D):y()&&((F=q.value)==null||F.updateColumns(D))}i.watch([()=>f==null?void 0:f.columns,()=>f==null?void 0:f.items,()=>f==null?void 0:f.pageInfo,()=>f==null?void 0:f.total],([D,U,F,v])=>{D&&L(D),E(U,v||0,F)}),i.watch(()=>f==null?void 0:f.idField,D=>{P.value=D||"id"});function H(D){I.value=D}function te(D){I.value=D}function _(){l({search:C.navigation,action:"navsearch"},D=>{E(D.items,D.total||0,D.pageInfo)})}i.watch(()=>C.navigation,D=>{if(k.uri){w({index:1},!0),_();return}a.emit("search",D)});function X({pageSize:D,pageIndex:U}){var N;let F=U;((N=T.value)==null?void 0:N.size)!==D&&(F=1);const v={size:D,index:F};if(w(v,!0),k.uri){_();return}a.emit("pageSizeChanged",v)}function g(D){if(q.value.hasChildren(D))return Promise.resolve();const U=D.raw.id,F=M(D,C.navigation,!0);return c(F).then(v=>{V((v==null?void 0:v.items)??[],U,q.value)})}function x(){return i.createVNode(Ae.FTreeGrid,{ref:q,fit:!0,idField:P.value,rowNumber:{enable:!1},columnOption:A,selection:$,virtualized:!0,showBorder:!0,rowOption:t,hierarchy:ft,onSelectionUpdate:H,loadData:g},null)}function B(){return i.createVNode(Ee.FDataGrid,{ref:S,pagination:T.value,summary:{enable:!1},columnOption:A,idField:P.value,rowNumber:{enable:!1},showBorder:!0,fit:!0,virtualized:!0,selection:$,onSelectionUpdate:te,onChanged:X},null)}function z(){if(y())return x();if(d())return B()}function J(){return i.createVNode("div",{class:"d-flex h-100 w-100 flex-column"},[b(),i.createVNode("div",{class:"f-utils-fill px-2",style:"position: relative;"},[z()])])}function K(){return P.value}function ee(D){return f.relations&&f.relations.length?f.relations.map(F=>{const{groupField:v,helpField:N}=F,W={fieldName:N,fieldValue:""},Y=D.map(ie=>s(ie,v));return W.fieldValue=Y.join(","),W}):""}return{renderNavigation:J,selectedItems:I,getNavigationIdField:K,getRelationFilter:ee}}function Gt(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!i.isVNode(e)}const Ht=i.defineComponent({name:"LookupContainer",props:Fe,emits:["update:modelValue","search","navSelectionsChanged","pageIndexChanged","pageSizeChanged","changeDialogOptions","clearSearch","dblClickRow"],setup(e,a){i.inject(be,i.ref(ae.dataList));const t=i.inject(pe),n=i.inject(ve),{lookupStates:o,getIdQueryParams:l}=t,{lookupState:r,navigationState:u,queryState:s,lookupOptions:c,searchState:f}=o,{renderSearchBar:p}=We(e,!1,o,n),{isDoubleList:C,getNavigationSize:k,isTreeList:b}=me(e,o),{renderNavigation:m,selectedItems:h,getNavigationIdField:d,getRelationFilter:y}=Wt(e,a),{renderTreeGrid:w,unwatches:I}=mt(e,a),{renderDataGrid:M,unwatches:V}=ut(e,a,{navSelectedItems:h,getNavigationIdField:d,getRelationFilter:y}),T=i.computed(()=>b()?w:M),$=k();function A(P){var L;const E=(L=c.dialog)==null?void 0:L.title;E&&E!==Re&&(P=E),a.emit("changeDialogOptions",{title:P})}function q(P,E){r.action=E,b()?V():I(),P.navigation&&(Object.keys(P.navigation).forEach(L=>{var H;u[L]=(H=P.navigation)==null?void 0:H[L]}),P.navigation.treeInfo&&(t==null||t.setTreeInfo(P.navigation.treeInfo,!0)),delete P.navigation),P.treeInfo&&(t==null||t.setTreeInfo(P.treeInfo)),Object.keys(P).forEach(L=>{r[L]=P[L]})}function S(){const P={};e.enableToSelect&&(P.selectedInfo=l()),s.value!=null&&(P.search={field:"*",value:s.value,type:"like"},P.action="search",f.default={field:"*",value:s.value,type:"like"}),t==null||t.loadData(P,E=>{i.nextTick(()=>{q(E,(P==null?void 0:P.action)||""),A(E.title||"")})})}return i.onMounted(()=>{S(),document.body.classList.add("lookup-modal-open")}),i.onUnmounted(()=>{document.body.classList.remove("lookup-modal-open")}),()=>{let P;return i.createVNode(Be.FLayout,null,{default:()=>[C()&&e.showNavigation&&i.createVNode(Be.FLayoutPane,{position:"left",width:$==null?void 0:$.width,minWidth:$==null?void 0:$.minWidth},Gt(P=m())?P:{default:()=>[P]}),i.createVNode(Be.FLayoutPane,{position:"center"},{default:()=>[i.createVNode("div",{class:"d-flex h-100 w-100 flex-column"},[p(),i.createVNode("div",{class:"f-utils-fill px-2",style:"position: relative;"},[T.value()])])]})]})}}}),Jt={multiSelect:{type:Boolean,default:!1},idField:{type:String,default:"id"},displayType:{type:String,default:"list"},selectedIds:{type:Array,default:[]},showSelections:{type:Boolean,default:!1},treeToList:{type:Boolean,default:!1},enableFavorite:{type:Boolean,default:!0}},Qt=i.defineComponent({name:"FLookupFavorite",props:Jt,emits:["dblClickRow"],setup(e,a){const t=i.inject(ke),{userDataState:n,getFavoriteData:o}=i.inject(Me),l=i.inject(be,i.ref(ae.dataList)),r=i.inject(Ce),u=i.inject(pe),{lookupStates:s,expandAllNodes:c}=u,f=i.computed(()=>s.lookupOptions.idField||"id"),p=i.ref(e.selectedIds),{setColumns:C,removeFavoriteItem:k}=qe(e,f.value),{isTreeList:b}=me(e,s),{updateSelections:m,unSelectTreeNode:h,selectTreeNodes:d}=r,y=i.ref(),w=i.ref(),I=i.computed(()=>b()?w.value:y.value);$e(e,I,s);function M(){return n.data&&n.data.favorites&&n.data.favorites.length}function V(_){I.value.clearSelection(),_&&_.length&&I.value.selectItemByIds(_)}i.watch(()=>e.selectedIds,(_,X)=>{JSON.stringify(_)!==JSON.stringify(X)&&(p.value=_,p.value.length?V(p.value):I.value.clearSelection())});function T(_,X){X&&X.length&&C(I.value,X,b()),_&&(b()&&(_=c(_)),I.value.updateDataSource(_||[])),V(p.value||[])}function $(){o().then(_=>{_?T(_.items||[],_.columns):T([],null)})}i.watch(()=>l.value,(_,X)=>{var g;_===ae.favorite&&(M()?$():T([],(g=s.lookupState)==null?void 0:g.columns))}),i.watch(()=>k.value,(_,X)=>{l.value===ae.favorite&&_&&(b()?$():T(n.favoriteItems||[],null),k.value=!1)});const A={fitColumns:!0,fitMode:"percentage",resizeColumn:!0},q={enableSelectRow:!0,multiSelect:e.multiSelect,showCheckbox:e.multiSelect,multiSelectMode:"OnCheckAndClick"};function S(_){b()?d(_):m(_)}function P(_){b()?h(_):m(_==null?void 0:_.raw,!1)}function E(_,X){e.multiSelect||(m([X]),a.emit("dblClickRow",{items:[X]}))}function L(_){const{node:X}=_;e.multiSelect||(m([X]),a.emit("dblClickRow",{items:[X]}))}function H(){return i.createVNode(Ae.FTreeGrid,{ref:w,fit:!0,idField:f.value,rowNumber:{enable:!1},columnOption:A,selection:q,showBorder:!0,virtualized:!0,rowOption:t,onSelectionUpdate:S,onUnSelectItem:P,onDblclickNode:L},null)}function te(){return i.createVNode(Ee.FDataGrid,{ref:y,pagination:{enable:!1},summary:{enable:!1},columnOption:A,idField:f.value,rowNumber:{enable:!1},showBorder:!0,virtualized:!0,fit:!0,selection:q,onSelectionUpdate:S,onUnSelectItem:P,onDoubleClickRow:E},null)}return()=>b()?H():te()}}),Xt={id:{type:String},title:{type:String},height:{type:Number,default:50},draggable:{type:Boolean,default:!0},enableFavorite:{type:Boolean,default:!1},useHttpComposition:{type:Object,default:{}},userDataService:{type:Object,default:{}},useDialog:{type:Object,default:{}},selectionsManager:{type:Object,default:{}},showSelectedList:{type:Boolean,default:!1},showIncludeChildNodes:{type:Object,default:{show:!0,value:!1}},showCascadeControl:{type:Boolean,default:!1},isMaximized:{type:Boolean,default:!1},locales:{type:Object,default:{}}},Kt={idField:{type:String,default:"id"},parentRef:{type:HTMLElement,default:null},popoverOffsetX:{type:Number,default:0}},Yt=i.defineComponent({props:Kt,setup(e,a){const t=i.inject("FMessageBoxService"),n=i.inject(Ce),o=i.inject(pe),{lookupState:l,selectionState:r}=o.lookupStates,u=i.inject(ve),{clearSelections:s,unSelectionsByIds:c}=n,f=i.ref(),p=i.computed(()=>f),C=i.ref(),k=i.ref(e.popoverOffsetX||-15);i.watch(()=>e.popoverOffsetX,E=>{k.value=E});const b=i.computed(()=>k.value===-15?10:100),m=i.ref(e.parentRef),h="_remove_selected_";function d(E,L,H){E.stopPropagation();const te=L.raw[e.idField];c(te)}const y={field:h,title:"",width:50,fixed:"right",align:"center",formatter:(E,L)=>i.createVNode("button",{type:"button",onClick:H=>{d(H,L)},class:"btn btn-link f-icon f-icon-x p-0",style:"color: #dd2438;"},null)},w=i.computed(()=>{const E=se.cloneDeep((l==null?void 0:l.columns)||[]);if(E.length)return E.push(y),E});i.watch(()=>e.parentRef,E=>{m.value=E});const I={fitColumns:!0,fitMode:"percentage",resizeColumn:!0},M={enableSelectRow:!0,multiSelect:!1,showCheckbox:!1,showSelectAll:!1,multiSelectMode:"OnCheckAndClick"},V=i.ref({width:"0px",height:"0px"});let T;function $(){var _,X;const E=((_=m.value)==null?void 0:_.offsetHeight)-100,L=200,H=r.value.length*28+60,te=H>E?E:H<L?L:H;V.value={width:((X=m.value)==null?void 0:X.offsetWidth)-20+"px",height:te+"px"}}i.watch(()=>C.value,E=>{E&&(E.updateColumns(w.value),E.updateDataSource(se.cloneDeep(r.value||[])),$())}),i.watch(()=>r.value,E=>{var L;(L=C.value)==null||L.updateDataSource(se.cloneDeep(E||[]),{keepScrollTop:!0})}),i.watch(()=>m.value,E=>{T=new ResizeObserver(()=>{m.value&&$()}),T.observe(m.value)});const A=i.computed(()=>(r.value||[]).length>0),q=i.computed(()=>({display:"flex","align-items":"center",opacity:A.value?1:.4,cursor:A.value?"pointer":"not-allowed",pointerEvents:A.value?"auto":"none"}));function S(){const E=u==null?void 0:u.messages.clearSelections;t==null||t.question(E,"",()=>{s()})}i.onMounted(()=>{$()}),i.onUnmounted(()=>{T&&m.value&&T.unobserve(m.value)});function P(){var E;(E=p.value)==null||E.value.hide()}return a.expose({hidePopup:P}),()=>i.createVNode(i.Fragment,null,[i.createVNode("div",{class:"d-flex flex-row align-items-center",style:"line-height:24px"},[i.withDirectives(i.createVNode("div",{style:q.value,innerHTML:u.buttons.selectionTotal(r.value.length)},null),[[i.resolveDirective("popover"),p.value,"toggle"]]),A.value&&i.createVNode("button",{class:"btn btn-link btn-sm p-0 pl-2",style:"line-height:24px",onClick:S},[u.buttons.clear])]),i.createVNode(wt,{id:"lookup-selected-popover",customStyles:{filter:"drop-shadow(#c5c5c5 0px 0px 6px)"},offsetX:k.value,arrowOffsetX:b.value,ref:f,placement:"top-left",keepWidthWithReference:!1,fitContent:!0},{default:()=>{var E;return[i.createVNode("div",{style:V.value},[((E=f.value)==null?void 0:E.isShow)&&i.createVNode(Ee.FDataGrid,{ref:C,pagination:{enable:!1},summary:{enable:!1},columnOption:I,idField:e.idField,rowNumber:{enable:!1},showBorder:!1,virtualized:!0,fit:!0,selection:M},null)])]}})])}}),Zt=i.defineComponent({props:{modelValue:{type:Boolean,default:!1},label:{type:String,default:"包含下级"}},emits:["update:modelValue"],setup(e,a){const t=i.ref(e.modelValue);function n(o){o.stopPropagation(),t.value=!t.value,a.emit("update:modelValue",t.value)}return()=>i.createVNode("div",{class:"custom-control custom-checkbox mb-0",onClick:n},[i.withDirectives(i.createVNode("input",{id:"lookup-include-childs-input","onUpdate:modelValue":o=>t.value=o,title:"checkbox-input",type:"checkbox",class:"custom-control-input"},null),[[i.vModelCheckbox,t.value]]),i.createVNode("label",{class:"custom-control-label",style:"padding-left: 1.2rem;"},[e.label])])}}),en=i.defineComponent({name:"FLookupCascadeSelector",props:["modelValue"],emits:["update:modelValue"],setup(e,a){const t=i.inject(ve),n=i.ref(),o=i.ref(e.modelValue);return i.watch(()=>o.value,(l,r)=>{l!==r&&a.emit("update:modelValue",l)}),Ve.forEach(l=>{l.text=t.tree[l.value]}),()=>i.createVNode("div",{style:"width: 130px",class:"ml-3"},[i.createVNode(Xe.FComboList,{ref:n,data:Ve,textField:"text",valueField:"value",idField:"value",modelValue:o.value,"onUpdate:modelValue":l=>o.value=l,enableClear:!1,minPanelWidth:130,placement:"top-left"},null)])}}),tn=i.defineComponent({name:"FLookupModalContainer",props:Xt,emits:["closeModal","maximize"],setup(e,a){const t=i.ref(ae.dataList);i.provide(be,t),i.provide(pe,e.useHttpComposition),i.provide(Me,e.userDataService),i.provide(Ce,e.selectionsManager),i.provide(ve,e.locales);const{tabs:n,buttons:o,tree:l}=e.locales,r=i.reactive(e.showIncludeChildNodes),u=i.ref(r.value),{lookupOptions:s}=e.useHttpComposition.lookupStates,c=s.dialog,f=i.computed(()=>s.displayType.toUpperCase()===re.TreeList),p=pt(s,f.value);i.provide(ke,p);const C=i.ref(e.isMaximized);i.watch(()=>e.isMaximized,(L,H)=>{C.value=L});const k=i.computed(()=>({"f-icon":!0,modal_maximize:!0,modalrevert:C.value}));i.ref();const b=i.computed(()=>r.show&&t.value===ae.dataList&&s.displayType&&f.value),m=i.computed(()=>b.value?-99:-15);i.watch(()=>u.value,(L,H)=>{e.useHttpComposition.updateIncludeChilds(L)}),i.watch(()=>e.showIncludeChildNodes,(L,H)=>{r.value=L,e.useHttpComposition.updateIncludeChilds(L.value)});const{userDataState:h}=e.userDataService,{cancelDialog:d,submitDialog:y}=e.useDialog,w=i.ref(),I=i.ref();function M(L){a.emit("maximize",L)}function V(L){a.emit("closeModal",L)}async function T(L){await y()&&V(L)}async function $(L){await d()&&V(L)}function A(L){t.value=L,h.data.tabIndex=L}const q=i.computed(()=>({transform:`translate3d(${t.value===ae.favorite?84:0}px, 0px, 0px)`})),S=i.computed(()=>L=>({visibility:t.value===L?"visible":"hidden",position:"absolute",top:0,transition:"all 0.3s ease-in",opacity:t.value===L?1:0})),P=i.computed(()=>{const L=e.enableFavorite?"50%":"100%",H=e.enableFavorite?100:80,te=c.showMaxButton||c.showCloseButton?H:0;return{maxWidth:`calc(${L} - ${te}px)`}});function E(L){L.stopPropagation(),document.body.click()}return i.onMounted(()=>{var L;h.data.favorites&&h.data.favorites.length&&(t.value=((L=h.data)==null?void 0:L.tabIndex)||ae.dataList),b.value&&e.useHttpComposition.updateIncludeChilds(u.value)}),()=>i.createVNode("div",{class:"d-flex flex-column h-100 lookup-modal",ref:w},[i.createVNode("div",{class:"d-flex justify-content-between align-items-center px-3 lookup-modal-header"},[i.createVNode("div",{class:"lookup-modal-header-title",title:e.title,style:P.value},[e.title]),e.enableFavorite&&i.createVNode("div",{class:"d-flex justify-content-center w-100"},[i.createVNode("div",{class:"lookup-modal-header-tabs-container d-flex",onMousedown:E},[i.createVNode("div",{class:"active-tab",style:q.value},null),i.createVNode("div",{class:["tab-item","d-flex",{active:t.value===ae.dataList}],onClick:()=>A(ae.dataList)},[n.datalist]),i.createVNode("div",{class:["tab-item","d-flex",{active:t.value===ae.favorite}],onClick:()=>A(ae.favorite)},[n.favorite])])]),(c.showMaxButton||c.showCloseButton)&&i.createVNode("div",{class:"d-flex flex-row h-100 justify-content-end align-items-center lookup-modal-header-buttons",onMousedown:L=>L.stopPropagation()},[c.showMaxButton&&i.createVNode("span",{class:k.value,onClick:M,style:"cursor: pointer"},null),c.showCloseButton&&i.createVNode("span",{class:"f-icon modal_close ml-2",onClick:V,style:"cursor: pointer;position: relative;top: 1px;"},null)])]),i.createVNode("div",{class:"f-utils-fill",style:"position: relative;"},[i.createVNode("div",{class:"h-100 d-flex flex-column f-utils-fill w-100",style:S.value(ae.dataList)},[a.slots.default&&a.slots.default()]),i.createVNode("div",{class:"h-100 d-flex flex-column px-2 f-utils-fill w-100",style:S.value(ae.favorite)},[a.slots.fav&&a.slots.fav()])]),i.createVNode("div",{class:"modal-footer"},[i.createVNode("div",{class:"f-utils-fill align-items-center d-flex flex-row"},[b.value&&i.createVNode(Zt,{modelValue:u.value,"onUpdate:modelValue":L=>u.value=L,label:l.includechildren},null),e.showSelectedList&&i.createVNode(Yt,{popoverOffsetX:m.value,parentRef:w.value,ref:I,idField:s.idField},null),e.showCascadeControl&&t.value===ae.dataList&&i.createVNode(en,{modelValue:s.cascadeValue,"onUpdate:modelValue":L=>s.cascadeValue=L},null)]),i.createVNode("button",{id:e.id+"-btncancel",name:"cancel",type:"button",class:"btn btn-secondary",onClick:$},[o.cancel]),i.createVNode("button",{id:e.id+"-btnok",name:"accept",type:"button",class:"btn btn-primary",onClick:T},[o.ok])])])}});function De(e,a){if(e.context){if(!a&&e.context.editor){for(const n in e.context.editor)delete e.context.editor[n];return}const{editor:t}=e.context;t?Object.assign(t,a):e.context.editor=a}}function nn(e,a,t,{dictPicked:n,modelValue:o,buttonEditInstance:l,userDataService:r,useHttp:u,lookupLocales:s}){const c=i.inject(xe.F_NOTIFY_SERVICE_TOKEN,null),f=i.inject("FLoadingService"),p=i.ref(),C=i.ref("accept"),k=i.ref(),{lookupStates:b}=u,{queryState:m,lookupState:h,navigationState:d,pageInfoState:y,searchState:w,selectionState:I,lookupOptions:M}=b,{isDoubleList:V}=me(e,b),T=Object.assign({},et,M.dialog);M.dialog=T;const $={position:"top-center"},A=()=>{const F=t.value.map(N=>Te.resolveField(N,M.textField)).join(e.separator),v=t.value.map(N=>N[M.idField]).join(e.separator);o.value=F,u.idValues.value=v,a.emit("update:modelValue",F),a.emit("update:idValue",v)};function q(F){return typeof F=="object"?{shouldClose:F.closeDialog||F.canClose,message:F.message}:{shouldClose:F,message:""}}const S=async()=>{const F={items:t.value,mappingFields:M.mappingFields,options:{...M}};a.emit("update:dataMapping",F),De(e,F);const v=await n(F);return q(v)};async function P(){return A(),await S()}function E(){return C.value="cancel",!0}const L=F=>{Object.keys(F).forEach(v=>{delete F[v]})},H=F=>{F.forEach(v=>{L(v)})};function te(){document.body.classList.remove("lookup-modal-open"),f==null||f.clearAll(),H([h,d,y,w,m]),I.value=[],k.value=null}async function _(){var v;if(t.value.length===0)return c==null||c.warning({message:s.messages.mustChoosAdatarow,...$}),{shouldUpdate:!1};const F=await((v=e.beforeSelectData)==null?void 0:v.call(e,{items:t.value}));return{shouldUpdate:typeof F=="boolean"?F:(F==null?void 0:F.canSelect)??!0,message:F==null?void 0:F.message}}async function X(){const{shouldUpdate:F,message:v}=await _();if(!F)return v&&(c==null||c.warning({message:v,...$})),!1;const N=await P(),{shouldClose:W,message:Y}=N;return W?(C.value="accept",!0):(Y&&(c==null||c.warning({message:Y,...$})),!1)}function g(){const F=(T==null?void 0:T.height)||620,v=(T==null?void 0:T.width)||590,N=(T==null?void 0:T.minWidth)||300,W=(T==null?void 0:T.minHeight)||200,Y={height:F,width:v,minWidth:N,minHeight:W};return V()&&(Y.width=(T==null?void 0:T.width)||960),Y}const{width:x,height:B,minHeight:z,minWidth:J}=g(),K=!0,ee=K&&((T==null?void 0:T.resizeable)==null?!0:T==null?void 0:T.resizeable);T.rememberSize=T.rememberSize&&ee;const G={title:T==null?void 0:T.title,fitContent:!1,showHeader:!1,dragHandle:".lookup-modal-header",height:B,width:x,minWidth:J,minHeight:z,resizeable:ee,draggable:K,enableEsc:(T==null?void 0:T.enableEsc)==null?!0:T==null?void 0:T.enableEsc,closedCallback:(F,v)=>{const N={type:C.value,button:F==null?void 0:F.target};if((v==="esc"||v==="icon")&&(N.type="esc"),N.type==="accept"&&(N.items=t.value),(N.type==="cancel"||N.type==="esc")&&(e.allowFreeInput||(o.value=e.modelValue)),r&&e.enableUserData){r.saveUserData().then(()=>{te(),a.emit("dialogClosed",N)});return}te(),a.emit("dialogClosed",N)},showButtons:!1,resizeHandle:F=>{if(T.rememberSize){p.value=F;const{width:v,height:N}=F.newSize.size;!(F.isMaximized??!1)&&r.setDialogSize({width:Math.round(v),height:Math.round(N)})}},enableEnter:!0,onEnter:F=>{F.event.preventDefault(),!F.event.target.closest(".fv-lookup-search-bar")&&X().then(N=>{var W;if(N){const Y=(W=l.value)==null?void 0:W.getModal();Y&&Y.close(F.event,"enter")}})}};async function D(){var F;if(e.enableUserData&&(await r.getUserData(),(F=r==null?void 0:r.userDataState)!=null&&F.data&&T.rememberSize)){const{size:v}=r.userDataState.data;v&&Object.assign(G,v)}}async function U(F){let v=!0;const N=e.dictPicking;if(N&&typeof N=="function"){const W=await N({customData:k,options:M,idValue:u.idValues});typeof W=="boolean"&&!W&&(v=!1),typeof W=="object"&&(W.canOpen?W.data&&(k.value=W.data):(v=!1,W.message&&(c==null||c.error({message:W.message,position:"top-center"}))))}return v&&await D(),v}return{modalOptions:G,beforeOpenDialog:U,dialogSize:p,customData:k,updateModelValue:P,cancelDialog:E,submitDialog:X,destroyed:te,setModelAndIdValue:A,runDictPickedAsync:S}}function an(e){return{dictPicked:async({items:t,mappingFields:n})=>e.dictPicked&&typeof e.dictPicked=="function"?await e.dictPicked({items:t,mappingFields:n})??!0:!0}}function gt(e,a,t,n){if(!e.editable)return;const o={items:null,mappingFields:n.mappingFields,isFreeInput:!0,options:{...n}};a.emit("clearMapping",o),a.emit("update:modelValue",t),a.emit("update:idValue",""),De(e,o)}function on(e,a,t){const n=i.computed(()=>e.textChangeType==="blur"||e.textChangeType==="any"),o=i.computed(()=>e.textChangeType==="enter"||e.textChangeType==="any"),{beforeOpenDialog:l,updateModelValue:r,selectedItems:u,openDialog:s,lookupOptions:c,useHttpComposition:f,isPopuped:p,usePopupComposition:C}=t,{updateSearchFieldTitle:k}=f,{lookupState:b,queryState:m,searchValueChanged:h}=f.lookupStates,d=i.ref(!1);function y(A){return se.isEmpty(A)&&h.value&&!p.value?(d.value=!0,h.value=!1,!1):h.value}function w(A){var S;if(!A||A.length!==1)return;const[q]=A;return(S=q.children)!=null&&S.length?w(q.children):q.data}function I(A,q){var P;if(!q||q.length!==1)return!1;const[S]=q;return A?(P=S.children)!=null&&P.length?w(S.children):S.data:S}async function M(A){const q={search:{field:"*",value:A,type:e.openType==="Modal"?"equal":"like"},action:"search"};h.value&&(document.body.classList.add("lookup-modal-open"),f.loadData(q,async S=>{var P;if(S.searchFields&&S.columns){const E=k(S.searchFields,S.columns);b.searchFields=E}if(h.value=!1,e.openType==="Modal"){const E=I(((P=S.displayType)==null?void 0:P.toLowerCase())==="treelist",S.items);if(E){u.value=[E],r(),m.value="",document.body.classList.remove("lookup-modal-open");return}s()}else b.action=A?"search":"list",b.items=S.items,b.total=S.total,S.pageInfo&&(b.pageInfo={...S.pageInfo})}))}function V(A,q){var P;let S=(P=A.target)==null?void 0:P.value;if(S!==""&&(S=S.trim()),y(S)){if(e.allowFreeInput)if(e.openType==="Modal"){gt(e,a,S,c);return}else{const{popupState:E}=C;E.canClose=!0,u.value=[],gt(e,a,S,c)}if(e.openType!=="Modal"&&!p.value){s(),h.value=!1;return}c.uri?M(S):a.emit("textChanged",{value:S,type:q?"blur":"enter"})}}function T(A){n.value&&V(A,!0)}function $(A){A.key==="Enter"&&o.value&&V(A,!1)}return{changeOnBlur:n,changeOnEnter:o,onInputBlur:T,onEnterKeyDown:$,isClear:d,queryDataBySearchKeys:M}}const ln={height:{type:Number,default:500},width:{type:Number,default:500},useHttpComposition:{type:Object,default:{}},selectionsManager:{type:Object,default:{}},showSelectedList:{type:Boolean,default:!1},enableToSelect:{type:Boolean,default:!0},uri:{type:String,default:""},hidePopup:{type:Function,default:null},fitColumns:{type:Boolean,default:!0},openType:{type:String,default:"Popup"},pagination:{type:Object,default:{enable:!1,showLimits:!0,sizeLimits:[10,20,30,50,100],size:20,index:1,total:0,mode:"server",showGoto:!1}},displayType:{type:String,default:re.List},loadTreeDataType:{type:String,default:fe.all},expandLevel:{type:Number,default:0},enableCascade:{type:Boolean,default:!1},showCascadeControl:{type:Boolean,default:!1},cascadeItems:{type:Object,default:{both:!0,up:!0,down:!0,disable:!0}},cascadeStatus:{type:String,default:"both"},enableSearchBar:{type:Boolean,default:!0},searchAnyField:{type:Boolean,default:!0},locales:{type:Object,default:{}}},sn=i.defineComponent({name:"FLookupPopupContainer",props:ln,emits:["selectItemsChanged","hiddenPopup"],setup(e,a){const t=e.locales,{lookupStates:n,getIdQueryParams:o}=e.useHttpComposition,{lookupState:l,navigationState:r,queryState:u,lookupOptions:s}=n,{isTreeList:c}=me(e,n);We(e,!1,n,t);const f=i.computed(()=>({width:`${e.width}px`,height:`${e.height}px`,padding:"5px"})),{renderDataGrid:p}=ut(e,a,{}),{renderTreeGrid:C}=mt(e,a),k=i.computed(()=>c()?C:p);function b(){const m={};e.enableToSelect&&(m.selectedInfo=o(),u.value!=null&&(m.search={field:"*",value:u.value,type:"like"},m.action="search"));const h=e.useHttpComposition;h==null||h.loadData(m,d=>{i.nextTick(()=>{l.action=m.action,d.navigation&&(Object.keys(d.navigation).forEach(y=>{var w;r[y]=(w=d.navigation)==null?void 0:w[y]}),d.navigation.treeInfo&&(h==null||h.setTreeInfo(d.navigation.treeInfo,!0)),delete d.navigation),d.treeInfo&&(h==null||h.setTreeInfo(d.treeInfo)),Object.keys(d).forEach(y=>{l[y]=d[y]})})})}return i.onMounted(()=>{b()}),i.onUnmounted(()=>{a.emit("hiddenPopup")}),()=>i.createVNode("div",{style:f.value,class:"d-flex flex-column"},[k.value()])}});function rn(e,a,t,{useHttpComposition:n,selectionsManager:o,userDataService:l,updateModelValue:r,lookupLocales:u,destroyed:s,setModelAndIdValue:c,runDictPickedAsync:f,popupState:p}){i.provide(Me,l),i.provide(pe,n),i.provide(Ce,o);const{selectionState:C,queryState:k,lookupOptions:b,searchState:m}=n.lookupStates,h=pt(b,!1);i.provide(ke,h);const d=i.inject(xe.F_NOTIFY_SERVICE_TOKEN,null),y=i.computed(()=>{var P;const S=(P=t.value)==null?void 0:P.popoverRef;return S?S.shown:!1});async function w(){if(!p.canClose)return!1;if(!C.value.length)return!0;let S=null;b.multiSelect?S=await f():S=await r();const{shouldClose:P,message:E}=S;return P?!0:(E&&(d==null||d.warning({message:E,position:"top-center"})),p.canClose=!1,!1)}async function I(){var S;(S=t.value)==null||S.hidePopup()}e.openType==="Popup"&&i.watch(()=>C.value,S=>{y.value&&e.multiSelect&&c()});const M=()=>{const{width:S,height:P}=e.dialog;return{width:S||460,height:P||380}},V=i.computed(()=>{var S;return(S=t.value)==null?void 0:S.popoverRef});async function T(){y.value&&I(),k.value="",s(),a.emit("popupClosed"),p.canClose=!0,document.body.classList.remove("lookup-modal-open")}function $(){var S;y.value||(S=t.value)==null||S.showPopup()}function A(){p.canClose=!0,b.multiSelect||I()}function q(){const{width:S,height:P}=M();return i.createVNode(sn,i.mergeProps({width:S,height:P,useHttpComposition:n,locales:u,selectionsManager:o,onHiddenPopup:T,onSelectionsChanged:A},e),null)}return{popoverInstance:V,isPopuped:y,renderPopup:q,showPopup:$,hidePopup:I,onBeforeClosePopup:w,popupState:p}}const he=i.defineComponent({name:"FLookup",props:Fe,emits:["update:modelValue","update:idValue","search","navSelectionsChanged","pageIndexChanged","pageSizeChanged","resize","dialogClosed","textChanged","clear","update:dataMapping","clearMapping"],setup(e,a){const t='<i id="'+e.id+'-icon_lookup" class="f-icon f-icon-lookup"></i>',n='<i id="'+e.id+'-icon_dropdown" class="f-icon f-icon-arrow-chevron-down"></i>',o=i.ref(),l=i.ref(e.modelValue),r=i.ref("");Ie.value=e.customData;const u=i.computed(()=>e.openType==="Popup"?"Popup":"Modal"),s=i.computed(()=>u.value==="Popup"?n:t),c=_t(e),f=Ut(e),{lookupOptions:p,selectionState:C,searchValueChanged:k,queryState:b,popupState:m}=f.lookupStates,h=zt(e,f),d=i.computed(()=>e.showSelections&&p.multiSelect),y=i.computed(()=>e.editable&&(u.value==="Modal"||!p.multiSelect)),w=i.computed(()=>e.showIncludeChildNodes&&e.showNavigation&&!p.navTreeToList),I=ct(e,f.lookupStates),{dictPicked:M}=an(e),{modalOptions:V,beforeOpenDialog:T,dialogSize:$,customData:A,updateModelValue:q,cancelDialog:S,submitDialog:P,destroyed:E,setModelAndIdValue:L,runDictPickedAsync:H}=nn(e,a,C,{dictPicked:M,modelValue:l,buttonEditInstance:o,userDataService:h,useHttp:f,lookupLocales:c}),te=rn(e,a,o,{useHttpComposition:f,selectionsManager:I,userDataService:h,updateModelValue:q,lookupLocales:c,destroyed:E,setModelAndIdValue:L,runDictPickedAsync:H,popupState:m}),{renderPopup:_,showPopup:X,isPopuped:g,hidePopup:x,onBeforeClosePopup:B}=te;function z(){if(e.openType==="Popup"){X();return}o.value&&!o.value.getModal()&&o.value.openDialog()}const{onInputBlur:J,onEnterKeyDown:K,isClear:ee,queryDataBySearchKeys:G}=on(e,a,{beforeOpenDialog:T,updateModelValue:q,selectedItems:C,openDialog:z,modelValue:l,useHttpComposition:f,lookupOptions:p,usePopupComposition:te,isPopuped:g}),D=i.reactive(V),U=i.inject(Tt.F_MODAL_SERVICE_TOKEN);i.watch(()=>A.value,O=>{Ie.value=O}),i.watch(()=>e.modelValue,O=>{l.value=O});function F(O){f.idValues.value=O,O||(C.value=[]),a.emit("update:idValue",O)}i.watch(()=>e.idValue,O=>{F(O)}),i.onMounted(()=>{}),i.onUnmounted(()=>{De(e)}),i.watch(()=>$.value,O=>{a.emit("resize",O)}),u.value==="Popup"&&i.watch([()=>e.readonly,()=>e.disabled],([O,le])=>{var Pe;(O||le)&&((Pe=o.value)==null||Pe.forceClosePopup())});async function v(){a.emit("update:modelValue",""),F(""),u.value==="Popup"&&g.value&&(m.canClose=!0,ee.value||(k.value=!0,G("")));const O={items:null,mappingFields:p.mappingFields,options:{...p}};a.emit("clear",O),De(e,O)}i.watch(()=>ee.value,O=>{O&&(v(),ee.value=!1)});function N(O){a.emit("search",O)}function W(O){a.emit("navSelectionsChanged",O)}function Y(O){a.emit("pageIndexChanged",O)}function ie(O){a.emit("pageSizeChanged",O)}async function ge(O){const le=U==null?void 0:U.getCurrentModal();le&&le.updateModalOptions(O),O.title&&(r.value=O.title)}function R(O){const le=U==null?void 0:U.getCurrentModal();U&&le.close(O)}function Q(O){const le=U==null?void 0:U.getCurrentModal();le&&le.maxDialog(O)}const oe=i.computed(()=>{const O=U==null?void 0:U.getCurrentModal();return O==null?void 0:O.isMaximized}),ce=i.computed(()=>p.multiSelect&&p.showCascadeControl&&p.enableCascade&&re.Tree===p.displayType.toUpperCase()&&!p.treeToList),de=i.computed(()=>C.value&&C.value.length?C.value.map(O=>O[p.idField]):[]);function Ge(O){for(const le in p)O[le]!==void 0&&(p[le]=O[le])}const He=se.debounce(O=>{J(O)},200);function bt(O){var Pe;let le=(Pe=O.target)==null?void 0:Pe.value;le!==""&&(le=le.trim()),k.value=O.target._value!==le,e.allowFreeInput&&F(""),k.value&&(b.value=le),u.value==="Popup"&&k.value&&He(O)}function gn(){k.value=!1}async function vt(O){await P()&&(U==null||U.close())}function yn(O){e.togglePopupOnClickInput&&(g.value?x():X())}function bn(){document.body.classList.add("lookup-modal-open"),e.editable&&setTimeout(()=>{var O;(O=o.value.getTextbox())==null||O.focus()},100)}return a.expose({openDialog:z,updateIdValue:F,mappingFields:p.mappingFields,idField:p.idField,setProps:Ge,clear:v}),()=>i.createVNode(Qe.FButtonEdit,{ref:o,id:e.id,modelValue:l.value,"onUpdate:modelValue":O=>l.value=O,disable:e.disabled,readonly:e.readonly,editable:y.value,inputType:"text",enableClear:e.enableClear,buttonContent:s.value,buttonBehavior:u.value,modalOptions:D,onClear:v,beforeOpen:T,onBlur:J,onKeydown:K,placeholder:c.placeholder,keepWidthWithReference:!1,popupOnClick:!e.editable&&u.value==="Popup",onInput:bt,enableTitle:e.enableTitle,placement:"auto",onBeforeClearValue:gn,customClass:"f-cmp-lookup",onClick:yn,onShown:bn,beforeClosePopup:B,popupClass:"lookup-popup-panel"},{default:()=>[u.value==="Modal"&&i.createVNode(tn,{title:r.value||"",enableFavorite:e.enableFavorite,onCloseModal:R,onMaximize:O=>Q(O),useHttpComposition:f,userDataService:h,useDialog:{cancelDialog:S,submitDialog:P},showSelectedList:d.value,selectionsManager:I,showIncludeChildNodes:{show:w.value,value:e.includeChildNodesValue},showCascadeControl:ce.value,isMaximized:oe.value,locales:c,id:e.id},{default:()=>i.createVNode(Ht,i.mergeProps(e,{onSearch:N,onNavSelectionsChanged:W,onPageIndexChanged:Y,onPageSizeChanged:ie,onChangeDialogOptions:ge,onDblClickRow:vt}),null),fav:()=>e.enableFavorite&&i.createVNode(Qt,{idField:p.idField,displayType:p.displayType,selectedIds:de.value,multiSelect:p.multiSelect,showSelections:d.value,treeToList:p.treeToList,onDblClickRow:vt},null)}),u.value==="Popup"&&_()]})}}),yt={button:{type:"button",name:"按钮"},"response-toolbar":{type:"response-toolbar",name:"工具栏"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮"},"content-container":{type:"content-container",name:"容器"},"input-group":{type:"input-group",name:"文本"},textarea:{type:"textarea",name:"多行文本"},lookup:{type:"lookup",name:"帮助"},"number-spinner":{type:"number-spinner",name:"数值"},"date-picker":{type:"date-picker",name:"日期"},switch:{type:"switch",name:"开关"},"radio-group":{type:"radio-group",name:"单选组"},"check-box":{type:"check-box",name:"复选框"},"check-group":{type:"check-group",name:"复选框组"},"combo-list":{type:"combo-list",name:"下拉列表"},"response-form":{type:"response-form",name:"卡片面板"},"response-layout":{type:"response-layout",name:"布局容器",icon:"response-layout-3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"response-layout-1"},"tree-grid":{type:"tree-grid",name:"树表格"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块"},component:{type:"component",name:"组件"},tabs:{type:"tabs",name:"标签页"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮"},"html-template":{type:"html-template",name:"模板容器"},"time-picker":{type:"time-picker",name:"时间选择"},section:{type:"section",name:"分组面板"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传"},"page-header":{type:"page-header",name:"页头"},"page-footer":{type:"page-footer",name:"页脚"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏"},fieldset:{type:"fieldset",name:"分组"},"query-solution":{type:"query-solution",name:"筛选方案"},drawer:{type:"drawer",name:"抽屉"},"external-container":{type:"external-container",name:"外部容器",icon:"content-container"},"list-nav":{type:"list-nav",name:"列表导航"},"list-view":{type:"list-view",name:"列表"},"filter-bar":{type:"filter-bar",name:"筛选条"},"language-textbox":{type:"language-textbox",name:"多语输入框"}},cn=i.ref(0);function dn(){cn.value++}const un=i.ref(0);function fn(e){const{formSchemaUtils:a,formStateMachineUtils:t}=e;function n(s,c=""){return{path:c+s.code,field:s.id,fullPath:s.code}}function o(s,c=""){return a.getViewModelById(s).states.map(p=>n(p,c))}function l(s){const c=a.getRootViewModelId(),f=o(s);if(s===c)return f;const p=o(c,"root-component.");return[...f,...p]}function r(s){return s.binding&&s.binding.path||s.id||""}function u(){return t&&t.getRenderStates()||[]}return{getVariables:l,getControlName:r,getStateMachines:u}}class pn{constructor(a){ne(this,"sessionVariables",[{key:"CurrentSysOrgName",name:"当前组织Name",description:"当前组织Name"},{key:"CurrentSysOrgId",name:"当前组织Id",description:"当前组织Id"},{key:"CurrentUserName",name:"当前用户Name",description:"当前用户Name"},{key:"CurrentUserCode",name:"当前用户Code",description:"当前用户Code"},{key:"CurrentUserId",name:"当前用户Id",description:"当前用户Id"},{key:"CurrentLanguage",name:"当前语言编号",description:"当前登录的语言编号,例如简体中文返回'zh-CHS',英文返回'en',繁体中文'zh-CHT'"}]);ne(this,"expressionNames",{compute:"计算表达式",dependency:"依赖表达式",validate:"验证表达式",dataPicking:"帮助前表达式",visible:"可见表达式",readonly:"只读表达式",required:"必填表达式"});ne(this,"getExpressionConverter",(a,t)=>({convertFrom:(n,o,l,r)=>{const u=l.getExpressionRuleValue(a,t||o);return u&&u.value||""},convertTo:(n,o,l,r,u)=>{var s;if(o==="dataPicking"&&(l!=null&&l.target)){const c=`${l.target}_dataPicking`;((s=l.rules)==null?void 0:s.some(p=>p.id===c&&p.value))?n.dictPickingExpressionId=c:delete n.dictPickingExpressionId}r.updateExpression(l)}}));this.formSchemaService=a}getExpressionRule(a,t){const n=this.formSchemaService.getExpressions();if(!n)return"";const o=n.find(r=>r.target===a);if(!o)return"";const l=o.rules.find(r=>r.type===t);return l||""}getContextFormVariables(){const{module:a}=this.formSchemaService.getFormSchema();if(!a.viewmodels||a.viewmodels.length===0)return[];const t=this.formSchemaService.getRootViewModelId(),n=this.formSchemaService.getViewModelById(t);if(!n||!n.states||n.states.length===0)return[];const o=[];return n.states.forEach(l=>{o.push({key:l.code,name:l.name,description:l.name,category:l.category})}),o}createTreeNode(a,t,n="label"){return{id:a.id,name:a.name,bindingPath:a[n],parents:t,type:"field"}}buildEntityFieldsTreeData(a=null,t){const n=[];return a==null||a.forEach(o=>{var u;const l=this.createTreeNode(o,t);let r=[];(u=o.type)!=null&&u.fields&&(r=this.buildEntityFieldsTreeData(o.type.fields,[...t,o.label])),n.push({data:l,children:r,expanded:!0})}),n}buildChildEntityTreeData(a=null,t){const n=[];return a==null||a.forEach(o=>{var s,c;const l=this.createTreeNode(o,t);l.type="entity";const r=this.buildEntityFieldsTreeData((s=o.type)==null?void 0:s.fields,[...t,o.label]),u=this.buildChildEntityTreeData((c=o.type)==null?void 0:c.entities,[...t,o.label]);u!=null&&u.length&&(r==null||r.push(...u)),n.push({data:l,children:r||[],expanded:!0})}),n}getEntitiesTreeData(){const a=this.formSchemaService.getSchemaEntities();if(!(a!=null&&a.length))return[];const t=a[0];if(!(t!=null&&t.type))return[];const n=this.buildEntityFieldsTreeData(t.type.fields,[t.code]),o=this.buildChildEntityTreeData(t.type.entities,[t.code]);return o!=null&&o.length&&(n==null||n.push(...o)),{entityCode:t.code,fields:[{data:this.createTreeNode(t,[],"code"),children:n||[]}]}}getEntitiesAndVariables(){return{entities:this.getEntitiesTreeData(),variables:{session:{name:"系统变量",items:this.sessionVariables,visible:!1},forms:{name:"表单变量",items:this.getContextFormVariables(),visible:!0}}}}onBeforeOpenExpression(a,t,n){const o=n==="Field"?a.binding.field:a.id,l=this.getExpressionRule(o,t),r=this.getEntitiesAndVariables(),u={message:["validate","required","dataPicking"].includes(t)&&l?l.message:"",...r};return l.messageType!=null&&(u.messageType=l.messageType),u}buildRule(a,t,n,o){const{expression:l,message:r,messageType:u}=t,s={id:`${a}_${n}`,type:n,value:l};return(n==="validate"||n==="dataPicking"||n==="required")&&(s.message=r),n==="dataPicking"&&(s.messageType=u),n==="validate"&&o&&(s.elementId=o),s}getExpressionData(){const{expressions:a}=this.formSchemaService.getFormSchema().module;return a||[]}updateExpression(a,t,n,o){const l=t==="Field"?a.binding.field:a.id,r=this.buildRule(l,n,o,a.type==="form-group"?a.id:"");let s=this.getExpressionData().find(f=>f.targetType===t&&f.target===l);const c=f=>f.value.trim()==="";if(s){const f=s.rules.find(p=>p.id===r.id);if(f)c(r)?s.rules=s.rules.filter(p=>p.id!==r.id):(Object.assign(f,r),o==="validate"&&a.type==="form-group"&&(f.elementId=a.id));else{if(c(r))return null;s.rules=s.rules||[],s.rules.push(r)}}else{if(c(r))return null;s={target:`${l}`,rules:[r],targetType:t}}return s}getExpressionEditorOptions(a,t,n,o){return n.reduce((l,r)=>{var s,c;const u=t==="Field"?(s=a==null?void 0:a.binding)==null?void 0:s.field:a.id;return l[r]={hide:t==="Field"?!!((c=a==null?void 0:a.binding)!=null&&c.field):!1,description:"",title:this.expressionNames[r],type:"string",$converter:this.getExpressionConverter(u),refreshPanelAfterChanged:!0,editor:{type:"expression-editor",singleExpand:!1,dialogTitle:`${this.expressionNames[r]}编辑器`,showMessage:r==="validate"||r==="dataPicking"||r==="required",showMessageType:r==="dataPicking",beforeOpen:()=>this.onBeforeOpenExpression(a,r,t),onSubmitModal:f=>{const p=this.updateExpression(a,t,f,r);if(o){const C=this.buildRule(u,f,r);o(C)}return p}}},l},{})}getExpressionInfo(a,t,n){const o=t==="Field"?a.binding.field:a.id,l=this.getExpressionRule(o,n),r={value:l&&l.value,targetId:o,targetType:t,expressionType:n};return l&&l.message&&(r.message=l.message),r}getExpressionConfig(a,t,n=["compute","dependency","validate"],o){return{description:"表达式",title:"表达式",hide:!a.binding,properties:{...this.getExpressionEditorOptions(a,t,n,o)}}}getExpressionOptions(a,t,n){const o=this.getExpressionInfo(a,t,n);return{dialogTitle:`${this.expressionNames[n]}编辑器`,singleExpand:!1,showMessage:n==="required",beforeOpen:()=>this.onBeforeOpenExpression(a,n,t),expressionInfo:o}}}class hn{constructor(a,t){ne(this,"componentId");ne(this,"viewModelId");ne(this,"eventsEditorUtils");ne(this,"formSchemaUtils");ne(this,"formMetadataConverter");ne(this,"designViewModelUtils");ne(this,"designViewModelField");ne(this,"controlCreatorUtils");ne(this,"designerHostService");ne(this,"designerContext");ne(this,"schemaService",null);ne(this,"metadataService",null);ne(this,"propertyConfig",{type:"object",categories:{}});var n;this.componentId=a,this.designerHostService=t,this.eventsEditorUtils=t.eventsEditorUtils,this.formSchemaUtils=t.formSchemaUtils,this.formMetadataConverter=t.formMetadataConverter,this.viewModelId=((n=this.formSchemaUtils)==null?void 0:n.getViewModelIdByComponentId(a))||"",this.designViewModelUtils=t.designViewModelUtils,this.controlCreatorUtils=t.controlCreatorUtils,this.metadataService=t.metadataService,this.schemaService=t.schemaService,this.designerContext=t.designerContext}getFormDesignerInstance(){var a,t;return(t=(a=this.designerContext)==null?void 0:a.instances)==null?void 0:t.formDesigner.value}getTableInfo(){var a;return(a=this.schemaService)==null?void 0:a.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(a){var n;const t=a.binding&&a.binding.type==="Form"&&a.binding.field;if(t){if(!this.designViewModelField){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=o.fields.find(l=>l.id===t)}a.updateOn=(n=this.designViewModelField)==null?void 0:n.updateOn}}getBasicPropConfig(a){return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"combo-list",textField:"name",valueField:"value",idField:"value",editable:!1,data:[{value:a.type,name:yt[a.type]&&yt[a.type].name}]}}}}}getAppearanceConfig(a=null,t={},n){const o={title:"外观",description:"Appearance"},l={class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter",parentPropertyID:"appearance"}};for(const r in t)l[r]=Object.assign(l[r]||{},t[r]);return{...o,properties:{...l},setPropertyRelates(r,u){if(r){switch(r&&r.propertyID){case"class":case"style":{un.value++;break}}n&&n(r,a,u)}}}}getPropertyEditorParams(a,t=[],n="visible",o={},l={},r=""){const{getVariables:u,getControlName:s,getStateMachines:c}=fn(this.designerHostService),f=this.getRealTargetType(a),p=t&&t.length>0?t:["Const","Variable","StateMachine","Expression"],C={type:"property-editor",propertyTypes:p};return p.map(k=>{switch(k){case"Const":Object.assign(C,{constType:"enum",constEnums:[{id:!0,name:"是"},{id:!1,name:"否"}]},o);break;case"Expression":C.expressionConfig=this.getExpressionOptions(a,f,r||n);break;case"StateMachine":C.stateMachines=c();break;case"Variable":Object.assign(C,{controlName:s(a),newVariablePrefix:"is",newVariableType:"Boolean",variables:u(this.viewModelId),onBeforeOpenVariables:b=>{b.value=u(this.viewModelId)}},l);break}}),C}getVisibleProperty(a,t=""){var l;let n=["Const","Variable","StateMachine","Expression"];return t==="gridFieldEditor"?n=["Const","Expression"]:t==="form-group"&&!((l=a.binding)!=null&&l.field)&&(n=["Const","Variable","StateMachine"]),{visible:{title:"是否可见",type:"boolean",description:"运行时组件是否可见",editor:this.getPropertyEditorParams(a,n,"visible")}}}getBehaviorConfig(a,t="",n={},o){const l={title:"行为",description:""},r=this.getVisibleProperty(a,t);for(const s in n)r[s]=Object.assign(r[s]||{},n[s]);const u=this;return{...l,properties:{...r},setPropertyRelates(s,c){if(s){switch(s.propertyID){case"disabled":case"readonly":case"visible":u.afterMutilEditorChanged(a,s);break}o&&o(s,c)}}}}afterMutilEditorChanged(a,t){this.addNewVariableToViewModel(t,this.viewModelId),this.updateExpressionValue(t),this.clearExpression(t,a)}updateElementByParentContainer(a,t){const n=t&&t.parent&&t.parent.schema;if(!n)return;const o=n.contents.findIndex(r=>r.id===a),l=se.cloneDeep(n.contents[o]);n.contents.splice(o,1),n.contents.splice(o,0,l),dn()}addNewVariableToViewModel(a,t){const n=a.propertyValue;if(!(n&&typeof n=="object")||!(n.type==="Variable"&&n.isNewVariable))return;const r={id:n.field,category:"locale",code:n.fullPath,name:n.fullPath,type:n.newVariableType||"String"};delete n.newVariableType,delete n.isNewVariable,this.formSchemaUtils.getVariableByCode(r.code)||this.formSchemaUtils.getViewModelById(t).states.push(r)}updateExpressionValue(a){const t=a.propertyValue;if(!((t&&t.type)==="Expression"&&t.expressionInfo))return;const{expressionId:l,expressionInfo:r}=t,{targetId:u,targetType:s,expressionType:c,value:f,message:p}=r,C=this.formSchemaUtils.getModule();C.expressions=C.expressions||[];const{expressions:k}=C;let b=k.find(h=>h.target===u);b||(b={target:u,rules:[],targetType:s},k.push(b));const m=b.rules.find(h=>h.type===c);if(m)m.value=f,m.message=p;else{const h={id:l,type:c,value:f,message:p};b.rules.push(h)}delete t.expressionInfo}clearExpression(a,t){const n=a.propertyValue;if(n&&n.type==="Expression")return;const l=a.propertyID,r=this.formSchemaUtils.getExpressions(),u=t.binding?t.binding.field:t.id,s=r.find(c=>c.target===u);!s||!s.rules||(s.rules=s.rules.filter(c=>c.type!==l))}getExpressionOptions(a,t,n){return new pn(this.formSchemaUtils).getExpressionOptions(a,t,n)}getRealTargetType(a){return["response-toolbar-item","tab-toolbar-item","section-toolbar-item"].indexOf(a.type)>-1?"Button":a.binding&&a.binding.field?"Field":"Container"}createBaseEventProperty(a){const t={};return t[this.viewModelId]={type:"events-editor",editor:{initialData:a,viewSourceHandle:n=>{var o;((o=n.controller)==null?void 0:o.label.indexOf(this.formSchemaUtils.getModule().code))>-1&&this.eventsEditorUtils.jumpToMethod(n)}}},t}}class mn extends hn{constructor(t,n){super(t,n);ne(this,"propertyConfigFilters",{lookup:["dataSource","filterConditions","displayType","idField","multiSelect","showSelections","enableSearchBar","searchAnyField","enableFavorite","enableUserData"],pager:["showLimits","sizeLimits","size"],treeConfig:["cascadeStatus","enableCascade","enableFullTree","expandLevel","loadTreeDataType","navTreeToList","onlySelectLeaf","showCascadeControl","treeToList"],dialog:["title","width","height","showNavigation","navigatorWidth","resizeable","rememberSize","enableEsc","showMaxButton","showCloseButton"]});ne(this,"events",Bt)}getPropertyConfig(t){const n=new lt("root-component",this.designerHostService),o=n.getLookupConfig(t),l=n.getPageConfig(t.editor),r=n.getTreePropConfig(t.editor),u=n.getDialogPropertyConfig(t),s=this.getEventPropConfig(t),c={type:"object",categories:{lookup:o,treeConfig:r,pager:l,dialog:u}};return this.filterLookupPropertyConfig(c),c.categories.eventsEditor=s,c}filterLookupPropertyConfig(t){Object.keys(t.categories).forEach(n=>{const o=this.propertyConfigFilters[n],l=t.categories[n];Object.keys(l.properties).forEach(r=>{o.includes(r)||delete l.properties[r]})})}getEventPropConfig(t){const n=this,o=n.eventsEditorUtils.formProperties(t,n.viewModelId,this.events);return{title:"事件",hideTitle:!0,properties:n.createBaseEventProperty(o),refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(r,u){const s=u.editor,c=r.propertyValue;delete s[n.viewModelId],c&&n.eventsEditorUtils.saveRelatedParameters(s,n.viewModelId,c.events,c),n.events.forEach(f=>{u[f.label]=s[f.label]})}}}}he.install=e=>{e.component(he.name,he)},he.register=(e,a,t,n)=>{e.lookup=he,a.lookup=ze,n.lookup={callbackResolver:tt}},he.registerDesigner=(e,a,t)=>{e.lookup=jt,a.lookup=ze},j.CascadeEnum=je,j.Compare=Se,j.DEFAULT_LOOKUP_DIALOG_OPTIONS=et,j.DEFAULT_PAGINATION_OPTIONS=Ue,j.DefaultDialogTitle=Re,j.ExpressValueType=Ze,j.ExternalLookupPropertyConfig=mn,j.FLookup=he,j.F_LOOKUP_HTTP_SERVICE_TOKEN=Ye,j.FilterRelation=we,j.LOOKUP_ACTIVE_TAB=be,j.LOOKUP_USER_DATA_ID=Pt,j.LoadTreeDataType=fe,j.LookupDisplayType=re,j.LookupSchemaRepositoryToken=nt,j.LookupTabs=ae,j.callbackResolver=tt,j.cascadeItems=Ve,j.default=he,j.getLookupDialogCommonProperties=it,j.getLookupEditorCommonProperties=at,j.getLookupPaginationProperties=ot,j.lookupDataSourceConverter=_e,j.lookupProps=Fe,j.propsResolver=ze,Object.defineProperties(j,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});