@farris/ui-vue 1.3.1 → 1.3.4

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 (269) 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 +301 -351
  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 +407 -396
  13. package/components/calendar/index.umd.cjs +1 -1
  14. package/components/capsule/index.esm.js +266 -255
  15. package/components/capsule/index.umd.cjs +1 -1
  16. package/components/checkbox/index.esm.js +628 -641
  17. package/components/checkbox/index.umd.cjs +1 -1
  18. package/components/color-picker/index.esm.js +379 -374
  19. package/components/color-picker/index.umd.cjs +2 -2
  20. package/components/combo-list/index.esm.js +471 -471
  21. package/components/combo-list/index.umd.cjs +1 -1
  22. package/components/combo-tree/index.esm.js +155 -148
  23. package/components/combo-tree/index.umd.cjs +1 -1
  24. package/components/common/index.esm.js +487 -478
  25. package/components/common/index.umd.cjs +1 -1
  26. package/components/component/index.esm.js +330 -279
  27. package/components/component/index.umd.cjs +1 -1
  28. package/components/condition/index.esm.js +1175 -1280
  29. package/components/condition/index.umd.cjs +1 -1
  30. package/components/content-container/index.esm.js +220 -204
  31. package/components/content-container/index.umd.cjs +1 -1
  32. package/components/data-grid/index.esm.js +4658 -4555
  33. package/components/data-grid/index.umd.cjs +1 -1
  34. package/components/data-view/index.esm.js +2891 -2994
  35. package/components/data-view/index.umd.cjs +1 -1
  36. package/components/date-picker/index.esm.js +2375 -2590
  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 +9912 -1191
  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 +149 -138
  46. package/components/dropdown/index.umd.cjs +2 -2
  47. package/components/dynamic-form/index.esm.js +1595 -1725
  48. package/components/dynamic-form/index.umd.cjs +1 -1
  49. package/components/dynamic-resolver/index.esm.js +159 -151
  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 +355 -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 +622 -633
  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 +2079 -2178
  62. package/components/external-container/index.umd.cjs +1 -1
  63. package/components/field-selector/index.esm.js +3062 -3322
  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 +10581 -3225
  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 +10182 -1327
  70. package/components/flow-canvas/index.umd.cjs +1 -1
  71. package/components/image-cropper/index.esm.js +353 -341
  72. package/components/image-cropper/index.umd.cjs +1 -1
  73. package/components/input-group/index.esm.js +510 -827
  74. package/components/input-group/index.umd.cjs +1 -1
  75. package/components/layout/index.esm.js +278 -268
  76. package/components/layout/index.umd.cjs +1 -1
  77. package/components/list-nav/index.esm.js +144 -136
  78. package/components/list-nav/index.umd.cjs +1 -1
  79. package/components/list-view/index.esm.js +1909 -2007
  80. package/components/list-view/index.umd.cjs +1 -1
  81. package/components/lookup/index.esm.js +6292 -6244
  82. package/components/lookup/index.umd.cjs +1 -1
  83. package/components/mapping-editor/index.esm.js +5165 -5062
  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 +486 -984
  90. package/components/nav/index.umd.cjs +3 -3
  91. package/components/number-range/index.esm.js +446 -498
  92. package/components/number-range/index.umd.cjs +1 -1
  93. package/components/number-spinner/index.esm.js +363 -388
  94. package/components/number-spinner/index.umd.cjs +1 -1
  95. package/components/order/index.esm.js +1050 -1308
  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 +1072 -1082
  100. package/components/page-header/index.umd.cjs +1 -1
  101. package/components/pagination/index.esm.js +412 -910
  102. package/components/pagination/index.umd.cjs +1 -1
  103. package/components/progress/index.esm.js +214 -203
  104. package/components/progress/index.umd.cjs +3 -3
  105. package/components/property-editor/index.esm.js +1361 -1536
  106. package/components/property-editor/index.umd.cjs +2 -2
  107. package/components/property-panel/index.css +1 -1
  108. package/components/property-panel/index.esm.js +650 -677
  109. package/components/property-panel/index.umd.cjs +1 -1
  110. package/components/query-solution/index.css +1 -1
  111. package/components/query-solution/index.esm.js +12607 -5080
  112. package/components/query-solution/index.umd.cjs +6 -1
  113. package/components/radio-button/index.esm.js +97 -97
  114. package/components/radio-button/index.umd.cjs +1 -1
  115. package/components/radio-group/index.css +1 -1
  116. package/components/radio-group/index.esm.js +1821 -565
  117. package/components/radio-group/index.umd.cjs +1 -1
  118. package/components/rate/index.esm.js +251 -244
  119. package/components/rate/index.umd.cjs +1 -1
  120. package/components/response-layout/index.esm.js +151 -140
  121. package/components/response-layout/index.umd.cjs +1 -1
  122. package/components/response-layout-editor/index.esm.js +707 -676
  123. package/components/response-layout-editor/index.umd.cjs +1 -1
  124. package/components/response-toolbar/index.esm.js +719 -740
  125. package/components/response-toolbar/index.umd.cjs +1 -1
  126. package/components/schema-selector/index.esm.js +5002 -5272
  127. package/components/schema-selector/index.umd.cjs +2 -2
  128. package/components/search-box/index.esm.js +145 -134
  129. package/components/search-box/index.umd.cjs +1 -1
  130. package/components/section/index.esm.js +2128 -427
  131. package/components/section/index.umd.cjs +1 -1
  132. package/components/smoke-detector/index.esm.js +141 -130
  133. package/components/smoke-detector/index.umd.cjs +1 -1
  134. package/components/splitter/index.esm.js +311 -301
  135. package/components/splitter/index.umd.cjs +1 -1
  136. package/components/step/index.esm.js +231 -220
  137. package/components/step/index.umd.cjs +1 -1
  138. package/components/switch/index.esm.js +385 -432
  139. package/components/switch/index.umd.cjs +1 -1
  140. package/components/tabs/index.esm.js +2223 -2203
  141. package/components/tabs/index.umd.cjs +1 -1
  142. package/components/tags/index.esm.js +351 -340
  143. package/components/tags/index.umd.cjs +1 -1
  144. package/components/text/index.esm.js +209 -199
  145. package/components/text/index.umd.cjs +1 -1
  146. package/components/textarea/index.esm.js +399 -421
  147. package/components/textarea/index.umd.cjs +1 -1
  148. package/components/time-picker/index.esm.js +619 -666
  149. package/components/time-picker/index.umd.cjs +1 -1
  150. package/components/transfer/index.esm.js +493 -486
  151. package/components/transfer/index.umd.cjs +1 -1
  152. package/components/tree-grid/index.esm.js +2992 -3101
  153. package/components/tree-grid/index.umd.cjs +1 -1
  154. package/components/tree-view/index.esm.js +2350 -2448
  155. package/components/tree-view/index.umd.cjs +1 -1
  156. package/components/uploader/index.esm.js +563 -554
  157. package/components/uploader/index.umd.cjs +2 -2
  158. package/components/verify-detail/index.esm.js +287 -276
  159. package/components/verify-detail/index.umd.cjs +1 -1
  160. package/components/video/index.esm.js +368 -324
  161. package/components/video/index.umd.cjs +1 -1
  162. package/components/weather/index.esm.js +498 -487
  163. package/components/weather/index.umd.cjs +5 -5
  164. package/farris.all.esm.js +46910 -42804
  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/entity/entity-schema.d.ts +26 -11
  177. package/types/common/index.d.ts +1 -0
  178. package/types/common/types.d.ts +2 -2
  179. package/types/condition/src/condition-fields.design.component.d.ts +18 -0
  180. package/types/condition/src/types.d.ts +6 -6
  181. package/types/data-grid/src/composition/data-grid-component-creator.service.d.ts +20 -0
  182. package/types/data-grid/src/{designer/data-grid-column.props.d.ts → data-grid-column.props.d.ts} +1 -1
  183. package/types/data-grid/src/data-grid.props.d.ts +2 -2
  184. package/types/data-grid/src/designer/grid-field-editor.component.d.ts +14 -14
  185. package/types/data-grid/src/schema/schema-resolver.d.ts +1 -1
  186. package/types/data-view/composition/types.d.ts +2 -2
  187. package/types/date-picker/src/components/calendar/calendar.component.d.ts +3 -3
  188. package/types/date-picker/src/components/month/month.component.d.ts +3 -3
  189. package/types/date-picker/src/components/year/year.component.d.ts +3 -3
  190. package/types/designer-canvas/index.d.ts +2 -1
  191. package/types/designer-canvas/src/composition/dg-control.d.ts +5 -0
  192. package/types/designer-canvas/src/composition/function/drag-resolve.d.ts +5 -0
  193. package/types/designer-canvas/src/composition/types.d.ts +49 -40
  194. package/types/designer-canvas/src/types.d.ts +8 -20
  195. package/types/dynamic-form/index.d.ts +1 -1
  196. package/types/dynamic-form/src/designer/form-group-use-designer-rules.d.ts +2 -0
  197. package/types/dynamic-form/src/schema/{schema-resolver.d.ts → response-form-schema-resolver.d.ts} +1 -1
  198. package/types/dynamic-form/src/types.d.ts +1 -1
  199. package/types/dynamic-resolver/src/common/toolbar-resolver.d.ts +5 -0
  200. package/types/dynamic-resolver/src/converter/row-number.converter.d.ts +3 -0
  201. package/types/entity-binding-selector/composition/use-entity-tree.d.ts +18 -0
  202. package/types/entity-binding-selector/composition/use-field-tree.d.ts +28 -0
  203. package/types/entity-binding-selector/entity-binding-selector.component.d.ts +11 -0
  204. package/types/entity-binding-selector/entity-binding-selector.props.d.ts +3 -0
  205. package/types/enum-editor/src/components/enum-editor-container.component.d.ts +3 -3
  206. package/types/enum-editor/src/enum-editor.component.d.ts +3 -3
  207. package/types/event-parameter/index.d.ts +31 -0
  208. package/types/event-parameter/src/composition/type.d.ts +77 -0
  209. package/types/event-parameter/src/composition/use-editor-combotree.d.ts +3 -0
  210. package/types/event-parameter/src/composition/use-editor-input.d.ts +3 -0
  211. package/types/event-parameter/src/composition/use-editor-select.d.ts +3 -0
  212. package/types/event-parameter/src/composition/use-editor-switch.d.ts +3 -0
  213. package/types/event-parameter/src/composition/use-editor.d.ts +3 -0
  214. package/types/event-parameter/src/composition/use-general-editor.d.ts +26 -0
  215. package/types/event-parameter/src/event-parameter.component.d.ts +8 -0
  216. package/types/event-parameter/src/event-parameter.props.d.ts +34 -0
  217. package/types/events-editor/src/composition/types.d.ts +1 -1
  218. package/types/external-container/src/designer/import-external-schema.component.d.ts +1 -1
  219. package/types/field-selector/src/field-selector.component.d.ts +1 -2
  220. package/types/field-selector/src/field-selector.props.d.ts +0 -9
  221. package/types/input-group/src/designer/use-input-group-rules.d.ts +1 -2
  222. package/types/list-view/src/designer/list-view-table.design.component.d.ts +15 -0
  223. package/types/list-view/src/list-view-table.component.d.ts +15 -0
  224. package/types/lookup/src/composition/use-user-data.d.ts +2 -2
  225. package/types/lookup/src/property-config/lookup.property-config.d.ts +2 -6
  226. package/types/modal/src/composition/modal.service.d.ts +2 -1
  227. package/types/page-header/src/designer/page-header.design.component.d.ts +1 -1
  228. package/types/page-header/src/page-header.component.d.ts +1 -1
  229. package/types/property-panel/index.d.ts +2 -1
  230. package/types/property-panel/src/composition/entity/property-entity.d.ts +1 -1
  231. package/types/property-panel/src/composition/type.d.ts +0 -13
  232. package/types/query-solution/src/composition/types.d.ts +90 -4
  233. package/types/query-solution/src/composition/use-condition.d.ts +19 -0
  234. package/types/query-solution/src/composition/use-header.d.ts +21 -0
  235. package/types/query-solution/src/composition/{use-filter.d.ts → use-http.d.ts} +2 -2
  236. package/types/query-solution/src/composition/use-solution.d.ts +20 -0
  237. package/types/query-solution/src/designer/query-solution-config/composition/types.d.ts +18 -16
  238. package/types/query-solution/src/designer/query-solution-config/converter/query-solution-config-property.converter.d.ts +4 -0
  239. package/types/query-solution/src/designer/query-solution-config/query-solution-config.props.d.ts +14 -14
  240. package/types/query-solution/src/property-config/query-solution.property-config.d.ts +3 -51
  241. package/types/query-solution/src/query-solution.d.ts +10 -2
  242. package/types/radio-group/src/designer/item-collection-editor-inner.component.d.ts +29 -0
  243. package/types/radio-group/src/designer/item-collection-editor.component.d.ts +29 -0
  244. package/types/radio-group/src/designer/item-collection-editor.props.d.ts +21 -0
  245. package/types/radio-group/src/schema/schema-mapper.d.ts +1 -0
  246. package/types/radio-group/src/schema/schema-resolver.d.ts +1 -0
  247. package/types/response-toolbar/src/property-config/response-toolbar.property-config.d.ts +1 -0
  248. package/types/section/index.d.ts +15 -0
  249. package/types/section/src/designer/section-header.design.component.d.ts +4 -0
  250. package/types/section/src/designer/section-toolbar-item.props.d.ts +19 -0
  251. package/types/section/src/designer/section-toolbar.design.component.d.ts +3 -0
  252. package/types/section/src/property-config/section.property-config.d.ts +17 -17
  253. package/types/section/src/schema/schema-resolver.d.ts +1 -2
  254. package/types/section/src/schema/toolbar-resolver.d.ts +1 -1
  255. package/types/tabs/src/composition/types.d.ts +4 -1
  256. package/types/tabs/src/property-config/tab-page.property-config.d.ts +9 -59
  257. package/types/tabs/src/property-config/tabs.property-config.d.ts +8 -71
  258. package/types/tabs/src/schema/schema-resolver.d.ts +1 -2
  259. package/types/text/src/composition/types.d.ts +4 -4
  260. package/types/textarea/src/property-config/textarea.property-config.d.ts +23 -0
  261. package/types/weather/src/composition/use-weather-charts.d.ts +15 -0
  262. package/types/weather/src/composition/use-weather-color.d.ts +15 -0
  263. package/types/weather/src/composition/use-weather-data.d.ts +15 -0
  264. package/types/weather/src/composition/use-weather-format-number.d.ts +15 -0
  265. package/types/property-panel/src/composition/entity/use-input-rules.d.ts +0 -3
  266. package/types/tree-grid/src/schema/column-resolver.d.ts +0 -3
  267. package/types/weather/src/composition/types.d.ts +0 -2
  268. /package/types/dynamic-form/src/designer/{use-designer-rules.d.ts → response-form-use-designer-rules.d.ts} +0 -0
  269. /package/types/dynamic-form/src/property-config/{form.property-config.d.ts → response-form.property-config.d.ts} +0 -0
