@farris/ui-vue 1.3.0 → 1.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (305) hide show
  1. package/components/accordion/index.esm.js +103 -99
  2. package/components/accordion/index.umd.cjs +1 -1
  3. package/components/avatar/index.esm.js +454 -398
  4. package/components/avatar/index.umd.cjs +1 -1
  5. package/components/binding-selector/index.esm.js +444 -0
  6. package/components/binding-selector/index.umd.cjs +1 -0
  7. package/components/binding-selector/package.json +8 -0
  8. package/components/border-editor/index.esm.js +5 -3
  9. package/components/border-editor/index.umd.cjs +1 -1
  10. package/components/button-edit/index.esm.js +143 -139
  11. package/components/button-edit/index.umd.cjs +1 -1
  12. package/components/calendar/index.esm.js +479 -476
  13. package/components/calendar/index.umd.cjs +1 -1
  14. package/components/capsule/index.esm.js +255 -252
  15. package/components/capsule/index.umd.cjs +1 -1
  16. package/components/checkbox/index.esm.js +652 -567
  17. package/components/checkbox/index.umd.cjs +1 -1
  18. package/components/color-picker/index.esm.js +518 -521
  19. package/components/color-picker/index.umd.cjs +2 -2
  20. package/components/combo-list/index.esm.js +659 -553
  21. package/components/combo-list/index.umd.cjs +1 -1
  22. package/components/combo-tree/index.esm.js +162 -155
  23. package/components/combo-tree/index.umd.cjs +1 -1
  24. package/components/common/index.esm.js +866 -747
  25. package/components/common/index.umd.cjs +1 -1
  26. package/components/component/index.esm.js +371 -998
  27. package/components/component/index.umd.cjs +1 -1
  28. package/components/condition/index.esm.js +1174 -1280
  29. package/components/condition/index.umd.cjs +1 -1
  30. package/components/content-container/index.esm.js +340 -991
  31. package/components/content-container/index.umd.cjs +1 -1
  32. package/components/data-grid/index.esm.js +6066 -5847
  33. package/components/data-grid/index.umd.cjs +1 -1
  34. package/components/data-view/index.esm.js +3400 -3486
  35. package/components/data-view/index.umd.cjs +1 -1
  36. package/components/date-picker/index.esm.js +2328 -2446
  37. package/components/date-picker/index.umd.cjs +1 -1
  38. package/components/designer-canvas/index.css +1 -1
  39. package/components/designer-canvas/index.esm.js +9551 -1200
  40. package/components/designer-canvas/index.umd.cjs +1 -1
  41. package/components/designer-outline/index.esm.js +2 -1
  42. package/components/designer-outline/index.umd.cjs +1 -1
  43. package/components/drawer/index.esm.js +34 -38
  44. package/components/drawer/index.umd.cjs +1 -1
  45. package/components/dropdown/index.esm.js +234 -231
  46. package/components/dropdown/index.umd.cjs +2 -2
  47. package/components/dynamic-form/index.esm.js +1996 -2630
  48. package/components/dynamic-form/index.umd.cjs +1 -1
  49. package/components/dynamic-resolver/index.esm.js +138 -123
  50. package/components/dynamic-resolver/index.umd.cjs +1 -1
  51. package/components/dynamic-view/index.esm.js +218 -218
  52. package/components/dynamic-view/index.umd.cjs +1 -1
  53. package/components/event-parameter/index.esm.js +311 -0
  54. package/components/event-parameter/index.umd.cjs +1 -0
  55. package/components/event-parameter/package.json +8 -0
  56. package/components/events-editor/index.css +1 -1
  57. package/components/events-editor/index.esm.js +548 -586
  58. package/components/events-editor/index.umd.cjs +1 -1
  59. package/components/expression-editor/index.esm.js +95 -91
  60. package/components/expression-editor/index.umd.cjs +1 -1
  61. package/components/external-container/index.esm.js +2871 -3736
  62. package/components/external-container/index.umd.cjs +1 -1
  63. package/components/field-selector/index.esm.js +3380 -3645
  64. package/components/field-selector/index.umd.cjs +1 -1
  65. package/components/filter-bar/index.css +1 -1
  66. package/components/filter-bar/index.esm.js +10543 -3207
  67. package/components/filter-bar/index.umd.cjs +1 -1
  68. package/components/flow-canvas/index.css +1 -1
  69. package/components/flow-canvas/index.esm.js +9775 -1312
  70. package/components/flow-canvas/index.umd.cjs +1 -1
  71. package/components/image-cropper/index.esm.js +442 -438
  72. package/components/image-cropper/index.umd.cjs +1 -1
  73. package/components/input-group/index.esm.js +587 -807
  74. package/components/input-group/index.umd.cjs +1 -1
  75. package/components/layout/index.esm.js +415 -381
  76. package/components/layout/index.umd.cjs +1 -1
  77. package/components/list-nav/index.esm.js +361 -1024
  78. package/components/list-nav/index.umd.cjs +1 -1
  79. package/components/list-view/index.esm.js +2265 -2371
  80. package/components/list-view/index.umd.cjs +1 -1
  81. package/components/lookup/index.esm.js +6425 -6257
  82. package/components/lookup/index.umd.cjs +1 -1
  83. package/components/mapping-editor/index.esm.js +6164 -5946
  84. package/components/mapping-editor/index.umd.cjs +1 -1
  85. package/components/message-box/index.esm.js +252 -252
  86. package/components/message-box/index.umd.cjs +1 -1
  87. package/components/modal/index.esm.js +70 -70
  88. package/components/modal/index.umd.cjs +1 -1
  89. package/components/nav/index.esm.js +524 -1474
  90. package/components/nav/index.umd.cjs +3 -3
  91. package/components/number-range/index.esm.js +547 -502
  92. package/components/number-range/index.umd.cjs +1 -1
  93. package/components/number-spinner/index.esm.js +646 -574
  94. package/components/number-spinner/index.umd.cjs +1 -1
  95. package/components/order/index.esm.js +1181 -2028
  96. package/components/order/index.umd.cjs +1 -1
  97. package/components/page-footer/index.esm.js +134 -131
  98. package/components/page-footer/index.umd.cjs +1 -1
  99. package/components/page-header/index.esm.js +1185 -2027
  100. package/components/page-header/index.umd.cjs +1 -1
  101. package/components/pagination/index.esm.js +442 -1368
  102. package/components/pagination/index.umd.cjs +1 -1
  103. package/components/progress/index.esm.js +238 -235
  104. package/components/progress/index.umd.cjs +3 -3
  105. package/components/property-editor/index.esm.js +1635 -1713
  106. package/components/property-editor/index.umd.cjs +2 -2
  107. package/components/property-panel/index.esm.js +791 -716
  108. package/components/property-panel/index.umd.cjs +1 -1
  109. package/components/query-solution/index.css +1 -1
  110. package/components/query-solution/index.esm.js +12203 -5274
  111. package/components/query-solution/index.umd.cjs +6 -1
  112. package/components/radio-button/index.esm.js +97 -97
  113. package/components/radio-button/index.umd.cjs +1 -1
  114. package/components/radio-group/index.css +1 -1
  115. package/components/radio-group/index.esm.js +1873 -520
  116. package/components/radio-group/index.umd.cjs +1 -1
  117. package/components/rate/index.esm.js +299 -300
  118. package/components/rate/index.umd.cjs +1 -1
  119. package/components/response-layout/index.esm.js +176 -173
  120. package/components/response-layout/index.umd.cjs +1 -1
  121. package/components/response-layout-editor/index.esm.js +715 -659
  122. package/components/response-layout-editor/index.umd.cjs +1 -1
  123. package/components/response-toolbar/index.esm.js +1032 -1883
  124. package/components/response-toolbar/index.umd.cjs +1 -1
  125. package/components/schema-selector/index.esm.js +4767 -5693
  126. package/components/schema-selector/index.umd.cjs +2 -2
  127. package/components/search-box/index.esm.js +169 -161
  128. package/components/search-box/index.umd.cjs +1 -1
  129. package/components/section/index.esm.js +490 -1167
  130. package/components/section/index.umd.cjs +1 -1
  131. package/components/smoke-detector/index.esm.js +154 -151
  132. package/components/smoke-detector/index.umd.cjs +1 -1
  133. package/components/splitter/index.esm.js +575 -1204
  134. package/components/splitter/index.umd.cjs +1 -1
  135. package/components/splitter/style.js +2 -0
  136. package/components/step/index.esm.js +279 -276
  137. package/components/step/index.umd.cjs +1 -1
  138. package/components/switch/index.esm.js +478 -428
  139. package/components/switch/index.umd.cjs +1 -1
  140. package/components/tabs/index.esm.js +2591 -3326
  141. package/components/tabs/index.umd.cjs +1 -1
  142. package/components/tags/index.esm.js +442 -439
  143. package/components/tags/index.umd.cjs +1 -1
  144. package/components/text/index.esm.js +309 -307
  145. package/components/text/index.umd.cjs +1 -1
  146. package/components/textarea/index.esm.js +500 -430
  147. package/components/textarea/index.umd.cjs +1 -1
  148. package/components/time-picker/index.esm.js +1391 -1341
  149. package/components/time-picker/index.umd.cjs +1 -1
  150. package/components/transfer/index.esm.js +574 -575
  151. package/components/transfer/index.umd.cjs +1 -1
  152. package/components/tree-grid/index.esm.js +3422 -3536
  153. package/components/tree-grid/index.umd.cjs +1 -1
  154. package/components/tree-view/index.esm.js +2661 -2764
  155. package/components/tree-view/index.umd.cjs +1 -1
  156. package/components/uploader/index.esm.js +675 -674
  157. package/components/uploader/index.umd.cjs +2 -2
  158. package/components/verify-detail/index.esm.js +300 -297
  159. package/components/verify-detail/index.umd.cjs +1 -1
  160. package/components/video/index.esm.js +454 -1089
  161. package/components/video/index.umd.cjs +1 -1
  162. package/components/weather/index.esm.js +709 -706
  163. package/components/weather/index.umd.cjs +5 -5
  164. package/farris.all.esm.js +54780 -52757
  165. package/farris.all.umd.cjs +14 -9
  166. package/index.css +1 -1
  167. package/package.json +1 -1
  168. package/types/binding-selector/index.d.ts +55 -0
  169. package/types/binding-selector/src/binding-selector.component.d.ts +11 -0
  170. package/types/binding-selector/src/binding-selector.props.d.ts +52 -0
  171. package/types/binding-selector/src/components/binding-selector-container.component.d.ts +13 -0
  172. package/types/binding-selector/src/composition/use-field-selection.d.ts +9 -0
  173. package/types/combo-list/src/components/list-container.component.d.ts +6 -6
  174. package/types/combo-list/src/components/list-container.props.d.ts +1 -1
  175. package/types/combo-tree/src/components/tree-container.component.d.ts +5 -5
  176. package/types/common/directive/area-response.d.ts +10 -0
  177. package/types/common/entity/entity-schema.d.ts +26 -11
  178. package/types/common/index.d.ts +9 -0
  179. package/types/common/radio-checkbox/radio-checkbox.props.d.ts +1 -0
  180. package/types/common/types.d.ts +2 -2
  181. package/types/common/utils/resolve-field.d.ts +2 -0
  182. package/types/common/utils/use-class.d.ts +7 -0
  183. package/types/component/src/designer/use-designer-rules.d.ts +2 -2
  184. package/types/condition/src/condition-fields.design.component.d.ts +18 -0
  185. package/types/condition/src/types.d.ts +5 -4
  186. package/types/content-container/src/designer/use-designer-rules.d.ts +3 -3
  187. package/types/data-grid/index.d.ts +8 -5
  188. package/types/data-grid/src/composition/data-grid-component-creator.service.d.ts +20 -0
  189. package/types/data-grid/src/{designer/data-grid-column.props.d.ts → data-grid-column.props.d.ts} +1 -1
  190. package/types/data-grid/src/data-grid.component.d.ts +3 -2
  191. package/types/data-grid/src/data-grid.props.d.ts +2 -2
  192. package/types/data-grid/src/designer/data-grid.design.component.d.ts +2 -2
  193. package/types/data-grid/src/designer/grid-field-editor.component.d.ts +14 -14
  194. package/types/data-grid/src/designer/use-designer-rules.d.ts +2 -2
  195. package/types/data-grid/src/schema/schema-resolver.d.ts +1 -1
  196. package/types/data-view/components/row/hierarchy-row.component.d.ts +2 -2
  197. package/types/data-view/composition/data/use-tree-data.d.ts +1 -1
  198. package/types/data-view/composition/types.d.ts +9 -11
  199. package/types/date-picker/src/components/calendar/calendar.component.d.ts +3 -3
  200. package/types/date-picker/src/components/month/month.component.d.ts +3 -3
  201. package/types/date-picker/src/components/year/year.component.d.ts +3 -3
  202. package/types/designer-canvas/index.d.ts +3 -1
  203. package/types/designer-canvas/src/composition/dg-control.d.ts +5 -0
  204. package/types/designer-canvas/src/composition/function/drag-resolve.d.ts +5 -0
  205. package/types/designer-canvas/src/composition/rule/use-dragula-common-rule.d.ts +4 -0
  206. package/types/designer-canvas/src/composition/rule/use-template-rule.d.ts +30 -0
  207. package/types/designer-canvas/src/composition/types.d.ts +49 -41
  208. package/types/designer-canvas/src/types.d.ts +10 -21
  209. package/types/dynamic-form/index.d.ts +1 -1
  210. package/types/dynamic-form/src/designer/form-group-use-designer-rules.d.ts +3 -0
  211. package/types/dynamic-form/src/designer/response-form-use-designer-rules.d.ts +3 -0
  212. package/types/dynamic-form/src/designer/response-form.design.component.d.ts +7 -1
  213. package/types/dynamic-form/src/property-config/{form.property-config.d.ts → response-form.property-config.d.ts} +1 -1
  214. package/types/dynamic-form/src/schema/{schema-resolver.d.ts → response-form-schema-resolver.d.ts} +1 -1
  215. package/types/dynamic-form/src/types.d.ts +1 -1
  216. package/types/dynamic-resolver/src/common/toolbar-resolver.d.ts +6 -1
  217. package/types/dynamic-resolver/src/converter/row-number.converter.d.ts +3 -0
  218. package/types/entity-binding-selector/composition/use-entity-tree.d.ts +7 -0
  219. package/types/entity-binding-selector/entity-binding-selector.component.d.ts +11 -0
  220. package/types/entity-binding-selector/entity-binding-selector.props.d.ts +3 -0
  221. package/types/enum-editor/src/components/enum-editor-container.component.d.ts +3 -3
  222. package/types/enum-editor/src/enum-editor.component.d.ts +3 -3
  223. package/types/event-parameter/index.d.ts +31 -0
  224. package/types/event-parameter/src/composition/type.d.ts +77 -0
  225. package/types/event-parameter/src/composition/use-editor-combotree.d.ts +3 -0
  226. package/types/event-parameter/src/composition/use-editor-input.d.ts +3 -0
  227. package/types/event-parameter/src/composition/use-editor-select.d.ts +3 -0
  228. package/types/event-parameter/src/composition/use-editor-switch.d.ts +3 -0
  229. package/types/event-parameter/src/composition/use-editor.d.ts +3 -0
  230. package/types/event-parameter/src/event-parameter.component.d.ts +8 -0
  231. package/types/event-parameter/src/event-parameter.props.d.ts +34 -0
  232. package/types/external-container/src/designer/import-external-schema.component.d.ts +1 -1
  233. package/types/external-container/src/designer/use-designer-rules.d.ts +3 -3
  234. package/types/field-selector/src/field-selector.component.d.ts +1 -2
  235. package/types/field-selector/src/field-selector.props.d.ts +0 -9
  236. package/types/input-group/src/designer/use-input-group-rules.d.ts +1 -2
  237. package/types/layout/src/designer/layout-pane-use-designer-rules.d.ts +3 -3
  238. package/types/list-nav/src/designer/use-designer-rules.d.ts +3 -0
  239. package/types/list-view/src/designer/list-view-table.design.component.d.ts +15 -0
  240. package/types/list-view/src/list-view-table.component.d.ts +15 -0
  241. package/types/lookup/src/composition/use-user-data.d.ts +2 -2
  242. package/types/lookup/src/property-config/lookup.property-config.d.ts +2 -6
  243. package/types/modal/src/composition/modal.service.d.ts +2 -1
  244. package/types/page-header/src/designer/page-header.design.component.d.ts +1 -1
  245. package/types/page-header/src/page-header.component.d.ts +1 -1
  246. package/types/pagination/src/components/buttons/goto-buttons.component.d.ts +2 -2
  247. package/types/pagination/src/components/buttons/next-buttons.component.d.ts +2 -2
  248. package/types/pagination/src/components/buttons/previous-buttons.component.d.ts +2 -2
  249. package/types/pagination/src/components/pages/page-list.component.d.ts +2 -2
  250. package/types/pagination/src/components/pages/page-number.component.d.ts +2 -2
  251. package/types/property-panel/index.d.ts +3 -1
  252. package/types/property-panel/src/composition/entity/input-base-property.d.ts +1 -1
  253. package/types/property-panel/src/composition/entity/property-entity.d.ts +1 -1
  254. package/types/property-panel/src/composition/type.d.ts +0 -13
  255. package/types/query-solution/src/composition/types.d.ts +35 -4
  256. package/types/query-solution/src/composition/use-header.d.ts +21 -0
  257. package/types/query-solution/src/composition/{use-filter.d.ts → use-http.d.ts} +2 -2
  258. package/types/query-solution/src/composition/use-solution.d.ts +20 -0
  259. package/types/query-solution/src/designer/query-solution-config/composition/types.d.ts +43 -35
  260. package/types/query-solution/src/designer/query-solution-config/composition/use-panel.d.ts +2 -16
  261. package/types/query-solution/src/designer/query-solution-config/composition/use-property.d.ts +19 -0
  262. package/types/query-solution/src/designer/query-solution-config/composition/use-querysolution-rules.d.ts +3 -0
  263. package/types/query-solution/src/designer/query-solution-config/composition/use-transfer.d.ts +1 -1
  264. package/types/query-solution/src/designer/query-solution-config/query-solution-config.props.d.ts +14 -14
  265. package/types/query-solution/src/property-config/query-solution.property-config.d.ts +12 -0
  266. package/types/query-solution/src/query-solution.d.ts +10 -2
  267. package/types/query-solution/src/solutions.d.ts +108 -509
  268. package/types/radio-group/src/designer/item-collection-editor-inner.component.d.ts +29 -0
  269. package/types/radio-group/src/designer/item-collection-editor.component.d.ts +29 -0
  270. package/types/radio-group/src/designer/item-collection-editor.props.d.ts +21 -0
  271. package/types/radio-group/src/schema/schema-mapper.d.ts +1 -0
  272. package/types/radio-group/src/schema/schema-resolver.d.ts +1 -0
  273. package/types/response-layout-editor/index.d.ts +3 -1
  274. package/types/response-toolbar/src/designer/use-designer-rules.d.ts +3 -3
  275. package/types/response-toolbar/src/property-config/response-toolbar-item.property-config.d.ts +1 -0
  276. package/types/response-toolbar/src/property-config/response-toolbar.property-config.d.ts +1 -0
  277. package/types/section/src/designer/use-designer-rules.d.ts +3 -3
  278. package/types/section/src/property-config/section.property-config.d.ts +17 -17
  279. package/types/section/src/schema/schema-resolver.d.ts +1 -2
  280. package/types/section/src/schema/toolbar-resolver.d.ts +1 -1
  281. package/types/splitter/src/components/splitter-pane.component.d.ts +1 -1
  282. package/types/splitter/src/designer/splitter-pane-use-designer-rules.d.ts +3 -3
  283. package/types/splitter/src/designer/splitter-use-designer-rules.d.ts +3 -3
  284. package/types/tabs/src/composition/types.d.ts +4 -1
  285. package/types/tabs/src/designer/tab-page-use-designer-rules.d.ts +3 -3
  286. package/types/tabs/src/designer/tab-use-designer-rules.d.ts +3 -3
  287. package/types/tabs/src/property-config/tab-page.property-config.d.ts +9 -59
  288. package/types/tabs/src/property-config/tabs.property-config.d.ts +8 -71
  289. package/types/tabs/src/schema/schema-resolver.d.ts +1 -2
  290. package/types/text/src/composition/types.d.ts +4 -4
  291. package/types/textarea/src/property-config/textarea.property-config.d.ts +23 -0
  292. package/types/tree-grid/index.d.ts +3 -3
  293. package/types/tree-grid/src/tree-grid.component.d.ts +1 -1
  294. package/types/weather/src/composition/use-weather-charts.d.ts +15 -0
  295. package/types/weather/src/composition/use-weather-color.d.ts +15 -0
  296. package/types/weather/src/composition/use-weather-data.d.ts +15 -0
  297. package/types/weather/src/composition/use-weather-format-number.d.ts +15 -0
  298. package/types/designer-canvas/src/composition/rule/use-drag-drop-rules.d.ts +0 -19
  299. package/types/designer-canvas/src/composition/use-dragula-common-rule.d.ts +0 -4
  300. package/types/dynamic-form/src/designer/use-designer-rules.d.ts +0 -3
  301. package/types/list-nav/src/composition/use-designer-rules.d.ts +0 -3
  302. package/types/property-panel/src/composition/entity/use-input-rules.d.ts +0 -3
  303. package/types/query-solution/src/designer/query-solution-config/composition/mock-data.d.ts +0 -6
  304. package/types/tree-grid/src/schema/column-resolver.d.ts +0 -3
  305. package/types/weather/src/composition/types.d.ts +0 -2
