@farris/ui-vue 1.2.8 → 1.2.9

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 (215) hide show
  1. package/components/accordion/index.esm.js +129 -129
  2. package/components/accordion/index.umd.cjs +1 -0
  3. package/components/avatar/index.esm.js +166 -157
  4. package/components/avatar/index.umd.cjs +1 -0
  5. package/components/border-editor/index.umd.cjs +1 -0
  6. package/components/button/index.umd.cjs +1 -0
  7. package/components/button-edit/index.esm.js +343 -325
  8. package/components/button-edit/index.umd.cjs +1 -0
  9. package/components/button-group/index.umd.cjs +1 -0
  10. package/components/calculator/index.umd.cjs +1 -0
  11. package/components/calendar/index.esm.js +338 -338
  12. package/components/calendar/index.umd.cjs +1 -0
  13. package/components/capsule/index.esm.js +182 -182
  14. package/components/capsule/index.umd.cjs +1 -0
  15. package/components/checkbox/index.esm.js +326 -317
  16. package/components/checkbox/index.umd.cjs +1 -0
  17. package/components/color-picker/index.esm.js +118 -118
  18. package/components/color-picker/index.umd.cjs +3 -0
  19. package/components/combo-list/index.esm.js +338 -325
  20. package/components/combo-list/index.umd.cjs +1 -0
  21. package/components/combo-tree/index.esm.js +62 -62
  22. package/components/combo-tree/index.umd.cjs +1 -0
  23. package/components/common/index.umd.cjs +1 -0
  24. package/components/component/index.esm.js +382 -270
  25. package/components/component/index.umd.cjs +1 -0
  26. package/components/condition/index.esm.js +1018 -895
  27. package/components/condition/index.umd.cjs +1 -0
  28. package/components/content-container/index.esm.js +285 -212
  29. package/components/content-container/index.umd.cjs +1 -0
  30. package/components/data-grid/index.css +1 -1
  31. package/components/data-grid/index.esm.js +4761 -4319
  32. package/components/data-grid/index.umd.cjs +1 -0
  33. package/components/data-view/index.esm.js +2901 -2664
  34. package/components/data-view/index.umd.cjs +1 -0
  35. package/components/date-picker/index.esm.js +1502 -1488
  36. package/components/date-picker/index.umd.cjs +1 -0
  37. package/components/designer-canvas/index.css +1 -1
  38. package/components/designer-canvas/index.esm.js +938 -928
  39. package/components/designer-canvas/index.umd.cjs +1 -0
  40. package/components/designer-outline/index.css +1 -1
  41. package/components/designer-outline/index.esm.js +27 -27
  42. package/components/designer-outline/index.umd.cjs +1 -0
  43. package/components/designer-toolbox/index.esm.js +36 -12
  44. package/components/designer-toolbox/index.umd.cjs +1 -0
  45. package/components/discussion-editor/index.umd.cjs +3 -0
  46. package/components/discussion-list/index.umd.cjs +1 -0
  47. package/components/drawer/index.umd.cjs +1 -0
  48. package/components/dropdown/index.esm.js +241 -241
  49. package/components/dropdown/index.umd.cjs +2 -0
  50. package/components/dynamic-form/index.esm.js +1074 -885
  51. package/components/dynamic-form/index.umd.cjs +1 -0
  52. package/components/dynamic-resolver/index.esm.js +99 -94
  53. package/components/dynamic-resolver/index.umd.cjs +1 -0
  54. package/components/dynamic-view/index.umd.cjs +1 -0
  55. package/components/enum-editor/index.umd.cjs +1 -0
  56. package/components/events-editor/index.esm.js +577 -522
  57. package/components/events-editor/index.umd.cjs +1 -0
  58. package/components/expression-editor/index.esm.js +70 -70
  59. package/components/expression-editor/index.umd.cjs +1 -0
  60. package/components/external-container/index.css +1 -1
  61. package/components/external-container/index.esm.js +2938 -2619
  62. package/components/external-container/index.umd.cjs +1 -0
  63. package/components/field-selector/index.css +1 -1
  64. package/components/field-selector/index.esm.js +4766 -4325
  65. package/components/field-selector/index.umd.cjs +1 -0
  66. package/components/filter-bar/index.css +1 -1
  67. package/components/filter-bar/index.esm.js +1231 -1215
  68. package/components/filter-bar/index.umd.cjs +1 -0
  69. package/components/flow-canvas/index.css +1 -1
  70. package/components/flow-canvas/index.esm.js +1062 -1052
  71. package/components/flow-canvas/index.umd.cjs +1 -0
  72. package/components/image-cropper/index.esm.js +373 -373
  73. package/components/image-cropper/index.umd.cjs +1 -0
  74. package/components/input-group/index.esm.js +398 -394
  75. package/components/input-group/index.umd.cjs +1 -0
  76. package/components/layout/index.esm.js +268 -268
  77. package/components/layout/index.umd.cjs +1 -0
  78. package/components/list-nav/index.esm.js +234 -161
  79. package/components/list-nav/index.umd.cjs +1 -0
  80. package/components/list-view/index.css +1 -1
  81. package/components/list-view/index.esm.js +2288 -2048
  82. package/components/list-view/index.umd.cjs +1 -0
  83. package/components/loading/index.umd.cjs +8 -0
  84. package/components/locale/index.umd.cjs +1 -0
  85. package/components/lookup/index.css +1 -1
  86. package/components/lookup/index.esm.js +5776 -5305
  87. package/components/lookup/index.umd.cjs +1 -0
  88. package/components/mapping-editor/index.css +1 -1
  89. package/components/mapping-editor/index.esm.js +5496 -5036
  90. package/components/mapping-editor/index.umd.cjs +1 -0
  91. package/components/message-box/index.umd.cjs +1 -0
  92. package/components/modal/index.umd.cjs +1 -0
  93. package/components/nav/index.esm.js +383 -322
  94. package/components/nav/index.umd.cjs +3 -0
  95. package/components/notify/index.umd.cjs +1 -0
  96. package/components/number-range/index.esm.js +273 -269
  97. package/components/number-range/index.umd.cjs +1 -0
  98. package/components/number-spinner/index.esm.js +292 -283
  99. package/components/number-spinner/index.umd.cjs +1 -0
  100. package/components/order/index.css +1 -1
  101. package/components/order/index.esm.js +1008 -925
  102. package/components/order/index.umd.cjs +1 -0
  103. package/components/page-footer/index.esm.js +98 -98
  104. package/components/page-footer/index.umd.cjs +1 -0
  105. package/components/page-header/index.esm.js +949 -847
  106. package/components/page-header/index.umd.cjs +1 -0
  107. package/components/pagination/index.esm.js +464 -403
  108. package/components/pagination/index.umd.cjs +1 -0
  109. package/components/popover/index.umd.cjs +1 -0
  110. package/components/progress/index.esm.js +226 -226
  111. package/components/progress/index.umd.cjs +3 -0
  112. package/components/property-editor/index.esm.js +1110 -1092
  113. package/components/property-editor/index.umd.cjs +3 -0
  114. package/components/property-panel/index.esm.js +520 -513
  115. package/components/property-panel/index.umd.cjs +1 -0
  116. package/components/query-solution/index.css +1 -1
  117. package/components/query-solution/index.esm.js +1714 -1575
  118. package/components/query-solution/index.umd.cjs +1 -0
  119. package/components/radio-button/index.esm.js +67 -67
  120. package/components/radio-button/index.umd.cjs +1 -0
  121. package/components/radio-group/index.esm.js +298 -289
  122. package/components/radio-group/index.umd.cjs +1 -0
  123. package/components/rate/index.esm.js +195 -190
  124. package/components/rate/index.umd.cjs +1 -0
  125. package/components/response-layout/index.esm.js +112 -112
  126. package/components/response-layout/index.umd.cjs +1 -0
  127. package/components/response-layout-editor/index.esm.js +902 -877
  128. package/components/response-layout-editor/index.umd.cjs +1 -0
  129. package/components/response-toolbar/index.esm.js +874 -778
  130. package/components/response-toolbar/index.umd.cjs +1 -0
  131. package/components/schema-selector/index.css +1 -1
  132. package/components/schema-selector/index.esm.js +4594 -4289
  133. package/components/schema-selector/index.umd.cjs +8 -0
  134. package/components/search-box/index.esm.js +126 -126
  135. package/components/search-box/index.umd.cjs +1 -0
  136. package/components/section/index.esm.js +645 -503
  137. package/components/section/index.umd.cjs +1 -0
  138. package/components/smoke-detector/index.esm.js +120 -120
  139. package/components/smoke-detector/index.umd.cjs +1 -0
  140. package/components/spacing-editor/index.umd.cjs +1 -0
  141. package/components/splitter/index.esm.js +421 -348
  142. package/components/splitter/index.umd.cjs +1 -0
  143. package/components/step/index.esm.js +219 -219
  144. package/components/step/index.umd.cjs +1 -0
  145. package/components/switch/index.esm.js +232 -222
  146. package/components/switch/index.umd.cjs +1 -0
  147. package/components/tabs/index.esm.js +1823 -1744
  148. package/components/tabs/index.umd.cjs +1 -0
  149. package/components/tags/index.esm.js +399 -401
  150. package/components/tags/index.umd.cjs +1 -0
  151. package/components/text/index.esm.js +164 -164
  152. package/components/text/index.umd.cjs +1 -0
  153. package/components/textarea/index.esm.js +220 -215
  154. package/components/textarea/index.umd.cjs +1 -0
  155. package/components/time-picker/index.esm.js +693 -666
  156. package/components/time-picker/index.umd.cjs +1 -0
  157. package/components/tooltip/index.umd.cjs +1 -0
  158. package/components/transfer/index.css +1 -1
  159. package/components/transfer/index.esm.js +422 -413
  160. package/components/transfer/index.umd.cjs +1 -0
  161. package/components/tree-grid/index.css +1 -1
  162. package/components/tree-grid/index.esm.js +4799 -4358
  163. package/components/tree-grid/index.umd.cjs +1 -0
  164. package/components/tree-view/index.esm.js +2448 -2215
  165. package/components/tree-view/index.umd.cjs +1 -0
  166. package/components/uploader/index.esm.js +164 -164
  167. package/components/uploader/index.umd.cjs +2 -0
  168. package/components/verify-detail/index.esm.js +143 -143
  169. package/components/verify-detail/index.umd.cjs +1 -0
  170. package/components/video/index.esm.js +410 -331
  171. package/components/video/index.umd.cjs +1 -0
  172. package/components/weather/index.esm.js +901 -901
  173. package/components/weather/index.umd.cjs +16 -0
  174. package/farris.all.esm.js +12305 -11403
  175. package/farris.all.umd.cjs +8 -8
  176. package/index.css +1 -1
  177. package/package.json +1 -1
  178. package/types/button-edit/src/designer/button-group.design.component.d.ts +7 -0
  179. package/types/combo-list/src/components/list-container.component.d.ts +3 -0
  180. package/types/combo-list/src/components/list-container.props.d.ts +5 -1
  181. package/types/common/entity/entity-schema.d.ts +258 -0
  182. package/types/component/src/component-ref.props.d.ts +4 -0
  183. package/types/component/src/composition/inner-component-build-info.d.ts +27 -0
  184. package/types/component/src/designer/use-designer-rules.d.ts +2 -2
  185. package/types/data-grid/index.d.ts +5 -2
  186. package/types/data-grid/src/composition/data-grid-component-creator.service.d.ts +33 -0
  187. package/types/data-grid/src/data-grid.component.d.ts +2 -1
  188. package/types/data-grid/src/data-grid.props.d.ts +2 -2
  189. package/types/data-grid/src/designer/use-group-column.d.ts +20 -0
  190. package/types/data-grid/src/property-config/data-grid.property-config.d.ts +4 -0
  191. package/types/data-grid/src/schema/schema-resolver.d.ts +2 -1
  192. package/types/data-view/components/column-format/boolean.component.d.ts +4 -0
  193. package/types/data-view/components/column-format/column-format.component.d.ts +4 -0
  194. package/types/data-view/components/column-format/date.component.d.ts +4 -0
  195. package/types/data-view/components/column-format/enum.component.d.ts +4 -0
  196. package/types/data-view/components/column-format/number.component.d.ts +4 -0
  197. package/types/data-view/composition/pagination/use-pagination.d.ts +1 -0
  198. package/types/data-view/composition/types.d.ts +18 -6
  199. package/types/data-view/composition/use-edit.d.ts +2 -1
  200. package/types/designer-canvas/src/composition/function/use-dragula.d.ts +2 -2
  201. package/types/designer-canvas/src/types.d.ts +2 -2
  202. package/types/dynamic-form/index.d.ts +2 -1
  203. package/types/dynamic-form/src/composition/response-form-component-creator.service.d.ts +31 -0
  204. package/types/dynamic-form/src/schema/schema-resolver.d.ts +2 -1
  205. package/types/dynamic-resolver/src/schema-resolver.d.ts +2 -1
  206. package/types/dynamic-resolver/src/types.d.ts +3 -2
  207. package/types/response-toolbar/src/response-toolbar.props.d.ts +2 -2
  208. package/types/response-toolbar/src/schema/schema-mapper.d.ts +4 -0
  209. package/types/section/src/property-config/section.property-config.d.ts +93 -0
  210. package/types/section/src/schema/schema-resolver.d.ts +2 -1
  211. package/types/tabs/src/composition/types.d.ts +2 -2
  212. package/types/tabs/src/designer/tab-header-item.design.component.d.ts +3 -1
  213. package/types/tabs/src/property-config/tab-page.property-config.d.ts +60 -0
  214. package/types/tabs/src/schema/schema-resolver.d.ts +2 -1
  215. package/types/tags/index.d.ts +36 -5
@@ -0,0 +1 @@
1
+ (function(H,n){typeof exports=="object"&&typeof module<"u"?n(exports,require("vue"),require("lodash-es"),require("../dynamic-resolver/index.umd.js"),require("../tags/index.umd.js"),require("../popover/index.umd.js"),require("@vueuse/core"),require("../data-view/index.umd.js"),require("../modal/index.umd.js"),require("../transfer/index.umd.js"),require("../tabs/index.umd.js"),require("../order/index.umd.js"),require("../condition/index.umd.js"),require("../checkbox/index.umd.js"),require("../filter-bar/index.umd.js"),require("../pagination/index.umd.js"),require("../dynamic-form/index.umd.js"),require("../combo-list/index.umd.js"),require("bignumber.js"),require("../number-spinner/index.umd.js"),require("../accordion/index.umd.js"),require("../avatar/index.umd.js"),require("../button-edit/index.umd.js"),require("../button-group/index.umd.js"),require("../calendar/index.umd.js"),require("../capsule/index.umd.js"),require("../combo-tree/index.umd.js"),require("../component/index.umd.js"),require("../color-picker/index.umd.js"),require("../content-container/index.umd.js"),require("../date-picker/index.umd.js"),require("../data-grid/index.umd.js"),require("../dropdown/index.umd.js"),require("../events-editor/index.umd.js"),require("../field-selector/index.umd.js"),require("../image-cropper/index.umd.js"),require("../input-group/index.umd.js"),require("../layout/index.umd.js"),require("../list-nav/index.umd.js"),require("../list-view/index.umd.js"),require("../lookup/index.umd.js"),require("../mapping-editor/index.umd.js"),require("../nav/index.umd.js"),require("../number-range/index.umd.js"),require("../page-header/index.umd.js"),require("../page-footer/index.umd.js"),require("../progress/index.umd.js"),require("../query-solution/index.umd.js"),require("../radio-group/index.umd.js"),require("../rate/index.umd.js"),require("../response-toolbar/index.umd.js"),require("../response-layout/index.umd.js"),require("../response-layout-editor/index.umd.js"),require("../search-box/index.umd.js"),require("../section/index.umd.js"),require("../smoke-detector/index.umd.js"),require("../splitter/index.umd.js"),require("../step/index.umd.js"),require("../switch/index.umd.js"),require("../text/index.umd.js"),require("../time-picker/index.umd.js"),require("../tree-view/index.umd.js"),require("../uploader/index.umd.js"),require("../verify-detail/index.umd.js"),require("../weather/index.umd.js"),require("../video/index.umd.js"),require("../textarea/index.umd.js"),require("../schema-selector/index.umd.js"),require("../tree-grid/index.umd.js"),require("../external-container/index.umd.js"),require("../common/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../dynamic-resolver/index.umd.js","../tags/index.umd.js","../popover/index.umd.js","@vueuse/core","../data-view/index.umd.js","../modal/index.umd.js","../transfer/index.umd.js","../tabs/index.umd.js","../order/index.umd.js","../condition/index.umd.js","../checkbox/index.umd.js","../filter-bar/index.umd.js","../pagination/index.umd.js","../dynamic-form/index.umd.js","../combo-list/index.umd.js","bignumber.js","../number-spinner/index.umd.js","../accordion/index.umd.js","../avatar/index.umd.js","../button-edit/index.umd.js","../button-group/index.umd.js","../calendar/index.umd.js","../capsule/index.umd.js","../combo-tree/index.umd.js","../component/index.umd.js","../color-picker/index.umd.js","../content-container/index.umd.js","../date-picker/index.umd.js","../data-grid/index.umd.js","../dropdown/index.umd.js","../events-editor/index.umd.js","../field-selector/index.umd.js","../image-cropper/index.umd.js","../input-group/index.umd.js","../layout/index.umd.js","../list-nav/index.umd.js","../list-view/index.umd.js","../lookup/index.umd.js","../mapping-editor/index.umd.js","../nav/index.umd.js","../number-range/index.umd.js","../page-header/index.umd.js","../page-footer/index.umd.js","../progress/index.umd.js","../query-solution/index.umd.js","../radio-group/index.umd.js","../rate/index.umd.js","../response-toolbar/index.umd.js","../response-layout/index.umd.js","../response-layout-editor/index.umd.js","../search-box/index.umd.js","../section/index.umd.js","../smoke-detector/index.umd.js","../splitter/index.umd.js","../step/index.umd.js","../switch/index.umd.js","../text/index.umd.js","../time-picker/index.umd.js","../tree-view/index.umd.js","../uploader/index.umd.js","../verify-detail/index.umd.js","../weather/index.umd.js","../video/index.umd.js","../textarea/index.umd.js","../schema-selector/index.umd.js","../tree-grid/index.umd.js","../external-container/index.umd.js","../common/index.umd.js"],n):(H=typeof globalThis<"u"?globalThis:H||self,n(H["field-selector"]={},H.Vue,H.LodashES,H.dynamicResolver,H.FTags,H.FPopover,H.VueUseCore,H.dataView,null,H.FTransfer$1,H.FTabs,H.FOrder,null,H.FCheckBox$1,H.FFilterBar,H.FPagination,H.FDynamicForm,H.FComboList,H.BigNumber,H.FNumberSpinner,H.FAccordion,H.FAvatar,H.FButtonEdit$1,H.FButtonGroup,H.FCalendar,H.FCapsule,H.FComboTree,H.FComponent,H.FColorPicker,H.FContentContainer,H.FDatePicker,H.FDataGrid$1,H.FDropdown,H.FEventsEditor,H.FFieldSelector,H.FImageCropper,H.FInputGroup$1,H.FLayout,H.FListNav,H.FListView$1,H.FLookup,H.FMappingEditor,H.FNav,H.FNumberRange,H.FPageHeader,H.FPageFooter,H.FProgress,H.FQuerySolution,H.FRadioGroup$1,H.FRate,H.FResponseToolbar,H.FResponseLayout,H.FResponseLayoutEditorSetting,H.FSearchBox,H.FSection,H.FSmokeDetector,H.FSplitter,H.FStep,H.FSwitch,H.FText,H.FTimePicker,H.FTreeview,H.FUploader,H.FVerifyDetail,H.FWeather,H.FVideo,H.FTextArea,H.FSchemaSelector,H.FTreeGrid$1,null,H.common))})(this,function(H,n,Ee,gt,jt,to,lt,E,ql,no,oo,io,Ul,nt,Pt,Dt,ht,yt,zl,ot,ro,ao,lo,so,co,uo,po,fo,mo,go,ho,yo,vo,bo,Co,wo,So,xo,_o,Vo,Fo,No,ko,To,Io,Mo,Oo,$o,Bo,jo,Po,Do,Eo,Ro,Ao,Go,Ho,Wo,Lo,qo,Uo,zo,Ko,Xo,Yo,Jo,Qo,Zo,ei,Kl,Ue){"use strict";var Wl=Object.defineProperty;var Ll=(H,n,Ee)=>n in H?Wl(H,n,{enumerable:!0,configurable:!0,writable:!0,value:Ee}):H[n]=Ee;var q=(H,n,Ee)=>Ll(H,typeof n!="symbol"?n+"":n,Ee);const Et={},Rt={};function vt(e){const{properties:t,title:o,ignore:i}=e,r=i&&Array.isArray(i),a=Object.keys(t).reduce((l,s)=>((!r||!i.find(c=>c==s))&&(l[s]=t[s].type==="object"&&t[s].properties?vt(t[s]):Ee.cloneDeep(t[s].default)),l),{});return(!r||!i.find(l=>l=="id"))&&(a.id=`${o}-${Date.now()}`),a}function bt(e,t={},o){const i=Et[e];if(i){let r=vt(i);const a=Rt[e];return r=a?a({getSchemaByType:bt},r,t,o):r,r}return null}function ti(e,t){const o=vt(t);return Object.keys(e).reduce((i,r)=>(i[r]&&typeof i[r]=="object"?Object.assign(i[r],e[r]):i[r]=e[r],i),o),o}function ni(e,t){return Object.keys(e).filter(i=>e[i]!=null).reduce((i,r)=>{if(t.has(r)){const a=t.get(r);if(typeof a=="string")i[a]=e[r];else{const l=a(r,e[r],e);Object.assign(i,l)}}else i[r]=e[r];return i},{})}function oi(e,t,o=new Map){const i=ti(e,t);return ni(i,o)}function ii(e={}){function t(p,f,d,u){if(typeof d=="number")return u[p].length===d;if(typeof d=="object"){const S=Object.keys(d)[0],v=d[S];if(S==="not")return Number(u[p].length)!==Number(v);if(S==="moreThan")return Number(u[p].length)>=Number(v);if(S==="lessThan")return Number(u[p].length)<=Number(v)}return!1}function o(p,f,d,u){return u[p]&&u[p].propertyValue&&String(u[p].propertyValue.value)===String(d)}const i=new Map([["length",t],["getProperty",o]]);Object.keys(e).reduce((p,f)=>(p.set(f,e[f]),p),i);function r(p,f){const d=p;return typeof f=="number"?[{target:d,operator:"length",param:null,value:Number(f)}]:typeof f=="boolean"?[{target:d,operator:"getProperty",param:p,value:!!f}]:typeof f=="object"?Object.keys(f).map(u=>{if(u==="length")return{target:d,operator:"length",param:null,value:f[u]};const S=u,v=f[u];return{target:d,operator:"getProperty",param:S,value:v}}):[]}function a(p){return Object.keys(p).reduce((d,u)=>{const S=r(u,p[u]);return d.push(...S),d},[])}function l(p,f){if(i.has(p.operator)){const d=i.get(p.operator);return d&&d(p.target,p.param,p.value,f)||!1}return!1}function s(p,f){return a(p).reduce((S,v)=>S&&l(v,f),!0)}function c(p,f){const d=Object.keys(p),u=d.includes("allOf"),S=d.includes("anyOf"),v=u||S,_=(v?p[v?u?"allOf":"anyOf":"allOf"]:[p]).map(g=>s(g,f));return u?!_.includes(!1):_.includes(!0)}return{parseValueSchema:c}}const Z={button:{type:"button",name:"按钮",icon:"Button"},"response-toolbar":{type:"response-toolbar",name:"工具栏",icon:"ButtonGroup"},"response-toolbar-item":{type:"response-toolbar-item",name:"按钮",icon:"Button"},"content-container":{type:"content-container",name:"容器",icon:"ContentContainer"},"input-group":{type:"input-group",name:"文本",icon:"TextBox"},textarea:{type:"textarea",name:"多行文本",icon:"MultiTextBox"},lookup:{type:"lookup",name:"帮助",icon:"LookupEdit"},"number-spinner":{type:"number-spinner",name:"数值",icon:"NumericBox"},"date-picker":{type:"date-picker",name:"日期",icon:"DateBox"},switch:{type:"switch",name:"开关",icon:"SwitchField"},"radio-group":{type:"radio-group",name:"单选组",icon:"RadioGroup"},"check-box":{type:"check-box",name:"复选框",icon:"CheckBox"},"check-group":{type:"check-group",name:"复选框组",icon:"CheckGroup"},"combo-list":{type:"combo-list",name:"下拉列表",icon:"EnumField"},"response-form":{type:"response-form",name:"卡片面板",icon:"Form"},"response-layout":{type:"response-layout",name:"布局容器",icon:"ResponseLayout3"},"response-layout-item":{type:"response-layout-item",name:"布局",icon:"ResponseLayout1"},"tree-grid":{type:"tree-grid",name:"树表格",icon:"TreeGrid"},"tree-grid-column":{type:"tree-grid-column",name:"树表格列"},"data-grid":{type:"data-grid",name:"表格",icon:"DataGrid"},"data-grid-column":{type:"data-grid-column",name:"表格列"},module:{type:"Module",name:"模块",icon:"Module"},component:{type:"component",name:"组件",icon:"Component"},tabs:{type:"tabs",name:"标签页",icon:"Tab"},"tab-page":{type:"tab-page",name:"标签页项",dependentParentControl:"Tab"},"tab-toolbar-item":{type:"tab-toolbar-item",name:"标签页工具栏按钮",icon:"Button"},"time-picker":{type:"time-picker",name:"时间选择",icon:"TimePicker"},section:{type:"section",name:"分组面板",icon:"Section"},"section-toolbar":{type:"section-toolbar",name:"分组面板工具栏"},"section-toolbar-item":{type:"section-toolbar-item",name:"分组面板按钮"},splitter:{type:"splitter",name:"分栏面板",icon:"Splitter"},"splitter-pane":{type:"splitter-pane",name:"分栏面板项",dependentParentControl:"Splitter"},"component-ref":{type:"component-ref",name:"组件引用节点"},uploader:{type:"uploader",name:"附件上传",icon:"FileUpload"},"page-header":{type:"page-header",name:"页头",icon:"Header"},"page-footer":{type:"page-footer",name:"页脚",icon:"ModalFooter"},"tab-toolbar":{type:"tab-toolbar",name:"标签页工具栏",icon:"TabToolbar"}},ri={},ai={};ii();function Oe(e,t,o=new Map,i=(l,s,c)=>s,r={},a=l=>l){return Et[t.title]=t,Rt[t.title]=i,ri[t.title]=r,ai[t.title]=a,(l={})=>{const s=oi(l,t,o),c=Object.keys(e).reduce((p,f)=>(p[f]=e[f].default,p),{});return Object.assign(c,s)}}function We(e,t){return{customClass:t.class,customStyle:t.style}}function li(){function e(t,o){const{id:i}=t||{},{dataSource:r}=t||{};return r===void 0?{}:{data:o.getValue(i),"onUpdate:data":(...a)=>{}}}return{resolve:e}}function si(){function e(t,o){return t.selectItemById(o)}return{selectItemById:e}}function ci(){function e(t,o){return t.selectItemById(o)}return{selectItemById:e}}const di=new Map([["appearance",gt.resolveAppearance]]);function ui(e,t,o){return t}const pi={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/button-edit.schema.json",title:"button-edit",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"button-edit"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},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},require:{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},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""},autoComplete:{description:"",type:"boolean",default:!1},buttonContent:{description:"",type:"string",default:""},enableClear:{description:"",type:"boolean",default:!0},inputType:{description:"",type:"string",enum:["text","tag"],default:"text"},multiSelect:{description:"",type:"boolean",default:!1},popup:{description:"",type:"object",properties:{footerButtons:{type:"array",default:[]},height:{type:"number",default:600},dataMapping:{type:"object"},contents:{type:"array",default:[]},showMaxButton:{type:"boolean",default:!0},showCloseButton:{type:"boolean",default:!0},showFooter:{type:"boolean",default:!0},title:{type:"string",default:""},width:{type:"number",default:800}}},separator:{type:"string",default:","},showButtonWhenDisabled:{description:"",type:"boolean",default:!1},wrapText:{type:"boolean",default:!1},onClear:{description:"",type:"string",default:""}},required:["id","type"]},fi={title:"buttonEdit",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}},behavior:{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean"},readonly:{description:"",title:"只读",type:"string"},required:{description:"",title:"必填",type:"boolean"},visible:{description:"",title:"可见",type:"boolean"},placeholder:{description:"",title:"提示文本",type:"string"},tabindex:{description:"",title:"tab索引",type:"number"},textAlign:{description:"",title:"对齐方式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中对齐"},{value:"right",name:"右对齐"}]}}}}}},At={id:String,buttonContent:{type:String,default:'<i class="f-icon f-icon-lookup"></i>'},buttonBehavior:{type:String,default:"Popup"},autoComplete:{type:Boolean,default:!1},customClass:{type:String,default:""},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!0},enableClear:{type:Boolean,default:!1},modelValue:{type:String,default:""},readonly:{type:Boolean,default:!1},showButtonWhenDisabled:{type:Boolean,default:!1},enableTitle:{type:Boolean,default:!1},inputType:{type:String,default:"text"},forcePlaceholder:{type:Boolean,default:!1},placeholder:{type:String,default:""},minLength:Number,maxLength:Number,tabIndex:Number,popupHost:{type:Object},popupRightBoundary:{type:Object},popupOffsetX:{type:Object},popupOnInput:{type:Boolean,default:!1},popupOnFocus:{type:Boolean,default:!1},popupMinWidth:{type:Number,default:160},modalOptions:{type:Object,default:{}},wrapText:{type:Boolean,default:!1},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},textAlign:{type:String,default:"left"},beforeClickButton:{type:Function,default:null},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},beforeOpen:{type:Function,default:null}};Oe(At,pi,di,ui,fi);const mi={popupContentPosition:{type:Object,default:{left:0,top:0}},host:{type:Object},backgroundColor:{type:String,default:""}},gi=n.defineComponent({name:"FOverlay",props:mi,emits:["click"],setup(e,t){const o=n.ref(e.popupContentPosition),i=n.ref(e.host),r=n.computed(()=>({backgroundColor:e.backgroundColor||"",pointerEvents:"auto"}));function a(s){t.emit("click"),s.preventDefault(),s.stopPropagation()}n.computed(()=>{const s=i.value;if(s){const c=s.getBoundingClientRect(),{left:p,top:f,height:d}=c;return{left:p,top:f+d}}return o.value});const l=n.computed(()=>({}));return()=>n.createVNode(n.Teleport,{to:"body"},{default:()=>{var s,c;return[n.createVNode("div",{class:"overlay-container",onClick:p=>a(p),style:r.value},[n.createVNode("div",{style:l.value},[(c=(s=t.slots).default)==null?void 0:c.call(s)])])]}})}});function hi(e){if(e.content&&e.content.render)return e.content.render;if(e.render&&typeof e.render=="function")return e.render}function yi(e){const t=document.createElement("div");t.style.display="contents";let o;const i=e.onClickCallback||(()=>{}),r=()=>{i(),o&&o.unmount()};return o=n.createApp({setup(){n.onUnmounted(()=>{document.body.removeChild(t)});const a=hi(e);return()=>n.createVNode(gi,{"popup-content-position":e.popupPosition,host:e.host,onClick:r,backgroundColor:e.backgroundColor},{default:()=>[a&&a()]})}}),document.body.appendChild(t),o.mount(t),o}class vi{static show(t){return yi(t)}}const bi=Symbol("FModalService");function Gt(e,t){function o(){const i=e.beforeOpen||e.beforeClickButton||null;let r=Promise.resolve(!0);if(i){const a=i(t.value);if(typeof a>"u")return r;typeof a=="boolean"?r=Promise.resolve(a):r=a}return r}return{judgeCanOpen:o}}function Ci(e,t,o,i,r){const a=n.ref(e.buttonBehavior),l=n.ref(e.popupOnInput),s=n.computed(()=>({"input-group-append":!0,"append-force-show":e.showButtonWhenDisabled&&(e.readonly||e.disable)})),{judgeCanOpen:c}=Gt(e,r),p=n.computed(()=>e.showButtonWhenDisabled||(!e.editable||!e.readonly)&&!e.disable),f=n.inject(bi,null),d=n.ref();async function u(w){if(await c()&&p.value){const C=!!t.slots.default;if(a.value==="Modal"){const _=e.modalOptions,b=f==null?void 0:f.open({..._,render:()=>t.slots.default&&t.slots.default()});d.value=b==null?void 0:b.modalRef}a.value==="Overlay"&&vi.show({host:document.body,backgroundColor:"rgba(0,0,0,.15)",render:()=>t.slots.default&&t.slots.default()}),C&&a.value==="Popup"&&i.togglePopup(!0),C&&l.value&&i.hidePopup(),t.emit("clickButton",{origin:w,value:e.modelValue})}}function S(w){t.emit("mouseEnterIcon",w)}function v(w){t.emit("mouseLeaveIcon",w)}return{buttonGroupClass:s,onClickButton:u,onMouseEnterButton:S,onMouseLeaveButton:v,modalRef:d}}function wi(e,t,o,i,r,a){const l=n.ref(!1),s=n.computed(()=>e.enableClear&&!e.readonly&&!e.disable),{changeTextBoxValue:c}=a;function p(S){l.value=S}n.watch(r,()=>{p(!!r.value)});function f(S){const v=!e.readonly&&!e.disable&&e.editable,w=!e.editable;S.stopPropagation(),(v||w)&&(c("",!1),p(!l.value),t.emit("clear"))}function d(S){if(s.value){if(!o.value){p(!1);return}!e.disable&&!e.readonly&&p(!0)}}function u(S){s.value&&p(!1)}return{enableClearButton:s,showClearButton:l,onClearValue:f,onMouseEnterTextBox:d,onMouseLeaveTextBox:u}}function Si(e,t,o,i,r){const a=n.computed(()=>e.popupOnInput),l=n.computed(()=>e.popupOnFocus),{shouldPopupContent:s}=r,c=n.computed(()=>e.enableTitle?o.value:""),p=n.computed(()=>(e.disable||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),f=n.computed(()=>e.readonly||!e.editable),d=n.ref(!1),u=n.computed(()=>!e.disable&&d.value),S=n.computed(()=>({"text-left":e.textAlign==="left","text-center":e.textAlign==="center","text-right":e.textAlign==="right","form-control":!0,"f-utils-fill":!0})),v=n.computed(()=>({"input-group":!0,"f-state-disable":e.disable,"f-state-editable":e.editable&&!e.disable&&!e.readonly,"f-state-readonly":e.readonly&&!e.disable,"f-state-focus":u.value}));function w(h,T=!0){o.value!==h&&(o.value=h,T&&t.emit("change",h),t.emit("update:modelValue",h))}function C(h){s.value=!1,w(h,!0)}n.watch(()=>e.modelValue,h=>{o.value=h});function _(h){d.value=!1,t.emit("blur",h),h.stopPropagation()}function b(h){t.emit("click",h)}function g(h){e.disable||(d.value=!0,f.value||(t.emit("focus",h),l.value&&!s.value&&r.popup()))}function V(h){t.emit("input",h.target.value);const T=h.target.value;i.value=T,o.value!==T&&w(T,!0),a.value&&!s.value&&r.popup()}function x(h){h.target.tagName!=="INPUT"&&h.preventDefault(),h.stopPropagation()}function y(h){t.emit("keydown",h)}function N(h){h.key==="Enter"&&(a.value||l.value)&&r.hidePopup(),t.emit("keyup",h)}function m(h){const T=h.target.value;h.stopPropagation(),w(T)}return{hasFocusedTextBox:u,isTextBoxReadonly:f,textBoxClass:S,textBoxPlaceholder:p,textBoxTitle:c,inputGroupClass:v,changeTextBoxValue:w,commitValue:C,onBlurTextBox:_,onClickTextBox:b,onFocusTextBox:g,onInput:V,onKeyDownTextBox:y,onKeyUpTextBox:N,onMouseDownTextBox:x,onTextBoxValueChange:m}}function xi(e,t,o,i){const r=n.ref(),a=n.ref(!1),{judgeCanOpen:l}=Gt(e,i);function s(){const d=r.value;d&&d.show(o.value)}async function c(d=!1){if(!!t.slots.default){if(!d&&!a.value&&!await l())return;a.value=!a.value,await n.nextTick(),s()}}async function p(d=!1){if(!!t.slots.default){if(!d&&!await l())return;a.value=!0,await n.nextTick(),s()}}function f(){a.value=!1}return{hidePopup:f,popup:p,shouldPopupContent:a,togglePopup:c,popoverRef:r}}function _i(e,t,o){const i=n.ref(),{isTextBoxReadonly:r,textBoxClass:a,textBoxPlaceholder:l,textBoxTitle:s,onBlurTextBox:c,onClickTextBox:p,onFocusTextBox:f,onInput:d,onKeyDownTextBox:u,onKeyUpTextBox:S,onMouseDownTextBox:v,onTextBoxValueChange:w}=o;return n.onMounted(()=>{var C,_;e.selectOnCreated&&((C=i.value)==null||C.select()),e.focusOnCreated&&((_=i.value)==null||_.focus())}),()=>n.createVNode("input",{ref:i,name:"input-group-value",autocomplete:e.autoComplete?"on":"off",class:a.value,disabled:e.disable,maxlength:e.maxLength,minlength:e.minLength,placeholder:l.value,readonly:r.value,tabindex:e.tabIndex,title:s.value,type:e.inputType,value:t.value,onBlur:c,onChange:w,onClick:p,onFocus:f,onInput:d,onKeydown:u,onKeyup:S,onMousedown:v},null)}function Vi(e,t,o){const i=n.ref(e.separator),{changeTextBoxValue:r}=o,a=n.computed(()=>t.value?t.value.split(i.value).map(s=>({name:s,selectable:!0})):[]);function l(s){r(s.map(c=>c.name).join(i.value),!0)}return()=>n.createVNode(jt,{id:`${e.id}-tag-editor`,class:"form-control",data:a.value,showClose:!0,showInput:!0,onChange:l},null)}function Fi(e,t,o,i){const{buttonGroupClass:r,onClickButton:a,onMouseEnterButton:l,onMouseLeaveButton:s}=o,{enableClearButton:c,showClearButton:p,onClearValue:f}=i,d=n.ref();return{renderButtonGroup:()=>n.createVNode("div",{id:`${e.id}-button-group`,class:r.value},[c.value&&n.withDirectives(n.createVNode("span",{class:"input-group-text input-group-clear",onClick:f},[n.createVNode("i",{class:"f-icon modal_close"},null)]),[[n.vShow,p.value]]),t.slots.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",onClick:a,onMouseenter:l,onMouseleave:s},[t.slots.buttonContent()]):e.buttonContent?n.createVNode("span",{class:"input-group-text input-group-append-button",innerHTML:e.buttonContent,ref:d,onClick:a,onMouseenter:l,onMouseleave:s},null):null]),buttonHandleElement:d}}function Ni(e,t,o){const i=n.ref(e.popupMinWidth),{hidePopup:r,popoverRef:a}=o;return()=>n.createVNode(to,{id:`${e.id}-popover`,ref:a,visible:!0,placement:"bottom-left",host:e.popupHost,"keep-width-with-reference":!0,fitContent:!0,"right-boundary":e.popupRightBoundary,minWidth:i.value,offsetX:e.popupOffsetX,onHidden:r},{default:()=>{var l,s;return[(s=(l=t.slots).default)==null?void 0:s.call(l)]}})}const Ht=n.defineComponent({name:"FButtonEdit",props:At,emits:["updateExtendInfo","clear","change","click","clickButton","blur","focus","mouseEnterIcon","mouseLeaveIcon","keyup","keydown","inputClick","input","update:modelValue"],setup(e,t){const o=n.ref(),i=n.ref(e.customClass),r=n.ref(e.modelValue),a=xi(e,t,o,r),{shouldPopupContent:l,hidePopup:s,togglePopup:c}=a,p=Ci(e,t,o,a,r),f=n.ref(""),d=Si(e,t,r,f,a),{hasFocusedTextBox:u,commitValue:S,inputGroupClass:v}=d,w=wi(e,t,r,u,f,d),{onMouseEnterTextBox:C,onMouseLeaveTextBox:_}=w,b=n.computed(()=>{const h={"f-button-edit":!0,"f-cmp-inputgroup":!0,"f-button-edit-nowrap":!e.wrapText};return i.value&&i.value.split(" ").reduce((T,M)=>(T[M]=!0,T),h),h});function g(){return e.multiSelect&&e.inputType==="tag"?Vi(e,r,d):_i(e,r,d)}let V=g();n.watch([()=>e.multiSelect,()=>e.inputType],()=>{V=g()});const{renderButtonGroup:x,buttonHandleElement:y}=Fi(e,t,p,w),N=Ni(e,t,a),m={commitValue:S,elementRef:o,hidePopup:s,shouldPopupContent:l,togglePopup:c,openDialog:()=>{y.value&&e.buttonBehavior==="Modal"&&y.value.click()},getModal:()=>{var h;return e.buttonBehavior==="Modal"?(h=p.modalRef.value)==null?void 0:h.value:null}};return n.onMounted(()=>{o.value.componentInstance=m,window.onresize=()=>{document.body.click()}}),t.expose(m),()=>n.createVNode(n.Fragment,null,[n.createVNode("div",n.mergeProps(t.attrs,{ref:o,class:b.value,id:e.id}),[n.createVNode("div",{id:`${e.id}-input-group`,class:v.value,onMouseenter:C,onMouseleave:_},[V(),x()])]),l.value&&N()])}}),ki={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/field-selector.schema.json",title:"field-selector",description:"A Farris Input Component",type:"object",properties:{}},Ti=[{field:"code",title:"绑定字段"},{field:"name",title:"名称"},{field:"fieldType",title:"字段类型"}],st=Symbol("Field_Selector Component Repository Service Token"),ct={disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},modelValue:{type:[String,Array],default:null},bindingType:{type:Object,default:{enable:!0,data:[{value:"Form",text:"绑定字段"},{value:"LocaleVariable",text:"绑定组件变量"},{value:"RemoteVariable",text:"绑定表单变量"}],value:"Form",textField:"text",valueField:"value"}},data:{type:Array,default:[]},idField:{type:String,default:"id"},columns:{type:Array,default:Ti},title:{type:String,default:"字段选择器"},modalWidth:{type:Number,default:600},modalHeight:{type:Number,default:500},multiSelect:{type:Boolean,default:!1},separator:{type:String,default:","},bindingData:{type:Array,default:[]},textField:{type:String,default:"code"},beforeOpenDialog:{type:Function,default:null},editorParams:{type:Object,default:null},onFieldSelected:{type:Function,default:null},repositoryToken:{type:Symbol,default:null}},Wt=Oe(ct,ki);function Ii(e,t,o){return!t||!t.length?{columns:[]}:(t.forEach(i=>{i.title=i.caption?i.caption:i.title,i.field=i.binding?i.binding.path:i.field}),{columns:t})}const Lt=new Map([["appearance",We],["column","columnOption"],["fields",Ii]]);function Mi(e,t,o){var d;const i=o.parentComponentInstance,r=i.schema.type,a=String(((d=i.schema.appearance)==null?void 0:d.class)||"").split(" "),l=r==="section"||r==="tab-page",s=a.includes("f-page-content-nav"),c=a.includes("f-page-main"),p=e.getSchemaByType("component");p.id=`${t.id}-component`,p.componentType="data-grid";let f="";return f+=l?"f-struct-data-grid-in-card f-struct-is-subgrid":"",f+=s?"f-struct-data-grid-in-nav f-struct-wrapper f-utils-fill-flex-column":"",f+=c?"f-struct-data-grid f-struct-wrapper":"",p.appearance={class:f},p.contents=[t],p}function Oi(e,t,o){const i=o.parentComponentInstance,r=String(i.schema.appearance.class||"").split(" "),a=r.includes("f-page-content-nav"),l=r.includes("f-page-main"),s=e.getSchemaByType("section");s.id=`${t.id}-section`;let c="";return c+=a?"f-section-in-nav ":"",c+=l?"f-section-in-managelist ":"",c+="f-section-grid",s.appearance={class:c},s.contents=[t],s}function $i(e,t,o){const i=e.getSchemaByType("content-container");return i.id=`${t.id}-layout`,i.appearance={class:"f-grid-is-sub f-utils-flex-column"},i.contents=[t],i}function qt(e,t,o){const r=o.parentComponentInstance.schema.type,a=r==="section"||r==="tab-page";t.appearance={class:"f-component-grid"};const s=(a?$i:Oi)(e,t,o);return Mi(e,s,o)}const Ut={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/tree-grid.schema.json",title:"tree-grid",description:"A Farris Data Grid Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"tree-grid"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},fit:{type:"boolean",default:!1},showStripe:{type:"boolean",default:!0},showBorder:{type:"boolean",default:!1},showTreeNodeIcons:{type:"boolean",default:!1},size:{description:"",type:"object",properties:{width:{type:"number"},height:{type:"number"}},default:null},dataSource:{description:"",type:"string",default:""},columns:{description:"",type:"array",default:[]},identifyField:{description:"",type:"string"},editable:{description:"",type:"boolean",default:!1},disable:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0},cell:{type:"object",properties:{highlightFocusingCell:{description:"",type:"boolean",default:!1},mergeCell:{description:"",type:"boolean",default:!1},showEditableIcon:{description:"",type:"boolean",default:!1}}},column:{type:"object",properties:{fitColumns:{description:"",type:"boolean",default:!1},fitMode:{description:"",type:"string",default:"average"},groups:{description:"",type:"array",default:[]},reorderColumn:{description:"Enable to drag column to reorder",type:"boolean",default:!1},resizeColumn:{type:"boolean",default:!0},resizeColumnOnDoubleClick:{description:"",type:"boolean",default:!0}}},command:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},commands:{type:"array",default:[]},commandColumnWidth:{description:"",type:"number",default:120},onClickDeleteCommand:{description:"",type:"string",default:""},onClickEditCommand:{description:"",type:"string",default:""}}},contextMenu:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},customizaiton:{type:"object",properties:{enableScheme:{description:"",type:"boolean",default:!1},enableSetting:{description:"",type:"boolean",default:!1}}},edit:{type:"obejct",properties:{mode:{description:"",type:"string",default:"cell",enum:["cell","row","card"]},selectOnEditing:{description:"",type:"boolean",default:!1},onAppendRow:{description:"",type:"string",default:""},onBeforeEdit:{description:"",type:"string",default:""}}},filter:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},filterStyle:{description:"",type:"string",default:"filter-column",enum:["filter-column","filter-row"]},mode:{description:"",type:"string",default:"server",enum:["client","server"]},showSummary:{description:"",type:"boolean",default:!0},onFilterChange:{description:"",type:"string",default:""}}},footer:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customFooterStyle:{description:"",type:"object"},footerDataCommand:{description:"",type:"string",default:""},footerDataFrom:{description:"",type:"string",default:"client"},footerHeight:{description:"",type:"number",default:29},footerPosition:{description:"",type:"string",default:"bottom"},footerTemplate:{description:"",type:"string",default:""}}},group:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customGroupRow:{description:"",type:"object"},customGroupRowStyle:{description:"",type:"obejct"},customSummaryStyle:{description:"",type:"obejct"},groupColSpan:{description:"",type:"number",default:1},groupFields:{description:"",type:"array",default:[]},showGroupedColumn:{description:"",type:"boolean",default:!0},showGroupPanel:{description:"",type:"boolean",default:!1},showSummary:{description:"",type:"boolean",default:!1},summaryPosition:{description:"",type:"string",default:"separate",enum:["separate","merge-to-group"]},disableGroupOnEditing:{description:"",type:"boolean",default:!0},expandGroupRows:{description:"",type:"boolean",default:!0}}},header:{type:"object",properties:{wrapHeadings:{description:"",type:"boolean",default:!1}}},pagination:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},disablePagination:{description:"",type:"string",default:""},contentTemplate:{description:"",type:"string",default:""},index:{description:"",type:"number",default:1},mode:{description:"",type:"string",default:"server",enum:["server","client"]},showGoto:{description:"",type:"boolean",default:!1},showIndex:{description:"",type:"boolean",default:!0},showLimits:{description:"",type:"boolean",default:!1},showPageInfo:{description:"",type:"boolean",default:!0},size:{description:"",type:"number",default:20},sizeLimits:{description:"",type:"array",default:[10,20,30,50,100]},onPageChange:{description:"",type:"string",default:""},onPageSizeChange:{description:"",type:"string",default:""}}},row:{type:"object",properties:{customRowStyle:{description:"",type:"object"},disable:{description:"",type:"obejct"},height:{description:"",type:"number",default:30},showHovering:{type:"boolean",default:!0},wrapContent:{type:"boolean",default:!1}}},rowNumber:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},heading:{description:"",type:"string",default:"序号"},width:{description:"",type:"number",default:36},onClickRow:{description:"",type:"string",default:""},onDoubleClickRow:{description:"",type:"string",default:""}}},selection:{type:"object",properties:{enable:{description:"",type:"boolean",default:!0},checkOnSelect:{description:"",type:"boolean",default:!1},clearSelectionOnEmpty:{description:"",type:"boolean",default:!0},customSelectionItem:{description:"",type:"object"},focusSelection:{description:"",type:"string",default:"current",enum:["current","all"]},keepSelectingOnClick:{description:"",type:"boolean",default:!0},keepSelectingOnPaging:{description:"",type:"boolean",default:!0},multiSelect:{description:"",type:"boolean",default:!1},selectionMode:{description:"",type:"string",default:"default"},selectOnCheck:{description:"",type:"boolean",default:!1},selectOnEditing:{description:"",type:"boolean",default:!1},showCheckbox:{description:"",type:"boolean",default:!1},showCheckAll:{description:"",type:"boolean",default:!1},showSelection:{description:"",type:"boolean",default:!1},onBeforeSelect:{description:"",type:"string",default:""},onBeforeUnCheck:{description:"",type:"",default:""},onBeforeUnSelect:{description:"",type:"string",default:""},onCheckAll:{description:"",type:"string",default:""},onChecked:{description:"",type:"string",default:""},onSelectionChange:{description:"",type:"string",default:""},onUnCheckAll:{description:"",type:"string",default:""},onUnChecked:{description:"",type:"string",default:""},onCheckedChange:{description:"",type:"string"}}},sort:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},fields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},multiSort:{description:"",type:"boolean",default:!1}}},summary:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customSummaryStyle:{description:"",type:"object"},groupFields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},position:{description:"",type:"boolean",default:"bottom",enum:["bottom","top","both"]}}},toolbar:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},visualization:{autoHeight:{description:"",type:"boolean",default:!1},emptyDataHeight:{description:"",type:"number",default:36},emptyTemplate:{description:"",type:"string",default:""},maxHeight:{description:"",type:"number",default:300},scrollBarShowMode:{description:"",type:"string",default:"auto"},showBorder:{description:"",type:"boolean",default:!1},showScrollArrow:{description:"",type:"boolean",default:!1},striped:{description:"",type:"boolean",default:!0},useBlankWhenDataIsEmpty:{description:"",type:"boolean",default:!1}}},required:["id","type"]},Ct={columns:{type:Array,default:[]},displayField:{type:String,default:"name"},showLines:{type:Boolean,default:!1},columnOption:{type:Object},data:{type:Array,default:[]},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!1},editOption:{type:Object,default:{selectOnEditing:!1,editMode:"cell"}},fit:{type:Boolean,default:!1},header:{type:Object},height:{type:Number,default:-1},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},loading:{type:Boolean,default:!1},minHeight:{type:Number,default:300},minWidth:{type:Number,default:400},pagination:{type:Object,default:{enable:!1,size:-1}},rowNumber:{type:Object,default:{enable:!0,width:32,heading:"序号"}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},selectionValues:{type:Array,default:[]},showBorder:{type:Boolean,default:!1},showOptions:{type:Boolean,default:!1},showScrollBar:{type:String,default:"auto"},showStripe:{type:Boolean,default:!0},showTreeNodeIcons:{type:Boolean,default:!1},treeNodeIconsData:{type:[Object,String],default:{}},width:{type:Number,default:-1},newDataItem:{type:Function,default:()=>{}},commandOption:{type:Object,default:{enable:!1,commands:[]}},hierarchy:{type:Object,default:{cascadeOption:{autoCheckChildren:!1,autoCheckParent:!1,selectionRange:"All"},parentIdField:"parent"}},autoCheckChildren:{type:Boolean,default:!1},showSetting:{type:Boolean,default:!1}},Bi=Oe(Ct,Ut,Lt,qt),ji=ci(),zt=Object.assign({},Ct,{componentId:{type:String,default:""}}),Pi=Oe(zt,Ut,Lt,qt);var Me=(e=>(e[e.readonly=0]="readonly",e[e.editable=1]="editable",e[e.editing=2]="editing",e))(Me||{}),Ae=(e=>(e[e.initial=0]="initial",e[e.editing=1]="editing",e))(Ae||{}),ze=(e=>(e[e.data=0]="data",e[e.group=1]="group",e[e.summary=2]="summary",e))(ze||{}),Be=(e=>(e[e.none=0]="none",e[e.filterable=1]="filterable",e[e.sortable=2]="sortable",e[e.filtered=4]="filtered",e[e.sorted=8]="sorted",e[e.ascending=16]="ascending",e[e.descending=32]="descending",e))(Be||{}),wt=(e=>(e.NONE="none",e.NUMBER="number",e.DATE="date",e.TEXT="boolean",e.IMAGE="boolean2",e.ENUM="enum",e.CUSTOM="custom",e))(wt||{});function Di(){function e(){return n.createVNode("div",{class:"fv-grid-disable"},null)}return{renderDisableMask:e}}function Ei(e,t,o,i,r){const{columnContext:a}=t,{conditions:l,clearCondition:s,removeCondition:c}=i,p=n.ref([]);function f(){const v=[];Array.from(l.value).forEach((w,C)=>{const _={id:w.id,code:w.fieldCode,labelCode:w.fieldCode,name:w.fieldName,editor:{type:w.value.editorType}};v.push(_)}),p.value=v}n.watch(l,()=>f());function d(v){c(`field_filter_${v}`);const w=a.value.primaryHeaderColumns.find(C=>C.field===v);if(w){w.filterValue=null;let C=w.status;C=(C&Be.filtered)===Be.filtered?C^Be.filtered:C,w.status=C}o.refresh(),r.reCalculateVisualDataRows()}function u(){s(),a.value.primaryHeaderColumns.forEach(v=>{v.filterValue=null;let w=v.status;w=(w&Be.filtered)===Be.filtered?w^Be.filtered:w,v.status=w}),o.refresh(),r.reCalculateVisualDataRows()}function S(){return n.createVNode("div",{class:"fv-grid-filter-panel"},[n.createVNode(Pt.FFilterBar,{data:l.value,fields:p.value,mode:"display-only","show-reset":!0,onRemove:d,onReset:u},null)])}return{renderFilterPanel:S}}function Ri(e,t,o,i,r){const{dropOnGroupPanel:a,groupColumnItems:l}=o,{groupFields:s,shouldGroupingData:c}=i,p=n.ref();function f(S){s.value=S.map(v=>v.value),t.updateDataView(),r.reCalculateVisualDataRows()}function d(S){S.preventDefault()}function u(){return c.value&&n.createVNode("div",{class:"fv-grid-group-panel",onDrop:a,onDragover:d},[l.value&&n.createVNode(n.resolveComponent("f-tags"),{ref:p,style:"margin:0.375rem","tag-type":"default",data:l.value,"tag-style":"capsule","show-close":!0,onChange:f},null)])}return{renderGroupPanel:u}}function St(e,t){var S;const o=String(Date.now()),i=((S=e.rowOption)==null?void 0:S.height)||28,r=n.ref(t.value.primaryColumnsWidth);function a(v){const w={};return v.reduce((C,_,b)=>{const g=b<v.length-1?v[b+1]:null;return b===0&&(C[_.field]={left:0}),_.actualWidth!==void 0&&(C[_.field].width=_.actualWidth),g&&(C[g.field]={left:C[_.field].left+(_.actualWidth||0)}),C},w),w}function l(v,w,C){const _=i*(C+1),g=w[v.field].left-_+(w[v.field].width||0),V=v.parent.height?`${v.parent.height}px`:"";return{left:`${_}px`,width:`${g}px`,height:`${V}`}}function s(v,w,C){return{right:"0px",height:`${v.parent.height?`${v.parent.height}px`:""}`}}function c(v,w){const C=v.parent.height?`${v.parent.height}px`:"";return{left:`${w[v.field].left}px`,height:`${C}`,width:isNaN(Number(w[v.field].width))?"100%":`${w[v.field].width}px`}}function p(v,w,C){const b=(w.spanned||[]).reduce((V,x)=>V+(x.parent.height||0),0)+(v.height||0);return{top:`${v.top}px`,left:`${C[w.field].left}px`,width:`${C[w.field].width}px`,height:`${b}px`,padding:`calc(${b/2}px - 1rem) 0`}}function f(v,w){return`${o}_${v.type}_r_${v.index}_c_${w}_${v.refreshKey||""}`}function d(v){return`${o}_${v.type}_r_${v.index}_${v.refreshKey||""}`}function u(v){const w=v.height?`${v.height}px`:"";return{top:`${v.top}px`,width:isNaN(r.value)?"100%":`${r.value}px`,height:`${w}`}}return n.watch(t,()=>{r.value=t.value.primaryColumnsWidth}),{calculateCellPositionInRow:a,cellKey:f,cellPosition:c,groupCellPosition:l,rowKey:d,rowPosition:u,rowSpanCellPosition:p,summaryCellPosition:s}}function Ai(e,t,o){const{hasChildrenField:i}=o,r=n.ref("#9399a0"),a=n.ref(28);function l(){return[].concat(...t.value.filter(u=>u.raw.__fv_descendant_index__.length!==0).map(u=>[...u.raw.__fv_descendant_index__.slice(-1)]).flat()).sort((u,S)=>Number(u)-Number(S))}function s(f){const d=new Array(t.value.length).fill(0);if(e.showLines){const u=l();t.value.forEach((S,v)=>{const w=u.includes(v),C=S.raw[i.value];d[v]=`repeating-linear-gradient(90deg, ${r.value} 0 1px, transparent 0px 2px) ${C?"-10px":"0px"} ${a.value/2}px/20px 1px no-repeat,repeating-linear-gradient(${r.value} 0 1px, transparent 0px 2px) 0px 0px/1px ${w?"50%":"100%"} no-repeat`}),d[0]=""}return d[f]}function c(f,d,u){return u[f].parents.set(f,!0).forEach(v=>{u[v].childsLength=u[v].childWithLines.filter(w=>d[w].visible).length}),d}function p(f){const S=f.raw.__fv_parent_index__===void 0||f.raw.__fv_parent_index__===-1?0:8,v=0,w=f.raw[i.value],C=f.visible?{left:`${f.layer*10+f.layer*S+v}px`,background:s(f.index),display:"flex",width:"100%",position:"relative",paddingLeft:"0.75rem"}:{display:"none"};return w||(C.paddingLeft="2rem"),C}return{hierarchyCellContentStyle:p,handleCollapsedPaddingBottom:c}}function Gi(e,t,o){const i=n.ref(e.iconField);function r(a,l){if(i.value)return a.raw[e.iconField];let s="";return a.raw[o.value]!==!0?s=t.value.leafnodes:s=a.collapse?t.value.fold:t.value.unfold,s}return{treeNodeIconsClass:r}}function xt(){function e(o,i){const r=o.pre;if(r){const a=o.visible?(r.__fv_data_position__||0)+(r.__fv_data_height__||0):r.__fv_data_position__;o.top=a,i.__fv_data_position__=a}else o.top=0,i.__fv_data_position__=0}function t(o,i,r){if(o){const a=i.parent;i.cellHeight!==o.offsetHeight&&(i.cellHeight=o.offsetHeight),i.cellHeight&&i.cellHeight>(a.height||0)&&(a.height=i.cellHeight,r.__fv_data_height__=a.height),e(a,r)}}return{updateRowPosition:e,updateVisualInfomation:t}}function Hi(e,t,o,i,r,a){const{dataView:l,fold:s,hasRealChildren:c,unFold:p}=i,{collapseField:f,hasChildrenField:d}=r,{updateRowPosition:u}=xt();function S(C,_){const b=_[C].layer;let g=C+1;for(;g<_.length&&_[g].layer>b;)g++;return g-1}function v(C,_){o.value[C].collapse=!o.value[C].collapse,o.value[C].raw[f.value]=o.value[C].collapse,o.value[C].raw[d.value]=c(o.value[C].raw);const b=o.value[C].collapse;let g=!1,V=C;for(;V<o.value.length;){const y=o.value[V];if((typeof y.raw.__fv_parent_index__=="number"?Number(y.raw.__fv_parent_index__):-1)>_)y.visible=!b,y.raw.__fv_visible__=y.visible,y.collapse&&(V=S(V,o.value)),g=!0;else if(g){V++;break}V++}let x=C;for(;x<o.value.length;){const y=o.value[x];u(y,y.raw),x++}}function w(C){if(C.raw[d.value]){const b=typeof C.raw.__fv_parent_index__=="number"?Number(C.raw.__fv_parent_index__):-1;v(Number(C.raw.__fv_index__),b)}}return{toggleTreeNode:w}}function Wi(e,t,o,i,r,a,l,s,c,p,f){const{onClickCell:d}=a,{gridRowClass:u,onClickRow:S,onMouseoverRow:v,onMouseoutRow:w}=s,{clearSelection:C,enableMultiSelect:_,select:b,unSelect:g,isSelectingHirarchyItem:V,multiSelectOnClickRow:x,multiSelectOnlyOnCheck:y,selectItem:N,toggleSelectItem:m}=c;n.ref(e.cellHeight);const h=n.ref(e.treeNodeIconsData||{}),{hasChildrenField:T,shouldShowCheckBox:M,shouldShowIcon:I}=l,{toggleTreeNode:k}=Hi(e,t,i,r,l),{toggleSelectHierarchyItem:F}=p,{cellKey:O,cellPosition:$,rowKey:j,rowPosition:P}=St(e,o),{hierarchyCellContentStyle:B}=Ai(e,i,l),{treeNodeIconsClass:D}=Gi(e,h,T);function G(W,U){const le=W.raw[T.value];return{"fv-tree-node-toggle":le&&W.collapse,"fv-tree-node-toggle-minus":le&&!W.collapse}}function oe(W,U){W.stopPropagation(),k(U)}function ae(W,U){return n.createVNode("div",{class:G(W),onClick:le=>oe(le,W)},null)}function ve(W,U){return I.value&&n.createVNode("div",{id:"treeNodeIcons",class:D(W,U)},null)}function Te(W){_.value?(W.checked?b(W):g(W),F(W)):N(W)}function xe(W,U){return M.value&&n.createVNode(nt.FCheckBox,{id:"checkbox_for_"+O(W,U.index),indeterminate:W.indeterminate,checked:W.checked,"onUpdate:checked":le=>W.checked=le,onChange:()=>Te(W)},null)}function ye(W,U){return n.createVNode("span",{title:U.data},[U.mode===Me.editing?U.getEditor(U):U.formatter?U.formatter(U,W):U.data!=null?U.data.toString():U.data])}function we(W,U,le){return n.createVNode("div",{ref:U.setRef,key:O(W,U.index),class:"fv-grid-hierarchy-cell",style:$(U,le)},[n.createVNode("div",{style:B(W)},[ae(W),ve(W,U),xe(W,U),ye(W,U)])])}function Ne(W,U,le){return n.createVNode("div",{ref:U.setRef,key:O(W,U.index),class:"fv-grid-cell",style:$(U,le),onClick:Q=>d(Q,U)},[U.mode===Me.editing?U.getEditor(U):U.formatter?U.formatter(U,W):U.data!=null?U.data.toString():U.data])}function ie(W,U){return U==="left"&&o.value.leftColumns.length>0&&o.value.leftColumns[0].field===W.field||U==="primary"&&o.value.primaryColumns.length>0&&o.value.primaryColumns[0].field===W.field}function pe(W,U,le="primary"){return n.createVNode("div",{ref:W.setRef,key:j(W),class:u(W),style:P(W),onMouseover:Q=>v(Q,W),onMouseout:Q=>w(Q,W),onClick:Q=>S(Q,W)},[Object.values(W.data).filter(Q=>U[Q.field]&&Q.rowSpan===1).map((Q,me)=>ie(Q,le)?we(W,Q,U):Ne(W,Q,U))])}return{renderDataRow:pe}}function Kt(e,t,o){const{horizontalScrollThumbStyle:i,onMouseDownScrollThumb:r,shouldShowHorizontalScrollbar:a}=o;function l(){return a.value&&n.createVNode("div",{class:"fv-grid-horizontal-scroll"},[n.createVNode("div",{class:"fv-grid-horizontal-scroll-thumb",style:i.value,onMousedown:s=>r(s,t,"horizontal")},null)])}return{renderHorizontalScrollbar:l}}function Li(e,t,o,i,r){const{currentPage:a,pageSize:l,pageList:s,total:c,showPageIndex:p,showPageList:f,mode:d}=r;function u(w){o.navigatePageTo(w),i.resetScroll(),t.emit("pageIndexChanged",w)}function S(w){o.changePageSizeTo(w),i.resetScroll(),t.emit("pageSizeChanged",w)}n.onMounted(()=>{d.value==="server"&&u(1)});function v(){return n.createVNode("div",{class:"fv-datagrid-pagination"},[n.createVNode(Dt,{mode:"default",currentPage:a.value,"onUpdate:currentPage":w=>a.value=w,pageSize:l.value,"onUpdate:pageSize":w=>l.value=w,showPageList:f.value,showPageNumbers:p.value,totalItems:c.value,pageList:s.value,onPageIndexChanged:u,onPageSizeChanged:S},null)])}return{renderDataGridPagination:v}}function Xt(e,t,o,i,r){const{isSelectingHirarchyItem:a,multiSelectOnClickRow:l,multiSelectOnlyOnCheck:s,selectItem:c,toggleSelectItem:p}=o,{onMouseoverRow:f,sidebarRowClass:d}=t,{showRowNumer:u,showSidebarCheckBox:S,sidebarCellPosition:v,rowKey:w,cellKey:C}=i,{gridSideStyle:_}=r;function b(m){m.stopPropagation()}function g(m){return n.createVNode("div",{class:"d-inline-flex "},[n.createVNode("div",{class:"custom-control custom-checkbox f-checkradio-single",style:"margin:0;padding-left:0.5rem"},[n.withDirectives(n.createVNode("input",{id:C(m),title:C(m),type:"checkbox","onUpdate:modelValue":h=>m.checked=h,class:"custom-control-input"},null),[[n.vModelCheckbox,m.checked]]),n.createVNode("label",{class:"custom-control-label",for:C(m),onClick:b},null)])])}function V(m){return n.createVNode("div",{class:"fv-grid-sidebar-row-number justify-content-center",style:"padding:0",onMouseover:h=>f(h,m)},[n.createVNode("div",{title:m.dataIndex,class:{"text-center":!0,"text-truncate":e.rowNumber.showEllipsis,"w-100":e.rowNumber.showEllipsis}},[m.dataIndex])])}function x(m,h,T){a.value?l.value?p(T):c(T):s.value||l.value?p(T):c(T)}function y(m){return(S.value||u.value)&&m.value.map(h=>n.createVNode("div",{key:w(h),class:d(h),style:v(h),onClick:T=>x(T,m,h)},[S.value&&!e.hierarchy&&g(h),u.value&&V(h)]))}function N(m){return n.createVNode("div",{class:"fv-grid-content-side"},[n.createVNode("div",{class:"fv-grid-side",style:_.value},[y(m)])])}return{renderDataGridSidebar:N}}function qi(e,t,o){const{columnContext:i}=o,r=n.ref(e.summary),a=n.computed(()=>{const s=r.value;return s&&s.enable&&s.groupFields&&s.groupFields.length>0});function l(){return a.value&&n.createVNode("div",{class:"fv-datagrid-summary"},[n.createVNode("div",{class:"fv-datagird-summary-panel"},[n.createVNode("span",{class:"fv-datagrid-summary-title"},[n.createTextVNode("当页合计")]),n.createVNode("div",{class:"fv-datagrid-summary-content"},[i.value.summaryColumns.map(s=>n.createVNode("div",{class:"fv-datagrid-summary-field"},[n.createVNode("span",{class:"fv-datagrid-summary-field-title"},[`${s.title}:`]),n.createVNode("span",{class:"fv-datagrid-summary-field-value"},[t.summaries.get(s.field)])]))])])])}return{renderDataGridSummery:l}}function Yt(e,t,o){const{verticalScrollThumbStyle:i,onMouseDownScrollThumb:r,shouldShowVirticalScrollbar:a}=o;function l(){return a.value&&n.createVNode("div",{class:"fv-grid-vertical-scroll"},[n.createVNode("div",{class:"fv-grid-vertical-scroll-thumb",style:i.value,onMousedown:s=>r(s,t,"vertical")},null)])}return{renderVerticalScrollbar:l}}function Ui(){function e(i,r){switch(i.command){case"edit":case"remove":return r.status===Ae.initial;case"accept":case"cancel":return r.status===Ae.editing;default:return!i.hidden}}function t(i,r,a){switch(i.onClick(r,a.dataIndex,a),i.command){case"edit":a.status,Ae.editing;break;case"accept":case"cancel":a.status,Ae.initial;break}}function o(i,r){return n.createVNode("div",null,[i.commands&&i.commands.map(a=>e(a,r)&&n.createVNode(n.resolveComponent("f-button"),{class:"ml-2",type:a.type,size:a.size||"small",onClick:l=>t(a,l,r)},{default:()=>[n.createTextVNode(" "),a.text,n.createTextVNode(" ")]}))])}return{renderCommandColumn:o}}function zi(e){function t(){return n.createVNode("div",{class:"d-flex flex-column f-datagrid-norecords"},[n.createVNode("div",{class:"f-datagrid-norecords-content",style:"margin: 0;width: 100%;position: relative; top: 0"},[n.createTextVNode(" "),e.slots.empty&&e.slots.empty()||"暂无数据"])])}return{renderEmpty:t}}function Jt(e){const t=n.ref(e.minHeight),o=n.ref(e.minWidth),i=n.ref(e.height),r=n.ref(e.width),a=n.computed(()=>i.value<=0?0:Math.max(i.value,t.value)),l=n.computed(()=>r.value<=0?0:Math.max(r.value,o.value));return n.watch([()=>e.height,()=>e.width,()=>e.minHeight,()=>e.minWidth],([c,p,f,d])=>{t.value=Number(f),o.value=Number(d),i.value=Number(c),r.value=Number(p)}),{containerStyleObject:n.computed(()=>({height:a.value>0?`${a.value}px`:e.fit?"100%":"",width:l.value>0?`${l.value}px`:e.fit?"100%":""}))}}function Qt(e){const o={defaultColumnWidth:120,headerDepth:1,leftColumns:[],leftColumnsMap:new Map,leftColumnsWidth:0,leftHeaderColumns:[],primaryColumns:[],primaryColumnsMap:new Map,primaryColumnsWidth:0,primaryHeaderColumns:[],rightColumns:[],rightColumnsMap:new Map,rightColumnsWidth:0,rightHeaderColumns:[],summaryColumns:[]},i=n.ref(o);function r(){i.value={defaultColumnWidth:120,headerDepth:1,leftColumns:[],leftColumnsMap:new Map,leftColumnsWidth:0,leftHeaderColumns:[],primaryColumns:[],primaryColumnsMap:new Map,primaryColumnsWidth:0,primaryHeaderColumns:[],rightColumns:[],rightColumnsMap:new Map,rightColumnsWidth:0,rightHeaderColumns:[],summaryColumns:[]}}const a=n.ref(e.summary),l=n.computed(()=>{const g=a.value;return(g==null?void 0:g.groupFields)||[]});function s(){i.value.rightColumns.forEach(x=>{x.showSetting=!1}),i.value.primaryColumns.forEach(x=>{x.showSetting=!1});const g=i.value.rightColumns.filter(x=>x.visible),V=i.value.primaryColumns.filter(x=>x.visible);g.length>0?g[g.length-1].showSetting=!0:V.length>0&&(V[V.length-1].showSetting=!0)}function c(g){r();const V=new Map;return l.value&&l.value.reduce((x,y)=>(x.set(y,!0),x),V),g.reduce((x,y)=>(y.visible=y.visible!==!1,y.fixed==="left"?(i.value.leftColumns.push(y),i.value.leftColumnsMap.set(y.field,y),i.value.leftColumnsWidth+=y.actualWidth):y.fixed==="right"?(i.value.rightColumns.push(y),i.value.rightColumnsMap.set(y.field,y),i.value.rightColumnsWidth+=y.actualWidth):(i.value.primaryColumns.push(y),i.value.primaryColumnsMap.set(y.field,y),i.value.primaryColumnsWidth+=y.actualWidth),V.has(y.field)&&i.value.summaryColumns.push(y),x),i),s(),i}c(e.columns);const p=n.computed(()=>i.value.leftColumns.length>0),f=n.computed(()=>i.value.rightColumns.length>0);function d(g,V){return V.sortable&&V.sort&&V.sort!=="none"&&g.push(V),g}function u(g,V){return g.sortOrder=g.sortOrder||0,V.sortOrder=V.sortOrder||0,g.sortOrder===V.sortOrder?0:g.sortOrder<V.sortOrder?-1:1}function S(g,V){return g.sortOrder=g.sortOrder||0,V.sortOrder=V.sortOrder||0,g.sortOrder===V.sortOrder?0:g.sortOrder<V.sortOrder?1:-1}function v(g,V){return V.filterable&&g.push(V),g}function w(){const g=[];return i.value.leftColumns.reduce(v,g),i.value.primaryColumns.reduce(v,g),i.value.rightColumns.reduce(v,g),g}function C(){const g=[];i.value.leftColumns.reduce(d,g),i.value.primaryColumns.reduce(d,g),i.value.rightColumns.reduce(d,g);const V=Math.max(...g.map(x=>x.sortOrder||0));return g.sort(S).map(x=>{const y=x.sortOrder||V+1;return x.sortOrder=y,x}).sort(u).map((x,y)=>{const N=y+1;return x.sortOrder=N,x})}function _(g,V,x){const y=g.map(N=>{const m=x.getSorterByColumn(N),h=N.sort==="asc",T=N.sort==="desc",M=h?m.ascend:T?m.decend:void 0;return{field:N.field,compare:M}});V.setSorters(y)}function b(g,V){const x=C();_(x,g,V)}return{applyColumnSorter:b,collectionFilterableColumns:w,applySortableColumns:_,collectionSortableColumns:C,columnContext:i,hasLeftFixedColumn:p,hasRightFixedColumn:f,updateColumnRenderContext:c,updateColumnSettingIcon:s}}const Ki=[{name:"是",value:!0},{name:"否",value:!1}];function Xi(e){return e.filter=e.filter||function(t){return String(e.filterValue).split(",").includes(String(t[e.field]))},n.createVNode("div",null,[n.createVNode(n.resolveComponent("f-checkbox-group"),{modelValue:e.filterValue,"onUpdate:modelValue":t=>e.filterValue=t,"enum-data":Ki},null)])}const Yi=n.ref([{name:"七天",selectable:!0},{name:"一个月",selectable:!0},{name:"三个月",selectable:!0},{name:"半年",selectable:!0}]);function Ji(e){const t=n.ref(!1);return e.filter=e.filter||function(o){const i=new Date(new Date(e.filterValue).toLocaleDateString()).valueOf();return new Date(new Date(o[e.field]).toLocaleDateString()).valueOf()===i},n.createVNode("div",{style:"display:flex;flex-direction:column;"},[n.createVNode("div",{style:"display:flex;margin-bottom:6px;"},[n.createVNode("label",{style:"margin-right:8px"},[n.createTextVNode("按区间筛选")]),n.createVNode(n.resolveComponent("f-switch"),{modelValue:t.value,"onUpdate:modelValue":o=>t.value=o,size:"small"},null)]),n.createVNode(n.resolveComponent("f-date-picker"),{modelValue:e.filterValue,"onUpdate:modelValue":o=>e.filterValue=o},null),n.createVNode(n.resolveComponent("f-tags"),{style:"margin-top:10px",data:Yi.value,selectable:!0,"tag-style":"capsule"},null)])}function Qi(e){e.filter=e.filter||function(o){const i=Number.parseFloat(e.filterValue),r=Number.parseFloat(o[e.field]);return isNaN(i)?isNaN(r):i===r};function t(o){e.filterValue=o}return n.createVNode("div",null,[n.createVNode(n.resolveComponent("f-number-spinner"),{"can-null":!0,precision:"2",value:e.filterValue,onValueChange:t},null)])}function Zi(e,t,o,i,r,a){e.filterHistory=e.filterHistory||r.getFilterHistory(e),e.filter=e.filter||function(u){return(u[e.field]||"").startsWith(e.filterValue)};function l(u,S){r.removeFilterHistory(e,u.name),e.filterHistory=r.getFilterHistory(e)}function s(u){e.filterValue=u.name}function c(u){e.filterHistory=u}const p=i.rawView.value.reduce((u,S,v)=>(u.push(S[e.field]),u),[]),d=[...new Set(p)].map((u,S)=>({id:S,name:u}));return n.createVNode("div",{style:"display:flex;flex-direction:column;"},[n.createVNode(n.resolveComponent("f-search-box"),{modelValue:e.filterValue,"onUpdate:modelValue":u=>e.filterValue=u,"popup-host":t.value,"popup-right-boundary":o.value,"popup-offset-x":a.offsetX,"recommended-data":d},null),n.createVNode(n.resolveComponent("f-tags"),{style:"margin-top:10px","tag-type":"default",data:e.filterHistory,"show-close":!0,selectable:!0,onRemove:l,onSelectionChange:s,onChange:c},null)])}function er(e,t,o,i,r,a){e.filter=e.filter||function(S){return String(e.filterValue).split(",").includes(String(S[e.field]))};const l=",",s=i.rawView.value.reduce((S,v,w)=>(S.push(v[e.field]),S),[]),p=[...new Set(s)].map((S,v)=>({id:v,name:S}));function f(S){return(S==null?void 0:S.split(l))||[]}function d(S){return S.map(w=>w.name).join(l)}function u(S){e.filterValue=d(S)}return n.createVNode(n.resolveComponent("f-list-view"),{data:p,"multi-select":!0,"multi-select-mode":"OnCheckAndClick","id-field":"name",view:"SingleView",header:"Search",size:"Small","selection-values":f(e.filterValue),onSelectChange:S=>u(S)},{default:()=>[n.createTextVNode(" ")]})}function tr(e){n.ref("请输入关键词"),n.ref('<i class="f-icon f-icon-search"></i>');const t=[{name:"发票类型",checked:!1},{name:"发票代码",checked:!1},{name:"开票日期",checked:!1},{name:"票价(燃油附加费)",checked:!1},{name:"税收分类编号",checked:!1},{name:"不含税单价",checked:!1},{name:"往来单位",checked:!1},{name:"商品服务描述",checked:!1},{name:"项目负责人",checked:!1},{name:"所属单位",checked:!1}];return n.createVNode(n.resolveComponent("f-list-view"),{data:t,"multi-select":!0,view:"SingleView",size:"Small"},{default:()=>[n.createTextVNode(" ")]})}function Zt(e,t,o,i,r){const a=new Map([["boolean","boolean-filter"],["date","date-filter"],["datetime","date-filter"],["number","numeric-filter"],["string","text-filter"],["text","text-filter"],["enum","enum-filter"],["reference","list-filter"]]),l=new Map([["boolean-filter",Xi],["date-filter",Ji],["enum-filter",er],["list-filter",tr],["numeric-filter",Qi],["text-filter",Zi]]);function s(c){var u,S;const p=((u=c.column)==null?void 0:u.dataType)||"string",f=((S=c.column)==null?void 0:S.filter)||a.get(p)||"text-editor",d=l.get(f);if(d)return d(c,e,t,o,i,r)}return{getFilterEditor:s}}function en(e){const o=n.ref(e.commandOption.enable||!1),i=n.ref(e.commandOption.commands||[]);function r(a){if(o.value&&!(a.value.findIndex(s=>s.dataType==="commands")>-1)){const s={field:"__commands__",title:"操作",width:120,fixed:"right",dataType:"commands",commands:i.value,visible:!0};a.value.push(s)}}return{applyCommands:r}}function tn(e,t,o,i,r,a,l){const{columnContext:s}=o,{getGridHeaderCells:c}=r,{groupFields:p}=a,f=n.ref(-1),d=n.ref(!1),u=n.computed(()=>p.value&&p.value.map(b=>{var g;return{name:((g=s.value.primaryColumnsMap.get(b))==null?void 0:g.title)||b,value:b}}));function S(b,g,V){var x,y,N;if(b.stopPropagation(),g){const m=`${(x=g.column)==null?void 0:x.title}:${(y=g.column)==null?void 0:y.field}`;(N=b.dataTransfer)==null||N.setData("Text",m),setTimeout(()=>{f.value=V,d.value=!0})}}function v(b,g){if(b.preventDefault(),f.value!==g){const{primaryColumns:V}=s.value,x=V[f.value],y=V;y.splice(f.value,1),y.splice(g,0,x),s.value.primaryHeaderColumns=Array.from(c(y).values()),f.value=g}}function w(b,g){b.preventDefault(),b.dataTransfer&&(b.dataTransfer.dropEffect="move")}function C(b,g){d.value=!1,i.updateDataView(),l.reCalculateVisualDataRows()}function _(b){var V;b.preventDefault(),b.stopPropagation();const g=(V=b.dataTransfer)==null?void 0:V.getData("Text");if(g){const x=g.split(":");x[0];const y=x[1];a.groupFields.value.push(y)}i.updateDataView(),l.reCalculateVisualDataRows()}return{dragstart:S,dragenter:v,dragover:w,dragend:C,dropOnGroupPanel:_,isDragging:d,groupColumnItems:u}}function nn(e,t,o,i,r){const{getGridHeaderCells:a}=r,l=120,s=50,c=n.computed(()=>{var m;return((m=e.rowNumber)==null?void 0:m.enable)||!1}),p=n.computed(()=>{var m,h;return((m=e.selection)==null?void 0:m.multiSelect)||((h=e.selection)==null?void 0:h.showCheckbox)||!1}),f=n.computed(()=>{var m;return 0+(c.value?((m=e.rowNumber)==null?void 0:m.width)||32:0)+(p.value?s:0)}),d=n.computed(()=>{var m;return(m=e.columnOption)==null?void 0:m.fitColumns}),u=n.computed(()=>{var m;return d.value&&((m=e.columnOption)==null?void 0:m.fitMode)||"average"});function S(m,h,T){const M=parseInt(m.width,10)/100;return T*M}function v(m,h,T){return typeof m.width=="string"?S(m,h,T):m.width||l}function w(m,h){const T=[],M=[];let I=0;m.value.primaryColumns.filter(O=>O.visible).forEach(O=>{typeof O.width=="string"?M.push(O):(O.width=O.width||l,I+=O.width,T.push(O))});const k=h*(T.length/m.value.primaryColumns.filter(O=>O.visible).length);T.forEach(O=>{const $=k*(O.width/I);O.actualWidth=$,m.value.primaryColumnsWidth+=O.actualWidth});const F=h-k;M.forEach(O=>{const $=S(O,m.value,F);O.actualWidth=$,m.value.primaryColumnsWidth+=O.actualWidth})}function C(m,h){const T=h/(m.value.primaryColumns.filter(M=>M.visible).length||1);m.value.primaryColumns.filter(M=>M.visible).forEach(M=>{M.actualWidth=T,m.value.primaryColumnsWidth+=M.actualWidth})}function _(m,h){const T=[],M=[],I=new WeakMap;let k=0,F=0;if(m.value.primaryColumns.filter($=>$.visible).forEach($=>{if(typeof $.width=="string"){const j=S($,m.value,h);I.set($,j),k+=j,M.push($)}else $.width=$.width||l,F+=$.width,T.push($)}),h-k>F){const $=h-k;M.forEach(j=>{j.actualWidth=I.get(j)||l,m.value.primaryColumnsWidth+=j.actualWidth}),T.forEach(j=>{j.actualWidth=$*(j.width/F),m.value.primaryColumnsWidth+=j.actualWidth})}else w(m,h)}function b(m,h){m.value.primaryColumns.filter(T=>T.visible).forEach(T=>{T.actualWidth=v(T,m.value,h),m.value.primaryColumnsWidth+=T.actualWidth})}const g={average:C,expand:_,none:b,percentage:w};function V(m){m.value.leftHeaderColumns=Array.from(a(m.value.leftColumns.filter(h=>h.visible)).values()),m.value.primaryHeaderColumns=Array.from(a(m.value.primaryColumns.filter(h=>h.visible)).values()),m.value.rightHeaderColumns=Array.from(a(m.value.rightColumns.filter(h=>h.visible)).values())}function x(m){m.value.leftColumnsWidth=0,m.value.primaryColumnsWidth=0,m.value.rightColumnsWidth=0,m.value.leftColumns.filter(h=>h.visible).forEach(h=>{m.value.leftColumnsWidth+=h.actualWidth||0}),m.value.primaryColumns.filter(h=>h.visible).forEach(h=>{m.value.primaryColumnsWidth+=h.actualWidth||0}),m.value.rightColumns.filter(h=>h.visible).forEach(h=>{m.value.rightColumnsWidth+=h.actualWidth||0}),m.value=Object.assign({},m.value)}function y(m,h,T){var j;let M=0;const I=m.value.primaryColumns,k=m.value.rightColumns;m.value.rightColumns.filter(P=>P.visible).forEach(P=>{P.actualWidth=v(P,m.value,h),M+=P.actualWidth});const F=T-M,O=g[u.value];if(O&&O(m,F),m.value.primaryColumnsWidth+M<=T)return m.value.primaryColumns=[...I,...k],m.value.primaryColumnsWidth+=M,m.value.rightColumns=[],m.value.rightColumnsWidth=0,!0;const $=new Map;return $.set("primary",[]),$.set("right",[]),m.value.primaryColumns.reduce((P,B)=>{var D,G;return B.fixed==="right"?(D=P.get("right"))==null||D.push(B):(G=P.get("primary"))==null||G.push(B),P},$),(j=$.get("right"))!=null&&j.length&&(m.value.primaryColumns=[...$.get("primary")||[]],m.value.rightColumns=[...$.get("right")||[]]),m.value.primaryColumnsWidth=0,m.value.rightColumnsWidth=0,!1}function N(){if(o.value){t.value.leftColumnsWidth=0,t.value.primaryColumnsWidth=0,t.value.rightColumnsWidth=0;const m=o.value.clientWidth-f.value;t.value.leftColumns.filter(T=>T.visible).forEach(T=>{T.actualWidth=v(T,t.value,m),t.value.leftColumnsWidth+=T.actualWidth});const h=m-t.value.leftColumnsWidth;if(y(t,m,h))i.value=h;else{t.value.rightColumns.filter(I=>I.visible).forEach(I=>{I.actualWidth=v(I,t.value,m),t.value.rightColumnsWidth+=I.actualWidth});const T=m-t.value.leftColumnsWidth-t.value.rightColumnsWidth,M=g[u.value];M&&M(t,T),i.value=T}V(t),t.value=Object.assign({},t.value)}}return n.watch(()=>{var m;return(m=e.columnOption)==null?void 0:m.fitColumns},(m,h)=>{m!==h&&m&&N()}),n.watch(u,(m,h)=>{m!==h&&d.value&&N()}),{calculateColumnHeaders:V,calculateColumnsSize:N,calculateColumnsWidth:x}}const on={conditions:{type:Array,default:[]},fields:{type:Array,default:[]},key:{type:String,default:""},isControlInline:{type:Boolean,default:!0}};class nr{constructor(t={value:[]}){q(this,"editorType","check-box");q(this,"value");q(this,"valueType","boolean");this.value=t.value}clear(){this.value=[]}setValue(t){this.value=t}getValue(){return this.value}isEmpty(){return this.value.length===0}}class or{constructor(t={textValue:"",value:"",valueField:""}){q(this,"editorType","combo-lookup");q(this,"textValue");q(this,"value");q(this,"valueField");q(this,"valueType","text");this.textValue=t.textValue,this.value=t.value,this.valueField=t.valueField}clear(){this.value="",this.valueField="",this.textValue=""}getPropValue(t,o){if(o.length>1){const i=o.shift();return t[i]?this.getPropValue(t[i],o):null}return t[o[0]]}getTextValue(t){const o=t.split("."),i=this.value.split(",").map(r=>this.getPropValue(r,Ee.cloneDeep(o)));return i&&i.length?i.join(","):""}getValue(){const t=this.valueField.split("."),o=this.value.split(",").map(i=>this.getPropValue(i,Ee.cloneDeep(t)));return o&&o.length?o.join(","):""}setValue(t){throw new Error("Method not implemented.")}isEmpty(){return!this.valueField}}class ir{constructor(t={value:""}){q(this,"editorType","date-picker");q(this,"value");q(this,"valueType","datetime");this.value=t.value}setValue(t){this.value=t.formatted}getValue(){return this.value}isEmpty(){return!this.value}clear(){this.value=void 0}}class rn{constructor(t={begin:"",end:""}){q(this,"editorType","date-range");q(this,"begin","");q(this,"end","");q(this,"valueType","datetime");this.begin=t.begin,this.end=t.end}clear(){this.begin="",this.end=""}getValue(){return!this.begin||!this.end?"":`${this.begin}~${this.end}`}setValue(t){t.dataRange?(this.begin=t.dataRange.split(t.delimiter)[0],this.end=t.dataRange.split(t.delimiter)[1]):this.clear()}isEmpty(){return!this.begin||!this.end}}class rr{constructor(t={value:""}){q(this,"editorType","datetime-picker");q(this,"value");q(this,"valueType","datetime");this.value=t.value}clear(){this.value=void 0}getValue(){return this.value}setValue(t){this.value=t.formatted}isEmpty(){return!this.value}}class ar{constructor(t={value:"",dispalyText:""}){q(this,"editorType","combo-list");q(this,"value");q(this,"valueType","enum");q(this,"displayText");this.displayText=t.dispalyText,this.value=t.value}clear(){this.value="",this.displayText=""}getValue(){return this.displayText}setValue(t){this.displayText=t.dispalyText,this.value=t.value}isEmpty(){return!this.displayText}}class lr{constructor(t={value:[],displayText:"",displayField:"",isInputText:!1}){q(this,"editorType","input-group");q(this,"value");q(this,"valueType","text");q(this,"displayText");q(this,"valueField");q(this,"isInputText");this.value=t.value,this.displayText=t.displayText,this.valueField=t.displayField,this.isInputText=t.isInputText}clear(){this.value=[],this.displayText="",this.valueField=""}getPropValue(t,o){if(o.length>1){const i=o.shift();return t[i]?this.getPropValue(t[i],o):""}return t[o[0]]}getTextValue(t){const o=t.split("."),i=this.value.map(r=>this.getPropValue(r,Ee.cloneDeep(o)));return i&&i.length?i.join(","):""}getValue(){const t=this.valueField.split(".")||[],o=this.value.map(i=>this.getPropValue(i,Ee.cloneDeep(t)));return o&&o.length?o.join(","):""}setValue(t){throw new Error("Method not implemented.")}isEmpty(){return!this.displayText}}class sr{constructor(t={textValue:"",value:[],valueField:"",isInputText:!1}){q(this,"editorType","lookup");q(this,"textValue");q(this,"value");q(this,"valueField");q(this,"valueType","text");q(this,"isInputText");this.value=t.value,this.valueField=t.valueField,this.textValue=t.textValue,this.isInputText=t.isInputText}clear(){this.value=[],this.valueField="",this.textValue=""}getPropValue(t,o){if(o.length>1){const i=o.shift();return t[i]?this.getPropValue(t[i],o):null}return t[o[0]]}getTextValue(t){const o=t.split("."),i=this.value.map(r=>this.getPropValue(r,o));return i&&i.length?i.join(","):""}getValue(){const t=this.valueField.split("."),o=this.value.map(i=>this.getPropValue(i,t));return o&&o.length?o.join(","):""}setValue(t){throw new Error("Method not implemented.")}isEmpty(){return!this.value.length}}class cr{constructor(t={value:""}){q(this,"editorType","month-picker");q(this,"value");q(this,"valueType","datetime");this.value=t.value}setValue(t){this.value=t.formatted}getValue(){return this.value}clear(){this.value=void 0}isEmpty(){return!this.value}}class dr{constructor(t={begin:"",end:""}){q(this,"editorType","month-range");q(this,"begin");q(this,"end");q(this,"valueType","datetime");this.begin=t.begin,this.end=t.end}clear(){this.begin="",this.end=""}getValue(){return!this.begin||!this.end?"":`${this.begin}~${this.end}`}setValue(t){t.dataRange?(this.begin=t.dataRange.split(t.delimiter)[0],this.end=t.dataRange.split(t.delimiter)[1]):this.clear()}isEmpty(){return!this.begin||!this.end}}class ur{constructor(t={begin:null,end:null}){q(this,"editorType","number-range");q(this,"begin");q(this,"end");q(this,"valueType","number");this.begin=t.begin==null?null:parseFloat(t.begin),this.end=t.end==null?null:parseFloat(t.end)}clear(){this.begin=null,this.end=null}getValue(){return{begin:this.begin,end:this.end}}setValue(t){this.begin=t.begin==null?null:parseFloat(t.begin),this.end=t.end==null?null:parseFloat(t.end)}isEmpty(){return this.begin==null&&this.end==null}}class pr{constructor(t={value:""}){q(this,"editorType","number-spinner");q(this,"value");q(this,"valueType","number");this.value=t.value==null?null:parseFloat(t.value)}clear(){this.value=void 0}getValue(){return this.value}setValue(t){this.value=isNaN(parseFloat(t))?null:t}isEmpty(){return this.value==null}}class fr{constructor(t={value:null}){q(this,"editorType","radio-group");q(this,"value");q(this,"valueType","enum");this.value=t.value}clear(){this.value=void 0}getValue(){return this.value}setValue(t){this.value=t}isEmpty(){return!this.value}}class an{constructor(t={value:""}){q(this,"editorType","text");q(this,"value");q(this,"valueType","text");this.value=t.value}clear(){this.value=void 0}getValue(){return this.value}setValue(t){this.value=t}isEmpty(){return!this.value}}function ln(){function e(t,o){switch(t){case"check-box":return new nr(o);case"combo-list":return new ar(o);case"combo-lookup":return new or(o);case"input-group":return new lr(o);case"date-picker":return new ir(o);case"date-range":return new rn(o);case"datetime-picker":return new rr(o);case"datetime-range":return new rn(o);case"lookup":return new sr(o);case"month-picker":return new cr(o);case"month-range":return new dr(o);case"number-range":return new ur(o);case"number-spinner":return new pr(o);case"radio-group":return new fr(o);default:return new an(o)}}return{createConditionValue:e}}function sn(e,t){const o=n.ref(e.fields),i=n.ref([]),r=new Map,{createConditionValue:a}=ln();function l(f){switch(f.editor?f.editor.type:"input-group"){case"date-range":f.editor.type="date-picker";break;case"datetime-range":f.editor.type="datetime-picker";break;case"number-range":f.editor.type="number-spinner";break}return f.editor}function s(f){return f.map(u=>Object.assign({},u)).map(u=>(u.editor=l(u),u))}function c(f=!0){o.value.reduce((d,u)=>(f||(u.editor=l(u)),d.set(u.labelCode,u),d),r)}function p(f){return f.forEach(d=>{if(d&&typeof d.valueConfig=="object"){const u=r.get(d.fieldCode);d.value=a(u.editor.type,d.valueConfig.content)}}),f}return{convertToSingleControl:s,fields:o,fieldMap:r,fieldConditions:i,loadFieldConfigs:c,initialConditionValue:p}}function mr(e,t,o){const i=n.ref(null),r=n.ref(o),a=n.ref(0),l=n.computed(()=>p(a.value));function s(){r.value&&(i.value=new ResizeObserver(c(f=>{const d=f[0];a.value=d.contentRect.width})),i.value.observe(r.value))}function c(f,d){let u=null;return function(){const S=arguments;u||(u=setTimeout(()=>{u=null},500),f(...S))}}function p(f){let u="col-12";return f>250*6?u="col-2":f>250*4?u="col-3":f>250*3?u="col-4":f>250*2&&(u="col-6"),u}return n.watch([o],([f])=>{r.value=f,s()}),{conditionClass:l,resizeObserver:i}}const cn=n.defineComponent({name:"FConditionFields",props:on,emits:["valueChange","blur","focus","click","input"],setup(e,t){const o=n.ref(),i=n.ref(e.key),r=n.ref(e.isControlInline),a=n.ref(e.conditions),l=sn(e),{initialConditionValue:s,fieldMap:c,loadFieldConfigs:p}=l,f=mr(e,t,o),{conditionClass:d,resizeObserver:u}=f;p(!0),s(a.value),n.onBeforeUnmount(()=>{var _;(_=u.value)==null||_.unobserve(o.value)}),n.watch(()=>e.conditions,()=>{a.value=e.conditions});const S=n.computed(()=>({"f-utils-flex-row-wrap":!0,"farris-form":!0,"farris-form-controls-inline":r.value})),v=n.computed(()=>d.value);function w(_,b){t.emit("valueChange",_,b)}function C(){return a.value.map(_=>{var b;return n.createVNode(ht.FDynamicFormGroup,{customClass:v.value,label:_.fieldName,editor:(b=c.get(_.fieldCode))==null?void 0:b.editor,modelValue:_.value.value,"onUpdate:modelValue":g=>_.value.value=g,onChange:g=>{w(g,_)}},null)})}return()=>n.createVNode("div",{class:S.value,key:i.value,ref:o},[C()])}}),_t=new Map([["appearance",We]]);var dn=(e=>(e.SimpleField="SimpleField",e.ComplexField="ComplexField",e))(dn||{}),it=(e=>(e.String="String",e.DateTime="DateTime",e.Date="Date",e.Enum="Enum",e.Boolean="Boolean",e.Number="Number",e.Text="Text",e.BigNumber="BigNumber",e))(it||{});const gr="root-viewmodel";class hr{constructor(t,o){q(this,"formSchemaUtils");q(this,"controlCreatorUtils");q(this,"designViewModelUtils");this.resolver=t,this.designerHostService=o,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils,this.designViewModelUtils=this.designerHostService.designViewModelUtils}createComponent(t){const o=this.createComponentRefNode(t),i=this.createComponentNode(t),r=this.createViewModeNode(t),a=this.formSchemaUtils.getFormSchema();return a.module.viewmodels.push(r),a.module.components.push(i),this.designViewModelUtils.assembleDesignViewModel(),o}createComponentRefNode(t){const o=this.resolver.getSchemaByType("component-ref");return Object.assign(o,{id:`${t.componentId}-component-ref`,component:`${t.componentId}-component`}),o}createComponentNode(t){const o=this.resolver.getSchemaByType("component"),i=this.createFormComponentContents(t);return Object.assign(o,{id:`${t.componentId}-component`,viewModel:`${t.componentId}-component-viewmodel`,componentType:t.componentType,appearance:{class:this.getFormComponentClass()},formColumns:t.formColumns,contents:i}),o}getFormComponentClass(){return this.formSchemaUtils.getFormSchema().module.templateId==="double-list-in-tab-template"?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-wrapper"}createFormComponentContents(t){const o=this.resolver.getSchemaByType("section");Object.assign(o,{id:t.componentId+"-form-section",appearance:{class:"f-section-form f-section-in-mainsubcard"},mainTitle:t.componentName});const i=this.resolver.getSchemaByType("response-form"),r=[];Object.assign(i,{id:t.componentId+"-form",appearance:{class:"f-form-layout farris-form farris-form-controls-inline"},contents:r}),o.contents=[i];const{selectedFields:a}=t;return a==null||a.forEach(s=>{const c=Ee.cloneDeep(s),p=this.resolveControlClassByFormColumns(t),f=this.controlCreatorUtils.setFormFieldProperty(c,"",p);f&&r.push(f)}),this.formSchemaUtils.getFormSchema().module.templateId==="double-list-in-tab-template"&&(o.appearance.class="f-section-grid f-section-in-main px-0 pt-0",o.fill=!0),[o]}resolveControlClassByFormColumns(t){let o="";switch(t.formColumns){case 1:{o="col-12 col-md-12 col-xl-12 col-el-12";break}case 2:{o="col-12 col-md-6 col-xl-6 col-el-6";break}case 3:{o="col-12 col-md-6 col-xl-4 col-el-4";break}case 4:{o="col-12 col-md-6 col-xl-3 col-el-2";break}}return o}createViewModeNode(t){return{id:`${t.componentId}-component-viewmodel`,code:`${t.componentId}-component-viewmodel`,name:t.componentName,bindTo:t.bindTo,parent:gr,fields:this.assembleViewModelFields(t),commands:[],states:[],enableValidation:!0,pagination:{enable:!1}}}assembleViewModelFields(t){const o=[],{selectedFields:i}=t;return i==null||i.forEach(r=>{let a="blur";const l=r.type.name;(l===it.Enum||l===it.Boolean)&&(a="change"),o.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:a,fieldSchema:{}})}),o}}function yr(e,t,o,i){const r=o.parentComponentInstance;if(r){const l={componentId:`form-${Math.random().toString(36).slice(2,6)}`,componentName:"标题",componentType:"form",formColumns:4,parentContainerId:r.schema.id,bindTo:"/"};return new hr(e,i).createComponent(l)}else return t}Oe({customClass:{type:String,default:""}},{$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/response-form.schema.json",title:"response-form",description:"A Farris Data Collection Component",type:"object",properties:{id:{description:"The unique identifier for a form group",type:"string"},type:{description:"The type string of form group component",type:"string",default:"response-form"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},contents:{description:"",type:"array",default:[]}},required:["id","type"]},_t,yr,{title:"response-form",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}});const un={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/form-group.schema.json",title:"form-group",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a form group",type:"string"},type:{description:"The type string of form group component",type:"string",default:"form-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},enableLinkLabel:{description:"",type:"boolean",default:!1},editor:{description:"",type:"obejct"},label:{description:"",type:"string",default:""},lableWidth:{description:"",type:"number"}},required:["id","type"]},pn={id:{type:String,default:""},customClass:{type:String,default:""},editor:{type:Object,default:{}},label:{type:String,default:""},modelValue:{type:[String,Boolean,Array,Number],default:""},visible:{type:Boolean,default:!0},required:{type:Boolean,default:!1},showLabel:{type:Boolean,default:!0},type:{type:String,default:"input-group"}};Oe(pn,un,_t,void 0);function Vt(e,t,o){var x;function i(){o!=null&&o.resolveComponentContext&&o.resolveComponentContext()}i();const r=o&&o.getStyles&&o.getStyles()||"",a=o&&o.getDesignerClass&&o.getDesignerClass()||"",l=n.ref();function s(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:o&&o.checkCanMoveComponent?o.checkCanMoveComponent():!0}function c(){return!1}function p(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:o&&o.checkCanDeleteComponent?o.checkCanDeleteComponent():!0}function f(){return(t==null?void 0:t.schema.componentType)==="frame"?!0:o&&o.hideNestedPaddingInDesginerView?o.hideNestedPaddingInDesginerView():!1}function d(y){if(!y||!y.value)return null;if(y.value.schema&&y.value.schema.type==="component")return y.value;const N=n.ref(y==null?void 0:y.value.parent),m=d(N);return m||null}function u(y=t){const{componentInstance:N,designerItemElementRef:m}=y;return!N||!N.value?null:N.value.canMove?m:u(y.parent)}function S(y){return!!o&&o.canAccepts(y)}function v(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function w(){}function C(y,N){N&&o!=null&&o.onAcceptMovedChildElement&&o.onAcceptMovedChildElement(N)}function _(y,N){const{componentType:m}=y;let h=bt(m,y,N);o&&o.onResolveNewComponentSchema&&(h=o.onResolveNewComponentSchema(y,h));const T=m.toLowerCase().replace("-","_");return h&&!h.id&&h.type===m&&(h.id=`${T}_${Math.random().toString().slice(2,6)}`),h}function b(y,N){const m=String(y.getAttribute("data-controltype")),h=y.getAttribute("data-feature"),T=h?JSON.parse(h):{};T.parentComponentInstance=l.value;let M=bt(m,T);o&&o.onAcceptNewChildElement&&(M=o.onAcceptNewChildElement(y,N,M));const I=m.toLowerCase().replace("-","_");return M&&!M.id&&M.type===m&&(M.id=`${I}_${Math.random().toString().slice(2,6)}`),M}function g(y){}function V(...y){if(o&&o.getPropsConfig)return o.getPropsConfig(...y)}return l.value={canMove:s(),canSelectParent:c(),canDelete:p(),canNested:!f(),contents:t==null?void 0:t.schema.contents,elementRef:e,parent:(x=t==null?void 0:t.parent)==null?void 0:x.componentInstance,schema:t==null?void 0:t.schema,styles:r,designerClass:a,canAccepts:S,getBelongedComponentInstance:d,getDraggableDesignItemElement:u,getDraggingDisplayText:v,getPropConfig:V,getDragScopeElement:w,onAcceptMovedChildElement:C,onAcceptNewChildElement:b,onChildElementMovedOut:g,addNewChildComponentSchema:_,updateDragAndDropRules:i,triggerBelongedComponentToMoveWhenMoved:!!o&&o.triggerBelongedComponentToMoveWhenMoved||n.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!o&&o.triggerBelongedComponentToDeleteWhenDeleted||n.ref(!1)},l}const vr={id:{type:String},required:{type:Boolean,default:!1},text:{type:String,default:""},title:{type:String}},br=n.defineComponent({name:"FDynamicFormLabel",props:vr,emits:[],setup(e,t){const o=n.ref(e.title||e.text),i=n.ref(e.required),r=n.ref(e.text);return n.watch(()=>e.text,()=>{r.value=e.text}),n.watch(()=>e.required,(a,l)=>{a!==l&&(i.value=a)}),()=>n.createVNode("label",{class:"col-form-label",title:o.value},[i.value&&n.createVNode("span",{class:"farris-label-info text-danger"},[n.createTextVNode("*")]),n.createVNode("span",{class:"farris-label-text"},[r.value])])}}),Cr=new Map([["appearance",We]]);function wr(e,t,o){return t}const Sr={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/input-group.schema.json",title:"input-group",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"input-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},editable:{description:"",type:"boolean",default:!0},enableLinkLabel:{description:"",type:"boolean",default:!1},label:{description:"",type:"string",default:""},labelWidth:{description:"",type:"number"},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},disabled:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},tabIndex:{description:"",type:"number",default:-1},textAlign:{description:"",type:"enum",enum:["left","middle","right"],default:"left"},visible:{description:"",type:"boolean",default:!0},onBlur:{description:"",type:"string",default:""},onClickLinkLabel:{description:"",type:"sting",default:""},addonDisabled:{description:"",type:"boolean",default:!1},addonContent:{description:"",type:"string",default:""},autoHeight:{description:"",type:"boolean",default:!1},enableAddon:{description:"",type:"boolean",default:!1},addonType:{description:"",type:"string",enum:["button","static"],default:"button"},enableClear:{description:"",type:"boolean",default:!0},enableViewPassword:{description:"",type:"boolean",default:!1},inputType:{description:"",type:"string",enum:["input","password","text"],default:"input"},maxHeight:{description:"",type:"number",default:500},popUp:{description:"",type:"object",properties:{footerButtons:{type:"array",default:[]},height:{type:"number",default:600},dataMapping:{type:"object"},contents:{type:"array",default:[]},showMaxButton:{type:"boolean",default:!0},showCloseButton:{type:"boolean",default:!0},showFooter:{type:"boolean",default:!0},title:{type:"string",default:""},width:{type:"number",default:800}}},showButtonWhenDisabled:{description:"",type:"boolean",default:!1},onClear:{description:"",type:"string",default:""}},required:["id","type"]},fn={autocomplete:{Type:String,default:"off"},customClass:{Type:String,default:""},disabled:{Type:Boolean,default:!1},editable:{Type:Boolean,default:!0},enableClear:{Type:Boolean,default:!0},enableTitle:{Type:Boolean,default:!0},enableViewPassword:{Type:Boolean,default:!0},forcePlaceholder:{Type:Boolean,default:!1},groupText:{Type:String,default:""},type:{Type:String,default:"text"},max:{type:[Number,String]},min:{type:[Number,String]},maxLength:{Type:Number||void 0,default:void 0},minLength:{Type:Number||void 0,default:void 0},modelValue:{Type:String||Boolean,default:""},showBorder:{Type:Boolean,default:!0},step:{Type:Number,default:1},placeholder:{Type:String,default:""},precision:{Type:Number,default:0},readonly:{Type:Boolean,default:!1},showButtonWhenDisabled:{Type:Boolean,default:!1},tabIndex:{Type:Number||void 0,default:void 0},textAlign:{Type:String,default:"left"},useExtendInfo:{Type:Boolean,default:!1},extendInfo:{Type:String,default:""},value:{Type:String,default:""},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1},updateOn:{type:String,default:"blur"}};Oe(fn,Sr,Cr,wr);function xr(e,t,o,i){const r=n.ref(e.disabled),a=n.ref(!1),l=n.ref("text"),s=n.ref(e.showBorder),c=n.ref(e.textAlign),p=n.ref(e.updateOn),f=n.computed(()=>e.editable||!e.readonly),d=n.computed(()=>e.editable&&!e.disabled&&!e.readonly),u=n.computed(()=>!e.disabled&&a.value),S=n.computed(()=>o.value===""||o.value===null||o.value===void 0),v=n.computed(()=>(e.disabled||e.readonly)&&!e.forcePlaceholder?"":e.placeholder),w=n.computed(()=>e.readonly||!e.editable),C=n.computed(()=>e.enableTitle?o.value:""),_=n.computed(()=>({"form-control":!0,"f-utils-fill":!0,"text-left":c.value==="left","text-center":c.value==="center","text-right":c.value==="right"})),b=n.computed(()=>{const k={"f-cmp-inputgroup":!0,"input-group":!0,"f-state-disable":r.value,"f-state-editable":d.value,"f-state-readonly":w.value,"f-state-focus":u.value};return(e.customClass||"").split(" ").reduce((O,$)=>(O[$]=!0,O),k),k}),g=n.computed(()=>s.value?"":"border-width : 0 ");function V(k,F=!0){o.value=k,i.value!==k&&(i.value=k),F&&t.emit("change",k),t.emit("update:modelValue",k),t.emit("update:value",k)}n.watch(()=>e.modelValue,(k,F)=>{k!==F&&(o.value=k,i.value=k)}),n.watch(()=>e.disabled,(k,F)=>{k!==F&&(r.value=k)});function x(k){return a.value=!1,t.emit("blur",k),k.stopPropagation(),!1}function y(k){t.emit("click",k)}function N(k){e.disabled||(s.value&&(a.value=!0),f.value&&t.emit("focus",k))}function m(k){t.emit("input",k.target.value);const F=k.target.value;i.value=F,p.value==="input"&&(t.emit("update:modelValue",F),t.emit("update:value",F))}function h(k){t.emit("keydown",k)}function T(k){t.emit("keyup",k)}function M(k){k.target.tagName!=="INPUT"&&k.preventDefault(),k.stopPropagation()}function I(k){if(p.value==="blur"){const F=k.target.value;k.stopPropagation(),V(F)}}return{changeTextBoxValue:V,disabled:r,displayText:i,editable:d,hasFocused:u,inputGroupClass:b,inputType:l,isEmpty:S,modelValue:o,readonly:w,onBlur:x,onClick:y,onFocus:N,onInput:m,onKeydown:h,onKeyup:T,onMousedown:M,onTextBoxValueChange:I,placeholder:v,textBoxClass:_,textBoxTitle:C,inputGroupStyle:g}}function _r(e,t,o){const i=n.ref(!1),r=n.computed(()=>e.enableClear&&!e.readonly&&!e.disabled),{changeTextBoxValue:a,displayText:l,hasFocused:s,isEmpty:c}=o;function p(w){i.value=w}n.watch(l,()=>{s!=null&&s.value?p(!!(l!=null&&l.value)):p(!1)});const f=n.computed(()=>({"input-group-text":!0,"input-group-clear":!0})),d=n.computed(()=>({width:"24px",display:i.value?"flex":"none"}));function u(w){w.stopPropagation(),r.value&&(a("",!0),p(!i.value),t.emit("clear"))}function S(w){r.value&&!c.value&&p(!0)}function v(w){r.value&&p(!1)}return{clearButtonClass:f,clearButtonStyle:d,hasShownClearButton:i,onClearValue:u,onMouseEnter:S,onMouseLeave:v,shouldShowClearButton:r}}const Vr=["moz","ms","webkit"];function Fr(){let e=0;return t=>{const o=new Date().getTime(),i=Math.max(0,16-(o-e)),r=setTimeout(()=>{t(o+i)},i);return e=o+i,r}}function Nr(){if(typeof window>"u")return()=>0;if(window.requestAnimationFrame)return window.requestAnimationFrame.bind(window);const e=Vr.filter(t=>`${t}RequestAnimationFrame`in window)[0];return e?window[`${e}RequestAnimationFrame`]:Fr()}Nr();const kr=e=>{const t=e;return t.install=function(o){o.component(t.name,e)},e},Tr={checked:{type:Boolean,default:!1},mode:{type:String,default:"default"},type:{type:String,default:"secondary"},size:{type:String,default:"middle"}};function Ir(e,t){const o=n.ref(e.groupText),i=n.computed(()=>e.showButtonWhenDisabled&&(e.readonly||e.disabled)),r=n.computed(()=>e.enableClear||!!e.groupText);return{appendedButtonClass:n.computed(()=>({"input-group-append":!0,"append-force-show":i.value})),appendedContent:o,shouldShowAppendedButton:r}}function Mr(e,t,o,i){const{appendedContent:r}=i,a=n.ref(e.enableViewPassword),l=n.computed(()=>e.type==="password"),s='<span class="f-icon f-icon-eye" style="color: rgb(56, 143, 255);"></span>',c='<span class="f-icon f-icon-eye"></span>',p=n.ref(!1);n.watch(()=>[e.readonly,e.disabled],([u,S])=>{l.value&&(o.value=u||S?"password":o.value,r.value=u||S?c:r.value)});function f(){return p.value=!p.value,o.value=p.value?"text":"password",r.value=p.value?s:c,!1}function d(){o.value=l.value?"password":"text",r.value=l.value?a.value?c:"":r.value}return d(),{isPassword:l,onClickAppendedButton:f}}function Or(e,t,o){const i=n.ref(),{onBlurTextBox:r,onFocusTextBox:a,onInput:l,onKeyDown:s,textBoxValue:c}=o,p=n.computed(()=>e.disabled||e.readonly||!e.editable?"":e.placeholder),f=n.computed(()=>({"form-control":!0,"f-utils-fill":!0})),d=n.computed(()=>({"text-align":e.textAlign}));function u(w){w.stopPropagation()}function S(){e.selectOnCreated,e.focusOnCreated}async function v(w){a(w),await n.nextTick,S()}return n.onMounted(async()=>{await n.nextTick,S()}),()=>n.createVNode("input",{ref:i,class:f.value,style:d.value,type:"text",value:c.value,disabled:e.disabled,readonly:e.readonly||!e.editable,placeholder:p.value,onBlur:r,onChange:u,onFocus:v,onInput:l,onKeydown:s},null)}function $r(e,t,o){const{canDownward:i,canUpward:r,onClickDownButton:a,onClickUpButton:l}=o,s=n.computed(()=>({"input-group-append":!0,"btn-group":!0,"btn-group-number":!0})),c=n.computed(()=>({btn:!0,"btn-secondary":!0,"btn-number-flag":!0})),p=n.computed(()=>({cursor:r()?"pointer":"not-allowed","margin-left":0})),f=n.computed(()=>({cursor:i()?"pointer":"not-allowed","margin-left":0}));return()=>n.createVNode("div",{class:s.value},[n.createVNode("button",{title:"upButton",class:c.value,style:p.value,onClick:l,disabled:!r()},[n.createVNode("span",{class:"f-icon f-icon-arrow-chevron-up number-arrow-chevron"},null)]),n.createVNode("button",{title:"downButton",class:c.value,style:f.value,onClick:a,disabled:!i()},[n.createVNode("span",{class:"f-icon f-icon-arrow-chevron-down number-arrow-chevron"},null)])])}function Br(e,t){const o=ot.useNumber(e,t),i=ot.useFormat(e,t,o),r=ot.useSpinner(e,t,i,o),a=ot.useTextBox(e,t,i,o,r),l=$r(e,t,r),{displayValue:s,modelValue:c,getRealValue:p}=o,f=Or(e,t,a),{format:d}=i,{isFocus:u}=a,S=n.computed(()=>!e.disabled&&!e.readonly);return n.onMounted(()=>{const v=p(e.modelValue);s.value=d(v)}),n.watch(()=>[e.value],([v])=>{const w=p(v);c.value=w,s.value=d(w)}),n.watch(()=>[e.modelValue],([v])=>{v!==c.value&&(c.value=v,!u.value&&(s.value=d(p(v))))}),n.watch(()=>[e.precision,e.useThousands,e.prefix,e.suffix,e.showZero],()=>{s.value=d(c.value)}),()=>n.createVNode("div",{class:"input-group f-state-hover flex-row f-cmp-number-spinner"},[f(),S.value&&l()])}function jr(e,t,o,i){const r=n.ref(),a=n.ref(e.autocomplete),l=n.ref(e.enableTitle),{isPassword:s}=o,c=n.ref(e.minLength),p=n.ref(e.maxLength),f=n.ref(e.tabIndex),{disabled:d,displayText:u,inputType:S,onBlur:v,onFocus:w,onInput:C,onClick:_,onKeydown:b,onKeyup:g,onMousedown:V,onTextBoxValueChange:x,readonly:y,placeholder:N,textBoxClass:m,textBoxTitle:h}=i;return n.onMounted(()=>{e.selectOnCreated,e.focusOnCreated}),()=>n.createVNode("input",{ref:r,name:"input-group-value",autocomplete:a.value,class:m.value,disabled:d==null?void 0:d.value,maxlength:p.value,minlength:c.value,placeholder:N.value,readonly:y==null?void 0:y.value,tabindex:f.value,title:l.value&&!s.value?h.value:"",type:S.value,value:u==null?void 0:u.value,onBlur:v,onClick:_,onChange:x,onFocus:w,onInput:C,onKeydown:b,onKeyup:g,onMousedown:V},null)}function Pr(e,t){const o=n.computed(()=>e.useExtendInfo&&!!e.extendInfo),i=n.reactive({content:e.extendInfo});function r(){t.emit("updateExtendInfo")}return()=>o.value&&n.withDirectives(n.createVNode("span",{class:"input-group-before-tips",onMouseenter:r},[n.createVNode("i",{class:"f-icon f-icon-info-circle"},null),n.createVNode("b",{class:"tips-arrow"},null)]),[[n.resolveDirective("tooltip"),i]])}function Dr(e,t,o,i,r){const{appendedButtonClass:a,appendedContent:l}=o,s=n.computed(()=>e.showButtonWhenDisabled&&(!e.editable||!e.readonly)&&!e.disabled),c=n.computed(()=>l.value&&!t.slots.groupTextTemplate),p=n.computed(()=>!!t.slots.groupTextTemplate),{clearButtonClass:f,clearButtonStyle:d,onClearValue:u,shouldShowClearButton:S}=i;function v(){return n.createVNode("span",{id:"clearIcon",class:f.value,style:d.value,onClick:N=>u(N)},[n.createVNode("i",{class:"f-icon modal_close"},null)])}function w(N){t.emit("iconMouseEnter",N)}function C(N){t.emit("iconMouseLeave",N)}function _(N){s.value&&t.emit("clickHandle",{originalEvent:N}),N.stopPropagation()}const b=e.type==="password"?r.onClickAppendedButton:_;function g(){return n.createVNode("span",{class:"input-group-text",onMouseenter:N=>w(N),onMouseleave:N=>C(N),innerHTML:l.value,onClick:N=>b(N)},null)}function V(){return t.slots.groupTextTemplate&&t.slots.groupTextTemplate()}function x(){return c.value?g:p.value?V:""}const y=x();return()=>n.createVNode("div",{class:a.value},[S.value&&v(),y&&y()])}const Er=n.defineComponent({name:"FInputGroup",props:fn,emits:["clear","change","blur","click","clickHandle","focus","input","keydown","keyup","iconMouseEnter","iconMouseLeave","update:modelValue","update:value","updateExtendInfo","valueChange"],setup(e,t){const o=n.ref(e.modelValue),i=n.ref(e.modelValue),r=xr(e,t,o,i),{inputGroupClass:a,inputType:l,inputGroupStyle:s}=r,c=Ir(e),{shouldShowAppendedButton:p}=c,f=_r(e,t,r),{onMouseEnter:d,onMouseLeave:u}=f,S=Mr(e,t,l,c),v=Br(e,t),w=jr(e,t,S,r),C=Dr(e,t,c,f,S),_=Pr(e,t),b=n.computed(()=>e.type==="number");n.watch(()=>[e.value],([V])=>{o.value=V,i.value=V}),n.watch(()=>[e.modelValue],([V])=>{o.value=V,i.value=V}),n.onMounted(()=>{e.value&&(o.value=e.value,i.value=e.value)});const g=()=>n.createVNode(n.Fragment,null,[n.createVNode("div",{id:"inputGroup",class:a.value,style:s.value,onMouseenter:d,onMouseleave:u},[b.value?v():n.createVNode(n.Fragment,null,[_(),w(),p.value&&C()])])]);return()=>g()}}),z={},K={},Y={},J={};let mn=!1;function Rr(){mn||(mn=!0,ao.register(z,K,Y,J),ro.register(z,K,Y,J),lo.register(z,K,Y,J),so.register(z,K,Y,J),co.register(z,K,Y,J),uo.register(z,K,Y,J),nt.register(z,K,Y,J),yt.register(z,K,Y,J),po.register(z,K,Y,J),fo.register(z,K,Y,J),go.register(z,K,Y,J),mo.register(z,K,Y,J),ho.register(z,K,Y,J),yo.register(z,K,Y,J),vo.register(z,K,Y,J),ht.register(z,K,Y,J),bo.register(z,K,Y,J),Pt.register(z,K,Y,J),Co.register(z,K,Y,J),wo.register(z,K,Y,J),So.register(z,K,Y,J),xo.register(z,K,Y,J),Vo.register(z,K,Y,J),_o.register(z,K,Y,J),Fo.register(z,K,Y,J),No.register(z,K,Y,J),ko.register(z,K,Y,J),To.register(z,K,Y,J),ot.register(z,K,Y,J),io.register(z,K,Y,J),Io.register(z,K,Y,J),Mo.register(z,K,Y,J),Dt.register(z,K,Y,J),Oo.register(z,K,Y,J),$o.register(z,K,Y,J),Bo.register(z,K,Y,J),jo.register(z,K,Y,J),Do.register(z,K,Y,J),Eo.register(z,K,Y,J),Po.register(z,K,Y,J),Zo.register(z,K,Y),Ro.register(z,K,Y,J),Ao.register(z,K,Y,J),Go.register(z,K,Y,J),Ho.register(z,K,Y,J),Wo.register(z,K,Y,J),Lo.register(z,K,Y,J),oo.register(z,K,Y,J),jt.register(z,K,Y,J),qo.register(z,K,Y,J),Uo.register(z,K,Y,J),no.register(z,K,Y,J),zo.register(z,K,Y,J),Xo.register(z,K,Y,J),Ko.register(z,K,Y,J),Yo.register(z,K,Y,J),Jo.register(z,K,Y,J),Qo.register(z,K,Y,J),ei.register(z,K,Y,J))}function Ar(){Rr();function e(r,a){const l=K[r];return l?l(a):{}}function t(r){return z[r]||Er}function o(r){switch(r){case"check-box":return"onChangeValue";case"switch":return"onModelValueChanged";case"check-group":return"onChangeValue";case"combo-list":case"combo-tree":return"onChange";case"combo-lookup":return"";case"date-picker":return"onDatePicked";case"date-range":return"";case"datetime-picker":return"";case"datetime-range":return"";case"month-picker":return"";case"month-range":return"";case"year-picker":return"";case"year-range":return"";case"input-group":return"onChange";case"lookup":return"";case"number-range":return"onValueChange";case"number-spinner":return"onValueChange";case"radio-group":return"onChangeValue";case"text":return"";case"response-layout-editor-setting":return"onChange";case"events-editor":return"onSavedCommandListChanged";case"grid-field-editor":return"onChange";case"field-selector":return"onFieldSelected";case"schema-selector":return"onSchemaSelected";case"mapping-editor":return"onMappingFieldsChanged";case"textarea":return"onValueChange"}}function i(r){switch(r){case"combo-list":case"input-group":case"textarea":return"onClear"}}return{resolveEditorProps:e,resolveEditorType:t,getChangeFunctionName:o,getClearFunctionName:i}}const Gr=n.defineComponent({name:"FDynamicFormGroup",props:pn,emits:["change","update:modelValue"],setup(e,t){const o=n.ref(e.id),i=n.ref(e.customClass),r=n.ref(e.editor),a=n.ref(e.label),l=n.ref(e.modelValue),s=n.ref(e.readonly),c=n.ref(e.required),p=n.ref(e.showLabel),f=n.ref(e.visible);n.ref(e.type);const d=n.ref(),{resolveEditorProps:u,resolveEditorType:S,getChangeFunctionName:v,getClearFunctionName:w}=Ar(),C=n.computed(()=>({"form-group":!0,"farris-form-group":!0,"common-group":!0,"q-state-readonly":s.value}));function _(V,x){l.value=x!==void 0?x:V,t.emit("update:modelValue",l.value),t.emit("change",l.value)}function b(){t.emit("update:modelValue","")}const g=n.computed(()=>{const V=r.value.type||"input-group",x=S(V),y=u(V,r.value),N=v(V),m=w(r.value.type);return y[N]=_,y[m]=b,()=>n.createVNode(x,n.mergeProps({ref:d},y,{modelValue:l.value,"onUpdate:modelValue":h=>l.value=h}),null)});return n.watch([()=>e.id,()=>e.customClass,()=>e.editor,()=>e.label,()=>e.modelValue,()=>e.readonly,()=>e.required,()=>e.showLabel,()=>e.visible],([V,x,y,N,m,h,T,M,I])=>{o.value=V,i.value=x,r.value=y,a.value=N,l.value=m,s.value=h,c.value=T,p.value=M,f.value=I}),t.expose({editorRef:d}),()=>f.value&&n.createVNode("div",{id:`${o.value}-input-group`,class:i.value},[n.createVNode("div",{class:"farris-group-wrap"},[n.createVNode("div",{class:C.value},[p.value&&n.createVNode(br,{id:`${o.value}-lable`,required:c.value,text:a.value,title:a.value},null),n.createVNode("div",{class:"farris-input-wrap"},[g.value()])])])])}}),Hr={},Wr={};class dt{constructor(t,o){q(this,"componentId");q(this,"viewModelId");q(this,"eventsEditorUtils");q(this,"formSchemaUtils");q(this,"formMetadataConverter");q(this,"designViewModelUtils");q(this,"designViewModelField");q(this,"controlCreatorUtils");q(this,"designerHostService");q(this,"schemaService",null);q(this,"metadataService",null);q(this,"propertyConfig",{type:"object",categories:{}});var i;this.componentId=t,this.designerHostService=o,this.eventsEditorUtils=o.eventsEditorUtils,this.formSchemaUtils=o.formSchemaUtils,this.formMetadataConverter=o.formMetadataConverter,this.viewModelId=((i=this.formSchemaUtils)==null?void 0:i.getViewModelIdByComponentId(t))||"",this.designViewModelUtils=o.designViewModelUtils,this.controlCreatorUtils=o.controlCreatorUtils,this.metadataService=o.metadataService,this.schemaService=o.schemaService}getTableInfo(){var t;return(t=this.schemaService)==null?void 0:t.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(t){const o=t.binding&&t.binding.type==="Form"&&t.binding.field;if(o){if(!this.designViewModelField){const i=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=i.fields.find(r=>r.id===o)}t.updateOn=this.designViewModelField.updateOn}}changeFieldEditorType(t,o){}getBasicPropConfig(t){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",data:[{value:t.type,name:Z[t.type].name}]}}}}}getAppearanceConfig(t=null){return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"}}}}}const et=class et{static getEditorTypesByMDataType(t){const o=et.fieldControlTypeMapping[t];return o||[{key:"",value:""}]}static getAllInputTypes(){const t=[];for(let o in et.fieldControlTypeMapping)et.fieldControlTypeMapping[o].forEach(i=>{t.find(r=>r.key===i.key&&r.value===i.value)||t.push({key:i.key,value:i.value})});return t}};q(et,"fieldControlTypeMapping",{String:[{key:Z["input-group"].type,value:Z["input-group"].name},{key:Z.lookup.type,value:Z.lookup.name},{key:Z["date-picker"].type,value:Z["date-picker"].name},{key:Z["check-box"].type,value:Z["check-box"].name},{key:Z["radio-group"].type,value:Z["radio-group"].name},{key:Z["combo-list"].type,value:Z["combo-list"].name},{key:Z.textarea.type,value:Z.textarea.name}],Text:[{key:Z.textarea.type,value:Z.textarea.name},{key:Z.lookup.type,value:Z.lookup.name}],Decimal:[{key:Z["number-spinner"].type,value:Z["number-spinner"].name}],Integer:[{key:Z["number-spinner"].type,value:Z["number-spinner"].name}],Number:[{key:Z["number-spinner"].type,value:Z["number-spinner"].name}],BigNumber:[{key:Z["number-spinner"].type,value:Z["number-spinner"].name}],Date:[{key:Z["date-picker"].type,value:Z["date-picker"].name}],DateTime:[{key:Z["date-picker"].type,value:Z["date-picker"].name}],Boolean:[{key:Z.switch.type,value:Z.switch.name},{key:Z["check-box"].type,value:Z["check-box"].name}],Enum:[{key:Z["combo-list"].type,value:Z["combo-list"].name},{key:Z["radio-group"].type,value:Z["radio-group"].name}],Object:[{key:Z.lookup.type,value:Z.lookup.name},{key:Z["combo-list"].type,value:Z["combo-list"].name},{key:Z["radio-group"].type,value:Z["radio-group"].name}]});let rt=et;const ut=n.ref(0);function Lr(e,t){const o=t.getBoundingClientRect(),i=e.getBoundingClientRect(),r=i.top>=o.top,a=i.top<=o.bottom;return r&&a}function qr(e){if(!e)return;let t;if(e.className.includes("dgComponentSelected")?t=e:t=e.querySelector(".dgComponentSelected"),!t)return;const o=t.getBoundingClientRect();if(o.width===0&&o.height===0)return;const i=t.querySelector(".component-btn-group");if(i){if(!Lr(t,e)){i.style.display="none";return}i.style.display="";const a=i.getBoundingClientRect(),l=i.querySelector("div");if(l){const s=l.getBoundingClientRect();l.style.top=a.top+"px",l.style.left=a.left-s.width+"px"}}}class Re extends dt{constructor(t,o){super(t,o)}getPropertyConfig(t,o){return this.propertyConfig.categories.basic=this.getBasicProperties(t,o),this.propertyConfig.categories.appearance=this.getAppearanceProperties(t),this.propertyConfig.categories.editor=this.getEditorProperties(t),this.propertyConfig}getBasicProperties(t,o){var l;var i=this;this.setDesignViewModelField(t);const r=this.formSchemaUtils.getFormMetadataBasicInfo(),a=this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId);return{description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"编辑器类型",title:"编辑器类型",type:"string",refreshPanelAfterChanged:!0,$converter:"/converter/change-editor.converter",editor:{type:"combo-list",textField:"value",valueField:"key",editable:!1,data:i.designViewModelField?rt.getEditorTypesByMDataType((l=i.designViewModelField.type)==null?void 0:l.name):rt.getAllInputTypes()}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},binding:{description:"绑定的表单字段",title:"绑定",$converter:"/converter/field-selector.converter",editor:{type:"field-selector",bindingType:{enable:!1},editorParams:{propertyData:t,formBasicInfo:r},columns:[{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],textField:"bindingField",data:a}}},setPropertyRelates(s,c){if(s)switch(s&&s.propertyID){case"type":{i.changeControlType(t,s,o);break}case"label":{s.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(t){return{title:"样式",description:"Appearance",properties:{class:{title:"class样式",type:"string",description:"组件的CSS样式",$converter:"/converter/appearance.converter"},style:{title:"style样式",type:"string",description:"组件的样式",$converter:"/converter/appearance.converter"},responseLayout:{description:"响应式列宽",title:"响应式列宽",type:"boolean",visible:!1,editor:{type:"response-layout-editor-setting"},$converter:"/converter/response-form-layout.converter"}}}}getEditorProperties(t){return this.getComponentConfig(t)}changeControlType(t,o,i){var p,f,d,u;const r=o.propertyValue,a=i&&i.parent&&i.parent.schema;if(!a)return;const l=a.contents.findIndex(S=>S.id===t.id),s=a.contents[l];let c;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:r},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),c=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,r)),c||(c=gt.getSchemaByType("form-group")||{},c.editor=gt.getSchemaByType(r)||{},delete c.editor.id,delete c.editor.binding,delete c.editor.appearance),Object.assign(c,{id:s.id,appearance:s.appearance,size:s.size,label:s.label,binding:s.binding,visible:s.visible}),Object.assign(c.editor,{isTextArea:c.isTextArea&&s.isTextArea,placeholder:(p=s.editor)==null?void 0:p.placeholder,holdPlace:(f=s.editor)==null?void 0:f.holdPlace,readonly:(d=s.editor)==null?void 0:d.readonly,require:(u=s.editor)==null?void 0:u.require}),a.contents.splice(l,1),a.contents.splice(l,0,c),i.schema=Object.assign(s,c),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(S=>S.classList.remove("dgComponentSelected")),ut.value++}getComponentConfig(t,o={},i={}){const r=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},o),a=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},i);return{...r,properties:{...a}}}}class Ur extends Re{constructor(t,o){super(t,o)}}Oe({id:{type:String,default:""},editor:{type:Object,default:{}},modelValue:{type:[String,Boolean,Array,Number],default:""},focusOnCreated:{type:Boolean,default:!1},selectOnCreated:{type:Boolean,default:!1}},un,_t,void 0);var gn=(e=>(e[e.Value=0]="Value",e[e.SmartHelp=1]="SmartHelp",e[e.Enum=2]="Enum",e[e.Express=3]="Express",e))(gn||{}),hn=(e=>(e.Equal="0",e.NotEqual="1",e.Greater="2",e.GreaterOrEqual="3",e.Less="4",e.LessOrEqual="5",e.Like="6",e.LikeStartWith="7",e.LikeEndWith="8",e))(hn||{});const zr=[{value:"0",name:"等于"},{value:"1",name:"不等于"},{value:"2",name:"大于"},{value:"3",name:"大于等于"},{value:"4",name:"小于"},{value:"5",name:"小于等于"},{value:"6",name:"包含"},{value:"7",name:"开始是"},{value:"8",name:"结束是"}],Kr={"button-edit":["0","1"," 6","7","8"],"check-box":["0"],"combo-list":["0","1"],"combo-lookup":["0","1"," 6","7","8"],"date-picker":["0","1","2","3","4","5"],"date-range":[],"datetime-picker":["0","1","2","3","4","5"],"datetime-range":[],"month-picker":["0","1","2","3","4","5"],"month-range":[],"year-picker":["0","1","2","3","4","5"],"year-range":[],"input-group":["0","1","6","7","8"],lookup:["0","1"],"number-range":[],"number-spinner":["0"," 1","2","3","4","5"],"radio-group":["0"],text:["0","1"," 6","7","8"]};function Xr(e,t,o){const{fieldMap:i}=o;function r(a){const l=i.get(a.fieldCode);if(!l)return[];const s=l.editor.type,c=new Set(Kr[s]);return zr.filter(f=>c.has(f.value))}return{getCompareOperators:r}}function yn(){const e=n.ref({relation:0,items:[],children:[],path:[],groupId:0,level:0}),t=new Map,o=new Map;let i=0;function r(){return{id:"",fieldCode:"",fieldName:"",compareType:hn.Equal,valueType:gn.Value,value:new an,relation:0,conditionId:Date.now()}}function a(h,T){return{relation:h,items:[],children:[],path:[],groupId:++i,level:T}}function l(){const h=Object.assign({},e.value);o.forEach((T,M)=>{T.groupId===h.groupId&&o.set(M,h)}),t.forEach((T,M)=>{T.groupId===h.groupId&&t.set(M,h)}),e.value=h}function s(h){const T=new Map;let M=0;return h.forEach((I,k)=>{var F,O;if(M+=((F=I.lBracket)==null?void 0:F.length)||0,T.set(k,M),M-=((O=I.rBracket)==null?void 0:O.length)||0,M<0)throw new Error("The right bracket is out of range.")}),T}function c(h,T,M,I,k){for(let F=0;F<T;F++){const O=h+(F+1),$=a(k,O);M.children.push($),o.set($.groupId,M),M=M.children[M.children.length-1],I.push(M)}return M}function p(h,T,M,I,k){for(let j=T;j<=0;j++)I.pop();const F=I[I.length-1];if(!F)throw new Error("The group path is out of range");const O=h+T,$=a(k,O);return F.children.push($),o.set($.groupId,F),M=F.children[F.children.length-1],I.push(M),M}function f(h,T,M,I){M.pop();const k=M[M.length-1],F=a(I,h);return k.children.push(F),o.set(F.groupId,k),T=k.children[k.children.length-1],M.push(T),T}function d(h,T,M,I,k,F){let O=h[h.length-1];if(!O)throw new Error("The group path is out of range");const $=T.get(I)||0,j=T.get(M)||0;if(M<0||M===I)return h[h.length-1];const P=$-j,B=k&&k.relation!==void 0?k.relation:1;return O=P>0?c(j,P,O,h,B):O,O=P<0?p(j,P,O,h,B):O,O=P===0&&j>0&&$>0&&k&&F&&!!k.rBracket&&!!F.lBracket?f(j,O,h,B):O,O}function u(h){const M={relation:h.length&&h[0].relation!==void 0?h[0].relation:1,items:[],children:[],path:[],groupId:0,level:0},I=[M],k=s(h);return h.forEach((F,O)=>{const $=O-1,j=h[$],P=d(I,k,$,O,j,F);P.items.push(F),t.set(F.conditionId,P)}),e.value=M,M}function S(){const h=r();t.set(h.conditionId,e.value),e.value.items.push(h)}function v(h){if(!h)return;const T=t.get(h.conditionId);if(T){const M=T.items.findIndex(k=>k.conditionId===h.conditionId)+1,I=r();t.set(I.conditionId,T),T.items.splice(M,0,I),l()}}function w(h){const T=t.get(h.conditionId);T&&(T.items=T.items.filter(M=>M.conditionId!==h.conditionId),t.delete(h.conditionId),m(),l())}function C(h,T,M,I){h.reduce((k,F)=>{const O=F.conditionId!==void 0,$=F.groupId!==void 0;if(O){const j=F;M.push(j),k.items.set(j.conditionId,j)}if($){const j=F;I.push(j),k.groups.set(j.groupId,j)}return k},T)}function _(h,T,M,I,k){h&&(h.items=T.length?h.items.filter(F=>!M.has(F.conditionId)):h.items,h.children=I.length?h.children.filter(F=>!k.has(F.groupId)):h.children)}function b(h,T,M){T.forEach(I=>{h.items.push(I),t.set(I.conditionId,h)}),M.forEach(I=>{h.children.push(I),o.set(I.groupId,h)})}function g(h){const T=h[0],M=T.conditionId!==void 0?t.get(T.conditionId):o.get(T.groupId),I={items:new Map,groups:new Map},k=[],F=[];if(M){C(h,I,k,F),_(M,k,I.items,F,I.groups);const O=a(M.relation,M.level+1);b(O,k,F),M.children.push(O),o.set(O.groupId,M),l()}}function V(h){const T=[...h.items],M=[...h.children],I=o.get(h.groupId);I&&(I.children=I.children.filter(k=>k.groupId!==h.groupId),o.delete(h.groupId),T.forEach(k=>{I.items.push(k),t.set(k.conditionId,I)}),M.forEach(k=>{I.children.push(k),o.set(k.groupId,I)}),l())}function x(h){h.relation=h.relation===1?2:1,l()}let y;function N(h){const{relation:T}=h;return(h.children&&h.children.length?h.children.map((I,k,F)=>{const O=y(I);return O[0].lBracket=(O[0].lBracket||"")+"(",O[O.length-1].rBracket=(O[O.length-1].rBracket||"")+")",O[O.length-1].relation=k<F.length-1?T:0,O}):[]).flat()}y=(h=e.value)=>{const{relation:T}=h,M=h.items.map((k,F,O)=>(k.lBracket=F===0?"(":"",k.rBracket=F===O.length-1?")":"",k.relation=F<O.length-1?T||1:0,k)),I=N(h);return[...M,...I]};function m(h){const T=h||e.value;if(T.children.length&&T.children.forEach(M=>{m(M)}),T.level===0&&!T.items.length&&T.children.length===1){const M=T.children[0];e.value.relation=M.relation,V(M)}else T.items.length===0&&T.children.length<=1&&V(T)}return{addCondition:S,changeGroupRelation:x,conditionGroupMap:t,getConditions:y,group:g,groupParentMap:o,insertConditionTo:v,loadConditionGroup:u,refresh:l,removeCondition:w,rootGroup:e,unGroup:V}}function Yr(e,t,o){const i=n.ref(new Set),r=n.ref(new Set),{conditionGroupMap:a,groupParentMap:l}=o;let s,c;function p(_){let b=s.level<=_.level?s:_,g=s.level>_.level?s:_;const V=[];for(;g&&b&&g!==b;)g.level>b.level?(V.push(g),g=l.get(g.groupId)):g.level===b.level&&(b=l.get(b.groupId),b&&V.unshift(b));return V}function f(_){r.value.add(_.groupId),_.items.forEach(b=>i.value.add(b.conditionId)),_.children.forEach(b=>f(b))}function d(_){const{conditionId:b}=_;i.value.add(b),s=i.value.size===0?a.get(b):s;const g=a.get(_.conditionId);p(g).forEach(x=>f(x))}const u=n.computed(()=>i.value.size===0&&r.value.size===1),S=function(_){r.value.delete(_.groupId),_.items.forEach(g=>c(g)),_.children.forEach(g=>!u.value&&S(g));const b=l.get(_.groupId);b&&r.value.has(b.groupId)&&S(b)};c=function(_){const{conditionId:b}=_;if(i.value.has(b)&&i.value.delete(b),r.value.size>0){const g=a.get(b);g&&r.value.has(g.groupId)&&S(g)}};function v(_){const{conditionId:b}=_;i.value.size===0&&(s=a.get(b)),i.value.has(b)?c(_):d(_)}function w(){const _=[];return s&&(s.items.filter(b=>i.value.has(b.conditionId)).forEach(b=>_.push(b)),s.children.filter(b=>r.value.has(b.groupId)).forEach(b=>_.push(b))),_}function C(){i.value.clear(),r.value.clear()}return{clear:C,getSelectedGroupItem:w,selectedItems:i,toggleSelect:v}}const Ft=n.defineComponent({name:"FConditionList",props:on,emits:["valueChange","labelCodeChange","compareTypeChange"],setup(e,t){const o=n.ref(e.key),i=n.ref(e.conditions),r=sn(e),{convertToSingleControl:a,fields:l,fieldMap:s,loadFieldConfigs:c}=r,p=yn(),{addCondition:f,changeGroupRelation:d,getConditions:u,group:S,insertConditionTo:v,loadConditionGroup:w,refresh:C,removeCondition:_,rootGroup:b,unGroup:g}=p,{createConditionValue:V}=ln(),x=Yr(e,t,p),{selectedItems:y,toggleSelect:N}=x,{getCompareOperators:m}=Xr(e,t,r);c(!1),l.value=a(l.value),w(i.value);function h(P){var D;const B=((D=s.get(P.fieldCode))==null?void 0:D.editor)||{type:"text"};P.value=V(B.type,void 0),t.emit("labelCodeChange",P)}function T(P,B){t.emit("compareTypeChange",B)}function M(){}t.expose({getConditions:u});function I(P,B){t.emit("valueChange",P,B)}function k(P){return P.items.map(B=>{var D;return n.createVNode("div",{class:"condition-list-item",key:B.conditionId},[n.createVNode("div",{class:"condition-list-item-type mr-3"},[n.createVNode(yt,{"value-field":"labelCode","text-field":"name","id-field":"id",data:l.value,modelValue:B.fieldCode,"onUpdate:modelValue":G=>B.fieldCode=G,onChange:G=>h(B)},null)]),n.createVNode("div",{class:"condition-list-item-compare mr-3"},[n.createVNode(yt,{"value-field":"value","text-field":"name","id-field":"id",data:m(B),modelValue:B.compareType,"onUpdate:modelValue":G=>B.compareType=G,onChange:G=>T(G,B)},null)]),n.createVNode("div",{class:"condition-list-item-control mr-3"},[n.createVNode(Gr,{editor:(D=s.get(B.fieldCode))==null?void 0:D.editor,showLabel:!1,modelValue:B.value.value,"onUpdate:modelValue":G=>B.value.value=G,onChange:G=>{I(G,B)}},null)]),n.createVNode("div",{class:"condition-list-item-extend"},[n.createVNode("span",{class:"f-icon f-icon-plus-sm mr-2",onClick:()=>v(B)},null),n.createVNode("span",{class:"f-icon f-icon-minus-sm",onClick:()=>_(B)},null)]),n.createVNode("div",{class:"custom-control custom-checkbox"},[n.createVNode("input",{title:"selection",class:"custom-control-input",type:"checkbox",checked:y.value.has(B.conditionId)},null),n.createVNode("label",{class:"custom-control-label",onClick:()=>N(B)},null)])])})}function F(P){return n.createVNode("div",{class:"condition-list-relation"},[n.createVNode("span",{class:"condition-list-relation-close f-icon-filter-cancel btn-link",onClick:()=>g(P)},null),n.createVNode("span",{class:"condition-list-relation-text btn-link",onClick:()=>d(P)},[P.relation===1?"与":"或"])])}function O(P){return n.createVNode("div",{class:"condition-list-content"},[n.createVNode("div",{class:"condition-list-content-group"},[k(P),P.children&&P.children.map(B=>O(B))]),F(P)])}function $(){S(x.getSelectedGroupItem()),x.clear()}function j(){return n.createVNode("div",{class:"condition-list-bottom"},[n.createVNode("div",{class:"add-condition-btn mb-1 mr-3",onClick:f},[n.createVNode("span",{class:"f-icon f-icon-filter-add"},null),n.createVNode("span",{class:"ml-1"},[n.createTextVNode("添加条件")])]),n.createVNode("div",{class:"add-condition-btn mb-1",onClick:$},[n.createVNode("span",{class:"f-icon f-icon-filter-grouping"},null),n.createVNode("span",{class:"ml-1"},[n.createTextVNode("生成条件组")])]),n.createVNode("div",{class:"condition-list-reset add-condition-btn",onClick:M},[n.createTextVNode("重置")])])}return()=>n.createVNode("div",{class:"condition-list",key:o.value},[n.createVNode("div",{class:"condition-list-body"},[O(b.value)]),j()])}});Ft.install=e=>{e.component(cn.name,cn).component(Ft.name,Ft)};const Jr=["equal","notEqual","greaterThan","greaterThanOrEqual","lessThan","lessThanOrEqual","contain","startWidth","endWidth"],Qr={equal:(e,t,o)=>e&&e[t]===o,notEqual:(e,t,o)=>e&&e[t]!==o,contain:(e,t,o)=>e?(e[t]||"").indexOf(o)>-1:!1,startWidth:(e,t,o)=>e?(e[t]||"").startsWith(o):!1,endWidth:(e,t,o)=>e?(e[t]||"").endsWith(o):!1},Zr={equal:(e,t,o)=>e&&e[t]===o,notEqual:(e,t,o)=>e&&e[t]!==o},ea={equal:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()===i}return!1},notEqual:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()!==i}return!1},greaterThan:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()>i}return!1},greaterThanOrEqual:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()>=i}return!1},lessThan:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()<i}return!1},lessThanOrEqual:(e,t,o)=>{if(e){const i=new Date(new Date(o).toLocaleDateString()).valueOf();return new Date(new Date(e[t]).toLocaleDateString()).valueOf()<=i}return!1}},ta={equal:(e,t,o)=>e?String(o).split(",").includes(String(e[t])):!1,notEqual:(e,t,o)=>e?String(o).split(",").findIndex(r=>r===String(e[t]))===-1:!1},na={equal:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(r):i===r}return!1},notEqual:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(e[t]));return isNaN(i)?!0:i!==r}return!1},greaterThan:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(r):r>i}return!1},greaterThanOrEqual:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(r):r>=i}return!1},lessThan:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(r):r<i}return!1},lessThanOrEqual:(e,t,o)=>{if(e){const i=Number.parseFloat(String(o)),r=Number.parseFloat(String(e[t]));return isNaN(i)?isNaN(r):r<=i}return!1}};function Nt(){const e=n.ref([]),t=new Map,{loadConditionGroup:o}=yn(),i=new Map([["boolean",Zr],["datetime",ea],["enum",ta],["number",na],["text",Qr]]);function r(d){t.delete(d),e.value=Array.from(t.values())}function a(){t.clear(),e.value=[]}function l(d){const{valueType:u}=d.value,S=d.compareType||"0",v=Jr[Number(S)];return i.get(u)[v]}function s(d){const u=d.relation===2?0:1,S=d.items.map(w=>{const C=l(w);return b=>C(b,w.fieldCode,w.value.getValue())}),v=d.children&&d.children.length?d.children.map(w=>s(w)):[];return{relation:u,filterFunctions:S,children:v}}function c(){const d=o(e.value);return s(d)}function p(d,u){const S=u.filterFunctions.map(w=>w(d)),v=u.children.map(w=>p(d,w));return u.relation===1?S.every(w=>w)&&v.every(w=>w):S.includes(!0)||v.includes(!0)}function f(d){const u=c();return p(d,u)}return{apply:f,clearCondition:a,conditions:e,removeCondition:r}}function kt(e,t){var C,_;const{idField:o}=t,i=n.ref(e.summary),r=n.ref(e.group),a=n.ref(((C=e.group)==null?void 0:C.groupFields)||[]),l=n.ref(((_=e.group)==null?void 0:_.enable)||!1),s=n.computed(()=>{const b=i.value;return(b==null?void 0:b.groupFields)||[]}),c=n.computed(()=>{const b=r.value;return b&&b.showSummary}),p=new Map;let f=[];function d(b,g,V,x,y){const N=x[V];N&&(g.reduce((m,h,T)=>{var k;const M=h[N];let I=m.get(M);if(!I){const F=s.value.reduce((O,$)=>(O.set($,0),O),new Map);I={field:N,title:((k=y.get(N))==null?void 0:k.title)||N,value:M,layer:V,details:[],groupSummaries:F},m.set(M,I)}return s.value&&s.value.forEach(F=>{if(I){const O=I.groupSummaries.get(F)||0;I.groupSummaries.set(F,O+h[F])}}),I.details.push(h),m},b),V<x.length-1&&b.forEach((m,h)=>{m.nestGroup=new Map,d(m.nestGroup,m.details,V+1,x,y),m.details=[]}))}function u(b,g){return e.group&&e.group.formatter?e.group.formatter(b.value,{...b,total:g}):`${b.title}:${b.value} (${g})`}function S(b){const g=[];return b.forEach(V=>{const x={__fv_data_grid_group_collapse__:!1,__fv_data_grid_group_field__:V.field,__fv_data_grid_group_layer__:V.layer,__fv_data_grid_group_row__:!0,__fv_data_grid_group_value__:V.value};let y=0;if(g.push(x),V.nestGroup){const N=S(V.nestGroup);g.push(...N),y+=N.length}if(V.details&&V.details.length&&(g.push(...V.details),y+=V.details.length),c.value){const N={__fv_data_grid_group_field__:V.field,__fv_data_grid_group_layer__:V.layer,__fv_data_grid_group_summary__:!0};N[o.value]=`summary_of_${V.field}_${V.value}`,N[V.field]=Array.from(V.groupSummaries.entries()).reduce((m,[h,T])=>`${m} ${h} total:${T} `,""),g.push(N)}V.groupSummaries&&V.groupSummaries.size&&V.groupSummaries.forEach((N,m)=>{x[m]=N}),x[o.value]=`group_of_${V.field}_${V.value}`,x[V.field]=u(V,y)}),g.forEach((V,x)=>{V.__fv_data_index__=x}),g}function v(b,g,V){return!b||b.length===0||!g.length?g:(b.join(","),p.clear(),f=[],d(p,g,0,b,V),f=S(p),f)}function w(b){return{"f-icon":!0,"f-icon-arrow-chevron-down":!0,"fv-grid-group-row-icon-collapse":b.collapse}}return{collpaseGroupIconClass:w,generateGroupData:v,groupFields:a,shouldGroupingData:l}}function oa(e,t,o,i){const r=n.ref(!!e.hierarchy),{idField:a}=i,{collapseField:l,hasChildrenField:s,parentIdField:c}=o,p=new Map;function f(I,k){const F=new Map;return I.reduce((O,$)=>{const j=$[c.value]!==void 0?$[c.value]:"";if(j&&k.has(j)){const B=k.get(j);$.__fv_parent_index__=B.__fv_index__,B.__fv_hasChildren__=!0}const P=O.has(j)?O.get(j):[];return P.push($),O.set(j,P),O},F),F}function d(I){const k=new Map;return I.reduce((F,O)=>{const $=O[a.value];return F.set($,O),F},k),k}function u(I){I.forEach(k=>{const F=k[a.value];k.__fv_children_index__.map($=>I[$]).forEach($=>{$.__fv_parents__=new Map([...k.__fv_parents__.entries(),[F,!0]])})})}function S(I){I.forEach(k=>{const F=new Set(k.__fv_children_index__);k.__fv_children_index__=[...F].sort((O,$)=>O-$)})}function v(I,k){I.forEach(F=>{const O=F.__fv_parents__;Array.from(O.keys()).map($=>k.get($)).forEach($=>{$.__fv_children_index__.push(F.__fv_index__)})}),S(I)}function w(I){I.forEach(k=>{k.__fv_child_with_lines__=[],k.__fv_child_length__=k.__fv_descendant_index__.length,k.__fv_descendant_index__.map(F=>I[F]).reduce((F,O)=>(F.__fv_child_length__+=O.__fv_children_index__.length,F.__fv_child_with_lines__.push(...O.__fv_children_index__,O.__fv_index__),F),k)})}function C(I,k){return{id:I,index:k,parentId:"",parentIndex:-1,parents:new Map,children:new Map,descendant:new Map}}function _(I,k){Array.from(k.keys()).forEach(F=>{k.get(F).reduce(($,j)=>{const P=j[a.value],B=I.get(j[a.value]),D=I.get(F);return D&&(D.children.set(P,B),D.children.set(P,B),B.parentId=F,B.parentIndex=D.index,B.parents.set(F,D)),$},I)})}function b(I){I.children.forEach(F=>{F.parents=new Map([...I.parents.entries(),[I.id,I]]),b(F)})}function g(I,k){I.filter(F=>F[c.value]===void 0||F[c.value]==="").forEach(F=>{const O=F[a.value],$=k.get(O);b($)})}function V(I){Array.from(I.values()).forEach(k=>{Array.from(k.parents.values()).forEach(F=>{F.descendant.set(k.id,k)})})}function x(I){p.clear(),I.forEach((O,$)=>{const j=O[a.value];p.set(j,C(j,$))});const k=d(I),F=f(I,k);return _(p,F),g(I,p),V(p),p}function y(I){const k=I[a.value],F=p.get(k);return F&&F.children.size>0}function N(I){return I[s.value]&&!y(I)}function m(I){x(t.value);const k=d(I),F=f(I,k);return I.forEach((O,$)=>{var D;const j=O[a.value],P=F.has(j)?(D=F.get(j))==null?void 0:D.map(G=>G.__fv_index__):[],B=C(j,$);O.__fv_graph_node__=B,O.__fv_children_index__=P,O.__fv_descendant_index__=[...P],O.__fv_parents__=new Map,N(O)&&(O[l.value]=!0)}),u(I),v(I,k),e.showLines&&w(I),I}function h(I,k,F){const $=F.value[I][a.value],j=p.get($);if(j){const P=p.get(j.parentId);let B=F.value.length-1;if(P){const D=Array.from(P.children.keys()).indexOf(j.id);if(D===P.children.size-1){const oe=Array.from(P.descendant.values())[P.descendant.size-1];B=F.value.findIndex(ve=>ve[a.value]===oe.id)+1}else{const oe=Array.from(P.children.values())[D+1];B=F.value.findIndex(ve=>ve[a.value]===oe.id)}k[s.value]=!1,k[c.value]=P.id,F.value.splice(B,0,k)}}}function T(I,k,F){const O=F.value[I],$=O[a.value];if(p.get($)){const B=F.value.findIndex(D=>D[a.value]===$)+1;O[s.value]=!0,O[l.value]=!1,k[s.value]=!1,k[c.value]=$,F.value.splice(B,0,k)}}function M(I,k){const F=I[a.value],O=p.get(F),$=Array.from(O.descendant.keys());$.unshift(F);const j=p.get(O.parentId);if(j&&(j.children.delete(F),j.children.size===0)){const B=k.find(D=>D[a.value]===O.parentId);B[s.value]=!1,B[l.value]=!1}return k.filter(B=>$.indexOf(B.id)===-1)}return{generateHierarchyData:m,hasRealChildren:y,insertSibling:h,insertChild:T,shouldStratifyData:r,trimmedOriginalData:M}}const ia={showCloseButton:{type:Boolean,default:!0},position:{type:String,default:"top-center"},timeout:{type:Number,default:3e3},theme:{type:String,default:"bootstrap"},left:{type:Number},right:{type:Number},top:{type:Number},bottom:{type:Number},id:{type:String},animate:{type:String,default:"fadeIn"},options:{type:Object}},ra={showCloseButton:{type:Boolean,default:!0},animate:{type:String,default:"fadeIn"},options:{type:Object}},Tt=n.defineComponent({name:"Toast",props:ra,emits:["close","click"],setup:(e,t)=>{const o=n.ref(e.animate),i="fadeOut",r=n.computed(()=>e.options),a=n.ref(!1),l=n.computed(()=>{const _={animated:a.value,toast:!0};return _[e.animate]=!1,_[i]=a.value,_[r.value.type]=!0,r.value.theme&&(_[r.value.theme]=!0),_}),s=n.computed(()=>{const g=`f-icon-${r.value&&r.value.type?r.value.type.replace("toasty-type-",""):"default"}`,V={"f-icon":!0};return V[g]=!0,V}),c=n.computed(()=>r.value.title||r.value.message),p=n.computed(()=>r.value.title&&r.value.message),f=n.computed(()=>!r.value.title&&r.value.message),d=n.computed(()=>e.showCloseButton),u=n.computed(()=>!!r.value.buttons||!!t.slots.default);function S(_){_.stopPropagation(),_.preventDefault(),a.value=!1,setTimeout(()=>{t.emit("close",r.value)},200)}function v(_,b){}function w(_){return`f-preten-link ${_.customClass?_.customClass:""}`}n.watch(o,()=>{o.value});const C=()=>{var _;return n.createVNode(n.Fragment,null,[n.createVNode("div",{class:"after-toast-msg text-right"},[!t.slots.default&&((_=r.value.buttons)==null?void 0:_.map(b=>n.createVNode("span",{class:w(b),onClick:g=>void 0},[b.text]))),t.slots.default&&t.slots.default()])])};return()=>n.createVNode("div",{class:l.value},[d.value&&n.createVNode("button",{title:"close",class:"toast-close f-btn-icon f-bare",onClick:S},[n.createVNode("span",{class:"f-icon modal_close"},null)]),c.value&&n.createVNode("section",{class:"modal-tips"},[n.createVNode("div",{class:"float-left modal-tips-iconwrap"},[n.createVNode("span",{class:s.value},null)]),n.createVNode("div",{class:"modal-tips-content"},[p.value&&n.createVNode(n.Fragment,null,[n.createVNode("h5",{class:"toast-title modal-tips-title",innerHTML:r.value.title},null),n.createVNode("p",{class:"toast-msg",innerHTML:r.value.message},null),u.value&&C()]),f.value&&(r.value.buttons?n.createVNode("div",{class:"toast-title-btns-wrapper d-flex"},[n.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",innerHTML:r.value.message},null),n.createVNode("div",{class:"after-toast-title text-right ml-auto"},[C()])]):n.createVNode("h5",{class:"toast-title modal-tips-title only-toast-msg",innerHTML:r.value.message},null))])])])}}),pt=n.defineComponent({name:"Notify",props:ia,emits:["close","empty"],setup(e,t){const o=n.computed(()=>({"farris-notify":!0})),i={left:12,right:12,top:20,bottom:12},r=n.ref(),a=n.ref(e.options),l=n.ref(e.showCloseButton),s=n.computed(()=>e.position||"bottom-right"),c=n.computed(()=>e.timeout!=null?e.timeout:3e3),p=n.computed(()=>{const u=e.bottom?e.bottom:i.bottom,S=e.top?e.top:i.top,v={transition:"all 0.2s ease",left:s.value.indexOf("left")>-1?`${e.left?e.left:i.left}px`:"",right:s.value.indexOf("right")>-1?`${e.right?e.right:i.right}px`:"",top:s.value.indexOf("top")>-1?`${S}px`:"",bottom:s.value.indexOf("bottom")>-1?`${u}px`:""};return s.value.indexOf("center")>-1&&(v.left="50%",v.marginLeft="calc(-24rem / 2)",s.value==="center-center"&&(v.top="50%",v.transform="translate(-50%, -50%)")),v});function f(u){t.emit("close")}c.value&&setTimeout(()=>{f()},c.value),t.expose({closeToast:f,container:r,notifyPosition:s});function d(u,S){f()}return()=>n.createVNode("div",{class:o.value,style:p.value,ref:r},[n.createVNode(Tt,{options:a.value,showCloseButton:l.value,animate:e.animate,onClose:u=>d(u,a.value)},null)])}});class vn{constructor(){q(this,"notifyRefs",[]);q(this,"globalConfig",n.reactive({}))}createNotifyInstance(t){const o=this,r=Object.assign({timeout:3e3,position:"bottom-right",showCloseButton:!0},this.globalConfig,{...t}),a=document.createElement("div");a.style.display="contents";const l=n.createApp({setup(){const s=n.ref();function c(){s.value.container.style.transform="scale(0)",setTimeout(()=>{o.updateNotifyPositionForClose(r,s),l.unmount()},220)}if(r.position.indexOf("top")>-1){const p=o.getNotifyInstances(r.position),f=p[p.length-1];if(f){const d=f.value.container.getBoundingClientRect();r.top=d.bottom}}return n.onUnmounted(()=>{document.body.removeChild(a)}),n.onMounted(()=>{o.updateNotifyPositionForCreate(r,s)}),()=>n.createVNode(pt,n.mergeProps({ref:s},r,{onClose:c}),null)}});return l.provide("NotifyService",this),document.body.appendChild(a),l.mount(a),l}getNotifyInstances(t){return this.notifyRefs.filter(o=>o.value.notifyPosition===t)}updateNotifyPositionForCreate(t,o){if(this.notifyRefs&&this.notifyRefs.length){const i=window.innerHeight;t.position.indexOf("bottom")>-1&&this.getNotifyInstances(t.position).forEach(r=>{const a=r.value.container.getBoundingClientRect();r.value.container.style.bottom=a.height+i-a.bottom+"px"})}this.notifyRefs=[...this.notifyRefs,o]}updateNotifyPositionForClose(t,o){const i=this.notifyRefs.indexOf(o);if(t.position.indexOf("top")>-1){const r=this.getNotifyInstances(t.position),a=r.indexOf(o);r.slice(a+1).forEach(l=>{l.value.container.style.top=l.value.container.offsetTop-l.value.container.offsetHeight+"px"})}i>-1&&this.notifyRefs.splice(i,1)}show(t){return this.createNotifyInstance(t)}buildNotifyProps(t,o){let i="",r="",a,l,s;typeof o=="string"?i=o:o&&(i=o.message||"",r=o.title||"",l=o.position||null,s=o.showCloseButton!=null?o.showCloseButton:null,a=o.timeout!=null?o.timeout:null);const p={options:{type:t,message:i,title:r}};return l!=null&&(p.position=l),s!=null&&(p.showCloseButton=s),a!=null&&(p.timeout=a),p}info(t){const o=this.buildNotifyProps("info",t);return this.show(o)}success(t){const o=this.buildNotifyProps("success",t);return this.show(o)}warning(t){const o=this.buildNotifyProps("warning",t);return this.show(o)}error(t){const o=this.buildNotifyProps("error",t);return this.show(o)}close(t){t&&t.unmount()}closeAll(){this.notifyRefs.forEach(t=>{t==null||t.value.closeToast()}),this.notifyRefs.length=0}}const aa=Symbol("NOTIFY_SERVICE_TOKEN");pt.install=e=>{e.component(pt.name,pt),e.component(Tt.name,Tt);const t=new vn;e.provide(aa,t),e.provide("FNotifyService",t)};function bn(e,t,o,i,r){var Le;const{pageSize:a,total:l,shouldRenderPagination:s,currentPage:c,mode:p}=r,f=new Map,d=new Map,u=new Map,S=new Map,v=new Map,w=n.ref([]),C=n.ref([]),_=Nt(),b=kt(e,i),{generateGroupData:g,groupFields:V,shouldGroupingData:x}=b,y=n.ref(e.data),N=oa(e,y,o,i),{generateHierarchyData:m,hasRealChildren:h,insertSibling:T,insertChild:M,shouldStratifyData:I,trimmedOriginalData:k}=N,{idField:F,reviseIdentifyField:O}=i,$=n.ref(e.newDataItem),j=n.ref(e.data),P=n.ref(e.data),{flatTreeData:B}=Sa(e);if(e.data&&((Le=e.data[0])!=null&&Le.children)){const A=we(e.data);y.value=A,j.value=A,P.value=A}const D=n.ref(e.summary),G=n.computed(()=>{const A=D.value;return(A==null?void 0:A.groupFields)||[]});let oe=new Map;const ae=n.computed(()=>{var A;return((A=j.value)==null?void 0:A.length)||0}),ve=n.ref(e.pagination),Te=new vn,xe=n.computed(()=>s.value?p.value==="server"?0:(c.value-1)*a.value:0),ye=n.computed(()=>s.value?p.value==="server"?Math.min(a.value,l.value,ae.value):Math.min(xe.value+a.value,l.value,ae.value):ae.value);function we(A){return B(A)}function Ne(){var ne;j.value=y.value,x.value&&(j.value=g(V.value,y.value,t)),oe=G.value.reduce((Fe,Pe)=>(Fe.set(Pe,0),Fe),oe);const A=xe.value,ee=ye.value;let re=0;const Ve=[];if((ne=j.value)!=null&&ne.length){O(j.value);const Fe=F.value!==e.idField;for(let Pe=A;Pe<ee;Pe++){const he=j.value[Pe];he.__fv_data_grid_group_row__?(re=0,he.__fv_data_index__=""):he.__fv_data_grid_group_summary__?he.__fv_data_index__="":(re++,s.value?he.__fv_data_index__=re+(c.value-1)*a.value:he.__fv_data_index__=re),he.__fv_index__=Pe,Fe&&(he[F.value]=Pe),G.value.forEach(je=>{const De=oe.get(je)||0;oe.set(je,De+he[je])}),Ve.push(he)}}return I.value&&m(Ve),P.value=[...Ve],Ve}const ie=n.ref(Ne());function pe(A,ee,re=!1){const ne=(re?Ne():[...P.value]).filter(he=>_.apply(he)),Fe=A&&A.length?ne.filter(he=>A.reduce((je,De)=>je&&De.filter(he),!0)):ne,Pe=ee&&ee.length?Fe.sort((he,je)=>{const De=[...ee],be=De.shift();let qe=be.compare(he[be.field],je[be.field]);for(;qe===0&&De.length!==0;){const tt=De.shift();tt&&(qe=tt.compare(he[tt.field],je[tt.field]))}return qe}):Fe;return ie.value=Pe.map((he,je)=>{if(he.__fv_data_grid_group_row__){const De=`group_of_${he.__fv_data_grid_group_field__}_${he.__fv_data_grid_group_value__}`;he.__fv_data_grid_group_collapse__=!!f.get(De)}return he.__fv_index__=je,he}),ie.value}function W(A){return v.clear(),C.value=A,C.value.reduce((ee,re)=>(ee.set(re.field,re),ee),v),pe([],C.value)}function U(A,ee){return v.set(A,ee),C.value=Array.from(v.values()),pe([],C.value)}function le(A){return v.delete(A),C.value=Array.from(v.values()),pe([],C.value)}function Q(A,ee){return d.set(A,ee),w.value=Array.from(d.values()),pe([],Array.from(v.values()))}function me(A){return d.delete(A),w.value=Array.from(d.values()),pe([],Array.from(v.values()),!0)}function ge(){return d.clear(),w.value=[],pe([],Array.from(v.values()),!0)}function ce(A,ee){const re=`group_of_${A}_${ee}`;f.set(re,!0);const Ve=ne=>ne[A]!==ee;return u.set(`collapse_${A}_${ee}`,{field:A,fieldName:A,fieldType:"string",filterValue:ee,filter:Ve}),pe(Array.from(u.values()),Array.from(v.values()))}function Se(A,ee){const re=`group_of_${A}_${ee}`;return f.set(re,!1),u.delete(`collapse_${A}_${ee}`),pe(Array.from(u.values()),Array.from(v.values()),!0)}function R(A){const ee=A.raw[F.value],re=Ve=>!Ve.__fv_parents__.has(ee);S.set(`fold_${ee}`,{field:"id",fieldName:"id",fieldType:"string",filterValue:String(ee),filter:re}),pe(Array.from(S.values()),Array.from(v.values())),m(ie.value)}function se(A){const ee=A[F.value];S.delete(`fold_${ee}`)}function ue(A){se(A.raw),pe(Array.from(S.values()),Array.from(v.values()),!0),m(ie.value)}function L(){const A=Ne();ie.value=A,e.hierarchy&&(pe(Array.from(S.values()),Array.from(v.values())),m(ie.value))}function fe(A){var ee;if(A&&((ee=A[0])!=null&&ee.children)){const re=we(A);y.value=re,j.value=re,P.value=re}else y.value=A,j.value=A,P.value=A;L()}function Ie(A,ee,re){return(A&&A.length?ie.value.filter((ne,Fe)=>A.reduce((Pe,he)=>Pe&&he.filter(ne),!0)):ie.value).slice(ee,re)}function X(A){(A-1)*a.value<=ae.value&&L()}function te(A){y.value.push(Ee.cloneDeep(A)),ie.value=Ne()}function de(A=0){if(!(A>-1))return!1;const re=$.value();e.hierarchy?T(A,re,y):y.value.splice(A,0,re),L()}function _e(A=0){if(!(A>-1&&e.hierarchy))return!1;const re=$.value(),Ve=y.value[A];se(Ve),M(A,re,y),L()}function ke(A){const ee=A?A-1:0;y.value.splice(ee,1),L()}function $e(A){const ee=y.value.findIndex(re=>re[F.value]===A);ee!==-1&&(y.value.splice(ee,1),L())}function Ge(A){const ee=A>-1?y.value[A]:null;if(!(ee&&ee.deletable!==!1))return!1;y.value=k(ee,y.value),L()}function He(){const A=u.size>0?Array.from(u.values()):[];return pe(A,Array.from(v.values()))}function Xe(A){ve.value&&(ve.value.size=A,L())}function Ye(A,ee){const re=y.value[Number(A)-1];re.editable!==!1?(re.name=ee,L()):Te.show({showCloseButton:!1,timeout:3e3,animate:"fadeIn",toasts:[{type:"string",title:"提示",msg:"当前节点禁止编辑"}]})}function Je(A){return A.map(re=>{const Ve=P.value.findIndex(ne=>ne[F.value]===re);return Ve>-1?P.value[Ve]:null}).filter(re=>re!=null)}return{addFilter:Q,addNewDataItem:te,addSorter:U,changePageSizeTo:Xe,collapse:ce,dataView:ie,editDataItem:Ye,expand:Se,filters:w,fold:R,getRange:Ie,getSelectionItems:Je,hasRealChildren:h,load:fe,navigatePageTo:X,summaries:oe,totalItems:ae,insertNewDataItem:de,insertNewChildDataItem:_e,removeAllFilter:ge,removeDataItem:ke,removeDataItemById:$e,removeFilter:me,removeHierarchyDataItem:Ge,removeSorter:le,rawView:P,refresh:He,setSorters:W,sorters:C,updateDataView:L,unFold:ue,startIndex:xe,endIndex:ye,originalData:y}}function Cn(){function t(l){return l.field}function o(l){const s=t(l),c=localStorage.getItem(s);return c?JSON.parse(c):[]}function i(l,s){const c=t(l);localStorage.setItem(c,JSON.stringify(s))}function r(l,s){if(!s)return;const c=o(l),f=[c.find(d=>d.name===s)||{id:Date.now(),name:s,selectable:!0},...c.filter(d=>d.name!==s)];f.length>5&&(f.length=5),i(l,f)}function a(l,s){const p=[...o(l).filter(d=>d.name!==s)],f=t(l);localStorage.setItem(f,JSON.stringify(p))}return{getFilterHistory:o,removeFilterHistory:a,setFilterHistory:i,updateFilterHistory:r}}function wn(e){n.ref(e.selection.showCheckbox||!1);const t=n.computed(()=>{var l;return((l=e.hierarchy)==null?void 0:l.collapseField)||"__fv_collapse__"}),o=n.computed(()=>{var l;return((l=e.hierarchy)==null?void 0:l.hasChildrenField)||"__fv_hasChildren__"}),i=n.computed(()=>{var l;return((l=e.hierarchy)==null?void 0:l.parentIdField)||"parent"}),r=n.computed(()=>e.hierarchy&&e.selection.showCheckbox),a=n.computed(()=>(e.treeNodeIconsData.fold||e.iconField)&&e.showTreeNodeIcons);return{collapseField:t,hasChildrenField:o,parentIdField:i,shouldShowCheckBox:r,shouldShowIcon:a}}function la(e,t,o,i){var w,C,_,b,g,V;const{idField:r}=o,a=n.ref(((C=(w=e.hierarchy)==null?void 0:w.cascadeOption)==null?void 0:C.autoCheckChildren)||!1),l=n.ref(((b=(_=e.hierarchy)==null?void 0:_.cascadeOption)==null?void 0:b.autoCheckParent)||!1),s=n.ref(((V=(g=e.hierarchy)==null?void 0:g.cascadeOption)==null?void 0:V.selectionRange)||"All");n.watch(()=>{var x;return(x=e.hierarchy)==null?void 0:x.cascadeOption},x=>{a.value=x?!!x.autoCheckChildren:!1,l.value=x?!!x.autoCheckParent:!1,s.value=x?x.selectionRange:"All"});function c(x,y){for(let N=0;N<y.length;N++)if(!x.includes(y[N]))return!1;return!0}function p(x,y){return x.filter(m=>y.indexOf(m)===-1)}const f=n.computed(()=>s.value==="OnlyParent"),d=n.computed(()=>s.value==="OnlyChildren");function u(x,y){let N=x;const m=t.value[y],h=m.raw[r.value],T=Array.from(m.raw.__fv_descendant_index__).map($=>t.value[$]),M=T.map($=>$.raw[r.value]),I=c(x,M),k=c(x,[h]);return k&&I&&f.value&&(N=p(x,M),T.forEach($=>{$.disable=!0})),k&&I&&d.value&&(N=p(x,[h]),T.forEach($=>{$.disable=!0})),N}function S(x,y){let N=x;const m=y[r.value],h=Array.from(y.__fv_children_index__).map(O=>t.value[O]),T=h.map(O=>O.raw[r.value]),M=c(x,T),I=c(x,[y[r.value]]);return I&&M&&f.value&&(N=p(x,T),h.forEach(O=>{O.disable=!0})),I&&M&&d.value&&(N=p(x,[m]),h.forEach(O=>{O.disable=!0})),N}function v(x,y){let N=x.map(M=>M[r.value]);return y.__fv_parent_index__>0&&(N=u(N,y.__fv_parent_index__)),y.__fv_children_index__.length>0&&(N=S(N,y)),x.filter(M=>N.includes(M[r.value]))}return{autoCheckChildren:a,autoCheckParent:l,interactAfterCheckHierarchyItem:v}}function sa(e,t,o,i,r){const{select:a,unSelect:l,indeterminate:s,getSelectedItems:c}=i,{autoCheckChildren:p,autoCheckParent:f,interactAfterCheckHierarchyItem:d}=la(e,t,o),{idField:u}=o;function S(){return t.value.filter(y=>!!y.checked).map(y=>y.raw.__fv_index__)}function v(y,N){return y.filter(h=>N.indexOf(h)===-1)}function w(y){const N=S();y.raw.__fv_children_index__.some(h=>N.includes(h))&&!!y.checked!==!0&&s(y)}function C(y){let N=y.raw.__fv_parent_index__;for(;N!==void 0;){const m=S(),h=t.value[N],T=v(h.raw.__fv_children_index__,m);T.length===h.raw.__fv_children_index__.length&&T.length!==0?l(h):T.length===0?f.value&&a(h):T.length<h.raw.__fv_children_index__.length&&h.checked!==!0&&s(h),N=h.raw.__fv_parent_index__}}function _(y){const N=!!y.checked;p.value&&y.raw.__fv_children_index__.map(m=>t.value[m]).forEach(m=>{N?a(m):l(m)})}function b(y){_(y),C(y);const N=y.raw;let m=c();m=d(m,N),w(y),r.emit("selectionChange",m)}function g(y,N){let m=-1;if(y.raw.__fv_parent_index__>-1){const I=t.value[y.raw.__fv_parent_index__].raw.__fv_descendant_index__,k=I.length>1,F=I.findIndex($=>$===N),O=F===I.length-1;m=k?O?I[F-1]:I[F+1]:-1}return m>-1?t.value[m]:null}function V(y){return y.raw.__fv_parent_index__>-1?t.value[y.raw.__fv_parent_index__]:null}function x(y){const N=t.value[y];if(!N)return null;const m=g(N,y),T=m!==null?m:V(N);return T?T.raw[u.value]:null}return{getNextSelectableHierarchyItemId:x,toggleSelectHierarchyItem:b}}function Sn(e,t,o,i,r,a,l,s){var Ie;const{dataView:c}=t,{getVisualData:p,maxVisibleRowIndex:f,minVisibleRowIndex:d}=r,u=n.ref(i.value.primaryColumnsWidth),S=n.ref(i.value.leftColumnsWidth),v=n.ref(i.value.rightColumnsWidth),w=((Ie=e.rowOption)==null?void 0:Ie.height)||28,C=n.ref(0),_=n.ref(0);let b=0,g=a.value-1;const V=n.ref(0),x=n.ref(0),y=n.ref(0);function N(){if(c.value.length<=0)return 0;const X=f.value<c.value.length?c.value[f.value]:c.value[c.value.length-1];return(X.__fv_data_position__||0)+(X.__fv_data_height__||0)+Math.max(c.value.length-1-f.value,0)*w}const m=n.computed(()=>{const X=N();return c.value.length>a.value+l?Math.floor((a.value+l)/c.value.length*x.value):Math.floor(x.value/Math.max(X,x.value)*x.value)}),h=n.computed(()=>Math.floor(y.value/Math.max(u.value,y.value)*V.value)),T=0,M=0,I=n.computed(()=>V.value-(S.value+u.value+v.value+s.value));function k(X){const te=c.value.find(de=>de.__fv_data_position__>X);return te?te.__fv_index__-1:0}function F(X){var Ge,He;if(!c.value.length){o.value=[];return}const te=(Ge=e.pagination)!=null&&Ge.enable?0:Math.max(b-l,0),de=c.value[c.value.length-1].__fv_index__,_e=(He=e.pagination)!=null&&He.enable?c.value.length-1:Math.min(g+l-1,de),ke=c.value[te-1],$e=p(te,_e,ke,X);$e.length&&(o.value=[...$e])}const O=n.computed(()=>N()>x.value),$=n.computed(()=>Math.floor(u.value)>y.value);function j(X){let te=C.value+X;te>T&&(te=T);const de=te>T,_e=N(),ke=O.value;ke&&te<x.value-_e&&(te=x.value-_e),(!ke||de)&&(te=T),C.value!==te&&(C.value=te,b=k(Math.abs(C.value)),g=b+a.value,(b<d.value||g>f.value-l/2)&&F())}function P(X){if(!$.value){_.value=0;return}let te=_.value+X;te>M&&(te=M),te<I.value&&(te=I.value),_.value!==te&&(_.value=te)}function B(){Math.abs(_.value)+y.value>u.value&&(_.value=Math.min(y.value-u.value,0))}function D(){C.value=0,b=0,g=a.value-1,F()}n.watch(y,()=>{P(0)}),n.watch(i,()=>{u.value=i.value.primaryColumnsWidth,S.value=i.value.leftColumnsWidth,v.value=i.value.rightColumnsWidth});function G(X){let{deltaX:te}=X.deltaX,de=-1*X.deltaY;return typeof te>"u"&&(te=-1*X.wheelDeltaX/6),typeof de>"u"&&(de=X.wheelDeltaY/6),X.deltaMode&&X.deltaMode===1&&(te*=10,de*=10),X.shiftKey?{deltaY:-de,deltaX:-te}:{deltaX:te,deltaY:de}}function oe(X){X.preventDefault(),X.stopPropagation();const{deltaX:te,deltaY:de}=G(X);j(de),P(te)}const ae=n.computed(()=>({height:`${c.value.length*w}px`,width:`${S.value}px`,transform:`translateY(${C.value}px)`})),ve=n.computed(()=>({transform:`translateY(${C.value}px)`})),Te=n.computed(()=>({height:`${c.value.length*w}px`,width:`${u.value}px`,transform:`translate(${_.value}px, ${C.value}px)`})),xe=n.computed(()=>({transform:`translate(${_.value}px, ${C.value}px)`})),ye=n.computed(()=>({height:`${c.value.length*w}px`,width:`${v.value}px`,transform:`translateY(${C.value}px)`})),we=n.computed(()=>({transform:`translateY(${C.value}px)`})),Ne=n.computed(()=>({height:`${c.value.length*w}px`,width:`${s.value}px`,transform:`translateY(${C.value}px)`})),ie=n.computed(()=>({width:`${S.value}px`})),pe=n.computed(()=>({transform:`translateX(${_.value}px)`})),W=n.computed(()=>({width:`${v.value}px`})),U=n.computed(()=>{const X=N();return C.value/(x.value-X)*(x.value-m.value)}),le=n.computed(()=>({height:`${m.value}px`,top:`${U.value}px`})),Q=n.computed(()=>_.value/I.value*(V.value-h.value)),me=n.computed(()=>({width:`${h.value}px`,left:`${Q.value}px`})),ge=n.ref(!1),ce=n.ref(-1),Se=n.ref(-1),R=n.ref();function se(X){if(ge.value&&Se.value!==-1){const te=Se.value-X.pageX,de=V.value-h.value;if(Math.abs(te)<=de){const _e=te/(y.value-h.value)*(u.value-y.value);P(_e),Se.value=X.pageX}}}function ue(X){if(ge.value&&ce.value!==-1){const te=ce.value-X.pageY,de=N(),_e=de-m.value;if(Math.abs(te)<=_e){const ke=te/(x.value-m.value)*(de-x.value);j(ke),ce.value=X.pageY}}}function L(X){ge.value=!1,ce.value=-1,Se.value=-1,document.removeEventListener("mouseup",L),document.removeEventListener("mousemove",se),document.removeEventListener("mousemove",ue),document.body.style.userSelect="",R.value&&(R.value.style.opacity=null)}function fe(X,te,de){var $e;ge.value=!0;const _e=($e=X.target)==null?void 0:$e.parentElement;_e&&(_e.style.opacity=1,R.value=_e);const ke=de==="horizontal"?se:ue;de==="vertical"&&(ce.value=X.pageY),de==="horizontal"&&(Se.value=X.pageX),te.value&&(te.value,document.addEventListener("mousemove",ke),document.addEventListener("mouseup",L),document.body.style.userSelect="none")}return{onMouseDownScrollThumb:fe,onWheel:oe,dataGridWidth:V,gridDataStyle:Te,gridHeaderColumnsStyle:pe,gridMergedDataStyle:xe,gridSideStyle:Ne,fitHorizontalScroll:B,viewPortWidth:y,viewPortHeight:x,horizontalScrollThumbStyle:me,leftFixedGridDataStyle:ae,leftFixedGridHeaderColumnsStyle:ie,leftFixedGridMergedDataStyle:ve,reCalculateVisualDataRows:F,resetScroll:D,rightFixedGridDataStyle:ye,rightFixedGridHeaderColumnsStyle:W,rightFixedGridMergedDataStyle:we,shouldShowHorizontalScrollbar:$,shouldShowVirticalScrollbar:O,verticalScrollThumbStyle:le,offsetX:_,offsetY:C}}function xn(e,t,o,i,r,a,l,s){const c=n.ref(i.value-1+r),p=n.ref(0),{renderDataRow:f}=a,d=l?l.renderGroupRow:f,u=s?s.renderSummaryRow:f;function S(C){let _=f;return C.__fv_data_grid_group_row__&&(_=d),C.__fv_data_grid_group_summary__&&(_=u),_}function v(C,_,b,g){const{dataView:V}=o,x=[];if(V.value.length>0){const y=g?Date.now().toString():"";for(let N=C,m=0;N<=_;N++,m++){const h=V.value[N],T=V.value[N-1]||b,M=x[m-1],I=T?(T.__fv_data_position__||0)+(T.__fv_data_height__||0):0,F=S(h)(h,T,M,N,I,t.value);F.refreshKey=y,x.push(F)}}return p.value=x.length>0?x[0].index:0,c.value=x.length>0?x[x.length-1].index:0,x}function w(C,_,b){const g=_.groupField||"",{groupValue:V}=_;o[C](g,V);const{dataView:x}=o,y=b[0].index,N=Math.min(y+i.value+r+1,x.value.length-1);return v(y,N)}return{getVisualData:v,maxVisibleRowIndex:c,minVisibleRowIndex:p,toggleGroupRow:w}}function ca(){function e(t,o){var a,l;const i=o.raw[t.field],r=(a=t.editor)==null?void 0:a.enumData.find(s=>{var c;return s[(c=t.editor)==null?void 0:c.idField]===i});return r==null?void 0:r[((l=t.editor)==null?void 0:l.textField)||"name"]}return{renderEnumColumn:e}}function da(){function e(i,r){return i?n.createVNode("span",{innerHTML:r.formatter.trueText},null):n.createVNode("span",{innerHTML:r.formatter.falseText},null)}function t(i,r){var a,l;return i?(a=r.formatter)==null?void 0:a.trueText:(l=r.formatter)==null?void 0:l.falseText}function o(i,r){const{formatter:a}=i,l=r.raw[i.field];if(a.type===wt.TEXT)return t(l,i);if(a.type===wt.IMAGE)return e(l,i)}return{renderBooleanColumn:o}}function ua(){const{formatTo:e}=Ue.useDateFormat();function t(i,r){return e(i,r.formatter.dateFormat)}function o(i,r){const a=r.raw[i.field];return t(a,i)}return{renderDateColumn:o}}function pa(){const{formatTo:e}=Ue.useNumberFormat();function t(i,r){const{formatter:a}=r,l={precision:a.precision,prefix:a.prefix||"",suffix:a.suffix||"",decimalSeparator:a.decimal||".",groupSeparator:a.thousand||""};return e(i,l)}function o(i,r){const a=r.raw[i.field];return t(a,i)}return{renderNumberColumn:o}}function fa(){const{renderBooleanColumn:e}=da(),{renderEnumColumn:t}=ca(),{renderNumberColumn:o}=pa(),{renderDateColumn:i}=ua();function r(s){return s}function a(s,c){const{formatter:p}=c;return p.customFormat?new Function(`return ${p.customFormat}`)():s}function l(s,c,p){const f=p.data[c.field],{formatter:d}=c;return d.type==="none"?f:d.type==="custom"?a(f,c):d.type==="enum"?t(c,p):d.type==="number"?o(c,p):d.type==="boolean"?e(c,p):d.type==="date"?i(c,p):f}return{renderFormatColumn:l}}function _n(e,t,o){var w;const i=n.ref(e.mergeCell),a=((w=n.ref(e.rowOption).value)==null?void 0:w.wrapContent)||!1,{updateVisualInfomation:l}=o,{renderCommandColumn:s}=Ui(),{renderFormatColumn:c}=fa();function p(C,_,b,g,V,x=1){const y={colSpan:x,rowSpan:1,index:b,field:C,data:g[C],editingData:g[C],parent:V,mode:_,getEditor:N=>N.data,setRef:N=>l(N,y,g),update:()=>{},accept:()=>{},cancel:()=>{}};return y}function f(C,_,b){return C.getEditor=g=>t.getEditor(g,_,g.parent),C.setRef=g=>a&&l(g,C,b),C.update=g=>{g!==void 0&&(C.editingData=g)},C.accept=()=>{b[_.field]=C.editingData,C.data=b[_.field]},C.cancel=()=>{C.editingData=C.data},C}function d(C,_){_.dataType==="commands"?C.formatter=(b,g)=>s(_,g):_.formatter&&(C.formatter=(b,g)=>typeof _.formatter=="function"?_.formatter(b,g):c(_.dataType,_,g))}function u(C,_,b){const g=_&&_.data[b];if(g&&g.data===C.data){const x=g&&g.spannedBy||g;x.rowSpan++,x.spanned=x.spanned||[],x.spanned.push(C),C.colSpan=0,C.rowSpan=0,C.spannedBy=x}}function S(C,_,b){i.value&&u(C,_,b.field)}function v(C,_,b,g,V){const x=C.readonly?Me.readonly:Me.editable,y=p(C.field,x,_,b,g);return f(y,C,b),d(y,C),S(y,V,C),y}return{createCellByColumn:v,createCellByField:p}}function Vn(e,t,o,i,r,a){var _,b;const l=n.ref(e.rowOption),s=((_=l.value)==null?void 0:_.height)||28,c=((b=l.value)==null?void 0:b.wrapContent)||!1,{idField:p}=i,{collapseField:f}=o,{updateRowPosition:d}=r,{createCellByColumn:u}=a;function S(g,V,x,y,N,m){var oe,ae;const{__fv_data_grid_group_field__:h,__fv_data_grid_group_value__:T,__fv_data_index__:M}=x,I=x.__fv_data_grid_group_layer__||x.__fv_parents__?(oe=x.__fv_parents__)==null?void 0:oe.size:0,k=typeof x.parent=="number"?Number(x.parent):-1,F=x.__fv_data_grid_group_collapse__||x[f.value],O=x.__fv_visible__===void 0?!0:x.__fv_visible__,$=x.__fv_checked__,j=x.__fv_indeterminate__,P=y&&y[p.value]===x.parent,B=y&&y.parent===x.parent,D=P&&N&&(N.collapse||!N.visible)||B&&N&&!N.visible,G={collapse:F,data:{},dataIndex:M,groupField:h,groupValue:T,layer:I,index:V,parentIndex:k,pre:y,top:m,type:g,raw:x,checked:$,disabled:x.disabled,indeterminate:j,setRef:ve=>{G.ref=ve},visible:O&&!D,status:Ae.initial};return y||(x.__fv_data_position__=0),c||(G.height=s,x.__fv_data_height__=G.height,d(G,x)),(ae=l.value)!=null&&ae.customRowStatus&&(l.value.customRowStatus(G),x.__fv_collapse__=G.collapse,x.__fv_visible__=G.visible),G}function v(g,V,x,y,N,m){const h=S(ze.data,N,V,x,y,m);return g.forEach((T,M)=>{h.data[T.field]=u(T,N,V,h,y)}),h}function w(g,V,x,y,N){return Object.assign(g,{index:V,dataIndex:x,top:y,pre:N})}function C(g,V,x,y,N,m){const h=g.__fv_data_index__,T=g[p.value],M=t.getEditingSnapshot(T);return M===null?v(m,g,V,x,y,N):w(M,y,h,N,x)}return{createEmptyRow:S,createNewRowFromDataItem:v,renderDataRow:C}}function ma(e,t,o,i){const r=n.ref(e.summary),{idField:a}=t,{createCellByField:l}=o,{createEmptyRow:s}=i,c=n.computed(()=>{const u=r.value;return(u==null?void 0:u.groupFields)||[]}),p=n.computed(()=>{const u=r.value;return u&&u.enable&&u.groupFields&&u.groupFields.length>0});function f(u,S,v,w){if(p.value){const C=u.data[S];let _=C.colSpan;const b=c.value.reduce((g,V)=>(g.set(V,!0),g),new Map);w.reduce((g,V,x)=>{if(b.has(V.field)){const y=l(V.field,Me.readonly,x,v,u);u.data[V.field]=y,_-1>x&&(_=x)}return g},u),C.colSpan=_}}function d(u,S,v,w,C,_){const b=u.__fv_data_grid_group_field__,g=s(ze.group,w,u,S,v,C);return g.data[a.value]=l(a.value,Me.readonly,-1,u,g,0),g.data[b]=l(b,Me.readonly,1,u,g,_.length),f(g,b,u,_),g}return{renderGroupRow:d}}function ga(e,t,o,i){const{idField:r}=t,{createCellByField:a}=o,{createEmptyRow:l}=i;function s(c,p,f,d,u,S){const v=c.__fv_data_grid_group_field__,w=l(ze.summary,d,c,p,f,u);return w.data[r.value]=a(r.value,Me.readonly,-1,c,w),w.data[v]=a(v,Me.readonly,1,c,w,S.length),w}return{renderSummaryRow:s}}function Fn(e,t,o){var N;const{idField:i}=o,r=n.ref(e.editable),a=n.ref(e.editOption),l=n.ref(((N=e.rowOption)==null?void 0:N.wrapContent)||!1);n.watch(()=>e.editable,()=>{r.value=e.editable}),n.watch(()=>{var m;return(m=e.editOption)==null?void 0:m.editMode},m=>{a.value.editMode=m});const s=new Map([["boolean","check-box"],["datetime","date-picker"],["enum","combo-list"],["number","number-spinner"],["string","input-group"],["text","text"],["commands","commands-editor"]]);let c,p,f,d;function u(m){return p&&p.raw[i.value]===m?p:null}function S(m,h,T){m.mode=Me.editing,c=m,p=h,f=h.raw[m.field],d=T}function v(m){m.accept(),m.mode=Me.editable,t.emit("endEditCell",{cell:m,row:p,newValue:p==null?void 0:p.raw[m.field],oldValue:f,column:d})}function w(m){c&&(v(c),p&&(p=null)),document.body.removeEventListener("click",w)}function C(m,h,T,M){r.value&&a.value.editMode==="cell"&&h.mode===Me.editable&&(c&&v(c),S(h,T,M),document.body.removeEventListener("click",w),document.body.addEventListener("click",w))}function _(m){Object.values(m.data).filter(h=>h.mode===Me.editable&&h.field!=="__commands__").forEach(h=>{h.mode=Me.editing}),m.status=Ae.editing,p=m}function b(m,h){Object.values(m.data).filter(T=>T.mode===Me.editing).forEach(T=>{h?T.accept():T.cancel(),T.mode=Me.editable}),m.status=Ae.initial,p===m&&(p=null)}function g(m){r.value&&a.value.editMode==="row"&&p!==m&&(p&&b(p,!1),_(m))}function V(m){b(m,!0),m.status=Ae.initial}function x(m){b(m,!1),m.status=Ae.initial}function y(m,h,T){const M=h.dataType,I=h.editor||{type:s.get(M)||"input-group"};return!l.value&&I.type==="text"&&(I.type="input-group"),I?n.createVNode(ht.FDynamicFormInput,{focusOnCreated:e.focusOnEditingCell,selectOnCreated:e.selectOnEditingCell,editor:I,modelValue:m.editingData,"onUpdate:modelValue":k=>m.editingData=k},null):m.data}return{onClickCell:C,onEditingRow:g,acceptEditingRow:V,cancelEditingRow:x,getEditingSnapshot:u,getEditor:y}}function Nn(e){const t=n.ref(e.idField);function o(i){if(i&&i.length){const r=i[0];Object.keys(r).includes(t.value)||(t.value="__fv_indetify__")}}return{idField:t,reviseIdentifyField:o}}function ha(e,t,o,i,r,a){const{addNewDataItemAtLast:l}=o,{columnContext:s}=i,{onClickCell:c}=r;function p(v,w){const C=s.value.primaryColumns.findIndex(N=>N.field===v.field),_=v.parent,b=_.index,g=s.value.primaryColumns.length-1,V=a.value.length-1,x=C===g,y=b===V;if(C>-1&&!x){const N=s.value.primaryColumns[C+1],m=_.data[N.field];c(w,m)}if(x&&!y){const m=a.value[b+1].data[s.value.primaryColumns[0].field];c(w,m)}if(x&&y){if(e.appendOnEnterAtLastCell){l();const m=a.value[b+1].data[s.value.primaryColumns[0].field];c(w,m)}t.emit("enterUpInLastCell")}}function f(v,w){const C=s.value.primaryColumns.findIndex(V=>V.field===v.field),_=v.parent,b=s.value.primaryColumns.length-1;if(C>0&&C<=b){const V=s.value.primaryColumns[C-1],x=_.data[V.field];c(w,x)}}function d(v,w){const C=v.field,b=v.parent.index,g=a.value.length-1;if(b>-1&&b<g){const y=a.value[b+1].data[C];c(w,y)}}function u(v,w){const C=v.field,b=v.parent.index,g=a.value.length-1;if(b>0&&b<=g){const y=a.value[b-1].data[C];c(w,y)}}function S(v,w){const{key:C,shiftKey:_}=v;if(C==="Enter"&&!_){p(w,v);return}if(_&&C==="Enter"){f(w,v);return}if(C==="ArrowDown"){d(w,v);return}C==="ArrowUp"&&u(w,v)}return{navigateOnKeyUp:S}}function kn(e,t,o,i){const{idField:r}=i,{currentSelectedDataId:a,multiSelectOnClickRow:l,multiSelectOnClickRowWithShift:s,selectItem:c,selectedValues:p,toggleSelectItem:f,enableSelectRow:d}=o,u=n.ref(0),S=n.ref(-1);function v(y){return d.value&&(s.value?p.value.includes(y.raw[r.value]):y.raw[r.value]===a.value)}function w(y){var m;const N={"fv-grid-row":y.type===ze.data,"fv-grid-group-row":y.type===ze.group,"fv-grid-summary-row":y.type===ze.summary,"fv-grid-row-hover":y.index===S.value,"fv-grid-row-selected":v(y),"fv-grid-row-odd":y.dataIndex%2>0,"fv-grid-row-even":y.dataIndex%2===0,"fv-grid-disabled":y.disabled};if((m=e.rowOption)!=null&&m.customRowStyle){const h=e.rowOption.customRowStyle(y.raw)||{};return Object.assign({},N,h)}return N}function C(y){var m;const N={"fv-grid-cell":!0};if((m=e.rowOption)!=null&&m.customCellStyle){const h=e.rowOption.customCellStyle(y)||{};return Object.assign({},N,h)}return N}function _(y){u.value+=1,setTimeout(()=>{u.value===1&&t.emit("ClickRow",y.index,y.raw),u.value=0},250),u.value>1&&(t.emit("doubleClickRow",y.index,y.raw),console.log(`on double click row: ${y.index}`),u.value=0)}function b(y,N){if(N.disabled)return;s.value&&y.shiftKey||l.value?f(N):c(N),_(N),y.stopPropagation()}function g(y,N){}function V(y,N){}function x(y){var m;const N={"fv-grid-sidebar-row":!0,"fv-grid-sidebar-row-hover":y.index===S.value,"fv-grid-sidebar-row-selected":v(y),"fv-grid-sidebar-row-odd":y.dataIndex%2>0,"fv-grid-sidebar-row-even":y.dataIndex%2===0};if((m=e.rowOption)!=null&&m.customRowStyle){const h=e.rowOption.customRowStyle(y.raw)||{};return Object.assign({},N,h)}return N}return{gridCellClass:C,gridRowClass:w,onClickRow:b,onMouseoverRow:g,sidebarRowClass:x,onMouseoutRow:V}}function Tn(e,t,o,i,r){const{idField:a}=o,l=n.ref(""),s=n.computed(()=>e.selection.enableSelectRow),c=n.ref(e.selection.multiSelect??!1),p=n.ref(e.selection.multiSelectMode),f=n.ref(e.selection.showCheckbox),d=n.ref(e.selection.showSelectAll),u=n.ref(e.selectionValues);n.watch(()=>e.selection.showSelectAll,(B,D)=>{B!==D&&(d.value=B)});function S(){return t.getSelectionItems(u.value)}function v(){const B=i.value.reduce((G,oe)=>(G.set(oe.raw[a.value],oe),G),new Map);return u.value.map(G=>B.get(G)).filter(G=>!!G)}const w=n.computed(()=>s.value&&c.value),C=n.computed(()=>!!e.hierarchy),_=n.computed(()=>{const B=f.value&&p.value==="DependOnCheck";return w.value&&B}),b=n.computed(()=>w.value&&!f.value),g=n.computed(()=>w.value&&f.value&&p.value==="OnCheckAndClick");n.computed(()=>g.value);function V(){const B=t.getSelectionItems(u.value);r.emit("selectionChange",B)}function x(){i.value.forEach(D=>{D.checked=!1,D.indeterminate=!1,D.raw.__fv_checked__=!1,D.raw.__fv_indeterminate__=!1}),v().forEach(D=>{D.checked=!0,D.raw.__fv_checked__=!0})}n.watch(()=>i.value,()=>{x()}),n.watch(()=>e.selectionValues,B=>{u.value=B,x()},{immediate:!0}),n.watch(()=>e.selection,B=>{c.value=!!B.multiSelect,p.value=B.multiSelectMode||"DependOnCheck",f.value=!!B.showCheckbox});const y=n.computed(()=>!c.value);function N(B){return B.raw[a.value]||""}function m(B){return u.value.findIndex(G=>G===N(B))}function h(){v().forEach(G=>{G.checked=!1}),t.getSelectionItems(u.value).forEach(G=>{G.__fv_checked__=!1}),u.value=[],l.value=""}function T(B){const D=B.raw;D.__fv_checked__=!0,D.__fv_indeterminate__=!1;const G=new Set(u.value);G.add(D[a.value]),u.value=Array.from(G.values()),B.checked=!0,B.indeterminate=!1,l.value=B.raw[a.value]}function M(B){const D=B.raw;D.__fv_checked__=!1,D.__fv_indeterminate__=!1,u.value=u.value.filter(G=>G!==D[a.value]),B.checked=!1,B.indeterminate=!1,l.value=""}function I(B){const D=B.raw;D.__fv_checked__=!1,D.__fv_indeterminate__=!0,u.value=u.value.filter(G=>G!==D[a.value]),B.checked=!1,B.indeterminate=!0}function k(B){y.value&&h(),B.checked?M(B):T(B),V()}function F(B){B.raw[a.value]!==l.value&&(h(),T(B),V())}function O(B){const D=i.value.find(G=>G.raw[a.value]===B);D&&F(D)}function $(){i.value.forEach(B=>T(B)),l.value="",V()}function j(){u.value.splice(0,u.value.length),l.value="",i.value.forEach(B=>{const D=B.raw;D.__fv_checked__=!1,D.__fv_indeterminate__=!1,B.checked=!1,B.indeterminate=!1}),V()}function P(){return i.value.find(B=>B.raw[a.value]===l.value)}return{clearSelection:h,currentSelectedDataId:l,enableMultiSelect:c,enableSelectRow:s,findIndexInSelectedItems:m,getSelectedItems:S,getSelectionRow:P,indeterminate:I,isSelectingHirarchyItem:C,multiSelectMode:p,multiSelectOnClickRow:g,multiSelectOnClickRowWithShift:b,multiSelectOnlyOnCheck:_,select:T,selectAll:$,selectedValues:u,selectItem:F,selectItemById:O,showCheckBox:f,showSelectAll:d,toggleSelectItem:k,unSelect:M,unSelectAll:j}}function In(e,t){var C,_;const o=String(Date.now()),i=50,{showCheckBox:r,showSelectAll:a}=t,l=n.ref(((C=e.rowNumber)==null?void 0:C.enable)??!1),s=n.computed(()=>e.hierarchy&&r.value&&e.selection.enableSelectRow&&e.selection.multiSelect?!1:r.value),c=n.ref(l.value?((_=e.rowNumber)==null?void 0:_.width)??32:0),p=n.ref(s.value?i:0),f=n.computed(()=>{var b;return l.value?((b=e.rowNumber)==null?void 0:b.heading)??"序号":""}),d=n.computed(()=>(s.value&&!e.hierarchy?Number(p.value):0)+(l.value?Number(c.value):0));n.watch(()=>e.rowNumber,b=>{b&&b.enable!==void 0&&(l.value=b.enable),b&&b.width!==void 0&&(c.value=b.width)});function u(b){return{top:`${b.top}px`,width:`${d.value}px`,height:`${b.height||""}px`}}const S=n.computed(()=>({width:`${d.value}px`}));function v(b){return`${o}_${b.type}_r_${b.index}_${b.refreshKey||""}`}function w(b){return`${o}_${b.type}_r_${b.index}_${b.refreshKey||""}`}return{showRowNumer:l,showSidebarCheckBox:s,sidebarCellPosition:u,sidebarCornerCellStyle:S,sidebarTitle:f,sidebarWidth:d,rowKey:w,cellKey:v}}const ya={ascend:(e,t)=>e===t?0:e===!1?-1:1,decend:(e,t)=>e===t?0:e===!0?-1:1},va={ascend:(e,t)=>{const o=new Date(new Date(e).toLocaleDateString()).valueOf(),i=new Date(new Date(t).toLocaleDateString()).valueOf();return o===i?0:o<i?-1:1},decend:(e,t)=>{const o=new Date(new Date(e).toLocaleDateString()).valueOf(),i=new Date(new Date(t).toLocaleDateString()).valueOf();return o===i?0:o<i?1:-1}},ba={ascend:(e,t)=>e===t?0:e<t?-1:1,decend:(e,t)=>e===t?0:e<t?1:-1},Ca={ascend:(e,t)=>e===t?0:e<t?-1:1,decend:(e,t)=>e===t?0:e<t?1:-1};function Mn(e){const t=new Map([["boolean","boolean-sorter"],["date","datetime-sorter"],["datetime","datetime-sorter"],["number","numeric-sorter"],["string","text-sorter"],["text","text-sorter"],["enum","text-sorter"],["reference","text-sorter"]]),o=new Map([["boolean-sorter",ya],["datetime-sorter",va],["numeric-sorter",ba],["text-sorter",Ca]]);function i(l){const s=(l==null?void 0:l.dataType)||"string",c=t.get(s)||"text-sorter";return o.get(c)||(l==null?void 0:l.sorter)}function r(l){return i(l.column)}function a(l,s){const c=r(l),p=(l.status&Be.sortable)===Be.sortable&&(l.status&Be.sorted)===Be.sorted,f=(l.status&Be.ascending)===Be.ascending,d=(l.status&Be.descending)===Be.descending;if(p&&c){const u=f?c.ascend:d?c.decend:void 0;u?s.addSorter(l.field,{field:l.field,compare:u}):s.removeSorter(l.field)}else s.removeSorter(l.field)}return{getSorterByColumn:i,updateSorter:a}}function wa(e){function t(i){return{}}function o(i,r){const a=e.value.primaryColumnsMap.get(i.field)||e.value.leftColumnsMap.get(i.field)||e.value.rightColumnsMap.get(i.field)||{valign:"middle",align:"center"},{valign:l,align:s}=a;return{"d-flex":!0,"h-100":!0,"w-100":r==null?void 0:r.showEllipsis,"justify-content-start":s!=="center"&&s!=="right","justify-content-center":s==="center","justify-content-right":s==="right","align-items-start":l!=="middle"&&l!=="bottom","align-items-center":l==="middle","align-items-end":l==="bottom"}}return{cellContentPosition:t,cellContentClass:o}}function Ke(e){return typeof e>"u"}function On(e){var d,u,S,v,w,C,_,b;const t=n.ref((d=e.pagination)==null?void 0:d.enable),o=n.ref(((u=e.pagination)==null?void 0:u.index)||1),i=n.ref((S=e.pagination)==null?void 0:S.size),r=n.ref((v=e.pagination)==null?void 0:v.sizeLimits),a=n.ref((w=e.pagination)==null?void 0:w.mode),l=n.ref((C=e.pagination)==null?void 0:C.showIndex),s=n.ref((_=e.pagination)==null?void 0:_.showLimits),c=n.ref(((b=e.pagination)==null?void 0:b.total)||0),p=n.computed(()=>a.value==="server"?c.value||0:c.value||e.data.length||0);return n.watch(()=>{var g;return(g=e.pagination)==null?void 0:g.sizeLimits},(g,V)=>{r.value=g},{immediate:!0,deep:!0}),n.watch(()=>{var g;return(g=e.pagination)==null?void 0:g.showIndex},(g,V)=>{g!==V&&(l.value=g)}),n.watch(()=>{var g;return(g=e.pagination)==null?void 0:g.showLimits},(g,V)=>{g!==V&&(s.value=g)}),n.watch(()=>{var g;return(g=e.pagination)==null?void 0:g.total},(g,V)=>{g!==V&&(c.value=g)}),n.watch(()=>{var g;return(g=e.pagination)==null?void 0:g.enable},(g,V)=>{g!==V&&(t.value=g)}),{currentPage:o,pageSize:i,pageList:r,total:p,shouldRenderPagination:t,showPageIndex:l,showPageList:s,mode:a,updatePagination:g=>{if(!g)return;const{enable:V,total:x,size:y,index:N,sizeLimits:m,showIndex:h,showLimits:T}=g;Ke(V)||(t.value=V),Ke(N)||(o.value=N),Ke(y)||(i.value=y),Ke(m)||(r.value=m),Ke(h)||(l.value=h),Ke(T)||(s.value=T),Ke(x)||(c.value=x)}}}function Sa(e){const t="parent",o="layer",i="hasChildren",r=(a,l=1,s=[],c=null)=>(a=a||[],a.reduce((p,f)=>(f.id=f.id||f.data[e.idField],f.data[t]=c,f.data[o]=l,f.data[i]=!1,p.push(f.data),f.children&&f.children.length&&(f.data[i]=!0,r(f.children,l+1,s,f.id)),p),s),s);return{flatTreeData:r}}function $n(e,t,o,i,r,a,l,s,c,p,f,d,u,S,v,w){const{calculateCellPositionInRow:C}=a,{columnContext:_,hasLeftFixedColumn:b,hasRightFixedColumn:g}=l,{gridDataStyle:V,leftFixedGridDataStyle:x,rightFixedGridDataStyle:y}=S,{renderDataRow:N}=Wi(e,t,_,w,s,c,p,f,d,u),m=[N];function h(F,O){const $=C(F);return w.value.filter(j=>j.visible!==!1).map(j=>m[j.type](j,$,O))}function T(){return n.createVNode("div",{ref:i,class:"fv-grid-content-left-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:x.value},[h(_.value.leftColumns.filter(F=>F.visible),"left")])])}function M(){return n.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[n.createVNode("div",{class:"fv-grid-data",style:V.value},[h(_.value.primaryColumns.filter(F=>F.visible),"primary")])])}function I(){return n.createVNode("div",{ref:r,class:"fv-grid-content-right-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:y.value},[h(_.value.rightColumns.filter(F=>F.visible),"right")])])}function k(){const F=[];return b.value&&F.push(T()),F.push(M()),g.value&&F.push(I()),F}return{renderDataArea:k}}const at=n.defineComponent({name:"FTreeGrid",props:Ct,emits:["selectionChange"],setup(e,t){var Ve;const r=n.ref(),a=n.ref(),l=n.ref(),s=n.ref(),c=n.ref(),p=n.ref([]),f=n.ref(!1),d=n.ref(((Ve=e.rowOption)==null?void 0:Ve.wrapContent)||!1),{showLoading:u,renderLoading:S}=E.useLoading(e,r),v=E.useIdentify(e),w=E.useGroupData(e,v),C=E.useFilter(),_=E.useHierarchy(e),b=E.usePagination(e),g=E.useDataView(e,new Map,_,v,b),V=E.useSelection(e,g,v,p,t),x=E.useSelectHierarchyItem(e,p,v,V,t),y=n.computed(()=>e.disable),N=n.computed(()=>Math.min(g.dataView.value.length,100)),{containerStyleObject:m}=E.useDataViewContainerStyle(e),h=E.useCommandColumn(e),T=n.ref(e.columns),{applyCommands:M}=h;M(T);const I=E.useColumn(e),k=E.useSort(e),{applyColumnSorter:F,columnContext:O,updateColumnRenderContext:$}=I;F(g,k);const j=E.useGroupColumn(e,O),P=E.useEdit(e,t,v),B=E.useVisualDataBound(),D=E.useVisualDataCell(e,P,B),G=E.useVisualDataRow(e,P,_,v,B,D),oe=E.useVisualData(e,T,g,N,0,G),{getVisualData:ae}=oe,ve=E.useCellPosition(e,O),Te=E.useSidebar(e,V),{sidebarWidth:xe}=Te;p.value=ae(0,N.value+0-1);const ye=E.useVirtualScroll(e,g,p,O,oe,N,0,xe),{onWheel:we,dataGridWidth:Ne,viewPortHeight:ie,viewPortWidth:pe}=ye,W=E.useFitColumn(e,O,a,pe,j),{calculateColumnsSize:U}=W,le=E.useFilterHistory(),Q=E.useColumnFilter(a,c,g,le,ye),me=E.useRow(e,t,V,v),ge=E.useDragColumn(e,t,I,g,j,w,ye),ce=n.computed(()=>({"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-datagrid-strip":e.showStripe})),Se=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":f.value,"fv-grid-wrap-content":d.value})),{renderDataArea:R}=$n(e,t,l,s,c,ve,I,g,P,_,me,V,x,ye,oe,p),{renderGridHeader:se,renderGridColumnResizeOverlay:ue}=E.getColumnHeader(e,a,s,c,I,g,ge,Q,C,le,W,j,V,Te,k,ye,pe,p),{renderDataGridSidebar:L}=E.getSidebar(e,me,V,Te,ye),{renderDisableMask:fe}=E.getDisableMask(),{renderHorizontalScrollbar:Ie}=E.getHorizontalScrollbar(e,a,ye),{renderVerticalScrollbar:X}=E.getVerticalScrollbar(e,a,ye);function te(){var ne,Fe;ie.value=((ne=l.value)==null?void 0:ne.clientHeight)||0,Ne.value=((Fe=a.value)==null?void 0:Fe.clientWidth)||0,U()}n.onMounted(()=>{a.value&&(lt.useResizeObserver(a.value,te),U(),n.nextTick(()=>{a.value&&(Ne.value=a.value.clientWidth),l.value&&(pe.value=l.value.clientWidth,ie.value=l.value.clientHeight)})),u.value&&S()}),n.onUnmounted(()=>{}),n.watch(pe,()=>{a.value&&U()});function de(){const ne=V.getSelectionRow();return ne?ne.dataIndex-1:-1}function _e(){const ne=de();g.insertNewDataItem(ne),p.value=ae(0,N.value+0-1)}function ke(){const ne=de();g.insertNewChildDataItem(ne),p.value=ae(0,N.value+0-1)}function $e(){const ne=de(),Fe=x.getNextSelectableHierarchyItemId(ne);g.removeHierarchyDataItem(ne),p.value=ae(0,N.value+0-1),Fe&&V.selectItemById(Fe)}function Ge(ne){P.onEditingRow(ne)}function He(ne){P.acceptEditingRow(ne)}function Xe(ne){P.cancelEditingRow(ne)}function Ye(ne){ne&&(T.value=ne,M(T),$(T.value),F(g,k),U())}function Je(ne){ne&&(g.load(ne),p.value=ae(0,N.value+0-1))}function Le(ne){V.selectItemById(ne)}function A(){return V.getSelectedItems()}const ee=n.computed(()=>!p.value||!p.value.length),{renderEmpty:re}=E.getEmpty(t);return t.expose({addNewDataItem:_e,addNewChildDataItem:ke,removeDataItem:$e,editDataItem:Ge,acceptDataItem:He,cancelDataItem:Xe,updateColumns:Ye,updateDataSource:Je,selectItemById:Le,getSelectedItems:A}),()=>n.createVNode("div",{ref:r,class:ce.value,style:m.value,onWheel:we},[se(),ee.value&&re(),n.createVNode("div",{ref:a,class:Se.value,onMouseover:()=>{},onMouseleave:()=>{}},[L(p),R(),Ie(),X()]),ue(),y.value&&fe()])}}),xa={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/check-box.schema.json",title:"check-box",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a check box",type:"string"},type:{description:"The type string of check box component",type:"string",default:"check-box"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},text:{description:"",type:"string",default:""},value:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"],ignore:["id","appearance","binding"]},_a=new Map([["appearance",We]]);function Va(e,t,o){return t}const Bn={id:{Type:String,default:""},customClass:{Type:String,default:""},disabled:{Type:Boolean,default:!1},indeterminate:{Type:Boolean,default:!1},modelValue:{Type:Boolean,default:!1},focusOnCreated:{type:Boolean,default:!1},value:{type:String,default:""},name:{type:String,default:""},label:{type:String,default:""},checked:{type:Boolean,default:!1}};Oe(Bn,xa,_a,Va);const Fa=n.defineComponent({name:"FCheckBox",props:Bn,emits:["change","changeValue","update:modelValue","update:checked"],setup(e,t){const o=n.inject(Ue.CHECKBOX_CONTEXT,null),{buttonClass:i,disabled:r,name:a,shouldRenderButton:l,shouldRenderNative:s,shouldRenderTag:c,tagClass:p,checked:f,onClickCheckBox:d}=Ue.useCheck(e,t,o==null?void 0:o.parentProps,o==null?void 0:o.parentContext);n.ref();const u=n.ref(e.id),S=n.ref(e.customClass),v=n.ref(e.modelValue),w=n.ref(e.indeterminate);return n.computed(()=>{const C={"custom-control":!0,"custom-checkbox":!0};return S.value&&S.value.split(" ").reduce((_,b)=>(_[b]=!0,_),C),C}),n.watch(()=>e.modelValue,C=>{v.value=C}),n.watch(()=>e.indeterminate,C=>{w.value=C}),n.onMounted(()=>{}),()=>{var C,_,b,g,V,x;return n.createVNode(n.Fragment,null,[l.value&&n.createVNode("div",{class:i.value,style:"border-radius:0;border: 1px solid #E8EBF2;",onClick:d},[(_=(C=t.slots).default)==null?void 0:_.call(C)]),c.value&&n.createVNode("div",{class:p.value,onClick:d},[n.createVNode("div",{class:"title"},[(g=(b=t.slots).default)==null?void 0:g.call(b)]),n.createVNode("div",{class:"tip"},null),n.createVNode("span",{class:"f-icon f-icon-check f-radio-icon"},null)]),s.value&&n.createVNode("div",{class:"custom-control custom-checkbox",onClick:d},[n.createVNode("input",{type:"checkbox",class:"custom-control-input",name:a.value,id:u,value:e.value,checked:f.value,disabled:r.value},null),n.createVNode("div",{class:"custom-control-label"},[(x=(V=t.slots).default)==null?void 0:x.call(V)])])])}}}),Na={id:{type:String,default:""},componentId:{type:String,default:""},type:{type:String,default:""},canDelete:{type:Boolean,default:!0},canMove:{type:Boolean,default:!0},canSelectParent:{type:Boolean,default:!0},customButtons:{type:Array,default:[]},customClass:{type:String,default:""},customStyle:{type:String,default:""},modelValue:{type:Object},ignore:{type:Boolean,default:!1}},ka={id:{type:String}},Ta=n.defineComponent({name:"FDesignerPlaceholder",props:ka,emits:[],setup(e){const t=n.computed(()=>({"drag-and-drop-alert":!0,"no-drag":!0,"w-100":!0})),o=n.computed(()=>({height:"60px",display:"flex","justify-content":"center","align-items":"center",margin:0,padding:".75rem 1.25rem",border:"1px solid transparent","border-radius":"3px",color:"#315585","background-color":"#dfedff","border-color":"#d2e6ff"}));return()=>n.createVNode("div",{class:t.value,style:o.value,role:"alert","data-noattach":"true","data-position":"0"},[n.createTextVNode("拖拽组件到这里")])}});function Ia(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!n.isVNode(e)}const It=n.defineComponent({name:"FDesignerItem",props:Na,emits:["selectionChange"],setup(e,t){const o=n.ref(`${e.modelValue.id}-component`),i=n.ref(e.canMove),r=n.ref(e.canDelete),a=n.ref(!1),l=n.ref(e.modelValue),s=n.ref(e.componentId||""),c=n.ref(""),p=n.ref(""),f=n.ref(e.customClass),d=n.ref(),u=n.inject("canvas-dragula"),S=n.ref(),v=n.inject("design-item-context"),w={designerItemElementRef:d,componentInstance:S,schema:l.value,parent:v,setupContext:t};n.provide("design-item-context",w);const C=n.inject("useFormSchema"),_=n.computed(()=>{const F=e.modelValue.appearance&&e.modelValue.appearance.class||"";let O={"farris-component":!0,"flex-fill":l.value.id=="root-component","position-relative":i.value&&r.value,"farris-nested":a.value,"can-move":i.value,"d-none":d.value&&d.value.classList.contains("d-none"),dgComponentSelected:d.value&&d.value.classList.contains("dgComponentSelected"),dgComponentFocused:d.value&&d.value.classList.contains("dgComponentFocused")};return O[`farris-component-${l.value.type}`]=!0,O=Ue.getCustomClass(O,F),O=Ue.getCustomClass(O,p.value),O=Ue.getCustomClass(O,f.value),O}),b=n.computed(()=>{const F={},O=e.modelValue.appearance&&e.modelValue.appearance.style||"";return O&&O.split(";").reduce(($,j)=>{const[P,B]=j.split(":");return $[P]=B,$},F),c.value&&c.value.split(";").reduce(($,j)=>{const[P,B]=j.split(":");return P&&($[P]=B),$},F),F});function g(F,O){var P,B,D;if(F&&(F.preventDefault(),F.stopPropagation()),S.value.triggerBelongedComponentToDeleteWhenDeleted){const G=S.value.getBelongedComponentInstance(S);if(G&&G.parent){const oe=n.ref(G==null?void 0:G.parent),ae=oe.value.contents.findIndex(ve=>ve.id===G.schema.id);(B=(P=oe.value)==null?void 0:P.contents)==null||B.splice(ae,1),(D=oe.value)==null||D.updateDragAndDropRules(),ut.value++}return}let $=v,j=G=>G.id===O.id;if(O.type==="component"&&($=v==null?void 0:v.parent,j=G=>G.component===O.id),$&&$.schema.contents){const G=$.schema.contents.findIndex(j);$.schema.contents.splice(G,1),$.componentInstance.value.updateDragAndDropRules(),ut.value++,t.emit("selectionChange")}}function V(F){return r.value&&n.createVNode("div",{role:"button",class:"btn component-settings-button",title:"删除",ref:"removeComponent",onClick:O=>{g(O,F)}},[n.createVNode("i",{class:"f-icon f-icon-yxs_delete"},null)])}function x(){return i.value&&n.createVNode("div",{role:"button",class:"btn component-settings-button",title:"移动",ref:"moveComponent"},[n.createVNode("i",{"data-dragging-icon":"true",class:"cmp_move f-icon f-icon-yxs_move"},null)])}function y(){return e.customButtons&&!!e.customButtons.length&&e.customButtons.map(F=>n.createVNode("div",{role:"button",class:`btn component-settings-button ${F.class||""}`,title:F.title,ref:F.id},[n.createVNode("i",{class:F.icon},null)]))}function N(F){return n.createVNode("div",{class:"component-btn-group","data-noattach":"true"},[n.createVNode("div",null,[V(F),x(),y()])])}function m(F,O,$,j){t.emit("selectionChange",F,O,$,j)}function h(F){let O;const $=F.type,j=Hr[$],P=Wr[$],B=P?P(F):{};B.customClass=e.ignore?B.customClass:"",B.componentId=s.value;const D=F.contents&&F.contents.length===0;return F.contents&&!!F.contents.length&&j?n.createVNode(j,n.mergeProps({ref:S},B),Ia(O=F.contents.map(oe=>n.createVNode(It,{key:oe.id,modelValue:oe,"onUpdate:modelValue":ae=>oe=ae,componentId:s.value,onSelectionChange:m},null)))?O:{default:()=>[O]}):j?D?n.createVNode(j,n.mergeProps({ref:S},B),{default:()=>[n.createVNode(Ta,null,null)]}):n.createVNode(j,n.mergeProps({ref:S},B),null):n.createVNode("div",null,null)}function T(F){if(F.type==="component-ref"){let $=C==null?void 0:C.getFormSchema().module.components.find(j=>j.id===F.component);if($)return n.createVNode(It,{key:$.id,modelValue:$,"onUpdate:modelValue":j=>$=j,componentId:$.id,onSelectionChange:m},null)}}n.watch(()=>e.modelValue,F=>{l.value=F,o.value=`${F.id}-component`});function M(F){const O=F.target;qr(O)}function I(){var F,O;(O=(F=l.value)==null?void 0:F.contents)!=null&&O.length&&d.value&&d.value.addEventListener("scroll",M)}n.onMounted(()=>{if(d.value&&S.value&&S.value.schema){const F=d.value.querySelector(`[data-dragref='${S.value.schema.id}-container']`);u&&F&&u.attachComponents(F,l.value),a.value=S.value.canNested!==void 0?S.value.canNested:a.value,r.value=S.value.canDelete!==void 0?S.value.canDelete:r.value,i.value=S.value.canMove!==void 0?S.value.canMove:i.value,c.value=S.value.styles||"",p.value=S.value.designerClass||"",d.value&&(d.value.componentInstance=S,d.value.designItemContext=w)}I(),ut.value++}),n.onBeforeUnmount(()=>{d.value&&d.value.removeEventListener("scroll",M)});function k(F){Array.from(document.getElementsByClassName("dgComponentFocused")).forEach($=>$.classList.remove("dgComponentFocused")),F&&(F.preventDefault(),F.stopPropagation());const O=d.value;if(O){const $=document.getElementsByClassName("dgComponentSelected");if(!($&&$.length===1&&$[0]===d.value)&&(Array.from($).forEach(P=>P.classList.remove("dgComponentSelected")),O.classList.add("dgComponentFocused"),t.emit("selectionChange",l.value.type,l.value,s.value,S.value),S.value.getDraggableDesignItemElement)){const P=S.value.getDraggableDesignItemElement(w);P&&P.value&&P.value.classList.add("dgComponentSelected")}}M(F)}return()=>l.value.type==="component-ref"?T(l.value):n.createVNode("div",{id:`${l.value.id}-design-item`,ref:d,class:_.value,style:b.value,onClick:k},[N(l.value),h(l.value)])}});function jn(e,t,o,i,r,a,l,s,c,p,f,d,u,S,v,w,C,_,b,g="data-grid-column"){const{showSelectAll:V,selectAll:x,unSelectAll:y,selectedValues:N}=S,{showRowNumer:m,showSidebarCheckBox:h,sidebarTitle:T,sidebarCornerCellStyle:M}=v,{columnContext:I,hasLeftFixedColumn:k,hasRightFixedColumn:F}=a,{gridHeaderColumnsStyle:O,leftFixedGridHeaderColumnsStyle:$,rightFixedGridHeaderColumnsStyle:j}=C,P=n.computed(()=>V.value||h.value||m.value),B=I.value.defaultColumnWidth,D=32,G=new Map([[0,0]]);function oe(Q,me){const ge=G.get(me)||0,ce={height:`${Q.depth*D}px`,left:`${Q.left}px`,top:`${(Q.layer-1)*D}px`,width:`${Q.actualWidth}px`,padding:0};return I.value.headerDepth>1&&(ce["line-height"]=`${Q.depth*D}px`),G.set(me+1,ge+(Q.actualWidth||B)),ce}const ae=n.computed(()=>({"fv-grid-header":!0,"fv-grid-header-group-columns":I.value.headerDepth>1})),ve=n.computed(()=>({height:`${I.value.headerDepth*D}px`}));function Te(Q,me,ge,ce){var Se;(Se=e==null?void 0:e.setupContext)==null||Se.emit("selectionChange",Q,me,ge,ce)}function xe(Q,me,ge){let ce=Q.column;return n.createVNode("div",{class:"fv-grid-header-cell",style:oe(Q,ge)},[n.createVNode(It,{modelValue:ce,"onUpdate:modelValue":Se=>ce=Se,customClass:"w-100 d-flex align-items-center justify-content-center",canAdd:!1,canDelete:!1,canMove:!1,key:ce==null?void 0:ce.id,type:g,componentId:t.componentId,onSelectionChange:Te},null)])}function ye(Q){return Q.map((me,ge)=>{const ce=[];if(ce.push(xe(me,Q,ge)),me.children&&me.children.length){const Se=ye(me.children);ce.push(...Se)}return ce})}function we(){return n.createVNode("div",{class:"fv-grid-header-left-fixed"},[n.createVNode("div",{class:"fv-grid-header-columns",style:$.value},[ye(I.value.leftHeaderColumns)])])}function Ne(){return n.createVNode("div",{class:"fv-grid-header-right-fixed"},[n.createVNode("div",{class:"fv-grid-header-columns",style:j.value},[ye(I.value.rightHeaderColumns)])])}const ie=n.ref(b.value.length===N.value.length);function pe(Q){ie.value?x():y()}const W=n.computed(()=>N.value.length>0&&b.value.length!==N.value.length);function U(){return n.createVNode("div",{class:"fv-grid-header-corner d-flex",style:M.value},[V.value&&n.createVNode(Fa,{id:"checkbox_for_select_all",indeterminate:W.value,modelValue:ie.value,"onUpdate:modelValue":Q=>ie.value=Q,onChange:pe,style:"margin-left:8px"},null),m.value&&n.createVNode("div",{style:"line-height:18px"},[T.value])])}function le(){return n.createVNode("div",{class:ae.value,style:ve.value},[P.value&&U(),k.value&&we(),n.createVNode("div",{class:"fv-grid-header-primary"},[n.createVNode("div",{class:"fv-grid-header-columns",style:O.value},[ye(I.value.primaryHeaderColumns)])]),F.value&&Ne()])}return{renderGridHeader:le}}function Pn(e,t){var p;const o=n.ref((p=e.columnOption)==null?void 0:p.groups);function i(f,d,u,S,v){const w={actualWidth:0,children:[],depth:1,field:f.field,layer:1,left:0,parent:u,resizable:!1,title:f.title||"",status:E.HeaderCellStatus.none,popoverRef:n.ref(),showPopover:!1,column:null,filterValue:null,sortType:"none"},C=S||w;if(f.group){let _=1;f.group.reduce((b,g)=>{if(typeof g=="string"){const V=d.get(g);V&&(v.fieldToRootMap.set(g,C),b.actualWidth+=V.actualWidth,b.children.push(V))}else{const V=i(g,d,b,C,v);_=Math.max(_,V.depth),b.actualWidth+=V.actualWidth,b.children.push(V)}return b},w),w.depth+=_}return t.value.headerDepth=Math.max(t.value.headerDepth,w.depth),w}function r(f){const d={groupedCells:new Map,fieldToRootMap:new Map};return o.value&&o.value.reduce((u,S)=>{const v=i(S,f,null,null,d);return u.groupedCells.set(S.field,v),u},d),d}function a(f){if(!f||f.length===0)return 0;const d=f[0];return d.children&&d.children.length>0&&(d.left=a(d.children)),d.left}function l(f,d){const u=t.value.headerDepth;f.forEach(S=>{S.layer=d?d.layer+1:1;const v=S.children&&S.children.length===0;S.depth=v?u-(S.layer-1):1,S.left=v?S.left:a(S.children),S.children&&l(S.children,S)})}function s(f,d){const u=new Map;return f.forEach(S=>{const v=d.fieldToRootMap.get(S.field),w=v!=null;w&&!u.has(v.field)&&u.set(v.field,v),w||u.set(S.field,S)}),l(Array.from(u.values())),u}function c(f){let d=new Map,u=0;if(f.reduce((S,v)=>{let w=E.HeaderCellStatus.none;w=v.sortable?w|E.HeaderCellStatus.sortable:w,w=v.filterable?w|E.HeaderCellStatus.filterable:w,w=v.sort&&v.sort!=="none"?w|E.HeaderCellStatus.sorted|(v.sort==="asc"?E.HeaderCellStatus.ascending:E.HeaderCellStatus.descending):w;let C=v.binding&&v.binding.field?v.binding.field:v.field;return S.set(C,{actualWidth:v.actualWidth||0,children:[],depth:1,layer:1,left:u,field:C,parent:null,resizable:v.resizable||!1,title:v.title,status:w,popoverRef:n.ref(),showPopover:!1,column:v,filterValue:null,sortType:v.sort||"none",showSetting:v.showSetting}),u+=v.actualWidth||0,S},d),o.value){const S=r(d);d=s(d,S)}return d}return{getGridHeaderCells:c}}class Ma extends dt{constructor(t,o){super(t,o)}getPropertyConfig(t){return this.getBasicPropConfig(t),this.getAppearanceProperties(t),this.getEventPropConfig(t),this.propertyConfig}getBasicPropConfig(t){this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"tree-grid",value:Z["tree-grid"].name}]}}}}}getAppearanceProperties(t){var o,i,r;this.propertyConfig.categories.appearance={title:"外观",properties:{fields:{title:"列设置",description:"列设置",type:"",$converter:"/converter/items-count.converter",editor:{type:"grid-field-editor",viewModelId:this.viewModelId,gridData:t,gridType:"tree-grid-column"},refreshPanelAfterChanged:!0},fit:{title:"适配父组件尺寸",type:"boolean",description:"是否适配父组件尺寸"},showStripe:{title:"显示条纹",type:"boolean",description:"是否显示条纹"},showBorder:{title:"显示边框",type:"boolean",description:"是否显示边框"},showTreeNodeIcons:{title:"显示图标",type:"boolean",description:"是否显示图标"}},setPropertyRelates(a,l){switch(a&&a.propertyID){case"useBlankWhenDataIsEmpty":t.emptyDataHeight=t.useBlankWhenDataIsEmpty?36:240;break;case"fields":t.fields=a.propertyValue||[];break}}},this.propertyConfig.categories.pagination={title:"分页",$converter:"/converter/pagination.converter",properties:{enable:{title:"启用分页",type:"boolean",refreshPanelAfterChanged:!0},mode:{visible:((o=t.pagination)==null?void 0:o.enable)||!1,title:"分页交互模式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"client",name:"客户端"},{value:"server",name:"服务器端"}]}},showIndex:{visible:((i=t.pagination)==null?void 0:i.enable)||!1,title:"显示页码",type:"boolean"},showLimits:{visible:((r=t.pagination)==null?void 0:r.enable)||!1,title:"显示每页记录数",type:"boolean"}}}}getEventPropConfig(t){const o=[{label:"selectionChange",name:"行切换事件"}];var i=this;const r=i.eventsEditorUtils.formProperties(t,i.viewModelId,o),a={};a[i.viewModelId]={type:"events-editor",editor:{initialData:r}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:a,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,s){const c=l.propertyValue;delete t[i.viewModelId],c&&(c.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(t,i.viewModelId,c.events,c)),t.remoteSort=!!t.columnSorted}}}}function Oa(e,t){const o=e.schema,i=n.ref(!0),r=n.ref(!0);function a(u){return u&&u.sourceType==="control"?u.controlCategory==="input":!1}function l(){return!1}function s(){return!1}function c(){return!0}function p(u){}function f(){}function d(u){return new Ma(u,t).getPropertyConfig(o)}return{canAccepts:a,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:c,onAcceptMovedChildElement:p,resolveComponentContext:f,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:d}}const $a=n.defineComponent({name:"FTreeGridDesign",props:zt,emits:[],setup(e,t){var _e;const o=n.ref(),i=0,r=100,a=n.ref(),l=n.ref(),s=n.ref(),c=n.ref(),p=n.ref([]),f=n.ref(!1),d=n.ref(((_e=e.rowOption)==null?void 0:_e.wrapContent)||!1),u=n.inject("designer-host-service"),S=n.inject("design-item-context"),v=Oa(S,u),w=Vt(o,S,v);w.value.designerClass="f-utils-fill-flex-column";const C=Nn(e),_=kt(e,C),b=Nt(),g=wn(e),V=On(e),x=bn(e,new Map,g,C,V),y=Tn(e,x,C,p,t),N=sa(e,p,C,y,t),m=n.computed(()=>Math.min(x.dataView.value.length,r)),{containerStyleObject:h}=Jt(e),T=en(e),M=n.ref(e.columns),{applyCommands:I}=T;I(M);const k=Qt(e),F=Mn(),{applyColumnSorter:O,columnContext:$,updateColumnRenderContext:j}=k;O(x,F);const P=Pn(e,$),B=Fn(e,t,C),D=xt(),G=_n(e,B,D),oe=Vn(e,B,g,C,D,G),ae=xn(e,M,x,m,i,oe),{getVisualData:ve}=ae,Te=St(e,$),xe=In(e,y),{sidebarWidth:ye}=xe;p.value=ve(0,m.value+i-1);const we=Sn(e,x,p,$,ae,m,i,ye),{onWheel:Ne,dataGridWidth:ie,viewPortHeight:pe,viewPortWidth:W}=we,U=nn(e,$,a,W,P),{calculateColumnsSize:le}=U,Q=Cn(),me=Zt(a,c,x,Q,we),ge=kn(e,t,y,C),ce=tn(e,t,k,x,P,_,we),Se=n.computed(()=>({"drag-container":!0,"fv-grid":!0,"fv-grid-bordered":e.showBorder,"fv-datagrid-strip":e.showStripe})),R=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":f.value,"fv-grid-wrap-content":d.value})),{renderDataArea:se}=$n(e,t,l,s,c,Te,k,x,B,g,ge,y,N,we,ae,p),{renderGridHeader:ue}=jn(S,e,a,s,c,k,x,ce,me,b,Q,U,P,y,xe,F,we,W,p,"tree-grid-column"),{renderDataGridSidebar:L}=Xt(e,ge,y,xe,we),{renderHorizontalScrollbar:fe}=Kt(e,a,we),{renderVerticalScrollbar:Ie}=Yt(e,a,we);function X(){var ke,$e;pe.value=((ke=l.value)==null?void 0:ke.clientHeight)||0,ie.value=(($e=a.value)==null?void 0:$e.clientWidth)||0,le()}n.onMounted(()=>{o.value.componentInstance=w,a.value&&(lt.useResizeObserver(a.value,X),le(),n.nextTick(()=>{a.value&&(ie.value=a.value.clientWidth),l.value&&(W.value=l.value.clientWidth,pe.value=l.value.clientHeight)}))}),n.onUnmounted(()=>{}),n.watch(W,()=>{a.value&&le()});const te=n.computed(()=>!p.value||!p.value.length),{renderEmpty:de}=zi(t);return t.expose(w.value),()=>n.createVNode("div",{ref:o,dragref:`${S.schema.id}-container`,class:Se.value,style:h.value,onWheel:Ne},[ue(),te.value&&de(),n.createVNode("div",{ref:a,class:R.value,onMouseover:()=>{f.value=!0},onMouseleave:()=>{f.value=!1}},[L(p),se(),fe(),Ie()])])}}),Dn=new Map([["appearance",We],["column","columnOption"]]),En=new Map([]),Ba="root-viewmodel";class ja{constructor(t,o){q(this,"formSchemaUtils");q(this,"controlCreatorUtils");this.resolver=t,this.designerHostService=o,this.formSchemaUtils=this.designerHostService.formSchemaUtils,this.controlCreatorUtils=this.designerHostService.controlCreatorUtils}createComponent(t){const o=this.createComponentRefNode(t),i=this.createComponentNode(t),r=this.createViewModeNode(t),a=this.formSchemaUtils.getFormSchema();return a.module.viewmodels.push(r),a.module.components.push(i),this.wrapContainerSectionForComponent(o,t)}wrapContainerSectionForComponent(t,o){var a,l;const i=[Z["content-container"].type,Z["response-layout-item"].type,Z["splitter-pane"].type],r=(l=(a=o==null?void 0:o.parentComponentInstance)==null?void 0:a.schema)==null?void 0:l.type;if(r&&i.includes(r)){const s=this.resolver.getSchemaByType("section",{parentComponentInstance:o.parentComponentInstance},this.designerHostService);if(s&&s.contents&&s.contents.length){const c=s.contents[0];return c.contents=[t],s}}return t}createComponentRefNode(t){const o=this.resolver.getSchemaByType("component-ref");return Object.assign(o,{id:`${t.componentId}-component-ref`,component:`${t.componentId}-component`}),o}createComponentNode(t){const o=this.resolver.getSchemaByType("component"),i=this.createDateGridComponentContents(t);return Object.assign(o,{id:`${t.componentId}-component`,viewModel:`${t.componentId}-component-viewmodel`,componentType:t.componentType,appearance:{class:this.getDataGridComponentClass()},contents:i}),o}createViewModeNode(t){return{id:`${t.componentId}-component-viewmodel`,code:`${t.componentId}-component-viewmodel`,name:t.componentName,bindTo:t.bindTo,parent:Ba,fields:this.assembleViewModelFields(t),commands:[],states:[],enableValidation:!0,pagination:{enable:!1}}}getDataGridComponentClass(){return this.formSchemaUtils.getFormSchema().module.templateId==="double-list-in-tab-template"?"f-struct-wrapper f-utils-fill-flex-column":"f-struct-is-subgrid"}createDateGridComponentContents(t){const o=this.formSchemaUtils.getFormSchema().module.templateId;let i;if(o==="double-list-in-tab-template"){const s=this.resolver.getSchemaByType("section");Object.assign(s,{id:t.componentId+"-section",appearance:{class:"f-section-grid f-section-in-main px-0 pt-0"},fill:!0,showHeader:!1}),i=s}else{const s=this.resolver.getSchemaByType("content-container");Object.assign(s,{id:t.componentId+"-container",appearance:{class:"f-grid-is-sub f-utils-flex-column"}}),i=s}const r=this.resolver.getSchemaByType("data-grid"),a=[];Object.assign(r,{id:t.componentId+"-dataGrid",appearance:{class:"f-component-grid f-utils-fill"},fields:a,fieldEditable:t.editable,dataSource:t.dataSource||""}),i.contents=[r];const{selectedFields:l}=t;return l==null||l.forEach(s=>{if(s.$type===dn.ComplexField)return;const c=Ee.cloneDeep(s),p=this.controlCreatorUtils.setGridFieldProperty("data-grid-column",c,"",t.editable);p&&a.push(p)}),[i]}assembleViewModelFields(t){const o=[],{selectedFields:i}=t;return i==null||i.forEach(r=>{let a="blur";const l=r.type.name;(l===it.Enum||l===it.Boolean)&&(a="change"),o.push({type:"Form",id:r.id,fieldName:r.bindingField,groupId:null,groupName:null,updateOn:a,fieldSchema:{}})}),o}}function Rn(e,t,o,i){const r=o.parentComponentInstance;if(r){const a=Math.random().toString(36).slice(2,6),l={componentId:`data-grid-${a}`,componentName:`表格-${a}`,componentType:"data-grid",parentContainerId:r.schema.id,parentComponentInstance:r,editable:!0,bindTo:"",dataSource:""};return new ja(e,i).createComponent(l)}else return t}function An(e,t,o){return t}const Pa={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid.schema.json",title:"data-grid",description:"A Farris Data Grid Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"data-grid"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},fit:{type:"boolean",default:!1},showStripe:{type:"boolean",default:!0},showBorder:{type:"boolean",default:!1},size:{description:"",type:"object",properties:{width:{type:"number"},height:{type:"number"}},default:null},dataSource:{description:"",type:"string",default:""},columns:{description:"",type:"array",default:[]},identifyField:{description:"",type:"string"},editable:{description:"",type:"boolean",default:!1},disable:{description:"",type:"boolean",default:!1},visible:{description:"",type:"boolean",default:!0},fieldEditable:{description:"是否可编辑",type:"boolean",default:!1},cell:{type:"object",properties:{highlightFocusingCell:{description:"",type:"boolean",default:!1},mergeCell:{description:"",type:"boolean",default:!1},showEditableIcon:{description:"",type:"boolean",default:!1}}},column:{type:"object",properties:{fitColumns:{description:"",type:"boolean",default:!1},fitMode:{description:"",type:"string",default:"average"},groups:{description:"",type:"array",default:[]},reorderColumn:{description:"Enable to drag column to reorder",type:"boolean",default:!1},resizeColumn:{type:"boolean",default:!0},resizeColumnOnDoubleClick:{description:"",type:"boolean",default:!0}}},command:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},commands:{type:"array",default:[]},commandColumnWidth:{description:"",type:"number",default:120},onClickDeleteCommand:{description:"",type:"string",default:""},onClickEditCommand:{description:"",type:"string",default:""}}},contextMenu:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},customizaiton:{type:"object",properties:{enableScheme:{description:"",type:"boolean",default:!1},enableSetting:{description:"",type:"boolean",default:!1}}},edit:{type:"obejct",properties:{mode:{description:"",type:"string",default:"cell",enum:["cell","row","card"]},selectOnEditing:{description:"",type:"boolean",default:!1},onAppendRow:{description:"",type:"string",default:""},onBeforeEdit:{description:"",type:"string",default:""}}},filter:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},filterStyle:{description:"",type:"string",default:"filter-column",enum:["filter-column","filter-row"]},mode:{description:"",type:"string",default:"server",enum:["client","server"]},showSummary:{description:"",type:"boolean",default:!0},onFilterChange:{description:"",type:"string",default:""}}},footer:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customFooterStyle:{description:"",type:"object"},footerDataCommand:{description:"",type:"string",default:""},footerDataFrom:{description:"",type:"string",default:"client"},footerHeight:{description:"",type:"number",default:29},footerPosition:{description:"",type:"string",default:"bottom"},footerTemplate:{description:"",type:"string",default:""}}},group:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customGroupRow:{description:"",type:"object"},customGroupRowStyle:{description:"",type:"obejct"},customSummaryStyle:{description:"",type:"obejct"},groupColSpan:{description:"",type:"number",default:1},groupFields:{description:"",type:"array",default:[]},showGroupedColumn:{description:"",type:"boolean",default:!0},showGroupPanel:{description:"",type:"boolean",default:!1},showSummary:{description:"",type:"boolean",default:!1},summaryPosition:{description:"",type:"string",default:"separate",enum:["separate","merge-to-group"]},disableGroupOnEditing:{description:"",type:"boolean",default:!0},expandGroupRows:{description:"",type:"boolean",default:!0}}},header:{type:"object",properties:{wrapHeadings:{description:"",type:"boolean",default:!1}}},pagination:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},disablePagination:{description:"",type:"string",default:""},contentTemplate:{description:"",type:"string",default:""},index:{description:"",type:"number",default:1},mode:{description:"",type:"enum",default:"client",enum:["server","client"]},showGoto:{description:"",type:"boolean",default:!1},showIndex:{description:"",type:"boolean",default:!0},showLimits:{description:"",type:"boolean",default:!1},showPageInfo:{description:"",type:"boolean",default:!0},size:{description:"",type:"number",default:20},sizeLimits:{description:"",type:"array",default:[10,20,30,50,100]},onPageChange:{description:"",type:"string",default:""},onPageSizeChange:{description:"",type:"string",default:""}}},row:{type:"object",properties:{customRowStyle:{description:"",type:"object"},disable:{description:"",type:"obejct"},height:{description:"",type:"number",default:30},showHovering:{type:"boolean",default:!0},wrapContent:{type:"boolean",default:!1}}},rowNumber:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},heading:{description:"",type:"string",default:"序号"},width:{description:"",type:"number",default:36},onClickRow:{description:"",type:"string",default:""},onDoubleClickRow:{description:"",type:"string",default:""}}},clickRow:{description:"行点击事件",type:"string",default:""},selectionChange:{description:"行切换事件",type:"string",default:""},pageIndexChanged:{description:"切换页码事件",type:"string",default:""},pageSizeChanged:{description:"分页条数变化事件",type:"string",default:""},selection:{type:"object",properties:{enable:{description:"",type:"boolean",default:!0},checkOnSelect:{description:"",type:"boolean",default:!1},clearSelectionOnEmpty:{description:"",type:"boolean",default:!0},customSelectionItem:{description:"",type:"object"},focusSelection:{description:"",type:"string",default:"current",enum:["current","all"]},keepSelectingOnClick:{description:"",type:"boolean",default:!0},keepSelectingOnPaging:{description:"",type:"boolean",default:!0},multiSelect:{description:"",type:"boolean",default:!1},selectionMode:{description:"",type:"string",default:"default"},selectOnCheck:{description:"",type:"boolean",default:!1},selectOnEditing:{description:"",type:"boolean",default:!1},showCheckbox:{description:"",type:"boolean",default:!1},showCheckAll:{description:"",type:"boolean",default:!1},showSelection:{description:"",type:"boolean",default:!1},onBeforeSelect:{description:"",type:"string",default:""},onBeforeUnCheck:{description:"",type:"",default:""},onBeforeUnSelect:{description:"",type:"string",default:""},onCheckAll:{description:"",type:"string",default:""},onChecked:{description:"",type:"string",default:""},onSelectionChange:{description:"",type:"string",default:""},onUnCheckAll:{description:"",type:"string",default:""},onUnChecked:{description:"",type:"string",default:""},onCheckedChange:{description:"",type:"string"}}},sort:{type:"object",properties:{enable:{description:"",type:"boolean",default:!1},fields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},multiSort:{description:"",type:"boolean",default:!1}}},summary:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1},customSummaryStyle:{description:"",type:"object"},groupFields:{description:"",type:"array",default:[]},mode:{description:"",type:"string",default:"client",enum:["client","server"]},position:{description:"",type:"boolean",default:"bottom",enum:["bottom","top","both"]}}},toolbar:{description:"",type:"object",properties:{enable:{description:"",type:"boolean",default:!1}}},visualization:{autoHeight:{description:"",type:"boolean",default:!1},emptyDataHeight:{description:"",type:"number",default:36},emptyTemplate:{description:"",type:"string",default:""},maxHeight:{description:"",type:"number",default:300},scrollBarShowMode:{description:"",type:"string",default:"auto"},showBorder:{description:"",type:"boolean",default:!1},showScrollArrow:{description:"",type:"boolean",default:!1},striped:{description:"",type:"boolean",default:!0},useBlankWhenDataIsEmpty:{description:"",type:"boolean",default:!1}}},required:["id","type"]},Mt={changePolicy:{type:String,default:"push"},columns:{type:Array,default:[]},columnOption:{type:Object},data:{type:Array,default:[]},disable:{type:Boolean,default:!1},editable:{type:Boolean,default:!1},editOption:{type:Object,default:{selectOnEditing:!1,editMode:"cell"}},filter:{type:Object},fit:{type:Boolean,default:!1},focusOnEditingCell:{type:Boolean,default:!0},selectOnEditingCell:{type:Boolean,default:!1},group:{type:Object},header:{type:Object},height:{type:Number,default:-1},id:{type:String,default:""},idField:{type:String,default:"id",require:!0},minHeight:{type:Number,default:300},minWidth:{type:Number,default:400},mergeCell:{type:Boolean,default:!1},pagination:{type:Object,default:{enable:!1,size:20}},rowNumber:{type:Object,default:{enable:!0,width:32,heading:"序号"}},rowOption:{type:Object,default:{wrapContent:!1}},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},selectionValues:{type:Array,default:[]},showBorder:{type:Boolean,default:!1},showFooter:{type:Boolean,default:!1},showHeader:{type:Boolean,default:!0},showScrollBar:{type:String,default:"auto"},showSetting:{type:Boolean,default:!1},showStripe:{type:Boolean,default:!0},sort:{type:Object},summary:{type:Object,default:{enable:!1,groupFields:["numericField1","numericField2"]}},virtualized:{type:Boolean,default:!1},width:{type:Number,default:-1},newDataItem:{type:Function,default:()=>{}},enableCommands:{type:Boolean,default:!1},commandOption:{type:Object,default:{enable:!1,commands:[]}},appendOnEnterAtLastCell:{type:Boolean,default:!1},loading:{type:Boolean,default:!1}},Da=Object.assign({},Mt,{componentId:{type:String,default:""}}),Gn=Oe(Mt,Pa,Dn,Rn),Hn=li(),Ea=si();function Wn(e,t,o,i,r,a,l,s,c,p,f,d,u,S,v){const{calculateCellPositionInRow:w,cellKey:C,cellPosition:_,rowKey:b,rowPosition:g,rowSpanCellPosition:V,groupCellPosition:x,summaryCellPosition:y}=l,{cellContentClass:N,cellContentPosition:m}=a,{collpaseGroupIconClass:h}=p,{gridCellClass:T,gridRowClass:M,onClickRow:I,onMouseoverRow:k,onMouseoutRow:F}=d,{onClickCell:O}=c,{toggleGroupRow:$}=u,{columnContext:j,hasLeftFixedColumn:P,hasRightFixedColumn:B}=s,{navigateOnKeyUp:D}=f,{gridDataStyle:G,gridMergedDataStyle:oe,leftFixedGridDataStyle:ae,leftFixedGridMergedDataStyle:ve,rightFixedGridDataStyle:Te,rightFixedGridMergedDataStyle:xe}=S;function ye(R,se){se.collapse=!se.collapse,v.value=$(se.collapse?"collapse":"expand",se,v.value)}function we(R,se){const ue=[];if(R.groupField&&se[R.groupField]){for(let fe=0;fe<=R.layer;fe++)ue.push(n.createVNode("div",{class:"fv-grid-group-row-icon",onClick:Ie=>ye(Ie,R)},[n.createVNode("span",{class:h(R)},null)]));const L=R.data[R.groupField];ue.push(n.createVNode("div",{ref:L.setRef,key:C(R,R.layer+1),class:"fv-grid-cell",style:x(L,se,R.layer)},[L.data])),Object.values(R.data).filter(fe=>fe.field!==R.groupField&&fe.colSpan!==0).forEach(fe=>{ue.push(n.createVNode("div",{ref:fe.setRef,key:C(R,fe.index),class:"fv-grid-cell",style:_(fe,se)},[fe.data]))})}return ue}function Ne(R,se,ue){return R.layer>-1&&n.createVNode("div",{ref:R.setRef,key:b(R),class:M(R),style:g(R),onClick:L=>I(L,R),onMouseover:L=>k(L,R)},[we(R,se)])}function ie(R,se){const ue=[];if(R.groupField&&se[R.groupField]){const L=R.data[R.groupField];ue.push(n.createVNode("div",{ref:L.setRef,key:C(R,R.layer+1),class:"fv-grid-cell",style:y(L,se,R.layer)},[L.data]))}return ue}function pe(R,se,ue){return R.layer>-1&&n.createVNode("div",{ref:R.setRef,key:b(R),class:M(R),style:g(R),onClick:L=>I(L,R),onMouseover:L=>k(L,R)},[ie(R,se)])}function W(R,se,ue){return n.createVNode("div",{ref:R.setRef,key:b(R),class:M(R),style:g(R),onClick:L=>I(L,R),onMouseover:L=>k(L,R),onMouseout:L=>F(L,R)},[Object.values(R.data).filter(L=>se[L.field]&&L.rowSpan===1).map(L=>{const fe=ue==null?void 0:ue.find(Ie=>Ie.field===L.field);return n.createVNode("div",{ref:L.setRef,key:C(R,L.index),class:T(L),style:_(L,se),onClick:Ie=>O(Ie,L,R,fe),onKeyup:Ie=>D(Ie,L)},[n.createVNode("div",{class:N(L,fe),style:m(L)},[n.createVNode("div",{class:{"text-truncate":fe==null?void 0:fe.showEllipsis,"w-100":fe==null?void 0:fe.showEllipsis,"text-center":!0}},[L.data!=null&&t.slots.cellTemplate?t.slots.cellTemplate({cell:L,row:R}):L.mode===Me.editing?L.getEditor(L):L.formatter?L.formatter(L,R):L.data!=null?L.data.toString():L.data])])])})])}const U=[W,Ne,pe];function le(R,se){const ue=w(R);return v.value.map(L=>U[L.type](L,ue,R))}function Q(R){const se=w(R);return v.value.map(ue=>Object.values(ue.data).filter(L=>se[L.field]&&L.rowSpan>1).map(L=>n.createVNode("div",{key:C(ue,L.index),class:"fv-grid-cell fv-grid-merged-cell",style:V(ue,L,se)},[L.data])))}function me(){return n.createVNode("div",{ref:i,class:"fv-grid-content-left-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:ae.value},[le(j.value.leftColumns.filter(R=>R.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:ve.value},[Q(j.value.leftColumns.filter(R=>R.visible))])])}function ge(){return n.createVNode("div",{ref:o,class:"fv-grid-content-primary"},[n.createVNode("div",{class:"fv-grid-data",style:G.value},[le(j.value.primaryColumns.filter(R=>R.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:oe.value},[Q(j.value.primaryColumns.filter(R=>R.visible))])])}function ce(){return n.createVNode("div",{ref:r,class:"fv-grid-content-right-fixed"},[n.createVNode("div",{class:"fv-grid-data",style:Te.value},[le(j.value.rightColumns.filter(R=>R.visible))]),n.createVNode("div",{class:"fv-grid-merge-date",style:xe.value},[Q(j.value.rightColumns.filter(R=>R.visible))])])}function Se(){const R=[];return P.value&&R.push(me()),R.push(ge()),B.value&&R.push(ce()),R}return{renderDataArea:Se}}const Qe=n.defineComponent({name:"FDataGrid",props:Mt,emits:["ClickRow","doubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged","endEditCell"],setup(e,t){var Qn;const r=n.ref(e.columns),a=E.useIdentify(e),l=n.ref(),s=n.ref(),c=n.ref(),p=n.ref(),f=n.ref(),d=n.ref([]),u=n.ref(!1),S=n.ref(((Qn=e.rowOption)==null?void 0:Qn.wrapContent)||!1),v=E.useGroupData(e,a),w=E.useFilter(),C=E.useHierarchy(e),{showLoading:_,renderLoading:b}=E.useLoading(e,l),g=E.usePagination(e),{shouldRenderPagination:V}=g,x=E.useDataView(e,new Map,C,a,g),y=E.useSelection(e,x,a,d,t),N=n.computed(()=>e.disable),m=n.computed(()=>V.value?x.dataView.value.length:Math.min(x.totalItems.value,100));n.computed(()=>e.loadingConfig.message);const{containerStyleObject:h}=E.useDataViewContainerStyle(e),T=E.useCommandColumn(e),{applyCommands:M}=T;M(r);const I=E.useColumn(e),k=E.useSort(e),{applyColumnSorter:F,columnContext:O,updateColumnRenderContext:$}=I;F(x,k);const j=E.useGroupColumn(e,O),P=E.useEdit(e,t,a),B=E.useVisualDataBound(),D=E.useVisualDataCell(e,P,B),G=E.useVisualDataRow(e,P,C,a,B,D),oe=E.useVisualGroupRow(e,a,D,G),ae=E.useVisualSummaryRow(e,a,D,G),ve=E.useVisualData(e,r,x,m,0,G,oe,ae),{getVisualData:Te}=ve,xe=E.useCellContentStyle(O),ye=E.useCellPosition(e,O),we=E.useSidebar(e,y),{sidebarWidth:Ne}=we;d.value=Te(0,m.value+0-1);const ie=E.useVirtualScroll(e,x,d,O,ve,m,0,Ne),{onWheel:pe,dataGridWidth:W,viewPortHeight:U,viewPortWidth:le,resetScroll:Q}=ie,me=E.useFitColumn(e,O,s,le,j),{calculateColumnsSize:ge}=me,ce=E.useFilterHistory(),Se=E.useColumnFilter(s,f,x,ce,ie),R=E.useRow(e,t,y,a),se=E.useDragColumn(e,t,I,x,j,v,ie),ue=n.computed(()=>({"fv-grid":!0,"fv-datagrid-strip":e.showStripe})),L=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":u.value,"fv-grid-wrap-content":S.value})),{renderGridHeader:fe,renderGridColumnResizeOverlay:Ie}=E.getColumnHeader(e,s,p,f,I,x,se,Se,w,ce,me,j,y,we,k,ie,le,d),{renderDataGridPagination:X}=E.getPagination(e,t,x,ie,g),{renderDataGridSidebar:te}=E.getSidebar(e,R,y,we,ie),{renderDisableMask:de}=E.getDisableMask(),{renderDataGridSummery:_e}=E.getSummary(e,x,I),{renderHorizontalScrollbar:ke}=E.getHorizontalScrollbar(e,s,ie),{renderVerticalScrollbar:$e}=E.getVerticalScrollbar(e,s,ie),{renderFilterPanel:Ge}=E.getFilterPanel(e,I,x,w,ie),{renderGroupPanel:He}=E.getGroupPanel(e,x,se,v,ie);function Xe(){var Ce,mt;U.value=((Ce=c.value)==null?void 0:Ce.clientHeight)||0,W.value=((mt=s.value)==null?void 0:mt.clientWidth)||0,ge()}n.onMounted(()=>{s.value&&(lt.useResizeObserver(s.value,Xe),ge(),n.nextTick(()=>{s.value&&(W.value=s.value.clientWidth),c.value&&(le.value=c.value.clientWidth,U.value=c.value.clientHeight)})),_.value&&b()}),n.onUnmounted(()=>{}),n.watch(le,()=>{});function Ye(){x.insertNewDataItem(),Q()}function Je(){x.insertNewDataItem(d.value.length),Q()}function Le(Ce){P.onEditingRow(Ce)}function A(Ce){x.removeDataItem(Ce),Q()}function ee(Ce){x.removeDataItemById(Ce),Q()}function re(Ce){P.acceptEditingRow(Ce)}function Ve(Ce){P.cancelEditingRow(Ce)}function ne(Ce){Ce&&(r.value=Ce,M(r),$(r.value),F(x,k),ge())}function Fe(Ce){Ce&&(x.load(Ce),d.value=Te(0,m.value+0-1))}function Pe(Ce){g.updatePagination(Ce)}n.watch([x.startIndex,x.endIndex],([Ce,mt],[Gl,Hl])=>{var Zn,eo;Ce!==Gl&&Fe((Zn=x.originalData)==null?void 0:Zn.value),mt!==Hl&&Fe((eo=x.originalData)==null?void 0:eo.value)}),n.watch(()=>e.data,Ce=>{e.changePolicy==="default"&&Fe(Ce)},{deep:!0});function he(Ce){y.selectItemById(Ce)}const je={addNewDataItem:Ye,addNewDataItemAtLast:Je,removeDataItem:A,removeDataItemById:ee,editDataItem:Le,acceptDataItem:re,cancelDataItem:Ve,selectItemById:he,updateColumns:ne,updateDataSource:Fe,updatePagination:Pe};t.expose(je);const De=E.useNavigation(e,t,je,I,P,d),{renderDataArea:be}=Wn(e,t,c,p,f,xe,ye,I,P,v,De,R,ve,ie,d),qe=n.computed(()=>!d.value||!d.value.length),{renderEmpty:tt}=E.getEmpty(t);return()=>n.createVNode("div",{ref:l,class:ue.value,style:h.value,onWheel:pe},[Ge(),He(),fe(),qe.value&&tt(),n.createVNode("div",{ref:s,class:L.value,onMouseover:()=>{u.value=!0},onMouseleave:()=>{u.value=!1}},[te(d),be(),ke(),$e()]),_e(),V.value&&X(),Ie(),N.value&&de()])}});class Ra extends dt{constructor(t,o){super(t,o)}getPropertyConfig(t){return this.getBasicPropConfig(t),this.getAppearanceProperties(t),this.getEventPropConfig(t),this.propertyConfig}getBasicPropConfig(t){var a,l,s;const o=(s=(l=(a=this.formSchemaUtils.getFormSchema())==null?void 0:a.module)==null?void 0:l.entity[0])==null?void 0:s.entities[0],i=this.assembleSchemaEntityToTree(o,0),r=this;this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"data-grid",value:Z["data-grid"].name}]}},dataSource:{description:"绑定数据源",title:"绑定数据源",editor:{type:"combo-tree",textField:"name",valueField:"label",data:i,readonly:t.columns&&t.columns.length>0,editable:!1}}},setPropertyRelates(c,p){switch(c&&c.propertyID){case"dataSource":{const f=r.formSchemaUtils.getViewModelById(r.viewModelId);if(f){const d=i.find(u=>u.label===c.propertyValue);f.bindTo=d.bindTo}r.designViewModelUtils.assembleDesignViewModel();break}}}}}assembleSchemaEntityToTree(t,o,i,r="",a=[]){const l=r?`${r}/${t.label}`:"/";return a.push({id:t.id,name:t.name,label:t.label,layer:o,parent:i&&i.id,bindTo:l.replace("//","/")}),t.type.entities&&t.type.entities.length&&t.type.entities.map(s=>this.assembleSchemaEntityToTree(s,o+1,t,l,a)),a}getAppearanceProperties(t){var o,i,r;this.propertyConfig.categories.appearance={title:"外观",properties:{columns:{title:"列设置",description:"列设置",type:"",$converter:"/converter/items-count.converter",editor:{type:"grid-field-editor",viewModelId:this.viewModelId,gridData:t,getLatestGridData:a=>t},refreshPanelAfterChanged:!0},fit:{title:"适配父组件尺寸",type:"boolean",description:"是否适配父组件尺寸"},showStripe:{title:"显示条纹",type:"boolean",description:"是否显示条纹"},showBorder:{title:"显示边框",type:"boolean",description:"是否显示边框"}},setPropertyRelates(a,l){switch(a&&a.propertyID){case"useBlankWhenDataIsEmpty":t.emptyDataHeight=t.useBlankWhenDataIsEmpty?36:240;break;case"columns":t.columns=a.propertyValue||[];break}}},this.propertyConfig.categories.pagination={title:"分页",$converter:"/converter/pagination.converter",properties:{enable:{title:"启用分页",type:"boolean",refreshPanelAfterChanged:!0},mode:{visible:((o=t.pagination)==null?void 0:o.enable)||!1,title:"分页交互模式",type:"enum",editor:{type:"combo-list",textField:"value",valueField:"key",data:[{key:"client",value:"客户端"},{key:"server",value:"服务器端"}]}},showIndex:{visible:((i=t.pagination)==null?void 0:i.enable)||!1,title:"显示页码",type:"boolean"},showLimits:{visible:((r=t.pagination)==null?void 0:r.enable)||!1,title:"显示每页记录数",type:"boolean"}}}}getEventPropConfig(t){const o=[{label:"clickRow",name:"行点击事件"},{label:"selectionChange",name:"行切换事件"},{label:"pageIndexChanged",name:"切换页码事件"},{label:"pageSizeChanged",name:"分页条数变化事件"}];var i=this;const r=i.eventsEditorUtils.formProperties(t,i.viewModelId,o),a={};a[i.viewModelId]={type:"events-editor",editor:{initialData:r}},this.propertyConfig.categories.eventsEditor={title:"事件",hideTitle:!0,properties:a,refreshPanelAfterChanged:!0,tabId:"commands",tabName:"交互",setPropertyRelates(l,s){const c=l.propertyValue;delete t[i.viewModelId],c&&(c.setPropertyRelates=this.setPropertyRelates,i.eventsEditorUtils.saveRelatedParameters(t,i.viewModelId,c.events,c)),t.remoteSort=!!t.columnSorted}}}}function Aa(e,t){const o=e.schema,i=n.ref(!0),r=n.ref(!0);function a(u){return u&&u.sourceType==="control"?u.controlCategory==="input":!1}function l(){return!1}function s(){return!1}function c(){return!0}function p(u){}function f(){}function d(u){return new Ra(u,t).getPropertyConfig(o)}return{canAccepts:a,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:c,onAcceptMovedChildElement:p,resolveComponentContext:f,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:d}}const Ot=n.defineComponent({name:"FDataGridDesign",props:Da,emits:["ClickRow","DoubleClickRow","selectionChange","enterUpInLastCell","pageIndexChanged","pageSizeChanged"],setup(e,t){var De;const o=n.ref(),i=n.inject("designer-host-service"),r=n.inject("design-item-context"),a=Aa(r,i),l=Vt(o,r,a);l.value.styles="display:flex;flex:1;",n.onMounted(()=>{o.value.componentInstance=l}),t.expose(l.value);const s=n.ref(e.columns),c=20,p=Nn(e),f=0,d=n.ref(),u=n.ref(),S=n.ref(),v=n.ref(),w=n.ref(e.showStripe),C=n.ref([]),_=n.ref(!1),b=n.ref(((De=e.rowOption)==null?void 0:De.wrapContent)||!1),g=kt(e,p),V=Nt(),x=wn(e),y=On(e),N=bn(e,new Map,x,p,y),m=Tn(e,N,p,C,t),h=n.computed(()=>e.disable),T=n.computed(()=>N.totalItems.value<c?N.totalItems.value:c),{containerStyleObject:M}=Jt(e),I=en(e),{applyCommands:k}=I;k(s);const F=Qt(e),O=Mn(),{applyColumnSorter:$,columnContext:j,updateColumnRenderContext:P}=F;$(N,O);const B=Pn(e,j),D=Fn(e,p),G=xt(),oe=_n(e,D,G),ae=Vn(e,D,x,p,G,oe),ve=ma(e,p,oe,ae),Te=ga(e,p,oe,ae),xe=xn(e,s,N,T,f,ae,ve,Te),{getVisualData:ye}=xe,we=wa(j),Ne=St(e,j),ie=In(e,m),{sidebarWidth:pe}=ie;C.value=ye(0,T.value+f-1);const W=Sn(e,N,C,j,xe,T,f,pe),{onWheel:U,dataGridWidth:le,viewPortHeight:Q,viewPortWidth:me,resetScroll:ge}=W,ce=nn(e,j,d,me,B),{calculateColumnsSize:Se}=ce,R=Cn(),se=Zt(d,v,N,R,W),ue=kn(e,t,m,p),L=tn(e,t,F,N,B,g,W),fe=n.computed(()=>({"fv-grid":!0,"fv-datagrid-strip":w.value})),Ie=n.computed(()=>({"fv-grid-content":!0,"fv-grid-content-hover":_.value,"fv-grid-wrap-content":b.value})),{renderGridHeader:X}=jn(r,e,d,S,v,F,N,L,se,V,R,ce,B,m,ie,O,W,me,C);Li(e,t,N,W,y);const{renderDataGridSidebar:te}=Xt(e,ue,m,ie,W),{renderDisableMask:de}=Di(),{renderDataGridSummery:_e}=qi(e,N,F),{renderHorizontalScrollbar:ke}=Kt(e,d,W),{renderVerticalScrollbar:$e}=Yt(e,d,W),{renderFilterPanel:Ge}=Ei(e,F,N,V,W),{renderGroupPanel:He}=Ri(e,N,L,g,W);function Xe(){var be,qe;Q.value=((be=u.value)==null?void 0:be.clientHeight)||0,le.value=((qe=d.value)==null?void 0:qe.clientWidth)||0,Se()}n.onMounted(()=>{d.value&&(lt.useResizeObserver(d.value,Xe),Se(),n.nextTick(()=>{d.value&&(le.value=d.value.clientWidth),u.value&&(me.value=u.value.clientWidth,Q.value=u.value.clientHeight)}))}),n.onUnmounted(()=>{}),n.watch(me,()=>{d.value&&Se()}),n.watch(()=>e.columns,be=>{ne(be)});function Ye(){N.insertNewDataItem(),ge()}function Je(){N.insertNewDataItem(C.value.length),ge()}function Le(be){D.onEditingRow(be)}function A(be){N.removeDataItem(be),ge()}function ee(be){N.removeDataItemById(be),ge()}function re(be){D.acceptEditingRow(be)}function Ve(be){D.cancelEditingRow(be)}function ne(be){be&&(s.value=be,k(s),P(s.value),$(N,O),Se())}function Fe(be){be&&(N.load(be),C.value=ye(0,T.value+f-1))}const he=ha(e,t,{addNewDataItem:Ye,addNewDataItemAtLast:Je,removeDataItem:A,removeDataItemById:ee,editDataItem:Le,acceptDataItem:re,cancelDataItem:Ve,updateColumns:ne,updateDataSource:Fe},F,D,C),{renderDataArea:je}=Wn(e,t,u,S,v,we,Ne,F,D,g,he,ue,xe,W,C);return()=>n.createVNode("div",{ref:o,class:fe.value,style:M.value,onWheel:U},[Ge(),He(),X(),n.createVNode("div",{ref:d,class:Ie.value,onMouseover:()=>{_.value=!0},onMouseleave:()=>{_.value=!1}},[te(C),je(),ke(),$e()]),_e(),h.value&&de()])}}),Ga={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/grid-field-editor.schema.json",title:"grid-field-editor",description:"A Farris Data Grid Component",type:"object",properties:{id:{description:"The unique identifier for a Input Group",type:"string"},type:{description:"The type string of Input Group component",type:"string",default:"grid-field-editor"},viewModelId:{description:"",type:"string",default:""},gridData:{description:"",type:"Object",default:null}},required:["id","type"]},Ln={modelValue:{type:String,default:""},viewModelId:{Type:String,default:""},gridData:{Type:Object,default:null},gridType:{Type:String,default:"data-grid-column"},getLatestGridData:{Type:Function}},Ha=Oe(Ln,Ga,Dn,Rn),Wa=new Map([["appearance",We]]);function La(e,t,o){return t}const qa={title:"transfer",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}},Ua={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/transfer.schema.json",title:"transfer",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for transfer",type:"string"},type:{description:"The type string of transfer",type:"string",default:"transfer"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},qn={dataSource:{type:Array,default:[]},displayType:{type:String,default:"List"},enableSearch:{type:Boolean,default:!0},identifyField:{type:String,default:"id"},textField:{type:String,default:"name"},placeholder:{type:String,default:""},selections:{type:Array,default:[]},selectionValues:{type:Array,default:[]}};Oe(qn,Ua,Wa,La,qa);const za=new Map([["appearance",We]]);function Ka(e,t,o){return t}const Xa={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/list-view.schema.json",title:"list-view",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for list-view",type:"string"},type:{description:"The type string of list-view",type:"string",default:"list-view"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disable:{type:"string",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},Ya={title:"list-view",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}},Un={columns:{type:Array,default:[{field:"name",title:"",dataType:"string"}]},data:{type:Array,default:[]},draggable:{type:Boolean,default:!1},multiSelect:{Type:Boolean,default:!1},multiSelectMode:{Type:String,default:"OnCheck"},idField:{Type:String,default:"id"},valueField:{Type:String,default:"id"},textField:{Type:String,default:"name"},titleField:{Type:String,default:"name"},view:{Type:String,default:"ContentView"},size:{Type:String,default:"default"},placeholder:{type:String,default:""},header:{Type:String,default:"ContentHeader"},headerClass:{Type:String,default:""},itemClass:{Type:String,default:""},selectionValues:{type:Array,default:[]},group:{type:Object},selection:{type:Object,default:{enableSelectRow:!0,multiSelect:!1,multiSelectMode:"DependOnCheck",showCheckbox:!1,showSelectAll:!1,showSelection:!0}},keepOrder:{type:Boolean,default:!1},disableField:{type:String,default:"disabled"},enableHighlightSearch:{type:Boolean,default:!0}};Oe(Un,Xa,za,Ka,Ya);function Ja(e,t){function o(a){const l=[];let s=a.nextNode();for(;s;)l.push(s),s=a.nextNode();return l}function i(a,l){const s=document.createTreeWalker(a,NodeFilter.SHOW_TEXT);return o(s).map(d=>({textNode:d,text:(d.textContent||"").toLocaleLowerCase()})).map(({textNode:d,text:u})=>{const S=[];let v=0;for(;v<u.length;){const w=u.indexOf(l,v);if(w===-1)break;S.push(w),v=w+l.length}return S.map(w=>{const C=new Range;return C.setStart(d,w),C.setEnd(d,w+l.length),C})}).flat()}function r(a){if(!CSS.highlights||(CSS.highlights.clear(),!a||!t))return;const l=i(t.value,a.toLocaleLowerCase()),s=new Highlight(...l);CSS.highlights.set("search-result",s)}return{search:r}}function zn(e,t,o,i,r,a,l,s,c,p){const f=n.ref(e.size),d=n.ref(e.textField),u=n.ref(e.titleField),S=n.ref(e.disableField),v=n.computed(()=>{var m,h;return((m=e.selection)==null?void 0:m.multiSelect)&&((h=e.selection)==null?void 0:h.showCheckbox)}),{onMouseenterItem:w,onMouseoverItem:C,onMouseoutItem:_}=a,{getKey:b,listViewItemClass:g,onCheckItem:V,onClickItem:x}=l,y=n.computed(()=>({margin:f.value==="small"?"0.25rem 0":"10px 0"}));function N(m,h,T){return m.checked=s.findIndexInSelectedItems(m)>-1,n.createVNode("li",{class:g(m,h),id:b(m,h),key:b(m,h),onClick:M=>x(M,m,h),onMouseenter:M=>w(M,m,h),onMouseover:M=>C(M,m,h),onMouseout:M=>_(M,m,h)},[v.value&&n.createVNode("div",{class:"f-list-select",onClick:M=>M.stopPropagation()},[n.createVNode(nt.FCheckBox,{id:"list-"+b(m,h),customClass:"listview-checkbox",disabled:m[S.value],checked:m.checked,"onUpdate:checked":M=>m.checked=M,onChange:M=>{V(m,h,!M.checked)}},null)]),n.createVNode("div",{class:"f-list-content"},[n.createVNode("div",{style:y.value,title:m.raw[u.value]||m.raw[d.value]},[m.raw[d.value]])])])}return{renderItem:N}}function Qa(e,t,o,i,r,a,l,s,c,p){const f=n.ref(e.multiSelect),d=n.ref(e.disableField),{onMouseenterItem:u,onMouseoverItem:S,onMouseoutItem:v}=a,{getKey:w,listViewItemClass:C,onCheckItem:_,onClickItem:b}=l;function g(x,y,N){return t.slots.content?n.createVNode(n.Fragment,null,[t.slots.content&&t.slots.content({item:x.raw,index:y,selectedItem:N})]):n.createVNode("div",{style:"margin: 10px 0;"},[x.raw.name])}function V(x,y,N){return n.createVNode("li",{class:C(x,y),id:w(x,y),key:w(x,y),onClick:m=>b(m,x,y),onMouseenter:m=>u(m,x,y),onMouseover:m=>S(m,x,y),onMouseout:m=>v(m,x,y)},[f.value&&n.createVNode("div",{class:"f-list-select",onClick:m=>m.stopPropagation()},[n.createVNode(nt.FCheckBox,{id:"list-"+w(x,y),customClass:"listview-checkbox",disabled:x[d.value]||!x.checked,checked:x.checked,"onUpdate:checked":m=>x.checked=m,onChange:m=>_(x,y,!m.checked)},null)]),n.createVNode("div",{class:"f-list-content"},[g(x,y,N)])])}return{renderItem:V}}function Za(e,t,o,i,r,a,l,s,c,p){const f=n.ref(e.multiSelect),d=n.ref(e.disableField),{onMouseenterItem:u,onMouseoverItem:S,onMouseoutItem:v}=a,{getKey:w,listViewItemClass:C,onCheckItem:_,onClickItem:b}=l,{dragstart:g,dragenter:V,dragover:x,dragend:y}=i,{removeItem:N}=c,m=n.computed(()=>({margin:f.value?"10px 0":"10px 0px 10px 14px"}));function h(k){return n.createVNode("div",{style:m.value},[k.raw.name])}function T(){return t.slots.itemContent?t.slots.itemContent:h}const M=T();function I(k,F,O){return n.createVNode("li",{class:C(k,F),id:w(k,F),key:w(k,F),onClick:$=>b($,k,F),onMouseenter:$=>u($,k,F),onMouseover:$=>S($,k,F),onMouseout:$=>v($,k,F),draggable:"true",onDragstart:$=>g($,k,F),onDragenter:$=>V($,F),onDragend:$=>y($,k),onDragover:$=>x($,F)},[f.value&&n.createVNode("div",{class:"f-list-select",onClick:$=>$.stopPropagation()},[n.createVNode(nt.FCheckBox,{id:"list-"+w(k,F),customClass:"listview-checkbox",disabled:k[d.value]||!k.checked,checked:k.checked,"onUpdate:checked":$=>k.checked=$,onChange:$=>_(k,F,!$.checked)},null)]),n.createVNode("div",{class:"f-list-content"},[M(k)]),n.createVNode("div",{class:"f-list-remove",onClick:$=>N(F)},[n.createVNode("div",{class:"f-list-remove-icon"},[n.createVNode("i",{class:"f-icon f-icon-remove_face"},null)])]),n.createVNode("div",{class:"f-list-handle"},[n.createVNode("div",null,[n.createVNode("i",{class:"f-icon f-icon-drag-vertical"},null)])])])}return{renderItem:I}}function el(e,t,o,i,r,a,l,s,c,p){var w;const f=n.ref(((w=e.group)==null?void 0:w.groupFields)||[]),{collpaseGroupIconClass:d}=r,{toggleGroupRow:u}=p;function S(C,_){_.collapse=!_.collapse,o.value=u(_.collapse?"collapse":"expand",_,o.value)}function v(C,_,b){return C.layer>-1&&n.createVNode("div",{class:"f-navlookup-recentHeader",onClick:g=>S(g,C)},[n.createVNode("div",{class:"fv-grid-group-row-icon"},[n.createVNode("span",{class:d(C)},null)]),n.createVNode("div",{class:"f-navlookup-recommandLabel"},[C.raw[f.value[C.layer]]])])}return{renderItem:v}}function tl(){const e=n.ref(-1),t=n.ref(""),o=n.ref(-1),i=n.ref(!1);function r(p,f,d){o.value=d}function a(p,f,d){i.value||(o.value=d)}function l(p,f,d){o.value=-1}function s(){i.value=!0}function c(){i.value=!1}return{activeIndex:e,focusedItemId:t,hoverIndex:o,onMouseenterItem:r,onMouseoverItem:a,onMouseoutItem:l,resumeHover:c,suspendHover:s}}function nl(e,t,o,i){const r=n.ref(e.idField),{dataView:a}=o,l=n.ref(-1),s=n.ref(!1),{activeIndex:c,focusedItemId:p,hoverIndex:f,resumeHover:d,suspendHover:u}=i;function S(_,b,g){_.stopPropagation(),u(),b&&setTimeout(()=>{l.value=g,s.value=!0,b.moving=!0})}function v(_,b){if(_.preventDefault(),l.value!==b){const g=a.value[l.value],V=a.value;V.splice(l.value,1),V.splice(b,0,g),l.value=b}}function w(_,b){_.preventDefault(),_.dataTransfer&&(_.dataTransfer.dropEffect="move")}function C(_,b){b&&(b.moving=!1),a.value.forEach((g,V)=>{g.__fv_index__=V}),s.value=!1,d(),f.value=b.raw.__fv_index__,c.value=b.raw.__fv_index__,p.value=b.raw[r.value],t.emit("change",a.value),t.emit("activeChange",b)}return{dragstart:S,dragenter:v,dragover:w,dragend:C,isDragging:s}}function ol(e,t,o){const{dataView:i}=o;function r(a){if(a>-1&&a<i.value.length){const l=i.value.splice(a,1);t.emit("removeItem",l[0])}}return{removeItem:r}}function il(e,t,o,i,r,a){const l=n.ref(e.idField),s=n.ref(e.disableField),c=n.ref(e.draggable),p=n.ref(e.itemClass),f=n.ref(e.selection.multiSelect??!1),d=n.ref(e.selection.multiSelectMode),{isDragging:u}=i,{activeIndex:S,focusedItemId:v,hoverIndex:w}=r,{clearSelection:C,getSelectedItems:_,toggleSelectItem:b}=a,g=n.ref(_());function V(M,I){const k={"f-listview-item":!0,"f-list-view-group-item":!0,"f-list-view-draggable-item":c.value,"f-un-click":!M.checked,"f-un-select":!!M.raw[s.value],"f-listview-active":g.value.findIndex(O=>O[l.value]===M.raw[l.value])>-1,"f-listview-item-active":g.value.findIndex(O=>O[l.value]===M.raw[l.value])>-1,"f-listview-hover":!u.value&&I===w.value,moving:!!M.moving};return p.value.split(" ").reduce((O,$)=>(O[$]=!0,O),k),k}function x(M,I){return M.raw[l.value]||""}const y=n.computed(()=>!f.value);function N(M,I,k){M.checked=k,!M.raw[s.value]&&(y.value&&(v.value=M.raw[l.value]),b(M))}const m=n.computed(()=>f.value&&d.value==="OnCheckClearByClick"),h=n.computed(()=>!f.value||f.value&&(d.value==="OnCheckAndClick"||d.value==="OnClick"));function T(M,I,k){if(I.raw[s.value]){M.preventDefault(),M.stopPropagation();return}v.value=I.raw[l.value],S.value=k,m.value&&C(o.value),h.value&&(b(I),g.value=_()),t.emit("clickItem",{data:g.value,index:k}),t.emit("activeChange",g.value)}return{getKey:x,listViewItemClass:V,onCheckItem:N,onClickItem:T}}function rl(e,t,o,i,r,a,l){const s=n.ref(e.view),c=n.ref(e.view==="CardView"),p=n.ref({}),f=n.ref("暂无数据"),d=tl(),u=nl(e,t,i,d),S=ol(e,t,i),v=il(e,t,o,u,d,a),w=n.computed(()=>({"f-list-view-group":!0,"d-flex":c.value,"flex-wrap":c.value})),C=n.computed(()=>!!o.value&&o.value.length>0),_=n.computed(()=>o.value.length===0),b=n.computed(()=>_.value&&!t.slots.empty);function g(){return s.value==="SingleView"?zn:s.value==="DraggableView"?Za:(s.value==="ContentView"||s.value==="CardView")&&t.slots.content?Qa:zn}const V=g(),{renderItem:x}=V(e,t,o,u,r,d,v,a,S,l),{renderItem:y}=el(e,t,o,u,r,d,v,a,S,l),N=[x,y];function m(){return o.value.filter(M=>M.visible!==!1).map((M,I)=>N[M.type](M,I,p))}function h(){return n.createVNode("div",{class:"f-list-view-emptydata"},[n.createVNode("p",{class:"f-empty-title"},[f.value])])}function T(){return n.createVNode("ul",{class:w.value,style:"list-style: none;"},[C.value&&m(),b.value&&h(),t.slots.empty&&t.slots.empty()])}return{renderListArea:T}}function al(e,t,o){function i(){return t.slots.header&&n.createVNode("div",{class:"f-list-view-header"},[t.slots.header()])}return{renderHeader:i}}function Kn(e,t,o){const i=n.ref(e.headerClass),r=n.ref(e.placeholder),a=n.ref(""),l=n.computed(()=>!a.value),s=n.computed(()=>!!a.value);function c(u){a.value=""}n.watch(a,u=>{e.enableHighlightSearch&&o.search(u),t.emit("afterSearch",u)});const p=n.computed(()=>{const u={"form-group":!0,"farris-form-group":!0};return i.value&&i.value.split(" ").reduce((v,w)=>(v[w]=!0,v),u),u});function f(u){}function d(){return n.createVNode("div",{class:"f-list-view-header",onClick:n.withModifiers(()=>f,["prevent","stop"])},[n.createVNode("div",{class:p.value},[n.createVNode("div",{class:"farris-input-wrap"},[n.createVNode("div",{class:"f-cmp-inputgroup"},[n.createVNode("div",{class:"input-group f-state-editable"},[n.withDirectives(n.createVNode("input",{class:"form-control f-utils-fill text-left","onUpdate:modelValue":u=>a.value=u,name:"input-group-value",type:"text",placeholder:r.value,autocomplete:"off"},null),[[n.vModelText,a.value]]),n.createVNode("div",{class:"input-group-append"},[s.value&&n.createVNode("span",{class:"input-group-text input-group-clear",onClick:u=>c()},[n.createVNode("i",{class:"f-icon f-icon-close-circle"},null)]),l.value&&n.createVNode("span",{class:"input-group-text"},[n.createVNode("span",{class:"f-icon f-icon-search"},null)])])])])])])])}return{renderHeader:d}}const Xn=n.defineComponent({name:"FListView",props:Un,emits:["afterSearch","checkValuesChange","clickItem","selectionChange","removeItem","change","activeChange"],setup(e,t){const o=n.ref(),i=n.ref(!0),r=n.ref(!1),a=n.ref([]),l=0,s=n.ref(e.columns),c=E.useIdentify(e),p=E.useHierarchy(e),f=E.useGroupData(e,c),d=E.usePagination(e),u=E.useDataView(e,new Map,p,c,d),S=E.useSelection(e,u,c,a,t),v=Ja(e,o),w=n.computed(()=>u.dataView.value.length),C=E.useEdit(e,t,c),_=E.useVisualDataBound(),b=E.useVisualDataCell(e,{},_),g=E.useVisualDataRow(e,C,p,c,_,b),V=E.useVisualGroupRow(e,c,b,g),x=E.useVisualSummaryRow(e,c,b,g),y=E.useVisualData(e,s,u,w,l,g,V,x),{getVisualData:N}=y;a.value=N(0,w.value+l-1);const m=n.computed(()=>{const j={"f-list-view":!0,"f-list-view-multiple":e.multiSelect};return e.size!=="default"&&(j[`${e.size}-item`]=!0),j}),h=n.computed(()=>!!t.slots.footer||i.value);function T(){return e.header==="SearchBar"?Kn:e.header==="ContentHeader"?al:Kn}const M=T(),{renderHeader:I}=M(e,t,v),{renderListArea:k}=rl(e,t,a,u,f,S,y);function F(j){v.search(j)}function O(j){j&&(u.load(j),a.value=N(0,w.value+l-1))}t.expose({search:F,updateDataSource:O});function $(j){e.multiSelect&&(j.preventDefault(),j.stopPropagation())}return()=>n.createVNode("div",{class:m.value,onClick:$},[I(),n.createVNode("div",{ref:o,class:"f-list-view-content",onMouseover:()=>{r.value=!0},onMouseleave:()=>{r.value=!1}},[k()]),h.value&&n.createVNode("div",{class:"f-list-view-footer"},[t.slots.footer&&t.slots.footer()])])}}),ll=n.defineComponent({name:"FTransfer",props:qn,emits:["change","activeChange"],setup(e,t){const o=n.ref(e.identifyField),i=n.ref("已选:"),r=n.ref("项数据"),a=n.ref(e.displayType),l=n.ref(!1),s=n.ref(e.dataSource),c=n.ref(e.selections||[]),p=n.computed(()=>c.value.map(h=>h[o.value])),f=new Map,d=n.ref();function u(){const h=new Map,T=e.selectionValues||[];T.length&&T.reduce((I,k)=>(I.set(k,!0),I),h);const M=e.selections||[];M.length&&(h.clear(),M.reduce((I,k)=>(I.set(k[o.value],!0),I),h)),c.value.length||(c.value=s.value.filter(I=>h.has(I[o.value])).map(I=>Object.assign({},I))),s.value.forEach(I=>{const k=I[o.value],F=h.has(k);I.checked=F,F&&f.set(k,I)})}u();const S=n.computed(()=>a.value==="List"),v=n.computed(()=>a.value==="Tree");function w(h){c.value=h.map(T=>Object.assign({},T)),t.emit("change",c.value)}function C(){return n.createVNode(Xn,{class:"f-utils-fill",data:s.value,multiSelect:!0,selection:{enableSelectRow:!0,multiSelect:!0,multiSelectMode:"OnCheckAndClick",showCheckbox:!0,showSelectAll:!1,showSelection:!0},draggable:!1,header:"Search",headerClass:"transfer-search-box","selection-values":p.value,onSelectionChange:w},{default:()=>[n.createTextVNode(" ")]})}function _(){return n.createVNode(n.Fragment,null,null)}function b(){return n.createVNode("div",{class:"f-utils-fill option-pane d-flex flex-column"},[n.createVNode("div",{class:"f-utils-flex-column option-pane-content f-utils-fill"},[n.createVNode("div",{class:"container columns-box d-flex f-utils-fill"},[S.value&&C(),v.value&&_()])])])}function g(h){const T=h[o.value];if(T!==null||T!==void 0){c.value=c.value.filter(I=>I[o.value]!==T);const M=f.get(T);M&&(M.checked=!1,f.delete(T)),t.emit("change",c.value)}}n.watch(c,h=>{d.value.updateDataSource(h)});function V(h){const T=new Map;c.value.reduce((M,I)=>(M.set(I[o.value],I),M),T),c.value=h.map(M=>T.get(M[o.value])),t.emit("change",c.value)}function x(h){t.emit("activeChange",h)}function y(){return n.createVNode(Xn,{ref:d,style:"flex:1",data:c.value,draggable:!0,view:"DraggableView","keep-order":!0,onChange:V,onRemoveItem:g,onActiveChange:x},null)}function N(){return n.createVNode("div",{class:"f-utils-fill selection-pane d-flex flex-column"},[n.createVNode("div",{class:"f-utils-flex-column selection-pane-content f-utils-fill"},[n.createVNode("div",{class:"selection-pane-title"},[n.createVNode("span",{class:"selection-title"},[i.value]),n.createVNode("span",{class:"selection-count"},[c.value&&c.value.length]),n.createVNode("span",{class:"selection-item-title"},[r.value])]),n.createVNode("div",{class:"container columns-box f-utils-fill d-flex"},[y()])])])}const m=n.computed(()=>({transfer:!0,row:!0,"f-utils-fill":l.value}));return()=>n.createVNode("div",{class:m.value,style:"height:480px"},[b(),N()])}}),sl=n.defineComponent({name:"FGridFieldEditor",props:Ln,emits:["change"],setup(e,t){const o=n.ref(e.viewModelId),i=n.inject("designViewModelUtils"),r=n.inject("useFormSchema"),a=n.inject("controlCreatorUtils"),l=n.ref(e.modelValue);let s=e.gridData.columns;const c=n.ref([]),p=n.ref([]);let f=[];n.onMounted(()=>{d()});function d(){p.value=i.getAllFields2TreeByVMId(o.value),f=S(p.value)}function u(){if(c.value=[],!s||s.length===0)return[];s.forEach(b=>{if(b.binding&&b.binding.field){const g=f.find(V=>V.data.id===b.binding.field);g?c.value.push(Object.assign({},g.data)):c.value.push({id:b.binding.field,name:b.caption,bindingField:null,isInValidBinding:!0,inValidTip:"绑定字段不存在,请手动移除列"})}})}function S(b,g=[]){return b&&b.forEach(V=>{g.push(V),V.children&&S(V.children,g)}),g}function v(){const b=i.getDgViewModel(o.value),g=[],V=[];c.value.forEach(y=>{delete y.inValidTip,delete y.isInValidBinding;let N=s==null?void 0:s.find(m=>{if(m.binding&&m.binding.field)return m.binding.field===y.id});if(N)g.push(N);else{const m=p.value.find(T=>T.id==y.id),h=a.setGridFieldProperty(e.gridType,m.data,null,!0);b.addField(y),g.push(h)}V.push(y.id)});const x=b.fields.filter(y=>!V.includes(y.id));if(x&&x.length>0){const y=x.map(N=>N.id);b.removeField(y),r.expressions&&r.expressions.length&&y.length&&(r.expressions=r.expressions.filter(N=>!y.includes(N.fieldId)))}l.value=`共 ${g.length} 项`,t.emit("change",g)}const w={fitContent:!1,width:900,height:600,title:"列编辑器",acceptCallback:()=>{v()},rejectCallback:()=>{}};function C(b){c.value=b?[...b]:[]}function _(){return e.getLatestGridData&&(e.gridData=e.getLatestGridData(),d()),s=e.gridData.columns,u(),Promise.resolve(!0)}return()=>n.createVNode(Ht,{"button-behavior":"Modal","modal-options":w,modelValue:l.value,"onUpdate:modelValue":b=>l.value=b,editable:!1,beforeOpen:_},{default:()=>[n.createVNode("div",{class:"f-utils-absolute-all"},[n.createVNode(ll,{selections:c.value,"data-source":p.value,class:"mx-2",onChange:b=>C(b)},null)])]})}}),cl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"data-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string",default:"col"},type:{description:"The type string of data-grid-column component",type:"string",default:"data-grid-column"},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"obejct",default:{}},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!0},fixed:{description:"",type:"string",enum:["left","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",default:"none",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!0},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number",default:120}}},dl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/data-grid-column.schema.json",title:"tree-grid-column",description:"A Farris data-grid-column Component",type:"object",properties:{id:{description:"The unique identifier for a data-grid-column",type:"string"},type:{description:"The type string of data-grid-column component",type:"string",default:"tree-grid-column"},allowGrouping:{description:"",type:"boolean",default:!0},colspan:{description:"",type:"number"},dataType:{type:"string"},editor:{description:"",type:"obejct"},field:{description:"",type:"string"},filterable:{description:"",type:"boolean",default:!0},fixed:{description:"",type:"string",enum:["left","right"]},halign:{description:"",type:"enum",default:"left",enum:["left","center","right"]},title:{description:"",type:"string"},readonly:{description:"",type:"boolean",default:!0},resizable:{description:"",type:"boolean",default:!0},rowspan:{description:"",type:"number"},showTips:{description:"",type:"boolean",default:!0},sort:{description:"",type:"string",enum:["asc","desc","none"]},sortable:{description:"",type:"boolean",default:!0},sortOrder:{description:"",type:"number"},tipMode:{description:"",type:"string",enum:["allways","auto"]},valign:{description:"",type:"enum",default:"middle",enum:["top","middle","bottom"]},visible:{description:"",type:"boolean",default:!0},width:{description:"",type:"number"}}},$t={id:{type:String,default:""},type:{type:String,default:""},allowGrouping:{type:Boolean,default:!0},colspan:{type:Number,default:1},dataType:{type:String,default:""},parentId:{type:String,default:""},editor:{type:Object},field:{type:String,default:""},filterable:{type:Boolean,default:!0},fixed:{type:String,default:""},halign:{type:String,default:"left"},title:{type:String,default:""},readonly:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},rowspan:{type:Boolean,default:!0},showTips:{type:Boolean,default:!0},sort:{type:String,default:"none"},sortable:{type:Boolean,default:!0},sortOrder:{type:Number},tipMode:{type:String,default:"auto"},valign:{type:String,default:"middle"},visible:{type:Boolean,default:!0},width:{type:Number},actualWidth:{type:Number},align:{type:String,default:""},left:{type:Number},sorter:{type:Function,default:()=>{}},origianlColSpan:{type:Number},index:{type:Number},isMultilingualField:{type:Boolean,default:!1},commands:{type:Array,default:[]},filter:{type:String,default:""},showSetting:{type:Boolean,default:!0},formatter:{type:Function,default:()=>{}},componentId:{type:String,default:""}},ul=Oe($t,cl,En,An),pl=Oe($t,dl,En,An);class fl extends Re{constructor(t,o){super(t,o)}getEditorProperties(t){return{description:"编辑器",title:"编辑器",type:"avatar",$converter:"/converter/property-editor.converter",properties:{readonly:{description:"",title:"只读",type:"boolean"},avatarWidth:{description:"",title:"头像宽度",type:"number"},avatarHeight:{description:"",title:"头像高度",type:"number"},cover:{description:"",title:"封面",type:"string"}}}}}class ml extends Re{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"check-group"},{placeholder:{visible:!1},textField:{description:"",title:"文本字段",type:"string"},valueField:{description:"",title:"值字段",type:"string"},enumData:{visible:!1,description:"",type:"array"}})}}class gl extends Re{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"check-group"},{placeholder:{visible:!1},text:{description:"",title:"显示文本",type:"string"},value:{description:"",title:"选中值",type:"string"}})}}class hl extends Re{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"combo-list"},{editable:{description:"",title:"允许编辑",type:"boolean"},textField:{description:"",title:"数据源显示字段",type:"string"},idField:{description:"",title:"数据源值字段",type:"string"}})}}class yl extends Re{constructor(t,o){super(t,o)}}class vl extends Re{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"date-picker"},{displayFormat:{description:"",title:"展示格式",type:"enum",editor:{data:[{name:"yyyy-MM-dd",id:"yyyy-MM-dd"},{name:"yyyy/MM/dd",id:"yyyy/MM/dd"},{name:"yyyyMMdd",id:"yyyyMMdd"},{name:"MM/dd/yyyy",id:"MM/dd/yyyy"},{name:"yyyy年MM月dd日",id:"yyyy年MM月dd日"}]}},valueFormat:{description:"",title:"存储格式",type:"enum",editor:{data:[{name:"yyyy-MM-dd",id:"yyyy-MM-dd"},{name:"yyyy/MM/dd",id:"yyyy/MM/dd"},{name:"yyyyMMdd",id:"yyyyMMdd"},{name:"MM/dd/yyyy",id:"MM/dd/yyyy"},{name:"yyyy年MM月dd日",id:"yyyy年MM月dd日"}]}},maxYear:{description:"",title:"最大年限",type:"number"},minYear:{description:"",title:"最小年限",type:"number"}})}}const Ze={convertFrom:(e,t)=>t==="multiSelect"?!!e.editor[t]:t==="separator"?e.editor[t]||",":e.editor[t],convertTo:(e,t,o)=>{e.editor[t]=o}},bl={convertFrom:(e,t)=>e[t]==null?!0:e[t],convertTo:(e,t,o)=>{e[t]=o}};function Cl(e){let t="form_group_"+Date.now();return e&&(t=e.replaceAll("-","_").replaceAll(".","_")),"lookup."+t}const wl={convertFrom:(e,t)=>{var o;return(o=e.editor[t])==null?void 0:o.displayName},convertTo:(e,t,o)=>{if(o&&o.length>0){const i=o[0],{name:r,id:a,metadataContent:l}=i;e.editor.dataSource||(e.editor.dataSource={}),e.editor.dataSource.displayName=r,e.editor.helpId=a;const{displayType:s,idField:c,textField:p}=l;e.editor.displayType=s,e.editor.dataSource.idField=c,e.editor.textField=p,e.editor.dataSource.type="ViewObject",e.editor.dataSource.uri||(e.editor.dataSource.uri=Cl(e.id))}}},Sl={convertFrom:(e,t)=>{var o;return(o=e.editor.dataSource)==null?void 0:o.idField},convertTo:(e,t,o)=>{if(o&&o.length>0){const i=o[0];e.editor.dataSource.idField=i==null?void 0:i.bindingPath}}},xl={convertFrom:(e,t)=>{var o;return(o=e.editor)==null?void 0:o.textField},convertTo:(e,t,o)=>{if(o&&o.length>0){const i=o[0];e.editor.textField=i==null?void 0:i.bindingPath}}},_l={convertFrom:(e,t)=>e.editor.displayType?e.editor.displayType.toUpperCase():"LIST",convertTo:(e,t,o)=>{e.editor.displayType=o}},Vl=Symbol("schema_repository_token");class Fl extends Re{getPropertyConfig(t,o){const i=this.getBasicProperties(t,o),r=this.getAppearanceConfig(),a=this.getBehaviorConfig(t),l=this.getLookupConfig(t.editor);return{type:"object",categories:{basic:i,appearance:r,behavior:a,lookup:l}}}getBehaviorConfig(t){return{description:"Basic Infomation",title:"行为",properties:{editable:{description:"",title:"允许编辑",type:"boolean",$converter:Ze},readonly:{description:"",title:"只读",type:"boolean",$converter:Ze},required:{visible:!1,description:"",title:"必填",type:"boolean",$converter:Ze},visible:{description:"",title:"可见",type:"boolean",$converter:bl},placeHolder:{visible:!1,description:"",title:"提示文本",type:"string"},tabindex:{visible:!1,description:"",title:"tab索引",type:"number"}}}}getLookupConfig(t){return{description:"Basic Infomation",title:"编辑器",properties:{dataSource:{description:"数据源",title:"数据源",type:"string",refreshPanelAfterChanged:!0,editor:{type:"schema-selector",title:"选择数据源",editorParams:{propertyData:t,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},viewOptions:[{id:"recommend",title:"推荐",type:"List",dataSource:"Recommand",enableGroup:!0,groupField:"category",groupFormatter:(o,i)=>`${o==="local"?"本地元数据":"最近使用"}`},{id:"total",title:"全部",type:"List",dataSource:"Total"}],repositoryToken:Vl,onSubmitModal:o=>{if(o){const i=this.formSchemaUtils.getFormMetadataBasicInfo();return this.metadataService.getPickMetadata(i.relativePath,o[0].data).then(r=>JSON.parse(r==null?void 0:r.metadata.content))}}},$converter:wl},displayType:{description:"类型: 树列表、列表、双列表、左树右列表",title:"展示类型",type:"string",$converter:_l,editor:{type:"combo-list",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:{type:"field-selector",bindingType:{enable:!1},textField:"bindingPath",editorParams:{propertyData:t,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:st},$converter:Sl},textField:{description:"显示文本字段",title:"文本字段",type:"string",$converter:xl,editor:{type:"field-selector",bindingType:{enable:!1},textField:"bindingPath",editorParams:{propertyData:t,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},columns:[{field:"name",title:"名称"},{field:"code",title:"编号"},{field:"bindingPath",title:"绑定字段"}],repositoryToken:st}},mappingFields:{description:"字段映射",title:"字段映射",type:"string",$converter:Ze,editor:{type:"mapping-editor",modalWidth:800,modalHeight:600,editable:!1,fromData:{editable:!1,editorParams:{propertyData:t,formBasicInfo:this.formSchemaUtils.getFormMetadataBasicInfo()},formatter:(o,i)=>`${i.raw[o.field]} [${i.raw.bindingPath}]`,idField:"id",textField:"name",valueField:"bindingPath",repositoryToken:st},toData:{idField:"id",textField:"name",valueField:"bindingPath",dataSource:this.designViewModelUtils.getAllFields2TreeByVMId(this.viewModelId),formatter:(o,i)=>`${i.raw[o.field]} [${i.raw.bindingPath}]`}}},multiSelect:{description:"启用多选",$converter:Ze,title:"启用多选",type:"boolean"},separator:{description:"多选分隔符",$converter:Ze,title:"多选分隔符",type:"string"}}}}}class Nl extends Re{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"number-range"},{editable:{description:"",title:"允许编辑",type:"boolean"}})}}class kl extends Re{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"number-spinner"},{textAlign:{description:"",title:"对齐方式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"left",name:"左对齐"},{value:"center",name:"居中对齐"},{value:"right",name:"右对齐"}]}}})}}class Tl extends Re{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"number-spinner"},{readonly:{visible:!1},placeholder:{visible:!1},horizontal:{description:"",title:"是否横向",type:"boolean"},textField:{description:"",title:"显示文本字段",type:"string"},valueField:{description:"",title:"值字段",type:"string"},enumData:{visible:!1,description:"",title:"数据",type:"array"}})}}class Il extends Re{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"switch"},{readonly:{visible:!1},placeholder:{visible:!1},onLabel:{description:"",title:"打开时标签",type:"string"},offLabel:{description:"",title:"关闭时标签",type:"string"},onBackground:{description:"",title:"打开时背景色",type:"string"},offBackground:{description:"",title:"关闭时背景色",type:"string"},size:{description:"",title:"尺寸",type:"enum",editor:{data:[{value:"small",name:"小号"},{value:"middle",name:"中号"},{value:"large",name:"大号"}]}}})}}class Ml extends Re{constructor(t,o){super(t,o)}getEditorProperties(t){return this.getComponentConfig(t,{type:"time-picker"},{editable:{description:"",title:"允许编辑",type:"boolean"},format:{description:"",title:"格式",type:"enum",editor:{type:"combo-list",textField:"name",valueField:"value",data:[{value:"HH:mm:ss",name:"HH:mm:ss"}]}},showHeader:{description:"",title:"是否显示头部区域",type:"boolean"},use12Hours:{description:"",title:"是否使用12小时制",type:"boolean"}})}}class Ol extends dt{constructor(t,o){super(t,o)}getPropertyConfig(t,o){return this.getBasicPropConfig(t),this.getAppearanceProperties(t),this.getFieldEditorProperties(t,o),this.propertyConfig}getBasicPropConfig(t){this.propertyConfig.categories.basic={description:"Basic Information",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},title:{description:"标题",title:"标题",type:"string"}}}}getAppearanceProperties(t){this.propertyConfig.categories.appearance={description:"",title:"外观",properties:{halign:{description:"数据水平对齐方式选择",title:"数据水平对齐方式",type:"enum",editor:{data:[{id:"left",name:"靠左"},{id:"right",name:"靠右"},{id:"center",name:"居中"}]}},valign:{description:"数据垂直对齐方式选择",title:"数据垂直对齐方式",type:"enum",editor:{data:[{id:"top",name:"靠上"},{id:"middle",name:"居中"},{id:"bottom",name:"靠下"}]}}}}}getFieldEditorProperties(t,o){o.fieldEditable&&t.editor&&this.getFieldEditorProp(t)}getFieldEditorProp(t,o="gridFieldEditor",i=!1){const r=this.formMetadataConverter.getRealEditorType(t.editor.type);let a;switch(r){case"avatar":a=new fl(this.componentId,this.designerHostService);break;case"check-group":a=new ml(this.componentId,this.designerHostService);break;case"check-box":a=new gl(this.componentId,this.designerHostService);break;case"combo-list":a=new hl(this.componentId,this.designerHostService);break;case"date-picker":a=new vl(this.componentId,this.designerHostService);break;case"lookup":a=new Fl(this.componentId,this.designerHostService);break;case"number-range":a=new Nl(this.componentId,this.designerHostService);break;case"number-spinner":a=new kl(this.componentId,this.designerHostService);break;case"radio-group":a=new Tl(this.componentId,this.designerHostService);break;case"switch":a=new Il(this.componentId,this.designerHostService);break;case"textarea":a=new yl(this.componentId,this.designerHostService);break;case"time-picker":a=new Ml(this.componentId,this.designerHostService);break;default:a=new Ur(this.componentId,this.designerHostService)}this.setDesignViewModelField(t);var l=this;this.propertyConfig.categories[`${o}_editorType`]={description:"",title:"编辑器类型",propertyData:t.editor,tabId:"gridFieldEditor",parentPropertyID:"editor",tabName:"编辑器",properties:{type:{description:"",title:"编辑器类型",type:"enum",$converter:"/converter/change-editor.converter",refreshPanelAfterChanged:!0,editor:{type:"combo-list",textField:"value",valueField:"key",data:rt.getEditorTypesByMDataType(l.designViewModelField.type.name)}}},setPropertyRelates(p,f){if(p)switch(p&&p.propertyID){case"type":{l.changeFieldEditorType(t,p.propertyValue);break}}}};const s=["id","type","class","style","binding","label","responseLayout"],c=a.getPropertyConfig(t).categories;Object.keys(c).map(p=>{const f=c[p];let d={};if(Object.keys(f.properties).map(u=>{s.findIndex(S=>S==u)==-1&&f.properties[u]!==!1&&(d[u]=f.properties[u])}),Object.keys(d).length!=0){const u=f==null?void 0:f.title,S="gridFieldEditor",v="编辑器",w=f==null?void 0:f.description,C=(f==null?void 0:f.$converter)||"";l.propertyConfig.categories[o+"_"+p]={title:u,tabId:S,tabName:v,description:w,$converter:C,propertyData:t,properties:d}}})}changeFieldEditorType(t,o){const i=this.designViewModelUtils.getDgViewModel(this.viewModelId);i.changeField(this.designViewModelField.id,{editor:{$type:o},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1);const r=this.formSchemaUtils.getComponentByViewModelId(this.viewModelId),a=this.formSchemaUtils.selectNode(r,f=>f.type===Z["data-grid"].type||f.type===Z["tree-grid"].type);if(!a)return;const l=i.fields.find(f=>f.id==this.designViewModelField.id),s=this.controlCreatorUtils.setGridFieldProperty(o,l,null,!0),c=a.hasOwnProperty("columns")?a.columns:a.fields,p=c.findIndex(f=>f.id===t.id);p>-1&&c[p].editor&&(c[p].editor=Object.assign(s.editor,{required:c[p].editor.required}))}}function $l(e,t){const o=e.schema,i=n.ref(!0),r=n.ref(!0);function a(u){return!1}function l(){return!1}function s(){return!1}function c(){return!0}function p(u){}function f(){}function d(u){var v;return new Ol(u,t).getPropertyConfig(o,(v=e==null?void 0:e.parent)==null?void 0:v.schema)}return{canAccepts:a,checkCanDeleteComponent:l,checkCanMoveComponent:s,hideNestedPaddingInDesginerView:c,onAcceptMovedChildElement:p,resolveComponentContext:f,triggerBelongedComponentToMoveWhenMoved:i,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:d}}const Yn=n.defineComponent({name:"FDataGridColumnDesign",props:$t,emits:[],setup(e,t){const o=n.ref(),i=n.inject("designer-host-service"),r=n.inject("design-item-context"),a=$l(r,i),l=Vt(o,r,a);n.onMounted(()=>{o.value.componentInstance=l}),t.expose(l.value);function s(c){var p;(p=r==null?void 0:r.setupContext)==null||p.emit("selectionChange",l.value.schema,r.schema,e.componentId,l.value)}return()=>n.createVNode("span",{class:"fv-column-title",ref:o,onClick:c=>s()},[e.title])}});Qe.install=e=>{e.component(Qe.name,Qe),e.component(Ot.name,Ot)},Qe.register=(e,t,o,i)=>{e["data-grid"]=Qe,t["data-grid"]=Gn,e["grid-field-editor"]=sl,t["grid-field-editor"]=Ha,i["data-grid"]={bindingResolver:Hn,selectionItemResolver:Ea}},Qe.registerDesigner=(e,t,o)=>{e["data-grid"]=Ot,t["data-grid"]=Gn,t["data-grid-column"]=ul,e["data-grid-column"]=Yn,t["tree-grid-column"]=pl,e["tree-grid-column"]=Yn},at.register=(e,t,o,i)=>{e["tree-grid"]=at,t["tree-grid"]=Bi,i["tree-grid"]={bindingResolver:Hn,selectionItemResolver:ji}},at.registerDesigner=(e,t,o)=>{e["tree-grid"]=$a,t["tree-grid"]=Pi},kr(at);function Bl(e,t,o){return t}const jl=new Map([["appearance",We]]),Pl={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/radio-group.schema.json",title:"radio-group",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for a radio-group",type:"string"},type:{description:"The type string of radio-group component",type:"string",default:"radio-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"boolean",default:!1},editable:{description:"",type:"boolean",default:!0},placeholder:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},require:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0},horizontal:{description:"",type:"boolean",default:!1},textField:{description:"",type:"string",default:"name"},valueField:{description:"",type:"string",default:"value"},enumData:{description:"",type:"array"}},required:["id","type"],ignore:["id","appearance","binding"]},Jn={...Tr,id:String,disabled:{type:Boolean,default:!1},enumData:{type:Array,default:[{value:"example",name:"example1"}]},horizontal:{type:Boolean,default:!1},direction:{type:String,default:"horizontal"},modelValue:{type:String,default:""},name:{type:String,default:""},tabIndex:Number,textField:{type:String,default:"name"},valueField:{type:String,default:"value"}};Oe(Jn,Pl,jl,Bl);function Dl(e,t,o){const i=n.computed(()=>!e.disabled),r=n.computed(()=>e.enumData||[]);function a(c){return c[e.valueField]}function l(c){return c[e.textField]}function s(c,p){if(i.value){const f=a(c);o.value!==f&&(o.value=f,t.emit("changeValue",f),t.emit("update:modelValue",f))}p.stopPropagation()}return{enumData:r,getValue:a,getText:l,onClickRadio:s}}const El=Symbol("radioGroupContext"),Rl=n.defineComponent({name:"FRadioGroup",props:Jn,emits:["changeValue","update:modelValue"],setup(e,t){const o=n.ref(e.modelValue),{enumData:i,onClickRadio:r,getValue:a,getText:l}=Dl(e,t,o),s=n.computed(()=>({"farris-checkradio-hor":e.direction==="horizontal"})),c=n.ref([]);return n.provide(El,{radios:c,parentProps:e,parentContext:t}),()=>n.createVNode("div",{class:["farris-input-wrap",s.value]},[t.slots.default?t.slots.default():i.value.map((p,f)=>{const d="radio_"+e.id+e.name+p[e.valueField];return n.createVNode("div",{class:"custom-control custom-radio"},[n.createVNode("input",{type:"radio",class:"custom-control-input",name:d,id:d,value:a(p),checked:a(p)===o.value,disabled:e.disabled,tabindex:e.tabIndex,onClick:u=>r(p,u)},null),n.createVNode("label",{class:"custom-control-label",for:d},[l(p)])])})])}}),Bt=n.defineComponent({name:"FFieldSelectorContainer",props:ct,emits:["selected","bindingTypeChange"],setup(e,t){var S,v;const o=n.ref(e.data),i=n.ref(e.bindingType),r=n.ref(e.bindingData),a=n.ref(),l=n.computed(()=>i.value.data),s=n.computed(()=>{var w;return(w=r.value)==null?void 0:w.map(C=>C[e.idField])});n.watch(()=>e.data,w=>{o.value=w,a.value.updateDataSource(w)});const c={"f-utils-fill":!0,"p-2":(S=e.bindingType)==null?void 0:S.enable,"px-2":!((v=e.bindingType)!=null&&v.enable)};function p(w){t.emit("bindingTypeChange",w)}function f(w){r.value=w,t.emit("selected",w)}function d(){return n.createVNode("div",{class:"px-3"},[n.createVNode(Rl,{name:"bindingType",textField:i.value.textField,valueField:i.value.valueField,enumData:l.value,modelValue:i.value.value,"onUpdate:modelValue":w=>i.value.value=w,horizontal:!0,onChangeValue:p},null)])}function u(){return n.createVNode(at,{ref:a,fit:!0,data:o.value,idField:e.idField,columns:e.columns,rowNumber:{enable:!1},columnOption:{fitColumns:!0},"selection-values":s.value,onSelectionChange:f},null)}return()=>n.createVNode("div",{class:"h-100 d-flex flex-column"},[i.value.enable&&d(),n.createVNode("div",{class:c,style:"position:relative"},[u()])])}}),ft=n.defineComponent({name:"FFieldSelector",props:ct,emits:["selected","bindingTypeChanged"],setup(e,t){const o='<i class="f-icon f-icon-lookup"></i>',i=n.ref(e.bindingData),r=n.ref(e.columns),a=n.ref(e.data),l=n.ref(),s=n.inject(e.repositoryToken);n.watch(()=>e.data,C=>{a.value=C});const c=n.ref(e.modelValue);function p(C){i.value=C}function f(C){t.emit("bindingTypeChanged",C)}function d(){var _;let C="";i.value&&i.value.length&&(C=i.value.map(b=>b[e.textField]).join(e.separator)),(_=e.bindingType)!=null&&_.enable&&(C=`${e.bindingType.value}:${C}`),c.value=C}n.watch(()=>e.modelValue,C=>{typeof C=="string"?c.value=C:d()});function u(C){a.value=C}function S(){return n.createVNode(Bt,{ref:l,data:a.value,bindingType:e.bindingType,columns:r.value,onSelected:p,bindingData:i.value,onBindingTypeChange:f},null)}const v={title:e.title,fitContent:!1,height:e.modalHeight,width:e.modalWidth,buttons:[{name:"cancel",text:"取消",class:"btn btn-secondary",handle:C=>!0},{name:"accept",text:"确定",class:"btn btn-primary",handle:C=>(d(),e.onFieldSelected&&typeof e.onFieldSelected=="function"&&e.onFieldSelected(i.value),!0)}],reiszeable:!0,draggable:!0};function w(){if(e.beforeOpenDialog){e.beforeOpenDialog({instance:{loadData:u}});return}s&&(s==null||s.getData(e.editorParams).then(C=>u(C)))}return()=>n.createVNode(Ht,{modelValue:c.value,"onUpdate:modelValue":C=>c.value=C,editable:!1,disabled:e.disabled,readonly:e.readonly,inputType:"text",enableClear:!1,buttonContent:o,buttonBehavior:"Modal",modalOptions:v,beforeOpen:w},{default:()=>[n.createVNode("div",{class:"h-100 d-flex flex-column"},[S()])]})}}),Al={install(e){e.component(ft.name,ft),e.component(Bt.name,Bt)},register(e,t,o,i){e["field-selector"]=ft,t["field-selector"]=Wt}};H.FieldSelector=ft,H.FieldSelectorRepositoryToken=st,H.default=Al,H.fieldSelectorProps=ct,H.propsResolver=Wt,Object.defineProperties(H,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});