amis 1.5.6-beta.5 → 1.6.0

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 (435) hide show
  1. package/.husky/pre-commit +1 -1
  2. package/lib/Schema.d.ts +3 -2
  3. package/lib/Schema.js.map +1 -1
  4. package/lib/components/AssociatedSelection.d.ts +84 -84
  5. package/lib/components/AssociatedSelection.js +2 -2
  6. package/lib/components/AssociatedSelection.js.map +2 -2
  7. package/lib/components/Avatar.d.ts +135 -0
  8. package/lib/components/Avatar.js +120 -0
  9. package/lib/components/Avatar.js.map +13 -0
  10. package/lib/components/BaiduMapPicker.js.map +2 -2
  11. package/lib/components/CalendarMobile.d.ts +547 -0
  12. package/lib/components/CalendarMobile.js +432 -0
  13. package/lib/components/CalendarMobile.js.map +13 -0
  14. package/lib/components/Card.js +1 -1
  15. package/lib/components/Card.js.map +2 -2
  16. package/lib/components/Cascader.d.ts +123 -0
  17. package/lib/components/Cascader.js +487 -0
  18. package/lib/components/Cascader.js.map +13 -0
  19. package/lib/components/ChainedSelection.d.ts +84 -84
  20. package/lib/components/ChainedSelection.js +15 -3
  21. package/lib/components/ChainedSelection.js.map +2 -2
  22. package/lib/components/CityArea.d.ts +527 -0
  23. package/lib/components/CityArea.js +177 -0
  24. package/lib/components/CityArea.js.map +13 -0
  25. package/lib/components/Collapse.js +1 -1
  26. package/lib/components/Collapse.js.map +2 -2
  27. package/lib/components/ColorPicker.d.ts +84 -84
  28. package/lib/components/ColorPicker.js +4 -3
  29. package/lib/components/ColorPicker.js.map +2 -2
  30. package/lib/components/DatePicker.d.ts +85 -84
  31. package/lib/components/DatePicker.js +15 -8
  32. package/lib/components/DatePicker.js.map +2 -2
  33. package/lib/components/DateRangePicker.d.ts +85 -84
  34. package/lib/components/DateRangePicker.js +18 -6
  35. package/lib/components/DateRangePicker.js.map +2 -2
  36. package/lib/components/GroupedSelection.d.ts +84 -84
  37. package/lib/components/GroupedSelection.js +14 -2
  38. package/lib/components/GroupedSelection.js.map +2 -2
  39. package/lib/components/MonthRangePicker.d.ts +85 -84
  40. package/lib/components/MonthRangePicker.js +16 -6
  41. package/lib/components/MonthRangePicker.js.map +2 -2
  42. package/lib/components/Overlay.d.ts +1 -1
  43. package/lib/components/Overlay.js.map +1 -1
  44. package/lib/components/Picker.d.ts +1 -0
  45. package/lib/components/Picker.js +16 -7
  46. package/lib/components/Picker.js.map +2 -2
  47. package/lib/components/PickerColumn.d.ts +1 -0
  48. package/lib/components/PickerColumn.js +21 -18
  49. package/lib/components/PickerColumn.js.map +2 -2
  50. package/lib/components/PickerContainer.d.ts +3 -0
  51. package/lib/components/PickerContainer.js +12 -5
  52. package/lib/components/PickerContainer.js.map +2 -2
  53. package/lib/components/PopOverContainer.d.ts +1 -0
  54. package/lib/components/PopOverContainer.js +5 -3
  55. package/lib/components/PopOverContainer.js.map +2 -2
  56. package/lib/components/PopUp.d.ts +1041 -28
  57. package/lib/components/PopUp.js +32 -8
  58. package/lib/components/PopUp.js.map +2 -2
  59. package/lib/components/Rating.d.ts +203 -73
  60. package/lib/components/Rating.js +147 -31
  61. package/lib/components/Rating.js.map +2 -2
  62. package/lib/components/ResultBox.d.ts +85 -84
  63. package/lib/components/ResultBox.js +9 -4
  64. package/lib/components/ResultBox.js.map +2 -2
  65. package/lib/components/ResultList.d.ts +9 -2
  66. package/lib/components/ResultList.js +22 -2
  67. package/lib/components/ResultList.js.map +2 -2
  68. package/lib/components/Select.d.ts +237 -237
  69. package/lib/components/Select.js +9 -6
  70. package/lib/components/Select.js.map +2 -2
  71. package/lib/components/Selection.d.ts +94 -86
  72. package/lib/components/Selection.js +11 -2
  73. package/lib/components/Selection.js.map +2 -2
  74. package/lib/components/Steps.js.map +2 -2
  75. package/lib/components/TableSelection.d.ts +85 -85
  76. package/lib/components/TableSelection.js +1 -9
  77. package/lib/components/TableSelection.js.map +2 -2
  78. package/lib/components/Tabs.js +31 -33
  79. package/lib/components/Tabs.js.map +2 -2
  80. package/lib/components/TabsTransfer.d.ts +87 -256
  81. package/lib/components/TabsTransfer.js +52 -9
  82. package/lib/components/TabsTransfer.js.map +2 -2
  83. package/lib/components/TabsTransferPicker.d.ts +1 -1
  84. package/lib/components/TabsTransferPicker.js +20 -18
  85. package/lib/components/TabsTransferPicker.js.map +2 -2
  86. package/lib/components/Timeline.d.ts +69 -0
  87. package/lib/components/Timeline.js +16 -0
  88. package/lib/components/Timeline.js.map +13 -0
  89. package/lib/components/TimelineItem.d.ts +516 -0
  90. package/lib/components/TimelineItem.js +41 -0
  91. package/lib/components/TimelineItem.js.map +13 -0
  92. package/lib/components/Transfer.d.ts +100 -98
  93. package/lib/components/Transfer.js +2 -3
  94. package/lib/components/Transfer.js.map +2 -2
  95. package/lib/components/TransferDropDown.d.ts +85 -84
  96. package/lib/components/TransferDropDown.js +9 -10
  97. package/lib/components/TransferDropDown.js.map +2 -2
  98. package/lib/components/TransferPicker.d.ts +1 -0
  99. package/lib/components/TransferPicker.js +19 -4
  100. package/lib/components/TransferPicker.js.map +2 -2
  101. package/lib/components/TreeSelection.d.ts +85 -85
  102. package/lib/components/TreeSelection.js +7 -1
  103. package/lib/components/TreeSelection.js.map +2 -2
  104. package/lib/components/calendar/Calendar.d.ts +19 -0
  105. package/lib/components/calendar/Calendar.js +71 -1
  106. package/lib/components/calendar/Calendar.js.map +2 -2
  107. package/lib/components/calendar/DaysView.d.ts +21 -0
  108. package/lib/components/calendar/DaysView.js +76 -17
  109. package/lib/components/calendar/DaysView.js.map +2 -2
  110. package/lib/components/calendar/MonthsView.d.ts +34 -0
  111. package/lib/components/calendar/MonthsView.js +68 -3
  112. package/lib/components/calendar/MonthsView.js.map +2 -2
  113. package/lib/components/calendar/QuartersView.d.ts +1 -0
  114. package/lib/components/calendar/QuartersView.js +2 -2
  115. package/lib/components/calendar/QuartersView.js.map +2 -2
  116. package/lib/components/calendar/TimeView.d.ts +30 -18
  117. package/lib/components/calendar/TimeView.js +47 -8
  118. package/lib/components/calendar/TimeView.js.map +2 -2
  119. package/lib/components/calendar/YearsView.d.ts +6 -0
  120. package/lib/components/calendar/YearsView.js +21 -10
  121. package/lib/components/calendar/YearsView.js.map +2 -2
  122. package/lib/components/condition-builder/Field.js +1 -4
  123. package/lib/components/condition-builder/Field.js.map +2 -2
  124. package/lib/components/condition-builder/Func.js +1 -1
  125. package/lib/components/condition-builder/Func.js.map +2 -2
  126. package/lib/components/formula/Editor.d.ts +3 -0
  127. package/lib/components/formula/Editor.js +3 -2
  128. package/lib/components/formula/Editor.js.map +2 -2
  129. package/lib/components/formula/FuncList.js +2 -1
  130. package/lib/components/formula/FuncList.js.map +2 -2
  131. package/lib/components/formula/Picker.js +1 -1
  132. package/lib/components/formula/Picker.js.map +2 -2
  133. package/lib/components/icons.js +4 -0
  134. package/lib/components/icons.js.map +2 -2
  135. package/lib/components/index.d.ts +2 -1
  136. package/lib/components/index.js +4 -2
  137. package/lib/components/index.js.map +2 -2
  138. package/lib/components/virtual-list/SizeAndPositionManager.js.map +2 -2
  139. package/lib/components/virtual-list/index.js +1 -2
  140. package/lib/components/virtual-list/index.js.map +2 -2
  141. package/lib/factory.js +5 -0
  142. package/lib/factory.js.map +2 -2
  143. package/lib/icons/star.js +12 -0
  144. package/lib/icons/tree-down.js +7 -0
  145. package/lib/index.d.ts +1 -0
  146. package/lib/index.js +2 -1
  147. package/lib/index.js.map +2 -2
  148. package/lib/locale/de-DE.js +17 -2
  149. package/lib/locale/de-DE.js.map +2 -2
  150. package/lib/locale/en-US.js +17 -2
  151. package/lib/locale/en-US.js.map +2 -2
  152. package/lib/locale/zh-CN.js +16 -1
  153. package/lib/locale/zh-CN.js.map +2 -2
  154. package/lib/renderers/Avatar.d.ts +35 -26
  155. package/lib/renderers/Avatar.js +14 -19
  156. package/lib/renderers/Avatar.js.map +2 -2
  157. package/lib/renderers/CRUD.js +1 -2
  158. package/lib/renderers/CRUD.js.map +2 -2
  159. package/lib/renderers/Card.js +6 -5
  160. package/lib/renderers/Card.js.map +2 -2
  161. package/lib/renderers/Custom.js.map +2 -2
  162. package/lib/renderers/DropDownButton.d.ts +11 -2
  163. package/lib/renderers/DropDownButton.js +30 -12
  164. package/lib/renderers/DropDownButton.js.map +2 -2
  165. package/lib/renderers/Each.js +5 -2
  166. package/lib/renderers/Each.js.map +2 -2
  167. package/lib/renderers/Flex.js +1 -5
  168. package/lib/renderers/Flex.js.map +2 -2
  169. package/lib/renderers/Form/ChartRadios.js.map +2 -2
  170. package/lib/renderers/Form/Checkboxes.js.map +2 -2
  171. package/lib/renderers/Form/CityDB.js +526 -2
  172. package/lib/renderers/Form/CityDB.js.map +2 -2
  173. package/lib/renderers/Form/DiffEditor.js +2 -1
  174. package/lib/renderers/Form/DiffEditor.js.map +2 -2
  175. package/lib/renderers/Form/InputCity.d.ts +85 -84
  176. package/lib/renderers/Form/InputCity.js +4 -2
  177. package/lib/renderers/Form/InputCity.js.map +2 -2
  178. package/lib/renderers/Form/InputColor.d.ts +84 -84
  179. package/lib/renderers/Form/InputColor.js +6 -2
  180. package/lib/renderers/Form/InputColor.js.map +2 -2
  181. package/lib/renderers/Form/InputDate.js +10 -5
  182. package/lib/renderers/Form/InputDate.js.map +2 -2
  183. package/lib/renderers/Form/InputDateRange.js +6 -2
  184. package/lib/renderers/Form/InputDateRange.js.map +2 -2
  185. package/lib/renderers/Form/InputFormula.d.ts +4 -1
  186. package/lib/renderers/Form/InputFormula.js +2 -2
  187. package/lib/renderers/Form/InputFormula.js.map +2 -2
  188. package/lib/renderers/Form/InputImage.d.ts +1 -0
  189. package/lib/renderers/Form/InputImage.js +8 -4
  190. package/lib/renderers/Form/InputImage.js.map +2 -2
  191. package/lib/renderers/Form/InputMonthRange.js +1 -1
  192. package/lib/renderers/Form/InputMonthRange.js.map +2 -2
  193. package/lib/renderers/Form/InputQuarterRange.js +1 -1
  194. package/lib/renderers/Form/InputQuarterRange.js.map +2 -2
  195. package/lib/renderers/Form/InputRating.d.ts +37 -0
  196. package/lib/renderers/Form/InputRating.js +6 -2
  197. package/lib/renderers/Form/InputRating.js.map +2 -2
  198. package/lib/renderers/Form/InputYearRange.js +1 -1
  199. package/lib/renderers/Form/InputYearRange.js.map +2 -2
  200. package/lib/renderers/Form/Item.d.ts +10 -14
  201. package/lib/renderers/Form/Item.js +18 -9
  202. package/lib/renderers/Form/Item.js.map +2 -2
  203. package/lib/renderers/Form/NestedSelect.d.ts +1 -0
  204. package/lib/renderers/Form/NestedSelect.js +8 -4
  205. package/lib/renderers/Form/NestedSelect.js.map +2 -2
  206. package/lib/renderers/Form/Select.d.ts +2 -0
  207. package/lib/renderers/Form/Select.js +7 -4
  208. package/lib/renderers/Form/Select.js.map +2 -2
  209. package/lib/renderers/Form/TabsTransfer.d.ts +5 -32
  210. package/lib/renderers/Form/TabsTransfer.js +20 -1
  211. package/lib/renderers/Form/TabsTransfer.js.map +2 -2
  212. package/lib/renderers/Form/TabsTransferPicker.d.ts +5 -35
  213. package/lib/renderers/Form/TabsTransferPicker.js +21 -2
  214. package/lib/renderers/Form/TabsTransferPicker.js.map +2 -2
  215. package/lib/renderers/Form/Transfer.d.ts +15 -4
  216. package/lib/renderers/Form/Transfer.js +55 -18
  217. package/lib/renderers/Form/Transfer.js.map +2 -2
  218. package/lib/renderers/Form/TransferPicker.d.ts +3 -32
  219. package/lib/renderers/Form/TransferPicker.js +1 -1
  220. package/lib/renderers/Form/TransferPicker.js.map +2 -2
  221. package/lib/renderers/Form/TreeSelect.js +4 -4
  222. package/lib/renderers/Form/TreeSelect.js.map +2 -2
  223. package/lib/renderers/Form/index.js +2 -1
  224. package/lib/renderers/Form/index.js.map +2 -2
  225. package/lib/renderers/IFrame.js +0 -2
  226. package/lib/renderers/IFrame.js.map +2 -2
  227. package/lib/renderers/Json.js +7 -0
  228. package/lib/renderers/Json.js.map +2 -2
  229. package/lib/renderers/Nav.js +4 -1
  230. package/lib/renderers/Nav.js.map +2 -2
  231. package/lib/renderers/Remark.d.ts +4 -0
  232. package/lib/renderers/Remark.js +39 -7
  233. package/lib/renderers/Remark.js.map +2 -2
  234. package/lib/renderers/Steps.js +5 -5
  235. package/lib/renderers/Steps.js.map +2 -2
  236. package/lib/renderers/Table/TableRow.js +4 -1
  237. package/lib/renderers/Table/TableRow.js.map +2 -2
  238. package/lib/renderers/Table/index.js +4 -1
  239. package/lib/renderers/Table/index.js.map +2 -2
  240. package/lib/renderers/Tabs.js +1 -1
  241. package/lib/renderers/Tabs.js.map +2 -2
  242. package/lib/renderers/Timeline.d.ts +65 -0
  243. package/lib/renderers/Timeline.js +54 -0
  244. package/lib/renderers/Timeline.js.map +13 -0
  245. package/lib/renderers/Video.js.map +2 -2
  246. package/lib/schemaExtend.js +23 -9
  247. package/lib/schemaExtend.js.map +2 -2
  248. package/lib/store/combo.js.map +2 -2
  249. package/lib/store/formItem.js +6 -6
  250. package/lib/store/formItem.js.map +2 -2
  251. package/lib/store/table.js +1 -1
  252. package/lib/store/table.js.map +2 -2
  253. package/lib/themes/ang-ie11.css +1018 -67
  254. package/lib/themes/ang.css +1018 -67
  255. package/lib/themes/ang.css.map +1 -1
  256. package/lib/themes/antd-ie11.css +1053 -67
  257. package/lib/themes/antd.css +1053 -67
  258. package/lib/themes/antd.css.map +1 -1
  259. package/lib/themes/cxd-ie11.css +1058 -78
  260. package/lib/themes/cxd.css +1058 -78
  261. package/lib/themes/cxd.css.map +1 -1
  262. package/lib/themes/dark-ie11.css +1019 -67
  263. package/lib/themes/dark.css +1019 -67
  264. package/lib/themes/dark.css.map +1 -1
  265. package/lib/themes/default.css +1058 -78
  266. package/lib/themes/default.css.map +1 -1
  267. package/lib/utils/RootClose.js +3 -1
  268. package/lib/utils/RootClose.js.map +2 -2
  269. package/lib/utils/helper.d.ts +1 -6
  270. package/lib/utils/helper.js +6 -17
  271. package/lib/utils/helper.js.map +2 -2
  272. package/package.json +12 -6
  273. package/schema.json +3696 -971
  274. package/scss/_properties.scss +21 -7
  275. package/scss/components/_avatar.scss +27 -9
  276. package/scss/components/_calendar.scss +287 -0
  277. package/scss/components/_card.scss +1 -1
  278. package/scss/components/_cascader.scss +102 -0
  279. package/scss/components/_city-area.scss +27 -0
  280. package/scss/components/_collapse-group.scss +1 -3
  281. package/scss/components/_dropdown.scss +39 -9
  282. package/scss/components/_formula.scss +30 -6
  283. package/scss/components/_modal.scss +18 -0
  284. package/scss/components/_panel.scss +45 -0
  285. package/scss/components/_picker-columns.scss +15 -5
  286. package/scss/components/_popup.scss +42 -15
  287. package/scss/components/_result-box.scss +31 -0
  288. package/scss/components/_timeline.scss +198 -0
  289. package/scss/components/form/_checks.scss +2 -0
  290. package/scss/components/form/_color.scss +2 -2
  291. package/scss/components/form/_date-range.scss +1 -1
  292. package/scss/components/form/_date.scss +46 -1
  293. package/scss/components/form/_form.scss +168 -0
  294. package/scss/components/form/_nested-select.scss +3 -0
  295. package/scss/components/form/_rating.scss +60 -21
  296. package/scss/components/form/_result-list.scss +2 -0
  297. package/scss/components/form/_select.scss +32 -3
  298. package/scss/components/form/_selection.scss +5 -4
  299. package/scss/components/form/_transfer.scss +3 -0
  300. package/scss/components/form/_tree-select.scss +1 -1
  301. package/scss/themes/_antd-variables.scss +42 -0
  302. package/scss/themes/_common.scss +3 -0
  303. package/scss/themes/_cxd-variables.scss +51 -2
  304. package/scss/themes/_dark-variables.scss +1 -0
  305. package/scss/themes/cxd.scss +0 -12
  306. package/sdk/ang-ie11.css +1278 -141
  307. package/sdk/ang.css +1296 -153
  308. package/sdk/antd-ie11.css +1278 -141
  309. package/sdk/antd.css +1331 -153
  310. package/sdk/charts.js +14 -14
  311. package/sdk/codemirror.js +7 -7
  312. package/sdk/color-picker.js +65 -65
  313. package/sdk/cropperjs.js +2 -2
  314. package/sdk/cxd-ie11.css +1258 -132
  315. package/sdk/cxd.css +1338 -168
  316. package/sdk/dark-ie11.css +1278 -141
  317. package/sdk/dark.css +1297 -153
  318. package/sdk/exceljs.js +1 -1
  319. package/sdk/locale/de-DE.js +17 -2
  320. package/sdk/markdown.js +69 -69
  321. package/sdk/papaparse.js +1 -1
  322. package/sdk/renderers/Form/CityDB.js +1 -1
  323. package/sdk/rest.js +18 -18
  324. package/sdk/rich-text.js +62 -62
  325. package/sdk/sdk-ie11.css +1258 -132
  326. package/sdk/sdk.css +1338 -168
  327. package/sdk/sdk.js +1242 -1218
  328. package/sdk/thirds/hls.js/hls.js +1 -1
  329. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  330. package/sdk/tinymce.js +57 -57
  331. package/src/Schema.ts +3 -0
  332. package/src/components/AssociatedSelection.tsx +5 -1
  333. package/src/components/Avatar.tsx +253 -0
  334. package/src/components/BaiduMapPicker.tsx +19 -14
  335. package/src/components/CalendarMobile.tsx +563 -0
  336. package/src/components/Card.tsx +2 -2
  337. package/src/components/Cascader.tsx +564 -0
  338. package/src/components/ChainedSelection.tsx +16 -3
  339. package/src/components/CityArea.tsx +315 -0
  340. package/src/components/Collapse.tsx +1 -1
  341. package/src/components/ColorPicker.tsx +41 -40
  342. package/src/components/DatePicker.tsx +54 -38
  343. package/src/components/DateRangePicker.tsx +83 -29
  344. package/src/components/GroupedSelection.tsx +14 -2
  345. package/src/components/MonthRangePicker.tsx +76 -30
  346. package/src/components/Overlay.tsx +1 -1
  347. package/src/components/Picker.tsx +55 -35
  348. package/src/components/PickerColumn.tsx +43 -36
  349. package/src/components/PickerContainer.tsx +13 -1
  350. package/src/components/PopOverContainer.tsx +31 -17
  351. package/src/components/PopUp.tsx +84 -57
  352. package/src/components/Rating.tsx +235 -47
  353. package/src/components/ResultBox.tsx +14 -2
  354. package/src/components/ResultList.tsx +36 -6
  355. package/src/components/Select.tsx +20 -23
  356. package/src/components/Selection.tsx +21 -3
  357. package/src/components/Steps.tsx +23 -10
  358. package/src/components/TableSelection.tsx +1 -44
  359. package/src/components/Tabs.tsx +65 -54
  360. package/src/components/TabsTransfer.tsx +78 -9
  361. package/src/components/TabsTransferPicker.tsx +25 -13
  362. package/src/components/Timeline.tsx +31 -0
  363. package/src/components/TimelineItem.tsx +107 -0
  364. package/src/components/Transfer.tsx +11 -8
  365. package/src/components/TransferDropDown.tsx +20 -12
  366. package/src/components/TransferPicker.tsx +25 -4
  367. package/src/components/TreeSelection.tsx +7 -1
  368. package/src/components/calendar/Calendar.tsx +101 -4
  369. package/src/components/calendar/DaysView.tsx +165 -33
  370. package/src/components/calendar/MonthsView.tsx +108 -1
  371. package/src/components/calendar/QuartersView.tsx +3 -2
  372. package/src/components/calendar/TimeView.tsx +104 -41
  373. package/src/components/calendar/YearsView.tsx +34 -17
  374. package/src/components/condition-builder/Field.tsx +1 -3
  375. package/src/components/condition-builder/Func.tsx +1 -1
  376. package/src/components/formula/Editor.tsx +16 -11
  377. package/src/components/formula/FuncList.tsx +3 -1
  378. package/src/components/formula/Picker.tsx +2 -1
  379. package/src/components/icons.tsx +4 -0
  380. package/src/components/index.tsx +2 -0
  381. package/src/components/virtual-list/SizeAndPositionManager.ts +6 -3
  382. package/src/components/virtual-list/index.tsx +4 -6
  383. package/src/factory.tsx +6 -0
  384. package/src/icons/star.svg +12 -0
  385. package/src/icons/tree-down.svg +5 -0
  386. package/src/index.tsx +1 -0
  387. package/src/locale/de-DE.ts +17 -2
  388. package/src/locale/en-US.ts +17 -2
  389. package/src/locale/zh-CN.ts +16 -1
  390. package/src/renderers/Avatar.tsx +83 -74
  391. package/src/renderers/CRUD.tsx +1 -3
  392. package/src/renderers/Card.tsx +10 -6
  393. package/src/renderers/Custom.tsx +6 -3
  394. package/src/renderers/DropDownButton.tsx +69 -35
  395. package/src/renderers/Each.tsx +4 -4
  396. package/src/renderers/Flex.tsx +3 -7
  397. package/src/renderers/Form/ChartRadios.tsx +2 -7
  398. package/src/renderers/Form/Checkboxes.tsx +1 -1
  399. package/src/renderers/Form/CityDB.ts +526 -2
  400. package/src/renderers/Form/DiffEditor.tsx +2 -3
  401. package/src/renderers/Form/InputCity.tsx +23 -3
  402. package/src/renderers/Form/InputColor.tsx +21 -2
  403. package/src/renderers/Form/InputDate.tsx +48 -20
  404. package/src/renderers/Form/InputDateRange.tsx +9 -2
  405. package/src/renderers/Form/InputFormula.tsx +9 -4
  406. package/src/renderers/Form/InputImage.tsx +9 -4
  407. package/src/renderers/Form/InputMonthRange.tsx +0 -1
  408. package/src/renderers/Form/InputQuarterRange.tsx +0 -1
  409. package/src/renderers/Form/InputRating.tsx +66 -3
  410. package/src/renderers/Form/InputYearRange.tsx +0 -1
  411. package/src/renderers/Form/Item.tsx +29 -8
  412. package/src/renderers/Form/NestedSelect.tsx +32 -4
  413. package/src/renderers/Form/Select.tsx +15 -3
  414. package/src/renderers/Form/TabsTransfer.tsx +28 -38
  415. package/src/renderers/Form/TabsTransferPicker.tsx +28 -46
  416. package/src/renderers/Form/Transfer.tsx +75 -24
  417. package/src/renderers/Form/TransferPicker.tsx +6 -38
  418. package/src/renderers/Form/TreeSelect.tsx +18 -16
  419. package/src/renderers/Form/index.tsx +2 -1
  420. package/src/renderers/IFrame.tsx +0 -2
  421. package/src/renderers/Json.tsx +5 -0
  422. package/src/renderers/Nav.tsx +4 -1
  423. package/src/renderers/Remark.tsx +68 -18
  424. package/src/renderers/Steps.tsx +11 -13
  425. package/src/renderers/Table/TableRow.tsx +3 -1
  426. package/src/renderers/Table/index.tsx +7 -1
  427. package/src/renderers/Tabs.tsx +6 -2
  428. package/src/renderers/Timeline.tsx +141 -0
  429. package/src/renderers/Video.tsx +4 -20
  430. package/src/schemaExtend.ts +22 -10
  431. package/src/store/combo.ts +1 -3
  432. package/src/store/formItem.ts +2 -2
  433. package/src/store/table.ts +2 -1
  434. package/src/utils/RootClose.ts +5 -1
  435. package/src/utils/helper.ts +6 -16
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import {themeable, ThemeProps} from '../theme';
3
3
  import {Icon} from './icons';
