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
@@ -253,7 +253,8 @@ export default class Wizard extends React.Component<WizardProps, WizardState> {
253
253
  }
254
254
  })
255
255
  .then(value => {
256
- onInit && onInit(store.data);
256
+ this.handleInitEvent(store.data);
257
+
257
258
  const state = {
258
259
  currentStep:
259
260
  typeof this.props.startStep === 'string'
@@ -291,7 +292,7 @@ export default class Wizard extends React.Component<WizardProps, WizardState> {
291
292
  ? parseInt(tokenize(this.props.startStep, this.props.data))
292
293
  : 1
293
294
  },
294
- () => onInit && onInit(store.data)
295
+ () => this.handleInitEvent(store.data)
295
296
  );
296
297
  }
297
298
 
@@ -336,6 +337,24 @@ export default class Wizard extends React.Component<WizardProps, WizardState> {
336
337
  this.unSensor && this.unSensor();
337
338
  }
338
339
 
340
+ async dispatchEvent(action: string, value?: object) {
341
+ const {dispatchEvent, data} = this.props;
342
+
343
+ const rendererEvent = await dispatchEvent(
344
+ action,
345
+ createObject(data, value ? value : {})
346
+ );
347
+
348
+ return rendererEvent?.prevented ?? false;
349
+ }
350
+
351
+ async handleInitEvent(data: any) {
352
+ const {onInit} = this.props;
353
+ (await this.dispatchEvent('inited', {formData: data})) &&
354
+ onInit &&
355
+ onInit(data);
356
+ }
357
+
339
358
  @autobind
340
359
  affixDetect() {
341
360
  if (
@@ -364,11 +383,20 @@ export default class Wizard extends React.Component<WizardProps, WizardState> {
364
383
  affixed ? affixDom.classList.add('in') : affixDom.classList.remove('in');
365
384
  }
366
385
 
367
- gotoStep(index: number) {
386
+ async gotoStep(index: number) {
368
387
  const steps = this.props.steps || [];
369
388
  index = Math.max(Math.min(steps.length, index), 1);
370
389
 
371
390
  if (index != this.state.currentStep) {
391
+ if (
392
+ await this.dispatchEvent('stepChange', {
393
+ step: index,
394
+ formData: this.props.store.data
395
+ })
396
+ ) {
397
+ return;
398
+ }
399
+
372
400
  this.setState({
373
401
  currentStep: index,
374
402
  completeStep: Math.max(this.state.completeStep, index - 1)
@@ -517,9 +545,13 @@ export default class Wizard extends React.Component<WizardProps, WizardState> {
517
545
  throwErrors: boolean = false,
518
546
  delegate?: IScopedContext
519
547
  ) {
520
- const {onAction, store, env} = this.props;
548
+ const {onAction, store, env, steps} = this.props;
521
549
 
522
- if (action.actionType === 'next' || action.type === 'submit') {
550
+ if (
551
+ action.actionType === 'next' ||
552
+ action.type === 'submit' ||
553
+ action.actionType === 'step-submit'
554
+ ) {
523
555
  this.form.doAction(
524
556
  {
525
557
  ...action,
@@ -572,6 +604,18 @@ export default class Wizard extends React.Component<WizardProps, WizardState> {
572
604
  });
573
605
  } else if (action.actionType === 'reload') {
574
606
  action.target && this.reloadTarget(action.target, data);
607
+ } else if (action.actionType === 'goto-step') {
608
+ const targetStep = (data as any).step;
609
+
610
+ if (
611
+ targetStep !== undefined &&
612
+ targetStep <= steps.length &&
613
+ targetStep >= 0
614
+ ) {
615
+ this.gotoStep((data as any).step);
616
+ }
617
+ } else if (action.actionType === 'submit') {
618
+ this.finalSubmit();
575
619
  } else if (onAction) {
576
620
  onAction(e, action, data, throwErrors, delegate || this.context);
577
621
  }
@@ -601,9 +645,16 @@ export default class Wizard extends React.Component<WizardProps, WizardState> {
601
645
  }
602
646
 
603
647
  @autobind
604
- handleChange(values: object) {
648
+ async handleChange(values: object) {
605
649
  const {store} = this.props;
606
650
 
651
+ const previous = store.data;
652
+ const final = {...previous, ...values};
653
+
654
+ if (await this.dispatchEvent('change', {formData: final})) {
655
+ return;
656
+ }
657
+
607
658
  store.updateData(values);
608
659
  }
609
660
 
@@ -630,9 +681,7 @@ export default class Wizard extends React.Component<WizardProps, WizardState> {
630
681
  store.updateData(reseted);
631
682
  }
632
683
 
633
- // 接管里面 form 的提交,不能直接让 form 提交,因为 wizard 自己需要知道进度。
634
- @autobind
635
- handleSubmit(values: object, action: Action) {
684
+ async finalSubmit(values: object = {}, action: Action = {type: 'submit'}) {
636
685
  const {
637
686
  store,
638
687
  steps,
@@ -646,10 +695,112 @@ export default class Wizard extends React.Component<WizardProps, WizardState> {
646
695
  onFinished
647
696
  } = this.props;
648
697
 
698
+ if (await this.dispatchEvent('finished', {formData: store.data})) {
699
+ return;
700
+ }
701
+
649
702
  const step = steps[this.state.currentStep - 1];
650
703
  store.updateData(values);
651
704
 
705
+ // 最后一步
706
+ if (target) {
707
+ this.submitToTarget(target, store.data);
708
+ this.setState({completeStep: steps.length});
709
+ } else if (action.api || step.api || api) {
710
+ let finnalAsyncApi = action.asyncApi || step.asyncApi || asyncApi;
711
+
712
+ isEffectiveApi(finnalAsyncApi, store.data) &&
713
+ store.updateData({
714
+ [finishedField || 'finished']: false
715
+ });
716
+
717
+ const formStore = this.form
718
+ ? (this.form.props.store as IFormStore)
719
+ : store;
720
+ store.markSaving(true);
721
+
722
+ formStore
723
+ .saveRemote(action.api || step.api || api!, store.data, {
724
+ onSuccess: () => {
725
+ this.dispatchEvent('submitSucc', {formData: store.data});
726
+
727
+ if (
728
+ !isEffectiveApi(finnalAsyncApi, store.data) ||
729
+ store.data[finishedField || 'finished']
730
+ ) {
731
+ return;
732
+ }
733
+
734
+ return until(
735
+ () => store.checkRemote(finnalAsyncApi as Api, store.data),
736
+ (ret: any) => ret && ret[finishedField || 'finished'],
737
+ cancel => (this.asyncCancel = cancel)
738
+ );
739
+ },
740
+ onFailed: error => this.dispatchEvent('submitFail', {error})
741
+ })
742
+ .then(async value => {
743
+ const feedback = action.feedback;
744
+ if (feedback && isVisible(feedback, value)) {
745
+ const confirmed = await this.openFeedback(feedback, value);
746
+
747
+ // 如果 feedback 配置了,取消就跳过原有逻辑。
748
+ if (feedback.skipRestOnCancel && !confirmed) {
749
+ throw new SkipOperation();
750
+ } else if (feedback.skipRestOnConfirm && confirmed) {
751
+ throw new SkipOperation();
752
+ }
753
+ }
754
+
755
+ this.setState({completeStep: steps.length});
756
+ store.updateData({
757
+ ...store.data,
758
+ ...value
759
+ });
760
+ store.markSaving(false);
761
+
762
+ if (value && typeof value.step === 'number') {
763
+ this.gotoStep(value.step);
764
+ } else if (onFinished && onFinished(value, action) === false) {
765
+ // 如果是 false 后面的操作就不执行
766
+ return value;
767
+ }
768
+
769
+ const finalRedirect =
770
+ (action.redirect || step.redirect || redirect) &&
771
+ filter(action.redirect || step.redirect || redirect, store.data);
772
+
773
+ if (finalRedirect) {
774
+ env.jumpTo(finalRedirect, action);
775
+ } else if (action.reload || step.reload || reload) {
776
+ this.reloadTarget(
777
+ action.reload || step.reload || reload!,
778
+ store.data
779
+ );
780
+ }
781
+
782
+ return value;
783
+ })
784
+ .catch(error => {
785
+ this.dispatchEvent('submitFail', {error});
786
+ store.markSaving(false);
787
+ console.error(error);
788
+ });
789
+ } else {
790
+ onFinished && onFinished(store.data, action);
791
+ this.setState({completeStep: steps.length});
792
+ }
793
+ }
794
+
795
+ // 接管里面 form 的提交,不能直接让 form 提交,因为 wizard 自己需要知道进度。
796
+ @autobind
797
+ async handleSubmit(values: object, action: Action) {
798
+ const {store, steps, finishedField} = this.props;
799
+
652
800
  if (this.state.currentStep < steps.length) {
801
+ const step = steps[this.state.currentStep - 1];
802
+ store.updateData(values);
803
+
653
804
  let finnalAsyncApi = action.asyncApi || step.asyncApi;
654
805
 
655
806
  isEffectiveApi(finnalAsyncApi, store.data) &&
@@ -661,6 +812,8 @@ export default class Wizard extends React.Component<WizardProps, WizardState> {
661
812
  store
662
813
  .saveRemote(action.api || step.api!, store.data, {
663
814
  onSuccess: () => {
815
+ this.dispatchEvent('stepSubmitSucc', {formData: store.data});
816
+
664
817
  if (
665
818
  !isEffectiveApi(finnalAsyncApi, store.data) ||
666
819
  store.data[finishedField || 'finished']
@@ -675,6 +828,7 @@ export default class Wizard extends React.Component<WizardProps, WizardState> {
675
828
  );
676
829
  },
677
830
  onFailed: json => {
831
+ this.dispatchEvent('stepSubmitFail', {error: json});
678
832
  if (json.status === 422 && json.errors && this.form) {
679
833
  this.form.props.store.setFormItemErrors(json.errors);
680
834
  }
@@ -700,6 +854,7 @@ export default class Wizard extends React.Component<WizardProps, WizardState> {
700
854
  );
701
855
  })
702
856
  .catch(reason => {
857
+ this.dispatchEvent('stepSubmitFail', {error: reason});
703
858
  if (reason instanceof SkipOperation) {
704
859
  return;
705
860
  }
@@ -709,90 +864,7 @@ export default class Wizard extends React.Component<WizardProps, WizardState> {
709
864
  this.gotoStep(this.state.currentStep + 1);
710
865
  }
711
866
  } else {
712
- // 最后一步
713
- if (target) {
714
- this.submitToTarget(target, store.data);
715
- this.setState({completeStep: steps.length});
716
- } else if (action.api || step.api || api) {
717
- let finnalAsyncApi = action.asyncApi || step.asyncApi || asyncApi;
718
-
719
- isEffectiveApi(finnalAsyncApi, store.data) &&
720
- store.updateData({
721
- [finishedField || 'finished']: false
722
- });
723
-
724
- const formStore = this.form
725
- ? (this.form.props.store as IFormStore)
726
- : store;
727
- store.markSaving(true);
728
-
729
- formStore
730
- .saveRemote(action.api || step.api || api!, store.data, {
731
- onSuccess: () => {
732
- if (
733
- !isEffectiveApi(finnalAsyncApi, store.data) ||
734
- store.data[finishedField || 'finished']
735
- ) {
736
- return;
737
- }
738
-
739
- return until(
740
- () => store.checkRemote(finnalAsyncApi as Api, store.data),
741
- (ret: any) => ret && ret[finishedField || 'finished'],
742
- cancel => (this.asyncCancel = cancel)
743
- );
744
- }
745
- })
746
- .then(async value => {
747
- const feedback = action.feedback;
748
- if (feedback && isVisible(feedback, value)) {
749
- const confirmed = await this.openFeedback(feedback, value);
750
-
751
- // 如果 feedback 配置了,取消就跳过原有逻辑。
752
- if (feedback.skipRestOnCancel && !confirmed) {
753
- throw new SkipOperation();
754
- } else if (feedback.skipRestOnConfirm && confirmed) {
755
- throw new SkipOperation();
756
- }
757
- }
758
-
759
- this.setState({completeStep: steps.length});
760
- store.updateData({
761
- ...store.data,
762
- ...value
763
- });
764
- store.markSaving(false);
765
-
766
- if (value && typeof value.step === 'number') {
767
- this.gotoStep(value.step);
768
- } else if (onFinished && onFinished(value, action) === false) {
769
- // 如果是 false 后面的操作就不执行
770
- return value;
771
- }
772
-
773
- const finalRedirect =
774
- (action.redirect || step.redirect || redirect) &&
775
- filter(action.redirect || step.redirect || redirect, store.data);
776
-
777
- if (finalRedirect) {
778
- env.jumpTo(finalRedirect, action);
779
- } else if (action.reload || step.reload || reload) {
780
- this.reloadTarget(
781
- action.reload || step.reload || reload!,
782
- store.data
783
- );
784
- }
785
-
786
- return value;
787
- })
788
- .catch(e => {
789
- store.markSaving(false);
790
- console.error(e);
791
- });
792
- } else {
793
- onFinished && onFinished(store.data, action);
794
- this.setState({completeStep: steps.length});
795
- }
867
+ this.finalSubmit(values, action);
796
868
  }
797
869
 
798
870
  return false;
@@ -1145,4 +1217,8 @@ export class WizardRenderer extends Wizard {
1145
1217
  scoped.reload(store.action.reload, store.data);
1146
1218
  }
1147
1219
  }
1220
+
1221
+ setData(values: object) {
1222
+ return this.props.store.updateData(values);
1223
+ }
1148
1224
  }
package/src/store/crud.ts CHANGED
@@ -16,12 +16,14 @@ import {
16
16
  isObjectShallowModified,
17
17
  sortArray,
18
18
  isEmpty,
19
- qsstringify
19
+ qsstringify,
20
+ getVariable
20
21
  } from '../utils/helper';
21
22
  import {Api, Payload, fetchOptions, Action, ApiObject} from '../types';
22
23
  import pick from 'lodash/pick';
23
24
  import {resolveVariableAndFilter} from '../utils/tpl-builtin';
24
25
  import {normalizeApiResponseData} from '../utils/api';
26
+ import {matchSorter} from 'match-sorter';
25
27
 
26
28
  class ServerError extends Error {
27
29
  type = 'ServerError';
@@ -139,6 +141,7 @@ export const CRUDStore = ServiceStore.named('CRUDStore')
139
141
  source?: string; // 支持自定义属于映射,默认不配置,读取 rows 或者 items
140
142
  loadDataMode?: boolean;
141
143
  syncResponse2Query?: boolean;
144
+ columns?: Array<any>;
142
145
  }
143
146
  ) => Promise<any> = flow(function* getInitData(
144
147
  api: Api,
@@ -150,6 +153,7 @@ export const CRUDStore = ServiceStore.named('CRUDStore')
150
153
  source?: string; // 支持自定义属于映射,默认不配置,读取 rows 或者 items
151
154
  loadDataMode?: boolean;
152
155
  syncResponse2Query?: boolean;
156
+ columns?: Array<any>;
153
157
  } = {}
154
158
  ) {
155
159
  try {
@@ -165,6 +169,21 @@ export const CRUDStore = ServiceStore.named('CRUDStore')
165
169
  )
166
170
  : self.items.concat();
167
171
 
172
+ if (Array.isArray(options.columns)) {
173
+ options.columns.forEach((column: any) => {
174
+ let value: any;
175
+ if (
176
+ column.searchable &&
177
+ column.name &&
178
+ (value = getVariable(self.query, column.name))
179
+ ) {
180
+ items = matchSorter(items, value, {
181
+ keys: [column.name]
182
+ });
183
+ }
184
+ });
185
+ }
186
+
168
187
  if (self.query.orderBy) {
169
188
  const dir = /desc/i.test(self.query.orderDir) ? -1 : 1;
170
189
  items = sortArray(items, self.query.orderBy, dir);
@@ -253,6 +272,16 @@ export const CRUDStore = ServiceStore.named('CRUDStore')
253
272
  items = result.items || result.rows;
254
273
  }
255
274
 
275
+ // 如果不按照 items 格式返回,就拿第一个数组当成 items
276
+ if (!Array.isArray(items)) {
277
+ for (const key of Object.keys(result)) {
278
+ if (result.hasOwnProperty(key) && Array.isArray(result[key])) {
279
+ items = result[key];
280
+ break;
281
+ }
282
+ }
283
+ }
284
+
256
285
  if (!Array.isArray(items)) {
257
286
  throw new Error(self.__('CRUD.invalidArray'));
258
287
  } else {
@@ -263,7 +292,7 @@ export const CRUDStore = ServiceStore.named('CRUDStore')
263
292
  }
264
293
 
265
294
  // 点击加载更多数据
266
- let rowsData = [];
295
+ let rowsData: Array<any> = [];
267
296
  if (options.loadDataMode && Array.isArray(self.data.items)) {
268
297
  rowsData = self.data.items.concat(items);
269
298
  } else {
@@ -282,16 +311,32 @@ export const CRUDStore = ServiceStore.named('CRUDStore')
282
311
  if (options.loadDataOnce) {
283
312
  // 记录原始集合,后续可能基于原始数据做排序查找。
284
313
  data.itemsRaw = oItems || oRows;
314
+ let filteredItems = rowsData.concat();
315
+
316
+ if (Array.isArray(options.columns)) {
317
+ options.columns.forEach((column: any) => {
318
+ let value: any;
319
+ if (
320
+ column.searchable &&
321
+ column.name &&
322
+ (value = getVariable(self.query, column.name))
323
+ ) {
324
+ filteredItems = matchSorter(filteredItems, value, {
325
+ keys: [column.name]
326
+ });
327
+ }
328
+ });
329
+ }
285
330
 
286
331
  if (self.query.orderBy) {
287
332
  const dir = /desc/i.test(self.query.orderDir) ? -1 : 1;
288
- rowsData = sortArray(rowsData, self.query.orderBy, dir);
333
+ filteredItems = sortArray(filteredItems, self.query.orderBy, dir);
289
334
  }
290
- data.items = rowsData.slice(
335
+ data.items = filteredItems.slice(
291
336
  (self.page - 1) * self.perPage,
292
337
  self.page * self.perPage
293
338
  );
294
- data.count = data.total = rowsData.length;
339
+ data.count = data.total = filteredItems.length;
295
340
  }
296
341
 
297
342
  if (Array.isArray(columns)) {
package/src/store/form.ts CHANGED
@@ -327,6 +327,9 @@ export const FormStore = ServiceStore.named('FormStore')
327
327
 
328
328
  if (!json.ok) {
329
329
  // 验证错误
330
+ if (options && options.onFailed) {
331
+ options.onFailed(json);
332
+ }
330
333
  if (json.status === 422 && json.errors) {
331
334
  setFormItemErrors(json.errors);
332
335
 
@@ -452,11 +455,13 @@ export const FormStore = ServiceStore.named('FormStore')
452
455
  const submit: (
453
456
  fn?: (values: object) => Promise<any>,
454
457
  hooks?: Array<() => Promise<any>>,
455
- failedMessage?: string
458
+ failedMessage?: string,
459
+ validateErrCb?: () => void
456
460
  ) => Promise<any> = flow(function* submit(
457
461
  fn: any,
458
462
  hooks?: Array<() => Promise<any>>,
459
- failedMessage?: string
463
+ failedMessage?: string,
464
+ validateErrCb?: () => void
460
465
  ) {
461
466
  self.submited = true;
462
467
  self.submiting = true;
@@ -476,7 +481,7 @@ export const FormStore = ServiceStore.named('FormStore')
476
481
  const env = getEnv(self);
477
482
 
478
483
  msg && env.notify('error', msg);
479
-
484
+ validateErrCb && validateErrCb();
480
485
  throw new Error(msg);
481
486
  }
482
487
 
@@ -723,8 +723,7 @@ export const FormItemStore = StoreNode.named('FormItemStore')
723
723
  // 插入新的子节点,用于之后BaseSelection.resolveSelected查找
724
724
  if (Array.isArray(topOption.children)) {
725
725
  const children = topOption.children.concat();
726
-
727
- flattenTree(topOption.leftOptions).forEach(item => {
726
+ flattenTree(newLeftOptions).forEach(item => {
728
727
  if (!findTree(topOption.children, node => node.ref === item.value)) {
729
728
  children.push({ref: item.value, defer: true});
730
729
  }
@@ -44,6 +44,10 @@ export const RendererStore = types
44
44
  .model('RendererStore', {
45
45
  storeType: 'RendererStore'
46
46
  })
47
+ .props({
48
+ visibleState: types.optional(types.frozen(), {}),
49
+ disableState: types.optional(types.frozen(), {})
50
+ })
47
51
  .views(self => ({
48
52
  get fetcher() {
49
53
  return getEnv(self).fetcher;
@@ -91,6 +95,22 @@ export const RendererStore = types
91
95
  removeStore(store: IStoreNode) {
92
96
  // store.dispose();
93
97
  removeStore(store);
98
+ },
99
+
100
+ setVisible(id: string, value: boolean) {
101
+ const state = {
102
+ ...self.visibleState,
103
+ [id]: value
104
+ };
105
+ self.visibleState = state;
106
+ },
107
+
108
+ setDisable(id: string, value: boolean) {
109
+ const state = {
110
+ ...self.disableState,
111
+ [id]: value
112
+ };
113
+ self.disableState = state;
94
114
  }
95
115
  }));
96
116
 
@@ -152,7 +152,7 @@ export const Row = types
152
152
  },
153
153
 
154
154
  get expanded(): boolean {
155
- return !this.collapsed && self.children.length > 0;
155
+ return !this.collapsed;
156
156
  },
157
157
 
158
158
  get moved() {
@@ -899,12 +899,12 @@ export const TableStore = iRendererStore
899
899
  : {
900
900
  item
901
901
  };
902
- const id = item.id ?? guid();
902
+ const id = item.__id ?? guid();
903
903
 
904
904
  return {
905
905
  // id: String(item && (item as any)[self.primaryField] || `${pindex}-${depth}-${key}`),
906
906
  id: String(id),
907
- parentId,
907
+ parentId: String(parentId),
908
908
  key: String(`${pindex}-${depth}-${index}`),
909
909
  path: `${path}${index}`,
910
910
  depth: depth,
@@ -941,7 +941,7 @@ export const TableStore = iRendererStore
941
941
 
942
942
  let arr: Array<SRow> = rows.map((item, index) => {
943
943
  let id = String(
944
- getEntryId ? getEntryId(item, index) : item.id ?? guid()
944
+ getEntryId ? getEntryId(item, index) : item.__id ?? guid()
945
945
  );
946
946
  return {
947
947
  // id: getEntryId ? getEntryId(item, key) : String(item && (item as any)[self.primaryField] || `${key}-1-${key}`),
package/src/types.ts CHANGED
@@ -6,6 +6,8 @@ export interface ApiObject extends SchemaApiObject {
6
6
  withCredentials?: boolean;
7
7
  cancelExecutor?: (cancel: Function) => void;
8
8
  };
9
+ graphql?: string;
10
+ operationName?: string;
9
11
  body?: PlainObject;
10
12
  query?: PlainObject;
11
13
  adaptor?: (payload: object, response: fetcherResult, api: ApiObject) => any;
@@ -99,10 +101,15 @@ export interface Action extends Button {
99
101
  | 'next'
100
102
  | 'prev'
101
103
  | 'reset'
104
+ | 'validate'
102
105
  | 'reset-and-submit'
103
106
  | 'clear'
104
107
  | 'clear-and-submit'
105
- | 'toast';
108
+ | 'toast'
109
+ | 'goto-step'
110
+ | 'expand'
111
+ | 'collapse'
112
+ | 'step-submit';
106
113
  api?: Api;
107
114
  asyncApi?: Api;
108
115
  payload?: any;