amis 1.7.0 → 1.8.0-beta.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (469) hide show
  1. package/lib/Schema.d.ts +10 -2
  2. package/lib/Schema.js +0 -1
  3. package/lib/Schema.js.map +2 -2
  4. package/lib/SchemaRenderer.js +19 -3
  5. package/lib/SchemaRenderer.js.map +2 -2
  6. package/lib/WithRootStore.d.ts +18 -0
  7. package/lib/WithStore.js +2 -1
  8. package/lib/WithStore.js.map +2 -2
  9. package/lib/actions/CmptAction.js +26 -4
  10. package/lib/actions/CmptAction.js.map +2 -2
  11. package/lib/actions/PageAction.d.ts +32 -0
  12. package/lib/actions/PageAction.js +72 -0
  13. package/lib/actions/PageAction.js.map +13 -0
  14. package/lib/actions/index.d.ts +1 -0
  15. package/lib/actions/index.js +1 -0
  16. package/lib/actions/index.js.map +2 -2
  17. package/lib/components/Alert2.js +4 -2
  18. package/lib/components/Alert2.js.map +2 -2
  19. package/lib/components/AssociatedSelection.js +9 -2
  20. package/lib/components/AssociatedSelection.js.map +2 -2
  21. package/lib/components/Avatar.d.ts +20 -20
  22. package/lib/components/BarCode.js +1 -1
  23. package/lib/components/BarCode.js.map +2 -2
  24. package/lib/components/CalendarMobile.d.ts +84 -84
  25. package/lib/components/Card.d.ts +20 -20
  26. package/lib/components/Cascader.d.ts +2 -0
  27. package/lib/components/Cascader.js +28 -12
  28. package/lib/components/Cascader.js.map +2 -2
  29. package/lib/components/Checkbox.d.ts +24 -23
  30. package/lib/components/Checkbox.js +5 -1
  31. package/lib/components/Checkbox.js.map +2 -2
  32. package/lib/components/CityArea.js +3 -0
  33. package/lib/components/CityArea.js.map +2 -2
  34. package/lib/components/Collapse.d.ts +20 -20
  35. package/lib/components/DatePicker.d.ts +87 -84
  36. package/lib/components/DatePicker.js +48 -11
  37. package/lib/components/DatePicker.js.map +2 -2
  38. package/lib/components/DateRangePicker.d.ts +285 -171
  39. package/lib/components/DateRangePicker.js +471 -66
  40. package/lib/components/DateRangePicker.js.map +2 -2
  41. package/lib/components/Drawer.js +1 -1
  42. package/lib/components/Drawer.js.map +2 -2
  43. package/lib/components/ListGroup.d.ts +21 -21
  44. package/lib/components/Modal.js +1 -1
  45. package/lib/components/Modal.js.map +2 -2
  46. package/lib/components/MonthRangePicker.d.ts +84 -84
  47. package/lib/components/Overlay.d.ts +1 -0
  48. package/lib/components/Overlay.js +4 -3
  49. package/lib/components/Overlay.js.map +2 -2
  50. package/lib/components/Progress.d.ts +29 -24
  51. package/lib/components/Progress.js +52 -21
  52. package/lib/components/Progress.js.map +2 -2
  53. package/lib/components/PullRefresh.d.ts +86 -0
  54. package/lib/components/PullRefresh.js +135 -0
  55. package/lib/components/PullRefresh.js.map +13 -0
  56. package/lib/components/Radios.d.ts +22 -22
  57. package/lib/components/Radios.js +3 -5
  58. package/lib/components/Radios.js.map +2 -2
  59. package/lib/components/Range.d.ts +2 -2
  60. package/lib/components/Range.js +24 -11
  61. package/lib/components/Range.js.map +2 -2
  62. package/lib/components/Spinner.d.ts +200 -107
  63. package/lib/components/Spinner.js +30 -26
  64. package/lib/components/Spinner.js.map +2 -2
  65. package/lib/components/Steps.d.ts +6 -0
  66. package/lib/components/Steps.js +13 -9
  67. package/lib/components/Steps.js.map +2 -2
  68. package/lib/components/Tabs.d.ts +27 -23
  69. package/lib/components/Tabs.js +37 -22
  70. package/lib/components/Tabs.js.map +2 -2
  71. package/lib/components/Tooltip.d.ts +4 -0
  72. package/lib/components/Tooltip.js +6 -4
  73. package/lib/components/Tooltip.js.map +2 -2
  74. package/lib/components/TooltipWrapper.d.ts +87 -24
  75. package/lib/components/TooltipWrapper.js +40 -8
  76. package/lib/components/TooltipWrapper.js.map +2 -2
  77. package/lib/components/Transfer.d.ts +84 -84
  78. package/lib/components/TransferDropDown.d.ts +84 -84
  79. package/lib/components/Tree.d.ts +87 -85
  80. package/lib/components/Tree.js +13 -5
  81. package/lib/components/Tree.js.map +2 -2
  82. package/lib/components/TreeSelection.d.ts +84 -84
  83. package/lib/components/calendar/Calendar.js +3 -12
  84. package/lib/components/calendar/Calendar.js.map +2 -2
  85. package/lib/components/calendar/TimeView.d.ts +1 -0
  86. package/lib/components/calendar/TimeView.js +7 -0
  87. package/lib/components/calendar/TimeView.js.map +2 -2
  88. package/lib/components/calendar/YearsView.js +3 -3
  89. package/lib/components/calendar/YearsView.js.map +2 -2
  90. package/lib/components/condition-builder/Expression.d.ts +1 -0
  91. package/lib/components/condition-builder/Expression.js +4 -4
  92. package/lib/components/condition-builder/Expression.js.map +2 -2
  93. package/lib/components/condition-builder/Field.d.ts +1 -0
  94. package/lib/components/condition-builder/Field.js +3 -2
  95. package/lib/components/condition-builder/Field.js.map +2 -2
  96. package/lib/components/condition-builder/Group.d.ts +1 -0
  97. package/lib/components/condition-builder/Group.js +2 -2
  98. package/lib/components/condition-builder/Group.js.map +2 -2
  99. package/lib/components/condition-builder/GroupOrItem.d.ts +1 -0
  100. package/lib/components/condition-builder/GroupOrItem.js +2 -2
  101. package/lib/components/condition-builder/GroupOrItem.js.map +2 -2
  102. package/lib/components/condition-builder/InputSwitch.d.ts +2 -1
  103. package/lib/components/condition-builder/InputSwitch.js +2 -2
  104. package/lib/components/condition-builder/InputSwitch.js.map +2 -2
  105. package/lib/components/condition-builder/Item.d.ts +1 -0
  106. package/lib/components/condition-builder/Item.js +9 -8
  107. package/lib/components/condition-builder/Item.js.map +2 -2
  108. package/lib/components/condition-builder/Value.d.ts +1 -0
  109. package/lib/components/condition-builder/Value.js +5 -5
  110. package/lib/components/condition-builder/Value.js.map +2 -2
  111. package/lib/components/condition-builder/index.d.ts +1 -0
  112. package/lib/components/condition-builder/index.js +2 -2
  113. package/lib/components/condition-builder/index.js.map +2 -2
  114. package/lib/components/formula/Editor.d.ts +90 -86
  115. package/lib/components/formula/Editor.js +26 -4
  116. package/lib/components/formula/Editor.js.map +2 -2
  117. package/lib/components/formula/Picker.d.ts +5 -0
  118. package/lib/components/formula/Picker.js +21 -4
  119. package/lib/components/formula/Picker.js.map +2 -2
  120. package/lib/components/icons.js +2 -0
  121. package/lib/components/icons.js.map +2 -2
  122. package/lib/factory.d.ts +5 -0
  123. package/lib/factory.js +24 -3
  124. package/lib/factory.js.map +2 -2
  125. package/lib/icons/trash.js +10 -0
  126. package/lib/index.d.ts +1 -0
  127. package/lib/index.js +2 -1
  128. package/lib/index.js.map +2 -2
  129. package/lib/locale/de-DE.js +18 -1
  130. package/lib/locale/de-DE.js.map +2 -2
  131. package/lib/locale/en-US.js +18 -1
  132. package/lib/locale/en-US.js.map +2 -2
  133. package/lib/locale/zh-CN.js +18 -1
  134. package/lib/locale/zh-CN.js.map +2 -2
  135. package/lib/renderers/Action.d.ts +3 -1
  136. package/lib/renderers/Action.js +23 -5
  137. package/lib/renderers/Action.js.map +2 -2
  138. package/lib/renderers/App.d.ts +1 -0
  139. package/lib/renderers/App.js +3 -0
  140. package/lib/renderers/App.js.map +2 -2
  141. package/lib/renderers/ButtonGroup.d.ts +2 -2
  142. package/lib/renderers/ButtonGroup.js.map +1 -1
  143. package/lib/renderers/CRUD.d.ts +8 -0
  144. package/lib/renderers/CRUD.js +12 -5
  145. package/lib/renderers/CRUD.js.map +2 -2
  146. package/lib/renderers/Carousel.d.ts +1 -0
  147. package/lib/renderers/Carousel.js +13 -1
  148. package/lib/renderers/Carousel.js.map +2 -2
  149. package/lib/renderers/Chart.d.ts +1 -0
  150. package/lib/renderers/Chart.js +3 -0
  151. package/lib/renderers/Chart.js.map +2 -2
  152. package/lib/renderers/Dialog.d.ts +5 -0
  153. package/lib/renderers/Dialog.js +7 -3
  154. package/lib/renderers/Dialog.js.map +2 -2
  155. package/lib/renderers/Drawer.d.ts +1 -0
  156. package/lib/renderers/Drawer.js +6 -1
  157. package/lib/renderers/Drawer.js.map +2 -2
  158. package/lib/renderers/DropDownButton.d.ts +2 -0
  159. package/lib/renderers/DropDownButton.js +13 -4
  160. package/lib/renderers/DropDownButton.js.map +2 -2
  161. package/lib/renderers/Form/Checkbox.d.ts +5 -2
  162. package/lib/renderers/Form/Checkbox.js +2 -2
  163. package/lib/renderers/Form/Checkbox.js.map +2 -2
  164. package/lib/renderers/Form/Checkboxes.d.ts +7 -2
  165. package/lib/renderers/Form/Checkboxes.js +101 -12
  166. package/lib/renderers/Form/Checkboxes.js.map +2 -2
  167. package/lib/renderers/Form/Combo.d.ts +6 -4
  168. package/lib/renderers/Form/Combo.js +132 -45
  169. package/lib/renderers/Form/Combo.js.map +2 -2
  170. package/lib/renderers/Form/DiffEditor.d.ts +3 -2
  171. package/lib/renderers/Form/Editor.d.ts +2 -2
  172. package/lib/renderers/Form/InputCity.d.ts +87 -84
  173. package/lib/renderers/Form/InputCity.js +48 -3
  174. package/lib/renderers/Form/InputCity.js.map +2 -2
  175. package/lib/renderers/Form/InputDate.js +10 -3
  176. package/lib/renderers/Form/InputDate.js.map +2 -2
  177. package/lib/renderers/Form/InputDateRange.d.ts +5 -0
  178. package/lib/renderers/Form/InputDateRange.js +12 -3
  179. package/lib/renderers/Form/InputDateRange.js.map +2 -2
  180. package/lib/renderers/Form/InputFile.js +19 -8
  181. package/lib/renderers/Form/InputFile.js.map +2 -2
  182. package/lib/renderers/Form/InputFormula.d.ts +4 -0
  183. package/lib/renderers/Form/InputFormula.js +2 -2
  184. package/lib/renderers/Form/InputFormula.js.map +2 -2
  185. package/lib/renderers/Form/InputImage.js +18 -7
  186. package/lib/renderers/Form/InputImage.js.map +2 -2
  187. package/lib/renderers/Form/InputMonthRange.js +5 -1
  188. package/lib/renderers/Form/InputMonthRange.js.map +2 -2
  189. package/lib/renderers/Form/InputRange.d.ts +2 -2
  190. package/lib/renderers/Form/InputRange.js +13 -14
  191. package/lib/renderers/Form/InputRange.js.map +2 -2
  192. package/lib/renderers/Form/InputTable.js +4 -2
  193. package/lib/renderers/Form/InputTable.js.map +2 -2
  194. package/lib/renderers/Form/InputText.d.ts +1 -1
  195. package/lib/renderers/Form/InputText.js +8 -10
  196. package/lib/renderers/Form/InputText.js.map +2 -2
  197. package/lib/renderers/Form/InputTree.d.ts +5 -0
  198. package/lib/renderers/Form/InputTree.js +51 -2
  199. package/lib/renderers/Form/InputTree.js.map +2 -2
  200. package/lib/renderers/Form/Item.d.ts +79 -76
  201. package/lib/renderers/Form/Item.js +3 -1
  202. package/lib/renderers/Form/Item.js.map +2 -2
  203. package/lib/renderers/Form/NestedSelect.d.ts +4 -0
  204. package/lib/renderers/Form/NestedSelect.js +14 -5
  205. package/lib/renderers/Form/NestedSelect.js.map +2 -2
  206. package/lib/renderers/Form/Options.js +61 -27
  207. package/lib/renderers/Form/Options.js.map +2 -2
  208. package/lib/renderers/Form/Select.js +4 -2
  209. package/lib/renderers/Form/Select.js.map +2 -2
  210. package/lib/renderers/Form/Textarea.js +2 -1
  211. package/lib/renderers/Form/Textarea.js.map +2 -2
  212. package/lib/renderers/Form/TreeSelect.d.ts +11 -2
  213. package/lib/renderers/Form/TreeSelect.js +56 -10
  214. package/lib/renderers/Form/TreeSelect.js.map +2 -2
  215. package/lib/renderers/Form/index.d.ts +3 -0
  216. package/lib/renderers/Form/index.js +53 -16
  217. package/lib/renderers/Form/index.js.map +2 -2
  218. package/lib/renderers/Form/wrapControl.d.ts +10 -0
  219. package/lib/renderers/Form/wrapControl.js +41 -19
  220. package/lib/renderers/Form/wrapControl.js.map +2 -2
  221. package/lib/renderers/Nav.d.ts +82 -67
  222. package/lib/renderers/Nav.js +49 -13
  223. package/lib/renderers/Nav.js.map +2 -2
  224. package/lib/renderers/Page.d.ts +21 -0
  225. package/lib/renderers/Page.js +56 -17
  226. package/lib/renderers/Page.js.map +2 -2
  227. package/lib/renderers/Progress.d.ts +4 -7
  228. package/lib/renderers/Progress.js +3 -3
  229. package/lib/renderers/Progress.js.map +2 -2
  230. package/lib/renderers/Service.d.ts +3 -0
  231. package/lib/renderers/Service.js +55 -20
  232. package/lib/renderers/Service.js.map +2 -2
  233. package/lib/renderers/Spinner.d.ts +58 -2
  234. package/lib/renderers/Spinner.js +8 -1
  235. package/lib/renderers/Spinner.js.map +2 -2
  236. package/lib/renderers/Steps.d.ts +8 -0
  237. package/lib/renderers/Steps.js +2 -2
  238. package/lib/renderers/Steps.js.map +2 -2
  239. package/lib/renderers/Table/ColumnToggler.d.ts +4 -0
  240. package/lib/renderers/Table/ColumnToggler.js +11 -6
  241. package/lib/renderers/Table/ColumnToggler.js.map +2 -2
  242. package/lib/renderers/Table/TableCell.js +27 -1
  243. package/lib/renderers/Table/TableCell.js.map +2 -2
  244. package/lib/renderers/Table/TableRow.js +1 -1
  245. package/lib/renderers/Table/TableRow.js.map +2 -2
  246. package/lib/renderers/Table/index.d.ts +2 -0
  247. package/lib/renderers/Table/index.js +23 -10
  248. package/lib/renderers/Table/index.js.map +2 -2
  249. package/lib/renderers/Tabs.d.ts +14 -2
  250. package/lib/renderers/Tabs.js +24 -8
  251. package/lib/renderers/Tabs.js.map +2 -2
  252. package/lib/renderers/TooltipWrapper.d.ts +133 -0
  253. package/lib/renderers/TooltipWrapper.js +70 -0
  254. package/lib/renderers/TooltipWrapper.js.map +13 -0
  255. package/lib/renderers/Wizard.d.ts +7 -3
  256. package/lib/renderers/Wizard.js +269 -152
  257. package/lib/renderers/Wizard.js.map +2 -2
  258. package/lib/store/combo.d.ts +2 -2
  259. package/lib/store/crud.d.ts +1 -0
  260. package/lib/store/crud.js +55 -19
  261. package/lib/store/crud.js.map +2 -2
  262. package/lib/store/form.d.ts +1 -1
  263. package/lib/store/form.js +5 -1
  264. package/lib/store/form.js.map +2 -2
  265. package/lib/store/formItem.js +1 -1
  266. package/lib/store/formItem.js.map +2 -2
  267. package/lib/store/index.d.ts +5 -0
  268. package/lib/store/index.js +14 -0
  269. package/lib/store/index.js.map +2 -2
  270. package/lib/store/table.d.ts +2 -2
  271. package/lib/store/table.js +4 -4
  272. package/lib/store/table.js.map +2 -2
  273. package/lib/themes/ang-ie11.css +965 -210
  274. package/lib/themes/ang.css +955 -175
  275. package/lib/themes/ang.css.map +1 -1
  276. package/lib/themes/antd-ie11.css +1080 -325
  277. package/lib/themes/antd.css +956 -176
  278. package/lib/themes/antd.css.map +1 -1
  279. package/lib/themes/cxd-ie11.css +1048 -293
  280. package/lib/themes/cxd.css +961 -180
  281. package/lib/themes/cxd.css.map +1 -1
  282. package/lib/themes/dark-ie11.css +965 -210
  283. package/lib/themes/dark.css +955 -175
  284. package/lib/themes/dark.css.map +1 -1
  285. package/lib/themes/default-ie11.css +1048 -293
  286. package/lib/themes/default.css +961 -180
  287. package/lib/themes/default.css.map +1 -1
  288. package/lib/types.d.ts +3 -1
  289. package/lib/types.js.map +1 -1
  290. package/lib/utils/ColorScale.d.ts +19 -0
  291. package/lib/utils/ColorScale.js +104 -0
  292. package/lib/utils/ColorScale.js.map +13 -0
  293. package/lib/utils/api.js +20 -4
  294. package/lib/utils/api.js.map +2 -2
  295. package/lib/utils/columnsSplit.d.ts +1 -0
  296. package/lib/utils/columnsSplit.js +40 -0
  297. package/lib/utils/columnsSplit.js.map +13 -0
  298. package/lib/utils/debug.d.ts +1 -1
  299. package/lib/utils/debug.js +16 -22
  300. package/lib/utils/debug.js.map +2 -2
  301. package/lib/utils/dom.d.ts +1 -1
  302. package/lib/utils/dom.js +7 -5
  303. package/lib/utils/dom.js.map +2 -2
  304. package/lib/utils/position.js +0 -1
  305. package/lib/utils/position.js.map +2 -2
  306. package/lib/utils/scrollPosition.d.ts +6 -0
  307. package/lib/utils/scrollPosition.js +31 -0
  308. package/lib/utils/scrollPosition.js.map +13 -0
  309. package/package.json +3 -2
  310. package/schema.json +30213 -29222
  311. package/scss/_properties.scss +67 -25
  312. package/scss/components/_alert.scss +1 -1
  313. package/scss/components/_barcode.scss +1 -1
  314. package/scss/components/_button-group.scss +15 -0
  315. package/scss/components/_carousel.scss +1 -0
  316. package/scss/components/_column-toggler.scss +21 -11
  317. package/scss/components/_debug.scss +3 -3
  318. package/scss/components/_formula.scss +19 -1
  319. package/scss/components/_nav.scss +51 -6
  320. package/scss/components/_progress.scss +7 -14
  321. package/scss/components/_pull-refresh.scss +25 -0
  322. package/scss/components/_spinner.scss +134 -56
  323. package/scss/components/_steps.scss +199 -8
  324. package/scss/components/_tabs.scss +145 -13
  325. package/scss/components/_tooltip.scss +76 -9
  326. package/scss/components/form/_checks.scss +125 -2
  327. package/scss/components/form/_combo.scss +13 -1
  328. package/scss/components/form/_date-range.scss +27 -2
  329. package/scss/components/form/_date.scss +25 -0
  330. package/scss/components/form/_editor.scss +2 -1
  331. package/scss/components/form/_file.scss +4 -0
  332. package/scss/components/form/_form.scss +31 -8
  333. package/scss/components/form/_number.scss +5 -2
  334. package/scss/components/form/_select.scss +0 -1
  335. package/scss/components/form/_textarea.scss +1 -23
  336. package/scss/components/form/_transfer.scss +3 -2
  337. package/scss/themes/_antd-variables.scss +1 -1
  338. package/scss/themes/_common.scss +1 -0
  339. package/scss/themes/_cxd-variables.scss +6 -5
  340. package/sdk/ang-ie11.css +1059 -198
  341. package/sdk/ang.css +1050 -164
  342. package/sdk/antd-ie11.css +1167 -306
  343. package/sdk/antd.css +1051 -165
  344. package/sdk/barcode.js +51 -51
  345. package/sdk/charts.js +14 -14
  346. package/sdk/codemirror.js +7 -7
  347. package/sdk/color-picker.js +65 -65
  348. package/sdk/cropperjs.js +2 -2
  349. package/sdk/cxd-ie11.css +1145 -284
  350. package/sdk/cxd.css +1056 -169
  351. package/sdk/dark-ie11.css +1056 -195
  352. package/sdk/dark.css +1050 -164
  353. package/sdk/exceljs.js +1 -1
  354. package/sdk/locale/de-DE.js +18 -1
  355. package/sdk/markdown.js +69 -69
  356. package/sdk/papaparse.js +1 -1
  357. package/sdk/renderers/Form/CityDB.js +1 -1
  358. package/sdk/rest.js +17 -17
  359. package/sdk/rich-text.js +62 -62
  360. package/sdk/sdk-ie11.css +1145 -284
  361. package/sdk/sdk.css +1056 -169
  362. package/sdk/sdk.js +1321 -1273
  363. package/sdk/thirds/hls.js/hls.js +1 -1
  364. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  365. package/sdk/tinymce.js +57 -57
  366. package/src/Schema.ts +15 -2
  367. package/src/SchemaRenderer.tsx +32 -14
  368. package/src/WithStore.tsx +3 -1
  369. package/src/actions/CmptAction.ts +28 -0
  370. package/src/actions/PageAction.ts +62 -0
  371. package/src/actions/index.ts +1 -0
  372. package/src/components/Alert2.tsx +9 -3
  373. package/src/components/AssociatedSelection.tsx +9 -3
  374. package/src/components/BarCode.tsx +2 -2
  375. package/src/components/Cascader.tsx +37 -11
  376. package/src/components/Checkbox.tsx +11 -5
  377. package/src/components/CityArea.tsx +3 -0
  378. package/src/components/DatePicker.tsx +68 -22
  379. package/src/components/DateRangePicker.tsx +551 -88
  380. package/src/components/Drawer.tsx +1 -0
  381. package/src/components/Modal.tsx +1 -0
  382. package/src/components/Overlay.tsx +6 -3
  383. package/src/components/Progress.tsx +64 -33
  384. package/src/components/PullRefresh.tsx +197 -0
  385. package/src/components/Radios.tsx +6 -17
  386. package/src/components/Range.tsx +26 -12
  387. package/src/components/Spinner.tsx +77 -42
  388. package/src/components/Steps.tsx +28 -27
  389. package/src/components/Tabs.tsx +51 -21
  390. package/src/components/Tooltip.tsx +12 -3
  391. package/src/components/TooltipWrapper.tsx +140 -33
  392. package/src/components/Tree.tsx +19 -5
  393. package/src/components/calendar/Calendar.tsx +4 -13
  394. package/src/components/calendar/TimeView.tsx +12 -0
  395. package/src/components/calendar/YearsView.tsx +3 -4
  396. package/src/components/condition-builder/Expression.tsx +6 -1
  397. package/src/components/condition-builder/Field.tsx +5 -1
  398. package/src/components/condition-builder/Group.tsx +4 -1
  399. package/src/components/condition-builder/GroupOrItem.tsx +4 -1
  400. package/src/components/condition-builder/InputSwitch.tsx +4 -1
  401. package/src/components/condition-builder/Item.tsx +28 -4
  402. package/src/components/condition-builder/Value.tsx +7 -1
  403. package/src/components/condition-builder/index.tsx +4 -2
  404. package/src/components/formula/Editor.tsx +46 -10
  405. package/src/components/formula/Picker.tsx +32 -1
  406. package/src/components/icons.tsx +2 -0
  407. package/src/factory.tsx +31 -3
  408. package/src/icons/trash.svg +8 -0
  409. package/src/index.tsx +1 -0
  410. package/src/locale/de-DE.ts +18 -1
  411. package/src/locale/en-US.ts +18 -1
  412. package/src/locale/zh-CN.ts +18 -1
  413. package/src/renderers/Action.tsx +24 -2
  414. package/src/renderers/App.tsx +4 -0
  415. package/src/renderers/ButtonGroup.tsx +2 -2
  416. package/src/renderers/CRUD.tsx +23 -5
  417. package/src/renderers/Carousel.tsx +8 -0
  418. package/src/renderers/Chart.tsx +4 -0
  419. package/src/renderers/Dialog.tsx +21 -3
  420. package/src/renderers/Drawer.tsx +14 -2
  421. package/src/renderers/DropDownButton.tsx +14 -3
  422. package/src/renderers/Form/Checkbox.tsx +11 -2
  423. package/src/renderers/Form/Checkboxes.tsx +106 -23
  424. package/src/renderers/Form/Combo.tsx +179 -66
  425. package/src/renderers/Form/InputCity.tsx +46 -5
  426. package/src/renderers/Form/InputDate.tsx +18 -4
  427. package/src/renderers/Form/InputDateRange.tsx +27 -3
  428. package/src/renderers/Form/InputFile.tsx +23 -7
  429. package/src/renderers/Form/InputFormula.tsx +7 -0
  430. package/src/renderers/Form/InputImage.tsx +22 -6
  431. package/src/renderers/Form/InputMonthRange.tsx +7 -1
  432. package/src/renderers/Form/InputRange.tsx +20 -22
  433. package/src/renderers/Form/InputTable.tsx +6 -2
  434. package/src/renderers/Form/InputText.tsx +14 -4
  435. package/src/renderers/Form/InputTree.tsx +40 -2
  436. package/src/renderers/Form/Item.tsx +7 -0
  437. package/src/renderers/Form/NestedSelect.tsx +23 -4
  438. package/src/renderers/Form/Options.tsx +26 -7
  439. package/src/renderers/Form/Select.tsx +5 -3
  440. package/src/renderers/Form/Textarea.tsx +3 -1
  441. package/src/renderers/Form/TreeSelect.tsx +47 -9
  442. package/src/renderers/Form/index.tsx +56 -25
  443. package/src/renderers/Form/wrapControl.tsx +23 -12
  444. package/src/renderers/Nav.tsx +231 -33
  445. package/src/renderers/Page.tsx +97 -35
  446. package/src/renderers/Progress.tsx +9 -11
  447. package/src/renderers/Service.tsx +66 -27
  448. package/src/renderers/Spinner.tsx +85 -3
  449. package/src/renderers/Steps.tsx +14 -0
  450. package/src/renderers/Table/ColumnToggler.tsx +36 -11
  451. package/src/renderers/Table/TableCell.tsx +39 -1
  452. package/src/renderers/Table/TableRow.tsx +1 -1
  453. package/src/renderers/Table/index.tsx +43 -19
  454. package/src/renderers/Tabs.tsx +90 -31
  455. package/src/renderers/TooltipWrapper.tsx +262 -0
  456. package/src/renderers/Wizard.tsx +169 -93
  457. package/src/store/crud.ts +50 -5
  458. package/src/store/form.ts +8 -3
  459. package/src/store/formItem.ts +1 -2
  460. package/src/store/index.ts +20 -0
  461. package/src/store/table.ts +4 -4
  462. package/src/types.ts +8 -1
  463. package/src/utils/ColorScale.ts +138 -0
  464. package/src/utils/api.ts +26 -4
  465. package/src/utils/columnsSplit.tsx +57 -0
  466. package/src/utils/debug.tsx +17 -24
  467. package/src/utils/dom.tsx +7 -6
  468. package/src/utils/position.ts +0 -1
  469. package/src/utils/scrollPosition.ts +29 -0