@@ -1 +1 @@
1
- (function(v,p){typeof exports=="object"&&typeof module<"u"?p(exports,require("vue"),require("lodash-es"),require("../dynamic-resolver/index.umd.js"),require("../response-layout-editor/index.umd.js/src/composition/converter/use-response-layout-editor-setting")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../dynamic-resolver/index.umd.js","../response-layout-editor/index.umd.js/src/composition/converter/use-response-layout-editor-setting"],p):(v=typeof globalThis<"u"?globalThis:v||self,p(v.switch={},v.Vue,v.LodashES,v.dynamicResolver,v.useResponseLayoutEditorSetting))})(this,function(v,p,M,j,W){"use strict";var de=Object.defineProperty;var me=(v,p,M)=>p in v?de(v,p,{enumerable:!0,configurable:!0,writable:!0,value:M}):v[p]=M;var C=(v,p,M)=>me(v,typeof p!="symbol"?p+"":p,M);const q={},O={};function L(a){const{properties:t,title:e,ignore:o}=a,n=o&&Array.isArray(o),i=Object.keys(t).reduce((c,m)=>((!n||!o.find(d=>d==m))&&(c[m]=t[m].type==="object"&&t[m].properties?L(t[m]):M.cloneDeep(t[m].default)),c),{});return(!n||!o.find(c=>c=="id"))&&(i.id=`${e}-${Date.now()}`),i}function N(a,t={},e){const o=q[a];if(o){let n=L(o);const i=O[a];return n=i?i({getSchemaByType:N},n,t,e):n,n}return null}function z(a,t){const e=L(t);return Object.keys(a).reduce((o,n)=>(o[n]&&M.isPlainObject(o[n])&&M.isPlainObject(a[n])?Object.assign(o[n],a[n]):o[n]=a[n],o),e),e}function x(a,t){return Object.keys(a).filter(o=>a[o]!=null).reduce((o,n)=>{if(t.has(n)){const i=t.get(n);if(typeof i=="string")o[i]=a[n];else{const c=i(n,a[n],a);Object.assign(o,c)}}else o[n]=a[n];return o},{})}function _(a,t,e=new Map){const o=z(a,t);return x(o,e)}function J(a={}){function t(r,s,l,f){if(typeof l=="number")return f[r].length===l;if(typeof l=="object"){const g=Object.keys(l)[0],y=l[g];if(g==="not")return Number(f[r].length)!==Number(y);if(g==="moreThan")return Number(f[r].length)>=Number(y);if(g==="lessThan")return Number(f[r].length)<=Number(y)}return!1}function e(r,s,l,f){return f[r]&&f[r].propertyValue&&String(f[r].propertyValue.value)===String(l)}const o=new Map([["length",t],["getProperty",e]]);Object.keys(a).reduce((r,s)=>(r.set(s,a[s]),r),o);function n(r,s){const l=r;return typeof s=="number"?[{target:l,operator:"length",param:null,value:Number(s)}]:typeof s=="boolean"?[{target:l,operator:"getProperty",param:r,value:!!s}]:typeof s=="object"?Object.keys(s).map(f=>{if(f==="length")return{target:l,operator:"length",param:null,value:s[f]};const g=f,y=s[f];return{target:l,operator:"getProperty",param:g,value:y}}):[]}function i(r){return Object.keys(r).reduce((l,f)=>{const g=n(f,r[f]);return l.push(...g),l},[])}function c(r,s){if(o.has(r.operator)){const l=o.get(r.operator);return l&&l(r.target,r.param,r.value,s)||!1}return!1}function m(r,s){return i(r).reduce((g,y)=>g&&c(y,s),!0)}function d(r,s){const l=Object.keys(r),f=l.includes("allOf"),g=l.includes("anyOf"),y=f||g,T=(y?r[y?f?"allOf":"anyOf":"allOf"]:[r]).map($=>m($,s));return f?!T.includes(!1):T.includes(!0)}return{parseValueSchema:d}}const u={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"},fieldset:{type:"fieldset",name:"分组",icon:"fieldset"}},X={},Q={};J();function Y(a,t,e=new Map,o=(c,m,d)=>m,n={},i=c=>c){return q[t.title]=t,O[t.title]=o,X[t.title]=n,Q[t.title]=i,(c={})=>{const m=_(c,t,e),d=Object.keys(a).reduce((r,s)=>(r[s]=a[s].default,r),{});return Object.assign(d,m)}}function Z(a,t){return{customClass:t.class,customStyle:t.style}}const H=new Map([["appearance",Z]]),R={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/switch.schema.json",title:"switch",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for a switch",type:"string"},type:{description:"The type string of switch component",type:"string",default:"switch"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"boolean",default:!1},onBackground:{description:"",type:"string",default:""},offBackground:{description:"",type:"string",default:""},onColor:{description:"",type:"string",default:""},offColor:{description:"",type:"string",default:""},onLabel:{description:"",type:"string",default:""},offLabel:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},size:{description:"",type:"enum",default:"middle"}},required:["id","type"],ignore:["id","appearance","binding"]};function K(a,t,e){return t}const F={modelValue:{type:Boolean,default:!1},disabled:{type:Boolean},onBackground:{type:String},offBackground:{type:String},onColor:{type:String},offColor:{type:String},onLabel:{type:String},offLabel:{type:String},size:{type:String,default:"medium"},onModelValueChanged:{type:Function,default:()=>{}}},U=Y(F,R,H,K),E=p.defineComponent({name:"FSwitch",props:F,emits:["update:modelValue","modelValueChanged"],setup(a,t){const{disabled:e,size:o,onLabel:n,offLabel:i,onBackground:c,offBackground:m,onColor:d,offColor:r}=p.toRefs(a),s=p.ref(a.modelValue),l=p.computed(()=>({switch:!0,"f-cmp-switch":!0,checked:s.value,disabled:e.value,"switch-large":o.value==="large","switch-medium":o.value==="medium","switch-small":o.value==="small"})),f=p.computed(()=>s.value?{outline:"none",background:c.value}:{outline:"none",backgroundColor:m.value}),g=p.computed(()=>s.value?{background:d.value}:{backgroundColor:r.value}),y=p.computed(()=>(n==null?void 0:n.value)||(i==null?void 0:i.value));function V(){e.value||(s.value=!s.value,t.emit("update:modelValue",s.value))}return p.watch(s,(S,T)=>{S!==T&&t.emit("modelValueChanged",S)}),p.watch(()=>a.modelValue,(S,T)=>{S!==T&&(s.value=S)}),()=>p.createVNode("span",{tabindex:"0",role:"button",class:l.value,style:f.value,onClick:V},[y.value&&p.createVNode("span",{class:"switch-pane"},[p.createVNode("span",{class:"switch-label-checked"},[n==null?void 0:n.value]),p.createVNode("span",{class:"switch-label-unchecked"},[i==null?void 0:i.value])]),p.createVNode("small",{style:g.value},[t.slots.default&&t.slots.default()])])}});function ee(a,t,e){var G;function o(){e!=null&&e.resolveComponentContext&&e.resolveComponentContext()}o();const n=e&&e.getStyles&&e.getStyles()||"",i=e&&e.getDesignerClass&&e.getDesignerClass()||"",c=p.ref();function m(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanMoveComponent?e.checkCanMoveComponent():!0}function d(){return!1}function r(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanDeleteComponent?e.checkCanDeleteComponent():!0}function s(){return(t==null?void 0:t.schema.componentType)==="frame"?!0:e&&e.hideNestedPaddingInDesginerView?e.hideNestedPaddingInDesginerView():!1}function l(h){if(!h||!h.value)return null;if(h.value.schema&&h.value.schema.type==="component")return h.value;const b=p.ref(h==null?void 0:h.value.parent),w=l(b);return w||null}function f(h=t){const{componentInstance:b,designerItemElementRef:w}=h;return!b||!b.value?null:b.value.canMove?w:f(h.parent)}function g(h){return!!e&&e.canAccepts(h)}function y(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function V(){}function S(h,b){b&&e!=null&&e.onAcceptMovedChildElement&&e.onAcceptMovedChildElement(b)}function T(h,b){const{componentType:w}=h;let k=N(w,h,b);e&&e.onResolveNewComponentSchema&&(k=e.onResolveNewComponentSchema(h,k));const A=w.toLowerCase().replace("-","_");return k&&!k.id&&k.type===w&&(k.id=`${A}_${Math.random().toString().slice(2,6)}`),k}function I(h,b){const w=String(h.getAttribute("data-controltype")),k=h.getAttribute("data-feature"),A=k?JSON.parse(k):{};A.parentComponentInstance=c.value;let P=N(w,A);e&&e.onAcceptNewChildElement&&(P=e.onAcceptNewChildElement(h,b,P));const ue=w.toLowerCase().replace("-","_");return P&&!P.id&&P.type===w&&(P.id=`${ue}_${Math.random().toString().slice(2,6)}`),P}function $(h){}function pe(...h){if(e&&e.getPropsConfig)return e.getPropsConfig(...h)}return c.value={canMove:m(),canSelectParent:d(),canDelete:r(),canNested:!s(),contents:t==null?void 0:t.schema.contents,elementRef:a,parent:(G=t==null?void 0:t.parent)==null?void 0:G.componentInstance,schema:t==null?void 0:t.schema,styles:n,designerClass:i,canAccepts:g,getBelongedComponentInstance:l,getDraggableDesignItemElement:f,getDraggingDisplayText:y,getPropConfig:pe,getDragScopeElement:V,onAcceptMovedChildElement:S,onAcceptNewChildElement:I,onChildElementMovedOut:$,addNewChildComponentSchema:T,updateDragAndDropRules:o,triggerBelongedComponentToMoveWhenMoved:!!e&&e.triggerBelongedComponentToMoveWhenMoved||p.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!e&&e.triggerBelongedComponentToDeleteWhenDeleted||p.ref(!1)},c}class te{constructor(t,e){C(this,"componentId");C(this,"viewModelId");C(this,"eventsEditorUtils");C(this,"formSchemaUtils");C(this,"formMetadataConverter");C(this,"designViewModelUtils");C(this,"designViewModelField");C(this,"controlCreatorUtils");C(this,"designerHostService");C(this,"schemaService",null);C(this,"metadataService",null);C(this,"propertyConfig",{type:"object",categories:{}});var o;this.componentId=t,this.designerHostService=e,this.eventsEditorUtils=e.eventsEditorUtils,this.formSchemaUtils=e.formSchemaUtils,this.formMetadataConverter=e.formMetadataConverter,this.viewModelId=((o=this.formSchemaUtils)==null?void 0:o.getViewModelIdByComponentId(t))||"",this.designViewModelUtils=e.designViewModelUtils,this.controlCreatorUtils=e.controlCreatorUtils,this.metadataService=e.metadataService,this.schemaService=e.schemaService}getTableInfo(){var t;return(t=this.schemaService)==null?void 0:t.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(t){const e=t.binding&&t.binding.type==="Form"&&t.binding.field;if(e){if(!this.designViewModelField){const o=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=o.fields.find(n=>n.id===e)}t.updateOn=this.designViewModelField.updateOn}}changeFieldEditorType(t,e){}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:u[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"}}}}updateElementByParentContainer(t,e){const o=e&&e.parent&&e.parent.schema;if(!o)return;const n=o.contents.findIndex(c=>c.id===t),i=M.cloneDeep(o.contents[n]);o.contents.splice(n,1),o.contents.splice(n,0,i)}}const B=class B{static getEditorTypesByMDataType(t){const e=B.fieldControlTypeMapping[t];return e||[{key:"",value:""}]}static getAllInputTypes(){const t=[];for(let e in B.fieldControlTypeMapping)B.fieldControlTypeMapping[e].forEach(o=>{t.find(n=>n.key===o.key&&n.value===o.value)||t.push({key:o.key,value:o.value})});return t}};C(B,"fieldControlTypeMapping",{String:[{key:u["input-group"].type,value:u["input-group"].name},{key:u.lookup.type,value:u.lookup.name},{key:u["date-picker"].type,value:u["date-picker"].name},{key:u["check-box"].type,value:u["check-box"].name},{key:u["radio-group"].type,value:u["radio-group"].name},{key:u["combo-list"].type,value:u["combo-list"].name},{key:u.textarea.type,value:u.textarea.name}],Text:[{key:u.textarea.type,value:u.textarea.name},{key:u.lookup.type,value:u.lookup.name}],Decimal:[{key:u["number-spinner"].type,value:u["number-spinner"].name}],Integer:[{key:u["number-spinner"].type,value:u["number-spinner"].name}],Number:[{key:u["number-spinner"].type,value:u["number-spinner"].name}],BigNumber:[{key:u["number-spinner"].type,value:u["number-spinner"].name}],Date:[{key:u["date-picker"].type,value:u["date-picker"].name}],DateTime:[{key:u["date-picker"].type,value:u["date-picker"].name}],Boolean:[{key:u.switch.type,value:u.switch.name},{key:u["check-box"].type,value:u["check-box"].name}],Enum:[{key:u["combo-list"].type,value:u["combo-list"].name},{key:u["radio-group"].type,value:u["radio-group"].name}],Object:[{key:u.lookup.type,value:u.lookup.name},{key:u["combo-list"].type,value:u["combo-list"].name},{key:u["radio-group"].type,value:u["radio-group"].name}]});let D=B;const ne=p.ref(0);class oe extends te{constructor(e,o){super(e,o);C(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=W.useResponseLayoutEditorSetting(this.formSchemaUtils)}getPropertyConfig(e,o){return this.propertyConfig.categories.basic=this.getBasicProperties(e,o),this.propertyConfig.categories.appearance=this.getAppearanceProperties(e,o),this.propertyConfig.categories.editor=this.getEditorProperties(e),this.propertyConfig}getBasicProperties(e,o){var m;var n=this;this.setDesignViewModelField(e);const i=this.formSchemaUtils.getFormMetadataBasicInfo(),c=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:n.designViewModelField?D.getEditorTypesByMDataType((m=n.designViewModelField.type)==null?void 0:m.name):D.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:e,formBasicInfo:i},columns:[{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],textField:"bindingField",data:c}}},setPropertyRelates(d,r){if(d)switch(d&&d.propertyID){case"type":{n.changeControlType(e,d,o);break}case"label":{d.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(e,o){var n=this;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:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",initialState:n.responseLayoutEditorFunction.checkCanOpenLayoutEditor(e,n.componentId)}}},setPropertyRelates(i,c){if(i)switch(i&&i.propertyID){case"responseLayout":n.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(i.propertyValue,n.componentId||e.id),n.updateUnifiedLayoutAfterResponseLayoutChanged(n.componentId),n.updateElementByParentContainer(e.id,o),delete e.responseLayout;break;case"class":n.updateUnifiedLayoutAfterControlChanged(i.propertyValue,e.id,this.componentId),n.updateElementByParentContainer(e.id,o);break}}}}getEditorProperties(e){return this.getComponentConfig(e)}changeControlType(e,o,n){var s,l,f,g;const i=o.propertyValue,c=n&&n.parent&&n.parent.schema;if(!c)return;const m=c.contents.findIndex(y=>y.id===e.id),d=c.contents[m];let r;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:i},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),r=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,i)),r||(r=j.getSchemaByType("form-group")||{},r.editor=j.getSchemaByType(i)||{},delete r.editor.id,delete r.editor.binding,delete r.editor.appearance),Object.assign(r,{id:d.id,appearance:d.appearance,size:d.size,label:d.label,binding:d.binding,visible:d.visible}),Object.assign(r.editor,{isTextArea:r.isTextArea&&d.isTextArea,placeholder:(s=d.editor)==null?void 0:s.placeholder,holdPlace:(l=d.editor)==null?void 0:l.holdPlace,readonly:(f=d.editor)==null?void 0:f.readonly,require:(g=d.editor)==null?void 0:g.require}),c.contents.splice(m,1),c.contents.splice(m,0,r),n.schema=Object.assign(d,r),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(y=>y.classList.remove("dgComponentSelected")),ne.value++}getComponentConfig(e,o={},n={}){const i=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},o),c=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},n);return{...i,properties:{...c}}}updateUnifiedLayoutAfterControlChanged(e,o,n){const i=e.split(" ");let c=i.find(l=>/^col-([1-9]|10|11|12)$/.test(l)),m=i.find(l=>/^col-md-([1-9]|10|11|12)$/.test(l)),d=i.find(l=>/^col-xl-([1-9]|10|11|12)$/.test(l)),r=i.find(l=>/^col-el-([1-9]|10|11|12)$/.test(l));c=c||"col-12",m=m||"col-md-"+c.replace("col-",""),d=d||"col-xl-"+m.replace("col-md-",""),r=r||"col-el-"+d.replace("col-xl-","");const s={id:o,columnInSM:parseInt(c.replace("col-",""),10),columnInMD:parseInt(m.replace("col-md-",""),10),columnInLG:parseInt(d.replace("col-xl-",""),10),columnInEL:parseInt(r.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(n,s)}updateUnifiedLayoutAfterResponseLayoutChanged(e,o){const{formNode:n}=this.responseLayoutEditorFunction.checkCanFindFormNode(e);if(!n||!n.unifiedLayout)return;const i=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(n,i,1),o){const y=i.find(V=>V.id===o.id);Object.assign(y||{},o)}const c=i.map(y=>y.columnInSM),m=i.map(y=>y.columnInMD),d=i.map(y=>y.columnInLG),r=i.map(y=>y.columnInEL),s=this.checkIsUniqueColumn(c)?c[0]:null,l=this.checkIsUniqueColumn(m)?m[0]:null,f=this.checkIsUniqueColumn(d)?d[0]:null,g=this.checkIsUniqueColumn(r)?r[0]:null;Object.assign(n.unifiedLayout,{uniqueColClassInSM:s,uniqueColClassInMD:l,uniqueColClassInLG:f,uniqueColClassInEL:g})}checkIsUniqueColumn(e){const o=new Set(e);return Array.from(o).length===1}}class re extends oe{constructor(t,e){super(t,e)}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:"大号"}]}}})}}function ie(a,t){a.schema;const e=p.ref(!0),o=p.ref(!0);function n(l){return!1}function i(){return!1}function c(){return!1}function m(){return!0}function d(l){}function r(){}function s(l){return null}return{canAccepts:n,checkCanDeleteComponent:i,checkCanMoveComponent:c,hideNestedPaddingInDesginerView:m,onAcceptMovedChildElement:d,resolveComponentContext:r,triggerBelongedComponentToMoveWhenMoved:e,triggerBelongedComponentToDeleteWhenDeleted:o,getPropsConfig:s}}function ae(a,t){const{canAccepts:e,checkCanDeleteComponent:o,checkCanMoveComponent:n,hideNestedPaddingInDesginerView:i,onAcceptMovedChildElement:c,resolveComponentContext:m,triggerBelongedComponentToMoveWhenMoved:d,triggerBelongedComponentToDeleteWhenDeleted:r}=ie(a),s=a.schema;function l(f,g){return new re(f,t).getPropertyConfig(s,g)}return{canAccepts:e,checkCanDeleteComponent:o,checkCanMoveComponent:n,hideNestedPaddingInDesginerView:i,onAcceptMovedChildElement:c,resolveComponentContext:m,triggerBelongedComponentToMoveWhenMoved:d,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:l}}const se=p.defineComponent({name:"FSwitchDesign",props:F,emits:["update:modelValue"],setup(a,t){const{size:e,onLabel:o,offLabel:n}=p.toRefs(a),i=p.ref(),c=p.inject("designer-host-service"),m=p.inject("design-item-context"),d=ae(m,c),r=ee(i,m,d);p.onMounted(()=>{i.value.componentInstance=r}),t.expose(r.value);const s=p.computed(()=>({switch:!0,"f-cmp-switch":!0,checked:!1,"switch-large":e.value==="large","switch-medium":e.value==="medium","switch-small":e.value==="small"})),l=p.computed(()=>(o==null?void 0:o.value)||(n==null?void 0:n.value));return()=>p.createVNode("span",{ref:i,tabindex:"0",role:"button",class:s.value},[l.value&&p.createVNode("span",{class:"switch-pane"},[p.createVNode("span",{class:"switch-label-unchecked"},[n==null?void 0:n.value])]),p.createVNode("small",null,[t.slots.default&&t.slots.default()])])}}),le=a=>{const t=a;return t.install=function(e){e.component(t.name,a)},a};E.register=(a,t,e,o)=>{a.switch=E,t.switch=U},E.registerDesigner=(a,t,e)=>{a.switch=se,t.switch=U};const ce=le(E);v.FSwitch=E,v.default=ce,v.propsResolver=U,v.switchProps=F,Object.defineProperties(v,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(M,m){typeof exports=="object"&&typeof module<"u"?m(exports,require("vue"),require("lodash-es"),require("../designer-canvas/index.umd.js"),require("../common/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../designer-canvas/index.umd.js","../common/index.umd.js"],m):(M=typeof globalThis<"u"?globalThis:M||self,m(M.switch={},M.Vue,M.LodashES,M.designerCanvas,M.common))})(this,function(M,m,E,$,O){"use strict";var pe=Object.defineProperty;var de=(M,m,E)=>m in M?pe(M,m,{enumerable:!0,configurable:!0,writable:!0,value:E}):M[m]=E;var v=(M,m,E)=>de(M,typeof m!="symbol"?m+"":m,E);const j={},q={};function N(c){const{properties:t,title:e,ignore:i}=c,n=i&&Array.isArray(i),r=Object.keys(t).reduce((s,y)=>((!n||!i.find(h=>h===y))&&(s[y]=t[y].type==="object"&&t[y].properties?N(t[y]):E.cloneDeep(t[y].default)),s),{});if(e&&(!n||!i.find(s=>s==="id"))){const s=e.toLowerCase().replace(/-/g,"_");r.id=`${s}_${Math.random().toString().slice(2,6)}`}return r}function G(c,t={},e){const i=j[c];if(i){let n=N(i);const r=q[c];return n=r?r({getSchemaByType:G},n,t,e):n,n}return null}function W(c,t){const e=N(t);return Object.keys(e).reduce((i,n)=>(i[n]&&E.isPlainObject(i[n])&&E.isPlainObject(c[n]||!c[n])?Object.assign(i[n],c[n]||{}):i[n]=c[n],i),e),e}function z(c,t){return Object.keys(c).filter(i=>c[i]!=null).reduce((i,n)=>{if(t.has(n)){const r=t.get(n);if(typeof r=="string")i[r]=c[n];else{const s=r(n,c[n],c);Object.assign(i,s)}}else i[n]=c[n];return i},{})}function X(c,t,e=new Map){const i=W(c,t);return z(i,e)}function _(c={}){function t(a,l,o,d){if(typeof o=="number")return d[a].length===o;if(typeof o=="object"){const f=Object.keys(o)[0],u=o[f];if(f==="not")return Number(d[a].length)!==Number(u);if(f==="moreThan")return Number(d[a].length)>=Number(u);if(f==="lessThan")return Number(d[a].length)<=Number(u)}return!1}function e(a,l,o,d){return d[a]&&d[a].propertyValue&&String(d[a].propertyValue.value)===String(o)}const i=new Map([["length",t],["getProperty",e]]);Object.keys(c).reduce((a,l)=>(a.set(l,c[l]),a),i);function n(a,l){const o=a;return typeof l=="number"?[{target:o,operator:"length",param:null,value:Number(l)}]:typeof l=="boolean"?[{target:o,operator:"getProperty",param:a,value:!!l}]:typeof l=="object"?Object.keys(l).map(d=>{if(d==="length")return{target:o,operator:"length",param:null,value:l[d]};const f=d,u=l[d];return{target:o,operator:"getProperty",param:f,value:u}}):[]}function r(a){return Object.keys(a).reduce((o,d)=>{const f=n(d,a[d]);return o.push(...f),o},[])}function s(a,l){if(i.has(a.operator)){const o=i.get(a.operator);return o&&o(a.target,a.param,a.value,l)||!1}return!1}function y(a,l){return r(a).reduce((f,u)=>f&&s(u,l),!0)}function h(a,l){const o=Object.keys(a),d=o.includes("allOf"),f=o.includes("anyOf"),u=d||f,C=(u?a[u?d?"allOf":"anyOf":"allOf"]:[a]).map(P=>y(P,l));return d?!C.includes(!1):C.includes(!0)}return{parseValueSchema:h}}const p={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"},fieldset:{type:"fieldset",name:"分组",icon:"fieldset"},"query-solution":{type:"query-solution",name:"筛选方案",icon:"QueryScheme"}},Q={},H={};_();function J(c,t,e=new Map,i=(s,y,h,a)=>y,n={},r=s=>s){return j[t.title]=t,q[t.title]=i,Q[t.title]=n,H[t.title]=r,(s={})=>{const y=X(s,t,e),h=Object.keys(c).reduce((a,l)=>(a[l]=c[l].default,a),{});return Object.assign(h,y)}}function Y(c,t){return{customClass:t.class,customStyle:t.style}}const Z=new Map([["appearance",Y]]),K={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/switch.schema.json",title:"switch",description:"A Farris Component",type:"object",properties:{id:{description:"The unique identifier for a switch",type:"string"},type:{description:"The type string of switch component",type:"string",default:"switch"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{type:"boolean",default:!1},onBackground:{description:"",type:"string",default:""},offBackground:{description:"",type:"string",default:""},onColor:{description:"",type:"string",default:""},offColor:{description:"",type:"string",default:""},onLabel:{description:"",type:"string",default:""},offLabel:{description:"",type:"string",default:""},readonly:{description:"",type:"boolean",default:!1},size:{description:"",type:"enum",default:"medium"}},required:["id","type"],ignore:["id","appearance","binding"]};function R(c,t,e){return t}const D={modelValue:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},onBackground:{type:String},offBackground:{type:String},onColor:{type:String},offColor:{type:String},onLabel:{type:String},offLabel:{type:String},size:{type:String,default:"medium"},onModelValueChanged:{type:Function,default:()=>{}}},A=J(D,K,Z,R),I=m.defineComponent({name:"FSwitch",props:D,emits:["update:modelValue","modelValueChanged"],setup(c,t){const{disabled:e,size:i,onLabel:n,offLabel:r,onBackground:s,offBackground:y,onColor:h,offColor:a,readonly:l}=m.toRefs(c),o=m.ref(c.modelValue),d=m.computed(()=>({switch:!0,"f-cmp-switch":!0,checked:o.value,disabled:l.value||e.value,"switch-large":i.value==="large","switch-medium":i.value==="medium","switch-small":i.value==="small"})),f=m.computed(()=>o.value?{outline:"none",background:s.value}:{outline:"none",backgroundColor:y.value}),u=m.computed(()=>o.value?{background:h.value}:{backgroundColor:a.value}),g=m.computed(()=>(n==null?void 0:n.value)||(r==null?void 0:r.value));function k(){l.value||e.value||(o.value=!o.value,t.emit("update:modelValue",o.value))}return m.watch(o,(C,w)=>{C!==w&&t.emit("modelValueChanged",C)}),m.watch(()=>c.modelValue,(C,w)=>{C!==w&&(o.value=C)}),()=>m.createVNode("span",{tabindex:"0",role:"button",class:d.value,style:f.value,onClick:k},[g.value&&m.createVNode("span",{class:"switch-pane"},[m.createVNode("span",{class:"switch-label-checked"},[n==null?void 0:n.value]),m.createVNode("span",{class:"switch-label-unchecked"},[r==null?void 0:r.value])]),m.createVNode("small",{style:u.value},[t.slots.default&&t.slots.default()])])}});function x(c,t,e){var V;const i=e&&e.getStyles&&e.getStyles()||"",n=e&&e.getDesignerClass&&e.getDesignerClass()||"",r=m.ref();function s(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanMoveComponent?e.checkCanMoveComponent():!0}function y(){return!1}function h(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanDeleteComponent?e.checkCanDeleteComponent():!0}function a(){return(t==null?void 0:t.schema.componentType)==="frame"?!0:e&&e.hideNestedPaddingInDesginerView?e.hideNestedPaddingInDesginerView():!1}function l(b){if(!b||!b.value)return null;if(b.value.schema&&b.value.schema.type==="component")return b.value;const S=m.ref(b==null?void 0:b.value.parent),F=l(S);return F||null}function o(b=t){const{componentInstance:S,designerItemElementRef:F}=b;return!S||!S.value?null:S.value.canMove?F:o(b.parent)}function d(b){return!!e&&e.canAccepts(b)}function f(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function u(){}function g(b,S){S&&e!=null&&e.onAcceptMovedChildElement&&e.onAcceptMovedChildElement(S)}function k(b,S){const{componentType:F}=b;let T=G(F,b,S);e&&e.onResolveNewComponentSchema&&(T=e.onResolveNewComponentSchema(b,T));const U=F.toLowerCase().replace(/-/g,"_");return T&&!T.id&&T.type===F&&(T.id=`${U}_${Math.random().toString().slice(2,6)}`),T}function C(b){}function w(...b){if(e&&e.getPropsConfig)return e.getPropsConfig(...b)}function P(){e&&e.onRemoveComponent&&e.onRemoveComponent(),t!=null&&t.schema.contents&&t.schema.contents.map(b=>{var T;let S=b.id;b.type==="component-ref"&&(S=b.component);const F=c.value.querySelector(`#${S}-design-item`);(T=F==null?void 0:F.componentInstance)!=null&&T.value.onRemoveComponent&&F.componentInstance.value.onRemoveComponent()})}return r.value={canMove:s(),canSelectParent:y(),canDelete:h(),canNested:!a(),contents:t==null?void 0:t.schema.contents,elementRef:c,parent:(V=t==null?void 0:t.parent)==null?void 0:V.componentInstance,schema:t==null?void 0:t.schema,styles:i,designerClass:n,canAccepts:d,getBelongedComponentInstance:l,getDraggableDesignItemElement:o,getDraggingDisplayText:f,getPropConfig:w,getDragScopeElement:u,onAcceptMovedChildElement:g,onChildElementMovedOut:C,addNewChildComponentSchema:k,triggerBelongedComponentToMoveWhenMoved:!!e&&e.triggerBelongedComponentToMoveWhenMoved||m.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!e&&e.triggerBelongedComponentToDeleteWhenDeleted||m.ref(!1),onRemoveComponent:P},r}class ee{constructor(t,e){v(this,"componentId");v(this,"viewModelId");v(this,"eventsEditorUtils");v(this,"formSchemaUtils");v(this,"formMetadataConverter");v(this,"designViewModelUtils");v(this,"designViewModelField");v(this,"controlCreatorUtils");v(this,"designerHostService");v(this,"schemaService",null);v(this,"metadataService",null);v(this,"propertyConfig",{type:"object",categories:{}});var i;this.componentId=t,this.designerHostService=e,this.eventsEditorUtils=e.eventsEditorUtils,this.formSchemaUtils=e.formSchemaUtils,this.formMetadataConverter=e.formMetadataConverter,this.viewModelId=((i=this.formSchemaUtils)==null?void 0:i.getViewModelIdByComponentId(t))||"",this.designViewModelUtils=e.designViewModelUtils,this.controlCreatorUtils=e.controlCreatorUtils,this.metadataService=e.metadataService,this.schemaService=e.schemaService}getTableInfo(){var t;return(t=this.schemaService)==null?void 0:t.getTableInfoByViewModelId(this.viewModelId)}setDesignViewModelField(t){var i;const e=t.binding&&t.binding.type==="Form"&&t.binding.field;if(e){if(!this.designViewModelField){const n=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=n.fields.find(r=>r.id===e)}t.updateOn=(i=this.designViewModelField)==null?void 0:i.updateOn}}changeFieldEditorType(t,e){}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:p[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"}}}}updateElementByParentContainer(t,e){const i=e&&e.parent&&e.parent.schema;if(!i)return;const n=i.contents.findIndex(s=>s.id===t),r=E.cloneDeep(i.contents[n]);i.contents.splice(n,1),i.contents.splice(n,0,r)}}const B=class B{static getEditorTypesByMDataType(t){const e=B.fieldControlTypeMapping[t];return e||[{key:"",value:""}]}static getAllInputTypes(){const t=[];for(const e in B.fieldControlTypeMapping)B.fieldControlTypeMapping[e].forEach(i=>{t.find(n=>n.key===i.key&&n.value===i.value)||t.push({key:i.key,value:i.value})});return t}};v(B,"fieldControlTypeMapping",{String:[{key:p["input-group"].type,value:p["input-group"].name},{key:p.lookup.type,value:p.lookup.name},{key:p["date-picker"].type,value:p["date-picker"].name},{key:p["check-box"].type,value:p["check-box"].name},{key:p["check-group"].type,value:p["check-group"].name},{key:p["radio-group"].type,value:p["radio-group"].name},{key:p["combo-list"].type,value:p["combo-list"].name},{key:p.textarea.type,value:p.textarea.name}],Text:[{key:p.textarea.type,value:p.textarea.name},{key:p.lookup.type,value:p.lookup.name}],Decimal:[{key:p["number-spinner"].type,value:p["number-spinner"].name}],Integer:[{key:p["number-spinner"].type,value:p["number-spinner"].name}],Number:[{key:p["number-spinner"].type,value:p["number-spinner"].name}],BigNumber:[{key:p["number-spinner"].type,value:p["number-spinner"].name}],Date:[{key:p["date-picker"].type,value:p["date-picker"].name}],DateTime:[{key:p["date-picker"].type,value:p["date-picker"].name}],Boolean:[{key:p.switch.type,value:p.switch.name},{key:p["check-box"].type,value:p["check-box"].name}],Enum:[{key:p["combo-list"].type,value:p["combo-list"].name},{key:p["radio-group"].type,value:p["radio-group"].name}],Object:[{key:p.lookup.type,value:p.lookup.name},{key:p["combo-list"].type,value:p["combo-list"].name},{key:p["radio-group"].type,value:p["radio-group"].name}]});let L=B;const te=m.ref(0);class ne{constructor(){v(this,"label","");v(this,"id","");v(this,"columnInSM",12);v(this,"columnInMD",6);v(this,"columnInLG",3);v(this,"columnInEL",2);v(this,"displayWidthInSM",1);v(this,"displayWidthInMD",1);v(this,"displayWidthInLG",1);v(this,"displayWidthInEL",1);v(this,"displayColumnCountAtBreakPoint","md");v(this,"tagRow",0);v(this,"showTopBorder",0);v(this,"group",1);v(this,"isSupportedClass",!0);v(this,"fieldSetId","")}}function oe(c){let t,e;const i=new Map;let n=[];function r(l,o){const f=l.split(" ").filter(w=>w.startsWith("col-"));if(f.length===0){o.isSupportedClass=!1;return}let u=f.find(w=>/^col-([1-9]|10|11|12)$/.test(w)),g=f.find(w=>/^col-md-([1-9]|10|11|12)$/.test(w)),k=f.find(w=>/^col-xl-([1-9]|10|11|12)$/.test(w)),C=f.find(w=>/^col-el-([1-9]|10|11|12)$/.test(w));u=u||"col-12",o.columnInSM=parseInt(u.replace("col-",""),10),o.displayWidthInSM=o.columnInSM/12,o.displayWidthInSM!==1&&(o.isSupportedClass=!1),g=g||"col-md-"+o.columnInSM,o.columnInMD=parseInt(g.replace("col-md-",""),10),o.displayWidthInMD=o.columnInMD/6,[1,2].includes(o.displayWidthInMD)||(o.isSupportedClass=!1),k=k||"col-xl-"+o.columnInMD,o.columnInLG=parseInt(k.replace("col-xl-",""),10),o.displayWidthInLG=o.columnInLG/3,[1,2,3,4].includes(o.displayWidthInLG)||(o.isSupportedClass=!1),C=C||"col-el-"+o.columnInLG,o.columnInEL=parseInt(C.replace("col-el-",""),10),o.displayWidthInEL=o.columnInEL/2,[1,2,3,4,5,6].includes(o.displayWidthInEL)||(o.isSupportedClass=!1)}function s(l,o,d,f=!1){let u=!1;l.contents.forEach(g=>{if(g.type==="fieldset"){d+=1,s(g,o,d,!0),u=!0;return}u&&(d+=1,u=!1);const k=g.appearance&&g.appearance.class,C=new ne;k?r(k,C):C.isSupportedClass=!1,C.label=g.label||g.id,C.id=g.id,C.group=d,f&&(C.fieldSetId=l.id),e===g.id&&(t=d),i.set(g.id,g),o.push(C)})}function y(l){const o=c.getComponentById(l);if(!o||!o.componentType||!o.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const d=c.selectNode(o,f=>f.type===$.DgControl["response-form"].type);return!d||!d.contents||d.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:d}}function h(l,o){o=o||l.id;const{result:d,message:f,formNode:u}=y(o);if(!d)return{result:d,message:f};e=l.id,n=[],i.clear();const g=u.contents[0].type===$.DgControl.fieldset.type?0:1;s(u,n,g);const k=n.find(w=>!w.isSupportedClass);return{defaultState:{defaultGroupNumber:t||1,model:k?"customize":"standard"},importData:n}}function a(l,o){o=o;const{result:d,formNode:f}=y(o);if(!d)return"";const u=[];return l.forEach(g=>{var w;const k=i.get(g.id),C=k.appearance&&k.appearance.class;if(C){const V=C.split(" ").filter(ce=>!ce.startsWith("col-")),b="col-"+g.columnInSM,S="col-md-"+g.columnInMD,F="col-xl-"+g.columnInLG,T="col-el-"+g.columnInEL,U=[b,S,F,T].concat(V);k.appearance.class=U.join(" ")}if(g.fieldSetId){const P=f.contents.find(b=>b.id===g.fieldSetId),V=u.find(b=>b.id===g.fieldSetId);V?(w=V.contents)==null||w.push(k):(u.push(P),P.contents=[k])}else u.push(k)}),f.contents=u,f.id}return{checkCanFindFormNode:y,checkCanOpenLayoutEditor:h,changeFormControlsByResponseLayoutConfig:a,getResonseFormLayoutConfig:s}}class ie extends ee{constructor(e,i){super(e,i);v(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=oe(this.formSchemaUtils)}getPropertyConfig(e,i){return this.propertyConfig.categories.basic=this.getBasicProperties(e,i),this.propertyConfig.categories.appearance=this.getAppearanceProperties(e,i),this.propertyConfig.categories.editor=this.getEditorProperties(e),this.propertyConfig}getBasicProperties(e,i){var r;const n=this;return this.setDesignViewModelField(e),this.formSchemaUtils.getFormMetadataBasicInfo(),{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:n.designViewModelField?L.getEditorTypesByMDataType((r=n.designViewModelField.type)==null?void 0:r.name):L.getAllInputTypes()}},label:{title:"标签",type:"string",$converter:"/converter/form-group-label.converter"},binding:{description:"绑定的表单字段",title:"绑定",editor:{type:"binding-selector",bindingType:{enable:!1},editorParams:{componentSchema:e,needSyncToViewModel:!0,viewModelId:this.viewModelId,designerHostService:this.designerHostService,disableOccupiedFields:!0},textField:"bindingField"}}},setPropertyRelates(s,y){if(s)switch(s&&s.propertyID){case"type":{n.changeControlType(e,s,i);break}case"label":{s.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(e,i){const n=this;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:!0,refreshPanelAfterChanged:!0,editor:{type:"response-layout-editor-setting",initialState:n.responseLayoutEditorFunction.checkCanOpenLayoutEditor(e,n.componentId)}}},setPropertyRelates(r,s){if(r)switch(r&&r.propertyID){case"responseLayout":n.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(r.propertyValue,n.componentId||e.id),n.updateUnifiedLayoutAfterResponseLayoutChanged(n.componentId),n.updateElementByParentContainer(e.id,i),delete e.responseLayout;break;case"class":n.updateUnifiedLayoutAfterControlChanged(r.propertyValue,e.id,this.componentId),n.updateElementByParentContainer(e.id,i);break}}}}getEditorProperties(e){return this.getComponentConfig(e)}changeControlType(e,i,n){var l,o,d,f;const r=i.propertyValue,s=n&&n.parent&&n.parent.schema;if(!s)return;const y=s.contents.findIndex(u=>u.id===e.id),h=s.contents[y];let a;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),a=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,r)),a||(a=this.controlCreatorUtils.createFormGroupWithoutField(r)),Object.assign(a,{id:h.id,appearance:h.appearance,size:h.size,label:h.label,binding:h.binding,visible:h.visible}),Object.assign(a.editor,{isTextArea:a.isTextArea&&h.isTextArea,placeholder:(l=h.editor)==null?void 0:l.placeholder,holdPlace:(o=h.editor)==null?void 0:o.holdPlace,readonly:(d=h.editor)==null?void 0:d.readonly,require:(f=h.editor)==null?void 0:f.require}),s.contents.splice(y,1),s.contents.splice(y,0,a),n.schema=Object.assign(h,a),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(u=>u.classList.remove("dgComponentSelected")),te.value++}getComponentConfig(e,i={},n={}){const r=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},i),s=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},n);return{...r,properties:{...s}}}updateUnifiedLayoutAfterControlChanged(e,i,n){const r=e.split(" ");let s=r.find(o=>/^col-([1-9]|10|11|12)$/.test(o)),y=r.find(o=>/^col-md-([1-9]|10|11|12)$/.test(o)),h=r.find(o=>/^col-xl-([1-9]|10|11|12)$/.test(o)),a=r.find(o=>/^col-el-([1-9]|10|11|12)$/.test(o));s=s||"col-12",y=y||"col-md-"+s.replace("col-",""),h=h||"col-xl-"+y.replace("col-md-",""),a=a||"col-el-"+h.replace("col-xl-","");const l={id:i,columnInSM:parseInt(s.replace("col-",""),10),columnInMD:parseInt(y.replace("col-md-",""),10),columnInLG:parseInt(h.replace("col-xl-",""),10),columnInEL:parseInt(a.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(n,l)}updateUnifiedLayoutAfterResponseLayoutChanged(e,i){const{formNode:n}=this.responseLayoutEditorFunction.checkCanFindFormNode(e);if(!n||!n.unifiedLayout)return;const r=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(n,r,1),i){const u=r.find(g=>g.id===i.id);Object.assign(u||{},i)}const s=r.map(u=>u.columnInSM),y=r.map(u=>u.columnInMD),h=r.map(u=>u.columnInLG),a=r.map(u=>u.columnInEL),l=this.checkIsUniqueColumn(s)?s[0]:null,o=this.checkIsUniqueColumn(y)?y[0]:null,d=this.checkIsUniqueColumn(h)?h[0]:null,f=this.checkIsUniqueColumn(a)?a[0]:null;Object.assign(n.unifiedLayout,{uniqueColClassInSM:l,uniqueColClassInMD:o,uniqueColClassInLG:d,uniqueColClassInEL:f})}checkIsUniqueColumn(e){const i=new Set(e);return Array.from(i).length===1}}class re extends ie{constructor(t,e){super(t,e)}getEditorProperties(t){return this.getComponentConfig(t,{type:"switch"},{disabled:{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:[{id:"small",name:"小号"},{id:"middle",name:"中号"},{id:"large",name:"大号"}]}}})}}function ae(c,t){const e=c.schema;function i(n,r){return new re(n,t).getPropertyConfig(e,r)}return{getPropsConfig:i}}const se=m.defineComponent({name:"FSwitchDesign",props:D,emits:["update:modelValue"],setup(c,t){const{size:e,onLabel:i,offLabel:n}=m.toRefs(c),r=m.ref(),s=m.inject("designer-host-service"),y=m.inject("design-item-context"),h=ae(y,s),a=x(r,y,h);m.onMounted(()=>{r.value.componentInstance=a}),t.expose(a.value);const l=m.computed(()=>({switch:!0,"f-cmp-switch":!0,checked:!1,"switch-large":e.value==="large","switch-medium":e.value==="medium","switch-small":e.value==="small"})),o=m.computed(()=>(i==null?void 0:i.value)||(n==null?void 0:n.value));return()=>m.createVNode("span",{ref:r,tabindex:"0",role:"button",class:l.value},[o.value&&m.createVNode("span",{class:"switch-pane"},[m.createVNode("span",{class:"switch-label-unchecked"},[n==null?void 0:n.value])]),m.createVNode("small",null,[t.slots.default&&t.slots.default()])])}});I.register=(c,t,e,i)=>{c.switch=I,t.switch=A},I.registerDesigner=(c,t,e)=>{c.switch=se,t.switch=A};const le=O.withInstall(I);M.FSwitch=I,M.default=le,M.propsResolver=A,M.switchProps=D,Object.defineProperties(M,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});