ele-admin-plus 1.3.0-beta.2 → 1.3.0-beta.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 (379) hide show
  1. package/es/core-components.d.ts +9 -0
  2. package/es/core-components.js +122 -104
  3. package/es/ele-autocomplete/index.d.ts +81 -0
  4. package/es/ele-autocomplete/index.js +73 -0
  5. package/es/ele-autocomplete/props.d.ts +27 -0
  6. package/es/ele-autocomplete/props.js +11 -0
  7. package/es/ele-autocomplete/style/index.d.ts +1 -0
  8. package/es/ele-autocomplete/style/index.js +1 -0
  9. package/es/ele-autocomplete/types.d.ts +18 -0
  10. package/es/ele-cascader/index.d.ts +15 -4
  11. package/es/ele-cascader/index.js +7 -3
  12. package/es/ele-cascader/props.d.ts +4 -2
  13. package/es/ele-cascader/props.js +2 -0
  14. package/es/ele-cascader/types.d.ts +9 -0
  15. package/es/ele-check-card/index.d.ts +4 -2
  16. package/es/ele-check-card/index.js +13 -3
  17. package/es/ele-check-card/props.d.ts +2 -2
  18. package/es/ele-check-card/props.js +1 -1
  19. package/es/ele-check-card/types.d.ts +5 -0
  20. package/es/ele-checkbox-group/index.d.ts +60 -0
  21. package/es/ele-checkbox-group/index.js +74 -0
  22. package/es/ele-checkbox-group/props.d.ts +29 -0
  23. package/es/ele-checkbox-group/props.js +13 -0
  24. package/es/ele-checkbox-group/style/index.d.ts +1 -0
  25. package/es/ele-checkbox-group/style/index.js +3 -0
  26. package/es/ele-checkbox-group/types.d.ts +25 -0
  27. package/es/ele-dropdown/components/pro-dropdown.d.ts +2 -2
  28. package/es/ele-ellipsis/index.d.ts +1 -1
  29. package/es/ele-icon/index.d.ts +26 -0
  30. package/es/ele-icon/index.js +7 -15
  31. package/es/ele-icon/props.d.ts +15 -0
  32. package/es/ele-icon/props.js +5 -1
  33. package/es/ele-icon/types.d.ts +4 -0
  34. package/es/ele-mention/index.d.ts +244 -0
  35. package/es/ele-mention/index.js +52 -0
  36. package/es/ele-mention/props.d.ts +105 -0
  37. package/es/ele-mention/props.js +11 -0
  38. package/es/ele-mention/style/index.d.ts +1 -0
  39. package/es/ele-mention/style/index.js +1 -0
  40. package/es/ele-mention/types.d.ts +16 -0
  41. package/es/ele-popover/index.d.ts +3 -3
  42. package/es/ele-pro-form/components/builder-wrapper.js +3 -3
  43. package/es/ele-pro-form/components/item-type-data.js +46 -95
  44. package/es/ele-pro-form/components/render-util.d.ts +58 -6
  45. package/es/ele-pro-form/components/render-util.js +207 -65
  46. package/es/ele-pro-form/index.d.ts +9 -3
  47. package/es/ele-pro-form/index.js +37 -8
  48. package/es/ele-pro-form/props.d.ts +17 -9
  49. package/es/ele-pro-form/props.js +18 -3
  50. package/es/ele-pro-form/style/index.js +16 -19
  51. package/es/ele-pro-form/style/index.scss +102 -0
  52. package/es/ele-pro-form/types.d.ts +3 -23
  53. package/es/ele-pro-form/util.d.ts +16 -1
  54. package/es/ele-pro-form/util.js +52 -4
  55. package/es/ele-pro-form-builder/components/body-form.d.ts +5 -1
  56. package/es/ele-pro-form-builder/components/body-form.js +9 -6
  57. package/es/ele-pro-form-builder/components/body-header.d.ts +16 -2
  58. package/es/ele-pro-form-builder/components/body-header.js +92 -30
  59. package/es/ele-pro-form-builder/components/build-core.d.ts +58 -0
  60. package/es/ele-pro-form-builder/components/build-core.js +195 -0
  61. package/es/ele-pro-form-builder/components/build-util.d.ts +3 -2
  62. package/es/ele-pro-form-builder/components/build-util.js +14 -6
  63. package/es/ele-pro-form-builder/components/children-edit.d.ts +2 -2
  64. package/es/ele-pro-form-builder/components/children-edit.js +55 -49
  65. package/es/ele-pro-form-builder/components/code-editer.d.ts +21 -0
  66. package/es/ele-pro-form-builder/components/code-editer.js +27 -0
  67. package/es/ele-pro-form-builder/components/code-generator.d.ts +110 -0
  68. package/es/ele-pro-form-builder/components/code-generator.js +476 -0
  69. package/es/ele-pro-form-builder/components/code-js-var.d.ts +2 -17
  70. package/es/ele-pro-form-builder/components/code-js-var.js +15 -84
  71. package/es/ele-pro-form-builder/components/code-template.d.ts +4 -118
  72. package/es/ele-pro-form-builder/components/code-template.js +34 -486
  73. package/es/ele-pro-form-builder/components/code-util.d.ts +13 -13
  74. package/es/ele-pro-form-builder/components/code-util.js +9 -9
  75. package/es/ele-pro-form-builder/components/component-data.d.ts +2 -0
  76. package/es/ele-pro-form-builder/components/component-data.js +4089 -1154
  77. package/es/ele-pro-form-builder/components/component-list.d.ts +5 -1
  78. package/es/ele-pro-form-builder/components/component-list.js +7 -4
  79. package/es/ele-pro-form-builder/components/component-name.js +1 -1
  80. package/es/ele-pro-form-builder/components/component-picker.d.ts +42 -0
  81. package/es/ele-pro-form-builder/components/component-picker.js +56 -0
  82. package/es/ele-pro-form-builder/components/config-form.d.ts +8 -0
  83. package/es/ele-pro-form-builder/components/config-form.js +38 -14
  84. package/es/ele-pro-form-builder/components/event-edit.d.ts +39 -0
  85. package/es/ele-pro-form-builder/components/event-edit.js +121 -0
  86. package/es/ele-pro-form-builder/components/html-edit.d.ts +31 -0
  87. package/es/ele-pro-form-builder/components/html-edit.js +97 -0
  88. package/es/ele-pro-form-builder/components/if-edit.d.ts +35 -0
  89. package/es/ele-pro-form-builder/components/if-edit.js +106 -0
  90. package/es/ele-pro-form-builder/components/import-modal.d.ts +38 -0
  91. package/es/ele-pro-form-builder/components/import-modal.js +125 -0
  92. package/es/ele-pro-form-builder/components/json-input.d.ts +4 -0
  93. package/es/ele-pro-form-builder/components/json-input.js +4 -3
  94. package/es/ele-pro-form-builder/components/options-code.d.ts +33 -0
  95. package/es/ele-pro-form-builder/components/options-code.js +56 -0
  96. package/es/ele-pro-form-builder/components/options-edit.d.ts +25 -30
  97. package/es/ele-pro-form-builder/components/options-edit.js +64 -428
  98. package/es/ele-pro-form-builder/components/options-table.d.ts +33 -0
  99. package/es/ele-pro-form-builder/components/options-table.js +381 -0
  100. package/es/ele-pro-form-builder/components/outline-list.js +8 -17
  101. package/es/ele-pro-form-builder/components/outline-tree.d.ts +8 -2
  102. package/es/ele-pro-form-builder/components/outline-tree.js +37 -64
  103. package/es/ele-pro-form-builder/components/preview-modal.d.ts +4 -0
  104. package/es/ele-pro-form-builder/components/preview-modal.js +14 -14
  105. package/es/ele-pro-form-builder/components/props-form.d.ts +19 -1
  106. package/es/ele-pro-form-builder/components/props-form.js +130 -55
  107. package/es/ele-pro-form-builder/components/source-edit.d.ts +31 -0
  108. package/es/ele-pro-form-builder/components/source-edit.js +111 -0
  109. package/es/ele-pro-form-builder/components/table-tool-menu.d.ts +6 -1
  110. package/es/ele-pro-form-builder/components/table-tool-menu.js +23 -7
  111. package/es/ele-pro-form-builder/components/table-util.d.ts +17 -9
  112. package/es/ele-pro-form-builder/components/table-util.js +52 -29
  113. package/es/ele-pro-form-builder/components/template-list.js +2 -5
  114. package/es/ele-pro-form-builder/index.d.ts +24 -4
  115. package/es/ele-pro-form-builder/index.js +175 -130
  116. package/es/ele-pro-form-builder/props.d.ts +17 -2
  117. package/es/ele-pro-form-builder/props.js +16 -1
  118. package/es/ele-pro-form-builder/style/index.js +10 -0
  119. package/es/ele-pro-form-builder/style/index.scss +96 -261
  120. package/es/ele-pro-form-builder/types.d.ts +68 -76
  121. package/es/ele-pro-form-builder/util.d.ts +10 -76
  122. package/es/ele-pro-form-builder/util.js +104 -200
  123. package/es/ele-pro-layout/index.d.ts +1 -1
  124. package/es/ele-pro-table/props.d.ts +3 -3
  125. package/es/ele-radio-group/index.d.ts +61 -0
  126. package/es/ele-radio-group/index.js +74 -0
  127. package/es/ele-radio-group/props.d.ts +28 -0
  128. package/es/ele-radio-group/props.js +13 -0
  129. package/es/ele-radio-group/style/index.d.ts +1 -0
  130. package/es/ele-radio-group/style/index.js +3 -0
  131. package/es/ele-radio-group/types.d.ts +25 -0
  132. package/es/ele-select/index.d.ts +14 -3
  133. package/es/ele-select/index.js +12 -6
  134. package/es/ele-select/props.d.ts +2 -2
  135. package/es/ele-select/props.js +1 -1
  136. package/es/ele-select/types.d.ts +6 -1
  137. package/es/ele-select-tree/index.d.ts +21 -0
  138. package/es/ele-select-tree/index.js +57 -0
  139. package/es/ele-select-tree/style/index.d.ts +1 -0
  140. package/es/ele-select-tree/style/index.js +1 -0
  141. package/es/ele-select-tree/types.d.ts +14 -0
  142. package/es/ele-steps/index.d.ts +8 -19
  143. package/es/ele-steps/index.js +13 -7
  144. package/es/ele-steps/props.d.ts +2 -5
  145. package/es/ele-steps/props.js +1 -4
  146. package/es/ele-steps/types.d.ts +5 -0
  147. package/es/ele-tab-bar/index.d.ts +20 -0
  148. package/es/ele-tab-bar/index.js +43 -0
  149. package/es/ele-tab-bar/props.d.ts +25 -0
  150. package/es/ele-tab-bar/props.js +18 -0
  151. package/es/ele-tab-bar/style/css-var.scss +8 -0
  152. package/es/ele-tab-bar/style/index.d.ts +1 -0
  153. package/es/ele-tab-bar/style/index.js +1 -0
  154. package/es/ele-tab-bar/style/index.scss +87 -0
  155. package/es/ele-tab-bar/types.d.ts +14 -0
  156. package/es/ele-timeline/style/css-var.scss +1 -1
  157. package/es/ele-timeline/style/index.scss +2 -2
  158. package/es/ele-transfer/index.d.ts +94 -0
  159. package/es/ele-transfer/index.js +54 -0
  160. package/es/ele-transfer/props.d.ts +39 -0
  161. package/es/ele-transfer/props.js +11 -0
  162. package/es/ele-transfer/style/index.d.ts +1 -0
  163. package/es/ele-transfer/style/index.js +1 -0
  164. package/es/ele-transfer/types.d.ts +16 -0
  165. package/es/ele-tree-select/index.d.ts +8 -4
  166. package/es/ele-tree-select/index.js +18 -12
  167. package/es/ele-tree-select/props.d.ts +4 -4
  168. package/es/ele-tree-select/types.d.ts +13 -0
  169. package/es/ele-tree-table/components/table-body.d.ts +57 -0
  170. package/es/ele-tree-table/components/table-body.js +100 -0
  171. package/es/ele-tree-table/components/table-row.d.ts +53 -0
  172. package/es/ele-tree-table/components/table-row.js +105 -0
  173. package/es/ele-tree-table/index.d.ts +30 -0
  174. package/es/ele-tree-table/index.js +155 -0
  175. package/es/ele-tree-table/props.d.ts +25 -0
  176. package/es/ele-tree-table/props.js +20 -0
  177. package/es/ele-tree-table/style/css-var.scss +8 -0
  178. package/es/ele-tree-table/style/index.d.ts +1 -0
  179. package/es/ele-tree-table/style/index.js +2 -0
  180. package/es/ele-tree-table/style/index.scss +224 -0
  181. package/es/ele-tree-table/types.d.ts +27 -0
  182. package/es/style/plus.scss +2 -0
  183. package/es/style/themes/default.scss +18 -0
  184. package/es/style/themes/theme-util.scss +4 -0
  185. package/es/utils/hook.d.ts +18 -3
  186. package/es/utils/hook.js +37 -1
  187. package/lib/core-components.cjs +122 -104
  188. package/lib/core-components.d.ts +9 -0
  189. package/lib/ele-autocomplete/index.cjs +72 -0
  190. package/lib/ele-autocomplete/index.d.ts +81 -0
  191. package/lib/ele-autocomplete/props.cjs +13 -0
  192. package/lib/ele-autocomplete/props.d.ts +27 -0
  193. package/lib/ele-autocomplete/style/index.cjs +2 -0
  194. package/lib/ele-autocomplete/style/index.d.ts +1 -0
  195. package/lib/ele-autocomplete/types.d.ts +18 -0
  196. package/lib/ele-cascader/index.cjs +6 -2
  197. package/lib/ele-cascader/index.d.ts +15 -4
  198. package/lib/ele-cascader/props.cjs +2 -0
  199. package/lib/ele-cascader/props.d.ts +4 -2
  200. package/lib/ele-cascader/types.d.ts +9 -0
  201. package/lib/ele-check-card/index.cjs +13 -3
  202. package/lib/ele-check-card/index.d.ts +4 -2
  203. package/lib/ele-check-card/props.cjs +1 -1
  204. package/lib/ele-check-card/props.d.ts +2 -2
  205. package/lib/ele-check-card/types.d.ts +5 -0
  206. package/lib/ele-checkbox-group/index.cjs +73 -0
  207. package/lib/ele-checkbox-group/index.d.ts +60 -0
  208. package/lib/ele-checkbox-group/props.cjs +15 -0
  209. package/lib/ele-checkbox-group/props.d.ts +29 -0
  210. package/lib/ele-checkbox-group/style/index.cjs +4 -0
  211. package/lib/ele-checkbox-group/style/index.d.ts +1 -0
  212. package/lib/ele-checkbox-group/types.d.ts +25 -0
  213. package/lib/ele-config-provider/components/receiver-view.cjs +2 -2
  214. package/lib/ele-dropdown/components/pro-dropdown.d.ts +2 -2
  215. package/lib/ele-ellipsis/index.d.ts +1 -1
  216. package/lib/ele-icon/index.cjs +7 -15
  217. package/lib/ele-icon/index.d.ts +26 -0
  218. package/lib/ele-icon/props.cjs +5 -1
  219. package/lib/ele-icon/props.d.ts +15 -0
  220. package/lib/ele-icon/types.d.ts +4 -0
  221. package/lib/ele-mention/index.cjs +51 -0
  222. package/lib/ele-mention/index.d.ts +244 -0
  223. package/lib/ele-mention/props.cjs +13 -0
  224. package/lib/ele-mention/props.d.ts +105 -0
  225. package/lib/ele-mention/style/index.cjs +2 -0
  226. package/lib/ele-mention/style/index.d.ts +1 -0
  227. package/lib/ele-mention/types.d.ts +16 -0
  228. package/lib/ele-popover/index.d.ts +3 -3
  229. package/lib/ele-pro-form/components/builder-wrapper.cjs +2 -2
  230. package/lib/ele-pro-form/components/item-type-data.cjs +45 -94
  231. package/lib/ele-pro-form/components/render-util.cjs +207 -65
  232. package/lib/ele-pro-form/components/render-util.d.ts +58 -6
  233. package/lib/ele-pro-form/index.cjs +36 -7
  234. package/lib/ele-pro-form/index.d.ts +9 -3
  235. package/lib/ele-pro-form/props.cjs +18 -3
  236. package/lib/ele-pro-form/props.d.ts +17 -9
  237. package/lib/ele-pro-form/style/index.cjs +16 -19
  238. package/lib/ele-pro-form/style/index.scss +102 -0
  239. package/lib/ele-pro-form/types.d.ts +3 -23
  240. package/lib/ele-pro-form/util.cjs +50 -4
  241. package/lib/ele-pro-form/util.d.ts +16 -1
  242. package/lib/ele-pro-form-builder/components/body-form.cjs +9 -6
  243. package/lib/ele-pro-form-builder/components/body-form.d.ts +5 -1
  244. package/lib/ele-pro-form-builder/components/body-header.cjs +89 -27
  245. package/lib/ele-pro-form-builder/components/body-header.d.ts +16 -2
  246. package/lib/ele-pro-form-builder/components/build-core.cjs +195 -0
  247. package/lib/ele-pro-form-builder/components/build-core.d.ts +58 -0
  248. package/lib/ele-pro-form-builder/components/build-util.cjs +16 -8
  249. package/lib/ele-pro-form-builder/components/build-util.d.ts +3 -2
  250. package/lib/ele-pro-form-builder/components/children-edit.cjs +55 -49
  251. package/lib/ele-pro-form-builder/components/children-edit.d.ts +2 -2
  252. package/lib/ele-pro-form-builder/components/code-editer.cjs +26 -0
  253. package/lib/ele-pro-form-builder/components/code-editer.d.ts +21 -0
  254. package/lib/ele-pro-form-builder/components/code-generator.cjs +476 -0
  255. package/lib/ele-pro-form-builder/components/code-generator.d.ts +110 -0
  256. package/lib/ele-pro-form-builder/components/code-js-var.cjs +14 -100
  257. package/lib/ele-pro-form-builder/components/code-js-var.d.ts +2 -17
  258. package/lib/ele-pro-form-builder/components/code-template.cjs +34 -486
  259. package/lib/ele-pro-form-builder/components/code-template.d.ts +4 -118
  260. package/lib/ele-pro-form-builder/components/code-util.cjs +9 -9
  261. package/lib/ele-pro-form-builder/components/code-util.d.ts +13 -13
  262. package/lib/ele-pro-form-builder/components/component-data.cjs +4088 -1153
  263. package/lib/ele-pro-form-builder/components/component-data.d.ts +2 -0
  264. package/lib/ele-pro-form-builder/components/component-list.cjs +9 -6
  265. package/lib/ele-pro-form-builder/components/component-list.d.ts +5 -1
  266. package/lib/ele-pro-form-builder/components/component-name.cjs +2 -2
  267. package/lib/ele-pro-form-builder/components/component-picker.cjs +55 -0
  268. package/lib/ele-pro-form-builder/components/component-picker.d.ts +42 -0
  269. package/lib/ele-pro-form-builder/components/config-form.cjs +38 -14
  270. package/lib/ele-pro-form-builder/components/config-form.d.ts +8 -0
  271. package/lib/ele-pro-form-builder/components/event-edit.cjs +120 -0
  272. package/lib/ele-pro-form-builder/components/event-edit.d.ts +39 -0
  273. package/lib/ele-pro-form-builder/components/html-edit.cjs +96 -0
  274. package/lib/ele-pro-form-builder/components/html-edit.d.ts +31 -0
  275. package/lib/ele-pro-form-builder/components/if-edit.cjs +105 -0
  276. package/lib/ele-pro-form-builder/components/if-edit.d.ts +35 -0
  277. package/lib/ele-pro-form-builder/components/import-modal.cjs +124 -0
  278. package/lib/ele-pro-form-builder/components/import-modal.d.ts +38 -0
  279. package/lib/ele-pro-form-builder/components/json-input.cjs +4 -3
  280. package/lib/ele-pro-form-builder/components/json-input.d.ts +4 -0
  281. package/lib/ele-pro-form-builder/components/options-code.cjs +55 -0
  282. package/lib/ele-pro-form-builder/components/options-code.d.ts +33 -0
  283. package/lib/ele-pro-form-builder/components/options-edit.cjs +62 -426
  284. package/lib/ele-pro-form-builder/components/options-edit.d.ts +25 -30
  285. package/lib/ele-pro-form-builder/components/options-table.cjs +380 -0
  286. package/lib/ele-pro-form-builder/components/options-table.d.ts +33 -0
  287. package/lib/ele-pro-form-builder/components/outline-list.cjs +8 -17
  288. package/lib/ele-pro-form-builder/components/outline-tree.cjs +36 -63
  289. package/lib/ele-pro-form-builder/components/outline-tree.d.ts +8 -2
  290. package/lib/ele-pro-form-builder/components/preview-modal.cjs +12 -12
  291. package/lib/ele-pro-form-builder/components/preview-modal.d.ts +4 -0
  292. package/lib/ele-pro-form-builder/components/props-form.cjs +129 -54
  293. package/lib/ele-pro-form-builder/components/props-form.d.ts +19 -1
  294. package/lib/ele-pro-form-builder/components/source-edit.cjs +110 -0
  295. package/lib/ele-pro-form-builder/components/source-edit.d.ts +31 -0
  296. package/lib/ele-pro-form-builder/components/table-tool-menu.cjs +23 -7
  297. package/lib/ele-pro-form-builder/components/table-tool-menu.d.ts +6 -1
  298. package/lib/ele-pro-form-builder/components/table-util.cjs +56 -33
  299. package/lib/ele-pro-form-builder/components/table-util.d.ts +17 -9
  300. package/lib/ele-pro-form-builder/components/template-list.cjs +1 -4
  301. package/lib/ele-pro-form-builder/index.cjs +174 -129
  302. package/lib/ele-pro-form-builder/index.d.ts +24 -4
  303. package/lib/ele-pro-form-builder/props.cjs +16 -1
  304. package/lib/ele-pro-form-builder/props.d.ts +17 -2
  305. package/lib/ele-pro-form-builder/style/index.cjs +10 -0
  306. package/lib/ele-pro-form-builder/style/index.scss +96 -261
  307. package/lib/ele-pro-form-builder/types.d.ts +68 -76
  308. package/lib/ele-pro-form-builder/util.cjs +104 -200
  309. package/lib/ele-pro-form-builder/util.d.ts +10 -76
  310. package/lib/ele-pro-layout/index.d.ts +1 -1
  311. package/lib/ele-pro-table/props.d.ts +3 -3
  312. package/lib/ele-radio-group/index.cjs +73 -0
  313. package/lib/ele-radio-group/index.d.ts +61 -0
  314. package/lib/ele-radio-group/props.cjs +15 -0
  315. package/lib/ele-radio-group/props.d.ts +28 -0
  316. package/lib/ele-radio-group/style/index.cjs +4 -0
  317. package/lib/ele-radio-group/style/index.d.ts +1 -0
  318. package/lib/ele-radio-group/types.d.ts +25 -0
  319. package/lib/ele-select/index.cjs +10 -4
  320. package/lib/ele-select/index.d.ts +14 -3
  321. package/lib/ele-select/props.cjs +1 -1
  322. package/lib/ele-select/props.d.ts +2 -2
  323. package/lib/ele-select/types.d.ts +6 -1
  324. package/lib/ele-select-tree/index.cjs +56 -0
  325. package/lib/ele-select-tree/index.d.ts +21 -0
  326. package/lib/ele-select-tree/style/index.cjs +2 -0
  327. package/lib/ele-select-tree/style/index.d.ts +1 -0
  328. package/lib/ele-select-tree/types.d.ts +14 -0
  329. package/lib/ele-steps/index.cjs +12 -6
  330. package/lib/ele-steps/index.d.ts +8 -19
  331. package/lib/ele-steps/props.cjs +1 -4
  332. package/lib/ele-steps/props.d.ts +2 -5
  333. package/lib/ele-steps/types.d.ts +5 -0
  334. package/lib/ele-tab-bar/index.cjs +42 -0
  335. package/lib/ele-tab-bar/index.d.ts +20 -0
  336. package/lib/ele-tab-bar/props.cjs +18 -0
  337. package/lib/ele-tab-bar/props.d.ts +25 -0
  338. package/lib/ele-tab-bar/style/css-var.scss +8 -0
  339. package/lib/ele-tab-bar/style/index.cjs +2 -0
  340. package/lib/ele-tab-bar/style/index.d.ts +1 -0
  341. package/lib/ele-tab-bar/style/index.scss +87 -0
  342. package/lib/ele-tab-bar/types.d.ts +14 -0
  343. package/lib/ele-timeline/style/css-var.scss +1 -1
  344. package/lib/ele-timeline/style/index.scss +2 -2
  345. package/lib/ele-transfer/index.cjs +53 -0
  346. package/lib/ele-transfer/index.d.ts +94 -0
  347. package/lib/ele-transfer/props.cjs +13 -0
  348. package/lib/ele-transfer/props.d.ts +39 -0
  349. package/lib/ele-transfer/style/index.cjs +2 -0
  350. package/lib/ele-transfer/style/index.d.ts +1 -0
  351. package/lib/ele-transfer/types.d.ts +16 -0
  352. package/lib/ele-tree-select/index.cjs +17 -11
  353. package/lib/ele-tree-select/index.d.ts +8 -4
  354. package/lib/ele-tree-select/props.d.ts +4 -4
  355. package/lib/ele-tree-select/types.d.ts +13 -0
  356. package/lib/ele-tree-table/components/table-body.cjs +99 -0
  357. package/lib/ele-tree-table/components/table-body.d.ts +57 -0
  358. package/lib/ele-tree-table/components/table-row.cjs +104 -0
  359. package/lib/ele-tree-table/components/table-row.d.ts +53 -0
  360. package/lib/ele-tree-table/index.cjs +154 -0
  361. package/lib/ele-tree-table/index.d.ts +30 -0
  362. package/lib/ele-tree-table/props.cjs +20 -0
  363. package/lib/ele-tree-table/props.d.ts +25 -0
  364. package/lib/ele-tree-table/style/css-var.scss +8 -0
  365. package/lib/ele-tree-table/style/index.cjs +3 -0
  366. package/lib/ele-tree-table/style/index.d.ts +1 -0
  367. package/lib/ele-tree-table/style/index.scss +224 -0
  368. package/lib/ele-tree-table/types.d.ts +27 -0
  369. package/lib/style/plus.scss +2 -0
  370. package/lib/style/themes/default.scss +18 -0
  371. package/lib/style/themes/theme-util.scss +4 -0
  372. package/lib/utils/hook.cjs +36 -0
  373. package/lib/utils/hook.d.ts +18 -3
  374. package/package.json +1 -1
  375. package/typings/global.d.ts +8 -0
  376. package/es/ele-pro-form-builder/components/tree-table.d.ts +0 -3253
  377. package/es/ele-pro-form-builder/components/tree-table.js +0 -239
  378. package/lib/ele-pro-form-builder/components/tree-table.cjs +0 -238
  379. package/lib/ele-pro-form-builder/components/tree-table.d.ts +0 -3253
