amis 1.5.7 → 1.6.1

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 (533) hide show
  1. package/.husky/pre-commit +1 -1
  2. package/README.md +1 -0
  3. package/lib/RootRenderer.d.ts +2 -0
  4. package/lib/RootRenderer.js +19 -1
  5. package/lib/RootRenderer.js.map +2 -2
  6. package/lib/Schema.d.ts +3 -2
  7. package/lib/Schema.js.map +1 -1
  8. package/lib/SchemaRenderer.js +52 -1
  9. package/lib/SchemaRenderer.js.map +2 -2
  10. package/lib/Scoped.d.ts +2 -0
  11. package/lib/Scoped.js +27 -1
  12. package/lib/Scoped.js.map +2 -2
  13. package/lib/actions/Action.d.ts +33 -0
  14. package/lib/actions/Action.js +100 -0
  15. package/lib/actions/Action.js.map +13 -0
  16. package/lib/actions/AjaxAction.d.ts +14 -0
  17. package/lib/actions/AjaxAction.js +68 -0
  18. package/lib/actions/AjaxAction.js.map +13 -0
  19. package/lib/actions/BreakAction.d.ts +12 -0
  20. package/lib/actions/BreakAction.js +28 -0
  21. package/lib/actions/BreakAction.js.map +13 -0
  22. package/lib/actions/BroadcastAction.d.ts +12 -0
  23. package/lib/actions/BroadcastAction.js +40 -0
  24. package/lib/actions/BroadcastAction.js.map +13 -0
  25. package/lib/actions/CmptAction.d.ts +12 -0
  26. package/lib/actions/CmptAction.js +40 -0
  27. package/lib/actions/CmptAction.js.map +13 -0
  28. package/lib/actions/ContinueAction.d.ts +12 -0
  29. package/lib/actions/ContinueAction.js +28 -0
  30. package/lib/actions/ContinueAction.js.map +13 -0
  31. package/lib/actions/CopyAction.d.ts +12 -0
  32. package/lib/actions/CopyAction.js +35 -0
  33. package/lib/actions/CopyAction.js.map +13 -0
  34. package/lib/actions/CustomAction.d.ts +12 -0
  35. package/lib/actions/CustomAction.js +43 -0
  36. package/lib/actions/CustomAction.js.map +13 -0
  37. package/lib/actions/DialogAction.d.ts +12 -0
  38. package/lib/actions/DialogAction.js +31 -0
  39. package/lib/actions/DialogAction.js.map +13 -0
  40. package/lib/actions/DrawerAction.d.ts +12 -0
  41. package/lib/actions/DrawerAction.js +31 -0
  42. package/lib/actions/DrawerAction.js.map +13 -0
  43. package/lib/actions/EmailAction.d.ts +12 -0
  44. package/lib/actions/EmailAction.js +37 -0
  45. package/lib/actions/EmailAction.js.map +13 -0
  46. package/lib/actions/LoopAction.d.ts +12 -0
  47. package/lib/actions/LoopAction.js +93 -0
  48. package/lib/actions/LoopAction.js.map +13 -0
  49. package/lib/actions/OpenPageAction.d.ts +12 -0
  50. package/lib/actions/OpenPageAction.js +33 -0
  51. package/lib/actions/OpenPageAction.js.map +13 -0
  52. package/lib/actions/ParallelAction.d.ts +5 -0
  53. package/lib/actions/ParallelAction.js +33 -0
  54. package/lib/actions/ParallelAction.js.map +13 -0
  55. package/lib/actions/SwitchAction.d.ts +8 -0
  56. package/lib/actions/SwitchAction.js +45 -0
  57. package/lib/actions/SwitchAction.js.map +13 -0
  58. package/lib/actions/index.d.ts +18 -0
  59. package/lib/actions/index.js +22 -0
  60. package/lib/actions/index.js.map +13 -0
  61. package/lib/components/AnchorNav.d.ts +20 -20
  62. package/lib/components/AssociatedSelection.d.ts +84 -84
  63. package/lib/components/AssociatedSelection.js +2 -2
  64. package/lib/components/AssociatedSelection.js.map +2 -2
  65. package/lib/components/Avatar.d.ts +135 -0
  66. package/lib/components/Avatar.js +120 -0
  67. package/lib/components/Avatar.js.map +13 -0
  68. package/lib/components/BaiduMapPicker.js.map +2 -2
  69. package/lib/components/Button.d.ts +20 -20
  70. package/lib/components/CalendarMobile.d.ts +573 -0
  71. package/lib/components/CalendarMobile.js +486 -0
  72. package/lib/components/CalendarMobile.js.map +13 -0
  73. package/lib/components/Cascader.d.ts +123 -0
  74. package/lib/components/Cascader.js +487 -0
  75. package/lib/components/Cascader.js.map +13 -0
  76. package/lib/components/ChainedSelection.d.ts +84 -84
  77. package/lib/components/ChainedSelection.js +15 -3
  78. package/lib/components/ChainedSelection.js.map +2 -2
  79. package/lib/components/CityArea.d.ts +527 -0
  80. package/lib/components/CityArea.js +177 -0
  81. package/lib/components/CityArea.js.map +13 -0
  82. package/lib/components/Collapse.d.ts +20 -20
  83. package/lib/components/ColorPicker.d.ts +84 -84
  84. package/lib/components/ColorPicker.js +4 -3
  85. package/lib/components/ColorPicker.js.map +2 -2
  86. package/lib/components/DatePicker.d.ts +85 -84
  87. package/lib/components/DatePicker.js +21 -8
  88. package/lib/components/DatePicker.js.map +2 -2
  89. package/lib/components/DateRangePicker.d.ts +85 -84
  90. package/lib/components/DateRangePicker.js +19 -6
  91. package/lib/components/DateRangePicker.js.map +2 -2
  92. package/lib/components/GroupedSelection.d.ts +84 -84
  93. package/lib/components/GroupedSelection.js +14 -2
  94. package/lib/components/GroupedSelection.js.map +2 -2
  95. package/lib/components/InputBox.d.ts +21 -21
  96. package/lib/components/ListGroup.d.ts +21 -21
  97. package/lib/components/ListMenu.d.ts +84 -84
  98. package/lib/components/MonthRangePicker.d.ts +85 -84
  99. package/lib/components/MonthRangePicker.js +18 -7
  100. package/lib/components/MonthRangePicker.js.map +2 -2
  101. package/lib/components/Overlay.d.ts +1 -1
  102. package/lib/components/Overlay.js.map +1 -1
  103. package/lib/components/Picker.d.ts +1 -0
  104. package/lib/components/Picker.js +16 -7
  105. package/lib/components/Picker.js.map +2 -2
  106. package/lib/components/PickerColumn.d.ts +1 -0
  107. package/lib/components/PickerColumn.js +21 -18
  108. package/lib/components/PickerColumn.js.map +2 -2
  109. package/lib/components/PickerContainer.d.ts +3 -0
  110. package/lib/components/PickerContainer.js +12 -5
  111. package/lib/components/PickerContainer.js.map +2 -2
  112. package/lib/components/PopOverContainer.d.ts +1 -0
  113. package/lib/components/PopOverContainer.js +5 -3
  114. package/lib/components/PopOverContainer.js.map +2 -2
  115. package/lib/components/PopUp.d.ts +1041 -28
  116. package/lib/components/PopUp.js +32 -8
  117. package/lib/components/PopUp.js.map +2 -2
  118. package/lib/components/Radios.d.ts +21 -21
  119. package/lib/components/Rating.d.ts +21 -21
  120. package/lib/components/ResultBox.d.ts +85 -84
  121. package/lib/components/ResultBox.js +9 -4
  122. package/lib/components/ResultBox.js.map +2 -2
  123. package/lib/components/ResultList.d.ts +9 -2
  124. package/lib/components/ResultList.js +22 -2
  125. package/lib/components/ResultList.js.map +2 -2
  126. package/lib/components/Select.d.ts +238 -238
  127. package/lib/components/Select.js +13 -9
  128. package/lib/components/Select.js.map +2 -2
  129. package/lib/components/Selection.d.ts +94 -86
  130. package/lib/components/Selection.js +11 -2
  131. package/lib/components/Selection.js.map +2 -2
  132. package/lib/components/Steps.js.map +2 -2
  133. package/lib/components/TableSelection.d.ts +85 -85
  134. package/lib/components/TableSelection.js +1 -9
  135. package/lib/components/TableSelection.js.map +2 -2
  136. package/lib/components/Tabs.js +31 -33
  137. package/lib/components/Tabs.js.map +2 -2
  138. package/lib/components/TabsTransfer.d.ts +87 -256
  139. package/lib/components/TabsTransfer.js +52 -9
  140. package/lib/components/TabsTransfer.js.map +2 -2
  141. package/lib/components/TabsTransferPicker.d.ts +1 -1
  142. package/lib/components/TabsTransferPicker.js +20 -18
  143. package/lib/components/TabsTransferPicker.js.map +2 -2
  144. package/lib/components/Timeline.d.ts +69 -0
  145. package/lib/components/Timeline.js +16 -0
  146. package/lib/components/Timeline.js.map +13 -0
  147. package/lib/components/TimelineItem.d.ts +517 -0
  148. package/lib/components/TimelineItem.js +40 -0
  149. package/lib/components/TimelineItem.js.map +13 -0
  150. package/lib/components/Transfer.d.ts +100 -98
  151. package/lib/components/Transfer.js +2 -3
  152. package/lib/components/Transfer.js.map +2 -2
  153. package/lib/components/TransferDropDown.d.ts +85 -84
  154. package/lib/components/TransferDropDown.js +9 -10
  155. package/lib/components/TransferDropDown.js.map +2 -2
  156. package/lib/components/TransferPicker.d.ts +1 -0
  157. package/lib/components/TransferPicker.js +19 -4
  158. package/lib/components/TransferPicker.js.map +2 -2
  159. package/lib/components/Tree.d.ts +84 -84
  160. package/lib/components/TreeSelection.d.ts +85 -85
  161. package/lib/components/TreeSelection.js +7 -1
  162. package/lib/components/TreeSelection.js.map +2 -2
  163. package/lib/components/calendar/Calendar.d.ts +19 -0
  164. package/lib/components/calendar/Calendar.js +71 -1
  165. package/lib/components/calendar/Calendar.js.map +2 -2
  166. package/lib/components/calendar/DaysView.d.ts +21 -0
  167. package/lib/components/calendar/DaysView.js +76 -17
  168. package/lib/components/calendar/DaysView.js.map +2 -2
  169. package/lib/components/calendar/MonthsView.d.ts +34 -0
  170. package/lib/components/calendar/MonthsView.js +68 -3
  171. package/lib/components/calendar/MonthsView.js.map +2 -2
  172. package/lib/components/calendar/QuartersView.d.ts +1 -0
  173. package/lib/components/calendar/QuartersView.js +2 -2
  174. package/lib/components/calendar/QuartersView.js.map +2 -2
  175. package/lib/components/calendar/TimeView.d.ts +30 -18
  176. package/lib/components/calendar/TimeView.js +47 -8
  177. package/lib/components/calendar/TimeView.js.map +2 -2
  178. package/lib/components/calendar/YearsView.d.ts +6 -0
  179. package/lib/components/calendar/YearsView.js +21 -10
  180. package/lib/components/calendar/YearsView.js.map +2 -2
  181. package/lib/components/condition-builder/Field.js +1 -4
  182. package/lib/components/condition-builder/Field.js.map +2 -2
  183. package/lib/components/condition-builder/Func.js +1 -1
  184. package/lib/components/condition-builder/Func.js.map +2 -2
  185. package/lib/components/formula/Editor.d.ts +3 -0
  186. package/lib/components/formula/Editor.js +3 -2
  187. package/lib/components/formula/Editor.js.map +2 -2
  188. package/lib/components/formula/FuncList.js +2 -1
  189. package/lib/components/formula/FuncList.js.map +2 -2
  190. package/lib/components/formula/Picker.js +1 -1
  191. package/lib/components/formula/Picker.js.map +2 -2
  192. package/lib/components/formula/plugin.js +0 -1
  193. package/lib/components/formula/plugin.js.map +2 -2
  194. package/lib/components/icons.js +2 -0
  195. package/lib/components/icons.js.map +2 -2
  196. package/lib/components/index.d.ts +2 -1
  197. package/lib/components/index.js +4 -2
  198. package/lib/components/index.js.map +2 -2
  199. package/lib/components/virtual-list/SizeAndPositionManager.js.map +2 -2
  200. package/lib/components/virtual-list/index.js +1 -2
  201. package/lib/components/virtual-list/index.js.map +2 -2
  202. package/lib/env.d.ts +4 -0
  203. package/lib/env.js.map +2 -2
  204. package/lib/factory.d.ts +2 -1
  205. package/lib/factory.js +83 -0
  206. package/lib/factory.js.map +2 -2
  207. package/lib/helper.css.map +1 -1
  208. package/lib/icons/tree-down.js +7 -0
  209. package/lib/index.d.ts +3 -0
  210. package/lib/index.js +4 -1
  211. package/lib/index.js.map +2 -2
  212. package/lib/locale/de-DE.js +17 -2
  213. package/lib/locale/de-DE.js.map +2 -2
  214. package/lib/locale/en-US.js +17 -2
  215. package/lib/locale/en-US.js.map +2 -2
  216. package/lib/locale/zh-CN.js +16 -1
  217. package/lib/locale/zh-CN.js.map +2 -2
  218. package/lib/renderers/Action.d.ts +1 -1
  219. package/lib/renderers/Action.js +26 -10
  220. package/lib/renderers/Action.js.map +2 -2
  221. package/lib/renderers/Avatar.d.ts +35 -26
  222. package/lib/renderers/Avatar.js +14 -19
  223. package/lib/renderers/Avatar.js.map +2 -2
  224. package/lib/renderers/Card.js +6 -5
  225. package/lib/renderers/Card.js.map +2 -2
  226. package/lib/renderers/Custom.d.ts +1 -1
  227. package/lib/renderers/Custom.js +1 -1
  228. package/lib/renderers/Custom.js.map +2 -2
  229. package/lib/renderers/DropDownButton.d.ts +11 -2
  230. package/lib/renderers/DropDownButton.js +30 -12
  231. package/lib/renderers/DropDownButton.js.map +2 -2
  232. package/lib/renderers/Each.js +5 -2
  233. package/lib/renderers/Each.js.map +2 -2
  234. package/lib/renderers/Flex.js +1 -5
  235. package/lib/renderers/Flex.js.map +2 -2
  236. package/lib/renderers/Form/ChartRadios.js.map +2 -2
  237. package/lib/renderers/Form/Checkboxes.js.map +2 -2
  238. package/lib/renderers/Form/CityDB.js +526 -2
  239. package/lib/renderers/Form/CityDB.js.map +2 -2
  240. package/lib/renderers/Form/DiffEditor.d.ts +6 -0
  241. package/lib/renderers/Form/DiffEditor.js +2 -1
  242. package/lib/renderers/Form/DiffEditor.js.map +2 -2
  243. package/lib/renderers/Form/Editor.d.ts +6 -0
  244. package/lib/renderers/Form/InputCity.d.ts +85 -84
  245. package/lib/renderers/Form/InputCity.js +4 -2
  246. package/lib/renderers/Form/InputCity.js.map +2 -2
  247. package/lib/renderers/Form/InputColor.d.ts +84 -84
  248. package/lib/renderers/Form/InputColor.js +6 -2
  249. package/lib/renderers/Form/InputColor.js.map +2 -2
  250. package/lib/renderers/Form/InputDate.js +10 -5
  251. package/lib/renderers/Form/InputDate.js.map +2 -2
  252. package/lib/renderers/Form/InputDateRange.js +6 -2
  253. package/lib/renderers/Form/InputDateRange.js.map +2 -2
  254. package/lib/renderers/Form/InputFormula.d.ts +4 -1
  255. package/lib/renderers/Form/InputFormula.js +2 -2
  256. package/lib/renderers/Form/InputFormula.js.map +2 -2
  257. package/lib/renderers/Form/InputImage.d.ts +1 -0
  258. package/lib/renderers/Form/InputImage.js +8 -4
  259. package/lib/renderers/Form/InputImage.js.map +2 -2
  260. package/lib/renderers/Form/InputMonthRange.js +1 -1
  261. package/lib/renderers/Form/InputMonthRange.js.map +2 -2
  262. package/lib/renderers/Form/InputQuarterRange.js +1 -1
  263. package/lib/renderers/Form/InputQuarterRange.js.map +2 -2
  264. package/lib/renderers/Form/InputRichText.d.ts +4 -0
  265. package/lib/renderers/Form/InputRichText.js +2 -1
  266. package/lib/renderers/Form/InputRichText.js.map +2 -2
  267. package/lib/renderers/Form/InputYearRange.js +1 -1
  268. package/lib/renderers/Form/InputYearRange.js.map +2 -2
  269. package/lib/renderers/Form/Item.d.ts +10 -14
  270. package/lib/renderers/Form/Item.js +18 -9
  271. package/lib/renderers/Form/Item.js.map +2 -2
  272. package/lib/renderers/Form/NestedSelect.d.ts +1 -0
  273. package/lib/renderers/Form/NestedSelect.js +8 -4
  274. package/lib/renderers/Form/NestedSelect.js.map +2 -2
  275. package/lib/renderers/Form/Options.js +9 -7
  276. package/lib/renderers/Form/Options.js.map +2 -2
  277. package/lib/renderers/Form/Select.d.ts +2 -0
  278. package/lib/renderers/Form/Select.js +9 -6
  279. package/lib/renderers/Form/Select.js.map +2 -2
  280. package/lib/renderers/Form/TabsTransfer.d.ts +5 -32
  281. package/lib/renderers/Form/TabsTransfer.js +20 -1
  282. package/lib/renderers/Form/TabsTransfer.js.map +2 -2
  283. package/lib/renderers/Form/TabsTransferPicker.d.ts +5 -35
  284. package/lib/renderers/Form/TabsTransferPicker.js +21 -2
  285. package/lib/renderers/Form/TabsTransferPicker.js.map +2 -2
  286. package/lib/renderers/Form/Transfer.d.ts +15 -4
  287. package/lib/renderers/Form/Transfer.js +55 -18
  288. package/lib/renderers/Form/Transfer.js.map +2 -2
  289. package/lib/renderers/Form/TransferPicker.d.ts +3 -32
  290. package/lib/renderers/Form/TransferPicker.js +1 -1
  291. package/lib/renderers/Form/TransferPicker.js.map +2 -2
  292. package/lib/renderers/Form/TreeSelect.js +4 -4
  293. package/lib/renderers/Form/TreeSelect.js.map +2 -2
  294. package/lib/renderers/Form/index.js +8 -1
  295. package/lib/renderers/Form/index.js.map +2 -2
  296. package/lib/renderers/IFrame.js +0 -2
  297. package/lib/renderers/IFrame.js.map +2 -2
  298. package/lib/renderers/Link.d.ts +1 -1
  299. package/lib/renderers/Link.js +27 -6
  300. package/lib/renderers/Link.js.map +2 -2
  301. package/lib/renderers/Log.js +15 -10
  302. package/lib/renderers/Log.js.map +2 -2
  303. package/lib/renderers/Nav.d.ts +21 -21
  304. package/lib/renderers/Remark.d.ts +5 -1
  305. package/lib/renderers/Remark.js +39 -7
  306. package/lib/renderers/Remark.js.map +2 -2
  307. package/lib/renderers/Steps.js +5 -5
  308. package/lib/renderers/Steps.js.map +2 -2
  309. package/lib/renderers/Table/index.js +4 -1
  310. package/lib/renderers/Table/index.js.map +2 -2
  311. package/lib/renderers/Tabs.js +1 -1
  312. package/lib/renderers/Tabs.js.map +2 -2
  313. package/lib/renderers/Timeline.d.ts +65 -0
  314. package/lib/renderers/Timeline.js +54 -0
  315. package/lib/renderers/Timeline.js.map +13 -0
  316. package/lib/renderers/Video.js.map +2 -2
  317. package/lib/schemaExtend.js +23 -9
  318. package/lib/schemaExtend.js.map +2 -2
  319. package/lib/store/combo.js.map +2 -2
  320. package/lib/store/formItem.js +1 -1
  321. package/lib/store/formItem.js.map +2 -2
  322. package/lib/themes/ang-ie11.css +1149 -53
  323. package/lib/themes/ang.css +1149 -53
  324. package/lib/themes/ang.css.map +1 -1
  325. package/lib/themes/antd-ie11.css +1187 -53
  326. package/lib/themes/antd.css +1187 -53
  327. package/lib/themes/antd.css.map +1 -1
  328. package/lib/themes/cxd-ie11.css +1189 -70
  329. package/lib/themes/cxd.css +1189 -70
  330. package/lib/themes/cxd.css.map +1 -1
  331. package/lib/themes/dark-ie11.css +1152 -53
  332. package/lib/themes/dark.css +1152 -53
  333. package/lib/themes/dark.css.map +1 -1
  334. package/lib/themes/default.css +1189 -70
  335. package/lib/themes/default.css.map +1 -1
  336. package/lib/utils/RootClose.js +3 -1
  337. package/lib/utils/RootClose.js.map +2 -2
  338. package/lib/utils/api.js +14 -3
  339. package/lib/utils/api.js.map +2 -2
  340. package/lib/utils/debug.d.ts +26 -0
  341. package/lib/utils/debug.js +351 -0
  342. package/lib/utils/debug.js.map +13 -0
  343. package/lib/utils/helper.d.ts +1 -6
  344. package/lib/utils/helper.js +6 -17
  345. package/lib/utils/helper.js.map +2 -2
  346. package/lib/utils/renderer-event.d.ts +38 -0
  347. package/lib/utils/renderer-event.js +28 -0
  348. package/lib/utils/renderer-event.js.map +13 -0
  349. package/package.json +12 -6
  350. package/schema.json +3516 -839
  351. package/scss/_properties.scss +20 -6
  352. package/scss/_variables.scss +1 -0
  353. package/scss/components/_avatar.scss +27 -9
  354. package/scss/components/_calendar.scss +291 -0
  355. package/scss/components/_card.scss +1 -1
  356. package/scss/components/_cascader.scss +102 -0
  357. package/scss/components/_city-area.scss +27 -0
  358. package/scss/components/_collapse-group.scss +1 -3
  359. package/scss/components/_debug.scss +167 -0
  360. package/scss/components/_dropdown.scss +39 -9
  361. package/scss/components/_formula.scss +30 -6
  362. package/scss/components/_modal.scss +18 -0
  363. package/scss/components/_panel.scss +45 -0
  364. package/scss/components/_picker-columns.scss +15 -5
  365. package/scss/components/_popup.scss +43 -16
  366. package/scss/components/_result-box.scss +31 -0
  367. package/scss/components/_timeline.scss +198 -0
  368. package/scss/components/form/_checks.scss +2 -0
  369. package/scss/components/form/_color.scss +2 -2
  370. package/scss/components/form/_date-range.scss +34 -1
  371. package/scss/components/form/_date.scss +46 -1
  372. package/scss/components/form/_form.scss +170 -0
  373. package/scss/components/form/_nested-select.scss +3 -0
  374. package/scss/components/form/_result-list.scss +2 -0
  375. package/scss/components/form/_select.scss +32 -3
  376. package/scss/components/form/_selection.scss +5 -4
  377. package/scss/components/form/_transfer.scss +3 -0
  378. package/scss/components/form/_tree-select.scss +1 -1
  379. package/scss/themes/_antd-variables.scss +45 -0
  380. package/scss/themes/_common.scss +5 -0
  381. package/scss/themes/_cxd-variables.scss +50 -1
  382. package/scss/themes/_dark-variables.scss +4 -0
  383. package/scss/themes/cxd.scss +0 -19
  384. package/sdk/ang-ie11.css +1450 -142
  385. package/sdk/ang.css +1473 -159
  386. package/sdk/antd-ie11.css +1451 -142
  387. package/sdk/antd.css +1511 -159
  388. package/sdk/charts.js +15 -15
  389. package/sdk/codemirror.js +7 -7
  390. package/sdk/color-picker.js +65 -65
  391. package/sdk/cropperjs.js +2 -2
  392. package/sdk/cxd-ie11.css +1448 -158
  393. package/sdk/cxd.css +1513 -178
  394. package/sdk/dark-ie11.css +1450 -142
  395. package/sdk/dark.css +1476 -159
  396. package/sdk/exceljs.js +1 -1
  397. package/sdk/helper.css.map +1 -1
  398. package/sdk/locale/de-DE.js +17 -2
  399. package/sdk/markdown.js +69 -69
  400. package/sdk/papaparse.js +1 -1
  401. package/sdk/renderers/Form/CityDB.js +1 -1
  402. package/sdk/rest.js +18 -18
  403. package/sdk/rich-text.js +62 -62
  404. package/sdk/sdk-ie11.css +1448 -158
  405. package/sdk/sdk.css +1513 -178
  406. package/sdk/sdk.js +1309 -1251
  407. package/sdk/thirds/hls.js/hls.js +1 -1
  408. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  409. package/sdk/tinymce.js +57 -57
  410. package/src/RootRenderer.tsx +27 -1
  411. package/src/Schema.ts +3 -0
  412. package/src/SchemaRenderer.tsx +70 -4
  413. package/src/Scoped.tsx +46 -4
  414. package/src/actions/Action.ts +138 -0
  415. package/src/actions/AjaxAction.ts +58 -0
  416. package/src/actions/BreakAction.ts +27 -0
  417. package/src/actions/BroadcastAction.ts +41 -0
  418. package/src/actions/CmptAction.ts +36 -0
  419. package/src/actions/ContinueAction.ts +27 -0
  420. package/src/actions/CopyAction.ts +41 -0
  421. package/src/actions/CustomAction.ts +46 -0
  422. package/src/actions/DialogAction.ts +28 -0
  423. package/src/actions/DrawerAction.ts +28 -0
  424. package/src/actions/EmailAction.ts +38 -0
  425. package/src/actions/LoopAction.ts +77 -0
  426. package/src/actions/OpenPageAction.ts +39 -0
  427. package/src/actions/ParallelAction.ts +26 -0
  428. package/src/actions/SwitchAction.ts +35 -0
  429. package/src/actions/index.ts +20 -0
  430. package/src/components/AssociatedSelection.tsx +5 -1
  431. package/src/components/Avatar.tsx +253 -0
  432. package/src/components/BaiduMapPicker.tsx +19 -14
  433. package/src/components/CalendarMobile.tsx +658 -0
  434. package/src/components/Cascader.tsx +564 -0
  435. package/src/components/ChainedSelection.tsx +16 -3
  436. package/src/components/CityArea.tsx +315 -0
  437. package/src/components/ColorPicker.tsx +41 -40
  438. package/src/components/DatePicker.tsx +80 -34
  439. package/src/components/DateRangePicker.tsx +85 -30
  440. package/src/components/GroupedSelection.tsx +14 -2
  441. package/src/components/MonthRangePicker.tsx +78 -31
  442. package/src/components/Overlay.tsx +1 -1
  443. package/src/components/Picker.tsx +55 -35
  444. package/src/components/PickerColumn.tsx +43 -36
  445. package/src/components/PickerContainer.tsx +13 -1
  446. package/src/components/PopOverContainer.tsx +31 -17
  447. package/src/components/PopUp.tsx +84 -57
  448. package/src/components/ResultBox.tsx +14 -2
  449. package/src/components/ResultList.tsx +36 -6
  450. package/src/components/Select.tsx +24 -26
  451. package/src/components/Selection.tsx +21 -3
  452. package/src/components/Steps.tsx +23 -10
  453. package/src/components/TableSelection.tsx +1 -44
  454. package/src/components/Tabs.tsx +65 -54
  455. package/src/components/TabsTransfer.tsx +78 -9
  456. package/src/components/TabsTransferPicker.tsx +25 -13
  457. package/src/components/Timeline.tsx +36 -0
  458. package/src/components/TimelineItem.tsx +140 -0
  459. package/src/components/Transfer.tsx +11 -8
  460. package/src/components/TransferDropDown.tsx +20 -12
  461. package/src/components/TransferPicker.tsx +25 -4
  462. package/src/components/TreeSelection.tsx +7 -1
  463. package/src/components/calendar/Calendar.tsx +101 -4
  464. package/src/components/calendar/DaysView.tsx +165 -33
  465. package/src/components/calendar/MonthsView.tsx +108 -1
  466. package/src/components/calendar/QuartersView.tsx +3 -2
  467. package/src/components/calendar/TimeView.tsx +104 -41
  468. package/src/components/calendar/YearsView.tsx +34 -17
  469. package/src/components/condition-builder/Field.tsx +1 -3
  470. package/src/components/condition-builder/Func.tsx +1 -1
  471. package/src/components/formula/Editor.tsx +16 -11
  472. package/src/components/formula/FuncList.tsx +3 -1
  473. package/src/components/formula/Picker.tsx +2 -1
  474. package/src/components/formula/plugin.ts +0 -2
  475. package/src/components/icons.tsx +2 -0
  476. package/src/components/index.tsx +2 -0
  477. package/src/components/virtual-list/SizeAndPositionManager.ts +6 -3
  478. package/src/components/virtual-list/index.tsx +4 -6
  479. package/src/env.tsx +22 -0
  480. package/src/factory.tsx +93 -1
  481. package/src/icons/tree-down.svg +5 -0
  482. package/src/index.tsx +5 -0
  483. package/src/locale/de-DE.ts +17 -2
  484. package/src/locale/en-US.ts +17 -2
  485. package/src/locale/zh-CN.ts +16 -1
  486. package/src/renderers/Action.tsx +11 -2
  487. package/src/renderers/Avatar.tsx +83 -74
  488. package/src/renderers/Card.tsx +10 -6
  489. package/src/renderers/Custom.tsx +7 -4
  490. package/src/renderers/DropDownButton.tsx +69 -35
  491. package/src/renderers/Each.tsx +4 -4
  492. package/src/renderers/Flex.tsx +3 -7
  493. package/src/renderers/Form/ChartRadios.tsx +2 -7
  494. package/src/renderers/Form/Checkboxes.tsx +1 -1
  495. package/src/renderers/Form/CityDB.ts +526 -2
  496. package/src/renderers/Form/DiffEditor.tsx +2 -3
  497. package/src/renderers/Form/InputCity.tsx +23 -3
  498. package/src/renderers/Form/InputColor.tsx +21 -2
  499. package/src/renderers/Form/InputDate.tsx +48 -20
  500. package/src/renderers/Form/InputDateRange.tsx +9 -2
  501. package/src/renderers/Form/InputFormula.tsx +9 -4
  502. package/src/renderers/Form/InputImage.tsx +9 -4
  503. package/src/renderers/Form/InputMonthRange.tsx +0 -1
  504. package/src/renderers/Form/InputQuarterRange.tsx +0 -1
  505. package/src/renderers/Form/InputRichText.tsx +11 -1
  506. package/src/renderers/Form/InputYearRange.tsx +0 -1
  507. package/src/renderers/Form/Item.tsx +29 -8
  508. package/src/renderers/Form/NestedSelect.tsx +32 -4
  509. package/src/renderers/Form/Options.tsx +15 -7
  510. package/src/renderers/Form/Select.tsx +21 -5
  511. package/src/renderers/Form/TabsTransfer.tsx +28 -38
  512. package/src/renderers/Form/TabsTransferPicker.tsx +28 -46
  513. package/src/renderers/Form/Transfer.tsx +75 -24
  514. package/src/renderers/Form/TransferPicker.tsx +6 -38
  515. package/src/renderers/Form/TreeSelect.tsx +18 -16
  516. package/src/renderers/Form/index.tsx +7 -1
  517. package/src/renderers/IFrame.tsx +0 -2
  518. package/src/renderers/Link.tsx +18 -3
  519. package/src/renderers/Log.tsx +5 -1
  520. package/src/renderers/Remark.tsx +68 -18
  521. package/src/renderers/Steps.tsx +11 -13
  522. package/src/renderers/Table/index.tsx +7 -1
  523. package/src/renderers/Tabs.tsx +6 -2
  524. package/src/renderers/Timeline.tsx +141 -0
  525. package/src/renderers/Video.tsx +4 -20
  526. package/src/schemaExtend.ts +22 -10
  527. package/src/store/combo.ts +1 -3
  528. package/src/store/formItem.ts +1 -1
  529. package/src/utils/RootClose.ts +5 -1
  530. package/src/utils/api.ts +15 -2
  531. package/src/utils/debug.tsx +438 -0
  532. package/src/utils/helper.ts +6 -16
  533. package/src/utils/renderer-event.ts +75 -0
