amis-editor 5.2.0 → 5.2.1-beta.19

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1403) hide show
  1. package/esm/component/BaseControl.d.ts +224 -0
  2. package/esm/component/BaseControl.js +309 -0
  3. package/{dist/component/base → esm/component}/InputComponentName.d.ts +0 -0
  4. package/esm/component/InputComponentName.js +41 -0
  5. package/esm/component/TableViewEditor.d.ts +79 -0
  6. package/esm/component/TableViewEditor.js +681 -0
  7. package/esm/icons/btn/btn-group.svg.js +34 -0
  8. package/esm/icons/btn/btn-select.svg.js +30 -0
  9. package/esm/icons/btn/btn-toolbar.svg.js +30 -0
  10. package/esm/icons/btn/button.svg.js +30 -0
  11. package/esm/icons/btn/dropdown-btn.svg.js +28 -0
  12. package/esm/icons/container/anchor-nav.svg.js +28 -0
  13. package/esm/icons/container/collapse.svg.js +28 -0
  14. package/esm/icons/container/container.svg.js +24 -0
  15. package/esm/icons/container/flex-container.svg.js +28 -0
  16. package/esm/icons/container/form-group.svg.js +28 -0
  17. package/esm/icons/container/grid.svg.js +25 -0
  18. package/esm/icons/container/iframe.svg.js +27 -0
  19. package/esm/icons/container/panel.svg.js +28 -0
  20. package/esm/icons/container/table-view.svg.js +28 -0
  21. package/esm/icons/container/tabs.svg.js +28 -0
  22. package/esm/icons/container/tooltip-wrapper.svg.js +32 -0
  23. package/esm/icons/container/web-component.svg.js +24 -0
  24. package/esm/icons/feat/audio.svg.js +32 -0
  25. package/esm/icons/feat/custom.svg.js +26 -0
  26. package/esm/icons/feat/each.svg.js +28 -0
  27. package/esm/icons/feat/form.svg.js +28 -0
  28. package/esm/icons/feat/nav.svg.js +24 -0
  29. package/esm/icons/feat/qrcode.svg.js +28 -0
  30. package/esm/icons/feat/service.svg.js +28 -0
  31. package/esm/icons/feat/table.svg.js +32 -0
  32. package/esm/icons/feat/tasks.svg.js +35 -0
  33. package/esm/icons/feat/video.svg.js +27 -0
  34. package/esm/icons/feat/wizard.svg.js +38 -0
  35. package/esm/icons/form/chained-select.svg.js +33 -0
  36. package/esm/icons/form/checkbox.svg.js +30 -0
  37. package/esm/icons/form/checkboxes.svg.js +28 -0
  38. package/esm/icons/form/combo.svg.js +31 -0
  39. package/esm/icons/form/condition-builder.svg.js +27 -0
  40. package/esm/icons/form/diff-editor.svg.js +28 -0
  41. package/esm/icons/form/editor.svg.js +28 -0
  42. package/esm/icons/form/formula.svg.js +33 -0
  43. package/esm/icons/form/hidden.svg.js +32 -0
  44. package/esm/icons/form/input-city.svg.js +28 -0
  45. package/esm/icons/form/input-color.svg.js +37 -0
  46. package/esm/icons/form/input-date-range.svg.js +28 -0
  47. package/esm/icons/form/input-date.svg.js +34 -0
  48. package/esm/icons/form/input-datetime.svg.js +28 -0
  49. package/esm/icons/form/input-email.svg.js +28 -0
  50. package/esm/icons/form/input-excel.svg.js +28 -0
  51. package/esm/icons/form/input-file.svg.js +28 -0
  52. package/esm/icons/form/input-group.svg.js +31 -0
  53. package/esm/icons/form/input-image.svg.js +33 -0
  54. package/esm/icons/form/input-kv.svg.js +30 -0
  55. package/esm/icons/form/input-month-range.svg.js +28 -0
  56. package/esm/icons/form/input-number.svg.js +30 -0
  57. package/esm/icons/form/input-password.svg.js +28 -0
  58. package/esm/icons/form/input-quarter-range.svg.js +39 -0
  59. package/esm/icons/form/input-range.svg.js +39 -0
  60. package/esm/icons/form/input-rating.svg.js +24 -0
  61. package/esm/icons/form/input-repeat.svg.js +28 -0
  62. package/esm/icons/form/input-rich-text.svg.js +53 -0
  63. package/esm/icons/form/input-tag.svg.js +29 -0
  64. package/esm/icons/form/input-text.svg.js +32 -0
  65. package/esm/icons/form/input-time-range.svg.js +33 -0
  66. package/esm/icons/form/input-time.svg.js +32 -0
  67. package/esm/icons/form/input-tree.svg.js +28 -0
  68. package/esm/icons/form/input-url.svg.js +31 -0
  69. package/esm/icons/form/input-year.svg.js +34 -0
  70. package/esm/icons/form/inputArray.svg.js +30 -0
  71. package/esm/icons/form/list-select.svg.js +26 -0
  72. package/esm/icons/form/location-picker.svg.js +32 -0
  73. package/esm/icons/form/matrix-checkboxes.svg.js +25 -0
  74. package/esm/icons/form/month.svg.js +28 -0
  75. package/esm/icons/form/nested-select.svg.js +26 -0
  76. package/esm/icons/form/picker.svg.js +28 -0
  77. package/esm/icons/form/quarter.svg.js +34 -0
  78. package/esm/icons/form/radios.svg.js +32 -0
  79. package/esm/icons/form/select.svg.js +28 -0
  80. package/esm/icons/form/static.svg.js +30 -0
  81. package/esm/icons/form/sub-form.svg.js +28 -0
  82. package/esm/icons/form/switch.svg.js +33 -0
  83. package/esm/icons/form/tabs-transfer.svg.js +31 -0
  84. package/esm/icons/form/textarea.svg.js +36 -0
  85. package/esm/icons/form/transfer.svg.js +28 -0
  86. package/esm/icons/form/tree-select.svg.js +33 -0
  87. package/esm/icons/form/uuid.svg.js +30 -0
  88. package/esm/icons/index.d.ts +2 -0
  89. package/esm/icons/index.js +255 -0
  90. package/esm/icons/layout/layout-1with2.svg.js +32 -0
  91. package/esm/icons/layout/layout-2cols.svg.js +32 -0
  92. package/esm/icons/layout/layout-2row.svg.js +32 -0
  93. package/esm/icons/layout/layout-2with1.svg.js +33 -0
  94. package/esm/icons/layout/layout-3cols.svg.js +32 -0
  95. package/esm/icons/layout/layout-3row.svg.js +33 -0
  96. package/esm/icons/layout/layout-absolute.svg.js +27 -0
  97. package/esm/icons/layout/layout-fixed.svg.js +27 -0
  98. package/esm/icons/layout/layout-full.svg.js +49 -0
  99. package/esm/icons/layout/layout1-2.svg.js +33 -0
  100. package/esm/icons/layout/layout2-1.svg.js +33 -0
  101. package/esm/icons/layout/layout3-1.svg.js +33 -0
  102. package/esm/icons/layout/layout3-2.svg.js +33 -0
  103. package/esm/icons/other/divider.svg.js +26 -0
  104. package/esm/icons/other/property-sheet.svg.js +28 -0
  105. package/esm/icons/other/tooltip.svg.js +30 -0
  106. package/esm/icons/show/URL.svg.js +31 -0
  107. package/esm/icons/show/avatar.svg.js +34 -0
  108. package/esm/icons/show/breadcrumb.svg.js +28 -0
  109. package/esm/icons/show/card.svg.js +28 -0
  110. package/esm/icons/show/cards.svg.js +25 -0
  111. package/esm/icons/show/carousel.svg.js +32 -0
  112. package/esm/icons/show/chart.svg.js +27 -0
  113. package/esm/icons/show/code.svg.js +32 -0
  114. package/esm/icons/show/date.svg.js +28 -0
  115. package/esm/icons/show/datetime.svg.js +28 -0
  116. package/esm/icons/show/image.svg.js +32 -0
  117. package/esm/icons/show/images.svg.js +35 -0
  118. package/esm/icons/show/json-view.svg.js +38 -0
  119. package/esm/icons/show/list.svg.js +28 -0
  120. package/esm/icons/show/log.svg.js +28 -0
  121. package/esm/icons/show/mapping.svg.js +28 -0
  122. package/esm/icons/show/markdown.svg.js +30 -0
  123. package/esm/icons/show/plain.svg.js +33 -0
  124. package/esm/icons/show/progress.svg.js +26 -0
  125. package/esm/icons/show/sparkline.svg.js +28 -0
  126. package/esm/icons/show/status.svg.js +31 -0
  127. package/esm/icons/show/steps.svg.js +28 -0
  128. package/esm/icons/show/time.svg.js +30 -0
  129. package/esm/index.d.ts +176 -0
  130. package/esm/index.js +187 -0
  131. package/esm/locale/en-US.d.ts +1 -0
  132. package/esm/locale/en-US.js +2884 -0
  133. package/esm/locale/index.d.ts +2 -0
  134. package/esm/locale/zh-CN.d.ts +1 -0
  135. package/esm/locale/zh-CN.js +2817 -0
  136. package/esm/plugin/Alert.d.ts +23 -0
  137. package/esm/plugin/Alert.js +175 -0
  138. package/esm/plugin/AnchorNav.d.ts +49 -0
  139. package/esm/plugin/AnchorNav.js +370 -0
  140. package/esm/plugin/Audio.d.ts +23 -0
  141. package/esm/plugin/Audio.js +184 -0
  142. package/esm/plugin/Avatar.d.ts +28 -0
  143. package/esm/plugin/Avatar.js +337 -0
  144. package/esm/plugin/Breadcrumb.d.ts +28 -0
  145. package/esm/plugin/Breadcrumb.js +159 -0
  146. package/esm/plugin/Button.d.ts +30 -0
  147. package/esm/plugin/Button.js +344 -0
  148. package/esm/plugin/ButtonGroup.d.ts +40 -0
  149. package/esm/plugin/ButtonGroup.js +192 -0
  150. package/esm/plugin/CRUD.d.ts +128 -0
  151. package/esm/plugin/CRUD.js +1543 -0
  152. package/esm/plugin/CRUD2.d.ts +78 -0
  153. package/esm/plugin/CRUD2.js +1823 -0
  154. package/esm/plugin/Card.d.ts +55 -0
  155. package/esm/plugin/Card.js +314 -0
  156. package/esm/plugin/Card2.d.ts +23 -0
  157. package/esm/plugin/Card2.js +156 -0
  158. package/esm/plugin/Cards.d.ts +72 -0
  159. package/esm/plugin/Cards.js +339 -0
  160. package/esm/plugin/Carousel.d.ts +41 -0
  161. package/esm/plugin/Carousel.js +377 -0
  162. package/esm/plugin/Chart.d.ts +51 -0
  163. package/esm/plugin/Chart.js +361 -0
  164. package/esm/plugin/CodeView.d.ts +20 -0
  165. package/esm/plugin/CodeView.js +122 -0
  166. package/esm/plugin/Collapse.d.ts +34 -0
  167. package/esm/plugin/Collapse.js +186 -0
  168. package/esm/plugin/CollapseGroup.d.ts +66 -0
  169. package/esm/plugin/CollapseGroup.js +276 -0
  170. package/esm/plugin/ColumnToggler.d.ts +23 -0
  171. package/esm/plugin/ColumnToggler.js +167 -0
  172. package/esm/plugin/Container.d.ts +32 -0
  173. package/esm/plugin/Container.js +215 -0
  174. package/esm/plugin/Custom.d.ts +28 -0
  175. package/esm/plugin/Custom.js +164 -0
  176. package/esm/plugin/CustomRegion.d.ts +40 -0
  177. package/esm/plugin/CustomRegion.js +201 -0
  178. package/esm/plugin/Date.d.ts +22 -0
  179. package/esm/plugin/Date.js +132 -0
  180. package/esm/plugin/Datetime.d.ts +17 -0
  181. package/esm/plugin/Datetime.js +102 -0
  182. package/esm/plugin/Dialog.d.ts +41 -0
  183. package/esm/plugin/Dialog.js +262 -0
  184. package/esm/plugin/Divider.d.ts +16 -0
  185. package/esm/plugin/Divider.js +99 -0
  186. package/esm/plugin/Drawer.d.ts +38 -0
  187. package/esm/plugin/Drawer.js +285 -0
  188. package/esm/plugin/DropDownButton.d.ts +45 -0
  189. package/esm/plugin/DropDownButton.js +293 -0
  190. package/esm/plugin/Each.d.ts +36 -0
  191. package/esm/plugin/Each.js +211 -0
  192. package/esm/plugin/Flex.d.ts +6 -0
  193. package/esm/plugin/Flex.js +39 -0
  194. package/esm/plugin/Form/ButtonGroupSelect.d.ts +30 -0
  195. package/esm/plugin/Form/ButtonGroupSelect.js +228 -0
  196. package/esm/plugin/Form/ButtonToolbar.d.ts +31 -0
  197. package/esm/plugin/Form/ButtonToolbar.js +186 -0
  198. package/esm/plugin/Form/ChainedSelect.d.ts +25 -0
  199. package/esm/plugin/Form/ChainedSelect.js +232 -0
  200. package/esm/plugin/Form/Checkbox.d.ts +25 -0
  201. package/esm/plugin/Form/Checkbox.js +237 -0
  202. package/esm/plugin/Form/Checkboxes.d.ts +31 -0
  203. package/esm/plugin/Form/Checkboxes.js +260 -0
  204. package/esm/plugin/Form/CodeEditor.d.ts +26 -0
  205. package/esm/plugin/Form/CodeEditor.js +270 -0
  206. package/esm/plugin/Form/Combo.d.ts +42 -0
  207. package/esm/plugin/Form/Combo.js +608 -0
  208. package/esm/plugin/Form/ConditionBuilder.d.ts +37 -0
  209. package/esm/plugin/Form/ConditionBuilder.js +325 -0
  210. package/esm/plugin/Form/Control.d.ts +28 -0
  211. package/esm/plugin/Form/Control.js +154 -0
  212. package/esm/plugin/Form/DiffEditor.d.ts +26 -0
  213. package/esm/plugin/Form/DiffEditor.js +277 -0
  214. package/esm/plugin/Form/FieldSet.d.ts +26 -0
  215. package/esm/plugin/Form/FieldSet.js +195 -0
  216. package/esm/plugin/Form/Form.d.ts +43 -0
  217. package/esm/plugin/Form/Form.js +858 -0
  218. package/esm/plugin/Form/Formula.d.ts +20 -0
  219. package/esm/plugin/Form/Formula.js +143 -0
  220. package/esm/plugin/Form/Group.d.ts +27 -0
  221. package/esm/plugin/Form/Group.js +285 -0
  222. package/esm/plugin/Form/Hidden.d.ts +25 -0
  223. package/esm/plugin/Form/Hidden.js +124 -0
  224. package/esm/plugin/Form/InputArray.d.ts +29 -0
  225. package/esm/plugin/Form/InputArray.js +261 -0
  226. package/esm/plugin/Form/InputCity.d.ts +25 -0
  227. package/esm/plugin/Form/InputCity.js +204 -0
  228. package/esm/plugin/Form/InputColor.d.ts +42 -0
  229. package/esm/plugin/Form/InputColor.js +359 -0
  230. package/esm/plugin/Form/InputDate.d.ts +27 -0
  231. package/esm/plugin/Form/InputDate.js +414 -0
  232. package/esm/plugin/Form/InputDateRange.d.ts +27 -0
  233. package/esm/plugin/Form/InputDateRange.js +430 -0
  234. package/esm/plugin/Form/InputDateTime.d.ts +20 -0
  235. package/esm/plugin/Form/InputDateTime.js +111 -0
  236. package/esm/plugin/Form/InputDateTimeRange.d.ts +21 -0
  237. package/esm/plugin/Form/InputDateTimeRange.js +117 -0
  238. package/esm/plugin/Form/InputEmail.d.ts +28 -0
  239. package/esm/plugin/Form/InputEmail.js +98 -0
  240. package/esm/plugin/Form/InputExcel.d.ts +24 -0
  241. package/esm/plugin/Form/InputExcel.js +184 -0
  242. package/esm/plugin/Form/InputFile.d.ts +31 -0
  243. package/esm/plugin/Form/InputFile.js +385 -0
  244. package/esm/plugin/Form/InputGroup.d.ts +33 -0
  245. package/esm/plugin/Form/InputGroup.js +152 -0
  246. package/esm/plugin/Form/InputImage.d.ts +31 -0
  247. package/esm/plugin/Form/InputImage.js +417 -0
  248. package/esm/plugin/Form/InputKV.d.ts +36 -0
  249. package/esm/plugin/Form/InputKV.js +188 -0
  250. package/esm/plugin/Form/InputMonth.d.ts +19 -0
  251. package/esm/plugin/Form/InputMonth.js +109 -0
  252. package/esm/plugin/Form/InputMonthRange.d.ts +21 -0
  253. package/esm/plugin/Form/InputMonthRange.js +117 -0
  254. package/esm/plugin/Form/InputNumber.d.ts +27 -0
  255. package/esm/plugin/Form/InputNumber.js +313 -0
  256. package/esm/plugin/Form/InputPassword.d.ts +28 -0
  257. package/esm/plugin/Form/InputPassword.js +98 -0
  258. package/esm/plugin/Form/InputQuarter.d.ts +19 -0
  259. package/esm/plugin/Form/InputQuarter.js +109 -0
  260. package/esm/plugin/Form/InputQuarterRange.d.ts +21 -0
  261. package/esm/plugin/Form/InputQuarterRange.js +117 -0
  262. package/esm/plugin/Form/InputRange.d.ts +25 -0
  263. package/esm/plugin/Form/InputRange.js +347 -0
  264. package/esm/plugin/Form/InputRating.d.ts +26 -0
  265. package/esm/plugin/Form/InputRating.js +394 -0
  266. package/esm/plugin/Form/InputRepeat.d.ts +20 -0
  267. package/esm/plugin/Form/InputRepeat.js +122 -0
  268. package/esm/plugin/Form/InputRichText.d.ts +22 -0
  269. package/esm/plugin/Form/InputRichText.js +232 -0
  270. package/esm/plugin/Form/InputSubForm.d.ts +33 -0
  271. package/esm/plugin/Form/InputSubForm.js +269 -0
  272. package/esm/plugin/Form/InputTable.d.ts +40 -0
  273. package/esm/plugin/Form/InputTable.js +418 -0
  274. package/esm/plugin/Form/InputTag.d.ts +26 -0
  275. package/esm/plugin/Form/InputTag.js +230 -0
  276. package/esm/plugin/Form/InputText.d.ts +43 -0
  277. package/esm/plugin/Form/InputText.js +385 -0
  278. package/esm/plugin/Form/InputTime.d.ts +20 -0
  279. package/esm/plugin/Form/InputTime.js +111 -0
  280. package/esm/plugin/Form/InputTimeRange.d.ts +21 -0
  281. package/esm/plugin/Form/InputTimeRange.js +117 -0
  282. package/esm/plugin/Form/InputTree.d.ts +79 -0
  283. package/esm/plugin/Form/InputTree.js +496 -0
  284. package/esm/plugin/Form/InputURL.d.ts +29 -0
  285. package/esm/plugin/Form/InputURL.js +104 -0
  286. package/esm/plugin/Form/InputYear.d.ts +19 -0
  287. package/esm/plugin/Form/InputYear.js +109 -0
  288. package/esm/plugin/Form/InputYearRange.d.ts +21 -0
  289. package/esm/plugin/Form/InputYearRange.js +117 -0
  290. package/esm/plugin/Form/Item.d.ts +11 -0
  291. package/esm/plugin/Form/Item.js +255 -0
  292. package/esm/plugin/Form/ListSelect.d.ts +29 -0
  293. package/esm/plugin/Form/ListSelect.js +195 -0
  294. package/esm/plugin/Form/LocationPicker.d.ts +20 -0
  295. package/esm/plugin/Form/LocationPicker.js +135 -0
  296. package/esm/plugin/Form/MatrixCheckboxes.d.ts +32 -0
  297. package/esm/plugin/Form/MatrixCheckboxes.js +270 -0
  298. package/esm/plugin/Form/NestedSelect.d.ts +80 -0
  299. package/esm/plugin/Form/NestedSelect.js +362 -0
  300. package/esm/plugin/Form/Picker.d.ts +29 -0
  301. package/esm/plugin/Form/Picker.js +292 -0
  302. package/esm/plugin/Form/Radios.d.ts +30 -0
  303. package/esm/plugin/Form/Radios.js +251 -0
  304. package/esm/plugin/Form/Select.d.ts +30 -0
  305. package/esm/plugin/Form/Select.js +363 -0
  306. package/esm/plugin/Form/Static.d.ts +24 -0
  307. package/esm/plugin/Form/Static.js +389 -0
  308. package/esm/plugin/Form/Switch.d.ts +29 -0
  309. package/esm/plugin/Form/Switch.js +285 -0
  310. package/esm/plugin/Form/TabsTransfer.d.ts +81 -0
  311. package/esm/plugin/Form/TabsTransfer.js +357 -0
  312. package/esm/plugin/Form/Textarea.d.ts +26 -0
  313. package/esm/plugin/Form/Textarea.js +244 -0
  314. package/esm/plugin/Form/Transfer.d.ts +73 -0
  315. package/esm/plugin/Form/Transfer.js +381 -0
  316. package/esm/plugin/Form/TreeSelect.d.ts +80 -0
  317. package/esm/plugin/Form/TreeSelect.js +488 -0
  318. package/esm/plugin/Form/UUID.d.ts +24 -0
  319. package/esm/plugin/Form/UUID.js +124 -0
  320. package/esm/plugin/Grid.d.ts +49 -0
  321. package/esm/plugin/Grid.js +779 -0
  322. package/esm/plugin/HBox.d.ts +46 -0
  323. package/esm/plugin/HBox.js +703 -0
  324. package/esm/plugin/IFrame.d.ts +23 -0
  325. package/esm/plugin/IFrame.js +144 -0
  326. package/esm/plugin/Image.d.ts +34 -0
  327. package/esm/plugin/Image.js +307 -0
  328. package/esm/plugin/Images.d.ts +26 -0
  329. package/esm/plugin/Images.js +240 -0
  330. package/esm/plugin/Json.d.ts +27 -0
  331. package/esm/plugin/Json.js +133 -0
  332. package/esm/plugin/Layout/FlexPluginBase.d.ts +40 -0
  333. package/esm/plugin/Layout/FlexPluginBase.js +332 -0
  334. package/esm/plugin/Layout/Layout1_2_v4.d.ts +10 -0
  335. package/esm/plugin/Layout/Layout1_2_v4.js +144 -0
  336. package/esm/plugin/Layout/Layout_fixed.d.ts +10 -0
  337. package/esm/plugin/Layout/Layout_fixed.js +76 -0
  338. package/esm/plugin/Layout/Layout_fixed_bottom.d.ts +10 -0
  339. package/esm/plugin/Layout/Layout_fixed_bottom.js +83 -0
  340. package/esm/plugin/Layout/Layout_fixed_top.d.ts +10 -0
  341. package/esm/plugin/Layout/Layout_fixed_top.js +82 -0
  342. package/esm/plugin/Layout/Layout_scroll_x.d.ts +10 -0
  343. package/esm/plugin/Layout/Layout_scroll_x.js +166 -0
  344. package/esm/plugin/Layout/Layout_scroll_y.d.ts +10 -0
  345. package/esm/plugin/Layout/Layout_scroll_y.js +154 -0
  346. package/esm/plugin/Link.d.ts +23 -0
  347. package/esm/plugin/Link.js +151 -0
  348. package/esm/plugin/List.d.ts +56 -0
  349. package/esm/plugin/List.js +316 -0
  350. package/esm/plugin/ListItem.d.ts +16 -0
  351. package/esm/plugin/ListItem.js +247 -0
  352. package/esm/plugin/Log.d.ts +19 -0
  353. package/esm/plugin/Log.js +119 -0
  354. package/esm/plugin/Mapping.d.ts +38 -0
  355. package/esm/plugin/Mapping.js +192 -0
  356. package/esm/plugin/Markdown.d.ts +22 -0
  357. package/esm/plugin/Markdown.js +115 -0
  358. package/esm/plugin/Nav.d.ts +49 -0
  359. package/esm/plugin/Nav.js +226 -0
  360. package/esm/plugin/Operation.d.ts +26 -0
  361. package/esm/plugin/Operation.js +137 -0
  362. package/esm/plugin/Others/Action.d.ts +9 -0
  363. package/esm/plugin/Others/Action.js +370 -0
  364. package/esm/plugin/Others/TableCell.d.ts +8 -0
  365. package/esm/plugin/Others/TableCell.js +379 -0
  366. package/esm/plugin/Page.d.ts +33 -0
  367. package/esm/plugin/Page.js +409 -0
  368. package/esm/plugin/Pagination.d.ts +49 -0
  369. package/esm/plugin/Pagination.js +322 -0
  370. package/esm/plugin/Panel.d.ts +32 -0
  371. package/esm/plugin/Panel.js +279 -0
  372. package/esm/plugin/Plain.d.ts +22 -0
  373. package/esm/plugin/Plain.js +144 -0
  374. package/esm/plugin/Progress.d.ts +28 -0
  375. package/esm/plugin/Progress.js +303 -0
  376. package/esm/plugin/Property.d.ts +28 -0
  377. package/esm/plugin/Property.js +186 -0
  378. package/esm/plugin/QRCode.d.ts +22 -0
  379. package/esm/plugin/QRCode.js +151 -0
  380. package/{dist → esm}/plugin/Reset.d.ts +0 -0
  381. package/esm/plugin/Reset.js +80 -0
  382. package/esm/plugin/Service.d.ts +32 -0
  383. package/esm/plugin/Service.js +282 -0
  384. package/esm/plugin/Sparkline.d.ts +31 -0
  385. package/esm/plugin/Sparkline.js +111 -0
  386. package/esm/plugin/Status.d.ts +22 -0
  387. package/esm/plugin/Status.js +134 -0
  388. package/esm/plugin/Steps.d.ts +40 -0
  389. package/esm/plugin/Steps.js +175 -0
  390. package/{dist → esm}/plugin/Submit.d.ts +0 -0
  391. package/esm/plugin/Submit.js +75 -0
  392. package/esm/plugin/Table.d.ts +27 -0
  393. package/esm/plugin/Table.js +645 -0
  394. package/esm/plugin/Table2.d.ts +26 -0
  395. package/esm/plugin/Table2.js +887 -0
  396. package/esm/plugin/TableCell2.d.ts +8 -0
  397. package/esm/plugin/TableCell2.js +485 -0
  398. package/esm/plugin/TableView.d.ts +135 -0
  399. package/esm/plugin/TableView.js +816 -0
  400. package/esm/plugin/Tabs.d.ts +77 -0
  401. package/esm/plugin/Tabs.js +526 -0
  402. package/esm/plugin/Tasks.d.ts +44 -0
  403. package/esm/plugin/Tasks.js +272 -0
  404. package/esm/plugin/Time.d.ts +17 -0
  405. package/esm/plugin/Time.js +104 -0
  406. package/esm/plugin/Timeline.d.ts +34 -0
  407. package/esm/plugin/Timeline.js +189 -0
  408. package/esm/plugin/TooltipWrapper.d.ts +42 -0
  409. package/esm/plugin/TooltipWrapper.js +300 -0
  410. package/esm/plugin/Tpl.d.ts +21 -0
  411. package/esm/plugin/Tpl.js +205 -0
  412. package/esm/plugin/Video.d.ts +27 -0
  413. package/esm/plugin/Video.js +193 -0
  414. package/esm/plugin/WebComponent.d.ts +25 -0
  415. package/esm/plugin/WebComponent.js +157 -0
  416. package/esm/plugin/Wizard.d.ts +56 -0
  417. package/esm/plugin/Wizard.js +864 -0
  418. package/esm/plugin/Wrapper.d.ts +24 -0
  419. package/esm/plugin/Wrapper.js +222 -0
  420. package/esm/renderer/APIControl.d.ts +946 -0
  421. package/esm/renderer/APIControl.js +931 -0
  422. package/esm/renderer/ActionApiControl.d.ts +1078 -0
  423. package/esm/renderer/BadgeControl.d.ts +102 -0
  424. package/esm/renderer/BadgeControl.js +328 -0
  425. package/esm/renderer/ColumnControl.d.ts +19 -0
  426. package/esm/renderer/DataBindingControl.d.ts +42 -0
  427. package/esm/renderer/DataBindingControl.js +285 -0
  428. package/esm/renderer/DataMappingControl.d.ts +11 -0
  429. package/esm/renderer/DataMappingControl.js +75 -0
  430. package/esm/renderer/DataPickerControl.d.ts +13 -0
  431. package/esm/renderer/DataPickerControl.js +92 -0
  432. package/esm/renderer/DateShortCutControl.d.ts +84 -0
  433. package/esm/renderer/DateShortCutControl.js +482 -0
  434. package/esm/renderer/ExpressionFormulaControl.d.ts +45 -0
  435. package/esm/renderer/ExpressionFormulaControl.js +248 -0
  436. package/esm/renderer/FeatureControl.d.ts +64 -0
  437. package/esm/renderer/FeatureControl.js +299 -0
  438. package/esm/renderer/FormulaControl.d.ts +121 -0
  439. package/esm/renderer/FormulaControl.js +513 -0
  440. package/esm/renderer/GoConfigControl.d.ts +17 -0
  441. package/esm/renderer/GoConfigControl.js +70 -0
  442. package/esm/renderer/OptionControl.d.ts +152 -0
  443. package/esm/renderer/OptionControl.js +906 -0
  444. package/esm/renderer/RangePartsControl.d.ts +91 -0
  445. package/esm/renderer/RangePartsControl.js +505 -0
  446. package/esm/renderer/StatusControl.d.ts +44 -0
  447. package/esm/renderer/StatusControl.js +212 -0
  448. package/esm/renderer/SwitchMoreControl.d.ts +254 -0
  449. package/esm/renderer/SwitchMoreControl.js +482 -0
  450. package/esm/renderer/TimelineItemControl.d.ts +140 -0
  451. package/esm/renderer/TimelineItemControl.js +622 -0
  452. package/esm/renderer/TransferTableControl.d.ts +199 -0
  453. package/esm/renderer/TransferTableControl.js +512 -0
  454. package/esm/renderer/TreeOptionControl.d.ts +71 -0
  455. package/esm/renderer/TreeOptionControl.js +725 -0
  456. package/esm/renderer/ValidationControl.d.ts +65 -0
  457. package/esm/renderer/ValidationControl.js +370 -0
  458. package/esm/renderer/ValidationItem.d.ts +46 -0
  459. package/esm/renderer/ValidationItem.js +200 -0
  460. package/esm/renderer/event-control/action-config-dialog.d.ts +73 -0
  461. package/esm/renderer/event-control/action-config-dialog.js +273 -0
  462. package/{dist/event-action → esm/renderer/event-control}/action-config-panel.d.ts +0 -0
  463. package/esm/renderer/event-control/action-config-panel.js +64 -0
  464. package/esm/renderer/event-control/actions.d.ts +3 -0
  465. package/esm/renderer/event-control/actions.js +1176 -0
  466. package/{dist/event-action → esm/renderer/event-control}/comp-action-select.d.ts +0 -0
  467. package/esm/renderer/event-control/comp-action-select.js +66 -0
  468. package/esm/renderer/event-control/helper.d.ts +133 -0
  469. package/esm/renderer/event-control/helper.js +1024 -0
  470. package/esm/renderer/event-control/index.d.ts +90 -0
  471. package/esm/renderer/event-control/index.js +768 -0
  472. package/esm/renderer/event-control/types.d.ts +27 -0
  473. package/{dist/component/control → esm/renderer}/style-control/Background.d.ts +0 -0
  474. package/esm/renderer/style-control/Background.js +484 -0
  475. package/esm/renderer/style-control/Border.d.ts +18 -0
  476. package/esm/renderer/style-control/Border.js +222 -0
  477. package/esm/renderer/style-control/BoxModel.d.ts +17 -0
  478. package/esm/renderer/style-control/BoxModel.js +72 -0
  479. package/esm/renderer/style-control/BoxShadow.d.ts +18 -0
  480. package/esm/renderer/style-control/BoxShadow.js +119 -0
  481. package/{dist/component/control → esm/renderer}/style-control/Display.d.ts +0 -0
  482. package/esm/renderer/style-control/Display.js +189 -0
  483. package/{dist/component/control → esm/renderer}/style-control/Font.d.ts +0 -0
  484. package/esm/renderer/style-control/Font.js +204 -0
  485. package/esm/renderer/style-control/InsetBoxModel.d.ts +17 -0
  486. package/esm/renderer/style-control/InsetBoxModel.js +69 -0
  487. package/{dist/component/control → esm/renderer}/style-control/font-family.d.ts +0 -0
  488. package/esm/renderer/style-control/font-family.js +145 -0
  489. package/{dist/component/control → esm/renderer}/style-control/transformation.d.ts +0 -0
  490. package/esm/renderer/style-control/transformation.js +74 -0
  491. package/esm/renderer/style-control/types.d.ts +8 -0
  492. package/esm/renderer/textarea-formula/FormulaPicker.d.ts +12 -0
  493. package/esm/renderer/textarea-formula/FormulaPicker.js +37 -0
  494. package/esm/renderer/textarea-formula/TextareaFormulaControl.d.ts +67 -0
  495. package/esm/renderer/textarea-formula/TextareaFormulaControl.js +334 -0
  496. package/esm/renderer/textarea-formula/plugin.d.ts +32 -0
  497. package/esm/renderer/textarea-formula/plugin.js +273 -0
  498. package/esm/renderer/textarea-formula/utils.d.ts +12 -0
  499. package/esm/renderer/textarea-formula/utils.js +76 -0
  500. package/esm/tpl/api.d.ts +1 -0
  501. package/esm/tpl/api.js +483 -0
  502. package/esm/tpl/common.d.ts +1 -0
  503. package/esm/tpl/common.js +950 -0
  504. package/esm/tpl/horizontal.d.ts +1 -0
  505. package/esm/tpl/horizontal.js +241 -0
  506. package/esm/tpl/index.d.ts +8 -0
  507. package/esm/tpl/layout.d.ts +1 -0
  508. package/esm/tpl/layout.js +709 -0
  509. package/esm/tpl/options.d.ts +1 -0
  510. package/esm/tpl/options.js +360 -0
  511. package/esm/tpl/style.d.ts +15 -0
  512. package/esm/tpl/style.js +354 -0
  513. package/esm/tpl/validations.d.ts +1 -0
  514. package/esm/tpl/validations.js +485 -0
  515. package/esm/util.d.ts +47 -0
  516. package/esm/util.js +22 -0
  517. package/esm/validator.d.ts +62 -0
  518. package/esm/validator.js +313 -0
  519. package/lib/component/BaseControl.d.ts +224 -0
  520. package/lib/component/BaseControl.js +320 -0
  521. package/lib/component/InputComponentName.d.ts +8 -0
  522. package/lib/component/InputComponentName.js +45 -0
  523. package/lib/component/TableViewEditor.d.ts +79 -0
  524. package/lib/component/TableViewEditor.js +690 -0
  525. package/lib/icons/btn/btn-group.svg.js +58 -0
  526. package/lib/icons/btn/btn-select.svg.js +54 -0
  527. package/lib/icons/btn/btn-toolbar.svg.js +54 -0
  528. package/lib/icons/btn/button.svg.js +54 -0
  529. package/lib/icons/btn/dropdown-btn.svg.js +52 -0
  530. package/lib/icons/container/anchor-nav.svg.js +52 -0
  531. package/lib/icons/container/collapse.svg.js +52 -0
  532. package/lib/icons/container/container.svg.js +48 -0
  533. package/lib/icons/container/flex-container.svg.js +52 -0
  534. package/lib/icons/container/form-group.svg.js +52 -0
  535. package/lib/icons/container/grid.svg.js +49 -0
  536. package/lib/icons/container/iframe.svg.js +51 -0
  537. package/lib/icons/container/panel.svg.js +52 -0
  538. package/lib/icons/container/table-view.svg.js +52 -0
  539. package/lib/icons/container/tabs.svg.js +52 -0
  540. package/lib/icons/container/tooltip-wrapper.svg.js +56 -0
  541. package/lib/icons/container/web-component.svg.js +48 -0
  542. package/lib/icons/feat/audio.svg.js +56 -0
  543. package/lib/icons/feat/custom.svg.js +50 -0
  544. package/lib/icons/feat/each.svg.js +52 -0
  545. package/lib/icons/feat/form.svg.js +52 -0
  546. package/lib/icons/feat/nav.svg.js +48 -0
  547. package/lib/icons/feat/qrcode.svg.js +52 -0
  548. package/lib/icons/feat/service.svg.js +52 -0
  549. package/lib/icons/feat/table.svg.js +56 -0
  550. package/lib/icons/feat/tasks.svg.js +59 -0
  551. package/lib/icons/feat/video.svg.js +51 -0
  552. package/lib/icons/feat/wizard.svg.js +62 -0
  553. package/lib/icons/form/chained-select.svg.js +57 -0
  554. package/lib/icons/form/checkbox.svg.js +54 -0
  555. package/lib/icons/form/checkboxes.svg.js +52 -0
  556. package/lib/icons/form/combo.svg.js +55 -0
  557. package/lib/icons/form/condition-builder.svg.js +51 -0
  558. package/lib/icons/form/diff-editor.svg.js +52 -0
  559. package/lib/icons/form/editor.svg.js +52 -0
  560. package/lib/icons/form/formula.svg.js +57 -0
  561. package/lib/icons/form/hidden.svg.js +56 -0
  562. package/lib/icons/form/input-city.svg.js +52 -0
  563. package/lib/icons/form/input-color.svg.js +61 -0
  564. package/lib/icons/form/input-date-range.svg.js +52 -0
  565. package/lib/icons/form/input-date.svg.js +58 -0
  566. package/lib/icons/form/input-datetime.svg.js +52 -0
  567. package/lib/icons/form/input-email.svg.js +52 -0
  568. package/lib/icons/form/input-excel.svg.js +52 -0
  569. package/lib/icons/form/input-file.svg.js +52 -0
  570. package/lib/icons/form/input-group.svg.js +55 -0
  571. package/lib/icons/form/input-image.svg.js +57 -0
  572. package/lib/icons/form/input-kv.svg.js +54 -0
  573. package/lib/icons/form/input-month-range.svg.js +52 -0
  574. package/lib/icons/form/input-number.svg.js +54 -0
  575. package/lib/icons/form/input-password.svg.js +52 -0
  576. package/lib/icons/form/input-quarter-range.svg.js +63 -0
  577. package/lib/icons/form/input-range.svg.js +63 -0
  578. package/lib/icons/form/input-rating.svg.js +48 -0
  579. package/lib/icons/form/input-repeat.svg.js +52 -0
  580. package/lib/icons/form/input-rich-text.svg.js +77 -0
  581. package/lib/icons/form/input-tag.svg.js +53 -0
  582. package/lib/icons/form/input-text.svg.js +56 -0
  583. package/lib/icons/form/input-time-range.svg.js +57 -0
  584. package/lib/icons/form/input-time.svg.js +56 -0
  585. package/lib/icons/form/input-tree.svg.js +52 -0
  586. package/lib/icons/form/input-url.svg.js +55 -0
  587. package/lib/icons/form/input-year.svg.js +58 -0
  588. package/lib/icons/form/inputArray.svg.js +54 -0
  589. package/lib/icons/form/list-select.svg.js +50 -0
  590. package/lib/icons/form/location-picker.svg.js +56 -0
  591. package/lib/icons/form/matrix-checkboxes.svg.js +49 -0
  592. package/lib/icons/form/month.svg.js +52 -0
  593. package/lib/icons/form/nested-select.svg.js +50 -0
  594. package/lib/icons/form/picker.svg.js +52 -0
  595. package/lib/icons/form/quarter.svg.js +58 -0
  596. package/lib/icons/form/radios.svg.js +56 -0
  597. package/lib/icons/form/select.svg.js +52 -0
  598. package/lib/icons/form/static.svg.js +54 -0
  599. package/lib/icons/form/sub-form.svg.js +52 -0
  600. package/lib/icons/form/switch.svg.js +57 -0
  601. package/lib/icons/form/tabs-transfer.svg.js +55 -0
  602. package/lib/icons/form/textarea.svg.js +60 -0
  603. package/lib/icons/form/transfer.svg.js +52 -0
  604. package/lib/icons/form/tree-select.svg.js +57 -0
  605. package/lib/icons/form/uuid.svg.js +54 -0
  606. package/lib/icons/index.d.ts +2 -0
  607. package/lib/icons/index.js +263 -0
  608. package/lib/icons/layout/layout-1with2.svg.js +56 -0
  609. package/lib/icons/layout/layout-2cols.svg.js +56 -0
  610. package/lib/icons/layout/layout-2row.svg.js +56 -0
  611. package/lib/icons/layout/layout-2with1.svg.js +57 -0
  612. package/lib/icons/layout/layout-3cols.svg.js +56 -0
  613. package/lib/icons/layout/layout-3row.svg.js +57 -0
  614. package/lib/icons/layout/layout-absolute.svg.js +51 -0
  615. package/lib/icons/layout/layout-fixed.svg.js +51 -0
  616. package/lib/icons/layout/layout-full.svg.js +73 -0
  617. package/lib/icons/layout/layout1-2.svg.js +57 -0
  618. package/lib/icons/layout/layout2-1.svg.js +57 -0
  619. package/lib/icons/layout/layout3-1.svg.js +57 -0
  620. package/lib/icons/layout/layout3-2.svg.js +57 -0
  621. package/lib/icons/other/divider.svg.js +50 -0
  622. package/lib/icons/other/property-sheet.svg.js +52 -0
  623. package/lib/icons/other/tooltip.svg.js +54 -0
  624. package/lib/icons/show/URL.svg.js +55 -0
  625. package/lib/icons/show/avatar.svg.js +58 -0
  626. package/lib/icons/show/breadcrumb.svg.js +52 -0
  627. package/lib/icons/show/card.svg.js +52 -0
  628. package/lib/icons/show/cards.svg.js +49 -0
  629. package/lib/icons/show/carousel.svg.js +56 -0
  630. package/lib/icons/show/chart.svg.js +51 -0
  631. package/lib/icons/show/code.svg.js +56 -0
  632. package/lib/icons/show/date.svg.js +52 -0
  633. package/lib/icons/show/datetime.svg.js +52 -0
  634. package/lib/icons/show/image.svg.js +56 -0
  635. package/lib/icons/show/images.svg.js +59 -0
  636. package/lib/icons/show/json-view.svg.js +62 -0
  637. package/lib/icons/show/list.svg.js +52 -0
  638. package/lib/icons/show/log.svg.js +52 -0
  639. package/lib/icons/show/mapping.svg.js +52 -0
  640. package/lib/icons/show/markdown.svg.js +54 -0
  641. package/lib/icons/show/plain.svg.js +57 -0
  642. package/lib/icons/show/progress.svg.js +50 -0
  643. package/lib/icons/show/sparkline.svg.js +52 -0
  644. package/lib/icons/show/status.svg.js +55 -0
  645. package/lib/icons/show/steps.svg.js +52 -0
  646. package/lib/icons/show/time.svg.js +54 -0
  647. package/lib/index.d.ts +176 -0
  648. package/lib/index.js +208 -0
  649. package/lib/locale/en-US.d.ts +1 -0
  650. package/lib/locale/en-US.js +2886 -0
  651. package/lib/locale/index.d.ts +2 -0
  652. package/lib/locale/zh-CN.d.ts +1 -0
  653. package/lib/locale/zh-CN.js +2819 -0
  654. package/lib/plugin/Alert.d.ts +23 -0
  655. package/lib/plugin/Alert.js +179 -0
  656. package/lib/plugin/AnchorNav.d.ts +49 -0
  657. package/lib/plugin/AnchorNav.js +379 -0
  658. package/lib/plugin/Audio.d.ts +23 -0
  659. package/lib/plugin/Audio.js +188 -0
  660. package/lib/plugin/Avatar.d.ts +28 -0
  661. package/lib/plugin/Avatar.js +341 -0
  662. package/lib/plugin/Breadcrumb.d.ts +28 -0
  663. package/lib/plugin/Breadcrumb.js +163 -0
  664. package/lib/plugin/Button.d.ts +30 -0
  665. package/lib/plugin/Button.js +348 -0
  666. package/lib/plugin/ButtonGroup.d.ts +40 -0
  667. package/lib/plugin/ButtonGroup.js +196 -0
  668. package/lib/plugin/CRUD.d.ts +128 -0
  669. package/lib/plugin/CRUD.js +1553 -0
  670. package/lib/plugin/CRUD2.d.ts +78 -0
  671. package/lib/plugin/CRUD2.js +1835 -0
  672. package/lib/plugin/Card.d.ts +55 -0
  673. package/lib/plugin/Card.js +323 -0
  674. package/lib/plugin/Card2.d.ts +23 -0
  675. package/lib/plugin/Card2.js +160 -0
  676. package/lib/plugin/Cards.d.ts +72 -0
  677. package/lib/plugin/Cards.js +347 -0
  678. package/lib/plugin/Carousel.d.ts +41 -0
  679. package/lib/plugin/Carousel.js +381 -0
  680. package/lib/plugin/Chart.d.ts +51 -0
  681. package/lib/plugin/Chart.js +369 -0
  682. package/lib/plugin/CodeView.d.ts +20 -0
  683. package/lib/plugin/CodeView.js +126 -0
  684. package/lib/plugin/Collapse.d.ts +34 -0
  685. package/lib/plugin/Collapse.js +190 -0
  686. package/lib/plugin/CollapseGroup.d.ts +66 -0
  687. package/lib/plugin/CollapseGroup.js +280 -0
  688. package/lib/plugin/ColumnToggler.d.ts +23 -0
  689. package/lib/plugin/ColumnToggler.js +171 -0
  690. package/lib/plugin/Container.d.ts +32 -0
  691. package/lib/plugin/Container.js +219 -0
  692. package/lib/plugin/Custom.d.ts +28 -0
  693. package/lib/plugin/Custom.js +168 -0
  694. package/lib/plugin/CustomRegion.d.ts +40 -0
  695. package/lib/plugin/CustomRegion.js +209 -0
  696. package/lib/plugin/Date.d.ts +22 -0
  697. package/lib/plugin/Date.js +136 -0
  698. package/lib/plugin/Datetime.d.ts +17 -0
  699. package/lib/plugin/Datetime.js +106 -0
  700. package/lib/plugin/Dialog.d.ts +41 -0
  701. package/lib/plugin/Dialog.js +271 -0
  702. package/lib/plugin/Divider.d.ts +16 -0
  703. package/lib/plugin/Divider.js +103 -0
  704. package/lib/plugin/Drawer.d.ts +38 -0
  705. package/lib/plugin/Drawer.js +289 -0
  706. package/lib/plugin/DropDownButton.d.ts +45 -0
  707. package/lib/plugin/DropDownButton.js +301 -0
  708. package/lib/plugin/Each.d.ts +36 -0
  709. package/lib/plugin/Each.js +219 -0
  710. package/lib/plugin/Flex.d.ts +6 -0
  711. package/lib/plugin/Flex.js +43 -0
  712. package/lib/plugin/Form/ButtonGroupSelect.d.ts +30 -0
  713. package/lib/plugin/Form/ButtonGroupSelect.js +232 -0
  714. package/lib/plugin/Form/ButtonToolbar.d.ts +31 -0
  715. package/lib/plugin/Form/ButtonToolbar.js +190 -0
  716. package/lib/plugin/Form/ChainedSelect.d.ts +25 -0
  717. package/lib/plugin/Form/ChainedSelect.js +236 -0
  718. package/lib/plugin/Form/Checkbox.d.ts +25 -0
  719. package/lib/plugin/Form/Checkbox.js +241 -0
  720. package/lib/plugin/Form/Checkboxes.d.ts +31 -0
  721. package/lib/plugin/Form/Checkboxes.js +264 -0
  722. package/lib/plugin/Form/CodeEditor.d.ts +26 -0
  723. package/lib/plugin/Form/CodeEditor.js +274 -0
  724. package/lib/plugin/Form/Combo.d.ts +42 -0
  725. package/lib/plugin/Form/Combo.js +616 -0
  726. package/lib/plugin/Form/ConditionBuilder.d.ts +37 -0
  727. package/lib/plugin/Form/ConditionBuilder.js +333 -0
  728. package/lib/plugin/Form/Control.d.ts +28 -0
  729. package/lib/plugin/Form/Control.js +162 -0
  730. package/lib/plugin/Form/DiffEditor.d.ts +26 -0
  731. package/lib/plugin/Form/DiffEditor.js +281 -0
  732. package/lib/plugin/Form/FieldSet.d.ts +26 -0
  733. package/lib/plugin/Form/FieldSet.js +203 -0
  734. package/lib/plugin/Form/Form.d.ts +43 -0
  735. package/lib/plugin/Form/Form.js +862 -0
  736. package/lib/plugin/Form/Formula.d.ts +20 -0
  737. package/lib/plugin/Form/Formula.js +147 -0
  738. package/lib/plugin/Form/Group.d.ts +27 -0
  739. package/lib/plugin/Form/Group.js +293 -0
  740. package/lib/plugin/Form/Hidden.d.ts +25 -0
  741. package/lib/plugin/Form/Hidden.js +132 -0
  742. package/lib/plugin/Form/InputArray.d.ts +29 -0
  743. package/lib/plugin/Form/InputArray.js +269 -0
  744. package/lib/plugin/Form/InputCity.d.ts +25 -0
  745. package/lib/plugin/Form/InputCity.js +208 -0
  746. package/lib/plugin/Form/InputColor.d.ts +42 -0
  747. package/lib/plugin/Form/InputColor.js +367 -0
  748. package/lib/plugin/Form/InputDate.d.ts +27 -0
  749. package/lib/plugin/Form/InputDate.js +418 -0
  750. package/lib/plugin/Form/InputDateRange.d.ts +27 -0
  751. package/lib/plugin/Form/InputDateRange.js +434 -0
  752. package/lib/plugin/Form/InputDateTime.d.ts +20 -0
  753. package/lib/plugin/Form/InputDateTime.js +115 -0
  754. package/lib/plugin/Form/InputDateTimeRange.d.ts +21 -0
  755. package/lib/plugin/Form/InputDateTimeRange.js +121 -0
  756. package/lib/plugin/Form/InputEmail.d.ts +28 -0
  757. package/lib/plugin/Form/InputEmail.js +102 -0
  758. package/lib/plugin/Form/InputExcel.d.ts +24 -0
  759. package/lib/plugin/Form/InputExcel.js +188 -0
  760. package/lib/plugin/Form/InputFile.d.ts +31 -0
  761. package/lib/plugin/Form/InputFile.js +389 -0
  762. package/lib/plugin/Form/InputGroup.d.ts +33 -0
  763. package/lib/plugin/Form/InputGroup.js +160 -0
  764. package/lib/plugin/Form/InputImage.d.ts +31 -0
  765. package/lib/plugin/Form/InputImage.js +421 -0
  766. package/lib/plugin/Form/InputKV.d.ts +36 -0
  767. package/lib/plugin/Form/InputKV.js +192 -0
  768. package/lib/plugin/Form/InputMonth.d.ts +19 -0
  769. package/lib/plugin/Form/InputMonth.js +113 -0
  770. package/lib/plugin/Form/InputMonthRange.d.ts +21 -0
  771. package/lib/plugin/Form/InputMonthRange.js +121 -0
  772. package/lib/plugin/Form/InputNumber.d.ts +27 -0
  773. package/lib/plugin/Form/InputNumber.js +317 -0
  774. package/lib/plugin/Form/InputPassword.d.ts +28 -0
  775. package/lib/plugin/Form/InputPassword.js +102 -0
  776. package/lib/plugin/Form/InputQuarter.d.ts +19 -0
  777. package/lib/plugin/Form/InputQuarter.js +113 -0
  778. package/lib/plugin/Form/InputQuarterRange.d.ts +21 -0
  779. package/lib/plugin/Form/InputQuarterRange.js +121 -0
  780. package/lib/plugin/Form/InputRange.d.ts +25 -0
  781. package/lib/plugin/Form/InputRange.js +351 -0
  782. package/lib/plugin/Form/InputRating.d.ts +26 -0
  783. package/lib/plugin/Form/InputRating.js +398 -0
  784. package/lib/plugin/Form/InputRepeat.d.ts +20 -0
  785. package/lib/plugin/Form/InputRepeat.js +126 -0
  786. package/lib/plugin/Form/InputRichText.d.ts +22 -0
  787. package/lib/plugin/Form/InputRichText.js +236 -0
  788. package/lib/plugin/Form/InputSubForm.d.ts +33 -0
  789. package/lib/plugin/Form/InputSubForm.js +277 -0
  790. package/lib/plugin/Form/InputTable.d.ts +40 -0
  791. package/lib/plugin/Form/InputTable.js +426 -0
  792. package/lib/plugin/Form/InputTag.d.ts +26 -0
  793. package/lib/plugin/Form/InputTag.js +234 -0
  794. package/lib/plugin/Form/InputText.d.ts +43 -0
  795. package/lib/plugin/Form/InputText.js +389 -0
  796. package/lib/plugin/Form/InputTime.d.ts +20 -0
  797. package/lib/plugin/Form/InputTime.js +115 -0
  798. package/lib/plugin/Form/InputTimeRange.d.ts +21 -0
  799. package/lib/plugin/Form/InputTimeRange.js +121 -0
  800. package/lib/plugin/Form/InputTree.d.ts +79 -0
  801. package/lib/plugin/Form/InputTree.js +504 -0
  802. package/lib/plugin/Form/InputURL.d.ts +29 -0
  803. package/lib/plugin/Form/InputURL.js +108 -0
  804. package/lib/plugin/Form/InputYear.d.ts +19 -0
  805. package/lib/plugin/Form/InputYear.js +113 -0
  806. package/lib/plugin/Form/InputYearRange.d.ts +21 -0
  807. package/lib/plugin/Form/InputYearRange.js +121 -0
  808. package/lib/plugin/Form/Item.d.ts +11 -0
  809. package/lib/plugin/Form/Item.js +263 -0
  810. package/lib/plugin/Form/ListSelect.d.ts +29 -0
  811. package/lib/plugin/Form/ListSelect.js +199 -0
  812. package/lib/plugin/Form/LocationPicker.d.ts +20 -0
  813. package/lib/plugin/Form/LocationPicker.js +139 -0
  814. package/lib/plugin/Form/MatrixCheckboxes.d.ts +32 -0
  815. package/lib/plugin/Form/MatrixCheckboxes.js +274 -0
  816. package/lib/plugin/Form/NestedSelect.d.ts +80 -0
  817. package/lib/plugin/Form/NestedSelect.js +366 -0
  818. package/lib/plugin/Form/Picker.d.ts +29 -0
  819. package/lib/plugin/Form/Picker.js +300 -0
  820. package/lib/plugin/Form/Radios.d.ts +30 -0
  821. package/lib/plugin/Form/Radios.js +255 -0
  822. package/lib/plugin/Form/Select.d.ts +30 -0
  823. package/lib/plugin/Form/Select.js +367 -0
  824. package/lib/plugin/Form/Static.d.ts +24 -0
  825. package/lib/plugin/Form/Static.js +397 -0
  826. package/lib/plugin/Form/Switch.d.ts +29 -0
  827. package/lib/plugin/Form/Switch.js +289 -0
  828. package/lib/plugin/Form/TabsTransfer.d.ts +81 -0
  829. package/lib/plugin/Form/TabsTransfer.js +365 -0
  830. package/lib/plugin/Form/Textarea.d.ts +26 -0
  831. package/lib/plugin/Form/Textarea.js +248 -0
  832. package/lib/plugin/Form/Transfer.d.ts +73 -0
  833. package/lib/plugin/Form/Transfer.js +385 -0
  834. package/lib/plugin/Form/TreeSelect.d.ts +80 -0
  835. package/lib/plugin/Form/TreeSelect.js +492 -0
  836. package/lib/plugin/Form/UUID.d.ts +24 -0
  837. package/lib/plugin/Form/UUID.js +132 -0
  838. package/lib/plugin/Grid.d.ts +49 -0
  839. package/lib/plugin/Grid.js +787 -0
  840. package/lib/plugin/HBox.d.ts +46 -0
  841. package/lib/plugin/HBox.js +711 -0
  842. package/lib/plugin/IFrame.d.ts +23 -0
  843. package/lib/plugin/IFrame.js +148 -0
  844. package/lib/plugin/Image.d.ts +34 -0
  845. package/lib/plugin/Image.js +311 -0
  846. package/lib/plugin/Images.d.ts +26 -0
  847. package/lib/plugin/Images.js +244 -0
  848. package/lib/plugin/Json.d.ts +27 -0
  849. package/lib/plugin/Json.js +141 -0
  850. package/lib/plugin/Layout/FlexPluginBase.d.ts +40 -0
  851. package/lib/plugin/Layout/FlexPluginBase.js +337 -0
  852. package/lib/plugin/Layout/Layout1_2_v4.d.ts +10 -0
  853. package/lib/plugin/Layout/Layout1_2_v4.js +148 -0
  854. package/lib/plugin/Layout/Layout_fixed.d.ts +10 -0
  855. package/lib/plugin/Layout/Layout_fixed.js +80 -0
  856. package/lib/plugin/Layout/Layout_fixed_bottom.d.ts +10 -0
  857. package/lib/plugin/Layout/Layout_fixed_bottom.js +87 -0
  858. package/lib/plugin/Layout/Layout_fixed_top.d.ts +10 -0
  859. package/lib/plugin/Layout/Layout_fixed_top.js +86 -0
  860. package/lib/plugin/Layout/Layout_scroll_x.d.ts +10 -0
  861. package/lib/plugin/Layout/Layout_scroll_x.js +170 -0
  862. package/lib/plugin/Layout/Layout_scroll_y.d.ts +10 -0
  863. package/lib/plugin/Layout/Layout_scroll_y.js +158 -0
  864. package/lib/plugin/Link.d.ts +23 -0
  865. package/lib/plugin/Link.js +155 -0
  866. package/lib/plugin/List.d.ts +56 -0
  867. package/lib/plugin/List.js +324 -0
  868. package/lib/plugin/ListItem.d.ts +16 -0
  869. package/lib/plugin/ListItem.js +255 -0
  870. package/lib/plugin/Log.d.ts +19 -0
  871. package/lib/plugin/Log.js +123 -0
  872. package/lib/plugin/Mapping.d.ts +38 -0
  873. package/lib/plugin/Mapping.js +196 -0
  874. package/lib/plugin/Markdown.d.ts +22 -0
  875. package/lib/plugin/Markdown.js +119 -0
  876. package/lib/plugin/Nav.d.ts +49 -0
  877. package/lib/plugin/Nav.js +230 -0
  878. package/lib/plugin/Operation.d.ts +26 -0
  879. package/lib/plugin/Operation.js +145 -0
  880. package/lib/plugin/Others/Action.d.ts +9 -0
  881. package/lib/plugin/Others/Action.js +378 -0
  882. package/lib/plugin/Others/TableCell.d.ts +8 -0
  883. package/lib/plugin/Others/TableCell.js +387 -0
  884. package/lib/plugin/Page.d.ts +33 -0
  885. package/lib/plugin/Page.js +413 -0
  886. package/lib/plugin/Pagination.d.ts +49 -0
  887. package/lib/plugin/Pagination.js +326 -0
  888. package/lib/plugin/Panel.d.ts +32 -0
  889. package/lib/plugin/Panel.js +287 -0
  890. package/lib/plugin/Plain.d.ts +22 -0
  891. package/lib/plugin/Plain.js +148 -0
  892. package/lib/plugin/Progress.d.ts +28 -0
  893. package/lib/plugin/Progress.js +307 -0
  894. package/lib/plugin/Property.d.ts +28 -0
  895. package/lib/plugin/Property.js +190 -0
  896. package/lib/plugin/QRCode.d.ts +22 -0
  897. package/lib/plugin/QRCode.js +155 -0
  898. package/lib/plugin/Reset.d.ts +12 -0
  899. package/lib/plugin/Reset.js +84 -0
  900. package/lib/plugin/Service.d.ts +32 -0
  901. package/lib/plugin/Service.js +290 -0
  902. package/lib/plugin/Sparkline.d.ts +31 -0
  903. package/lib/plugin/Sparkline.js +115 -0
  904. package/lib/plugin/Status.d.ts +22 -0
  905. package/lib/plugin/Status.js +138 -0
  906. package/lib/plugin/Steps.d.ts +40 -0
  907. package/lib/plugin/Steps.js +179 -0
  908. package/lib/plugin/Submit.d.ts +11 -0
  909. package/lib/plugin/Submit.js +79 -0
  910. package/lib/plugin/Table.d.ts +27 -0
  911. package/lib/plugin/Table.js +649 -0
  912. package/lib/plugin/Table2.d.ts +26 -0
  913. package/lib/plugin/Table2.js +891 -0
  914. package/lib/plugin/TableCell2.d.ts +8 -0
  915. package/lib/plugin/TableCell2.js +493 -0
  916. package/lib/plugin/TableView.d.ts +135 -0
  917. package/lib/plugin/TableView.js +824 -0
  918. package/lib/plugin/Tabs.d.ts +77 -0
  919. package/lib/plugin/Tabs.js +535 -0
  920. package/lib/plugin/Tasks.d.ts +44 -0
  921. package/lib/plugin/Tasks.js +276 -0
  922. package/lib/plugin/Time.d.ts +17 -0
  923. package/lib/plugin/Time.js +108 -0
  924. package/lib/plugin/Timeline.d.ts +34 -0
  925. package/lib/plugin/Timeline.js +193 -0
  926. package/lib/plugin/TooltipWrapper.d.ts +42 -0
  927. package/lib/plugin/TooltipWrapper.js +304 -0
  928. package/lib/plugin/Tpl.d.ts +21 -0
  929. package/lib/plugin/Tpl.js +209 -0
  930. package/lib/plugin/Video.d.ts +27 -0
  931. package/lib/plugin/Video.js +197 -0
  932. package/lib/plugin/WebComponent.d.ts +25 -0
  933. package/lib/plugin/WebComponent.js +161 -0
  934. package/lib/plugin/Wizard.d.ts +56 -0
  935. package/lib/plugin/Wizard.js +872 -0
  936. package/lib/plugin/Wrapper.d.ts +24 -0
  937. package/lib/plugin/Wrapper.js +226 -0
  938. package/lib/renderer/APIControl.d.ts +946 -0
  939. package/lib/renderer/APIControl.js +942 -0
  940. package/lib/renderer/ActionApiControl.d.ts +1078 -0
  941. package/lib/renderer/BadgeControl.d.ts +102 -0
  942. package/lib/renderer/BadgeControl.js +337 -0
  943. package/lib/renderer/ColumnControl.d.ts +19 -0
  944. package/lib/renderer/DataBindingControl.d.ts +42 -0
  945. package/lib/renderer/DataBindingControl.js +295 -0
  946. package/lib/renderer/DataMappingControl.d.ts +11 -0
  947. package/lib/renderer/DataMappingControl.js +83 -0
  948. package/lib/renderer/DataPickerControl.d.ts +13 -0
  949. package/lib/renderer/DataPickerControl.js +98 -0
  950. package/lib/renderer/DateShortCutControl.d.ts +84 -0
  951. package/lib/renderer/DateShortCutControl.js +492 -0
  952. package/lib/renderer/ExpressionFormulaControl.d.ts +45 -0
  953. package/lib/renderer/ExpressionFormulaControl.js +257 -0
  954. package/lib/renderer/FeatureControl.d.ts +64 -0
  955. package/lib/renderer/FeatureControl.js +309 -0
  956. package/lib/renderer/FormulaControl.d.ts +121 -0
  957. package/lib/renderer/FormulaControl.js +528 -0
  958. package/lib/renderer/GoConfigControl.d.ts +17 -0
  959. package/lib/renderer/GoConfigControl.js +79 -0
  960. package/lib/renderer/OptionControl.d.ts +152 -0
  961. package/lib/renderer/OptionControl.js +918 -0
  962. package/lib/renderer/RangePartsControl.d.ts +91 -0
  963. package/lib/renderer/RangePartsControl.js +515 -0
  964. package/lib/renderer/StatusControl.d.ts +44 -0
  965. package/lib/renderer/StatusControl.js +221 -0
  966. package/lib/renderer/SwitchMoreControl.d.ts +254 -0
  967. package/lib/renderer/SwitchMoreControl.js +491 -0
  968. package/lib/renderer/TimelineItemControl.d.ts +140 -0
  969. package/lib/renderer/TimelineItemControl.js +633 -0
  970. package/lib/renderer/TransferTableControl.d.ts +199 -0
  971. package/lib/renderer/TransferTableControl.js +521 -0
  972. package/lib/renderer/TreeOptionControl.d.ts +71 -0
  973. package/lib/renderer/TreeOptionControl.js +738 -0
  974. package/lib/renderer/ValidationControl.d.ts +65 -0
  975. package/lib/renderer/ValidationControl.js +381 -0
  976. package/lib/renderer/ValidationItem.d.ts +46 -0
  977. package/lib/renderer/ValidationItem.js +209 -0
  978. package/lib/renderer/event-control/action-config-dialog.d.ts +73 -0
  979. package/lib/renderer/event-control/action-config-dialog.js +281 -0
  980. package/lib/renderer/event-control/action-config-panel.d.ts +8 -0
  981. package/lib/renderer/event-control/action-config-panel.js +73 -0
  982. package/lib/renderer/event-control/actions.d.ts +3 -0
  983. package/lib/renderer/event-control/actions.js +1184 -0
  984. package/lib/renderer/event-control/comp-action-select.d.ts +11 -0
  985. package/lib/renderer/event-control/comp-action-select.js +75 -0
  986. package/lib/renderer/event-control/helper.d.ts +133 -0
  987. package/lib/renderer/event-control/helper.js +1053 -0
  988. package/lib/renderer/event-control/index.d.ts +90 -0
  989. package/lib/renderer/event-control/index.js +799 -0
  990. package/lib/renderer/event-control/types.d.ts +27 -0
  991. package/lib/renderer/style-control/Background.d.ts +17 -0
  992. package/lib/renderer/style-control/Background.js +495 -0
  993. package/lib/renderer/style-control/Border.d.ts +18 -0
  994. package/lib/renderer/style-control/Border.js +230 -0
  995. package/lib/renderer/style-control/BoxModel.d.ts +17 -0
  996. package/lib/renderer/style-control/BoxModel.js +80 -0
  997. package/lib/renderer/style-control/BoxShadow.d.ts +18 -0
  998. package/lib/renderer/style-control/BoxShadow.js +128 -0
  999. package/lib/renderer/style-control/Display.d.ts +14 -0
  1000. package/lib/renderer/style-control/Display.js +197 -0
  1001. package/lib/renderer/style-control/Font.d.ts +16 -0
  1002. package/lib/renderer/style-control/Font.js +214 -0
  1003. package/lib/renderer/style-control/InsetBoxModel.d.ts +17 -0
  1004. package/lib/renderer/style-control/InsetBoxModel.js +77 -0
  1005. package/lib/renderer/style-control/font-family.d.ts +11 -0
  1006. package/lib/renderer/style-control/font-family.js +149 -0
  1007. package/lib/renderer/style-control/transformation.d.ts +29 -0
  1008. package/lib/renderer/style-control/transformation.js +84 -0
  1009. package/lib/renderer/style-control/types.d.ts +8 -0
  1010. package/lib/renderer/textarea-formula/FormulaPicker.d.ts +12 -0
  1011. package/lib/renderer/textarea-formula/FormulaPicker.js +47 -0
  1012. package/lib/renderer/textarea-formula/TextareaFormulaControl.d.ts +67 -0
  1013. package/lib/renderer/textarea-formula/TextareaFormulaControl.js +345 -0
  1014. package/lib/renderer/textarea-formula/plugin.d.ts +32 -0
  1015. package/lib/renderer/textarea-formula/plugin.js +278 -0
  1016. package/lib/renderer/textarea-formula/utils.d.ts +12 -0
  1017. package/lib/renderer/textarea-formula/utils.js +81 -0
  1018. package/lib/tpl/api.d.ts +1 -0
  1019. package/lib/tpl/api.js +489 -0
  1020. package/lib/tpl/common.d.ts +1 -0
  1021. package/lib/tpl/common.js +957 -0
  1022. package/lib/tpl/horizontal.d.ts +1 -0
  1023. package/lib/tpl/horizontal.js +243 -0
  1024. package/lib/tpl/index.d.ts +8 -0
  1025. package/lib/tpl/layout.d.ts +1 -0
  1026. package/lib/tpl/layout.js +716 -0
  1027. package/lib/tpl/options.d.ts +1 -0
  1028. package/lib/tpl/options.js +367 -0
  1029. package/lib/tpl/style.d.ts +15 -0
  1030. package/lib/tpl/style.js +360 -0
  1031. package/lib/tpl/validations.d.ts +1 -0
  1032. package/lib/tpl/validations.js +493 -0
  1033. package/lib/util.d.ts +47 -0
  1034. package/lib/util.js +30 -0
  1035. package/lib/validator.d.ts +62 -0
  1036. package/lib/validator.js +319 -0
  1037. package/package.json +41 -50
  1038. package/README.md +0 -74
  1039. package/dist/6dbcbb49b6fd405190a9.png +0 -0
  1040. package/dist/cebfe0bc5a1dbde02da1.svg +0 -10
  1041. package/dist/compat.d.ts +0 -30
  1042. package/dist/component/Breadcrumb.d.ts +0 -33
  1043. package/dist/component/ClassNameControl.d.ts +0 -31
  1044. package/dist/component/CommonConfigWrapper.d.ts +0 -6
  1045. package/dist/component/ContainerWrapper.d.ts +0 -12
  1046. package/dist/component/Editor.d.ts +0 -97
  1047. package/dist/component/HighlightBox.d.ts +0 -29
  1048. package/dist/component/IFrameBridge.d.ts +0 -32
  1049. package/dist/component/IFramePreview.d.ts +0 -38
  1050. package/dist/component/MiniEditor.d.ts +0 -9
  1051. package/dist/component/NodeWrapper.d.ts +0 -20
  1052. package/dist/component/Panel/AMisCodeEditor.d.ts +0 -37
  1053. package/dist/component/Panel/AvailableRenderersPanel.d.ts +0 -10
  1054. package/dist/component/Panel/CodeEditorPanel.d.ts +0 -6
  1055. package/dist/component/Panel/ContextMenuPanel.d.ts +0 -8
  1056. package/dist/component/Panel/DrawerPanel.d.ts +0 -15
  1057. package/dist/component/Panel/DrawerRendererPanel.d.ts +0 -15
  1058. package/dist/component/Panel/InsertSubRendererPanel.d.ts +0 -11
  1059. package/dist/component/Panel/LeftPanels.d.ts +0 -20
  1060. package/dist/component/Panel/Outline.d.ts +0 -18
  1061. package/dist/component/Panel/RenderersPanel.d.ts +0 -31
  1062. package/dist/component/Panel/RightPanels.d.ts +0 -21
  1063. package/dist/component/Panel/TargetNamePanel.d.ts +0 -7
  1064. package/dist/component/PopOverForm.d.ts +0 -22
  1065. package/dist/component/Preview.d.ts +0 -67
  1066. package/dist/component/RegionHLBox.d.ts +0 -20
  1067. package/dist/component/RegionWrapper.d.ts +0 -206
  1068. package/dist/component/RendererThumb.d.ts +0 -22
  1069. package/dist/component/ScaffoldModal.d.ts +0 -24
  1070. package/dist/component/SubEditor.d.ts +0 -67
  1071. package/dist/component/TableViewEditor.d.ts +0 -79
  1072. package/dist/component/VRenderer.d.ts +0 -191
  1073. package/dist/component/base/BackTop.d.ts +0 -26
  1074. package/dist/component/base/ErrorRenderer.d.ts +0 -4
  1075. package/dist/component/base/SearchCustomRendererPanel.d.ts +0 -15
  1076. package/dist/component/base/SearchPanel.d.ts +0 -83
  1077. package/dist/component/base/SearchRendererPanel.d.ts +0 -19
  1078. package/dist/component/base/ShortcutKey.d.ts +0 -23
  1079. package/dist/component/base/WidthDraggableBtn.d.ts +0 -16
  1080. package/dist/component/base/WidthDraggableContainer.d.ts +0 -2
  1081. package/dist/component/control/APIControl.d.ts +0 -1158
  1082. package/dist/component/control/ActionAPIControl.d.ts +0 -1158
  1083. package/dist/component/control/BadgeControl.d.ts +0 -133
  1084. package/dist/component/control/BaseControl.d.ts +0 -248
  1085. package/dist/component/control/DataBindingControl.d.ts +0 -14
  1086. package/dist/component/control/DataPickerControl.d.ts +0 -13
  1087. package/dist/component/control/DateShortCutControl.d.ts +0 -83
  1088. package/dist/component/control/FormulaControl.d.ts +0 -51
  1089. package/dist/component/control/OptionControl.d.ts +0 -152
  1090. package/dist/component/control/PopoverEdit.d.ts +0 -57
  1091. package/dist/component/control/StatusControl.d.ts +0 -39
  1092. package/dist/component/control/SwitchMoreControl.d.ts +0 -224
  1093. package/dist/component/control/ValidationControl.d.ts +0 -65
  1094. package/dist/component/control/ValidationItem.d.ts +0 -46
  1095. package/dist/component/control/style-control/Border.d.ts +0 -18
  1096. package/dist/component/control/style-control/BoxModel.d.ts +0 -17
  1097. package/dist/component/control/style-control/BoxShadow.d.ts +0 -18
  1098. package/dist/component/control/style-control/types.d.ts +0 -8
  1099. package/dist/component/schemaTpl.d.ts +0 -27
  1100. package/dist/component/validator.d.ts +0 -62
  1101. package/dist/dnd/default.d.ts +0 -47
  1102. package/dist/dnd/index.d.ts +0 -119
  1103. package/dist/dnd/interface.d.ts +0 -14
  1104. package/dist/dnd/position-h.d.ts +0 -7
  1105. package/dist/env.d.ts +0 -5
  1106. package/dist/event-action/actions.d.ts +0 -3
  1107. package/dist/event-action/config.d.ts +0 -13
  1108. package/dist/event-action/index.d.ts +0 -459
  1109. package/dist/event-action/schema.d.ts +0 -32
  1110. package/dist/exports.d.ts +0 -8
  1111. package/dist/exports.min.js +0 -1
  1112. package/dist/icons/index.d.ts +0 -2
  1113. package/dist/index.d.ts +0 -180
  1114. package/dist/index.min.js +0 -1
  1115. package/dist/manager.d.ts +0 -502
  1116. package/dist/mocker.d.ts +0 -1
  1117. package/dist/plugin/Alert.d.ts +0 -22
  1118. package/dist/plugin/AnchorNav.d.ts +0 -67
  1119. package/dist/plugin/Audio.d.ts +0 -22
  1120. package/dist/plugin/Avatar.d.ts +0 -18
  1121. package/dist/plugin/Breadcrumb.d.ts +0 -27
  1122. package/dist/plugin/Button.d.ts +0 -29
  1123. package/dist/plugin/ButtonGroup.d.ts +0 -39
  1124. package/dist/plugin/ButtonToolbar.d.ts +0 -30
  1125. package/dist/plugin/CRUD.d.ts +0 -127
  1126. package/dist/plugin/Card.d.ts +0 -54
  1127. package/dist/plugin/Cards.d.ts +0 -71
  1128. package/dist/plugin/Carousel.d.ts +0 -40
  1129. package/dist/plugin/Chart.d.ts +0 -50
  1130. package/dist/plugin/CodeView.d.ts +0 -19
  1131. package/dist/plugin/Collapse.d.ts +0 -33
  1132. package/dist/plugin/CollapseGroup.d.ts +0 -65
  1133. package/dist/plugin/Container.d.ts +0 -22
  1134. package/dist/plugin/Custom.d.ts +0 -27
  1135. package/dist/plugin/CustomRegion.d.ts +0 -40
  1136. package/dist/plugin/Date.d.ts +0 -21
  1137. package/dist/plugin/Datetime.d.ts +0 -17
  1138. package/dist/plugin/Dialog.d.ts +0 -31
  1139. package/dist/plugin/Divider.d.ts +0 -15
  1140. package/dist/plugin/Drawer.d.ts +0 -28
  1141. package/dist/plugin/DropDownButton.d.ts +0 -43
  1142. package/dist/plugin/Each.d.ts +0 -35
  1143. package/dist/plugin/ErrorRenderer.d.ts +0 -7
  1144. package/dist/plugin/Flex.d.ts +0 -30
  1145. package/dist/plugin/Form/ButtonGroupSelect.d.ts +0 -27
  1146. package/dist/plugin/Form/ButtonToolbar.d.ts +0 -28
  1147. package/dist/plugin/Form/ChainedSelect.d.ts +0 -22
  1148. package/dist/plugin/Form/Checkbox.d.ts +0 -24
  1149. package/dist/plugin/Form/Checkboxes.d.ts +0 -30
  1150. package/dist/plugin/Form/CodeEditor.d.ts +0 -25
  1151. package/dist/plugin/Form/Combo.d.ts +0 -41
  1152. package/dist/plugin/Form/ConditionBuilder.d.ts +0 -36
  1153. package/dist/plugin/Form/Control.d.ts +0 -27
  1154. package/dist/plugin/Form/DiffEditor.d.ts +0 -25
  1155. package/dist/plugin/Form/FieldSet.d.ts +0 -27
  1156. package/dist/plugin/Form/Form.d.ts +0 -42
  1157. package/dist/plugin/Form/Formula.d.ts +0 -27
  1158. package/dist/plugin/Form/Group.d.ts +0 -26
  1159. package/dist/plugin/Form/Hidden.d.ts +0 -24
  1160. package/dist/plugin/Form/InputArray.d.ts +0 -28
  1161. package/dist/plugin/Form/InputCity.d.ts +0 -19
  1162. package/dist/plugin/Form/InputColor.d.ts +0 -39
  1163. package/dist/plugin/Form/InputDate.d.ts +0 -26
  1164. package/dist/plugin/Form/InputDateRange.d.ts +0 -26
  1165. package/dist/plugin/Form/InputDateTime.d.ts +0 -19
  1166. package/dist/plugin/Form/InputDateTimeRange.d.ts +0 -20
  1167. package/dist/plugin/Form/InputEmail.d.ts +0 -27
  1168. package/dist/plugin/Form/InputExcel.d.ts +0 -23
  1169. package/dist/plugin/Form/InputFile.d.ts +0 -23
  1170. package/dist/plugin/Form/InputGroup.d.ts +0 -32
  1171. package/dist/plugin/Form/InputImage.d.ts +0 -20
  1172. package/dist/plugin/Form/InputKV.d.ts +0 -35
  1173. package/dist/plugin/Form/InputMonth.d.ts +0 -18
  1174. package/dist/plugin/Form/InputMonthRange.d.ts +0 -20
  1175. package/dist/plugin/Form/InputNumber.d.ts +0 -20
  1176. package/dist/plugin/Form/InputPassword.d.ts +0 -27
  1177. package/dist/plugin/Form/InputQuarter.d.ts +0 -18
  1178. package/dist/plugin/Form/InputQuarterRange.d.ts +0 -20
  1179. package/dist/plugin/Form/InputRange.d.ts +0 -22
  1180. package/dist/plugin/Form/InputRating.d.ts +0 -25
  1181. package/dist/plugin/Form/InputRepeat.d.ts +0 -19
  1182. package/dist/plugin/Form/InputRichText.d.ts +0 -19
  1183. package/dist/plugin/Form/InputSubForm.d.ts +0 -63
  1184. package/dist/plugin/Form/InputTable.d.ts +0 -39
  1185. package/dist/plugin/Form/InputTag.d.ts +0 -21
  1186. package/dist/plugin/Form/InputText.d.ts +0 -42
  1187. package/dist/plugin/Form/InputTime.d.ts +0 -19
  1188. package/dist/plugin/Form/InputTimeRange.d.ts +0 -20
  1189. package/dist/plugin/Form/InputTree.d.ts +0 -77
  1190. package/dist/plugin/Form/InputURL.d.ts +0 -28
  1191. package/dist/plugin/Form/InputYear.d.ts +0 -18
  1192. package/dist/plugin/Form/InputYearRange.d.ts +0 -20
  1193. package/dist/plugin/Form/Item.d.ts +0 -10
  1194. package/dist/plugin/Form/ListSelect.d.ts +0 -28
  1195. package/dist/plugin/Form/LocationPicker.d.ts +0 -18
  1196. package/dist/plugin/Form/MatrixCheckboxes.d.ts +0 -26
  1197. package/dist/plugin/Form/NestedSelect.d.ts +0 -76
  1198. package/dist/plugin/Form/Picker.d.ts +0 -26
  1199. package/dist/plugin/Form/Radios.d.ts +0 -29
  1200. package/dist/plugin/Form/Select.d.ts +0 -29
  1201. package/dist/plugin/Form/Static.d.ts +0 -22
  1202. package/dist/plugin/Form/Switch.d.ts +0 -27
  1203. package/dist/plugin/Form/TabsTransfer.d.ts +0 -77
  1204. package/dist/plugin/Form/Textarea.d.ts +0 -26
  1205. package/dist/plugin/Form/Transfer.d.ts +0 -71
  1206. package/dist/plugin/Form/TreeSelect.d.ts +0 -77
  1207. package/dist/plugin/Form/UUID.d.ts +0 -23
  1208. package/dist/plugin/Grid.d.ts +0 -48
  1209. package/dist/plugin/HBox.d.ts +0 -46
  1210. package/dist/plugin/IFrame.d.ts +0 -29
  1211. package/dist/plugin/Image.d.ts +0 -33
  1212. package/dist/plugin/Images.d.ts +0 -25
  1213. package/dist/plugin/Json.d.ts +0 -26
  1214. package/dist/plugin/Link.d.ts +0 -21
  1215. package/dist/plugin/List.d.ts +0 -55
  1216. package/dist/plugin/ListItem.d.ts +0 -16
  1217. package/dist/plugin/Log.d.ts +0 -18
  1218. package/dist/plugin/Mapping.d.ts +0 -37
  1219. package/dist/plugin/Markdown.d.ts +0 -21
  1220. package/dist/plugin/Nav.d.ts +0 -48
  1221. package/dist/plugin/Operation.d.ts +0 -26
  1222. package/dist/plugin/Others/Action.d.ts +0 -12
  1223. package/dist/plugin/Others/BasicToolbar.d.ts +0 -11
  1224. package/dist/plugin/Others/DataDebug.d.ts +0 -19
  1225. package/dist/plugin/Others/TableCell.d.ts +0 -8
  1226. package/dist/plugin/Others/Unknown.d.ts +0 -5
  1227. package/dist/plugin/Page.d.ts +0 -31
  1228. package/dist/plugin/Panel/AvailableRenderers.d.ts +0 -8
  1229. package/dist/plugin/Panel/Code.d.ts +0 -9
  1230. package/dist/plugin/Panel/Name.d.ts +0 -8
  1231. package/dist/plugin/Panel/Outline.d.ts +0 -8
  1232. package/dist/plugin/Panel.d.ts +0 -30
  1233. package/dist/plugin/Plain.d.ts +0 -21
  1234. package/dist/plugin/Progress.d.ts +0 -25
  1235. package/dist/plugin/Property.d.ts +0 -27
  1236. package/dist/plugin/QRCode.d.ts +0 -21
  1237. package/dist/plugin/Service.d.ts +0 -26
  1238. package/dist/plugin/Sparkline.d.ts +0 -30
  1239. package/dist/plugin/Status.d.ts +0 -21
  1240. package/dist/plugin/Steps.d.ts +0 -39
  1241. package/dist/plugin/Table.d.ts +0 -22
  1242. package/dist/plugin/TableView.d.ts +0 -134
  1243. package/dist/plugin/Tabs.d.ts +0 -75
  1244. package/dist/plugin/Tasks.d.ts +0 -43
  1245. package/dist/plugin/Time.d.ts +0 -17
  1246. package/dist/plugin/TooltipWrapper.d.ts +0 -41
  1247. package/dist/plugin/Tpl.d.ts +0 -20
  1248. package/dist/plugin/Video.d.ts +0 -26
  1249. package/dist/plugin/WebComponent.d.ts +0 -26
  1250. package/dist/plugin/Wizard.d.ts +0 -53
  1251. package/dist/plugin/Wrapper.d.ts +0 -23
  1252. package/dist/plugin.d.ts +0 -637
  1253. package/dist/store/editor.d.ts +0 -1048
  1254. package/dist/store/node.d.ts +0 -281
  1255. package/dist/style.css +0 -1
  1256. package/dist/util.d.ts +0 -105
  1257. package/src/component/schemaTpl.tsx +0 -2881
  1258. package/src/plugin/Alert.tsx +0 -108
  1259. package/src/plugin/AnchorNav.tsx +0 -234
  1260. package/src/plugin/Audio.tsx +0 -148
  1261. package/src/plugin/Avatar.tsx +0 -78
  1262. package/src/plugin/Breadcrumb.tsx +0 -108
  1263. package/src/plugin/Button.tsx +0 -350
  1264. package/src/plugin/ButtonGroup.tsx +0 -146
  1265. package/src/plugin/ButtonToolbar.tsx +0 -81
  1266. package/src/plugin/CRUD.tsx +0 -1777
  1267. package/src/plugin/Card.tsx +0 -291
  1268. package/src/plugin/Cards.tsx +0 -312
  1269. package/src/plugin/Carousel.tsx +0 -377
  1270. package/src/plugin/Chart.tsx +0 -230
  1271. package/src/plugin/CodeView.tsx +0 -60
  1272. package/src/plugin/Collapse.tsx +0 -136
  1273. package/src/plugin/CollapseGroup.tsx +0 -249
  1274. package/src/plugin/Container.tsx +0 -93
  1275. package/src/plugin/Custom.tsx +0 -122
  1276. package/src/plugin/CustomRegion.tsx +0 -157
  1277. package/src/plugin/Date.tsx +0 -74
  1278. package/src/plugin/Datetime.tsx +0 -68
  1279. package/src/plugin/Dialog.tsx +0 -207
  1280. package/src/plugin/Divider.tsx +0 -36
  1281. package/src/plugin/Drawer.tsx +0 -244
  1282. package/src/plugin/DropDownButton.tsx +0 -251
  1283. package/src/plugin/Each.tsx +0 -150
  1284. package/src/plugin/ErrorRenderer.tsx +0 -15
  1285. package/src/plugin/Flex.tsx +0 -209
  1286. package/src/plugin/Form/ButtonGroupSelect.tsx +0 -163
  1287. package/src/plugin/Form/ButtonToolbar.tsx +0 -117
  1288. package/src/plugin/Form/ChainedSelect.tsx +0 -115
  1289. package/src/plugin/Form/Checkbox.tsx +0 -176
  1290. package/src/plugin/Form/Checkboxes.tsx +0 -234
  1291. package/src/plugin/Form/CodeEditor.tsx +0 -210
  1292. package/src/plugin/Form/Combo.tsx +0 -621
  1293. package/src/plugin/Form/ConditionBuilder.tsx +0 -315
  1294. package/src/plugin/Form/Control.tsx +0 -85
  1295. package/src/plugin/Form/DiffEditor.tsx +0 -215
  1296. package/src/plugin/Form/FieldSet.tsx +0 -158
  1297. package/src/plugin/Form/Form.tsx +0 -894
  1298. package/src/plugin/Form/Formula.tsx +0 -73
  1299. package/src/plugin/Form/Group.tsx +0 -295
  1300. package/src/plugin/Form/Hidden.tsx +0 -44
  1301. package/src/plugin/Form/InputArray.tsx +0 -219
  1302. package/src/plugin/Form/InputCity.tsx +0 -93
  1303. package/src/plugin/Form/InputColor.tsx +0 -123
  1304. package/src/plugin/Form/InputDate.tsx +0 -398
  1305. package/src/plugin/Form/InputDateRange.tsx +0 -367
  1306. package/src/plugin/Form/InputDateTime.tsx +0 -39
  1307. package/src/plugin/Form/InputDateTimeRange.tsx +0 -41
  1308. package/src/plugin/Form/InputEmail.tsx +0 -34
  1309. package/src/plugin/Form/InputExcel.tsx +0 -128
  1310. package/src/plugin/Form/InputFile.tsx +0 -395
  1311. package/src/plugin/Form/InputGroup.tsx +0 -96
  1312. package/src/plugin/Form/InputImage.tsx +0 -266
  1313. package/src/plugin/Form/InputKV.tsx +0 -133
  1314. package/src/plugin/Form/InputMonth.tsx +0 -37
  1315. package/src/plugin/Form/InputMonthRange.tsx +0 -41
  1316. package/src/plugin/Form/InputNumber.tsx +0 -89
  1317. package/src/plugin/Form/InputPassword.tsx +0 -35
  1318. package/src/plugin/Form/InputQuarter.tsx +0 -37
  1319. package/src/plugin/Form/InputQuarterRange.tsx +0 -41
  1320. package/src/plugin/Form/InputRange.tsx +0 -191
  1321. package/src/plugin/Form/InputRating.tsx +0 -390
  1322. package/src/plugin/Form/InputRepeat.tsx +0 -57
  1323. package/src/plugin/Form/InputRichText.tsx +0 -185
  1324. package/src/plugin/Form/InputSubForm.tsx +0 -189
  1325. package/src/plugin/Form/InputTable.tsx +0 -418
  1326. package/src/plugin/Form/InputTag.tsx +0 -70
  1327. package/src/plugin/Form/InputText.tsx +0 -364
  1328. package/src/plugin/Form/InputTime.tsx +0 -36
  1329. package/src/plugin/Form/InputTimeRange.tsx +0 -41
  1330. package/src/plugin/Form/InputTree.tsx +0 -379
  1331. package/src/plugin/Form/InputURL.tsx +0 -36
  1332. package/src/plugin/Form/InputYear.tsx +0 -37
  1333. package/src/plugin/Form/InputYearRange.tsx +0 -41
  1334. package/src/plugin/Form/Item.tsx +0 -326
  1335. package/src/plugin/Form/ListSelect.tsx +0 -128
  1336. package/src/plugin/Form/LocationPicker.tsx +0 -57
  1337. package/src/plugin/Form/MatrixCheckboxes.tsx +0 -136
  1338. package/src/plugin/Form/NestedSelect.tsx +0 -278
  1339. package/src/plugin/Form/Picker.tsx +0 -206
  1340. package/src/plugin/Form/Radios.tsx +0 -189
  1341. package/src/plugin/Form/Select.tsx +0 -304
  1342. package/src/plugin/Form/Static.tsx +0 -322
  1343. package/src/plugin/Form/Switch.tsx +0 -219
  1344. package/src/plugin/Form/TabsTransfer.tsx +0 -355
  1345. package/src/plugin/Form/Textarea.tsx +0 -193
  1346. package/src/plugin/Form/Transfer.tsx +0 -430
  1347. package/src/plugin/Form/TreeSelect.tsx +0 -404
  1348. package/src/plugin/Form/UUID.tsx +0 -48
  1349. package/src/plugin/Grid.tsx +0 -826
  1350. package/src/plugin/HBox.tsx +0 -728
  1351. package/src/plugin/IFrame.tsx +0 -79
  1352. package/src/plugin/Image.tsx +0 -309
  1353. package/src/plugin/Images.tsx +0 -226
  1354. package/src/plugin/Json.tsx +0 -69
  1355. package/src/plugin/Link.tsx +0 -87
  1356. package/src/plugin/List.tsx +0 -274
  1357. package/src/plugin/ListItem.tsx +0 -230
  1358. package/src/plugin/Log.tsx +0 -52
  1359. package/src/plugin/Mapping.tsx +0 -149
  1360. package/src/plugin/Markdown.tsx +0 -47
  1361. package/src/plugin/Nav.tsx +0 -182
  1362. package/src/plugin/Operation.tsx +0 -95
  1363. package/src/plugin/Others/Action.tsx +0 -432
  1364. package/src/plugin/Others/BasicToolbar.tsx +0 -588
  1365. package/src/plugin/Others/DataDebug.tsx +0 -134
  1366. package/src/plugin/Others/TableCell.tsx +0 -460
  1367. package/src/plugin/Others/Unknown.tsx +0 -37
  1368. package/src/plugin/Page.tsx +0 -392
  1369. package/src/plugin/Panel/AvailableRenderers.tsx +0 -41
  1370. package/src/plugin/Panel/Code.tsx +0 -44
  1371. package/src/plugin/Panel/Name.tsx +0 -26
  1372. package/src/plugin/Panel/Outline.tsx +0 -40
  1373. package/src/plugin/Panel.tsx +0 -242
  1374. package/src/plugin/Plain.tsx +0 -81
  1375. package/src/plugin/Progress.tsx +0 -265
  1376. package/src/plugin/Property.tsx +0 -139
  1377. package/src/plugin/QRCode.tsx +0 -96
  1378. package/src/plugin/Reset.tsx +0 -23
  1379. package/src/plugin/Service.tsx +0 -166
  1380. package/src/plugin/Sparkline.tsx +0 -40
  1381. package/src/plugin/Status.tsx +0 -76
  1382. package/src/plugin/Steps.tsx +0 -128
  1383. package/src/plugin/Submit.tsx +0 -23
  1384. package/src/plugin/Table.tsx +0 -457
  1385. package/src/plugin/TableView.tsx +0 -815
  1386. package/src/plugin/Tabs.tsx +0 -522
  1387. package/src/plugin/Tasks.tsx +0 -274
  1388. package/src/plugin/Time.tsx +0 -68
  1389. package/src/plugin/TooltipWrapper.tsx +0 -289
  1390. package/src/plugin/Tpl.tsx +0 -174
  1391. package/src/plugin/Video.tsx +0 -147
  1392. package/src/plugin/WebComponent.tsx +0 -53
  1393. package/src/plugin/Wizard.tsx +0 -941
  1394. package/src/plugin/Wrapper.tsx +0 -128
  1395. package/src/plugin.ts +0 -1112
  1396. package/static/Code-hover.png +0 -0
  1397. package/static/Code.png +0 -0
  1398. package/static/Outline-hover.png +0 -0
  1399. package/static/Outline.png +0 -0
  1400. package/static/Renderers-hover.png +0 -0
  1401. package/static/Renderers.png +0 -0
  1402. package/static/empty.png +0 -0
  1403. package/static/side_hide_left.svg +0 -10