4
4
  import {BaseSchema} from '../Schema';
5
- import { isMobile } from '../utils/helper';
5
+ import {isMobile} from '../utils/helper';
6
6
 
7
7
  export enum StepStatus {
8
8
  wait = 'wait',
@@ -63,7 +63,7 @@ export interface StepsSchema extends BaseSchema {
63
63
  */
64
64
  name?: string;
65
65
 
66
- status: StepStatus
66
+ status: StepStatus;
67
67
 
68
68
  /**
69
69
  * 展示模式
@@ -75,9 +75,11 @@ export interface StepsProps extends ThemeProps {
75
75
  steps: StepSchema[];
76
76
  className: string;
77
77
  current: number;
78
- status?: StepStatus | {
79
- [propName: string]: StepStatus;
80
- };
78
+ status?:
79
+ | StepStatus
80
+ | {
81
+ [propName: string]: StepStatus;
82
+ };
81
83
  mode?: 'horizontal' | 'vertical';
82
84
  useMobileUI?: boolean;
83
85
  }
@@ -127,7 +129,14 @@ export function Steps(props: StepsProps) {
127
129
 
128
130
  const mobileUI = useMobileUI && isMobile();
129
131
  return (
130
- <ul className={cx('Steps', `Steps--${mode}`, mobileUI ? 'Steps-mobile' : '', className)}>
132
+ <ul
133
+ className={cx(
134
+ 'Steps',
135
+ `Steps--${mode}`,
136
+ mobileUI ? 'Steps-mobile' : '',
137
+ className
138
+ )}
139
+ >
131
140
  {stepsRow.map((step, i) => {
132
141
  const {stepStatus, icon} = getStepStatus(step, i);
133
142
 
@@ -137,8 +146,12 @@ export function Steps(props: StepsProps) {
137
146
  className={cx('StepsItem', `is-${stepStatus}`, step.className)}
138
147
  >
139
148
  <div className={cx('StepsItem-container')}>
140
- <div className={cx('StepsItem-containerIcon',
141
- i < current && 'is-success')}>
149
+ <div
150
+ className={cx(
151
+ 'StepsItem-containerIcon',
152
+ i < current && 'is-success'
153
+ )}
154
+ >
142
155
  <span className={cx('StepsItem-icon')}>
143
156
  {icon ? <Icon icon={icon} className="icon" /> : i + 1}
144
157
  </span>
@@ -166,7 +179,7 @@ export function Steps(props: StepsProps) {
166
179
  );
167
180
  })}
168
181
  </ul>
169
- )
182
+ );
170
183
  }
171
184
 
172
- export default themeable(Steps);
185
+ export default themeable(Steps);
@@ -153,50 +153,7 @@ export class TableSelection extends BaseSelection<TableSelectionProps> {
153
153
  }
154
154
 
155
155
  render() {
156
- const {
157
- value,
158
- options,
159
- className,
160
- labelClassName,
161
- disabled,
162
- classnames: cx,
163
- option2value,
164
- itemClassName,
165
- itemRender,
166
- multiple
167
- } = this.props;
168
-
169
- let valueArray = BaseSelection.value2array(value, options, option2value);
170
- let body: Array<React.ReactNode> = [];
171
-
172
- if (Array.isArray(options) && options.length) {
173
- body = options.map((option, key) => (
174
- <div
175
- key={key}
176
- className={cx(
177
- 'TableSelection-item',
178
- itemClassName,
179
- option.className,
180
- disabled || option.disabled ? 'is-disabled' : ''
181
- )}
182
- onClick={() => this.toggleOption(option)}
183
- >
184
- <div className={cx('TableSelection-itemLabel')}>
185
- {itemRender(option)}
186
- </div>
187
-
188
- {multiple ? (
189
- <Checkbox
190
- size="sm"
191
- checked={!!~valueArray.indexOf(option)}
192
- disabled={disabled || option.disabled}
193
- labelClassName={labelClassName}
194
- description={option.description}
195
- />
196
- ) : null}
197
- </div>
198
- ));
199
- }
156
+ const {className, classnames: cx} = this.props;
200
157
 
201
158
  return (
202
159
  <div className={cx('TableSelection', className)}>
@@ -96,7 +96,7 @@ export interface TabsProps extends ThemeProps {
96
96
  tabs?: Array<TabProps>;
97
97
  tabRender?: (tab: TabProps, props?: TabsProps) => JSX.Element;
98
98
  toolbar?: React.ReactNode;
99
- scrollable?: boolean // 是否支持溢出滚动
99
+ scrollable?: boolean; // 是否支持溢出滚动
100
100
  }
101
101
 
102
102
  export class Tabs extends React.Component<TabsProps, any> {
@@ -107,23 +107,25 @@ export class Tabs extends React.Component<TabsProps, any> {
107
107
 
108
108
  static Tab = Tab;
109
109
  navMain = React.createRef<HTMLDivElement>();
110
- scroll:boolean = false;
110
+ scroll: boolean = false;
111
111
 
112
112
  checkArrowStatus = debounce(
113
113
  () => {
114
- const {scrollLeft, scrollWidth, clientWidth} = this.navMain.current
115
- || {
116
- scrollLeft: 0,
117
- scrollWidth: 0,
118
- clientWidth: 0
119
- }
114
+ const {scrollLeft, scrollWidth, clientWidth} = this.navMain.current || {
115
+ scrollLeft: 0,
116
+ scrollWidth: 0,
117
+ clientWidth: 0
118
+ };
120
119
  const {arrowRightDisabled, arrowLeftDisabled} = this.state;
121
120
  if (scrollLeft === 0 && !arrowLeftDisabled) {
122
121
  this.setState({
123
122
  arrowRightDisabled: false,
124
123
  arrowLeftDisabled: true
125
124
  });
126
- } else if (scrollWidth === scrollLeft + clientWidth && !arrowRightDisabled) {
125
+ } else if (
126
+ scrollWidth === scrollLeft + clientWidth &&
127
+ !arrowRightDisabled
128
+ ) {
127
129
  this.setState({
128
130
  arrowRightDisabled: true,
129
131
  arrowLeftDisabled: false
@@ -132,7 +134,10 @@ export class Tabs extends React.Component<TabsProps, any> {
132
134
  this.setState({
133
135
  arrowLeftDisabled: false
134
136
  });
135
- } else if (scrollWidth !== scrollLeft + clientWidth && arrowRightDisabled) {
137
+ } else if (
138
+ scrollWidth !== scrollLeft + clientWidth &&
139
+ arrowRightDisabled
140
+ ) {
136
141
  this.setState({
137
142
  arrowRightDisabled: false
138
143
  });
@@ -143,21 +148,23 @@ export class Tabs extends React.Component<TabsProps, any> {
143
148
  trailing: true,
144
149
  leading: false
145
150
  }
146
- )
151
+ );
147
152
 
148
153
  constructor(props: TabsProps) {
149
154
  super(props);
150
155
  this.state = {
151
156
  isOverflow: false,
152
157
  arrowLeftDisabled: false,
153
- arrowRightDisabled: false,
158
+ arrowRightDisabled: false
154
159
  };
155
160
  }
156
161
 
157
162
  componentDidMount() {
158
163
  this.computedWidth();
159
164
  if (this.navMain) {
160
- this.navMain.current?.addEventListener('wheel', this.handleWheel, {passive: false});
165
+ this.navMain.current?.addEventListener('wheel', this.handleWheel, {
166
+ passive: false
167
+ });
161
168
  this.checkArrowStatus();
162
169
  }
163
170
  }
@@ -207,7 +214,9 @@ export class Tabs extends React.Component<TabsProps, any> {
207
214
  }
208
215
  const {activeKey, children} = this.props;
209
216
  const currentKey = key !== undefined ? key : activeKey;
210
- const currentIndex = (children as any[])?.findIndex((item: any) => item.props.eventKey === currentKey);
217
+ const currentIndex = (children as any[])?.findIndex(
218
+ (item: any) => item.props.eventKey === currentKey
219
+ );
211
220
  const li = this.navMain.current?.children[0]?.children || [];
212
221
  const currentLi = li[currentIndex] as HTMLElement;
213
222
  const liOffsetLeft = currentLi?.offsetLeft - 20;
@@ -241,12 +250,11 @@ export class Tabs extends React.Component<TabsProps, any> {
241
250
  }
242
251
 
243
252
  handleArrow(type: 'left' | 'right') {
244
- const {scrollLeft, scrollWidth, clientWidth} = this.navMain.current
245
- || {
246
- scrollLeft: 0,
247
- scrollWidth: 0,
248
- clientWidth: 0
249
- }
253
+ const {scrollLeft, scrollWidth, clientWidth} = this.navMain.current || {
254
+ scrollLeft: 0,
255
+ scrollWidth: 0,
256
+ clientWidth: 0
257
+ };
250
258
  if (type === 'left' && scrollLeft > 0) {
251
259
  this.navMain.current?.scrollTo({
252
260
  left: 0,
@@ -369,7 +377,7 @@ export class Tabs extends React.Component<TabsProps, any> {
369
377
  }
370
378
 
371
379
  renderArrow(type: 'left' | 'right') {
372
- const {mode: dMode, tabsMode,} = this.props;
380
+ const {mode: dMode, tabsMode} = this.props;
373
381
  const mode = tabsMode || dMode;
374
382
  if (mode === 'vertical') {
375
383
  return;
@@ -377,17 +385,18 @@ export class Tabs extends React.Component<TabsProps, any> {
377
385
  const {classnames: cx} = this.props;
378
386
  const {isOverflow, arrowLeftDisabled, arrowRightDisabled} = this.state;
379
387
  const disabled = type === 'left' ? arrowLeftDisabled : arrowRightDisabled;
380
- return (isOverflow
381
- ? (<div onClick={() => this.handleArrow(type)}
382
- className={cx(
383
- 'Tabs-linksContainer-arrow',
384
- 'Tabs-linksContainer-arrow--' + type,
385
- disabled && 'Tabs-linksContainer-arrow--disabled'
386
- )}>
387
- <i className={'iconfont icon-arrow-' + type} />
388
- </div>)
389
- : null
390
- )
388
+ return isOverflow ? (
389
+ <div
390
+ onClick={() => this.handleArrow(type)}
391
+ className={cx(
392
+ 'Tabs-linksContainer-arrow',
393
+ 'Tabs-linksContainer-arrow--' + type,
394
+ disabled && 'Tabs-linksContainer-arrow--disabled'
395
+ )}
396
+ >
397
+ <i className={'iconfont icon-arrow-' + type} />
398
+ </div>
399
+ ) : null;
391
400
  }
392
401
 
393
402
  render() {
@@ -421,28 +430,30 @@ export class Tabs extends React.Component<TabsProps, any> {
421
430
  className
422
431
  )}
423
432
  >
424
- {
425
- scrollable && !['vertical', 'chrome'].includes(mode) ?
426
- (<div className={cx('Tabs-linksContainer', isOverflow && 'Tabs-linksContainer--overflow')}>
427
- {this.renderArrow('left')}
428
- <div
429
- className={cx('Tabs-linksContainer-main')}
430
- ref={this.navMain}
431
- >
432
- <ul className={cx('Tabs-links', linksClassName)} role="tablist">
433
- {children.map((tab, index) => this.renderNav(tab, index))}
434
- {additionBtns}
435
- {toolbar}
436
- </ul>
437
- </div>
438
- {this.renderArrow('right')}
439
- </div>)
440
- : (<ul className={cx('Tabs-links', linksClassName)} role="tablist">
441
- {children.map((tab, index) => this.renderNav(tab, index))}
442
- {additionBtns}
443
- {toolbar}
444
- </ul>)
445
- }
433
+ {scrollable && !['vertical', 'chrome'].includes(mode) ? (
434
+ <div
435
+ className={cx(
436
+ 'Tabs-linksContainer',
437
+ isOverflow && 'Tabs-linksContainer--overflow'
438
+ )}
439
+ >
440
+ {this.renderArrow('left')}
441
+ <div className={cx('Tabs-linksContainer-main')} ref={this.navMain}>
442
+ <ul className={cx('Tabs-links', linksClassName)} role="tablist">
443
+ {children.map((tab, index) => this.renderNav(tab, index))}
444
+ {additionBtns}
445
+ {toolbar}
446
+ </ul>
447
+ </div>
448
+ {this.renderArrow('right')}
449
+ </div>
450
+ ) : (
451
+ <ul className={cx('Tabs-links', linksClassName)} role="tablist">
452
+ {children.map((tab, index) => this.renderNav(tab, index))}
453
+ {additionBtns}
454
+ {toolbar}
455
+ </ul>
456
+ )}
446
457
 
447
458
  <div className={cx('Tabs-content', contentClassName)}>
448
459
  {children.map((child, index) => {
@@ -11,12 +11,22 @@ import Transfer, {TransferProps} from './Transfer';
11
11
  import {themeable} from '../theme';
12
12
  import AssociatedCheckboxes from './AssociatedSelection';
13
13
  import {localeable} from '../locale';
14
+ import {ItemRenderStates} from './Selection';
14
15
 
15
16
  export interface TabsTransferProps
16
17
  extends Omit<
17
18
  TransferProps,
18
- 'selectMode' | 'columns' | 'selectRender' | 'statistics'
19
+ | 'selectMode'
20
+ | 'columns'
21
+ | 'selectRender'
22
+ | 'statistics'
23
+ | 'optionItemRender'
19
24
  > {
25
+ optionItemRender?: (
26
+ option: Option,
27
+ states: ItemRenderStates,
28
+ tab: Option
29
+ ) => JSX.Element;
20
30
  cellRender?: (
21
31
  column: {
22
32
  name: string;
@@ -30,10 +40,6 @@ export interface TabsTransferProps
30
40
  }
31
41
 
32
42
  export class TabsTransfer extends React.Component<TabsTransferProps> {
33
- static defaultProps = {
34
- itemRender: (option: Option) => <span>{option.label}</span>
35
- };
36
-
37
43
  renderSearchResult(searchResult: Options | null) {
38
44
  const {
39
45
  searchResultMode,
@@ -44,7 +50,8 @@ export class TabsTransfer extends React.Component<TabsTransferProps> {
44
50
  disabled,
45
51
  onChange,
46
52
  option2value,
47
- cellRender
53
+ cellRender,
54
+ optionItemRender
48
55
  } = this.props;
49
56
  const options = searchResult || [];
50
57
  const mode = searchResultMode;
@@ -70,6 +77,14 @@ export class TabsTransfer extends React.Component<TabsTransferProps> {
70
77
  disabled={disabled}
71
78
  onChange={onChange}
72
79
  option2value={option2value}
80
+ itemRender={
81
+ optionItemRender
82
+ ? (item: Option, states: ItemRenderStates) =>
83
+ optionItemRender(item, states, {
84
+ panel: 'result'
85
+ })
86
+ : undefined
87
+ }
73
88
  />
74
89
  ) : mode === 'chained' ? (
75
90
  <ChainedCheckboxes
@@ -80,6 +95,14 @@ export class TabsTransfer extends React.Component<TabsTransferProps> {
80
95
  disabled={disabled}
81
96
  onChange={onChange}
82
97
  option2value={option2value}
98
+ itemRender={
99
+ optionItemRender
100
+ ? (item: Option, states: ItemRenderStates) =>
101
+ optionItemRender(item, states, {
102
+ panel: 'result'
103
+ })
104
+ : undefined
105
+ }
83
106
  />
84
107
  ) : (
85
108
  <ListCheckboxes
@@ -90,6 +113,14 @@ export class TabsTransfer extends React.Component<TabsTransferProps> {
90
113
  disabled={disabled}
91
114
  onChange={onChange}
92
115
  option2value={option2value}
116
+ itemRender={
117
+ optionItemRender
118
+ ? (item: Option, states: ItemRenderStates) =>
119
+ optionItemRender(item, states, {
120
+ panel: 'result'
121
+ })
122
+ : undefined
123
+ }
93
124
  />
94
125
  );
95
126
  }
@@ -107,7 +138,8 @@ export class TabsTransfer extends React.Component<TabsTransferProps> {
107
138
  option2value,
108
139
  onDeferLoad,
109
140
  cellRender,
110
- translate: __
141
+ translate: __,
142
+ optionItemRender
111
143
  } = this.props;
112
144
 
113
145
  if (!Array.isArray(options) || !options.length) {
@@ -171,6 +203,15 @@ export class TabsTransfer extends React.Component<TabsTransferProps> {
171
203
  onChange={onChange}
172
204
  option2value={option2value}
173
205
  onDeferLoad={onDeferLoad}
206
+ itemRender={
207
+ optionItemRender
208
+ ? (item: Option, states: ItemRenderStates) =>
209
+ optionItemRender(item, states, {
210
+ panel: 'tab',
211
+ tag: option
212
+ })
213
+ : undefined
214
+ }
174
215
  />
175
216
  ) : option.selectMode === 'chained' ? (
176
217
  <ChainedCheckboxes
@@ -182,6 +223,15 @@ export class TabsTransfer extends React.Component<TabsTransferProps> {
182
223
  option2value={option2value}
183
224
  onDeferLoad={onDeferLoad}
184
225
  defaultSelectedIndex={option.defaultSelectedIndex}
226
+ itemRender={
227
+ optionItemRender
228
+ ? (item: Option, states: ItemRenderStates) =>
229
+ optionItemRender(item, states, {
230
+ panel: 'tab',
231
+ tag: option
232
+ })
233
+ : undefined
234
+ }
185
235
  />
186
236
  ) : option.selectMode === 'associated' ? (
187
237
  <AssociatedCheckboxes
@@ -195,6 +245,15 @@ export class TabsTransfer extends React.Component<TabsTransferProps> {
195
245
  leftMode={option.leftMode}
196
246
  leftOptions={option.leftOptions}
197
247
  leftDefaultValue={option.leftDefaultValue}
248
+ itemRender={
249
+ optionItemRender
250
+ ? (item: Option, states: ItemRenderStates) =>
251
+ optionItemRender(item, states, {
252
+ panel: 'tab',
253
+ tag: option
254
+ })
255
+ : undefined
256
+ }
198
257
  />
199
258
  ) : (
200
259
  <ListCheckboxes
@@ -205,6 +264,15 @@ export class TabsTransfer extends React.Component<TabsTransferProps> {
205
264
  onChange={onChange}
206
265
  option2value={option2value}
207
266
  onDeferLoad={onDeferLoad}
267
+ itemRender={
268
+ optionItemRender
269
+ ? (item: Option, states: ItemRenderStates) =>
270
+ optionItemRender(item, states, {
271
+ panel: 'tab',
272
+ tag: option
273
+ })
274
+ : undefined
275
+ }
208
276
  />
209
277
  )}
210
278
  </Tab>
@@ -214,12 +282,13 @@ export class TabsTransfer extends React.Component<TabsTransferProps> {
214
282
  }
215
283
 
216
284
  render() {
217
- const {className, classnames: cx} = this.props;
285
+ const {className, classnames: cx, optionItemRender, ...reset} = this.props;
218
286
 
219
287
  return (
220
288
  <Transfer
221
- {...this.props}
289
+ {...reset}
222
290
  statistics={false}
291
+ classnames={cx}
223
292
  className={cx('TabsTransfer', className)}
224
293
  selectRender={this.renderSelect}
225
294
  />
@@ -5,7 +5,7 @@ import React from 'react';
5
5
  import ResultBox from './ResultBox';
6
6
  import {Icon} from './icons';
7
7
  import PickerContainer from './PickerContainer';
8
- import {autobind} from '../utils/helper';
8
+ import {autobind, mapTree} from '../utils/helper';
9
9
  import TabsTransfer, {TabsTransferProps} from './TabsTransfer';
10
10
 
11
11
  export interface TabsTransferPickerProps
@@ -15,18 +15,12 @@ export interface TabsTransferPickerProps
15
15
  }
16
16
 
17
17
  export class TransferPicker extends React.Component<TabsTransferPickerProps> {
18
- @autobind
19
- handleClose() {
20
- this.setState({
21
- inputValue: '',
22
- searchResult: null
23
- });
24
- }
18
+ optionModified = false;
25
19
 
26
20
  @autobind
27
21
  handleConfirm(value: any) {
28
- this.props.onChange?.(value);
29
- this.handleClose();
22
+ this.props.onChange?.(value, this.optionModified);
23
+ this.optionModified = false;
30
24
  }
31
25
 
32
26
  render() {
@@ -44,12 +38,30 @@ export class TransferPicker extends React.Component<TabsTransferPickerProps> {
44
38
  return (
45
39
  <PickerContainer
46
40
  title={__('Select.placeholder')}
47
- bodyRender={({onClose, value, onChange}) => {
48
- return <TabsTransfer {...rest} value={value} onChange={onChange} />;
41
+ bodyRender={({onClose, value, onChange, setState, ...states}) => {
42
+ return (
43
+ <TabsTransfer
44
+ {...rest}
45
+ {...states}
46
+ value={value}
47
+ onChange={(value: any, optionModified) => {
48
+ if (optionModified) {
49
+ let options = mapTree(rest.options, item => {
50
+ return (
51
+ value.find((a: any) => a.value === item.value) || item
52
+ );
53
+ });
54
+ this.optionModified = true;
55
+ setState({options, value});
56
+ } else {
57
+ onChange(value);
58
+ }
59
+ }}
60
+ />
61
+ );
49
62
  }}
50
63
  value={value}
51
64
  onConfirm={this.handleConfirm}
52
- onCancel={this.handleClose}
53
65
  size={size}
54
66
  >
55
67
  {({onClick, isOpened}) => (
@@ -0,0 +1,31 @@
1
+ import React from 'react';
2
+ import {themeable, ThemeProps} from '../theme';
3
+ import TimelineItem, {TimelineItemProps} from './TimelineItem';
4
+
5
+ export interface TimelineProps extends ThemeProps {
6
+ items: Array<TimelineItemProps>;
7
+ direction?: 'vertical' | 'horizontal';
8
+ reverse?: boolean;
9
+ mode?: 'left' | 'right' | 'alternate';
10
+ }
11
+
12
+ export function Timeline(props: TimelineProps) {
13
+ const {
14
+ items,
15
+ classnames: cx,
16
+ direction = 'vertical',
17
+ reverse = false,
18
+ mode = 'right',
19
+ } = props;
20
+
21
+ const timelineDatasource = items?.slice();
22
+
23
+ reverse && timelineDatasource?.reverse();
24
+
25
+ return (
26
+ <div className={cx('Timeline', `Timeline-${direction}`, `Timeline-${mode}`)}>
27
+ {timelineDatasource?.map((item: TimelineItemProps) => <TimelineItem {...item} />)}
28
+ </div>)
29
+ }
30
+
31
+ export default themeable(Timeline);