@@ -0,0 +1,564 @@
1
+ /**
2
+ * @file Cascader
3
+ * @author fex
4
+ */
5
+
6
+ import React from 'react';
7
+ import {autobind, getTreeAncestors} from '../utils/helper';
8
+ import {themeable} from '../theme';
9
+ import {NestedSelectProps} from '../renderers/Form/NestedSelect';
10
+ import {Option, Options} from './Select';
11
+ import intersectionBy from 'lodash/intersectionBy';
12
+ import compact from 'lodash/compact';
13
+ import find from 'lodash/find';
14
+ import uniqBy from 'lodash/uniqBy';
15
+ import Button from './Button';
16
+ import {flattenTree, findTree, getTreeDepth} from '../utils/helper';
17
+
18
+ export type CascaderOption = {
19
+ text?: string;
20
+ value?: string | number;
21
+ color?: string;
22
+ disabled?: boolean;
23
+ children?: Options;
24
+ className?: string;
25
+ [key: string]: any;
26
+ };
27
+ export interface CascaderProps extends NestedSelectProps {
28
+ value?: (number | string)[];
29
+ activeColor?: string;
30
+ optionRender?: ({
31
+ option,
32
+ selected
33
+ }: {
34
+ option: CascaderOption;
35
+ selected: boolean;
36
+ }) => React.ReactNode;
37
+ onClose?: () => void;
38
+ onConfirm?: (param: any) => void;
39
+ multiple?: boolean;
40
+ }
41
+ export type CascaderTab = {
42
+ options: Options;
43
+ };
44
+
45
+ export interface CascaderState {
46
+ selectedOptions: Options;
47
+ activeTab: number;
48
+ tabs: Array<{
49
+ options: Options;
50
+ }>;
51
+ }
52
+
53
+ export class Cascader extends React.Component<CascaderProps, CascaderState> {
54
+ static defaultProps = {
55
+ labelField: 'label',
56
+ valueField: 'value'
57
+ };
58
+ tabsRef: React.RefObject<HTMLDivElement> = React.createRef();
59
+ tabRef: React.RefObject<HTMLDivElement> = React.createRef();
60
+ constructor(props: CascaderProps) {
61
+ super(props);
62
+ this.state = {
63
+ selectedOptions: this.props.selectedOptions || [],
64
+ activeTab: 0,
65
+ tabs: [
66
+ {
67
+ options: this.props.options.slice() || []
68
+ }
69
+ ]
70
+ };
71
+ }
72
+ componentDidMount() {
73
+ const {multiple, options, valueField = 'value', cascade} = this.props;
74
+ let selectedOptions = this.props.selectedOptions.slice();
75
+ let parentsCount = 0;
76
+ let parentTree: Options = [];
77
+ selectedOptions.forEach((item: Option) => {
78
+ const parents = getTreeAncestors(options, item as any);
79
+ // 获取最长路径
80
+ if (parents && parents?.length > parentsCount) {
81
+ parentTree = parents;
82
+ parentsCount = parentTree.length;
83
+ }
84
+ });
85
+ const selectedValues = selectedOptions.map(
86
+ (option: Option) => option[valueField]
87
+ );
88
+ const tabs = parentTree.map((option: Option) => {
89
+ if (multiple && !cascade) {
90
+ if (
91
+ selectedValues.includes(option[valueField]) &&
92
+ option?.children?.length
93
+ ) {
94
+ option.children.forEach((option: Option) => (option.disabled = true));
95
+ }
96
+ }
97
+ return multiple
98
+ ? {
99
+ options: [
100
+ {
101
+ ...option,
102
+ isCheckAll: true
103
+ },
104
+ ...(option.children ? option.children : [])
105
+ ]
106
+ }
107
+ : {
108
+ options: option.children ? option.children : []
109
+ };
110
+ });
111
+ this.setState({
112
+ selectedOptions,
113
+ tabs: [...this.state.tabs, ...tabs]
114
+ });
115
+ }
116
+
117
+ @autobind
118
+ handleTabSelect(index: number) {
119
+ const tabs = this.state.tabs.slice(0, index + 1);
120
+ this.setState({
121
+ activeTab: index,
122
+ tabs
123
+ });
124
+ }
125
+
126
+ @autobind
127
+ getOptionParent(option: Option) {
128
+ const {options, valueField = 'value'} = this.props;
129
+ let ancestors: any[] = [];
130
+ findTree(options, (item, index, level, paths) => {
131
+ if (item[valueField] === option[valueField]) {
132
+ ancestors = paths;
133
+ return true;
134
+ }
135
+ return false;
136
+ });
137
+ return ancestors.length ? ancestors[ancestors.length - 1] : null;
138
+ }
139
+
140
+ @autobind
141
+ dealParentSelect(option: Option, selectedOptions: Options): Options {
142
+ const {valueField = 'value'} = this.props;
143
+ const parentOption = this.getOptionParent(option);
144
+ if (parentOption) {
145
+ const parentChildren = parentOption?.children;
146
+ const equalOption = intersectionBy(
147
+ selectedOptions,
148
+ parentChildren,
149
+ valueField
150
+ );
151
+ // 包含则选中父节点
152
+ const isParentSelected = find(selectedOptions, {
153
+ [valueField]: parentOption[valueField]
154
+ });
155
+ if (equalOption.length === parentChildren?.length && !isParentSelected) {
156
+ selectedOptions.push(parentOption);
157
+ }
158
+ if (equalOption.length !== parentChildren?.length && isParentSelected) {
159
+ const index = selectedOptions.findIndex(
160
+ (item: Option) => item[valueField] === parentOption[valueField]
161
+ );
162
+ selectedOptions.splice(index, 1);
163
+ }
164
+ return this.dealParentSelect(parentOption, selectedOptions);
165
+ } else {
166
+ return selectedOptions;
167
+ }
168
+ }
169
+
170
+ @autobind
171
+ flattenTreeWithLeafNodes(option: Option) {
172
+ return compact(
173
+ flattenTree(Array.isArray(option) ? option : [option], node => node)
174
+ );
175
+ }
176
+
177
+ @autobind
178
+ adjustOptionSelect(option: Option): boolean {
179
+ const {valueField = 'value'} = this.props;
180
+ const {selectedOptions} = this.state;
181
+ function loop(arr: any[]): boolean {
182
+ if (!arr.length) {
183
+ return false;
184
+ }
185
+ return arr.some((item: any) => item[valueField] === option[valueField]);
186
+ }
187
+ return loop(selectedOptions);
188
+ }
189
+
190
+ @autobind
191
+ getSelectedChildNum(option: Option): number {
192
+ let count = 0;
193
+ const loop = (arr: any[]) => {
194
+ if (!arr || !arr.length) {
195
+ return;
196
+ }
197
+ for (let item of arr) {
198
+ if (item.children) {
199
+ loop(item.children || []);
200
+ } else {
201
+ if (this.adjustOptionSelect(item)) {
202
+ count++;
203
+ }
204
+ }
205
+ }
206
+ };
207
+ loop(option.children || []);
208
+ return count;
209
+ }
210
+
211
+ @autobind
212
+ dealOptionDisable(selectedOptions: Options) {
213
+ const {
214
+ valueField = 'value',
215
+ options,
216
+ cascade,
217
+ multiple,
218
+ onlyChildren // 子节点可点击
219
+ } = this.props;
220
+ if (!multiple || cascade || onlyChildren) {
221
+ return;
222
+ }
223
+ const selectedValues = selectedOptions.map(
224
+ (option: Option) => option[valueField]
225
+ );
226
+ const loop = (option: Option) => {
227
+ if (!option.children) {
228
+ return;
229
+ }
230
+ option.children &&
231
+ option.children.forEach((childOption: Option) => {
232
+ if (
233
+ !selectedValues.includes(option[valueField]) &&
234
+ !option.disabled
235
+ ) {
236
+ childOption.disabled = false;
237
+ }
238
+
239
+ if (selectedValues.includes(option[valueField]) || option.disabled) {
240
+ childOption.disabled = true;
241
+ }
242
+ loop(childOption);
243
+ });
244
+ };
245
+ options.forEach((option: Option) => loop(option));
246
+ }
247
+
248
+ @autobind
249
+ dealChildrenSelect(option: Option, selectedOptions: Options) {
250
+ const {valueField = 'value'} = this.props;
251
+ let index = selectedOptions.findIndex(
252
+ (item: Option) => item[valueField] === option[valueField]
253
+ );
254
+ if (index !== -1) {
255
+ selectedOptions.splice(index, 1);
256
+ } else {
257
+ selectedOptions.push(option);
258
+ }
259
+ function loop(option: Option) {
260
+ if (!option.children) {
261
+ return;
262
+ }
263
+ option.children.forEach((item: Option) => {
264
+ if (index !== -1) {
265
+ // 删除选中节点及其子节点
266
+ selectedOptions = selectedOptions.filter(
267
+ (sItem: Option) => sItem[valueField] !== item[valueField]
268
+ );
269
+ } else {
270
+ // 添加节点及其子节点
271
+ selectedOptions.push(item);
272
+ }
273
+ loop(item);
274
+ });
275
+ }
276
+ loop(option);
277
+ return selectedOptions;
278
+ }
279
+
280
+ getParentTree = (option: Option, arr: Options): Options => {
281
+ const parentOption = this.getOptionParent(option);
282
+ if (parentOption) {
283
+ arr.push(parentOption);
284
+ return this.getParentTree(parentOption, arr);
285
+ }
286
+ return arr;
287
+ };
288
+
289
+ @autobind
290
+ onSelect(option: CascaderOption, tabIndex: number) {
291
+ const {multiple, valueField = 'value', cascade} = this.props;
292
+
293
+ let tabs = this.state.tabs.slice();
294
+ let {activeTab} = this.state;
295
+ let selectedOptions = this.state.selectedOptions;
296
+ const isDisable = option.disabled;
297
+ if (!isDisable) {
298
+ if (multiple) {
299
+ // 父子级分离
300
+ if (cascade) {
301
+ if (
302
+ option.isCheckAll ||
303
+ !option.children ||
304
+ !option.children.length
305
+ ) {
306
+ let index = selectedOptions.findIndex(
307
+ (item: Option) => item[valueField] === option[valueField]
308
+ );
309
+ if (index !== -1) {
310
+ selectedOptions.splice(index, 1);
311
+ } else {
312
+ selectedOptions.push(option);
313
+ }
314
+ }
315
+ } else {
316
+ if (
317
+ option.isCheckAll ||
318
+ !option.children ||
319
+ !option.children.length
320
+ ) {
321
+ selectedOptions = this.dealChildrenSelect(option, selectedOptions);
322
+ selectedOptions = this.dealParentSelect(option, selectedOptions);
323
+ }
324
+ }
325
+ } else {
326
+ // 单选
327
+ selectedOptions = this.getParentTree(option, [option]);
328
+ }
329
+ }
330
+ this.dealOptionDisable(selectedOptions);
331
+
332
+ if (tabs.length > tabIndex + 1) {
333
+ tabs = tabs.slice(0, tabIndex + 1);
334
+ }
335
+
336
+ requestAnimationFrame(() => {
337
+ const tabWidth = this.tabRef.current?.offsetWidth || 1;
338
+ const parentTree = this.getParentTree(option, [option]);
339
+ const scrollLeft = (parentTree.length - 2) * tabWidth;
340
+ if (scrollLeft !== 0) {
341
+ (this.tabsRef.current as HTMLElement).scrollTo(scrollLeft, 0);
342
+ }
343
+ });
344
+
345
+ if (option?.children && !option.isCheckAll) {
346
+ const nextTab = multiple
347
+ ? {
348
+ options: [
349
+ {
350
+ ...option,
351
+ isCheckAll: true
352
+ },
353
+ ...option.children
354
+ ]
355
+ }
356
+ : {
357
+ options: option.children
358
+ };
359
+
360
+ if (tabs[tabIndex + 1]) {
361
+ tabs[tabIndex + 1] = nextTab;
362
+ } else {
363
+ tabs.push(nextTab);
364
+ }
365
+ activeTab += 1;
366
+ }
367
+ this.setState({
368
+ tabs,
369
+ activeTab,
370
+ selectedOptions
371
+ });
372
+ }
373
+
374
+ @autobind
375
+ onNextClick(option: CascaderOption, tabIndex: number) {
376
+ let {activeTab} = this.state;
377
+ let tabs = this.state.tabs.slice();
378
+ if (option.c)
379
+ if (option?.children) {
380
+ const nextTab = {
381
+ options: option.children
382
+ };
383
+ if (tabs[tabIndex + 1]) {
384
+ tabs[tabIndex + 1] = nextTab;
385
+ } else {
386
+ tabs.push(nextTab);
387
+ }
388
+ activeTab += 1;
389
+ }
390
+ this.setState({
391
+ tabs,
392
+ activeTab
393
+ });
394
+ }
395
+
396
+ @autobind
397
+ getSubmitOptions(selectedOptions: Options): Options {
398
+ const _selectedOptions: Options = [];
399
+ const {
400
+ multiple,
401
+ options,
402
+ valueField = 'value',
403
+ cascade,
404
+ onlyChildren,
405
+ withChildren
406
+ } = this.props;
407
+ if (cascade || onlyChildren || withChildren || !multiple) {
408
+ return selectedOptions;
409
+ }
410
+ const selectedValues = selectedOptions.map(
411
+ (option: Option) => option[valueField]
412
+ );
413
+ function loop(options: Options) {
414
+ if (!options || !options.length) {
415
+ return;
416
+ }
417
+ options.forEach((option: Option) => {
418
+ if (selectedValues.includes(option[valueField])) {
419
+ _selectedOptions.push(option);
420
+ } else {
421
+ loop(option.children ? option.children : []);
422
+ }
423
+ });
424
+ }
425
+ loop(options);
426
+ return _selectedOptions;
427
+ }
428
+
429
+ @autobind
430
+ confirm() {
431
+ const {onChange, joinValues, delimiter, extractValue, valueField, onClose} =
432
+ this.props;
433
+ let {selectedOptions} = this.state;
434
+ let _selectedOptions = this.getSubmitOptions(selectedOptions);
435
+ _selectedOptions = uniqBy(_selectedOptions, valueField);
436
+ onChange(
437
+ joinValues
438
+ ? _selectedOptions
439
+ .map(item => item[valueField as string])
440
+ .join(delimiter)
441
+ : extractValue
442
+ ? _selectedOptions.map(item => item[valueField as string])
443
+ : _selectedOptions
444
+ );
445
+ onClose && onClose();
446
+ }
447
+
448
+ @autobind
449
+ renderOption(option: CascaderOption, tabIndex: number) {
450
+ const {
451
+ activeColor,
452
+ optionRender,
453
+ labelField,
454
+ valueField = 'value',
455
+ classnames: cx,
456
+ cascade,
457
+ multiple
458
+ } = this.props;
459
+ const {selectedOptions} = this.state;
460
+ const selectedValueArr = selectedOptions.map(item => item[valueField]);
461
+
462
+ let selfChecked = selectedValueArr.includes(option[valueField]);
463
+ const color = option.color || (selfChecked ? activeColor : undefined);
464
+ const Text = optionRender ? (
465
+ optionRender({option, selected: selfChecked})
466
+ ) : (
467
+ <span>{option[labelField]}</span>
468
+ );
469
+ return (
470
+ <li
471
+ className={cx(
472
+ 'Cascader-option',
473
+ {
474
+ selected: selfChecked,
475
+ disabled: option.disabled
476
+ },
477
+ option.className
478
+ )}
479
+ style={{color}}
480
+ onClick={() => this.onSelect(option, tabIndex)}
481
+ key={tabIndex + '-' + option[valueField]}
482
+ >
483
+ <span className={cx('Cascader-option--text')}>{Text}</span>
484
+ </li>
485
+ );
486
+ }
487
+
488
+ @autobind
489
+ renderOptions(options: Options, tabIndex: number) {
490
+ const {classnames: cx} = this.props;
491
+ return (
492
+ <ul key={tabIndex} className={cx('Cascader-options')}>
493
+ {options.map(option => this.renderOption(option, tabIndex))}
494
+ </ul>
495
+ );
496
+ }
497
+
498
+ @autobind
499
+ renderTabs() {
500
+ const {classnames: cx, options} = this.props;
501
+ const {tabs} = this.state;
502
+ const depth = getTreeDepth(options);
503
+ return (
504
+ <div
505
+ className={cx(`Cascader-tabs`, depth > 3 ? 'scrollable' : '')}
506
+ ref={this.tabsRef}
507
+ >
508
+ {tabs.map((tab: CascaderTab, tabIndex: number) => {
509
+ const {options} = tab;
510
+ return (
511
+ <div
512
+ className={cx(`Cascader-tab`)}
513
+ ref={this.tabRef}
514
+ key={tabIndex}
515
+ >
516
+ {this.renderOptions(options, tabIndex)}
517
+ </div>
518
+ );
519
+ })}
520
+ {depth <= 3 && options.length
521
+ ? Array(getTreeDepth(options) - tabs.length)
522
+ .fill(1)
523
+ .map((item: number, index: number) => (
524
+ <div className={cx(`Cascader-tab`)} key={index}></div>
525
+ ))
526
+ : null}
527
+ </div>
528
+ );
529
+ }
530
+
531
+ render() {
532
+ const {
533
+ classPrefix: ns,
534
+ classnames: cx,
535
+ className,
536
+ onClose,
537
+ translate: __
538
+ } = this.props;
539
+
540
+ return (
541
+ <div className={cx(`Cascader`, className)}>
542
+ <div className={cx(`Cascader-btnGroup`)}>
543
+ <Button
544
+ className={cx(`Cascader-btnCancel`)}
545
+ level="text"
546
+ onClick={onClose}
547
+ >
548
+ {__('cancel')}
549
+ </Button>
550
+ <Button
551
+ className={cx(`Cascader-btnConfirm`)}
552
+ level="text"
553
+ onClick={this.confirm}
554
+ >
555
+ {__('confirm')}
556
+ </Button>
557
+ </div>
558
+ {this.renderTabs()}
559
+ </div>
560
+ );
561
+ }
562
+ }
563
+
564
+ export default themeable(Cascader);
@@ -78,7 +78,13 @@ export class ChainedSelection extends BaseSelection<
78
78
  onClick={() => this.toggleOption(option)}