@@ -10,6 +10,68 @@ function _isSlot(s) {
10
10
  return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
11
11
  }
12
12
  const sortableGroupName = "ProFormBuilderBodySortGroup";
13
+ const codeStringPrefix = "/*__PRO_FORM__*/";
14
+ function getItemTypeData(item, itemTypeData) {
15
+ var _a;
16
+ let itemType = item.type;
17
+ const divTag = (_a = item.props) == null ? void 0 : _a.is;
18
+ if (itemType === "div" && divTag) {
19
+ if (divTag === "tr") {
20
+ itemType = "tableRow";
21
+ } else if (divTag === "td") {
22
+ itemType = "tableCell";
23
+ } else if (divTag === "ele-table" || divTag === "EleTable") {
24
+ itemType = "table";
25
+ } else if (divTag === "el-carousel" || divTag === "ElCarousel") {
26
+ itemType = "carousel";
27
+ } else if (divTag === "el-carousel-item" || divTag === "ElCarouselItem") {
28
+ itemType = "carouselItem";
29
+ } else if (divTag === "el-icon" || divTag === "ElIcon") {
30
+ itemType = "icon";
31
+ } else if (divTag === "ele-admin-layout" || divTag === "EleAdminLayout") {
32
+ itemType = "adminLayout";
33
+ } else if (divTag === "el-alert" || divTag === "EleAlert") {
34
+ itemType = "alert";
35
+ }
36
+ }
37
+ const typeData = [...itemTypeData || [], ...defaultItemTypeData].find((d) => d.type === itemType);
38
+ return typeData;
39
+ }
40
+ function getComponentLegacyProps(item) {
41
+ const result = {};
42
+ const itemType = item.type;
43
+ if (itemType) {
44
+ const options = item.options;
45
+ if (options) {
46
+ if (["select", "multipleSelect", "radio", "radioButton", "checkbox", "checkboxButton", "cascader", "multipleCascader", "mention"].includes(itemType)) {
47
+ result.options = options;
48
+ } else if (["treeSelect", "treeMultipleSelect"].includes(itemType)) {
49
+ result.data = options;
50
+ } else if (["checkCard", "multipleCheckCard"].includes(itemType)) {
51
+ result.items = options;
52
+ } else if (itemType === "autocomplete") {
53
+ result.fetchSuggestions = options;
54
+ }
55
+ }
56
+ if (item.label != null) {
57
+ if (["descriptionsItem", "carouselItem"].includes(itemType)) {
58
+ result.label = item.label;
59
+ } else if (["alert", "collapseItem", "descriptions"].includes(itemType)) {
60
+ result.title = item.label;
61
+ } else if (itemType === "card") {
62
+ result.header = item.label;
63
+ } else if (itemType === "image") {
64
+ result.alt = item.label;
65
+ }
66
+ }
67
+ if (item.prop != null) {
68
+ if (["collapseItem", "carouselItem"].includes(itemType)) {
69
+ result.name = item.prop;
70
+ }
71
+ }
72
+ }
73
+ return result;
74
+ }
13
75
  function getRuleMessage(label, requiredMessage, placeholder) {
14
76
  if (typeof requiredMessage === "string" && requiredMessage) {
15
77
  return requiredMessage;
@@ -19,8 +81,25 @@ function getRuleMessage(label, requiredMessage, placeholder) {
19
81
  }
20
82
  return `${label ?? ""}必填`;
21
83
  }
22
- function isShowItem(item, form, items, searchExpand) {
23
- if (!item.prop) {
84
+ function getComponentRefName(item) {
85
+ const prop = item.prop;
86
+ if (prop == null || prop === "" || String(prop).trim() === "") {
87
+ return `${String(item.key)}Ref`;
88
+ }
89
+ return `${String(prop)}Ref`;
90
+ }
91
+ function getCodeResult(code, form, items, searchExpand, httpRequest, getProFormRefs) {
92
+ try {
93
+ return new Function("form", "items", "searchExpand", "httpRequest", "getProFormRefs", `return (${code})`)(form, items, searchExpand, httpRequest, getProFormRefs);
94
+ } catch (e) {
95
+ console.error(e);
96
+ }
97
+ }
98
+ function isShowItem(item, form, items, searchExpand, editable) {
99
+ if (editable) {
100
+ return true;
101
+ }
102
+ if (item.prop == null && item.key == null) {
24
103
  return false;
25
104
  }
26
105
  if (item.vIf != null) {
@@ -28,12 +107,7 @@ function isShowItem(item, form, items, searchExpand) {
28
107
  return item.vIf(form, items, searchExpand);
29
108
  }
30
109
  if (typeof item.vIf === "string" && item.vIf.trim().length) {
31
- try {
32
- return new Function("form", "items", "searchExpand", "formItems", "formData", `return (${item.vIf})`)(form, items, searchExpand, items, form);
33
- } catch (e) {
34
- console.error(e);
35
- return false;
36
- }
110
+ return getCodeResult(item.vIf, form, items, searchExpand);
37
111
  }
38
112
  if (item.vIf === false) {
39
113
  return false;
@@ -41,49 +115,100 @@ function isShowItem(item, form, items, searchExpand) {
41
115
  }
42
116
  return true;
43
117
  }
44
- function translateJsCode(code, model, items, searchExpand) {
118
+ function translateJsCode(code, form, items, searchExpand, httpRequest, getProFormRefs, getAndCacheCode) {
45
119
  if (code != null) {
46
120
  if (typeof code === "string") {
47
- if (code.startsWith("/*__PRO_FORM__*/")) {
48
- try {
49
- return new Function("form", "items", "searchExpand", "formData", "formItems", `return (${code})`)(model, items, searchExpand, model, items);
50
- } catch (e) {
51
- console.error(e);
121
+ if (code.startsWith(codeStringPrefix)) {
122
+ const result = getCodeResult(code, form, items, searchExpand, httpRequest, getProFormRefs);
123
+ if (getAndCacheCode && typeof result === "function") {
124
+ return {
125
+ result: getAndCacheCode(code, result),
126
+ isCode: true
127
+ };
52
128
  }
129
+ return {
130
+ result,
131
+ isCode: true
132
+ };
53
133
  }
54
- return code;
134
+ return {
135
+ result: code,
136
+ isCode: false
137
+ };
55
138
  } else if (Array.isArray(code)) {
56
- return code.map((c) => translateJsCode(c, model, items, searchExpand));
139
+ const arrayResult = [];
140
+ let arrayIsCode = false;
141
+ code.forEach((c) => {
142
+ const {
143
+ result,
144
+ isCode
145
+ } = translateJsCode(c, form, items, searchExpand, httpRequest, getProFormRefs, getAndCacheCode);
146
+ arrayResult.push(result);
147
+ if (isCode) {
148
+ arrayIsCode = true;
149
+ }
150
+ });
151
+ if (arrayIsCode) {
152
+ return {
153
+ result: arrayResult,
154
+ isCode: true
155
+ };
156
+ }
157
+ return {
158
+ result: code,
159
+ isCode: false
160
+ };
57
161
  } else if (typeof code === "object") {
58
- const result = {};
162
+ const objectResult = {};
163
+ let objectIsCode = false;
59
164
  Object.keys(code).forEach((k) => {
60
- result[k] = translateJsCode(code[k], model, items, searchExpand);
165
+ const {
166
+ result,
167
+ isCode
168
+ } = translateJsCode(code[k], form, items, searchExpand, httpRequest, getProFormRefs, getAndCacheCode);
169
+ objectResult[k] = result;
170
+ if (isCode) {
171
+ objectIsCode = true;
172
+ }
61
173
  });
62
- return result;
174
+ if (objectIsCode) {
175
+ return {
176
+ result: objectResult,
177
+ isCode: true
178
+ };
179
+ }
180
+ return {
181
+ result: code,
182
+ isCode: false
183
+ };
63
184
  }
64
185
  }
65
- return code;
186
+ return {
187
+ result: code,
188
+ isCode: false
189
+ };
66
190
  }
67
191
  function renderProFormItem(props) {
68
- var _a, _b, _c;
192
+ var _a, _b, _c, _d;
69
193
  const slots = props.slots || {};
70
- const itemType = props.item.type;
71
194
  const formData = props.model || {};
72
- const typeSlot = itemType ? slots[itemType] : void 0;
73
- const typeData = [...props.itemTypeData || [], ...defaultItemTypeData].find((d) => d.type === itemType);
195
+ const typeData = getItemTypeData(props.item, props.itemTypeData);
196
+ const typeSlot = ((_a = props.item) == null ? void 0 : _a.type) ? slots[props.item.type] : void 0;
74
197
  if (!typeSlot && !typeData) {
75
198
  return;
76
199
  }
77
200
  const modelValue = props.item.prop == null ? void 0 : getValue(formData, props.item.prop);
78
201
  const handleUpdateModelValue = (value) => {
79
202
  const propName = props.item.prop;
80
- props.updateItemValue(propName, value);
203
+ if (propName != null && props.updateItemValue) {
204
+ props.updateItemValue(propName, value);
205
+ }
81
206
  };
82
207
  const propsFunctionParams = {
83
208
  item: props.item,
84
209
  modelValue,
85
210
  updateModelValue: handleUpdateModelValue,
86
- isShowFormItem: (cItem) => isShowItem(cItem, formData, props.formItems || [], props.searchExpand),
211
+ isShowFormItem: (cItem) => isShowItem(cItem, formData, props.formItems || [], props.searchExpand, props.editable),
87
212
  renderChildren: (cItem, cSortDisabled, cContainerSelectable) => renderProFormContent({
88
213
  model: formData,
89
214
  items: cItem.children,
@@ -100,8 +225,11 @@ function renderProFormItem(props) {
100
225
  updateItemValue: props.updateItemValue,
101
226
  updateItemsData: props.updateItemsData,
102
227
  updateActiveItemKey: props.updateActiveItemKey,
103
- slots,
104
- itemTypeData: props.itemTypeData
228
+ getAndCacheCode: props.getAndCacheCode,
229
+ itemTypeData: props.itemTypeData,
230
+ httpRequest: props.httpRequest,
231
+ getProFormRefs: props.getProFormRefs,
232
+ slots
105
233
  })
106
234
  };
107
235
  const slotProFormParams = {
@@ -113,6 +241,8 @@ function renderProFormItem(props) {
113
241
  editable: props.editable,
114
242
  activeItemKey: props.activeItemKey,
115
243
  itemTypeData: props.itemTypeData,
244
+ httpRequest: props.httpRequest,
245
+ getProFormRefs: props.getProFormRefs,
116
246
  updateItemValue: props.updateItemValue,
117
247
  updateItemsData: props.updateItemsData,
118
248
  updateActiveItemKey: props.updateActiveItemKey,
@@ -141,10 +271,10 @@ function renderProFormItem(props) {
141
271
  });
142
272
  }
143
273
  if (!itemSlots.default) {
274
+ const csd = !(props.item.containerDraggable ?? !(typeData == null ? void 0 : typeData.sortDisabled));
144
275
  const isRenderLabel = (typeData == null ? void 0 : typeData.renderLabelText) && props.item.label != null && props.item.label !== "";
145
- const isRenderChildren = (!typeData || typeData.isContainer) && (!(typeData == null ? void 0 : typeData.sortDisabled) && props.editable || props.item.children && props.item.children.length);
146
- const isRenderOptions = props.item.options && (typeData == null ? void 0 : typeData.optionsComponent);
147
- if (isRenderLabel || isRenderChildren || isRenderOptions) {
276
+ const isRenderChildren = (!typeData || typeData.isContainer) && (!csd && props.editable || props.item.children && props.item.children.length);
277
+ if (isRenderLabel || isRenderChildren) {
148
278
  itemSlots.default = () => {
149
279
  const nodes = [];
150
280
  if (isRenderLabel && props.item.label != null) {
@@ -161,14 +291,17 @@ function renderProFormItem(props) {
161
291
  formItems: props.formItems,
162
292
  searchExpand: props.searchExpand,
163
293
  editable: props.editable,
164
- sortDisabled: !!(typeData == null ? void 0 : typeData.sortDisabled),
294
+ sortDisabled: csd,
165
295
  containerSelectable: !!(typeData == null ? void 0 : typeData.containerSelectable),
166
296
  activeItemKey: props.activeItemKey,
167
297
  updateItemValue: props.updateItemValue,
168
298
  updateItemsData: props.updateItemsData,
169
299
  updateActiveItemKey: props.updateActiveItemKey,
170
- slots,
171
- itemTypeData: props.itemTypeData
300
+ getAndCacheCode: props.getAndCacheCode,
301
+ itemTypeData: props.itemTypeData,
302
+ httpRequest: props.httpRequest,
303
+ getProFormRefs: props.getProFormRefs,
304
+ slots
172
305
  });
173
306
  if (contentNode) {
174
307
  if (Array.isArray(contentNode)) {
@@ -179,16 +312,6 @@ function renderProFormItem(props) {
179
312
  nodes.push(contentNode);
180
313
  }
181
314
  }
182
- } else if (isRenderOptions && (typeData == null ? void 0 : typeData.optionsComponent)) {
183
- const optionsComponent = typeData.optionsComponent;
184
- (props.item.options || []).forEach((option) => {
185
- var _a2;
186
- const defaultProps = {
187
- key: option.key ?? option.value
188
- };
189
- const userProps = (_a2 = typeData.optionsComponentProps) == null ? void 0 : _a2.call(typeData, option);
190
- nodes.push(h(optionsComponent, userProps ? mergeProps(defaultProps, userProps) : defaultProps));
191
- });
192
315
  }
193
316
  return nodes;
194
317
  };
@@ -197,7 +320,7 @@ function renderProFormItem(props) {
197
320
  }
198
321
  const componentTag = (typeData == null ? void 0 : typeData.component) || "div";
199
322
  const isDivTag = componentTag === "div" || componentTag === "td";
200
- const componentPropsData = translateJsCode(props.item.props || {}, formData, props.formItems || [], props.searchExpand);
323
+ const componentPropsData = translateJsCode(props.item.props || {}, formData, props.formItems || [], props.searchExpand, props.httpRequest, props.getProFormRefs, props.getAndCacheCode).result;
201
324
  const componentNode = typeSlot ? typeSlot({
202
325
  item: props.item,
203
326
  model: formData,
@@ -205,13 +328,15 @@ function renderProFormItem(props) {
205
328
  updateValue: handleUpdateModelValue,
206
329
  updatePropValue: props.updateItemValue,
207
330
  proForm: slotProFormParams
208
- }) : h((isDivTag ? (_a = props.item.props) == null ? void 0 : _a.is : void 0) || componentTag, mergeProps({
331
+ }) : h((isDivTag ? (_b = props.item.props) == null ? void 0 : _b.is : void 0) || componentTag, mergeProps({
209
332
  key: props.key
210
- }, ((_b = typeData == null ? void 0 : typeData.defaultProps) == null ? void 0 : _b.call(typeData, propsFunctionParams)) || {}, isDivTag ? omit(componentPropsData, ["is"]) : componentPropsData, ((_c = typeData == null ? void 0 : typeData.reservedProps) == null ? void 0 : _c.call(typeData, propsFunctionParams)) || {}), itemSlots);
333
+ }, getComponentLegacyProps(props.item), ((_c = typeData == null ? void 0 : typeData.defaultProps) == null ? void 0 : _c.call(typeData, propsFunctionParams)) || {}, isDivTag ? omit(componentPropsData, ["is"]) : componentPropsData, ((_d = typeData == null ? void 0 : typeData.reservedProps) == null ? void 0 : _d.call(typeData, propsFunctionParams)) || {}, {
334
+ ref: getComponentRefName(props.item)
335
+ }), itemSlots);
211
336
  if ((typeData == null ? void 0 : typeData.isContainer) || props.item.itemType === "container" || props.item.itemType === "view") {
212
337
  return componentNode;
213
338
  }
214
- const itemPropsData = translateJsCode(props.item.itemProps || {}, formData, props.formItems || [], props.searchExpand);
339
+ const itemPropsData = translateJsCode(props.item.itemProps || {}, formData, props.formItems || [], props.searchExpand, props.httpRequest, props.getProFormRefs, props.getAndCacheCode).result;
215
340
  const labelWidth = itemPropsData.labelWidth;
216
341
  const formItemLabelWidth = typeof labelWidth === "number" ? `${labelWidth}px` : labelWidth;
217
342
  const formItemSlots = {};
@@ -224,7 +349,7 @@ function renderProFormItem(props) {
224
349
  formItemSlots.default = () => componentNode;
225
350
  const iRule = itemPropsData.rules;
226
351
  const iRules = iRule ? Array.isArray(iRule) ? iRule : [iRule] : void 0;
227
- const fRule = props.rules ? props.rules[props.item.prop] : void 0;
352
+ const fRule = props.rules && props.item.prop ? getValue(props.rules, props.item.prop) : void 0;
228
353
  const fRules = fRule ? Array.isArray(fRule) ? fRule : [fRule] : void 0;
229
354
  const formItemRules = iRules || fRules || [];
230
355
  const trigger = (typeData == null ? void 0 : typeData.requiredTrigger) ?? "change";
@@ -268,8 +393,11 @@ function renderProFormContent(props) {
268
393
  updateItemValue: props.updateItemValue,
269
394
  updateItemsData: props.updateItemsData,
270
395
  updateActiveItemKey: props.updateActiveItemKey,
271
- slots: omit(slots, ownSlots),
272
- itemTypeData: props.itemTypeData
396
+ getAndCacheCode: props.getAndCacheCode,
397
+ itemTypeData: props.itemTypeData,
398
+ httpRequest: props.httpRequest,
399
+ getProFormRefs: props.getProFormRefs,
400
+ slots: omit(slots, ownSlots)
273
401
  });
274
402
  };
275
403
  if (!editable) {
@@ -293,7 +421,7 @@ function renderProFormContent(props) {
293
421
  const gridColProps = props.grid === true ? {
294
422
  span: 12
295
423
  } : props.grid;
296
- const itemColProps = translateJsCode(item.colProps || {}, formData, props.formItems || [], props.searchExpand);
424
+ const itemColProps = translateJsCode(item.colProps || {}, formData, props.formItems || [], props.searchExpand, props.httpRequest, props.getProFormRefs, props.getAndCacheCode).result;
297
425
  if (props.editable && !props.sortDisabled) {
298
426
  let _slot;
299
427
  nodes.push(createVNode(ElCol, mergeProps({
@@ -301,7 +429,7 @@ function renderProFormContent(props) {
301
429
  }, gridColProps, itemColProps), _isSlot(_slot = getProFormItemNode(item, true, true)) ? _slot : {
302
430
  default: () => [_slot]
303
431
  }));
304
- } else if (isShowItem(item, formData, props.formItems || [], props.searchExpand)) {
432
+ } else if (isShowItem(item, formData, props.formItems || [], props.searchExpand, props.editable)) {
305
433
  let _slot2;
306
434
  nodes.push(createVNode(ElCol, mergeProps({
307
435
  "key": itemKey
@@ -312,11 +440,11 @@ function renderProFormContent(props) {
312
440
  });
313
441
  if (slots.contentExtra) {
314
442
  let _slot3;
315
- nodes.push(createVNode(ElCol, translateJsCode(props.contentExtraColProps || {}, formData, props.formItems || [], props.searchExpand), _isSlot(_slot3 = slots.contentExtra()) ? _slot3 : {
443
+ nodes.push(createVNode(ElCol, translateJsCode(props.contentExtraColProps || {}, formData, props.formItems || [], props.searchExpand, props.httpRequest, props.getProFormRefs, props.getAndCacheCode).result, _isSlot(_slot3 = slots.contentExtra()) ? _slot3 : {
316
444
  default: () => [_slot3]
317
445
  }));
318
446
  }
319
- return createVNode(ElRow, translateJsCode(props.rowProps || {}, formData, props.formItems || [], props.searchExpand), _isSlot(nodes) ? nodes : {
447
+ return createVNode(ElRow, translateJsCode(props.rowProps || {}, formData, props.formItems || [], props.searchExpand, props.httpRequest, props.getProFormRefs, props.getAndCacheCode).result, _isSlot(nodes) ? nodes : {
320
448
  default: () => [nodes]
321
449
  });
322
450
  }
@@ -340,14 +468,18 @@ function renderProFormContent(props) {
340
468
  }) : void 0])]);
341
469
  };
342
470
  const handleUpdateModelValue = (data) => {
343
- props.updateItemsData(data, props.parentItem);
471
+ if (props.updateItemsData) {
472
+ props.updateItemsData(data, props.parentItem);
473
+ }
344
474
  };
345
475
  const handleContainerBuilderWrapperClick = (e) => {
346
476
  var _a;
347
477
  const parentItemKey = (_a = props.parentItem) == null ? void 0 : _a.key;
348
478
  if (props.containerSelectable && parentItemKey != null) {
349
479
  e.stopPropagation();
350
- props.updateActiveItemKey(parentItemKey);
480
+ if (props.updateActiveItemKey) {
481
+ props.updateActiveItemKey(parentItemKey);
482
+ }
351
483
  }
352
484
  };
353
485
  nodes.push(createVNode(VueDraggable, {
@@ -373,7 +505,7 @@ function renderProFormContent(props) {
373
505
  }));
374
506
  } else {
375
507
  itemsData.forEach((item) => {
376
- if (isShowItem(item, formData, props.formItems || [], props.searchExpand)) {
508
+ if (isShowItem(item, formData, props.formItems || [], props.searchExpand, props.editable)) {
377
509
  const proFormItemNode = getProFormItemNode(item);
378
510
  if (proFormItemNode) {
379
511
  if (Array.isArray(proFormItemNode)) {
@@ -422,17 +554,27 @@ const ChildrenRender = /* @__PURE__ */ defineComponent({
422
554
  const handleUpdateActiveItemKey = (activeKey) => {
423
555
  emit("update:activeItemKey", activeKey);
424
556
  };
425
- return () => renderProFormContent({
426
- ...props,
427
- updateItemValue: handleUpdateItemValue,
428
- updateItemsData: handleUpdateItemsData,
429
- updateActiveItemKey: handleUpdateActiveItemKey,
430
- slots: props.slots ?? slots
431
- });
557
+ return () => {
558
+ var _a;
559
+ return renderProFormContent({
560
+ ...omit(props, ["item"]),
561
+ items: props.items ?? ((_a = props.item) == null ? void 0 : _a.children),
562
+ // 兼容旧版
563
+ updateItemValue: props.updateItemValue ?? handleUpdateItemValue,
564
+ updateItemsData: props.updateItemsData ?? handleUpdateItemsData,
565
+ updateActiveItemKey: props.updateActiveItemKey ?? handleUpdateActiveItemKey,
566
+ slots: props.slots ?? slots
567
+ });
568
+ };
432
569
  }
433
570
  });
434
571
  export {
435
572
  ChildrenRender,
573
+ codeStringPrefix,
574
+ getCodeResult,
575
+ getComponentLegacyProps,
576
+ getComponentRefName,
577
+ getItemTypeData,
436
578
  getRuleMessage,
437
579
  isShowItem,
438
580
  renderProFormContent,
@@ -1,4 +1,5 @@
1
1
  import { ElFormInstance, ElFormItemProp } from '../ele-app/el';
2
+ import { ChildrenRenderInstance } from './components/render-util';
2
3
  import { ProFormItemProps, ProFormItemKey } from './types';
3
4
 
4
5
  declare const _default: import('vue').DefineComponent<{
@@ -47,6 +48,7 @@ declare const _default: import('vue').DefineComponent<{
47
48
  editable: BooleanConstructor;
48
49
  activeItemKey: import('vue').PropType<ProFormItemKey>;
49
50
  itemTypeData: import('vue').PropType<import('./types').ProFormItemTypeData[]>;
51
+ httpRequest: (ObjectConstructor | FunctionConstructor)[];
50
52
  model: ObjectConstructor;
51
53
  rules: {
52
54
  readonly type: import('vue').PropType<Partial<Record<string, import('element-plus/es/utils/typescript').Arrayable<import('element-plus').FormItemRule>>>>;
@@ -82,6 +84,7 @@ declare const _default: import('vue').DefineComponent<{
82
84
  footerSlotExcludes: string[];
83
85
  formItems: import('vue').ModelRef<ProFormItemProps[] | undefined, PropertyKey>;
84
86
  formRef: import('vue').Ref<ElFormInstance>;
87
+ childrenRef: import('vue').Ref<ChildrenRenderInstance>;
85
88
  formSearchExpand: import('vue').Ref<boolean>;
86
89
  currentActiveKey: import('vue').Ref<string | number | symbol | undefined>;
87
90
  footerStyleData: import('vue').ComputedRef<any>;
@@ -93,6 +96,8 @@ declare const _default: import('vue').DefineComponent<{
93
96
  handleReset: () => void;
94
97
  handleFormSubmit: (e: MouseEvent) => void;
95
98
  handleFormValidate: (prop: ElFormItemProp, isValid: boolean, message: string) => void;
99
+ getProFormRefs: () => Record<string, any>;
100
+ getAndCacheCode: (code: string, codeResult: any) => any;
96
101
  validate: (callback?: import('element-plus').FormValidateCallback | undefined) => import('element-plus').FormValidationResult;
97
102
  validateField: (props?: import('element-plus/es/utils/typescript').Arrayable<import('element-plus').FormItemProp> | undefined, callback?: import('element-plus').FormValidateCallback | undefined) => import('element-plus').FormValidationResult;
98
103
  resetFields: (props?: import('element-plus/es/utils/typescript').Arrayable<import('element-plus').FormItemProp> | undefined) => void;
@@ -152,6 +157,7 @@ declare const _default: import('vue').DefineComponent<{
152
157
  editable: BooleanConstructor;
153
158
  activeItemKey: import('vue').PropType<ProFormItemKey>;
154
159
  itemTypeData: import('vue').PropType<import('./types').ProFormItemTypeData[]>;
160
+ httpRequest: (ObjectConstructor | FunctionConstructor)[];
155
161
  model: ObjectConstructor;
156
162
  rules: {
157
163
  readonly type: import('vue').PropType<Partial<Record<string, import('element-plus/es/utils/typescript').Arrayable<import('element-plus').FormItemRule>>>>;
@@ -205,13 +211,13 @@ declare const _default: import('vue').DefineComponent<{
205
211
  hideRequiredAsterisk: boolean;
206
212
  scrollToError: boolean;
207
213
  editable: boolean;
208
- footerColProps: import('../ele-app/el').ElColProps;
209
- submitText: string;
210
214
  resetText: string;
215
+ submitText: string;
211
216
  showSearchExpand: boolean;
217
+ searchExpand: boolean;
212
218
  searchExpandText: string;
213
219
  searchShrinkText: string;
214
- searchExpand: boolean;
220
+ footerColProps: import('../ele-app/el').ElColProps;
215
221
  preventFormSubmit: boolean;
216
222
  }, {}>;
217
223
  export default _default;
@@ -1,4 +1,4 @@
1
- import { defineComponent, useModel, ref, computed, watch, nextTick, resolveComponent, openBlock, createBlock, normalizeClass, withCtx, renderSlot, createVNode, createSlots, renderList, normalizeProps, guardReactiveProps } from "vue";
1
+ import { defineComponent, useModel, ref, computed, watch, onBeforeUnmount, nextTick, resolveComponent, openBlock, createBlock, normalizeClass, withCtx, renderSlot, createVNode, createSlots, renderList, normalizeProps, guardReactiveProps } from "vue";
2
2
  import { ElForm } from "element-plus";
3
3
  import { eachTree } from "../utils/core";
4
4
  import { ChildrenRender, translateJsCode } from "./components/render-util";
@@ -34,18 +34,20 @@ const _sfc_main = defineComponent({
34
34
  });
35
35
  const formItems = useModel(props, "items");
36
36
  const formRef = ref(null);
37
+ const childrenRef = ref(null);
37
38
  const formSearchExpand = ref(!!props.searchExpand);
38
39
  const currentActiveKey = ref(
39
40
  props.activeItemKey
40
41
  );
41
- const footerStyleData = computed(
42
- () => translateJsCode(
42
+ const footerStyleData = computed(() => {
43
+ return translateJsCode(
43
44
  props.footerStyle || {},
44
45
  props.model || {},
45
46
  formItems.value || [],
46
- formSearchExpand.value
47
- )
48
- );
47
+ formSearchExpand.value,
48
+ props.httpRequest
49
+ ).result;
50
+ });
49
51
  const updateSearchExpand = (expand) => {
50
52
  formSearchExpand.value = expand;
51
53
  if (props.searchExpand !== expand) {
@@ -86,6 +88,7 @@ const _sfc_main = defineComponent({
86
88
  }
87
89
  };
88
90
  const handleReset = () => {
91
+ clearCodeCache();
89
92
  emit("reset");
90
93
  exposeMethods.clearValidate();
91
94
  nextTick(() => {
@@ -119,12 +122,32 @@ const _sfc_main = defineComponent({
119
122
  }
120
123
  }
121
124
  );
125
+ const getProFormRefs = () => {
126
+ var _a;
127
+ return ((_a = childrenRef.value) == null ? void 0 : _a.$refs) || {};
128
+ };
129
+ const codeCache = /* @__PURE__ */ new Map();
130
+ const getAndCacheCode = (code, codeResult) => {
131
+ const cacheResult = codeCache.get(code);
132
+ if (cacheResult) {
133
+ return cacheResult;
134
+ }
135
+ codeCache.set(code, codeResult);
136
+ return codeResult;
137
+ };
138
+ const clearCodeCache = () => {
139
+ codeCache.clear();
140
+ };
141
+ onBeforeUnmount(() => {
142
+ clearCodeCache();
143
+ });
122
144
  return {
123
145
  ...exposeMethods,
124
146
  slotExcludes,
125
147
  footerSlotExcludes,
126
148
  formItems,
127
149
  formRef,
150
+ childrenRef,
128
151
  formSearchExpand,
129
152
  currentActiveKey,
130
153
  footerStyleData,
@@ -135,7 +158,9 @@ const _sfc_main = defineComponent({
135
158
  handleSubmit,
136
159
  handleReset,
137
160
  handleFormSubmit,
138
- handleFormValidate
161
+ handleFormValidate,
162
+ getProFormRefs,
163
+ getAndCacheCode
139
164
  };
140
165
  }
141
166
  });
@@ -174,6 +199,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
174
199
  default: withCtx(() => [
175
200
  renderSlot(_ctx.$slots, "topExtra"),
176
201
  createVNode(_component_ChildrenRender, {
202
+ ref: "childrenRef",
177
203
  model: _ctx.model,
178
204
  items: _ctx.formItems,
179
205
  rules: _ctx.rules,
@@ -185,6 +211,9 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
185
211
  editable: _ctx.editable,
186
212
  activeItemKey: _ctx.currentActiveKey,
187
213
  itemTypeData: _ctx.itemTypeData,
214
+ httpRequest: _ctx.httpRequest,
215
+ getProFormRefs: _ctx.getProFormRefs,
216
+ getAndCacheCode: _ctx.getAndCacheCode,
188
217
  onUpdateItemValue: _ctx.updateValue,
189
218
  onUpdateItemsData: _ctx.handleUpdateItemsData,
190
219
  "onUpdate:activeItemKey": _ctx.handleUpdateActiveItemKey
@@ -233,7 +262,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
233
262
  ]),
234
263
  key: "0"
235
264
  } : void 0
236
- ]), 1032, ["model", "items", "rules", "grid", "rowProps", "contentExtraColProps", "formItems", "searchExpand", "editable", "activeItemKey", "itemTypeData", "onUpdateItemValue", "onUpdateItemsData", "onUpdate:activeItemKey"]),
265
+ ]), 1032, ["model", "items", "rules", "grid", "rowProps", "contentExtraColProps", "formItems", "searchExpand", "editable", "activeItemKey", "itemTypeData", "httpRequest", "getProFormRefs", "getAndCacheCode", "onUpdateItemValue", "onUpdateItemsData", "onUpdate:activeItemKey"]),
237
266
  renderSlot(_ctx.$slots, "bottomExtra")
238
267
  ]),
239
268
  _: 3
@@ -73,6 +73,8 @@ export declare const proFormProps: {
73
73
  activeItemKey: PropType<ProFormItemKey>;
74
74
  /** 组件类型数据 */
75
75
  itemTypeData: PropType<ProFormItemTypeData[]>;
76
+ /** 远程数据源请求工具 */
77
+ httpRequest: (ObjectConstructor | FunctionConstructor)[];
76
78
  model: ObjectConstructor;
77
79
  rules: {
78
80
  readonly type: import('vue').PropType<Partial<Record<string, import('element-plus/es/utils/typescript').Arrayable<import('element-plus').FormItemRule>>>>;
@@ -135,6 +137,18 @@ export declare const childrenRenderProps: {
135
137
  containerSelectable: BooleanConstructor;
136
138
  /** 直接传递插槽数据 */
137
139
  slots: PropType<ProFormItemRenderSlots>;
140
+ /** 获取表单组件的组件引用数据方法 */
141
+ getProFormRefs: PropType<() => Record<string, any>>;
142
+ /** 获取并缓存代码解析结果方法 */
143
+ getAndCacheCode: PropType<(code: string, codeResult: any) => any>;
144
+ /** 更新表单数据属性值方法 */
145
+ updateItemValue: PropType<(prop: string, value: any) => void>;
146
+ /** 编辑模式更新表单项数据方法 */
147
+ updateItemsData: PropType<(items: ProFormItemProps[], parentItem?: ProFormItemProps) => void>;
148
+ /** 更新编辑模式选中项方法 */
149
+ updateActiveItemKey: PropType<(activeKey?: ProFormItemKey) => void>;
150
+ /** 兼容旧版 */
151
+ item: PropType<ProFormItemProps>;
138
152
  model: ObjectConstructor;
139
153
  rules: {
140
154
  readonly type: import('vue').PropType<Partial<Record<string, import('element-plus/es/utils/typescript').Arrayable<import('element-plus').FormItemRule>>>>;
@@ -148,23 +162,17 @@ export declare const childrenRenderProps: {
148
162
  items: PropType<ProFormItemProps[]>;
149
163
  activeItemKey: PropType<ProFormItemKey>;
150
164
  itemTypeData: PropType<ProFormItemTypeData[]>;
165
+ httpRequest: (ObjectConstructor | FunctionConstructor)[];
151
166
  };
152
167
  export type ChildrenRenderProps = ExtractPropTypes<typeof childrenRenderProps>;
153
168
  /**
154
169
  * 渲染表单项数据方法参数
155
170
  */
156
- export interface RenderProFormContentProps extends ChildrenRenderProps {
157
- /** 更新表单数据属性值方法 */
158
- updateItemValue: (prop: string, value: any) => void;
159
- /** 编辑模式更新表单项数据方法 */
160
- updateItemsData: (items: ProFormItemProps[], parentItem?: ProFormItemProps) => void;
161
- /** 更新编辑模式选中项方法 */
162
- updateActiveItemKey: (activeKey?: ProFormItemKey) => void;
163
- }
171
+ export type RenderProFormContentProps = Omit<ChildrenRenderProps, 'item'>;
164
172
  /**
165
173
  * 渲染表单项组件方法参数
166
174
  */
167
- export interface RenderProFormItemProps extends Pick<RenderProFormContentProps, 'model' | 'rules' | 'formItems' | 'searchExpand' | 'editable' | 'activeItemKey' | 'updateItemValue' | 'updateItemsData' | 'updateActiveItemKey' | 'slots' | 'itemTypeData'> {
175
+ export interface RenderProFormItemProps extends Pick<RenderProFormContentProps, 'model' | 'rules' | 'formItems' | 'searchExpand' | 'editable' | 'activeItemKey' | 'updateItemValue' | 'updateItemsData' | 'updateActiveItemKey' | 'getProFormRefs' | 'getAndCacheCode' | 'itemTypeData' | 'httpRequest' | 'slots'> {
168
176
  /** 循环的 key */
169
177
  key?: ProFormItemKey;
170
178
  /** 表单项 */