@@ -1 +1 @@
1
- (function(V,a){typeof exports=="object"&&typeof module<"u"?a(exports,require("vue"),require("lodash-es"),require("../common/index.umd.js"),require("../designer-canvas/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../common/index.umd.js","../designer-canvas/index.umd.js"],a):(V=typeof globalThis<"u"?globalThis:V||self,a(V.checkbox={},V.Vue,V.LodashES,V.common,V.designerCanvas))})(this,function(V,a,P,$,q){"use strict";var be=Object.defineProperty;var Ce=(V,a,P)=>a in V?be(V,a,{enumerable:!0,configurable:!0,writable:!0,value:P}):V[a]=P;var k=(V,a,P)=>Ce(V,typeof a!="symbol"?a+"":a,P);const K={$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"]},O={},W={};function L(o){const{properties:t,title:e,ignore:r}=o,i=r&&Array.isArray(r),s=Object.keys(t).reduce((u,h)=>((!i||!r.find(m=>m==h))&&(u[h]=t[h].type==="object"&&t[h].properties?L(t[h]):P.cloneDeep(t[h].default)),u),{});return e&&(!i||!r.find(u=>u=="id"))&&(s.id=`${e}-${Date.now()}`),s}function z(o,t={},e){const r=O[o];if(r){let i=L(r);const s=W[o];return i=s?s({getSchemaByType:z},i,t,e):i,i}return null}function R(o,t){const e=L(t);return Object.keys(o).reduce((r,i)=>(r[i]&&P.isPlainObject(r[i])&&P.isPlainObject(o[i])?Object.assign(r[i],o[i]):r[i]=o[i],r),e),e}function ee(o,t){return Object.keys(o).filter(r=>o[r]!=null).reduce((r,i)=>{if(t.has(i)){const s=t.get(i);if(typeof s=="string")r[s]=o[i];else{const u=s(i,o[i],o);Object.assign(r,u)}}else r[i]=o[i];return r},{})}function te(o,t,e=new Map){const r=R(o,t);return ee(r,e)}function ne(o={}){function t(l,f,n,d){if(typeof n=="number")return d[l].length===n;if(typeof n=="object"){const c=Object.keys(n)[0],p=n[c];if(c==="not")return Number(d[l].length)!==Number(p);if(c==="moreThan")return Number(d[l].length)>=Number(p);if(c==="lessThan")return Number(d[l].length)<=Number(p)}return!1}function e(l,f,n,d){return d[l]&&d[l].propertyValue&&String(d[l].propertyValue.value)===String(n)}const r=new Map([["length",t],["getProperty",e]]);Object.keys(o).reduce((l,f)=>(l.set(f,o[f]),l),r);function i(l,f){const n=l;return typeof f=="number"?[{target:n,operator:"length",param:null,value:Number(f)}]:typeof f=="boolean"?[{target:n,operator:"getProperty",param:l,value:!!f}]:typeof f=="object"?Object.keys(f).map(d=>{if(d==="length")return{target:n,operator:"length",param:null,value:f[d]};const c=d,p=f[d];return{target:n,operator:"getProperty",param:c,value:p}}):[]}function s(l){return Object.keys(l).reduce((n,d)=>{const c=i(d,l[d]);return n.push(...c),n},[])}function u(l,f){if(r.has(l.operator)){const n=r.get(l.operator);return n&&n(l.target,l.param,l.value,f)||!1}return!1}function h(l,f){return s(l).reduce((c,p)=>c&&u(p,f),!0)}function m(l,f){const n=Object.keys(l),d=n.includes("allOf"),c=n.includes("anyOf"),p=d||c,b=(p?l[p?d?"allOf":"anyOf":"allOf"]:[l]).map(S=>h(S,f));return d?!b.includes(!1):b.includes(!0)}return{parseValueSchema:m}}const y={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"}},oe={},re={};ne();function X(o,t,e=new Map,r=(u,h,m)=>h,i={},s=u=>u){return O[t.title]=t,W[t.title]=r,oe[t.title]=i,re[t.title]=s,(u={})=>{const h=te(u,t,e),m=Object.keys(o).reduce((l,f)=>(l[f]=o[f].default,l),{});return Object.assign(m,h)}}function ie(o,t){return{customClass:t.class,customStyle:t.style}}const _=new Map([["appearance",ie]]);function H(o,t,e){return t}const I={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}},G=X(I,K,_,H),N=a.defineComponent({name:"FCheckBox",props:I,emits:["change","changeValue","update:modelValue","update:checked"],setup(o,t){const e=a.inject($.CHECKBOX_CONTEXT,null),{buttonClass:r,disabled:i,name:s,shouldRenderButton:u,shouldRenderNative:h,shouldRenderTag:m,tagClass:l,checked:f,onClickCheckBox:n}=$.useCheck(o,t,e==null?void 0:e.parentProps,e==null?void 0:e.parentContext);a.ref();const d=a.ref(o.id),c=a.ref(o.customClass),p=a.ref(o.modelValue),g=a.ref(o.indeterminate);return a.computed(()=>{const C={"custom-control":!0,"custom-checkbox":!0};return c.value&&c.value.split(" ").reduce((b,M)=>(b[M]=!0,b),C),C}),a.watch(()=>o.modelValue,C=>{p.value=C}),a.watch(()=>o.indeterminate,C=>{g.value=C}),a.onMounted(()=>{}),()=>{var C,b,M,S,T,v;return a.createVNode(a.Fragment,null,[u.value&&a.createVNode("div",{class:r.value,style:"border-radius:0;border: 1px solid #E8EBF2;",onClick:n},[(b=(C=t.slots).default)==null?void 0:b.call(C)]),m.value&&a.createVNode("div",{class:l.value,onClick:n},[a.createVNode("div",{class:"title"},[(S=(M=t.slots).default)==null?void 0:S.call(M)]),a.createVNode("div",{class:"tip"},null),a.createVNode("span",{class:"f-icon f-icon-check f-radio-icon"},null)]),h.value&&a.createVNode("div",{class:"custom-control custom-checkbox",onClick:n},[a.createVNode("input",{type:"checkbox",class:"custom-control-input",name:s.value,id:d,value:o.value,checked:f.value,indeterminate:g.value,disabled:i.value},null),a.createVNode("div",{class:"custom-control-label"},[(v=(T=t.slots).default)==null?void 0:v.call(T)])])])}}}),ae={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/check-box.schema.json",title:"check-group",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-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{description:"",type:"boolean",default:!1},textField:{description:"",type:"string",default:"name"},valueField:{description:"",type:"string",default:"value"},enumData:{description:"",type:"array"},readonly:{description:"",type:"boolean",default:!1},required:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"]},A={...{checked:{type:Boolean,default:!1},mode:{type:String,default:"default"},type:{type:String,default:"secondary"},size:{type:String,default:"middle"}},id:String,disabled:{type:Boolean,default:!1},enumData:{type:Array,default:[{name:"示例1",value:"example1"},{name:"示例2",value:"example2"}]},horizontal:{type:Boolean,default:!1},isStringValue:{type:Boolean,default:!0},loadData:{type:Function},modelValue:[String,Array],name:{type:String,default:""},separator:{type:String,default:","},tabIndex:{type:Number,default:0},textField:{type:String,default:"name"},valueField:{type:String,default:"value"}},j=X(A,ae,_,H);function J(o,t,e){const r=a.computed(()=>!o.disabled),i=a.ref(o.enumData);function s(n){return n[o.valueField]}function u(n){return n[o.textField]}function h(n){return n?o.isStringValue?n.split(o.separator):n:[]}function m(n){const c=i.value.map(p=>s(p)).filter(p=>n.some(g=>g===String(p)));return o.isStringValue?c.join(o.separator):c}function l(n){const d=String(s(n));return h(e.value).some(p=>p===d)}function f(n,d){if(r.value){let c=h(e.value)||[];const p=String(s(n));!c||!c.length?c.push(p):c.some(g=>g===p)?c=c.filter(g=>g!==p):c.push(p),e.value=m(c),t.emit("changeValue",e.value),t.emit("update:modelValue",e.value)}d.stopPropagation()}return{enumData:i,getValue:s,getText:u,checked:l,onClickCheckbox:f}}const D=a.defineComponent({name:"FCheckGroup",props:A,emits:["changeValue","update:modelValue"],setup(o,t){const e=a.ref(o.modelValue),r=a.ref(o.horizontal),i=a.ref(o.tabIndex),s=a.ref(o.name),{enumData:u,onClickCheckbox:h,getValue:m,getText:l,checked:f}=J(o,t,e),n=a.computed(()=>({"farris-checkradio-hor":r.value}));a.watch(()=>o.modelValue,c=>{e.value=c});const d=a.ref([]);return a.provide($.CHECKBOX_CONTEXT,{values:d,parentProps:o,parentContext:t}),()=>a.createVNode("div",{class:["farris-input-wrap",n.value]},[t.slots.default?t.slots.default():u.value.map((c,p)=>{const g="checkbox_"+s.value+p;return a.createVNode("div",{class:"custom-control custom-checkbox"},[a.createVNode("input",{type:"checkbox",class:"custom-control-input",name:s.value,id:g,value:m(c),checked:f(c),disabled:o.disabled,tabindex:i.value,onClick:C=>h(c,C)},null),a.createVNode("label",{class:"custom-control-label",for:g,title:l(c)},[l(c)])])})])}});function Q(o,t,e){var T;function r(){e!=null&&e.resolveComponentContext&&e.resolveComponentContext()}r();const i=e&&e.getStyles&&e.getStyles()||"",s=e&&e.getDesignerClass&&e.getDesignerClass()||"",u=a.ref();function h(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanMoveComponent?e.checkCanMoveComponent():!0}function m(){return!1}function l(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanDeleteComponent?e.checkCanDeleteComponent():!0}function f(){return(t==null?void 0:t.schema.componentType)==="frame"?!0:e&&e.hideNestedPaddingInDesginerView?e.hideNestedPaddingInDesginerView():!1}function n(v){if(!v||!v.value)return null;if(v.value.schema&&v.value.schema.type==="component")return v.value;const F=a.ref(v==null?void 0:v.value.parent),B=n(F);return B||null}function d(v=t){const{componentInstance:F,designerItemElementRef:B}=v;return!F||!F.value?null:F.value.canMove?B:d(v.parent)}function c(v){return!!e&&e.canAccepts(v)}function p(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function g(){}function C(v,F){F&&e!=null&&e.onAcceptMovedChildElement&&e.onAcceptMovedChildElement(F)}function b(v,F){const{componentType:B}=v;let w=z(B,v,F);e&&e.onResolveNewComponentSchema&&(w=e.onResolveNewComponentSchema(v,w));const U=B.toLowerCase().replace("-","_");return w&&!w.id&&w.type===B&&(w.id=`${U}_${Math.random().toString().slice(2,6)}`),w}function M(v){}function S(...v){if(e&&e.getPropsConfig)return e.getPropsConfig(...v)}return u.value={canMove:h(),canSelectParent:m(),canDelete:l(),canNested:!f(),contents:t==null?void 0:t.schema.contents,elementRef:o,parent:(T=t==null?void 0:t.parent)==null?void 0:T.componentInstance,schema:t==null?void 0:t.schema,styles:i,designerClass:s,canAccepts:c,getBelongedComponentInstance:n,getDraggableDesignItemElement:d,getDraggingDisplayText:p,getPropConfig:S,getDragScopeElement:g,onAcceptMovedChildElement:C,onChildElementMovedOut:M,addNewChildComponentSchema:b,updateDragAndDropRules:r,triggerBelongedComponentToMoveWhenMoved:!!e&&e.triggerBelongedComponentToMoveWhenMoved||a.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!e&&e.triggerBelongedComponentToDeleteWhenDeleted||a.ref(!1)},u}function Y(o,t){o.schema;const e=a.ref(!0),r=a.ref(!0);function i(n){return!1}function s(){return!1}function u(){return!1}function h(){return!0}function m(n){}function l(){}function f(n){return null}return{canAccepts:i,checkCanDeleteComponent:s,checkCanMoveComponent:u,hideNestedPaddingInDesginerView:h,onAcceptMovedChildElement:m,resolveComponentContext:l,triggerBelongedComponentToMoveWhenMoved:e,triggerBelongedComponentToDeleteWhenDeleted:r,getPropsConfig:f}}class le{constructor(t,e){k(this,"componentId");k(this,"viewModelId");k(this,"eventsEditorUtils");k(this,"formSchemaUtils");k(this,"formMetadataConverter");k(this,"designViewModelUtils");k(this,"designViewModelField");k(this,"controlCreatorUtils");k(this,"designerHostService");k(this,"schemaService",null);k(this,"metadataService",null);k(this,"propertyConfig",{type:"object",categories:{}});var r;this.componentId=t,this.designerHostService=e,this.eventsEditorUtils=e.eventsEditorUtils,this.formSchemaUtils=e.formSchemaUtils,this.formMetadataConverter=e.formMetadataConverter,this.viewModelId=((r=this.formSchemaUtils)==null?void 0:r.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 r=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=r.fields.find(i=>i.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:y[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 r=e&&e.parent&&e.parent.schema;if(!r)return;const i=r.contents.findIndex(u=>u.id===t),s=P.cloneDeep(r.contents[i]);r.contents.splice(i,1),r.contents.splice(i,0,s)}}const E=class E{static getEditorTypesByMDataType(t){const e=E.fieldControlTypeMapping[t];return e||[{key:"",value:""}]}static getAllInputTypes(){const t=[];for(let e in E.fieldControlTypeMapping)E.fieldControlTypeMapping[e].forEach(r=>{t.find(i=>i.key===r.key&&i.value===r.value)||t.push({key:r.key,value:r.value})});return t}};k(E,"fieldControlTypeMapping",{String:[{key:y["input-group"].type,value:y["input-group"].name},{key:y.lookup.type,value:y.lookup.name},{key:y["date-picker"].type,value:y["date-picker"].name},{key:y["check-box"].type,value:y["check-box"].name},{key:y["check-group"].type,value:y["check-group"].name},{key:y["radio-group"].type,value:y["radio-group"].name},{key:y["combo-list"].type,value:y["combo-list"].name},{key:y.textarea.type,value:y.textarea.name}],Text:[{key:y.textarea.type,value:y.textarea.name},{key:y.lookup.type,value:y.lookup.name}],Decimal:[{key:y["number-spinner"].type,value:y["number-spinner"].name}],Integer:[{key:y["number-spinner"].type,value:y["number-spinner"].name}],Number:[{key:y["number-spinner"].type,value:y["number-spinner"].name}],BigNumber:[{key:y["number-spinner"].type,value:y["number-spinner"].name}],Date:[{key:y["date-picker"].type,value:y["date-picker"].name}],DateTime:[{key:y["date-picker"].type,value:y["date-picker"].name}],Boolean:[{key:y.switch.type,value:y.switch.name},{key:y["check-box"].type,value:y["check-box"].name}],Enum:[{key:y["combo-list"].type,value:y["combo-list"].name},{key:y["radio-group"].type,value:y["radio-group"].name}],Object:[{key:y.lookup.type,value:y.lookup.name},{key:y["combo-list"].type,value:y["combo-list"].name},{key:y["radio-group"].type,value:y["radio-group"].name}]});let x=E;const se=a.ref(0);class ce{constructor(){k(this,"label","");k(this,"id","");k(this,"columnInSM",12);k(this,"columnInMD",6);k(this,"columnInLG",3);k(this,"columnInEL",2);k(this,"displayWidthInSM",1);k(this,"displayWidthInMD",1);k(this,"displayWidthInLG",1);k(this,"displayWidthInEL",1);k(this,"displayColumnCountAtBreakPoint","md");k(this,"tagRow",0);k(this,"showTopBorder",0);k(this,"group",1);k(this,"isSupportedClass",!0);k(this,"fieldSetId","")}}function de(o){let t,e;const r=new Map;let i=[];function s(f,n){const c=f.split(" ").filter(M=>M.startsWith("col-"));if(c.length===0){n.isSupportedClass=!1;return}let p=c.find(M=>/^col-([1-9]|10|11|12)$/.test(M)),g=c.find(M=>/^col-md-([1-9]|10|11|12)$/.test(M)),C=c.find(M=>/^col-xl-([1-9]|10|11|12)$/.test(M)),b=c.find(M=>/^col-el-([1-9]|10|11|12)$/.test(M));p=p||"col-12",n.columnInSM=parseInt(p.replace("col-",""),10),n.displayWidthInSM=n.columnInSM/12,n.displayWidthInSM!==1&&(n.isSupportedClass=!1),g=g||"col-md-"+n.columnInSM,n.columnInMD=parseInt(g.replace("col-md-",""),10),n.displayWidthInMD=n.columnInMD/6,[1,2].includes(n.displayWidthInMD)||(n.isSupportedClass=!1),C=C||"col-xl-"+n.columnInMD,n.columnInLG=parseInt(C.replace("col-xl-",""),10),n.displayWidthInLG=n.columnInLG/3,[1,2,3,4].includes(n.displayWidthInLG)||(n.isSupportedClass=!1),b=b||"col-el-"+n.columnInLG,n.columnInEL=parseInt(b.replace("col-el-",""),10),n.displayWidthInEL=n.columnInEL/2,[1,2,3,4,5,6].includes(n.displayWidthInEL)||(n.isSupportedClass=!1)}function u(f,n,d,c=!1){let p=!1;f.contents.forEach(g=>{if(g.type==="fieldset"){d+=1,u(g,n,d,!0),p=!0;return}p&&(d+=1,p=!1);const C=g.appearance&&g.appearance.class,b=new ce;C?s(C,b):b.isSupportedClass=!1,b.label=g.label||g.id,b.id=g.id,b.group=d,c&&(b.fieldSetId=f.id),e===g.id&&(t=d),r.set(g.id,g),n.push(b)})}function h(f){const n=o.getComponentById(f);if(!n||!n.componentType||!n.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const d=o.selectNode(n,c=>c.type===q.DgControl["response-form"].type);return!d||!d.contents||d.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:d}}function m(f,n){n=n||f.id;const{result:d,message:c,formNode:p}=h(n);if(!d)return{result:d,message:c};e=f.id,i=[],r.clear();const g=p.contents[0].type===q.DgControl.fieldset.type?0:1;u(p,i,g);const C=i.find(M=>!M.isSupportedClass);return{defaultState:{defaultGroupNumber:t||1,model:C?"customize":"standard"},importData:i}}function l(f,n){n=n;const{result:d,formNode:c}=h(n);if(!d)return"";const p=[];return f.forEach(g=>{var M;const C=r.get(g.id),b=C.appearance&&C.appearance.class;if(b){const T=b.split(" ").filter(ge=>!ge.startsWith("col-")),v="col-"+g.columnInSM,F="col-md-"+g.columnInMD,B="col-xl-"+g.columnInLG,w="col-el-"+g.columnInEL,U=[v,F,B,w].concat(T);C.appearance.class=U.join(" ")}if(g.fieldSetId){const S=c.contents.find(v=>v.id===g.fieldSetId),T=p.find(v=>v.id===g.fieldSetId);T?(M=T.contents)==null||M.push(C):(p.push(S),S.contents=[C])}else p.push(C)}),c.contents=p,c.id}return{checkCanFindFormNode:h,checkCanOpenLayoutEditor:m,changeFormControlsByResponseLayoutConfig:l,getResonseFormLayoutConfig:u}}class Z extends le{constructor(e,r){super(e,r);k(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=de(this.formSchemaUtils)}getPropertyConfig(e,r){return this.propertyConfig.categories.basic=this.getBasicProperties(e,r),this.propertyConfig.categories.appearance=this.getAppearanceProperties(e,r),this.propertyConfig.categories.editor=this.getEditorProperties(e),this.propertyConfig}getBasicProperties(e,r){var h;var i=this;this.setDesignViewModelField(e);const s=this.formSchemaUtils.getFormMetadataBasicInfo(),u=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?x.getEditorTypesByMDataType((h=i.designViewModelField.type)==null?void 0:h.name):x.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:s},columns:[{field:"name",title:"字段名称"},{field:"bindingField",title:"绑定字段"},{field:"fieldType",title:"字段类型"}],textField:"bindingField",data:u}}},setPropertyRelates(m,l){if(m)switch(m&&m.propertyID){case"type":{i.changeControlType(e,m,r);break}case"label":{m.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(e,r){var i=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:i.responseLayoutEditorFunction.checkCanOpenLayoutEditor(e,i.componentId)}}},setPropertyRelates(s,u){if(s)switch(s&&s.propertyID){case"responseLayout":i.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(s.propertyValue,i.componentId||e.id),i.updateUnifiedLayoutAfterResponseLayoutChanged(i.componentId),i.updateElementByParentContainer(e.id,r),delete e.responseLayout;break;case"class":i.updateUnifiedLayoutAfterControlChanged(s.propertyValue,e.id,this.componentId),i.updateElementByParentContainer(e.id,r);break}}}}getEditorProperties(e){return this.getComponentConfig(e)}changeControlType(e,r,i){var f,n,d,c;const s=r.propertyValue,u=i&&i.parent&&i.parent.schema;if(!u)return;const h=u.contents.findIndex(p=>p.id===e.id),m=u.contents[h];let l;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:s},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),l=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,s)),l||(l=this.controlCreatorUtils.createFormGroupWithoutField(s)),Object.assign(l,{id:m.id,appearance:m.appearance,size:m.size,label:m.label,binding:m.binding,visible:m.visible}),Object.assign(l.editor,{isTextArea:l.isTextArea&&m.isTextArea,placeholder:(f=m.editor)==null?void 0:f.placeholder,holdPlace:(n=m.editor)==null?void 0:n.holdPlace,readonly:(d=m.editor)==null?void 0:d.readonly,require:(c=m.editor)==null?void 0:c.require}),u.contents.splice(h,1),u.contents.splice(h,0,l),i.schema=Object.assign(m,l),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(p=>p.classList.remove("dgComponentSelected")),se.value++}getComponentConfig(e,r={},i={}){const s=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},r),u=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},i);return{...s,properties:{...u}}}updateUnifiedLayoutAfterControlChanged(e,r,i){const s=e.split(" ");let u=s.find(n=>/^col-([1-9]|10|11|12)$/.test(n)),h=s.find(n=>/^col-md-([1-9]|10|11|12)$/.test(n)),m=s.find(n=>/^col-xl-([1-9]|10|11|12)$/.test(n)),l=s.find(n=>/^col-el-([1-9]|10|11|12)$/.test(n));u=u||"col-12",h=h||"col-md-"+u.replace("col-",""),m=m||"col-xl-"+h.replace("col-md-",""),l=l||"col-el-"+m.replace("col-xl-","");const f={id:r,columnInSM:parseInt(u.replace("col-",""),10),columnInMD:parseInt(h.replace("col-md-",""),10),columnInLG:parseInt(m.replace("col-xl-",""),10),columnInEL:parseInt(l.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(i,f)}updateUnifiedLayoutAfterResponseLayoutChanged(e,r){const{formNode:i}=this.responseLayoutEditorFunction.checkCanFindFormNode(e);if(!i||!i.unifiedLayout)return;const s=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(i,s,1),r){const p=s.find(g=>g.id===r.id);Object.assign(p||{},r)}const u=s.map(p=>p.columnInSM),h=s.map(p=>p.columnInMD),m=s.map(p=>p.columnInLG),l=s.map(p=>p.columnInEL),f=this.checkIsUniqueColumn(u)?u[0]:null,n=this.checkIsUniqueColumn(h)?h[0]:null,d=this.checkIsUniqueColumn(m)?m[0]:null,c=this.checkIsUniqueColumn(l)?l[0]:null;Object.assign(i.unifiedLayout,{uniqueColClassInSM:f,uniqueColClassInMD:n,uniqueColClassInLG:d,uniqueColClassInEL:c})}checkIsUniqueColumn(e){const r=new Set(e);return Array.from(r).length===1}}class pe extends Z{constructor(t,e){super(t,e)}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 ue extends Z{constructor(t,e){super(t,e)}getEditorProperties(t){return this.getComponentConfig(t,{type:"check-group"},{placeholder:{visible:!1},text:{description:"",title:"显示文本",type:"string"},value:{description:"",title:"选中值",type:"string"}})}}function fe(o,t){const{canAccepts:e,checkCanDeleteComponent:r,checkCanMoveComponent:i,hideNestedPaddingInDesginerView:s,onAcceptMovedChildElement:u,resolveComponentContext:h,triggerBelongedComponentToMoveWhenMoved:m,triggerBelongedComponentToDeleteWhenDeleted:l}=Y(o),f=o.schema;function n(d,c){return new pe(d,t).getPropertyConfig(f,c)}return{canAccepts:e,checkCanDeleteComponent:r,checkCanMoveComponent:i,hideNestedPaddingInDesginerView:s,onAcceptMovedChildElement:u,resolveComponentContext:h,triggerBelongedComponentToMoveWhenMoved:m,triggerBelongedComponentToDeleteWhenDeleted:l,getPropsConfig:n}}function me(o,t){const{canAccepts:e,checkCanDeleteComponent:r,checkCanMoveComponent:i,hideNestedPaddingInDesginerView:s,onAcceptMovedChildElement:u,resolveComponentContext:h,triggerBelongedComponentToMoveWhenMoved:m,triggerBelongedComponentToDeleteWhenDeleted:l}=Y(o),f=o.schema;function n(d,c){return new ue(d,t).getPropertyConfig(f,c)}return{canAccepts:e,checkCanDeleteComponent:r,checkCanMoveComponent:i,hideNestedPaddingInDesginerView:s,onAcceptMovedChildElement:u,resolveComponentContext:h,triggerBelongedComponentToMoveWhenMoved:m,triggerBelongedComponentToDeleteWhenDeleted:l,getPropsConfig:n}}const he=a.defineComponent({name:"FCheckboxGroupDesign",props:A,emits:["changeValue","update:modelValue"],setup(o,t){const e=a.ref(o.modelValue),r=a.ref(o.horizontal),i=a.ref(o.tabIndex),s=a.ref(o.name),u=a.computed(()=>({"farris-checkradio-hor":r.value})),{enumData:h,onClickCheckbox:m,getValue:l,getText:f,checked:n}=J(o,t,e),d=a.ref(),c=a.inject("designer-host-service"),p=a.inject("design-item-context"),g=fe(p,c),C=Q(d,p,g);return a.onMounted(()=>{d.value.componentInstance=C}),t.expose(C.value),a.watch(()=>o.modelValue,b=>{e.value=b,t.emit("changeValue",e.value)}),()=>a.createVNode("div",{ref:d,class:["farris-input-wrap",u.value]},[h.value.map((b,M)=>{const S="checkbox_"+s.value+M;return a.createVNode("div",{class:"custom-control custom-checkbox"},[a.createVNode("input",{type:"checkbox",class:"custom-control-input",name:s.value,id:S,value:l(b),checked:n(b),disabled:o.disabled,tabindex:i.value,onClick:T=>m(b,T)},null),a.createVNode("label",{class:"custom-control-label",for:S,title:f(b)},[f(b)])])})])}}),ye=a.defineComponent({name:"FCheckBoxDesign",props:I,emits:[],setup(o,t){const e=a.ref(),r=a.ref(o.id),i=a.ref(o.indeterminate),s=a.inject("designer-host-service"),u=a.inject("design-item-context"),h=me(u,s),m=Q(e,u,h);return a.onMounted(()=>{e.value.componentInstance=m}),a.watch(()=>o.indeterminate,l=>{i.value=l}),t.expose(m.value),()=>a.createVNode("div",{ref:e,dragref:`${u.schema.id}-container`,class:"drag-container custom-control custom-checkbox"},[a.createVNode("input",{type:"checkbox",class:"custom-control-input",id:r,value:o.value,checked:o.modelValue,disabled:o.disabled},null),a.createVNode("div",{class:"custom-control-label"},null)])}});D.install=o=>{o.component(D.name,D),o.component(N.name,N)},D.register=(o,t,e,r)=>{o["check-box"]=N,t["check-box"]=G,o["check-group"]=D,t["check-group"]=j},D.registerDesigner=(o,t,e)=>{o["check-box"]=ye,t["check-box"]=G,o["check-group"]=he,t["check-group"]=j},V.FCheckBox=N,V.FCheckBoxGroup=D,V.checkBoxGroupPropsResolver=j,V.checkBoxProps=I,V.checkBoxPropsResolver=G,V.checkboxGroupProps=A,V.default=D,Object.defineProperties(V,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(S,a){typeof exports=="object"&&typeof module<"u"?a(exports,require("vue"),require("lodash-es"),require("../common/index.umd.js"),require("../designer-canvas/index.umd.js")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es","../common/index.umd.js","../designer-canvas/index.umd.js"],a):(S=typeof globalThis<"u"?globalThis:S||self,a(S.checkbox={},S.Vue,S.LodashES,S.common,S.designerCanvas))})(this,function(S,a,B,A,U){"use strict";var ge=Object.defineProperty;var be=(S,a,B)=>a in S?ge(S,a,{enumerable:!0,configurable:!0,writable:!0,value:B}):S[a]=B;var v=(S,a,B)=>be(S,typeof a!="symbol"?a+"":a,B);const Z={$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},tabindex:{description:"",type:"number",default:-1},visible:{description:"",type:"boolean",default:!0}},required:["id","type"],ignore:["id","appearance","binding","visible"]},O={},W={};function D(o){const{properties:t,title:e,ignore:i}=o,r=i&&Array.isArray(i),l=Object.keys(t).reduce((u,h)=>((!r||!i.find(g=>g===h))&&(u[h]=t[h].type==="object"&&t[h].properties?D(t[h]):B.cloneDeep(t[h].default)),u),{});if(e&&(!r||!i.find(u=>u==="id"))){const u=e.toLowerCase().replace(/-/g,"_");l.id=`${u}_${Math.random().toString().slice(2,6)}`}return l}function z(o,t={},e){const i=O[o];if(i){let r=D(i);const l=W[o];return r=l?l({getSchemaByType:z},r,t,e):r,r}return null}function R(o,t){const e=D(t);return Object.keys(e).reduce((i,r)=>(i[r]&&B.isPlainObject(i[r])&&B.isPlainObject(o[r]||!o[r])?Object.assign(i[r],o[r]||{}):i[r]=o[r],i),e),e}function K(o,t){return Object.keys(o).filter(i=>o[i]!=null).reduce((i,r)=>{if(t.has(r)){const l=t.get(r);if(typeof l=="string")i[l]=o[r];else{const u=l(r,o[r],o);Object.assign(i,u)}}else i[r]=o[r];return i},{})}function ee(o,t,e=new Map){const i=R(o,t);return K(i,e)}function te(o={}){function t(s,m,n,p){if(typeof n=="number")return p[s].length===n;if(typeof n=="object"){const c=Object.keys(n)[0],d=n[c];if(c==="not")return Number(p[s].length)!==Number(d);if(c==="moreThan")return Number(p[s].length)>=Number(d);if(c==="lessThan")return Number(p[s].length)<=Number(d)}return!1}function e(s,m,n,p){return p[s]&&p[s].propertyValue&&String(p[s].propertyValue.value)===String(n)}const i=new Map([["length",t],["getProperty",e]]);Object.keys(o).reduce((s,m)=>(s.set(m,o[m]),s),i);function r(s,m){const n=s;return typeof m=="number"?[{target:n,operator:"length",param:null,value:Number(m)}]:typeof m=="boolean"?[{target:n,operator:"getProperty",param:s,value:!!m}]:typeof m=="object"?Object.keys(m).map(p=>{if(p==="length")return{target:n,operator:"length",param:null,value:m[p]};const c=p,d=m[p];return{target:n,operator:"getProperty",param:c,value:d}}):[]}function l(s){return Object.keys(s).reduce((n,p)=>{const c=r(p,s[p]);return n.push(...c),n},[])}function u(s,m){if(i.has(s.operator)){const n=i.get(s.operator);return n&&n(s.target,s.param,s.value,m)||!1}return!1}function h(s,m){return l(s).reduce((c,d)=>c&&u(d,m),!0)}function g(s,m){const n=Object.keys(s),p=n.includes("allOf"),c=n.includes("anyOf"),d=p||c,b=(d?s[d?p?"allOf":"anyOf":"allOf"]:[s]).map(T=>h(T,m));return p?!b.includes(!1):b.includes(!0)}return{parseValueSchema:g}}const f={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"}},ne={},oe={};te();function X(o,t,e=new Map,i=(u,h,g,s)=>h,r={},l=u=>u){return O[t.title]=t,W[t.title]=i,ne[t.title]=r,oe[t.title]=l,(u={})=>{const h=ee(u,t,e),g=Object.keys(o).reduce((s,m)=>(s[m]=o[m].default,s),{});return Object.assign(g,h)}}function ie(o,t){return{customClass:t.class,customStyle:t.style}}const _=new Map([["appearance",ie]]);function H(o,t,e){return t}const N={id:{Type:String,default:""},customClass:{Type:String,default:""},disabled:{Type:Boolean,default:!1},readonly:{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}},G=X(N,Z,_,H),$=a.defineComponent({name:"FCheckBox",props:N,emits:["change","changeValue","update:modelValue","update:checked"],setup(o,t){const e=a.inject(A.CHECKBOX_CONTEXT,null),{buttonClass:i,disabled:r,name:l,shouldRenderButton:u,shouldRenderNative:h,shouldRenderTag:g,tagClass:s,checked:m,onClickCheckBox:n}=A.useCheck(o,t,e==null?void 0:e.parentProps,e==null?void 0:e.parentContext);a.ref();const p=a.ref(o.id),c=a.ref(o.customClass),d=a.ref(o.modelValue),y=a.ref(o.indeterminate);return a.computed(()=>{const C={"custom-control":!0,"custom-checkbox":!0};return c.value&&c.value.split(" ").reduce((b,M)=>(b[M]=!0,b),C),C}),a.watch(()=>o.modelValue,C=>{d.value=C}),a.watch(()=>o.indeterminate,C=>{y.value=C}),a.onMounted(()=>{}),()=>{var C,b,M,T,P,k;return a.createVNode(a.Fragment,null,[u.value&&a.createVNode("div",{class:i.value,style:"border-radius:0;border: 1px solid #E8EBF2;",onClick:n},[(b=(C=t.slots).default)==null?void 0:b.call(C)]),g.value&&a.createVNode("div",{class:s.value,onClick:n},[a.createVNode("div",{class:"title"},[(T=(M=t.slots).default)==null?void 0:T.call(M)]),a.createVNode("div",{class:"tip"},null),a.createVNode("span",{class:"f-icon f-icon-check f-radio-icon"},null)]),h.value&&a.createVNode("div",{class:"custom-control custom-checkbox",onClick:n},[a.createVNode("input",{type:"checkbox",class:"custom-control-input",name:l.value,id:p,value:o.value,checked:m.value,indeterminate:y.value,disabled:r.value},null),a.createVNode("div",{class:"custom-control-label"},[(k=(P=t.slots).default)==null?void 0:k.call(P)])])])}}}),re={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/check-box.schema.json",title:"check-group",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-group"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}},binding:{description:"",type:"object",default:{}},disabled:{description:"",type:"boolean",default:!1},textField:{description:"",type:"string",default:"name"},valueField:{description:"",type:"string",default:"value"},data:{description:"",type:"array"},readonly:{description:"",type:"boolean",default:!1},tabindex:{description:"",type:"number",default:-1},separator:{description:"",type:"string",default:","},name:{description:"",type:"string",default:""},horizontal:{description:"",type:"boolean",default:!1}},required:["id","type"],ignore:["id","appearance","binding","visible"]},x={...{checked:{type:Boolean,default:!1},mode:{type:String,default:"default"},type:{type:String,default:"secondary"},size:{type:String,default:"middle"}},id:String,disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},enumData:{type:Array,default:[{value:"example1",name:"示例一"},{value:"example2",name:"示例二"}]},data:{type:Array,default:[{value:"example1",name:"示例一"},{value:"example2",name:"示例二"}]},horizontal:{type:Boolean,default:!1},isStringValue:{type:Boolean,default:!0},loadData:{type:Function},modelValue:[String,Array],name:{type:String,default:""},separator:{type:String,default:","},tabIndex:{type:Number,default:0},textField:{type:String,default:"name"},valueField:{type:String,default:"value"}},j=X(x,re,_,H);function Q(o,t,e){const i=a.computed(()=>!(o.readonly&&o.disabled)),r=a.ref(o.data||o.enumData);function l(n){return n[o.valueField]}function u(n){return n[o.textField]}function h(n){return n?o.isStringValue?n.split(o.separator):n:[]}function g(n){const c=r.value.map(d=>l(d)).filter(d=>n.some(y=>y===String(d)));return o.isStringValue?c.join(o.separator):c}function s(n){const p=String(l(n));return h(e.value).some(d=>d===p)}function m(n,p){if(i.value){let c=h(e.value)||[];const d=String(l(n));!c||!c.length?c.push(d):c.some(y=>y===d)?c=c.filter(y=>y!==d):c.push(d),e.value=g(c),t.emit("changeValue",e.value),t.emit("update:modelValue",e.value)}p.stopPropagation()}return{enumData:r,getValue:l,getText:u,checked:s,onClickCheckbox:m}}const E=a.defineComponent({name:"FCheckGroup",props:x,emits:["changeValue","update:modelValue"],setup(o,t){const e=a.ref(o.modelValue),i=a.ref(o.horizontal),r=a.ref(o.tabIndex),l=a.ref(o.name),{enumData:u,onClickCheckbox:h,getValue:g,getText:s,checked:m}=Q(o,t,e),n=a.computed(()=>({"farris-checkradio-hor":i.value}));a.watch(()=>o.modelValue,c=>{e.value=c});const p=a.ref([]);return a.provide(A.CHECKBOX_CONTEXT,{values:p,parentProps:o,parentContext:t}),()=>a.createVNode("div",{class:["farris-input-wrap",n.value]},[t.slots.default?t.slots.default():u.value.map((c,d)=>{const y="checkbox_"+l.value+d;return a.createVNode("div",{class:"custom-control custom-checkbox"},[a.createVNode("input",{type:"checkbox",class:"custom-control-input",name:l.value,id:y,value:g(c),checked:m(c),disabled:o.readonly||o.disabled,tabindex:r.value,onClick:C=>h(c,C)},null),a.createVNode("label",{class:"custom-control-label",for:y,title:s(c)},[s(c)])])})])}});function J(o,t,e){var P;const i=e&&e.getStyles&&e.getStyles()||"",r=e&&e.getDesignerClass&&e.getDesignerClass()||"",l=a.ref();function u(){return(t==null?void 0:t.schema.componentType)==="frame"?!1:e&&e.checkCanMoveComponent?e.checkCanMoveComponent():!0}function h(){return!1}function g(){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 m(k){if(!k||!k.value)return null;if(k.value.schema&&k.value.schema.type==="component")return k.value;const F=a.ref(k==null?void 0:k.value.parent),V=m(F);return V||null}function n(k=t){const{componentInstance:F,designerItemElementRef:V}=k;return!F||!F.value?null:F.value.canMove?V:n(k.parent)}function p(k){return!!e&&e.canAccepts(k)}function c(){return(t==null?void 0:t.schema.label)||(t==null?void 0:t.schema.title)||(t==null?void 0:t.schema.name)}function d(){}function y(k,F){F&&e!=null&&e.onAcceptMovedChildElement&&e.onAcceptMovedChildElement(F)}function C(k,F){const{componentType:V}=k;let w=z(V,k,F);e&&e.onResolveNewComponentSchema&&(w=e.onResolveNewComponentSchema(k,w));const q=V.toLowerCase().replace(/-/g,"_");return w&&!w.id&&w.type===V&&(w.id=`${q}_${Math.random().toString().slice(2,6)}`),w}function b(k){}function M(...k){if(e&&e.getPropsConfig)return e.getPropsConfig(...k)}function T(){e&&e.onRemoveComponent&&e.onRemoveComponent(),t!=null&&t.schema.contents&&t.schema.contents.map(k=>{var w;let F=k.id;k.type==="component-ref"&&(F=k.component);const V=o.value.querySelector(`#${F}-design-item`);(w=V==null?void 0:V.componentInstance)!=null&&w.value.onRemoveComponent&&V.componentInstance.value.onRemoveComponent()})}return l.value={canMove:u(),canSelectParent:h(),canDelete:g(),canNested:!s(),contents:t==null?void 0:t.schema.contents,elementRef:o,parent:(P=t==null?void 0:t.parent)==null?void 0:P.componentInstance,schema:t==null?void 0:t.schema,styles:i,designerClass:r,canAccepts:p,getBelongedComponentInstance:m,getDraggableDesignItemElement:n,getDraggingDisplayText:c,getPropConfig:M,getDragScopeElement:d,onAcceptMovedChildElement:y,onChildElementMovedOut:b,addNewChildComponentSchema:C,triggerBelongedComponentToMoveWhenMoved:!!e&&e.triggerBelongedComponentToMoveWhenMoved||a.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:!!e&&e.triggerBelongedComponentToDeleteWhenDeleted||a.ref(!1),onRemoveComponent:T},l}class ae{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 r=this.designViewModelUtils.getDgViewModel(this.viewModelId);this.designViewModelField=r.fields.find(l=>l.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:f[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 r=i.contents.findIndex(u=>u.id===t),l=B.cloneDeep(i.contents[r]);i.contents.splice(r,1),i.contents.splice(r,0,l)}}const I=class I{static getEditorTypesByMDataType(t){const e=I.fieldControlTypeMapping[t];return e||[{key:"",value:""}]}static getAllInputTypes(){const t=[];for(const e in I.fieldControlTypeMapping)I.fieldControlTypeMapping[e].forEach(i=>{t.find(r=>r.key===i.key&&r.value===i.value)||t.push({key:i.key,value:i.value})});return t}};v(I,"fieldControlTypeMapping",{String:[{key:f["input-group"].type,value:f["input-group"].name},{key:f.lookup.type,value:f.lookup.name},{key:f["date-picker"].type,value:f["date-picker"].name},{key:f["check-box"].type,value:f["check-box"].name},{key:f["check-group"].type,value:f["check-group"].name},{key:f["radio-group"].type,value:f["radio-group"].name},{key:f["combo-list"].type,value:f["combo-list"].name},{key:f.textarea.type,value:f.textarea.name}],Text:[{key:f.textarea.type,value:f.textarea.name},{key:f.lookup.type,value:f.lookup.name}],Decimal:[{key:f["number-spinner"].type,value:f["number-spinner"].name}],Integer:[{key:f["number-spinner"].type,value:f["number-spinner"].name}],Number:[{key:f["number-spinner"].type,value:f["number-spinner"].name}],BigNumber:[{key:f["number-spinner"].type,value:f["number-spinner"].name}],Date:[{key:f["date-picker"].type,value:f["date-picker"].name}],DateTime:[{key:f["date-picker"].type,value:f["date-picker"].name}],Boolean:[{key:f.switch.type,value:f.switch.name},{key:f["check-box"].type,value:f["check-box"].name}],Enum:[{key:f["combo-list"].type,value:f["combo-list"].name},{key:f["radio-group"].type,value:f["radio-group"].name}],Object:[{key:f.lookup.type,value:f.lookup.name},{key:f["combo-list"].type,value:f["combo-list"].name},{key:f["radio-group"].type,value:f["radio-group"].name}]});let L=I;const le=a.ref(0);class se{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 ce(o){let t,e;const i=new Map;let r=[];function l(m,n){const c=m.split(" ").filter(M=>M.startsWith("col-"));if(c.length===0){n.isSupportedClass=!1;return}let d=c.find(M=>/^col-([1-9]|10|11|12)$/.test(M)),y=c.find(M=>/^col-md-([1-9]|10|11|12)$/.test(M)),C=c.find(M=>/^col-xl-([1-9]|10|11|12)$/.test(M)),b=c.find(M=>/^col-el-([1-9]|10|11|12)$/.test(M));d=d||"col-12",n.columnInSM=parseInt(d.replace("col-",""),10),n.displayWidthInSM=n.columnInSM/12,n.displayWidthInSM!==1&&(n.isSupportedClass=!1),y=y||"col-md-"+n.columnInSM,n.columnInMD=parseInt(y.replace("col-md-",""),10),n.displayWidthInMD=n.columnInMD/6,[1,2].includes(n.displayWidthInMD)||(n.isSupportedClass=!1),C=C||"col-xl-"+n.columnInMD,n.columnInLG=parseInt(C.replace("col-xl-",""),10),n.displayWidthInLG=n.columnInLG/3,[1,2,3,4].includes(n.displayWidthInLG)||(n.isSupportedClass=!1),b=b||"col-el-"+n.columnInLG,n.columnInEL=parseInt(b.replace("col-el-",""),10),n.displayWidthInEL=n.columnInEL/2,[1,2,3,4,5,6].includes(n.displayWidthInEL)||(n.isSupportedClass=!1)}function u(m,n,p,c=!1){let d=!1;m.contents.forEach(y=>{if(y.type==="fieldset"){p+=1,u(y,n,p,!0),d=!0;return}d&&(p+=1,d=!1);const C=y.appearance&&y.appearance.class,b=new se;C?l(C,b):b.isSupportedClass=!1,b.label=y.label||y.id,b.id=y.id,b.group=p,c&&(b.fieldSetId=m.id),e===y.id&&(t=p),i.set(y.id,y),n.push(b)})}function h(m){const n=o.getComponentById(m);if(!n||!n.componentType||!n.componentType.startsWith("form"))return{result:!1,message:"只可以在响应式表单组件中调整响应式布局配置"};const p=o.selectNode(n,c=>c.type===U.DgControl["response-form"].type);return!p||!p.contents||p.contents.length===0?{result:!1,message:"Form区域内没有控件,请先添加控件"}:{result:!0,message:"",formNode:p}}function g(m,n){n=n||m.id;const{result:p,message:c,formNode:d}=h(n);if(!p)return{result:p,message:c};e=m.id,r=[],i.clear();const y=d.contents[0].type===U.DgControl.fieldset.type?0:1;u(d,r,y);const C=r.find(M=>!M.isSupportedClass);return{defaultState:{defaultGroupNumber:t||1,model:C?"customize":"standard"},importData:r}}function s(m,n){n=n;const{result:p,formNode:c}=h(n);if(!p)return"";const d=[];return m.forEach(y=>{var M;const C=i.get(y.id),b=C.appearance&&C.appearance.class;if(b){const P=b.split(" ").filter(he=>!he.startsWith("col-")),k="col-"+y.columnInSM,F="col-md-"+y.columnInMD,V="col-xl-"+y.columnInLG,w="col-el-"+y.columnInEL,q=[k,F,V,w].concat(P);C.appearance.class=q.join(" ")}if(y.fieldSetId){const T=c.contents.find(k=>k.id===y.fieldSetId),P=d.find(k=>k.id===y.fieldSetId);P?(M=P.contents)==null||M.push(C):(d.push(T),T.contents=[C])}else d.push(C)}),c.contents=d,c.id}return{checkCanFindFormNode:h,checkCanOpenLayoutEditor:g,changeFormControlsByResponseLayoutConfig:s,getResonseFormLayoutConfig:u}}class Y extends ae{constructor(e,i){super(e,i);v(this,"responseLayoutEditorFunction");this.responseLayoutEditorFunction=ce(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 l;const r=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:r.designViewModelField?L.getEditorTypesByMDataType((l=r.designViewModelField.type)==null?void 0:l.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(u,h){if(u)switch(u&&u.propertyID){case"type":{r.changeControlType(e,u,i);break}case"label":{u.needRefreshControlTree=!0;break}}}}}getAppearanceProperties(e,i){const r=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:r.responseLayoutEditorFunction.checkCanOpenLayoutEditor(e,r.componentId)}}},setPropertyRelates(l,u){if(l)switch(l&&l.propertyID){case"responseLayout":r.responseLayoutEditorFunction.changeFormControlsByResponseLayoutConfig(l.propertyValue,r.componentId||e.id),r.updateUnifiedLayoutAfterResponseLayoutChanged(r.componentId),r.updateElementByParentContainer(e.id,i),delete e.responseLayout;break;case"class":r.updateUnifiedLayoutAfterControlChanged(l.propertyValue,e.id,this.componentId),r.updateElementByParentContainer(e.id,i);break}}}}getEditorProperties(e){return this.getComponentConfig(e)}changeControlType(e,i,r){var m,n,p,c;const l=i.propertyValue,u=r&&r.parent&&r.parent.schema;if(!u)return;const h=u.contents.findIndex(d=>d.id===e.id),g=u.contents[h];let s;this.designViewModelField&&(this.designViewModelUtils.getDgViewModel(this.viewModelId).changeField(this.designViewModelField.id,{editor:{$type:l},name:this.designViewModelField.name,require:this.designViewModelField.require,readonly:this.designViewModelField.readonly},!1),s=this.controlCreatorUtils.setFormFieldProperty(this.designViewModelField,l)),s||(s=this.controlCreatorUtils.createFormGroupWithoutField(l)),Object.assign(s,{id:g.id,appearance:g.appearance,size:g.size,label:g.label,binding:g.binding,visible:g.visible}),Object.assign(s.editor,{isTextArea:s.isTextArea&&g.isTextArea,placeholder:(m=g.editor)==null?void 0:m.placeholder,holdPlace:(n=g.editor)==null?void 0:n.holdPlace,readonly:(p=g.editor)==null?void 0:p.readonly,require:(c=g.editor)==null?void 0:c.require}),u.contents.splice(h,1),u.contents.splice(h,0,s),r.schema=Object.assign(g,s),Array.from(document.getElementsByClassName("dgComponentSelected")).forEach(d=>d.classList.remove("dgComponentSelected")),le.value++}getComponentConfig(e,i={},r={}){const l=Object.assign({description:"编辑器",title:"编辑器",type:"input-group",$converter:"/converter/property-editor.converter"},i),u=Object.assign({readonly:{description:"",title:"只读",type:"boolean"},disabled:{description:"",title:"禁用",type:"boolean"},placeholder:{description:"空值时,输入控件内的占位文本",title:"提示文本",type:"string"}},r);return{...l,properties:{...u}}}updateUnifiedLayoutAfterControlChanged(e,i,r){const l=e.split(" ");let u=l.find(n=>/^col-([1-9]|10|11|12)$/.test(n)),h=l.find(n=>/^col-md-([1-9]|10|11|12)$/.test(n)),g=l.find(n=>/^col-xl-([1-9]|10|11|12)$/.test(n)),s=l.find(n=>/^col-el-([1-9]|10|11|12)$/.test(n));u=u||"col-12",h=h||"col-md-"+u.replace("col-",""),g=g||"col-xl-"+h.replace("col-md-",""),s=s||"col-el-"+g.replace("col-xl-","");const m={id:i,columnInSM:parseInt(u.replace("col-",""),10),columnInMD:parseInt(h.replace("col-md-",""),10),columnInLG:parseInt(g.replace("col-xl-",""),10),columnInEL:parseInt(s.replace("col-el-",""),10)};this.updateUnifiedLayoutAfterResponseLayoutChanged(r,m)}updateUnifiedLayoutAfterResponseLayoutChanged(e,i){const{formNode:r}=this.responseLayoutEditorFunction.checkCanFindFormNode(e);if(!r||!r.unifiedLayout)return;const l=[];if(this.responseLayoutEditorFunction.getResonseFormLayoutConfig(r,l,1),i){const d=l.find(y=>y.id===i.id);Object.assign(d||{},i)}const u=l.map(d=>d.columnInSM),h=l.map(d=>d.columnInMD),g=l.map(d=>d.columnInLG),s=l.map(d=>d.columnInEL),m=this.checkIsUniqueColumn(u)?u[0]:null,n=this.checkIsUniqueColumn(h)?h[0]:null,p=this.checkIsUniqueColumn(g)?g[0]:null,c=this.checkIsUniqueColumn(s)?s[0]:null;Object.assign(r.unifiedLayout,{uniqueColClassInSM:m,uniqueColClassInMD:n,uniqueColClassInLG:p,uniqueColClassInEL:c})}checkIsUniqueColumn(e){const i=new Set(e);return Array.from(i).length===1}}class de extends Y{constructor(t,e){super(t,e)}getEditorProperties(t){const e=this.getComponentConfig(t,{type:"check-group"},{placeholder:{visible:!1},disabled:{visible:!1},textField:{description:"",title:"文本字段",type:"string"},valueField:{description:"",title:"值字段",type:"string"},data:{description:"",title:"数据",type:"array",editor:{columns:[{field:t.editor.valueField,title:"值",dataType:"string"},{field:t.editor.textField,title:"名称",dataType:"string"},{field:"disabled",title:"禁用",visible:!1,dataType:"boolean",editor:{type:"switch"}}],type:"item-collection-editor",valueField:t.editor.valueField,nameField:t.editor.textField,requiredFields:[t.editor.valueField,t.editor.textField],uniqueFields:[t.editor.valueField,t.editor.textField]},refreshPanelAfterChanged:!0}});return e.setPropertyRelates=function(i){if(i)switch(i.propertyID){case"data":{i.propertyValue.parameters&&(t.editor.valueField=i.propertyValue.parameters.valueField,t.editor.textField=i.propertyValue.parameters.nameField),t.editor.data=i.propertyValue.value;break}}},e}}class ue extends Y{constructor(t,e){super(t,e)}getEditorProperties(t){return this.getComponentConfig(t,{type:"check-group"},{placeholder:{visible:!1},disabled:{visible:!1},text:{description:"",title:"显示文本",type:"string"},value:{description:"",title:"选中值",type:"string"}})}}function pe(o,t){const e=o.schema;function i(r,l){return new de(r,t).getPropertyConfig(e,l)}return{getPropsConfig:i}}function me(o,t){const e=o.schema;function i(r,l){return new ue(r,t).getPropertyConfig(e,l)}return{getPropsConfig:i}}const fe=a.defineComponent({name:"FCheckboxGroupDesign",props:x,emits:["changeValue","update:modelValue"],setup(o,t){const e=a.ref(o.modelValue),i=a.ref(o.horizontal),r=a.ref(o.tabIndex),l=a.ref(o.name),u=a.computed(()=>({"farris-checkradio-hor":i.value})),{enumData:h,onClickCheckbox:g,getValue:s,getText:m,checked:n}=Q(o,t,e),p=a.ref(),c=a.inject("designer-host-service"),d=a.inject("design-item-context"),y=pe(d,c),C=J(p,d,y);return a.onMounted(()=>{p.value.componentInstance=C}),t.expose(C.value),a.watch(()=>o.modelValue,b=>{e.value=b,t.emit("changeValue",e.value)}),()=>a.createVNode("div",{ref:p,class:["farris-input-wrap",u.value]},[h.value.map((b,M)=>{const T="checkbox_"+l.value+M;return a.createVNode("div",{class:"custom-control custom-checkbox"},[a.createVNode("input",{type:"checkbox",class:"custom-control-input",name:l.value,id:T,value:s(b),checked:n(b),disabled:o.readonly||o.disabled,tabindex:r.value,onClick:P=>g(b,P)},null),a.createVNode("label",{class:"custom-control-label",for:T,title:m(b)},[m(b)])])})])}}),ye=a.defineComponent({name:"FCheckBoxDesign",props:N,emits:[],setup(o,t){const e=a.ref(),i=a.ref(o.id),r=a.ref(o.indeterminate),l=a.inject("designer-host-service"),u=a.inject("design-item-context"),h=me(u,l),g=J(e,u,h);return a.onMounted(()=>{e.value.componentInstance=g}),a.watch(()=>o.indeterminate,s=>{r.value=s}),t.expose(g.value),()=>a.createVNode("div",{ref:e,dragref:`${u.schema.id}-container`,class:"drag-container custom-control custom-checkbox"},[a.createVNode("input",{type:"checkbox",class:"custom-control-input",id:i,value:o.value,checked:o.modelValue,disabled:o.readonly||o.disabled},null),a.createVNode("div",{class:"custom-control-label"},null)])}});E.install=o=>{o.component(E.name,E),o.component($.name,$)},E.register=(o,t,e,i)=>{o["check-box"]=$,t["check-box"]=G,o["check-group"]=E,t["check-group"]=j},E.registerDesigner=(o,t,e)=>{o["check-box"]=ye,t["check-box"]=G,o["check-group"]=fe,t["check-group"]=j},S.FCheckBox=$,S.FCheckBoxGroup=E,S.checkBoxGroupPropsResolver=j,S.checkBoxProps=N,S.checkBoxPropsResolver=G,S.checkboxGroupProps=x,S.default=E,Object.defineProperties(S,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});