79
79
  >
80
80
  <div className={cx('ChainedSelection-itemLabel')}>
81
- {itemRender(option)}
81
+ {itemRender(option, {
82
+ index: index,
83
+ multiple: multiple,
84
+ checked: !!~valueArray.indexOf(option),
85
+ onChange: () => this.toggleOption(option),
86
+ disabled: disabled || option.disabled
87
+ })}
82
88
  </div>
83
89
 
84
90
  {multiple ? (
@@ -100,7 +106,8 @@ export class ChainedSelection extends BaseSelection<
100
106
  disabled,
101
107
  classnames: cx,
102
108
  itemClassName,
103
- itemRender
109
+ itemRender,
110
+ multiple
104
111
  } = this.props;
105
112
  const valueArray = this.valueArray;
106
113
 
@@ -118,7 +125,13 @@ export class ChainedSelection extends BaseSelection<
118
125
  onClick={() => this.selectOption(option, depth, id)}
119
126
  >
120
127
  <div className={cx('ChainedSelection-itemLabel')}>
121
- {itemRender(option)}
128
+ {itemRender(option, {
129
+ index: index,
130
+ multiple: multiple,
131
+ checked: !!~this.state.selected.indexOf(id),
132
+ onChange: () => this.selectOption(option, depth, id),
133
+ disabled: disabled || option.disabled
134
+ })}
122
135
  </div>
123
136
 
124
137
  {option.defer && option.loading ? <Spinner size="sm" show /> : null}