@@ -89,9 +89,9 @@ export interface TabSchema extends Omit<BaseSchema, 'type'> {
89
89
  */
90
90
  horizontal?: FormSchemaHorizontal;
91
91
  /**
92
- * 是否可关闭,优先级高于 tabs 的 closeable
92
+ * 是否可关闭,优先级高于 tabs 的 closable
93
93
  */
94
- closeable?: boolean;
94
+ closable?: boolean;
95
95
  /**
96
96
  * 是否禁用
97
97
  */
@@ -186,6 +186,14 @@ export interface TabsSchema extends BaseSchema {
186
186
  * 是否导航支持内容溢出滚动。属性废弃,为了兼容暂且保留
187
187
  */
188
188
  scrollable?: boolean;
189
+ /**
190
+ * 编辑器模式,侧边的位置
191
+ */
192
+ sidePosition?: 'left' | 'right';
193
+ /**
194
+ * 自定义增加按钮文案
195
+ */
196
+ addBtnText?: string;
189
197
  }
190
198
 
191
199
  export interface TabsProps
@@ -256,7 +264,11 @@ export default class Tabs extends React.Component<TabsProps, TabsState> {
256
264
 
257
265
  // 初始化 tabs 数组,当从 source 获取数据源时
258
266
  @autobind
259
- initTabArray(tabs: Array<TabSource>, source?: string, data?: any): [Array<TabSource>, boolean] {
267
+ initTabArray(
268
+ tabs: Array<TabSource>,
269
+ source?: string,
270
+ data?: any
271
+ ): [Array<TabSource>, boolean] {
260
272
  if (!tabs) {
261
273
  return [[], false];
262
274
  }
@@ -317,16 +329,28 @@ export default class Tabs extends React.Component<TabsProps, TabsState> {
317
329
  let localTabs = this.state.localTabs;
318
330
 
319
331
  // 响应外部修改 tabs
320
- const isTabsModified = isObjectShallowModified({
321
- tabs: props.tabs,
322
- source: resolveVariableAndFilter(props.source, props.data, '| raw')
323
- }, {
324
- tabs: preProps.tabs,
325
- source: resolveVariableAndFilter(preProps.source, preProps.data, '| raw')
326
- }, false);
332
+ const isTabsModified = isObjectShallowModified(
333
+ {
334
+ tabs: props.tabs,
335
+ source: resolveVariableAndFilter(props.source, props.data, '| raw')
336
+ },
337
+ {
338
+ tabs: preProps.tabs,
339
+ source: resolveVariableAndFilter(
340
+ preProps.source,
341
+ preProps.data,
342
+ '| raw'
343
+ )
344
+ },
345
+ false
346
+ );
327
347
 
328
348
  if (isTabsModified) {
329
- const [newLocalTabs, isFromSource] = this.initTabArray(props.tabs, props.source, props.data);
349
+ const [newLocalTabs, isFromSource] = this.initTabArray(
350
+ props.tabs,
351
+ props.source,
352
+ props.data
353
+ );
330
354
 
331
355
  this.setState({
332
356
  localTabs: newLocalTabs,
@@ -335,7 +359,11 @@ export default class Tabs extends React.Component<TabsProps, TabsState> {
335
359
  localTabs = newLocalTabs;
336
360
  }
337
361
 
338
- if (props.location && preProps.location && props.location.hash !== preProps.location.hash) {
362
+ if (
363
+ props.location &&
364
+ preProps.location &&
365
+ props.location.hash !== preProps.location.hash
366
+ ) {
339
367
  const hash = props.location.hash.substring(1);
340
368
  if (!hash) {
341
369
  return;
@@ -456,7 +484,10 @@ export default class Tabs extends React.Component<TabsProps, TabsState> {
456
484
  tab.hash ? tab.hash === key : index === key
457
485
  );
458
486
 
459
- if (localTabs[tabIndex] && !isVisible(localTabs[tabIndex], this.props.data)) {
487
+ if (
488
+ localTabs[tabIndex] &&
489
+ !isVisible(localTabs[tabIndex], this.props.data)
490
+ ) {
460
491
  let len = localTabs.length;
461
492
  let i = tabIndex - 1 + len;
462
493
  let tries = len - 1;
@@ -483,11 +514,14 @@ export default class Tabs extends React.Component<TabsProps, TabsState> {
483
514
  body: '新增tab 内容'
484
515
  } as TabSource);
485
516
 
486
- this.setState({
487
- localTabs: localTabs
488
- }, () => {
489
- this.switchTo(this.state.localTabs.length - 1);
490
- });
517
+ this.setState(
518
+ {
519
+ localTabs: localTabs
520
+ },
521
+ () => {
522
+ this.switchTo(this.state.localTabs.length - 1);
523
+ }
524
+ );
491
525
  }
492
526
 
493
527
  @autobind
@@ -512,20 +546,23 @@ export default class Tabs extends React.Component<TabsProps, TabsState> {
512
546
  }
513
547
 
514
548
  @autobind
515
- async handleDragChange(e: any){
549
+ async handleDragChange(e: any) {
516
550
  const activeTab = this.resolveTabByKey(this.activeKey);
517
551
  const originTabs: TabSource[] = this.state.localTabs.concat();
518
552
 
519
553
  originTabs.splice(e.newIndex, 0, originTabs.splice(e.oldIndex, 1)[0]);
520
554
 
521
- this.setState({
522
- localTabs: originTabs
523
- }, () => {
524
- if (activeTab) {
525
- const newActiveTabIndex = originTabs.indexOf(activeTab);
526
- this.switchTo(newActiveTabIndex);
555
+ this.setState(
556
+ {
557
+ localTabs: originTabs
558
+ },
559
+ () => {
560
+ if (activeTab) {
561
+ const newActiveTabIndex = originTabs.indexOf(activeTab);
562
+ this.switchTo(newActiveTabIndex);
563
+ }
527
564
  }
528
- });
565
+ );
529
566
  }
530
567
 
531
568
  @autobind
@@ -563,9 +600,12 @@ export default class Tabs extends React.Component<TabsProps, TabsState> {
563
600
  @autobind
564
601
  async handleChange(key: any, name: any) {
565
602
  const {dispatchEvent, data, onChange} = this.props;
566
- const rendererEvent = await dispatchEvent('change', createObject(data, {
567
- value: key,
568
- }));
603
+ const rendererEvent = await dispatchEvent(
604
+ 'change',
605
+ createObject(data, {
606
+ value: key
607
+ })
608
+ );
569
609
  if (rendererEvent?.prevented) {
570
610
  return;
571
611
  }
@@ -643,7 +683,9 @@ export default class Tabs extends React.Component<TabsProps, TabsState> {
643
683
  draggable,
644
684
  showTip,
645
685
  showTipClassName,
646
- editable
686
+ editable,
687
+ sidePosition,
688
+ addBtnText
647
689
  } = this.props;
648
690
 
649
691
  const mode = tabsMode || dMode;
@@ -747,6 +789,8 @@ export default class Tabs extends React.Component<TabsProps, TabsState> {
747
789
  showTipClassName={showTipClassName}
748
790
  editable={editable}
749
791
  onEdit={this.handleEdit}
792
+ sidePosition={sidePosition}
793
+ addBtnText={addBtnText}
750
794
  >
751
795
  {children}
752
796
  </CTabs>
@@ -760,4 +804,19 @@ export default class Tabs extends React.Component<TabsProps, TabsState> {
760
804
  @Renderer({
761
805
  type: 'tabs'
762
806
  })
763
- export class TabsRenderer extends Tabs {}
807
+ export class TabsRenderer extends Tabs {
808
+ static contextType = ScopedContext;
809
+
810
+ constructor(props: TabsProps, context: IScopedContext) {
811
+ super(props);
812
+
813
+ const scoped = context;
814
+ scoped.registerComponent(this);
815
+ }
816
+
817
+ componentWillUnmount() {
818
+ super.componentWillUnmount?.();
819
+ const scoped = this.context as IScopedContext;
820
+ scoped.unRegisterComponent(this);
821
+ }
822
+ }
@@ -0,0 +1,262 @@
1
+ import React from 'react';
2
+ import {Renderer, RendererProps} from '../factory';
3
+ import {BaseSchema, SchemaCollection} from '../Schema';
4
+ import {filter} from '../utils/tpl';
5
+ import {escapeHtml} from '../utils/tpl-builtin';
6
+ import {buildStyle} from '../utils/style';
7
+ import {TooltipWrapper as TooltipWrapperComp} from '../components';
8
+
9
+ import type {Trigger, TooltipObject} from '../components/TooltipWrapper';
10
+
11
+ export interface TooltipWrapperSchema extends BaseSchema {
12
+ /**
13
+ * 文字提示容器
14
+ */
15
+ type: 'tooltip-wrapper';
16
+
17
+ /**
18
+ * 文字提示标题
19
+ */
20
+ title?: string;
21
+
22
+ /**
23
+ * 文字提示内容,兼容 tooltip,但建议通过 content 来实现提示内容
24
+ */
25
+ content?: string;
26
+
27
+ /**
28
+ * @deprecated 文字提示内容
29
+ */
30
+ tooltip?: string;
31
+
32
+ /**
33
+ * 文字提示浮层出现位置,默认为top
34
+ */
35
+ placement?: 'top' | 'right' | 'bottom' | 'left';
36
+
37
+ /**
38
+ * 浮层位置相对偏移量
39
+ */
40
+ offset?: [number, number];
41
+
42
+ /**
43
+ * 是否展示浮层指向箭头
44
+ */
45
+ showArrow?: boolean;
46
+
47
+ /**
48
+ * 是否禁用提示
49
+ */
50
+ disabled?: boolean;
51
+
52
+ /**
53
+ * 浮层触发方式,默认为hover
54
+ */
55
+ trigger?: Trigger | Array<Trigger>;
56
+
57
+ /**
58
+ * 浮层延迟显示时间, 单位 ms
59
+ */
60
+
61
+ mouseEnterDelay?: number;
62
+ /**
63
+ * 浮层延迟隐藏时间, 单位 ms
64
+ */
65
+ mouseLeaveDelay?: number;
66
+
67
+ /**
68
+ * 是否点击非内容区域关闭提示,默认为true
69
+ */
70
+ rootClose?: boolean;
71
+
72
+ /**
73
+ * 内容区域
74
+ */
75
+ body?: SchemaCollection;
76
+
77
+ /**
78
+ * 内容区包裹标签
79
+ */
80
+ wrapperComponent: string;
81
+
82
+ /**
83
+ * 内容区是否内联显示,默认为false
84
+ */
85
+ inline?: boolean;
86
+
87
+ /**
88
+ * 主题样式, 默认为light
89
+ */
90
+ tooltipTheme?: 'light' | 'dark';
91
+
92
+ /**
93
+ * 内容区自定义样式
94
+ */
95
+ style?: {
96
+ [propName: string]: any;
97
+ };
98
+
99
+ /**
100
+ * 是否可以移入浮层中, 默认true
101
+ */
102
+ enterable?: boolean;
103
+
104
+ /**
105
+ * 自定义提示浮层样式
106
+ */
107
+ tooltipStyle?: {
108
+ [propName: string]: any;
109
+ };
110
+
111
+ /**
112
+ * 内容区CSS类名
113
+ */
114
+ className?: string;
115
+
116
+ /**
117
+ * 文字提示浮层CSS类名
118
+ */
119
+ tooltipClassName?: string;
120
+ }
121
+
122
+ export interface TooltipWrapperProps extends RendererProps {
123
+ /**
124
+ * 文字提示标题
125
+ */
126
+ title?: string;
127
+ /**
128
+ * 文字提示
129
+ */
130
+ content?: string;
131
+ tooltip?: string;
132
+ /**
133
+ * 文字提示位置
134
+ */
135
+ placement: 'top' | 'right' | 'bottom' | 'left';
136
+ inline?: boolean;
137
+ trigger: Trigger | Array<Trigger>;
138
+ rootClose?: boolean;
139
+ showArrow?: boolean;
140
+ offset?: [number, number];
141
+ disabled?: boolean;
142
+ mouseEnterDelay?: number;
143
+ mouseLeaveDelay?: number;
144
+ container?: React.ReactNode;
145
+ style?: React.CSSProperties;
146
+ tooltipStyle?: React.CSSProperties;
147
+ wrapperComponent?: string;
148
+ tooltipTheme?: 'light' | 'dark';
149
+ }
150
+
151
+ interface TooltipWrapperState {}
152
+
153
+ export default class TooltipWrapper extends React.Component<
154
+ TooltipWrapperProps,
155
+ TooltipWrapperState
156
+ > {
157
+ static defaultProps: Pick<
158
+ TooltipWrapperProps,
159
+ | 'placement'
160
+ | 'trigger'
161
+ | 'rootClose'
162
+ | 'mouseEnterDelay'
163
+ | 'mouseLeaveDelay'
164
+ | 'inline'
165
+ | 'wrap'
166
+ | 'tooltipTheme'
167
+ > = {
168
+ placement: 'top',
169
+ trigger: 'hover',
170
+ rootClose: true,
171
+ mouseEnterDelay: 0,
172
+ mouseLeaveDelay: 200,
173
+ inline: false,
174
+ wrap: false,
175
+ tooltipTheme: 'light'
176
+ };
177
+
178
+ constructor(props: TooltipWrapperProps) {
179
+ super(props);
180
+ }
181
+
182
+ renderBody() {
183
+ const {
184
+ render,
185
+ classnames: cx,
186
+ body,
187
+ className,
188
+ wrapperComponent,
189
+ inline,
190
+ style,
191
+ data,
192
+ wrap
193
+ } = this.props;
194
+ const Comp =
195
+ (wrapperComponent as keyof JSX.IntrinsicElements) ||
196
+ (inline ? 'span' : 'div');
197
+
198
+ return (
199
+ <Comp
200
+ className={cx('TooltipWrapper', className, {
201
+ 'TooltipWrapper--inline': inline
202
+ })}
203
+ style={buildStyle(style, data)}
204
+ >
205
+ {render('body', body)}
206
+ </Comp>
207
+ );
208
+ }
209
+
210
+ render() {
211
+ const {
212
+ classPrefix: ns,
213
+ classnames: cx,
214
+ tooltipClassName,
215
+ tooltipTheme,
216
+ container,
217
+ placement,
218
+ rootClose,
219
+ tooltipStyle,
220
+ title,
221
+ content,
222
+ tooltip,
223
+ mouseEnterDelay,
224
+ mouseLeaveDelay,
225
+ trigger,
226
+ offset,
227
+ showArrow,
228
+ disabled,
229
+ enterable,
230
+ data
231
+ } = this.props;
232
+
233
+ const tooltipObj: TooltipObject = {
234
+ title: filter(title, data),
235
+ content: filter(content || tooltip, data),
236
+ style: buildStyle(tooltipStyle, data),
237
+ placement,
238
+ trigger,
239
+ rootClose,
240
+ container,
241
+ tooltipTheme,
242
+ tooltipClassName,
243
+ mouseEnterDelay,
244
+ mouseLeaveDelay,
245
+ offset,
246
+ showArrow,
247
+ disabled,
248
+ enterable
249
+ };
250
+
251
+ return (
252
+ <TooltipWrapperComp classPrefix={ns} classnames={cx} tooltip={tooltipObj}>
253
+ {this.renderBody()}
254
+ </TooltipWrapperComp>
255
+ );
256
+ }
257
+ }
258
+
259
+ @Renderer({
260
+ type: 'tooltip-wrapper'
261
+ })
262
+ export class TooltipWrapperRenderer extends TooltipWrapper {}