@@ -1,2881 +0,0 @@
1
- /**
2
- * @file amis schema 配置模板,主要很多地方都要全部配置的化,
3
- * 会有很多份,而且改起来很麻烦,复用率高的放在这管理。
4
- */
5
- import {isObject} from '../util';
6
- import find = require('lodash/find');
7
- import forEach = require('lodash/forEach');
8
- import reduce = require('lodash/reduce');
9
- import {str2rules, buildApi, Html} from 'amis';
10
- import flatten from 'lodash/flatten';
11
- import kebabCase from 'lodash/kebabCase';
12
- import React = require('react');
13
- import {InputComponentName} from './base/InputComponentName';
14
- import {remarkTpl, tipedLabel, ValidationOptions} from './control/BaseControl';
15
-
16
- import type {ValidatorFilter} from './control/ValidationControl';
17
- import {ValidatorTag} from './validator';
18
- import {SchemaCollection, SchemaObject} from 'amis/lib/Schema';
19
-
20
- const tpls: {
21
- [propName: string]: any;
22
- } = {
23
- /**
24
- * @deprecated 兼容当前组件的switch
25
- */
26
- 'switch': {
27
- type: 'switch',
28
- mode: 'horizontal',
29
- horizontal: {
30
- justify: true,
31
- left: 8
32
- },
33
- inputClassName: 'is-inline '
34
- },
35
-
36
- /**
37
- * 表单项字段name
38
- */
39
- 'formItemName': {
40
- label: '字段名',
41
- name: 'name',
42
- type: 'input-text'
43
- // validations: {
44
- // matchRegexp: /^[a-z\$][a-z0-0\-_]*$/i
45
- // },
46
- // validationErrors: {
47
- // "matchRegexp": "请输入合法的变量名"
48
- // },
49
- // validateOnChange: false
50
- },
51
-
52
- 'formItemMode': {
53
- label: '布局',
54
- name: 'mode',
55
- type: 'button-group-select',
56
- option: '继承',
57
- horizontal: {
58
- left: 2,
59
- justify: true
60
- },
61
- // className: 'w-full',
62
- pipeIn: defaultValue(''),
63
- options: [
64
- {
65
- label: '内联',
66
- value: 'inline'
67
- },
68
- {
69
- label: '水平',
70
- value: 'horizontal'
71
- },
72
- {
73
- label: '垂直',
74
- value: 'normal'
75
- },
76
- {
77
- label: '继承',
78
- value: ''
79
- }
80
- ],
81
- pipeOut: (v: string) => (v ? v : undefined)
82
- },
83
-
84
- 'formItemInline': {
85
- type: 'switch',
86
- label: '表单项内联',
87
- name: 'inline',
88
- visibleOn: 'data.mode != "inline"',
89
- pipeIn: defaultValue(false)
90
- // onChange: (value:any, origin:any, item:any, form:any) => form.getValueByName('size') === "full" && form.setValueByName('')
91
- },
92
-
93
- 'formItemSize': {
94
- name: 'size',
95
- label: '控件宽度',
96
- type: 'select',
97
- pipeIn: defaultValue('full'),
98
- // mode: 'inline',
99
- // className: 'w-full',
100
- options: [
101
- {
102
- label: '极小',
103
- value: 'xs'
104
- },
105
-
106
- {
107
- label: '小',
108
- value: 'sm'
109
- },
110
-
111
- {
112
- label: '中',
113
- value: 'md'
114
- },
115
-
116
- {
117
- label: '大',
118
- value: 'lg'
119
- },
120
- {
121
- label: '占满',
122
- value: 'full'
123
- },
124
- {
125
- label: '默认',
126
- value: ''
127
- }
128
- ]
129
- },
130
-
131
- 'minLength': {
132
- name: 'minLength',
133
- type: 'input-number',
134
- label: '限制最小数量'
135
- },
136
-
137
- 'maxLength': {
138
- name: 'maxLength',
139
- type: 'input-number',
140
- label: '限制最大数量'
141
- },
142
-
143
- /**
144
- * 表单项名称label
145
- */
146
- 'label': {
147
- label: '标题',
148
- name: 'label',
149
- type: 'input-text',
150
- pipeIn(v: any) {
151
- return v === false ? '' : v;
152
- }
153
- },
154
-
155
- 'labelHide': () =>
156
- getSchemaTpl('switch', {
157
- name: 'label',
158
- label: tipedLabel('隐藏标题', '隐藏后,水平布局时标题宽度为0'),
159
- pipeIn: (value: any) => value === false,
160
- pipeOut: (value: any) => (value === true ? false : ''),
161
- visibleOn:
162
- '__props__.formMode === "horizontal" || data.mode === "horizontal" || data.label === false'
163
- }),
164
-
165
- 'placeholder': {
166
- label: '占位提示',
167
- name: 'placeholder',
168
- type: 'input-text',
169
- placeholder: '空内容提示占位'
170
- },
171
-
172
- 'tabs': (
173
- config: Array<{
174
- title: string;
175
- className?: string;
176
- body: Array<SchemaObject>;
177
- }>
178
- ) => {
179
- return {
180
- type: 'tabs',
181
- tabsMode: 'line', // tiled
182
- className: 'editor-prop-config-tabs',
183
- linksClassName: 'editor-prop-config-tabs-links',
184
- contentClassName:
185
- 'no-border editor-prop-config-tabs-cont hoverShowScrollBar',
186
- tabs: config
187
- .filter(item => item)
188
- .map(item => {
189
- const newSchema = {
190
- ...item,
191
- body: Array.isArray(item.body) ? flatten(item.body) : [item.body]
192
- };
193
- // 新版配置面板空隙在子组件中,兼容一下
194
- if (newSchema.body[0]?.type === 'collapse-group') {
195
- newSchema.className = (newSchema.className || '') + ' p-none';
196
- }
197
- return newSchema;
198
- })
199
- };
200
- },
201
-
202
- 'collapse': (
203
- config: Array<{
204
- title: string;
205
- body: Array<any>;
206
- }>
207
- ) => {
208
- return {
209
- type: 'wrapper',
210
- className: 'editor-prop-config-collapse',
211
- body: config
212
- .filter(item => item)
213
- .map(item => ({
214
- type: 'collapse',
215
- headingClassName: 'editor-prop-config-head',
216
- bodyClassName: 'editor-prop-config-body',
217
- ...item,
218
- body: flatten(item.body)
219
- }))
220
- };
221
- },
222
-
223
- 'fieldSet': (config: {
224
- title: string;
225
- body: Array<any>;
226
- collapsed?: boolean;
227
- collapsable?: boolean;
228
- }) => {
229
- return {
230
- collapsable: true,
231
- collapsed: false,
232
- ...config,
233
- type: 'fieldset',
234
- title: config.title,
235
- body: flatten(config.body.filter((item: any) => item))
236
- };
237
- },
238
-
239
- 'collapseGroup': (
240
- config: Array<{
241
- title: string;
242
- key: string;
243
- visibleOn: string;
244
- body: Array<any>;
245
- }>
246
- ) => {
247
- const collapseGroupBody = config
248
- .filter(
249
- item => item && Array.isArray(item?.body) && item?.body.length > 0
250
- )
251
- .map((item, index) => ({
252
- type: 'collapse',
253
- headingClassName: 'ae-formItemControl-header',
254
- bodyClassName: 'ae-formItemControl-body',
255
- ...item,
256
- key: item.key || index.toString(),
257
- body: flatten(item.body)
258
- }));
259
-
260
- return {
261
- type: 'collapse-group',
262
- expandIconPosition: 'right',
263
- expandIcon: {
264
- type: 'icon',
265
- icon: 'chevron-right'
266
- },
267
- className: 'ae-formItemControl ae-styleControl',
268
- activeKey: collapseGroupBody.map((group, index) => group.key),
269
- body: collapseGroupBody
270
- };
271
- },
272
-
273
- 'clearable': {
274
- type: 'switch',
275
- label: '可清除',
276
- name: 'clearable',
277
- inputClassName: 'is-inline'
278
- },
279
-
280
- 'hint': {
281
- label: '输入框提示',
282
- type: 'input-text',
283
- name: 'hint',
284
- description: '当输入框获得焦点的时候显示,用来提示用户输入内容。'
285
- },
286
-
287
- 'remark': remarkTpl({
288
- name: 'remark',
289
- label: '控件提示',
290
- labelRemark:
291
- '在输入控件旁展示提示,注意控件宽度需设置,否则提示触发图标将自动换行'
292
- }),
293
-
294
- 'labelRemark': remarkTpl({
295
- name: 'labelRemark',
296
- label: '标题提示',
297
- labelRemark: '在标题旁展示提示'
298
- }),
299
-
300
- /**
301
- * 表单项组件默认值
302
- */
303
- 'value': {
304
- type: 'ae-formulaControl',
305
- label: '默认值',
306
- name: 'value'
307
- },
308
-
309
- 'inputType': {
310
- label: '输入类型',
311
- name: 'type',
312
- type: 'select',
313
- creatable: false,
314
- options: [
315
- {
316
- label: '文本',
317
- value: 'input-text'
318
- },
319
- {
320
- label: '密码',
321
- value: 'input-password'
322
- },
323
- {
324
- label: '邮箱',
325
- value: 'input-email'
326
- },
327
- {
328
- label: 'URL',
329
- value: 'input-url'
330
- }
331
- ]
332
- },
333
-
334
- 'selectDateType': {
335
- label: '日期类型',
336
- name: 'type',
337
- type: 'select',
338
- creatable: false,
339
- options: [
340
- {
341
- label: '日期',
342
- value: 'input-date'
343
- },
344
- {
345
- label: '日期时间',
346
- value: 'input-datetime'
347
- },
348
- {
349
- label: '时间',
350
- value: 'input-time'
351
- },
352
- {
353
- label: '月份',
354
- value: 'input-month'
355
- },
356
- {
357
- label: '季度',
358
- value: 'input-quarter'
359
- },
360
- {
361
- label: '年份',
362
- value: 'input-year'
363
- }
364
- ]
365
- },
366
-
367
- 'selectDateRangeType': {
368
- label: '日期类型',
369
- name: 'type',
370
- type: 'select',
371
- creatable: false,
372
- options: [
373
- {
374
- label: '日期',
375
- value: 'input-date-range'
376
- },
377
- {
378
- label: '日期时间',
379
- value: 'input-datetime-range'
380
- },
381
- {
382
- label: '时间',
383
- value: 'input-time-range'
384
- },
385
- {
386
- label: '月份',
387
- value: 'input-month-range'
388
- },
389
- {
390
- label: '季度',
391
- value: 'input-quarter-range'
392
- },
393
- {
394
- label: '年份',
395
- value: 'input-year-range'
396
- }
397
- ]
398
- },
399
-
400
- 'menuTpl': {
401
- type: 'ae-formulaControl',
402
- label: tipedLabel('模板', '选项渲染模板,支持JSX,变量使用\\${xx}'),
403
- name: 'menuTpl'
404
- },
405
-
406
- 'expression': {
407
- type: 'input-text',
408
- description: '支持 JS 表达式,如:`this.xxx == 1`'
409
- },
410
-
411
- 'icon': {
412
- label: '图标',
413
- type: 'icon-picker',
414
- name: 'icon',
415
- className: 'fix-icon-picker-overflow',
416
- placeholder: '点击选择图标',
417
- clearable: true,
418
- description: ''
419
- },
420
-
421
- 'size': {
422
- label: '控件尺寸',
423
- type: 'button-group-select',
424
- name: 'size',
425
- clearable: true,
426
- options: [
427
- {
428
- label: '极小',
429
- value: 'xs'
430
- },
431
- {
432
- label: '小',
433
- value: 'sm'
434
- },
435
- {
436
- label: '中',
437
- value: 'md'
438
- },
439
- {
440
- label: '大',
441
- value: 'lg'
442
- }
443
- ]
444
- },
445
-
446
- 'horizontal-align': {
447
- type: 'button-group-select',
448
- label: '位置',
449
- options: [
450
- {
451
- label: '左边',
452
- value: 'left',
453
- icon: 'fa fa-align-left'
454
- },
455
- {
456
- label: '右边',
457
- value: 'right',
458
- icon: 'fa fa-align-right'
459
- }
460
- ]
461
- },
462
-
463
- 'name': {
464
- label: '名字',
465
- name: 'name',
466
- type: 'input-text',
467
- description: '需要联动时才需要,其他组件可以通过这个名字跟当前组件联动',
468
- placeholder: '请输入字母或者数字'
469
- },
470
-
471
- 'reload': {
472
- label: '刷新目标组件',
473
- name: 'reload',
474
- asFormItem: true,
475
- // type: 'input-text',
476
- component: InputComponentName,
477
- description:
478
- '可以指定操作完成后刷新目标组件,请填写目标组件的 <code>name</code> 属性,多个组件请用<code>,</code>隔开,如果目标组件为表单项,请先填写表单的名字,再用<code>.</code>连接表单项的名字如:<code>xxForm.xxControl</code>。另外如果刷新目标对象设置为 <code>window</code>,则会刷新整个页面。',
479
- labelRemark: {
480
- trigger: 'click',
481
- className: 'm-l-xs',
482
- rootClose: true,
483
- content:
484
- '设置名字后,当前组件操作完成会触发目标组件(根据设置的名字)的刷新。',
485
- placement: 'left'
486
- }
487
- },
488
-
489
- 'className': (schema: any) => ({
490
- type: 'ae-classname',
491
- name: 'className',
492
- ...(schema || {}),
493
- label: tipedLabel(
494
- schema?.label || 'CSS 类名',
495
- '有哪些辅助类 CSS 类名?请前往 <a href="https://baidu.github.io/amis/docs/concepts/style" target="_blank">样式说明</a>,除此之外你可以添加自定义类名,然后在系统配置中添加自定义样式。'
496
- )
497
- }),
498
-
499
- 'api': (patch: any = {}) => {
500
- const {name, label, value, description, sampleBuilder, ...rest} = patch;
501
-
502
- return {
503
- type: 'container',
504
- body: [
505
- {
506
- type: 'checkbox',
507
- label: label || 'API',
508
- labelRemark: sampleBuilder
509
- ? {
510
- icon: '',
511
- label: '示例',
512
- title: '接口返回示例',
513
- tooltipClassName: 'ae-ApiSample-tooltip',
514
- render: (data: any) => (
515
- <Html
516
- className="ae-ApiSample"
517
- inline={false}
518
- html={`
519
- <pre><code>${sampleBuilder(data)}</code></pre>
520
- `}
521
- />
522
- ),
523
- trigger: 'click',
524
- className: 'm-l-xs',
525
- rootClose: true,
526
- placement: 'left'
527
- }
528
- : undefined,
529
- option: `高级配置`,
530
- name: name || 'api',
531
- mode: 'inline',
532
- className: 'w-full m-b-sm',
533
- inputClassName: 'pull-right text-sm m-t-sm p-t-none',
534
- onChange: () => {},
535
- pipeIn: (value: any) => value && typeof value !== 'string',
536
- pipeOut: (value: any, originValue: any) => {
537
- const api = buildApi(originValue);
538
-
539
- return value
540
- ? {
541
- method: api.method,
542
- url: api.url
543
- }
544
- : api.url
545
- ? `${api.method ? `${api.method}:` : ''}${api.url}`
546
- : '';
547
- }
548
- },
549
-
550
- {
551
- name: name || 'api',
552
- type: 'input-text',
553
- value,
554
- placeholder: 'http://',
555
- description: description,
556
- visibleOn: `!this.${name || 'api'} || typeof this.${
557
- name || 'api'
558
- } === 'string'`,
559
- className: 'm-b-none',
560
- labelRemark: {}
561
- // disabledOn: `data.${name || 'api'} && data.${name || 'api'}.data && Object.keys(data.${name || 'api'}.data).length || data.${name || 'api'} && data.${name || 'api'}.sendOn`,
562
- },
563
-
564
- {
565
- type: 'combo',
566
- name: name || 'api',
567
- description: description,
568
- syncDefaultValue: false,
569
- multiLine: true,
570
- visibleOn: `this.${name || 'api'} && typeof this.${
571
- name || 'api'
572
- } !== 'string'`,
573
- className: 'm-b-none',
574
- messages: {
575
- validateFailed: '接口配置中存在错误,请仔细检查'
576
- },
577
- pipeIn: (value: any) => {
578
- if (typeof value === 'string') {
579
- let url = value;
580
- let method = 'get';
581
-
582
- const m = /^(raw:|external:)?(get|post|put|patch|delete):(.*)$/.exec(
583
- url
584
- );
585
- if (m) {
586
- url = m[1] + m[3];
587
- method = m[2];
588
- }
589
-
590
- return {
591
- method,
592
- url
593
- };
594
- }
595
-
596
- return value;
597
- },
598
- items: [
599
- {
600
- label: '发送方式',
601
- name: 'method',
602
- value: 'get',
603
- type: 'select',
604
- mode: 'horizontal',
605
- horizontal: {
606
- leftFixed: 'sm'
607
- },
608
- options: [
609
- {
610
- value: 'get',
611
- label: 'GET'
612
- },
613
- {
614
- value: 'post',
615
- label: 'POST'
616
- },
617
- {
618
- value: 'put',
619
- label: 'PUT'
620
- },
621
- {
622
- value: 'patch',
623
- label: 'PATCH'
624
- },
625
- {
626
- value: 'delete',
627
- label: 'DELETE'
628
- }
629
- ]
630
- },
631
-
632
- {
633
- label: '接口地址',
634
- type: 'input-text',
635
- name: 'url',
636
- placeholder: 'http://',
637
- required: true
638
- },
639
-
640
- {
641
- type: 'switch',
642
- label: '数据映射',
643
- name: 'data',
644
- className: 'w-full m-b-xs',
645
- pipeIn: (value: any) => !!value,
646
- pipeOut: (value: any) => (value ? {'&': '$$'} : null)
647
- },
648
-
649
- {
650
- type: 'tpl',
651
- visibleOn: '!this.data',
652
- inline: false,
653
- className: 'text-sm text-muted m-b',
654
- tpl:
655
- '当没开启数据映射时,发送 API 的时候会发送尽可能多的数据,如果你想自己控制发送的数据,或者需要额外的数据处理,请开启此选项'
656
- },
657
-
658
- {
659
- type: 'input-kv',
660
- syncDefaultValue: false,
661
- name: 'data',
662
- visibleOn: 'this.data',
663
- descriptionClassName: 'help-block text-xs m-b-none',
664
- description:
665
- '<p>当没开启数据映射时,发送数据自动切成白名单模式,配置啥发送啥,请绑定数据。如:<code>{"a": "\\${a}", "b": 2}</code></p><p>如果希望在默认的基础上定制,请先添加一个 Key 为 `&` Value 为 `\\$$` 作为第一行。</p><div>当值为 <code>__undefined</code>时,表示删除对应的字段,可以结合<code>{"&": "\\$$"}</code>来达到黑名单效果。</div>'
666
- },
667
-
668
- {
669
- label: '发送条件',
670
- type: 'input-text',
671
- name: 'sendOn',
672
- placeholder: '如:this.type == "123"',
673
- description: '用表达式来设置该请求的发送条件'
674
- },
675
-
676
- {
677
- type: 'switch',
678
- label: '是否设置缓存',
679
- name: 'cache',
680
- className: 'w-full m-b-xs',
681
- description: '设置该请求缓存的有效时间',
682
- pipeIn: (value: any) => !!value,
683
- pipeOut: (value: any) => (value ? 3000 : undefined)
684
- },
685
-
686
- {
687
- type: 'input-number',
688
- name: 'cache',
689
- mode: 'inline',
690
- min: 0,
691
- step: 500,
692
- visibleOn: 'this.cache',
693
- pipeIn: (value: any) => (typeof value === 'number' ? value : 0)
694
- },
695
-
696
- {
697
- type: 'switch',
698
- label: '文件下载',
699
- name: 'responseType',
700
- pipeIn: (value: any) => value === 'blob',
701
- pipeOut: (value: any) => (value ? 'blob' : undefined),
702
- description:
703
- '当接口为二进制文件下载时请勾选,并设置 Content-Disposition'
704
- },
705
-
706
- {
707
- label: '数据格式',
708
- type: 'button-group-select',
709
- name: 'dataType',
710
- description:
711
- '发送体格式为:<%= data.dataType === "json" ? "application/json" : data.dataType === "form-data" ? "multipart/form-data" : data.dataType === "form" ? "application/x-www-form-urlencoded" : "" %>,当发送内容中存在文件时会自动使用 form-data 格式。',
712
- size: 'sm',
713
- className: 'block',
714
- mode: 'inline',
715
- options: [
716
- {
717
- label: 'JSON',
718
- value: 'json'
719
- },
720
- {
721
- label: 'FormData',
722
- value: 'form-data'
723
- },
724
- {
725
- label: 'Form',
726
- value: 'form'
727
- }
728
- ]
729
- },
730
-
731
- {
732
- type: 'switch',
733
- label: '数据替换',
734
- name: 'replaceData',
735
- description: '默认数据都是追加方式,开启这个后是完全替换'
736
- },
737
-
738
- {
739
- type: 'switch',
740
- label: '返回结果映射',
741
- name: 'responseData',
742
- className: 'w-full m-b-xs',
743
- pipeIn: (value: any) => !!value,
744
- pipeOut: (value: any) => (value ? {'&': '$$'} : null)
745
- },
746
-
747
- {
748
- type: 'tpl',
749
- visibleOn: '!this.responseData',
750
- inline: false,
751
- className: 'text-sm text-muted m-b',
752
- tpl: '如果需要对返回结果做额外的数据处理,请开启此选项'
753
- },
754
-
755
- {
756
- type: 'input-kv',
757
- syncDefaultValue: false,
758
- name: 'responseData',
759
- visibleOn: 'this.responseData',
760
- descriptionClassName: 'help-block text-xs m-b-none'
761
- },
762
-
763
- {
764
- title: '自定义适配器',
765
- type: 'fieldSet',
766
- className: 'm-b-none',
767
- size: 'sm',
768
- collapsable: false, // 避免和最外层的属性配置面板的tabs样式重叠
769
- collapsedOn: '!this.requestAdaptor && !this.adaptor',
770
- body: [
771
- {
772
- name: 'requestAdaptor',
773
- type: 'js-editor',
774
- allowFullscreen: true,
775
- label: '发送适配器',
776
- description:
777
- '函数签名:(api) => api, 数据在 api.data 中,修改后返回 api 对象。'
778
- },
779
-
780
- {
781
- name: 'adaptor',
782
- type: 'js-editor',
783
- allowFullscreen: true,
784
- label: '接收适配器',
785
- description: '函数签名: (payload, response, api) => payload'
786
- }
787
- ]
788
- }
789
- ]
790
- }
791
- ],
792
- ...rest
793
- };
794
- },
795
- /**
796
- * combo 组件样式包装调整
797
- */
798
- 'combo-container': (config: SchemaObject) => {
799
- if (isObject(config)) {
800
- const itemsWrapperClassName =
801
- (config as any).type === 'combo' &&
802
- 'ae-Combo-items ' + ((config as any).itemsWrapperClassName ?? '');
803
- return {
804
- ...(config as any),
805
- ...(itemsWrapperClassName ? {itemsWrapperClassName} : {})
806
- };
807
- }
808
- return config;
809
- },
810
-
811
- // 所有组件的状态
812
- 'status': (config: {
813
- isFormItem?: boolean;
814
- readonly?: boolean;
815
- disabled?: boolean;
816
- }) => {
817
- return {
818
- title: '状态',
819
- body: [
820
- getSchemaTpl('hidden'),
821
- config?.readonly ? getSchemaTpl('readonly') : null,
822
- config?.disabled || config?.isFormItem
823
- ? getSchemaTpl('disabled')
824
- : null,
825
- config?.isFormItem ? getSchemaTpl('clearValueOnHidden') : null
826
- ]
827
- };
828
- },
829
-
830
- 'source': (patch: any = {}) => {
831
- return getSchemaTpl('api', {
832
- name: 'source',
833
- label: '获取选项接口',
834
- description: '可以通过接口获取动态选项,一次拉取全部。',
835
- sampleBuilder: (schema: any) =>
836
- JSON.stringify(
837
- {
838
- status: 0,
839
- msg: '',
840
- data: {
841
- options: [
842
- {
843
- label: '选项A',
844
- value: 'a'
845
- },
846
-
847
- {
848
- label: '选项B',
849
- value: 'b'
850
- }
851
- ]
852
- }
853
- },
854
- null,
855
- 2
856
- ),
857
- ...patch
858
- });
859
- },
860
-
861
- 'autoFill': {
862
- type: 'input-kv',
863
- name: 'autoFill',
864
- label: tipedLabel(
865
- '自动填充',
866
- '将当前已选中的选项的某个字段的值,自动填充到表单中某个表单项中,支持数据映射'
867
- )
868
- },
869
-
870
- 'apiString': {
871
- name: 'api',
872
- type: 'input-text',
873
- placeholder: 'http://'
874
- },
875
-
876
- 'required': {
877
- type: 'switch',
878
- name: 'required',
879
- label: '是否必填',
880
- mode: 'horizontal',
881
- horizontal: {
882
- justify: true,
883
- left: 8
884
- },
885
- inputClassName: 'is-inline '
886
- },
887
-
888
- /**
889
- * 表单项描述description
890
- */
891
- 'description': {
892
- name: 'description',
893
- type: 'textarea',
894
- label: tipedLabel('描述', '表单项控件下方浅色文字描述'),
895
- maxRows: 2,
896
- pipeIn: (value: any, data: any) => value || data.desc || ''
897
- },
898
-
899
- 'options': {
900
- label: '选项 Options',
901
- name: 'options',
902
- type: 'combo',
903
- multiple: true,
904
- draggable: true,
905
- addButtonText: '新增选项',
906
- scaffold: {
907
- label: '',
908
- value: ''
909
- },
910
- items: [
911
- {
912
- type: 'input-text',
913
- name: 'label',
914
- placeholder: '名称',
915
- required: true
916
- },
917
- {
918
- type: 'select',
919
- name: 'value',
920
- pipeIn: (value: any) => {
921
- if (typeof value === 'string') {
922
- return 'text';
923
- }
924
- if (typeof value === 'boolean') {
925
- return 'boolean';
926
- }
927
- if (typeof value === 'number') {
928
- return 'number';
929
- }
930
- return 'text';
931
- },
932
- pipeOut: (value: any, oldValue: any) => {
933
- if (value === 'text') {
934
- return String(oldValue);
935
- }
936
- if (value === 'number') {
937
- const convertTo = Number(oldValue);
938
- if (isNaN(convertTo)) {
939
- return 0;
940
- }
941
- return convertTo;
942
- }
943
- if (value === 'boolean') {
944
- return Boolean(oldValue);
945
- }
946
- return '';
947
- },
948
- options: [
949
- {label: '文本', value: 'text'},
950
- {label: '数字', value: 'number'},
951
- {label: '布尔', value: 'boolean'}
952
- ]
953
- },
954
- {
955
- type: 'input-number',
956
- name: 'value',
957
- placeholder: '值',
958
- visibleOn: 'typeof data.value === "number"',
959
- unique: true
960
- },
961
- {
962
- type: 'switch',
963
- name: 'value',
964
- placeholder: '值',
965
- visibleOn: 'typeof data.value === "boolean"',
966
- unique: true
967
- },
968
- {
969
- type: 'input-text',
970
- name: 'value',
971
- placeholder: '值',
972
- visibleOn:
973
- 'typeof data.value === "undefined" || typeof data.value === "string"',
974
- unique: true
975
- }
976
- ]
977
- },
978
-
979
- 'tree': {
980
- label: '选项 Options',
981
- name: 'options',
982
- type: 'combo',
983
- multiple: true,
984
- draggable: true,
985
- addButtonText: '新增选项',
986
- description:
987
- '静态数据暂不支持多级,请切换到代码模式,或者采用 source 接口获取。',
988
- scaffold: {
989
- label: '',
990
- value: ''
991
- },
992
- items: [
993
- {
994
- type: 'input-text',
995
- name: 'label',
996
- placeholder: '名称',
997
- required: true
998
- },
999
-
1000
- {
1001
- type: 'input-text',
1002
- name: 'value',
1003
- placeholder: '值',
1004
- unique: true
1005
- }
1006
- ]
1007
- },
1008
-
1009
- 'leftFixed': {
1010
- name: 'horizontal.leftFixed',
1011
- type: 'button-group-select',
1012
- visibleOn: 'data.horizontal && data.horizontal.leftFixed',
1013
- label: '宽度',
1014
- options: [
1015
- {
1016
- label: '小',
1017
- value: 'sm'
1018
- },
1019
-
1020
- {
1021
- label: '中',
1022
- value: 'normal'
1023
- },
1024
-
1025
- {
1026
- label: '大',
1027
- value: 'lg'
1028
- }
1029
- ]
1030
- },
1031
-
1032
- 'leftRate': {
1033
- name: 'horizontal',
1034
- type: 'input-range',
1035
- visibleOn: 'data.horizontal && !data.horizontal.leftFixed',
1036
- min: 1,
1037
- max: 11,
1038
- step: 1,
1039
- label: tipedLabel('比例', '12 等份,标题宽度占比 n/12'),
1040
- pipeIn(v: any) {
1041
- return v.left || 3;
1042
- },
1043
- pipeOut(v: any) {
1044
- return {left: v, right: 12 - v};
1045
- }
1046
- },
1047
-
1048
- 'horizontal': () => [
1049
- {
1050
- type: 'button-group-select',
1051
- label: '标题宽度',
1052
- name: 'horizontal',
1053
- options: [
1054
- {label: '继承', value: 'formHorizontal'},
1055
- {label: '固宽', value: 'leftFixed'},
1056
- {label: '比例', value: 'leftRate'}
1057
- ],
1058
- pipeIn(v: any) {
1059
- if (!v) {
1060
- return 'formHorizontal';
1061
- }
1062
- if (v.leftFixed) {
1063
- return 'leftFixed';
1064
- }
1065
- return 'leftRate';
1066
- },
1067
- pipeOut(v: any) {
1068
- const defaultData = {
1069
- formHorizontal: undefined,
1070
- leftFixed: {leftFixed: 'normal'},
1071
- leftRate: {left: 3, right: 9}
1072
- };
1073
-
1074
- // @ts-ignore
1075
- return defaultData[v];
1076
- },
1077
- visibleOn: 'this.mode == "horizontal" && this.label !== false'
1078
- },
1079
- {
1080
- type: 'container',
1081
- className: 'ae-ExtendMore mb-3',
1082
- visibleOn:
1083
- 'this.mode == "horizontal" && this.horizontal && this.label !== false',
1084
- body: [getSchemaTpl('leftFixed'), getSchemaTpl('leftRate')]
1085
- }
1086
- ],
1087
-
1088
- 'subFormItemMode': {
1089
- label: '子表单展示模式',
1090
- name: 'subFormMode',
1091
- type: 'button-group-select',
1092
- size: 'sm',
1093
- option: '继承',
1094
- // mode: 'inline',
1095
- // className: 'w-full',
1096
- pipeIn: defaultValue(''),
1097
- options: [
1098
- {
1099
- label: '继承',
1100
- value: ''
1101
- },
1102
-
1103
- {
1104
- label: '正常',
1105
- value: 'normal'
1106
- },
1107
-
1108
- {
1109
- label: '内联',
1110
- value: 'inline'
1111
- },
1112
-
1113
- {
1114
- label: '水平',
1115
- value: 'horizontal'
1116
- }
1117
- ]
1118
- },
1119
-
1120
- 'subFormHorizontalMode': {
1121
- type: 'switch',
1122
- label: '子表单水平占比设置',
1123
- name: 'subFormHorizontal',
1124
- onText: '继承',
1125
- offText: '自定义',
1126
- inputClassName: 'text-sm',
1127
- visibleOn: 'this.subFormMode == "horizontal"',
1128
- pipeIn: (value: any) => !value,
1129
- pipeOut: (value: any, originValue: any, data: any) =>
1130
- value
1131
- ? null
1132
- : data.formHorizontal || {
1133
- leftFixed: 'normal'
1134
- }
1135
- },
1136
-
1137
- 'subFormHorizontal': {
1138
- type: 'combo',
1139
- syncDefaultValue: false,
1140
- visibleOn: 'data.subFormMode == "horizontal" && data.subFormHorizontal',
1141
- name: 'subFormHorizontal',
1142
- multiLine: true,
1143
- pipeIn: (value: any) => {
1144
- return {
1145
- leftRate:
1146
- value && typeof value.left === 'number'
1147
- ? value.left
1148
- : value && /\bcol\-(?:xs|sm|md|lg)\-(\d+)\b/.test(value.left)
1149
- ? parseInt(RegExp.$1, 10)
1150
- : 2,
1151
- leftFixed: (value && value.leftFixed) || ''
1152
- };
1153
- },
1154
- pipeOut: (value: any) => {
1155
- let left = Math.min(11, Math.max(1, value.leftRate || 2));
1156
-
1157
- return {
1158
- leftFixed: value.leftFixed || '',
1159
- left: left,
1160
- right: 12 - left
1161
- };
1162
- },
1163
- inputClassName: 'no-padder',
1164
- items: [
1165
- {
1166
- name: 'leftFixed',
1167
- type: 'button-group-select',
1168
- label: '左侧宽度',
1169
- size: 'xs',
1170
- options: [
1171
- {
1172
- label: '比率',
1173
- value: ''
1174
- },
1175
-
1176
- {
1177
- label: '小宽度',
1178
- value: 'sm',
1179
- visibleOn: 'this.leftFixed'
1180
- },
1181
-
1182
- {
1183
- label: '固定宽度',
1184
- value: 'normal'
1185
- },
1186
-
1187
- {
1188
- label: '大宽度',
1189
- value: 'lg',
1190
- visibleOn: 'this.leftFixed'
1191
- }
1192
- ]
1193
- },
1194
- {
1195
- name: 'leftRate',
1196
- type: 'input-range',
1197
- visibleOn: '!this.leftFixed',
1198
- min: 1,
1199
- max: 11,
1200
- step: 1,
1201
- label: '左右分布调整(n/12)',
1202
- labelRemark: {
1203
- trigger: 'click',
1204
- className: 'm-l-xs',
1205
- rootClose: true,
1206
- content: '一共 12 等份,这里可以设置左侧宽度占比 n/12。',
1207
- placement: 'left'
1208
- }
1209
- }
1210
- ]
1211
- },
1212
-
1213
- 'validations': (function () {
1214
- const options = [
1215
- // {
1216
- // label: '必填',
1217
- // value: 'isRequired'
1218
- // },
1219
- {
1220
- label: '邮箱格式',
1221
- value: 'isEmail'
1222
- },
1223
- {
1224
- label: 'Url格式',
1225
- value: 'isUrl'
1226
- },
1227
- {
1228
- label: '数字',
1229
- value: 'isNumeric'
1230
- },
1231
- {
1232
- label: '字母',
1233
- value: 'isAlpha'
1234
- },
1235
- {
1236
- label: '字母和数字',
1237
- value: 'isAlphanumeric'
1238
- },
1239
- {
1240
- label: '整型数字',
1241
- value: 'isInt'
1242
- },
1243
- {
1244
- label: '浮点型数字',
1245
- value: 'isFloat'
1246
- },
1247
- {
1248
- label: '固定长度',
1249
- value: 'isLength'
1250
- },
1251
- {
1252
- label: '最大长度',
1253
- value: 'maxLength'
1254
- },
1255
- {
1256
- label: '最小长度',
1257
- value: 'minLength'
1258
- },
1259
- {
1260
- label: '最大值',
1261
- value: 'maximum'
1262
- },
1263
- {
1264
- label: '最小值',
1265
- value: 'minimum'
1266
- },
1267
- {
1268
- label: '手机号码',
1269
- value: 'isPhoneNumber'
1270
- },
1271
- {
1272
- label: '电话号码',
1273
- value: 'isTelNumber'
1274
- },
1275
- {
1276
- label: '邮编号码',
1277
- value: 'isZipcode'
1278
- },
1279
- {
1280
- label: '身份证号码',
1281
- value: 'isId'
1282
- },
1283
- {
1284
- label: 'JSON格式',
1285
- value: 'isJson'
1286
- },
1287
- {
1288
- label: '与指定值相同',
1289
- value: 'equals'
1290
- },
1291
- {
1292
- label: '与指定字段值相同',
1293
- value: 'equalsField'
1294
- },
1295
- {
1296
- label: '自定义正则',
1297
- value: 'matchRegexp'
1298
- },
1299
- {
1300
- label: '自定义正则2',
1301
- value: 'matchRegexp1'
1302
- },
1303
- {
1304
- label: '自定义正则3',
1305
- value: 'matchRegexp2'
1306
- },
1307
- {
1308
- label: '自定义正则4',
1309
- value: 'matchRegexp3'
1310
- },
1311
- {
1312
- label: '自定义正则5',
1313
- value: 'matchRegexp4'
1314
- }
1315
- ];
1316
-
1317
- const trueProps = [
1318
- 'isEmail',
1319
- 'isUrl',
1320
- 'isNumeric',
1321
- 'isAlpha',
1322
- 'isAlphanumeric',
1323
- 'isInt',
1324
- 'isFloat',
1325
- 'isJson',
1326
- 'isPhoneNumber',
1327
- 'isTelNumber',
1328
- 'isZipcode',
1329
- 'isId'
1330
- ];
1331
-
1332
- function firstValue(arr: Array<any>, iterator: (item: any) => any) {
1333
- let theone = find(arr, iterator);
1334
- return theone ? theone.value : '';
1335
- }
1336
-
1337
- return {
1338
- type: 'combo',
1339
- syncDefaultValue: false,
1340
- name: 'validations',
1341
- label: '验证规则',
1342
- addButtonText: '新增规则',
1343
- multiple: true,
1344
- pipeIn: (value: any) => {
1345
- if (typeof value === 'string' && value) {
1346
- value = str2rules(value);
1347
- }
1348
- if (!isObject(value)) {
1349
- return value;
1350
- }
1351
-
1352
- let arr: Array<any> = [];
1353
-
1354
- Object.keys(value).forEach(key => {
1355
- if (/^\$\$/.test(key)) {
1356
- return;
1357
- }
1358
-
1359
- arr.push({
1360
- type: key,
1361
- [key]: Array.isArray(value[key]) ? value[key][0] : value[key]
1362
- });
1363
- });
1364
-
1365
- return arr;
1366
- },
1367
- pipeOut: (value: any) => {
1368
- if (!Array.isArray(value)) {
1369
- return value;
1370
- }
1371
- let obj: any = {};
1372
-
1373
- value.forEach((item: any) => {
1374
- let key: string =
1375
- item.type ||
1376
- firstValue(options, (item: any) => !obj[item.value]) ||
1377
- options[0].value;
1378
- obj[key] = item[key] || (~trueProps.indexOf(key) ? true : '');
1379
- });
1380
-
1381
- return obj;
1382
- },
1383
- items: [
1384
- {
1385
- type: 'select',
1386
- unique: true,
1387
- name: 'type',
1388
- options: options,
1389
- columnClassName: 'w-sm'
1390
- },
1391
- {
1392
- type: 'input-number',
1393
- name: 'isLength',
1394
- visibleOn: 'data.type == "isLength"',
1395
- placeholder: '设置长度',
1396
- value: '1'
1397
- },
1398
- {
1399
- type: 'input-number',
1400
- name: 'maximum',
1401
- visibleOn: 'data.type == "maximum"',
1402
- placeholder: '设置最大值'
1403
- },
1404
- {
1405
- type: 'input-number',
1406
- name: 'minimum',
1407
- visibleOn: 'data.type == "minimum"',
1408
- placeholder: '设置最小值'
1409
- },
1410
- {
1411
- type: 'input-number',
1412
- name: 'maxLength',
1413
- visibleOn: 'data.type == "maxLength"',
1414
- placeholder: '设置最大长度值'
1415
- },
1416
- {
1417
- type: 'input-number',
1418
- name: 'minLength',
1419
- visibleOn: 'data.type == "minLength"',
1420
- placeholder: '设置最小长度值'
1421
- },
1422
- {
1423
- type: 'input-text',
1424
- name: 'equals',
1425
- visibleOn: 'data.type == "equals"',
1426
- placeholder: '设置值',
1427
- value: ''
1428
- },
1429
- {
1430
- type: 'input-text',
1431
- name: 'equalsField',
1432
- visibleOn: 'data.type == "equalsField"',
1433
- placeholder: '设置字段名',
1434
- value: ''
1435
- },
1436
- {
1437
- type: 'input-text',
1438
- name: 'matchRegexp',
1439
- visibleOn: 'data.type == "matchRegexp"',
1440
- placeholder: '设置正则规则'
1441
- },
1442
- {
1443
- type: 'input-text',
1444
- name: 'matchRegexp1',
1445
- visibleOn: 'data.type == "matchRegexp1"',
1446
- placeholder: '设置正则规则'
1447
- },
1448
- {
1449
- type: 'input-text',
1450
- name: 'matchRegexp2',
1451
- visibleOn: 'data.type == "matchRegexp2"',
1452
- placeholder: '设置正则规则'
1453
- },
1454
- {
1455
- type: 'input-text',
1456
- name: 'matchRegexp3',
1457
- visibleOn: 'data.type == "matchRegexp3"',
1458
- placeholder: '设置正则规则'
1459
- },
1460
- {
1461
- type: 'input-text',
1462
- name: 'matchRegexp4',
1463
- visibleOn: 'data.type == "matchRegexp4"',
1464
- placeholder: '设置正则规则'
1465
- }
1466
- ]
1467
- };
1468
- })(),
1469
-
1470
- 'validationErrors': (function () {
1471
- const options = [
1472
- // {
1473
- // label: '必填',
1474
- // value: 'isRequired'
1475
- // },
1476
- {
1477
- label: '邮箱格式',
1478
- value: 'isEmail'
1479
- },
1480
- {
1481
- label: 'Url格式',
1482
- value: 'isUrl'
1483
- },
1484
- {
1485
- label: '数字',
1486
- value: 'isNumeric'
1487
- },
1488
- {
1489
- label: '字母',
1490
- value: 'isAlpha'
1491
- },
1492
- {
1493
- label: '字母和数字',
1494
- value: 'isAlphanumeric'
1495
- },
1496
- {
1497
- label: '整型数字',
1498
- value: 'isInt'
1499
- },
1500
- {
1501
- label: '浮点型数字',
1502
- value: 'isFloat'
1503
- },
1504
- {
1505
- label: '固定长度',
1506
- value: 'isLength'
1507
- },
1508
- {
1509
- label: '最大长度',
1510
- value: 'maxLength'
1511
- },
1512
- {
1513
- label: '最小长度',
1514
- value: 'minLength'
1515
- },
1516
- {
1517
- label: '最大值',
1518
- value: 'maximum'
1519
- },
1520
- {
1521
- label: '最小值',
1522
- value: 'minimum'
1523
- },
1524
- {
1525
- label: 'JSON格式',
1526
- value: 'isJson'
1527
- },
1528
- {
1529
- label: '手机号码',
1530
- value: 'isPhoneNumber'
1531
- },
1532
- {
1533
- label: '电话号码',
1534
- value: 'isTelNumber'
1535
- },
1536
- {
1537
- label: '邮编号码',
1538
- value: 'isZipcode'
1539
- },
1540
- {
1541
- label: '身份证号码',
1542
- value: 'isId'
1543
- },
1544
- {
1545
- label: '与指定值相同',
1546
- value: 'equals'
1547
- },
1548
- {
1549
- label: '与指定字段值相同',
1550
- value: 'equalsField'
1551
- },
1552
- {
1553
- label: '自定义正则',
1554
- value: 'matchRegexp'
1555
- },
1556
- {
1557
- label: '自定义正则2',
1558
- value: 'matchRegexp1'
1559
- },
1560
- {
1561
- label: '自定义正则3',
1562
- value: 'matchRegexp2'
1563
- },
1564
- {
1565
- label: '自定义正则4',
1566
- value: 'matchRegexp3'
1567
- },
1568
- {
1569
- label: '自定义正则5',
1570
- value: 'matchRegexp4'
1571
- }
1572
- ];
1573
-
1574
- const defaultMessages = {
1575
- isEmail: 'Email 格式不正确',
1576
- isRequired: '这是必填项',
1577
- isUrl: 'Url 格式不正确',
1578
- isInt: '请输入整形数字',
1579
- isAlpha: '请输入字母',
1580
- isNumeric: '请输入数字',
1581
- isAlphanumeric: '请输入字母或者数字',
1582
- isFloat: '请输入浮点型数值',
1583
- isWords: '请输入字母',
1584
- isUrlPath: '只能输入字母、数字、`-` 和 `_`.',
1585
- matchRegexp: '格式不正确, 请输入符合规则为 `$1` 的内容。',
1586
- minLength: '请输入更多的内容,至少输入 $1 个字符。',
1587
- maxLength: '请控制内容长度, 请不要输入 $1 个字符以上',
1588
- maximum: '当前输入值超出最大值 $1,请检查',
1589
- minimum: '当前输入值低于最小值 $1,请检查',
1590
- isJson: '请检查 Json 格式。',
1591
- isPhoneNumber: '请输入合法的手机号码',
1592
- isTelNumber: '请输入合法的电话号码',
1593
- isZipcode: '请输入合法的邮编地址',
1594
- isId: '请输入合法的身份证号',
1595
- isLength: '请输入长度为 $1 的内容',
1596
- notEmptyString: '请不要全输入空白字符',
1597
- equalsField: '输入的数据与 $1 值不一致',
1598
- equals: '输入的数据与 $1 不一致'
1599
- };
1600
-
1601
- function firstValue(arr: Array<any>, iterator: (item: any) => any) {
1602
- let theone = find(arr, iterator);
1603
- return theone ? theone.value : '';
1604
- }
1605
-
1606
- return {
1607
- type: 'combo',
1608
- syncDefaultValue: false,
1609
- name: 'validationErrors',
1610
- label: '自定义验证提示',
1611
- description: '自带提示不满足时,可以自定义。',
1612
- addButtonText: '新增提示',
1613
- multiple: true,
1614
- pipeIn: (value: any) => {
1615
- if (!isObject(value)) {
1616
- return value;
1617
- }
1618
-
1619
- let arr: Array<any> = [];
1620
-
1621
- Object.keys(value).forEach(key => {
1622
- if (/^\$\$/.test(key)) {
1623
- return;
1624
- }
1625
-
1626
- arr.push({
1627
- type: key,
1628
- msg: value[key]
1629
- });
1630
- });
1631
-
1632
- return arr;
1633
- },
1634
- pipeOut: (value: any) => {
1635
- if (!Array.isArray(value)) {
1636
- return value;
1637
- }
1638
- let obj: any = {};
1639
-
1640
- value.forEach((item: any) => {
1641
- let key: string =
1642
- item.type ||
1643
- firstValue(options, (item: any) => !obj[item.value]) ||
1644
- options[0].value;
1645
- obj[key] = item.msg || (defaultMessages as any)[key] || '';
1646
- });
1647
-
1648
- return obj;
1649
- },
1650
- items: [
1651
- {
1652
- type: 'select',
1653
- unique: true,
1654
- name: 'type',
1655
- options: options,
1656
- columnClassName: 'w-sm'
1657
- },
1658
-
1659
- {
1660
- type: 'input-text',
1661
- name: 'msg',
1662
- placeholder: '提示信息'
1663
- },
1664
-
1665
- {
1666
- type: 'formula',
1667
- name: 'msg',
1668
- initSet: false,
1669
- formula: `({
1670
- isEmail: 'Email 格式不正确',
1671
- isRequired: '这是必填项',
1672
- isUrl: 'Url 格式不正确',
1673
- isInt: '请输入整形数字',
1674
- isAlpha: '请输入字母',
1675
- isNumeric: '请输入数字',
1676
- isAlphanumeric: '请输入字母或者数字',
1677
- isFloat: '请输入浮点型数值',
1678
- isWords: '请输入字母',
1679
- isUrlPath: '只能输入字母、数字、\`-\` 和 \`_\`.',
1680
- matchRegexp: '格式不正确, 请输入符合规则为 \`$1\` 的内容。',
1681
- minLength: '请输入更多的内容,至少输入 $1 个字符。',
1682
- maxLength: '请控制内容长度, 请不要输入 $1 个字符以上',
1683
- maximum: '当前输入值超出最大值 $1,请检查',
1684
- minimum: '当前输入值低于最小值 $1,请检查',
1685
- isJson: '请检查 Json 格式。',
1686
- isLength: '请输入长度为 $1 的内容',
1687
- notEmptyString: '请不要全输入空白字符',
1688
- equalsField: '输入的数据与 $1 值不一致',
1689
- equals: '输入的数据与 $1 不一致',
1690
- isPhoneNumber: '请输入合法的手机号码',
1691
- isTelNumber: '请输入合法的电话号码',
1692
- isZipcode: '请输入合法的邮编地址',
1693
- isId: '请输入合法的身份证号',
1694
- })[data.type] || ''`
1695
- }
1696
- ]
1697
- };
1698
- })(),
1699
-
1700
- 'submitOnChange': {
1701
- type: 'switch',
1702
- label: '修改即提交',
1703
- name: 'submitOnChange',
1704
- labelRemark: {
1705
- trigger: 'click',
1706
- className: 'm-l-xs',
1707
- rootClose: true,
1708
- content: '设置后,表单中每次有修改都会触发提交',
1709
- placement: 'left'
1710
- }
1711
- },
1712
-
1713
- 'validateOnChange': {
1714
- type: 'select',
1715
- name: 'validateOnChange',
1716
- label: '校验触发',
1717
- options: [
1718
- {
1719
- label: '提交后每次修改即触发',
1720
- value: ''
1721
- },
1722
-
1723
- {
1724
- label: '修改即触发',
1725
- value: true
1726
- },
1727
-
1728
- {
1729
- label: '提交触发',
1730
- value: false
1731
- }
1732
- ],
1733
- pipeIn: defaultValue(''),
1734
- pipeOut: (value: any) => (value === '' ? undefined : !!value)
1735
- },
1736
-
1737
- 'initFetch': {
1738
- type: 'group',
1739
- label: '是否初始加载',
1740
- visibleOn: 'this.initApi',
1741
- direction: 'vertical',
1742
- className: 'm-b-none',
1743
- labelRemark: {
1744
- trigger: 'click',
1745
- rootClose: true,
1746
- className: 'm-l-xs',
1747
- content:
1748
- '当配置初始化接口后,组件初始就会拉取接口数据,可以通过以下配置修改。',
1749
- placement: 'left'
1750
- },
1751
- body: [
1752
- {
1753
- name: 'initFetch',
1754
- type: 'radios',
1755
- inline: true,
1756
- onChange: () => {},
1757
- // pipeIn: (value:any) => typeof value === 'boolean' ? value : '1'
1758
- options: [
1759
- {
1760
- label: '是',
1761
- value: true
1762
- },
1763
-
1764
- {
1765
- label: '否',
1766
- value: false
1767
- },
1768
-
1769
- {
1770
- label: '表达式',
1771
- value: ''
1772
- }
1773
- ]
1774
- },
1775
-
1776
- {
1777
- name: 'initFetchOn',
1778
- autoComplete: false,
1779
- visibleOn: 'typeof this.initFetch !== "boolean"',
1780
- type: 'input-text',
1781
- placeholder: '如:this.id 表示有 id 值时初始加载',
1782
- className: 'm-t-n-sm'
1783
- }
1784
- ]
1785
- },
1786
-
1787
- 'disabled': {
1788
- type: 'ae-StatusControl',
1789
- label: '禁用',
1790
- mode: 'normal',
1791
- name: 'disabled',
1792
- expressioName: 'disabledOn'
1793
- },
1794
-
1795
- 'readonly': {
1796
- type: 'ae-StatusControl',
1797
- label: '只读',
1798
- mode: 'normal',
1799
- name: 'readOnly',
1800
- expressioName: 'readOnlyOn'
1801
- },
1802
-
1803
- 'visible': {
1804
- type: 'ae-StatusControl',
1805
- label: '可见',
1806
- mode: 'normal',
1807
- name: 'visible',
1808
- expressioName: 'visibleOn'
1809
- },
1810
-
1811
- 'hidden': {
1812
- type: 'ae-StatusControl',
1813
- label: '隐藏',
1814
- mode: 'normal',
1815
- name: 'hidden',
1816
- expressioName: 'hiddenOn'
1817
- },
1818
-
1819
- 'maximum': {
1820
- type: 'input-number',
1821
- label: '最大值'
1822
- },
1823
-
1824
- 'minimum': {
1825
- type: 'input-number',
1826
- label: '最小值'
1827
- },
1828
-
1829
- 'switchDefaultValue': {
1830
- type: 'switch',
1831
- label: '默认值设置',
1832
- name: 'value',
1833
- pipeIn: (value: any) => typeof value !== 'undefined',
1834
- pipeOut: (value: any, origin: any, data: any) => (value ? '' : undefined),
1835
- labelRemark: {
1836
- trigger: ['hover', 'focus'],
1837
- setting: true,
1838
- title: '',
1839
- content: '不设置时根据 name 获取'
1840
- }
1841
- },
1842
-
1843
- 'multiple': (schema: any = {}) => ({
1844
- type: 'ae-Switch-More',
1845
- mode: 'normal',
1846
- name: 'multiple',
1847
- label: '可多选',
1848
- value: false,
1849
- hiddenOnDefault: true,
1850
- formType: 'extend',
1851
- form: {
1852
- body: schema.replace
1853
- ? schema.body
1854
- : [
1855
- getSchemaTpl('joinValues'),
1856
- getSchemaTpl('delimiter'),
1857
- getSchemaTpl('extractValue'),
1858
- ...[schema.body || []]
1859
- ]
1860
- }
1861
- }),
1862
-
1863
- 'checkAll': () => [
1864
- getSchemaTpl('switch', {
1865
- label: '可全选',
1866
- name: 'checkAll',
1867
- value: false,
1868
- visibleOn: 'data.multiple'
1869
- }),
1870
- {
1871
- type: 'container',
1872
- className: 'ae-ExtendMore mb-2',
1873
- visibleOn: 'data.checkAll && data.multiple',
1874
- body: [
1875
- getSchemaTpl('switch', {
1876
- label: '默认全选',
1877
- name: 'defaultCheckAll',
1878
- value: false
1879
- }),
1880
- {
1881
- type: 'input-text',
1882
- name: 'checkAllLabel',
1883
- label: '选项文案',
1884
- value: '全选',
1885
- mode: 'row'
1886
- }
1887
- ]
1888
- }
1889
- ],
1890
-
1891
- 'joinValues': () =>
1892
- getSchemaTpl('switch', {
1893
- label: tipedLabel(
1894
- '拼接值',
1895
- '开启后将选中的选项 value 的值用连接符拼接起来,作为当前表单项的值'
1896
- ),
1897
- name: 'joinValues',
1898
- visibleOn: 'data.multiple',
1899
- value: true
1900
- }),
1901
-
1902
- 'delimiter': {
1903
- type: 'input-text',
1904
- name: 'delimiter',
1905
- label: tipedLabel('拼接符', '将多个值拼接成一个字符串的连接符号'),
1906
- visibleOn: 'data.multiple && data.joinValues',
1907
- pipeIn: defaultValue(',')
1908
- },
1909
-
1910
- 'extractValue': {
1911
- type: 'switch',
1912
- label: tipedLabel(
1913
- '仅提取值',
1914
- '开启后将选中项的 value 封装为数组,关闭后则将整个选项数据封装为数组。'
1915
- ),
1916
- name: 'extractValue',
1917
- inputClassName: 'is-inline',
1918
- visibleOn: 'data.multiple && data.joinValues === false',
1919
- pipeIn: defaultValue(false)
1920
- },
1921
-
1922
- 'creatable': (schema: Partial<SchemaObject> = {}) => {
1923
- return {
1924
- label: tipedLabel('可创建', '配置事件动作可插入或拦截默认交互'),
1925
- type: 'ae-switch-more',
1926
- mode: 'normal',
1927
- name: 'creatable',
1928
- ...schema
1929
- };
1930
- },
1931
-
1932
- 'addApi': () =>
1933
- getSchemaTpl('apiControl', {
1934
- label: '新增接口',
1935
- name: 'addApi',
1936
- visibleOn: 'data.creatable'
1937
- }),
1938
-
1939
- 'createBtnLabel': {
1940
- label: '按钮名称',
1941
- name: 'createBtnLabel',
1942
- type: 'input-text',
1943
- placeholder: '新建'
1944
- },
1945
-
1946
- 'editable': (schema: Partial<SchemaObject> = {}) => {
1947
- return {
1948
- label: tipedLabel('可编辑', '配置事件动作可插入或拦截默认交互'),
1949
- type: 'ae-switch-more',
1950
- mode: 'normal',
1951
- name: 'editable',
1952
- ...schema
1953
- };
1954
- },
1955
-
1956
- 'editApi': () =>
1957
- getSchemaTpl('apiControl', {
1958
- label: '编辑接口',
1959
- name: 'editApi',
1960
- visibleOn: 'data.editable'
1961
- }),
1962
-
1963
- 'removable': (schema: Partial<SchemaObject> = {}) => {
1964
- return {
1965
- label: tipedLabel('可删除', '配置事件动作可插入或拦截默认交互'),
1966
- type: 'ae-switch-more',
1967
- mode: 'normal',
1968
- name: 'removable',
1969
- ...schema
1970
- };
1971
- },
1972
-
1973
- 'deleteApi': () =>
1974
- getSchemaTpl('apiControl', {
1975
- label: '删除接口',
1976
- name: 'deleteApi',
1977
- visibleOn: 'data.removable'
1978
- }),
1979
-
1980
- 'ref': () => {
1981
- // {
1982
- // type: 'input-text',
1983
- // name: '$ref',
1984
- // label: '选择定义',
1985
- // labelRemark: '输入已经在page中设定好的定义'
1986
- // }
1987
- return null;
1988
- },
1989
-
1990
- 'imageUrl': {
1991
- type: 'input-text',
1992
- label: '图片'
1993
- },
1994
-
1995
- 'backgroundImageUrl': {
1996
- type: 'input-text',
1997
- label: '图片路径'
1998
- },
1999
-
2000
- 'fileUrl': {
2001
- type: 'input-text',
2002
- label: '文件'
2003
- },
2004
-
2005
- 'markdownBody': {
2006
- name: 'value',
2007
- type: 'editor',
2008
- language: 'markdown',
2009
- size: 'xxl',
2010
- label: 'Markdown 内容',
2011
- options: {
2012
- lineNumbers: 'off'
2013
- }
2014
- },
2015
-
2016
- 'richText': {
2017
- label: '富文本',
2018
- type: 'input-rich-text',
2019
- buttons: [
2020
- 'paragraphFormat',
2021
- 'quote',
2022
- 'color',
2023
- '|',
2024
- 'bold',
2025
- 'italic',
2026
- 'underline',
2027
- 'strikeThrough',
2028
- '|',
2029
- 'formatOL',
2030
- 'formatUL',
2031
- 'align',
2032
- '|',
2033
- 'insertLink',
2034
- 'insertImage',
2035
- 'insertTable',
2036
- '|',
2037
- 'undo',
2038
- 'redo',
2039
- 'fullscreen'
2040
- ],
2041
- name: 'html',
2042
- description:
2043
- '支持使用 <code>\\${xxx}</code> 来获取变量,或者用 lodash.template 语法来写模板逻辑。<a target="_blank" href="/amis/zh-CN/docs/concepts/template">详情</a>',
2044
- size: 'lg'
2045
- },
2046
-
2047
- 'showCounter': {
2048
- type: 'switch',
2049
- label: '计数器',
2050
- name: 'showCounter',
2051
- inputClassName: 'is-inline'
2052
- },
2053
-
2054
- 'borderMode': {
2055
- name: 'borderMode',
2056
- label: '边框模式',
2057
- type: 'button-group-select',
2058
- size: 'sm',
2059
- mode: 'row',
2060
- className: 'ae-buttonGroupSelect--justify',
2061
- options: [
2062
- {label: '全边框', value: 'full'},
2063
- {label: '半边框', value: 'half'},
2064
- {label: '无边框', value: 'none'}
2065
- ]
2066
- },
2067
-
2068
- 'searchable': () =>
2069
- getSchemaTpl('switch', {
2070
- label: '可检索',
2071
- name: 'searchable'
2072
- }),
2073
-
2074
- 'sortable': {
2075
- type: 'switch',
2076
- label: '可排序',
2077
- name: 'sortable'
2078
- },
2079
-
2080
- 'selectFirst': {
2081
- type: 'switch',
2082
- label: '是否默认选择第一个',
2083
- name: 'selectFirst'
2084
- },
2085
-
2086
- 'hideNodePathLabel': {
2087
- type: 'switch',
2088
- label: '隐藏选中节点的祖先节点文本信息',
2089
- name: 'hideNodePathLabel'
2090
- },
2091
-
2092
- 'clearValueOnHidden': () =>
2093
- getSchemaTpl('switch', {
2094
- type: 'switch',
2095
- horizontal: {left: 8, justify: true},
2096
- label: tipedLabel(
2097
- '隐藏时删除字段',
2098
- '当前表单项隐藏时,表单提交数据中会删除该表单项的值'
2099
- ),
2100
- name: 'clearValueOnHidden'
2101
- }),
2102
-
2103
- 'utc': {
2104
- type: 'switch',
2105
- label: tipedLabel(
2106
- 'UTC转换',
2107
- '开启后,提交数据和展示数据将进行UTC转换;存在跨地域用户的应用建议开启'
2108
- ),
2109
- name: 'utc',
2110
- inputClassName: 'is-inline'
2111
- },
2112
-
2113
- 'embed': {
2114
- type: 'switch',
2115
- label: '内嵌模式',
2116
- name: 'embed'
2117
- },
2118
-
2119
- 'buttonLevel': {
2120
- label: '按钮样式',
2121
- type: 'select',
2122
- name: 'level',
2123
- options: [
2124
- {
2125
- label: '默认',
2126
- value: 'default',
2127
- level: 'default'
2128
- },
2129
- {
2130
- label: '链接',
2131
- value: 'link',
2132
- level: 'link'
2133
- },
2134
- {
2135
- label: '主色',
2136
- value: 'primary',
2137
- level: 'primary'
2138
- },
2139
-
2140
- {
2141
- label: '淡色',
2142
- value: 'light',
2143
- level: 'light'
2144
- },
2145
- {
2146
- label: '深色',
2147
- value: 'dark',
2148
- level: 'dark'
2149
- },
2150
-
2151
- {
2152
- label: '提示',
2153
- value: 'info',
2154
- level: 'info'
2155
- },
2156
- {
2157
- label: '成功',
2158
- value: 'success',
2159
- level: 'success'
2160
- },
2161
- {
2162
- label: '警告',
2163
- value: 'warning',
2164
- level: 'warning'
2165
- },
2166
- {
2167
- label: '严重',
2168
- value: 'danger',
2169
- level: 'danger'
2170
- },
2171
- {
2172
- label: '次要',
2173
- value: 'secondary',
2174
- level: 'secondary'
2175
- },
2176
- {
2177
- label: '加强',
2178
- value: 'enhance',
2179
- level: 'enhance'
2180
- }
2181
- ],
2182
- pipeIn: defaultValue('default')
2183
- },
2184
-
2185
- 'uploadType': {
2186
- label: '上传方式',
2187
- name: 'uploadType',
2188
- type: 'select',
2189
- value: 'fileReceptor',
2190
- options: [
2191
- {
2192
- label: '文件接收器',
2193
- value: 'fileReceptor'
2194
- },
2195
-
2196
- {
2197
- label: '对象存储',
2198
- value: 'bos'
2199
- }
2200
- ]
2201
- },
2202
-
2203
- 'bos': {
2204
- label: '存储仓库',
2205
- type: 'select',
2206
- name: 'bos',
2207
- value: 'default',
2208
- options: [
2209
- {
2210
- label: '平台默认',
2211
- value: 'default'
2212
- }
2213
- ]
2214
- },
2215
-
2216
- 'proxy': {
2217
- type: 'switch',
2218
- label: '后端代理',
2219
- name: 'proxy',
2220
- mode: 'horizontal',
2221
- horizontal: {
2222
- justify: true,
2223
- left: 8
2224
- },
2225
- inputClassName: 'is-inline'
2226
- },
2227
-
2228
- /**
2229
- * 选项控件
2230
- */
2231
- 'optionControl': {
2232
- label: '数据',
2233
- mode: 'normal',
2234
- name: 'options',
2235
- type: 'ae-optionControl'
2236
- },
2237
-
2238
- 'badge': {
2239
- label: '角标',
2240
- name: 'badge',
2241
- type: 'ae-badge'
2242
- },
2243
-
2244
- /**
2245
- * 接口控件
2246
- */
2247
- 'apiControl': (patch: any = {}) => {
2248
- const {name, label, value, description, sampleBuilder, ...rest} = patch;
2249
-
2250
- return {
2251
- type: 'ae-apiControl',
2252
- label,
2253
- name,
2254
- description,
2255
- mode: 'normal',
2256
- labelRemark: sampleBuilder
2257
- ? {
2258
- icon: '',
2259
- label: '示例',
2260
- title: '接口返回示例',
2261
- tooltipClassName: 'ae-ApiSample-tooltip',
2262
- render: (data: any) => (
2263
- <Html
2264
- className="ae-ApiSample"
2265
- inline={false}
2266
- html={`
2267
- <pre><code>${sampleBuilder(data)}</code></pre>
2268
- `}
2269
- />
2270
- ),
2271
- trigger: 'click',
2272
- className: 'm-l-xs',
2273
- rootClose: true,
2274
- placement: 'left'
2275
- }
2276
- : undefined,
2277
- ...rest
2278
- };
2279
- },
2280
-
2281
- /**
2282
- * 接口控件
2283
- */
2284
- 'actionApiControl': (patch: any = {}) => {
2285
- const {name, label, value, description, sampleBuilder, ...rest} = patch;
2286
-
2287
- return {
2288
- type: 'ae-actionApiControl',
2289
- label,
2290
- name,
2291
- description,
2292
- mode: 'normal',
2293
- labelRemark: sampleBuilder
2294
- ? {
2295
- icon: '',
2296
- label: '示例',
2297
- title: '接口返回示例',
2298
- tooltipClassName: 'ae-ApiSample-tooltip',
2299
- render: (data: any) => (
2300
- <Html
2301
- className="ae-ApiSample"
2302
- inline={false}
2303
- html={`
2304
- <pre><code>${sampleBuilder(data)}</code></pre>
2305
- `}
2306
- />
2307
- ),
2308
- trigger: 'click',
2309
- className: 'm-l-xs',
2310
- rootClose: true,
2311
- placement: 'left'
2312
- }
2313
- : undefined,
2314
- ...rest
2315
- };
2316
- },
2317
-
2318
- 'validation': (config: {
2319
- tag: ValidatorTag | ((ctx: any) => ValidatorTag);
2320
- }) => {
2321
- let a = {
2322
- title: '校验',
2323
- body: [
2324
- {
2325
- type: 'ae-validationControl',
2326
- mode: 'normal',
2327
- ...config
2328
- // pipeIn: (value: any, data: any) => {
2329
- // // return reduce(value, (arr: any, item) => {
2330
- // // if (typeof item === 'string') {
2331
- // // arr.push(item);
2332
- // // }
2333
- // // else {
2334
- // // let isAdd = false;
2335
- // // // 优先判断是否具备可展示条件
2336
- // // forEach(item?.isShow, (val, key) => {
2337
- // // if ([...val].includes(data?.data[key])) {
2338
- // // isAdd = true;
2339
- // // return false;
2340
- // // }
2341
- // // })
2342
- // // !isAdd && forEach(item?.isHidden, (val, key) => {
2343
- // // const hasExist = [...val].includes(data?.data[key]);
2344
- // // isAdd = hasExist ? false : true;
2345
- // // if (hasExist) {
2346
- // // return false;
2347
- // // }
2348
- // // })
2349
- // // isAdd && arr.push(item.option);
2350
- // // }
2351
- // // return arr;
2352
- // // }, []);
2353
- // },
2354
- },
2355
- getSchemaTpl('validateOnChange')
2356
- ]
2357
- };
2358
- return a;
2359
- },
2360
- /**
2361
- * 表单项校验控件
2362
- */
2363
- 'validationControl': (value: Array<ValidationOptions> = []) => ({
2364
- type: 'ae-validationControl',
2365
- label: '校验规则',
2366
- mode: 'normal',
2367
- pipeIn: (value: any, data: any) => {
2368
- return reduce(
2369
- value,
2370
- (arr: any, item) => {
2371
- if (typeof item === 'string') {
2372
- arr.push(item);
2373
- } else {
2374
- let isAdd = false;
2375
- // 优先判断是否具备可展示条件
2376
- forEach(item?.isShow, (val, key) => {
2377
- if ([...val].includes(data?.data[key])) {
2378
- isAdd = true;
2379
- return false;
2380
- }
2381
- return true;
2382
- });
2383
- !isAdd &&
2384
- forEach(item?.isHidden, (val, key) => {
2385
- const hasExist = [...val].includes(data?.data[key]);
2386
- isAdd = hasExist ? false : true;
2387
- if (hasExist) {
2388
- return false;
2389
- }
2390
- return true;
2391
- });
2392
- isAdd && arr.push(item.option);
2393
- }
2394
- return arr;
2395
- },
2396
- []
2397
- );
2398
- },
2399
- value
2400
- }),
2401
-
2402
- /**
2403
- * 表达式编辑器控件
2404
- */
2405
- 'formulaControl': (schema: object = {}) => {
2406
- return {
2407
- type: 'ae-formulaControl',
2408
- ...schema
2409
- };
2410
- },
2411
-
2412
- /**
2413
- * 日期范围快捷键组件
2414
- */
2415
- 'dateShortCutControl': (schema: object = {}) => {
2416
- return {
2417
- type: 'ae-DateShortCutControl',
2418
- ...schema
2419
- };
2420
- },
2421
-
2422
- 'eventControl': (schema: any = {}) => {
2423
- return {
2424
- type: 'ae-eventControl',
2425
- mode: 'normal',
2426
- ...schema
2427
- };
2428
- },
2429
-
2430
- 'style:formItem': ({renderer, schema}: any) => {
2431
- return {
2432
- title: '表单项',
2433
- key: 'formItem',
2434
- body: [
2435
- getSchemaTpl('formItemMode'),
2436
- getSchemaTpl('labelHide'),
2437
- getSchemaTpl('horizontal'),
2438
- renderer?.sizeMutable !== false ? getSchemaTpl('formItemSize') : null
2439
- // getSchemaTpl('formItemInline')
2440
- ].concat(schema)
2441
- };
2442
- },
2443
-
2444
- 'style:classNames': (config: {
2445
- schema: SchemaCollection;
2446
- isFormItem: boolean;
2447
- }) => {
2448
- const {isFormItem = true, schema = []} = config || {};
2449
-
2450
- return {
2451
- title: 'CSS 类名',
2452
- body: (isFormItem
2453
- ? [
2454
- getSchemaTpl('className', {
2455
- label: '表单项'
2456
- }),
2457
- getSchemaTpl('className', {
2458
- label: '标签',
2459
- name: 'labelClassName'
2460
- }),
2461
- getSchemaTpl('className', {
2462
- label: '控件',
2463
- name: 'inputClassName'
2464
- })
2465
- ]
2466
- : [
2467
- getSchemaTpl('className', {
2468
- label: '外层'
2469
- })
2470
- ]
2471
- ).concat(schema)
2472
- };
2473
- },
2474
-
2475
- 'style:others': (schemas: any[] = []) => ({
2476
- title: '其他项',
2477
- body: [...schemas]
2478
- }),
2479
-
2480
- 'data': {
2481
- type: 'input-kv',
2482
- name: 'data',
2483
- label: '初始静态数据'
2484
- },
2485
-
2486
- 'app-page': {
2487
- type: 'nested-select',
2488
- label: '选择页面',
2489
- name: 'link',
2490
- mode: 'horizontal',
2491
- size: 'lg',
2492
- required: true,
2493
- options: []
2494
- }
2495
- };
2496
-
2497
- /**
2498
- * 样式相关的属性面板,因为预计会比较多所以拆出来
2499
- */
2500
- export const styleTpl = {
2501
- name: 'style',
2502
- type: 'combo',
2503
- label: '',
2504
- noBorder: true,
2505
- multiLine: true,
2506
- items: [
2507
- {
2508
- type: 'fieldSet',
2509
- title: '文字',
2510
- body: [
2511
- {
2512
- type: 'group',
2513
- body: [
2514
- {
2515
- label: '文字大小',
2516
- type: 'input-text',
2517
- name: 'fontSize'
2518
- },
2519
- {
2520
- label: '文字粗细',
2521
- name: 'fontWeight',
2522
- type: 'select',
2523
- options: ['normal', 'bold', 'lighter', 'bolder']
2524
- }
2525
- ]
2526
- },
2527
- {
2528
- type: 'group',
2529
- body: [
2530
- {
2531
- label: '文字颜色',
2532
- type: 'input-color',
2533
- name: 'color'
2534
- },
2535
- {
2536
- label: '对齐方式',
2537
- name: 'textAlign',
2538
- type: 'select',
2539
- options: [
2540
- 'left',
2541
- 'right',
2542
- 'center',
2543
- 'justify',
2544
- 'justify-all',
2545
- 'start',
2546
- 'end',
2547
- 'match-parent'
2548
- ]
2549
- }
2550
- ]
2551
- }
2552
- ]
2553
- },
2554
- {
2555
- type: 'fieldSet',
2556
- title: '背景',
2557
- body: [
2558
- {
2559
- label: '颜色',
2560
- name: 'backgroundColor',
2561
- type: 'input-color'
2562
- },
2563
- getSchemaTpl('imageUrl', {
2564
- name: 'backgroundImage'
2565
- })
2566
- ]
2567
- },
2568
- {
2569
- type: 'fieldSet',
2570
- title: '边距',
2571
- body: [
2572
- {
2573
- type: 'group',
2574
- label: '外边距',
2575
- body: [
2576
- {
2577
- label: '上',
2578
- name: 'marginTop',
2579
- type: 'input-text'
2580
- },
2581
- {
2582
- label: '右',
2583
- name: 'marginRight',
2584
- type: 'input-text'
2585
- },
2586
- {
2587
- label: '下',
2588
- name: 'marginBottom',
2589
- type: 'input-text'
2590
- },
2591
- {
2592
- label: '左',
2593
- name: 'marginLeft',
2594
- type: 'input-text'
2595
- }
2596
- ]
2597
- },
2598
- {
2599
- type: 'group',
2600
- label: '内边距',
2601
- body: [
2602
- {
2603
- label: '上',
2604
- name: 'paddingTop',
2605
- type: 'input-text'
2606
- },
2607
- {
2608
- label: '右',
2609
- name: 'paddingRight',
2610
- type: 'input-text'
2611
- },
2612
- {
2613
- label: '下',
2614
- name: 'paddingBottom',
2615
- type: 'input-text'
2616
- },
2617
- {
2618
- label: '左',
2619
- name: 'paddingLeft',
2620
- type: 'input-text'
2621
- }
2622
- ]
2623
- }
2624
- ]
2625
- },
2626
- {
2627
- type: 'fieldSet',
2628
- title: '边框',
2629
- body: [
2630
- {
2631
- type: 'group',
2632
- body: [
2633
- {
2634
- label: '样式',
2635
- name: 'borderStyle',
2636
- type: 'select',
2637
- options: ['none', 'solid', 'dotted', 'dashed']
2638
- },
2639
- {
2640
- label: '颜色',
2641
- name: 'borderColor',
2642
- type: 'input-color'
2643
- }
2644
- ]
2645
- },
2646
- {
2647
- type: 'group',
2648
- body: [
2649
- {
2650
- label: '宽度',
2651
- name: 'borderWidth',
2652
- type: 'input-text'
2653
- },
2654
- {
2655
- label: '圆角宽度',
2656
- name: 'borderRadius',
2657
- type: 'input-text'
2658
- }
2659
- ]
2660
- }
2661
- ]
2662
- },
2663
- {
2664
- type: 'fieldSet',
2665
- title: '特效',
2666
- body: [
2667
- {
2668
- label: '透明度',
2669
- name: 'opacity',
2670
- min: 0,
2671
- max: 1,
2672
- step: 0.05,
2673
- type: 'input-range',
2674
- pipeIn: defaultValue(1)
2675
- },
2676
- {
2677
- label: '阴影',
2678
- name: 'boxShadow',
2679
- type: 'input-text'
2680
- }
2681
- ]
2682
- }
2683
- ]
2684
- };
2685
-
2686
- /**
2687
- * 通用CSS Style控件
2688
- * @param {string | Array<string>} exclude 需要隐藏的配置key
2689
- */
2690
- tpls['style:common'] = (exclude: string[] | string) => {
2691
- // key统一转换成Kebab case,eg: boxShadow => bos-shadow
2692
- exclude = (exclude
2693
- ? Array.isArray(exclude)
2694
- ? exclude
2695
- : [exclude]
2696
- : []
2697
- ).map((key: string) => kebabCase(key));
2698
-
2699
- return [
2700
- {
2701
- header: '布局',
2702
- key: 'layout',
2703
- body: [
2704
- {
2705
- type: 'style-display',
2706
- label: false,
2707
- name: 'style'
2708
- }
2709
- ].filter(comp => !~exclude.indexOf(comp.type.replace(/^style-/i, '')))
2710
- },
2711
- {
2712
- header: '文字',
2713
- key: 'font',
2714
- body: [
2715
- {
2716
- type: 'style-font',
2717
- label: false,
2718
- name: 'style'
2719
- }
2720
- ]
2721
- },
2722
- {
2723
- header: '内外边距',
2724
- key: 'box-model',
2725
- body: [
2726
- {
2727
- type: 'style-box-model',
2728
- label: false,
2729
- name: 'style'
2730
- }
2731
- ]
2732
- },
2733
- {
2734
- header: '背景',
2735
- key: 'background',
2736
- body: [
2737
- {
2738
- type: 'style-background',
2739
- label: false,
2740
- name: 'style'
2741
- }
2742
- ]
2743
- },
2744
- {
2745
- header: '边框',
2746
- key: 'border',
2747
- body: [
2748
- {
2749
- type: 'style-border',
2750
- label: false,
2751
- name: 'style'
2752
- }
2753
- ]
2754
- },
2755
- {
2756
- header: '阴影',
2757
- key: 'box-shadow',
2758
- body: [
2759
- {
2760
- type: 'style-box-shadow',
2761
- label: false,
2762
- name: 'style.boxShadow'
2763
- }
2764
- ]
2765
- },
2766
- {
2767
- header: '其他',
2768
- key: 'other',
2769
- body: [
2770
- {
2771
- label: '透明度',
2772
- name: 'style.opacity',
2773
- min: 0,
2774
- max: 1,
2775
- step: 0.05,
2776
- type: 'input-range',
2777
- pipeIn: defaultValue(1),
2778
- marks: {
2779
- '0%': '0',
2780
- '50%': '0.5',
2781
- '100%': '1'
2782
- }
2783
- },
2784
- {
2785
- label: '光标类型',
2786
- name: 'style.cursor',
2787
- type: 'select',
2788
- mode: 'row',
2789
- menuTpl: {
2790
- type: 'html',
2791
- html:
2792
- "<span style='cursor:${value};'>${label}</span><code class='ae-Code'>${value}</code>",
2793
- className: 'ae-selection-code'
2794
- },
2795
- pipIn: defaultValue('default'),
2796
- options: [
2797
- {label: '默认', value: 'default'},
2798
- {label: '自动', value: 'auto'},
2799
- {label: '无指针', value: 'none'},
2800
- {label: '悬浮', value: 'pointer'},
2801
- {label: '帮助', value: 'help'},
2802
- {label: '文本', value: 'text'},
2803
- {label: '单元格', value: 'cell'},
2804
- {label: '交叉指针', value: 'crosshair'},
2805
- {label: '可移动', value: 'move'},
2806
- {label: '禁用', value: 'not-allowed'},
2807
- {label: '可抓取', value: 'grab'},
2808
- {label: '放大', value: 'zoom-in'},
2809
- {label: '缩小', value: 'zoom-out'}
2810
- ]
2811
- }
2812
- ]
2813
- }
2814
- ].filter(item => !~exclude.indexOf(item.key));
2815
- };
2816
-
2817
- export function getCollapseCate(config: {
2818
- name: string;
2819
- body: SchemaCollection;
2820
- visibleOn?: string;
2821
- tools: SchemaCollection;
2822
- }) {
2823
- return;
2824
- }
2825
-
2826
- export function getSchemaTpl(name: string, patch?: object): any {
2827
- const tpl = tpls[name] || {};
2828
- let schema = null;
2829
-
2830
- if (typeof tpl === 'function') {
2831
- schema = tpl(patch);
2832
- } else {
2833
- schema = tpl
2834
- ? patch
2835
- ? {
2836
- ...tpl,
2837
- ...patch
2838
- }
2839
- : tpl
2840
- : null;
2841
- }
2842
-
2843
- return schema;
2844
- }
2845
-
2846
- export function setSchemaTpl(name: string, value: any) {
2847
- tpls[name] = value;
2848
- }
2849
-
2850
- export function valuePipeOut(value: any) {
2851
- try {
2852
- if (value === 'undefined') {
2853
- return undefined;
2854
- }
2855
-
2856
- return JSON.parse(value);
2857
- } catch (e) {
2858
- return value;
2859
- }
2860
- }
2861
-
2862
- export function undefinedPipeOut(value: any) {
2863
- if (Array.isArray(value)) {
2864
- return value.length ? value : undefined;
2865
- }
2866
-
2867
- if (typeof value === 'string') {
2868
- return value ? value : undefined;
2869
- }
2870
-
2871
- if (typeof value === 'object') {
2872
- return Object.keys(value).length ? value : undefined;
2873
- }
2874
- return value;
2875
- }
2876
-
2877
- export function defaultValue(defaultValue: any, strictMode: boolean = true) {
2878
- return strictMode
2879
- ? (value: any) => (typeof value === 'undefined' ? defaultValue : value)
2880
- : (value: any) => value || defaultValue;
2881
- }