amis 1.5.6 → 1.6.1-beta.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 (538) 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/CRUD.js +1 -2
  225. package/lib/renderers/CRUD.js.map +2 -2
  226. package/lib/renderers/Card.js +6 -5
  227. package/lib/renderers/Card.js.map +2 -2
  228. package/lib/renderers/Custom.d.ts +1 -1
  229. package/lib/renderers/Custom.js +1 -1
  230. package/lib/renderers/Custom.js.map +2 -2
  231. package/lib/renderers/DropDownButton.d.ts +11 -2
  232. package/lib/renderers/DropDownButton.js +30 -12
  233. package/lib/renderers/DropDownButton.js.map +2 -2
  234. package/lib/renderers/Each.js +5 -2
  235. package/lib/renderers/Each.js.map +2 -2
  236. package/lib/renderers/Flex.js +1 -5
  237. package/lib/renderers/Flex.js.map +2 -2
  238. package/lib/renderers/Form/ChartRadios.js.map +2 -2
  239. package/lib/renderers/Form/Checkboxes.js.map +2 -2
  240. package/lib/renderers/Form/CityDB.js +526 -2
  241. package/lib/renderers/Form/CityDB.js.map +2 -2
  242. package/lib/renderers/Form/DiffEditor.d.ts +6 -0
  243. package/lib/renderers/Form/DiffEditor.js +2 -1
  244. package/lib/renderers/Form/DiffEditor.js.map +2 -2
  245. package/lib/renderers/Form/Editor.d.ts +6 -0
  246. package/lib/renderers/Form/InputCity.d.ts +85 -84
  247. package/lib/renderers/Form/InputCity.js +4 -2
  248. package/lib/renderers/Form/InputCity.js.map +2 -2
  249. package/lib/renderers/Form/InputColor.d.ts +84 -84
  250. package/lib/renderers/Form/InputColor.js +6 -2
  251. package/lib/renderers/Form/InputColor.js.map +2 -2
  252. package/lib/renderers/Form/InputDate.js +10 -5
  253. package/lib/renderers/Form/InputDate.js.map +2 -2
  254. package/lib/renderers/Form/InputDateRange.js +6 -2
  255. package/lib/renderers/Form/InputDateRange.js.map +2 -2
  256. package/lib/renderers/Form/InputFormula.d.ts +4 -1
  257. package/lib/renderers/Form/InputFormula.js +2 -2
  258. package/lib/renderers/Form/InputFormula.js.map +2 -2
  259. package/lib/renderers/Form/InputImage.d.ts +1 -0
  260. package/lib/renderers/Form/InputImage.js +8 -4
  261. package/lib/renderers/Form/InputImage.js.map +2 -2
  262. package/lib/renderers/Form/InputMonthRange.js +1 -1
  263. package/lib/renderers/Form/InputMonthRange.js.map +2 -2
  264. package/lib/renderers/Form/InputQuarterRange.js +1 -1
  265. package/lib/renderers/Form/InputQuarterRange.js.map +2 -2
  266. package/lib/renderers/Form/InputYearRange.js +1 -1
  267. package/lib/renderers/Form/InputYearRange.js.map +2 -2
  268. package/lib/renderers/Form/Item.d.ts +10 -14
  269. package/lib/renderers/Form/Item.js +18 -9
  270. package/lib/renderers/Form/Item.js.map +2 -2
  271. package/lib/renderers/Form/NestedSelect.d.ts +1 -0
  272. package/lib/renderers/Form/NestedSelect.js +8 -4
  273. package/lib/renderers/Form/NestedSelect.js.map +2 -2
  274. package/lib/renderers/Form/Options.js +9 -7
  275. package/lib/renderers/Form/Options.js.map +2 -2
  276. package/lib/renderers/Form/Select.d.ts +2 -0
  277. package/lib/renderers/Form/Select.js +9 -6
  278. package/lib/renderers/Form/Select.js.map +2 -2
  279. package/lib/renderers/Form/TabsTransfer.d.ts +5 -32
  280. package/lib/renderers/Form/TabsTransfer.js +20 -1
  281. package/lib/renderers/Form/TabsTransfer.js.map +2 -2
  282. package/lib/renderers/Form/TabsTransferPicker.d.ts +5 -35
  283. package/lib/renderers/Form/TabsTransferPicker.js +21 -2
  284. package/lib/renderers/Form/TabsTransferPicker.js.map +2 -2
  285. package/lib/renderers/Form/Transfer.d.ts +15 -4
  286. package/lib/renderers/Form/Transfer.js +55 -18
  287. package/lib/renderers/Form/Transfer.js.map +2 -2
  288. package/lib/renderers/Form/TransferPicker.d.ts +3 -32
  289. package/lib/renderers/Form/TransferPicker.js +1 -1
  290. package/lib/renderers/Form/TransferPicker.js.map +2 -2
  291. package/lib/renderers/Form/TreeSelect.js +4 -4
  292. package/lib/renderers/Form/TreeSelect.js.map +2 -2
  293. package/lib/renderers/Form/index.js +10 -2
  294. package/lib/renderers/Form/index.js.map +2 -2
  295. package/lib/renderers/IFrame.js +0 -2
  296. package/lib/renderers/IFrame.js.map +2 -2
  297. package/lib/renderers/Link.d.ts +1 -1
  298. package/lib/renderers/Link.js +27 -6
  299. package/lib/renderers/Link.js.map +2 -2
  300. package/lib/renderers/Nav.d.ts +21 -21
  301. package/lib/renderers/Nav.js +4 -1
  302. package/lib/renderers/Nav.js.map +2 -2
  303. package/lib/renderers/Remark.d.ts +5 -1
  304. package/lib/renderers/Remark.js +39 -7
  305. package/lib/renderers/Remark.js.map +2 -2
  306. package/lib/renderers/Steps.js +5 -5
  307. package/lib/renderers/Steps.js.map +2 -2
  308. package/lib/renderers/Table/TableRow.js +4 -1
  309. package/lib/renderers/Table/TableRow.js.map +2 -2
  310. package/lib/renderers/Table/index.js +4 -1
  311. package/lib/renderers/Table/index.js.map +2 -2
  312. package/lib/renderers/Tabs.js +1 -1
  313. package/lib/renderers/Tabs.js.map +2 -2
  314. package/lib/renderers/Timeline.d.ts +65 -0
  315. package/lib/renderers/Timeline.js +54 -0
  316. package/lib/renderers/Timeline.js.map +13 -0
  317. package/lib/renderers/Video.js.map +2 -2
  318. package/lib/schemaExtend.js +23 -9
  319. package/lib/schemaExtend.js.map +2 -2
  320. package/lib/store/combo.js.map +2 -2
  321. package/lib/store/formItem.js +7 -7
  322. package/lib/store/formItem.js.map +2 -2
  323. package/lib/store/table.js +1 -1
  324. package/lib/store/table.js.map +2 -2
  325. package/lib/themes/ang-ie11.css +1149 -53
  326. package/lib/themes/ang.css +1149 -53
  327. package/lib/themes/ang.css.map +1 -1
  328. package/lib/themes/antd-ie11.css +1187 -53
  329. package/lib/themes/antd.css +1187 -53
  330. package/lib/themes/antd.css.map +1 -1
  331. package/lib/themes/cxd-ie11.css +1190 -71
  332. package/lib/themes/cxd.css +1190 -71
  333. package/lib/themes/cxd.css.map +1 -1
  334. package/lib/themes/dark-ie11.css +1152 -53
  335. package/lib/themes/dark.css +1152 -53
  336. package/lib/themes/dark.css.map +1 -1
  337. package/lib/themes/default.css +1190 -71
  338. package/lib/themes/default.css.map +1 -1
  339. package/lib/utils/RootClose.js +3 -1
  340. package/lib/utils/RootClose.js.map +2 -2
  341. package/lib/utils/api.js +14 -3
  342. package/lib/utils/api.js.map +2 -2
  343. package/lib/utils/debug.d.ts +26 -0
  344. package/lib/utils/debug.js +351 -0
  345. package/lib/utils/debug.js.map +13 -0
  346. package/lib/utils/helper.d.ts +1 -6
  347. package/lib/utils/helper.js +6 -17
  348. package/lib/utils/helper.js.map +2 -2
  349. package/lib/utils/renderer-event.d.ts +38 -0
  350. package/lib/utils/renderer-event.js +28 -0
  351. package/lib/utils/renderer-event.js.map +13 -0
  352. package/package.json +12 -6
  353. package/schema.json +3483 -810
  354. package/scss/_properties.scss +20 -6
  355. package/scss/_variables.scss +1 -0
  356. package/scss/components/_avatar.scss +27 -9
  357. package/scss/components/_calendar.scss +291 -0
  358. package/scss/components/_card.scss +1 -1
  359. package/scss/components/_cascader.scss +102 -0
  360. package/scss/components/_city-area.scss +27 -0
  361. package/scss/components/_collapse-group.scss +1 -3
  362. package/scss/components/_debug.scss +167 -0
  363. package/scss/components/_dropdown.scss +39 -9
  364. package/scss/components/_formula.scss +30 -6
  365. package/scss/components/_modal.scss +18 -0
  366. package/scss/components/_panel.scss +45 -0
  367. package/scss/components/_picker-columns.scss +15 -5
  368. package/scss/components/_popup.scss +43 -16
  369. package/scss/components/_result-box.scss +31 -0
  370. package/scss/components/_timeline.scss +198 -0
  371. package/scss/components/form/_checks.scss +2 -0
  372. package/scss/components/form/_color.scss +2 -2
  373. package/scss/components/form/_date-range.scss +34 -1
  374. package/scss/components/form/_date.scss +46 -1
  375. package/scss/components/form/_form.scss +170 -0
  376. package/scss/components/form/_nested-select.scss +3 -0
  377. package/scss/components/form/_result-list.scss +2 -0
  378. package/scss/components/form/_select.scss +32 -3
  379. package/scss/components/form/_selection.scss +5 -4
  380. package/scss/components/form/_transfer.scss +3 -0
  381. package/scss/components/form/_tree-select.scss +1 -1
  382. package/scss/themes/_antd-variables.scss +45 -0
  383. package/scss/themes/_common.scss +5 -0
  384. package/scss/themes/_cxd-variables.scss +51 -2
  385. package/scss/themes/_dark-variables.scss +4 -0
  386. package/scss/themes/cxd.scss +0 -19
  387. package/sdk/ang-ie11.css +1450 -142
  388. package/sdk/ang.css +1473 -159
  389. package/sdk/antd-ie11.css +1451 -142
  390. package/sdk/antd.css +1511 -159
  391. package/sdk/charts.js +15 -15
  392. package/sdk/codemirror.js +7 -7
  393. package/sdk/color-picker.js +65 -65
  394. package/sdk/cropperjs.js +2 -2
  395. package/sdk/cxd-ie11.css +1449 -159
  396. package/sdk/cxd.css +1514 -179
  397. package/sdk/dark-ie11.css +1450 -142
  398. package/sdk/dark.css +1476 -159
  399. package/sdk/exceljs.js +1 -1
  400. package/sdk/helper.css.map +1 -1
  401. package/sdk/locale/de-DE.js +17 -2
  402. package/sdk/markdown.js +69 -69
  403. package/sdk/papaparse.js +1 -1
  404. package/sdk/renderers/Form/CityDB.js +1 -1
  405. package/sdk/rest.js +18 -18
  406. package/sdk/rich-text.js +62 -62
  407. package/sdk/sdk-ie11.css +1449 -159
  408. package/sdk/sdk.css +1514 -179
  409. package/sdk/sdk.js +1311 -1253
  410. package/sdk/thirds/hls.js/hls.js +1 -1
  411. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  412. package/sdk/tinymce.js +57 -57
  413. package/src/RootRenderer.tsx +27 -1
  414. package/src/Schema.ts +3 -0
  415. package/src/SchemaRenderer.tsx +70 -4
  416. package/src/Scoped.tsx +46 -4
  417. package/src/actions/Action.ts +138 -0
  418. package/src/actions/AjaxAction.ts +58 -0
  419. package/src/actions/BreakAction.ts +27 -0
  420. package/src/actions/BroadcastAction.ts +41 -0
  421. package/src/actions/CmptAction.ts +36 -0
  422. package/src/actions/ContinueAction.ts +27 -0
  423. package/src/actions/CopyAction.ts +41 -0
  424. package/src/actions/CustomAction.ts +46 -0
  425. package/src/actions/DialogAction.ts +28 -0
  426. package/src/actions/DrawerAction.ts +28 -0
  427. package/src/actions/EmailAction.ts +38 -0
  428. package/src/actions/LoopAction.ts +77 -0
  429. package/src/actions/OpenPageAction.ts +39 -0
  430. package/src/actions/ParallelAction.ts +26 -0
  431. package/src/actions/SwitchAction.ts +35 -0
  432. package/src/actions/index.ts +20 -0
  433. package/src/components/AssociatedSelection.tsx +5 -1
  434. package/src/components/Avatar.tsx +253 -0
  435. package/src/components/BaiduMapPicker.tsx +19 -14
  436. package/src/components/CalendarMobile.tsx +658 -0
  437. package/src/components/Cascader.tsx +564 -0
  438. package/src/components/ChainedSelection.tsx +16 -3
  439. package/src/components/CityArea.tsx +315 -0
  440. package/src/components/ColorPicker.tsx +41 -40
  441. package/src/components/DatePicker.tsx +80 -34
  442. package/src/components/DateRangePicker.tsx +85 -30
  443. package/src/components/GroupedSelection.tsx +14 -2
  444. package/src/components/MonthRangePicker.tsx +78 -31
  445. package/src/components/Overlay.tsx +1 -1
  446. package/src/components/Picker.tsx +55 -35
  447. package/src/components/PickerColumn.tsx +43 -36
  448. package/src/components/PickerContainer.tsx +13 -1
  449. package/src/components/PopOverContainer.tsx +31 -17
  450. package/src/components/PopUp.tsx +84 -57
  451. package/src/components/ResultBox.tsx +14 -2
  452. package/src/components/ResultList.tsx +36 -6
  453. package/src/components/Select.tsx +24 -26
  454. package/src/components/Selection.tsx +21 -3
  455. package/src/components/Steps.tsx +23 -10
  456. package/src/components/TableSelection.tsx +1 -44
  457. package/src/components/Tabs.tsx +65 -54
  458. package/src/components/TabsTransfer.tsx +78 -9
  459. package/src/components/TabsTransferPicker.tsx +25 -13
  460. package/src/components/Timeline.tsx +36 -0
  461. package/src/components/TimelineItem.tsx +140 -0
  462. package/src/components/Transfer.tsx +11 -8
  463. package/src/components/TransferDropDown.tsx +20 -12
  464. package/src/components/TransferPicker.tsx +25 -4
  465. package/src/components/TreeSelection.tsx +7 -1
  466. package/src/components/calendar/Calendar.tsx +101 -4
  467. package/src/components/calendar/DaysView.tsx +165 -33
  468. package/src/components/calendar/MonthsView.tsx +108 -1
  469. package/src/components/calendar/QuartersView.tsx +3 -2
  470. package/src/components/calendar/TimeView.tsx +104 -41
  471. package/src/components/calendar/YearsView.tsx +34 -17
  472. package/src/components/condition-builder/Field.tsx +1 -3
  473. package/src/components/condition-builder/Func.tsx +1 -1
  474. package/src/components/formula/Editor.tsx +16 -11
  475. package/src/components/formula/FuncList.tsx +3 -1
  476. package/src/components/formula/Picker.tsx +2 -1
  477. package/src/components/formula/plugin.ts +0 -2
  478. package/src/components/icons.tsx +2 -0
  479. package/src/components/index.tsx +2 -0
  480. package/src/components/virtual-list/SizeAndPositionManager.ts +6 -3
  481. package/src/components/virtual-list/index.tsx +4 -6
  482. package/src/env.tsx +22 -0
  483. package/src/factory.tsx +93 -1
  484. package/src/icons/tree-down.svg +5 -0
  485. package/src/index.tsx +5 -0
  486. package/src/locale/de-DE.ts +17 -2
  487. package/src/locale/en-US.ts +17 -2
  488. package/src/locale/zh-CN.ts +16 -1
  489. package/src/renderers/Action.tsx +11 -2
  490. package/src/renderers/Avatar.tsx +83 -74
  491. package/src/renderers/CRUD.tsx +1 -3
  492. package/src/renderers/Card.tsx +10 -6
  493. package/src/renderers/Custom.tsx +7 -4
  494. package/src/renderers/DropDownButton.tsx +69 -35
  495. package/src/renderers/Each.tsx +4 -4
  496. package/src/renderers/Flex.tsx +3 -7
  497. package/src/renderers/Form/ChartRadios.tsx +2 -7
  498. package/src/renderers/Form/Checkboxes.tsx +1 -1
  499. package/src/renderers/Form/CityDB.ts +526 -2
  500. package/src/renderers/Form/DiffEditor.tsx +2 -3
  501. package/src/renderers/Form/InputCity.tsx +23 -3
  502. package/src/renderers/Form/InputColor.tsx +21 -2
  503. package/src/renderers/Form/InputDate.tsx +48 -20
  504. package/src/renderers/Form/InputDateRange.tsx +9 -2
  505. package/src/renderers/Form/InputFormula.tsx +9 -4
  506. package/src/renderers/Form/InputImage.tsx +9 -4
  507. package/src/renderers/Form/InputMonthRange.tsx +0 -1
  508. package/src/renderers/Form/InputQuarterRange.tsx +0 -1
  509. package/src/renderers/Form/InputYearRange.tsx +0 -1
  510. package/src/renderers/Form/Item.tsx +29 -8
  511. package/src/renderers/Form/NestedSelect.tsx +32 -4
  512. package/src/renderers/Form/Options.tsx +15 -7
  513. package/src/renderers/Form/Select.tsx +21 -5
  514. package/src/renderers/Form/TabsTransfer.tsx +28 -38
  515. package/src/renderers/Form/TabsTransferPicker.tsx +28 -46
  516. package/src/renderers/Form/Transfer.tsx +75 -24
  517. package/src/renderers/Form/TransferPicker.tsx +6 -38
  518. package/src/renderers/Form/TreeSelect.tsx +18 -16
  519. package/src/renderers/Form/index.tsx +9 -2
  520. package/src/renderers/IFrame.tsx +0 -2
  521. package/src/renderers/Link.tsx +18 -3
  522. package/src/renderers/Nav.tsx +4 -1
  523. package/src/renderers/Remark.tsx +68 -18
  524. package/src/renderers/Steps.tsx +11 -13
  525. package/src/renderers/Table/TableRow.tsx +3 -1
  526. package/src/renderers/Table/index.tsx +7 -1
  527. package/src/renderers/Tabs.tsx +6 -2
  528. package/src/renderers/Timeline.tsx +141 -0
  529. package/src/renderers/Video.tsx +4 -20
  530. package/src/schemaExtend.ts +22 -10
  531. package/src/store/combo.ts +1 -3
  532. package/src/store/formItem.ts +3 -3
  533. package/src/store/table.ts +2 -1
  534. package/src/utils/RootClose.ts +5 -1
  535. package/src/utils/api.ts +15 -2
  536. package/src/utils/debug.tsx +438 -0
  537. package/src/utils/helper.ts +6 -16
  538. package/src/utils/renderer-event.ts +75 -0
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/Form/Select.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import React from 'react';\nimport cx from 'classnames';\nimport {\n OptionsControl,\n OptionsControlProps,\n Option,\n FormOptionsControl\n} from './Options';\nimport Select, {normalizeOptions} from '../../components/Select';\nimport find from 'lodash/find';\nimport debouce from 'lodash/debounce';\nimport {Api} from '../../types';\nimport {isEffectiveApi} from '../../utils/api';\nimport {isEmpty, createObject, autobind} from '../../utils/helper';\nimport {dataMapping} from '../../utils/tpl-builtin';\nimport {SchemaApi} from '../../Schema';\nimport Spinner from '../../components/Spinner';\nimport {BaseTransferRenderer, TransferControlSchema} from './Transfer';\nimport TransferDropDown from '../../components/TransferDropDown';\n\n/**\n * Select 下拉选择框。\n * 文档:https://baidu.gitee.io/amis/docs/components/form/select\n */\nexport interface SelectControlSchema extends FormOptionsControl {\n type: 'select' | 'multi-select';\n\n /**\n * 自动完成 API,当输入部分文字的时候,会将这些文字通过 ${term} 可以取到,发送给接口。\n * 接口可以返回匹配到的选项,帮助用户输入。\n */\n autoComplete?: SchemaApi;\n\n /**\n * 可以自定义菜单展示。\n */\n menuTpl?: string;\n\n /**\n * 边框模式,全边框,还是半边框,或者没边框。\n */\n borderMode?: 'full' | 'half' | 'none';\n\n /**\n * 勾选展示模式\n */\n selectMode?: 'table' | 'group' | 'tree' | 'chained' | 'associated';\n\n /**\n * 当 selectMode 为 associated 时用来定义左侧的选项\n */\n leftOptions?: Array<Option>;\n\n /**\n * 当 selectMode 为 associated 时用来定义左侧的选择模式\n */\n leftMode?: 'tree' | 'list';\n\n /**\n * 当 selectMode 为 associated 时用来定义右侧的选择模式\n */\n rightMode?: 'table' | 'list' | 'tree' | 'chained';\n\n /**\n * 搜索结果展示模式\n */\n searchResultMode?: 'table' | 'list' | 'tree' | 'chained';\n\n /**\n * 当 selectMode 为 table 时定义表格列信息。\n */\n columns?: Array<any>;\n\n /**\n * 当 searchResultMode 为 table 时定义表格列信息。\n */\n searchResultColumns?: Array<any>;\n\n /**\n * 可搜索?\n */\n searchable?: boolean;\n\n /**\n * 搜索 API\n */\n searchApi?: SchemaApi;\n}\n\nexport interface SelectProps extends OptionsControlProps {\n autoComplete?: Api;\n searchable?: boolean;\n defaultOpen?: boolean;\n}\n\nexport default class SelectControl extends React.Component<SelectProps, any> {\n static defaultProps: Partial<SelectProps> = {\n clearable: false,\n searchable: false,\n multiple: false\n };\n\n input: any;\n unHook: Function;\n lazyloadRemote: Function;\n constructor(props: SelectProps) {\n super(props);\n\n this.changeValue = this.changeValue.bind(this);\n this.lazyloadRemote = debouce(this.loadRemote.bind(this), 250, {\n trailing: true,\n leading: false\n });\n this.inputRef = this.inputRef.bind(this);\n }\n\n componentWillUnmount() {\n this.unHook && this.unHook();\n }\n\n inputRef(ref: any) {\n this.input = ref;\n }\n\n foucs() {\n this.input && this.input.focus();\n }\n\n changeValue(value: Option | Array<Option> | void) {\n const {\n joinValues,\n extractValue,\n delimiter,\n multiple,\n type,\n valueField,\n onChange,\n setOptions,\n options\n } = this.props;\n\n let newValue: string | Option | Array<Option> | void = value;\n let additonalOptions: Array<any> = [];\n\n (Array.isArray(value) ? value : value ? [value] : []).forEach(\n (option: any) => {\n let resolved = find(\n options,\n (item: any) =>\n item[valueField || 'value'] == option[valueField || 'value']\n );\n resolved || additonalOptions.push(option);\n }\n );\n\n if (joinValues) {\n if (multiple) {\n newValue = Array.isArray(value)\n ? (value\n .map(item => item[valueField || 'value'])\n .join(delimiter) as string)\n : value\n ? (value as Option)[valueField || 'value']\n : '';\n } else {\n newValue = newValue ? (newValue as Option)[valueField || 'value'] : '';\n }\n } else if (extractValue) {\n if (multiple) {\n newValue = Array.isArray(value)\n ? value.map(item => item[valueField || 'value'])\n : value\n ? [(value as Option)[valueField || 'value']]\n : [''];\n } else {\n newValue = newValue ? (newValue as Option)[valueField || 'value'] : '';\n }\n }\n\n // 不设置没法回显\n additonalOptions.length && setOptions(options.concat(additonalOptions));\n\n onChange(newValue);\n }\n\n async loadRemote(input: string) {\n const {\n autoComplete,\n env,\n data,\n setOptions,\n setLoading,\n formInited,\n addHook\n } = this.props;\n\n if (!env || !env.fetcher) {\n throw new Error('fetcher is required');\n }\n\n if (!formInited) {\n this.unHook && this.unHook();\n return (this.unHook = addHook(this.loadRemote.bind(this, input), 'init'));\n }\n\n const ctx = createObject(data, {\n term: input,\n value: input\n });\n\n if (!isEffectiveApi(autoComplete, ctx)) {\n return Promise.resolve({\n options: []\n });\n }\n\n setLoading(true);\n try {\n const ret = await env.fetcher(autoComplete, ctx);\n\n let options = (ret.data && (ret.data as any).options) || ret.data || [];\n let combinedOptions = this.mergeOptions(options);\n setOptions(combinedOptions);\n\n return {\n options: combinedOptions\n };\n } finally {\n setLoading(false);\n }\n }\n\n mergeOptions(options: Array<object>) {\n const {selectedOptions} = this.props;\n let combinedOptions = normalizeOptions(options).concat();\n\n if (Array.isArray(selectedOptions) && selectedOptions.length) {\n selectedOptions.forEach(option => {\n if (\n !find(combinedOptions, (item: Option) => item.value == option.value)\n ) {\n combinedOptions.push({\n ...option,\n hidden: true\n });\n }\n });\n }\n return combinedOptions;\n }\n\n @autobind\n renderMenu(option: Option, state: any) {\n const {menuTpl, render, data} = this.props;\n\n return render(`menu/${state.index}`, menuTpl, {\n data: createObject(createObject(data, state), option)\n });\n }\n\n reload() {\n const reload = this.props.reloadOptions;\n reload && reload();\n }\n\n option2value() {}\n\n renderOtherMode() {\n const {selectMode, ...rest} = this.props;\n return (\n <TransferDropdownRenderer\n {...rest}\n selectMode={selectMode === 'group' ? 'list' : selectMode}\n />\n );\n }\n\n render() {\n let {\n autoComplete,\n searchable,\n options,\n className,\n loading,\n value,\n selectedOptions,\n multi,\n multiple,\n placeholder,\n id,\n classPrefix,\n classnames,\n creatable,\n inline,\n noResultsText,\n render,\n menuTpl,\n borderMode,\n selectMode,\n env,\n ...rest\n } = this.props;\n\n if (noResultsText) {\n noResultsText = render('noResultText', noResultsText);\n }\n\n return (\n <div className={cx(`${classPrefix}SelectControl`, className)}>\n {['table', 'list', 'group', 'tree', 'chained', 'associated'].includes(\n selectMode\n ) ? (\n this.renderOtherMode()\n ) : (\n <Select\n {...rest}\n useMobileUI={env.useMobileUI}\n borderMode={borderMode}\n placeholder={placeholder}\n multiple={multiple || multi}\n ref={this.inputRef}\n value={selectedOptions}\n options={options}\n loadOptions={\n isEffectiveApi(autoComplete) ? this.lazyloadRemote : undefined\n }\n creatable={creatable}\n searchable={searchable || !!autoComplete}\n onChange={this.changeValue}\n loading={loading}\n noResultsText={noResultsText}\n renderMenu={menuTpl ? this.renderMenu : undefined}\n />\n )}\n </div>\n );\n }\n}\n\nexport interface TransferDropDownProps\n extends OptionsControlProps,\n Omit<\n TransferControlSchema,\n | 'type'\n | 'options'\n | 'inputClassName'\n | 'className'\n | 'descriptionClassName'\n > {\n borderMode?: 'full' | 'half' | 'none';\n}\n\nclass TransferDropdownRenderer extends BaseTransferRenderer<TransferDropDownProps> {\n render() {\n const {\n className,\n classnames: cx,\n selectedOptions,\n sortable,\n loading,\n searchable,\n searchResultMode,\n showArrow,\n deferLoad,\n disabled,\n selectTitle,\n selectMode,\n multiple,\n columns,\n leftMode,\n borderMode\n } = this.props;\n\n // 目前 LeftOptions 没有接口可以动态加载\n // 为了方便可以快速实现动态化,让选项的第一个成员携带\n // LeftOptions 信息\n let {options, leftOptions, leftDefaultValue} = this.props;\n if (\n selectMode === 'associated' &&\n options &&\n options.length === 1 &&\n options[0].leftOptions &&\n Array.isArray(options[0].children)\n ) {\n leftOptions = options[0].leftOptions;\n leftDefaultValue = options[0].leftDefaultValue ?? leftDefaultValue;\n options = options[0].children;\n }\n\n return (\n <>\n <TransferDropDown\n selectMode={selectMode}\n className={className}\n value={selectedOptions}\n disabled={disabled}\n options={options}\n onChange={this.handleChange}\n option2value={this.option2value}\n sortable={sortable}\n searchResultMode={searchResultMode}\n onSearch={searchable ? this.handleSearch : undefined}\n showArrow={showArrow}\n onDeferLoad={deferLoad}\n selectTitle={selectTitle}\n multiple={multiple}\n columns={columns}\n leftMode={leftMode}\n leftOptions={leftOptions}\n borderMode={borderMode}\n />\n\n <Spinner overlay key=\"info\" show={loading} />\n </>\n );\n }\n}\n\n@OptionsControl({\n type: 'select'\n})\nexport class SelectControlRenderer extends SelectControl {}\n\n@OptionsControl({\n type: 'multi-select'\n})\nexport class MultiSelectControlRenderer extends SelectControl {\n static defaultProps = {\n multiple: true\n };\n}\n"
11
+ "import React from 'react';\nimport cx from 'classnames';\nimport {\n OptionsControl,\n OptionsControlProps,\n Option,\n FormOptionsControl\n} from './Options';\nimport Select, {normalizeOptions} from '../../components/Select';\nimport find from 'lodash/find';\nimport debouce from 'lodash/debounce';\nimport {Api} from '../../types';\nimport {isEffectiveApi} from '../../utils/api';\nimport {isEmpty, createObject, autobind, isMobile} from '../../utils/helper';\nimport {dataMapping} from '../../utils/tpl-builtin';\nimport {SchemaApi} from '../../Schema';\nimport Spinner from '../../components/Spinner';\nimport {BaseTransferRenderer, TransferControlSchema} from './Transfer';\nimport TransferDropDown from '../../components/TransferDropDown';\n\n/**\n * Select 下拉选择框。\n * 文档:https://baidu.gitee.io/amis/docs/components/form/select\n */\nexport interface SelectControlSchema extends FormOptionsControl {\n type: 'select' | 'multi-select';\n\n /**\n * 自动完成 API,当输入部分文字的时候,会将这些文字通过 ${term} 可以取到,发送给接口。\n * 接口可以返回匹配到的选项,帮助用户输入。\n */\n autoComplete?: SchemaApi;\n\n /**\n * 可以自定义菜单展示。\n */\n menuTpl?: string;\n\n /**\n * 边框模式,全边框,还是半边框,或者没边框。\n */\n borderMode?: 'full' | 'half' | 'none';\n\n /**\n * 勾选展示模式\n */\n selectMode?: 'table' | 'group' | 'tree' | 'chained' | 'associated';\n\n /**\n * 当 selectMode 为 associated 时用来定义左侧的选项\n */\n leftOptions?: Array<Option>;\n\n /**\n * 当 selectMode 为 associated 时用来定义左侧的选择模式\n */\n leftMode?: 'tree' | 'list';\n\n /**\n * 当 selectMode 为 associated 时用来定义右侧的选择模式\n */\n rightMode?: 'table' | 'list' | 'tree' | 'chained';\n\n /**\n * 搜索结果展示模式\n */\n searchResultMode?: 'table' | 'list' | 'tree' | 'chained';\n\n /**\n * 当 selectMode 为 table 时定义表格列信息。\n */\n columns?: Array<any>;\n\n /**\n * 当 searchResultMode 为 table 时定义表格列信息。\n */\n searchResultColumns?: Array<any>;\n\n /**\n * 可搜索?\n */\n searchable?: boolean;\n\n /**\n * 搜索 API\n */\n searchApi?: SchemaApi;\n}\n\nexport interface SelectProps extends OptionsControlProps {\n autoComplete?: Api;\n searchable?: boolean;\n defaultOpen?: boolean;\n useMobileUI?: boolean;\n}\n\nexport default class SelectControl extends React.Component<SelectProps, any> {\n static defaultProps: Partial<SelectProps> = {\n clearable: false,\n searchable: false,\n multiple: false\n };\n\n input: any;\n unHook: Function;\n lazyloadRemote: Function;\n constructor(props: SelectProps) {\n super(props);\n\n this.changeValue = this.changeValue.bind(this);\n this.lazyloadRemote = debouce(this.loadRemote.bind(this), 250, {\n trailing: true,\n leading: false\n });\n this.inputRef = this.inputRef.bind(this);\n }\n\n componentWillUnmount() {\n this.unHook && this.unHook();\n }\n\n inputRef(ref: any) {\n this.input = ref;\n }\n\n foucs() {\n this.input && this.input.focus();\n }\n\n changeValue(value: Option | Array<Option> | void) {\n const {\n joinValues,\n extractValue,\n delimiter,\n multiple,\n type,\n valueField,\n onChange,\n setOptions,\n options\n } = this.props;\n\n let newValue: string | Option | Array<Option> | void = value;\n let additonalOptions: Array<any> = [];\n\n (Array.isArray(value) ? value : value ? [value] : []).forEach(\n (option: any) => {\n let resolved = find(\n options,\n (item: any) =>\n item[valueField || 'value'] == option[valueField || 'value']\n );\n resolved || additonalOptions.push(option);\n }\n );\n\n if (joinValues) {\n if (multiple) {\n newValue = Array.isArray(value)\n ? (value\n .map(item => item[valueField || 'value'])\n .join(delimiter) as string)\n : value\n ? (value as Option)[valueField || 'value']\n : '';\n } else {\n newValue = newValue ? (newValue as Option)[valueField || 'value'] : '';\n }\n } else if (extractValue) {\n if (multiple) {\n newValue = Array.isArray(value)\n ? value.map(item => item[valueField || 'value'])\n : value\n ? [(value as Option)[valueField || 'value']]\n : [''];\n } else {\n newValue = newValue ? (newValue as Option)[valueField || 'value'] : '';\n }\n }\n\n // 不设置没法回显\n additonalOptions.length && setOptions(options.concat(additonalOptions));\n\n onChange(newValue);\n }\n\n async loadRemote(input: string) {\n const {\n autoComplete,\n env,\n data,\n setOptions,\n setLoading,\n formInited,\n addHook\n } = this.props;\n\n if (!env || !env.fetcher) {\n throw new Error('fetcher is required');\n }\n\n if (!formInited) {\n this.unHook && this.unHook();\n return (this.unHook = addHook(this.loadRemote.bind(this, input), 'init'));\n }\n\n const ctx = createObject(data, {\n term: input,\n value: input\n });\n\n if (!isEffectiveApi(autoComplete, ctx)) {\n return Promise.resolve({\n options: []\n });\n }\n\n setLoading(true);\n try {\n const ret = await env.fetcher(autoComplete, ctx);\n\n let options = (ret.data && (ret.data as any).options) || ret.data || [];\n let combinedOptions = this.mergeOptions(options);\n setOptions(combinedOptions);\n\n return {\n options: combinedOptions\n };\n } finally {\n setLoading(false);\n }\n }\n\n mergeOptions(options: Array<object>) {\n const {selectedOptions, valueField = 'value'} = this.props;\n let combinedOptions = normalizeOptions(\n options,\n undefined,\n valueField\n ).concat();\n\n if (Array.isArray(selectedOptions) && selectedOptions.length) {\n selectedOptions.forEach(option => {\n if (\n !find(combinedOptions, (item: Option) => item.value == option.value)\n ) {\n combinedOptions.push({\n ...option,\n hidden: true\n });\n }\n });\n }\n return combinedOptions;\n }\n\n @autobind\n renderMenu(option: Option, state: any) {\n const {menuTpl, render, data} = this.props;\n\n return render(`menu/${state.index}`, menuTpl, {\n data: createObject(createObject(data, state), option)\n });\n }\n\n reload() {\n const reload = this.props.reloadOptions;\n reload && reload();\n }\n\n option2value() {}\n\n renderOtherMode() {\n const {selectMode, ...rest} = this.props;\n return (\n <TransferDropdownRenderer\n {...rest}\n selectMode={selectMode === 'group' ? 'list' : selectMode}\n />\n );\n }\n\n render() {\n let {\n autoComplete,\n searchable,\n options,\n className,\n loading,\n value,\n selectedOptions,\n multi,\n multiple,\n placeholder,\n id,\n classPrefix,\n classnames,\n creatable,\n inline,\n noResultsText,\n render,\n menuTpl,\n borderMode,\n selectMode,\n env,\n useMobileUI,\n ...rest\n } = this.props;\n\n if (noResultsText) {\n noResultsText = render('noResultText', noResultsText);\n }\n\n const mobileUI = useMobileUI && isMobile();\n\n return (\n <div className={cx(`${classPrefix}SelectControl`, className)}>\n {['table', 'list', 'group', 'tree', 'chained', 'associated'].includes(\n selectMode\n ) ? (\n this.renderOtherMode()\n ) : (\n <Select\n {...rest}\n useMobileUI={useMobileUI}\n popOverContainer={\n mobileUI && env && env.getModalContainer\n ? env.getModalContainer\n : rest.popOverContainer\n }\n borderMode={borderMode}\n placeholder={placeholder}\n multiple={multiple || multi}\n ref={this.inputRef}\n value={selectedOptions}\n options={options}\n loadOptions={\n isEffectiveApi(autoComplete) ? this.lazyloadRemote : undefined\n }\n creatable={creatable}\n searchable={searchable || !!autoComplete}\n onChange={this.changeValue}\n loading={loading}\n noResultsText={noResultsText}\n renderMenu={menuTpl ? this.renderMenu : undefined}\n />\n )}\n </div>\n );\n }\n}\n\nexport interface TransferDropDownProps\n extends OptionsControlProps,\n Omit<\n TransferControlSchema,\n | 'type'\n | 'options'\n | 'inputClassName'\n | 'className'\n | 'descriptionClassName'\n > {\n borderMode?: 'full' | 'half' | 'none';\n useMobileUI?: boolean;\n}\n\nclass TransferDropdownRenderer extends BaseTransferRenderer<TransferDropDownProps> {\n render() {\n const {\n className,\n classnames: cx,\n selectedOptions,\n sortable,\n loading,\n searchable,\n searchResultMode,\n showArrow,\n deferLoad,\n disabled,\n selectTitle,\n selectMode,\n multiple,\n columns,\n leftMode,\n borderMode,\n useMobileUI\n } = this.props;\n\n // 目前 LeftOptions 没有接口可以动态加载\n // 为了方便可以快速实现动态化,让选项的第一个成员携带\n // LeftOptions 信息\n let {options, leftOptions, leftDefaultValue} = this.props;\n if (\n selectMode === 'associated' &&\n options &&\n options.length === 1 &&\n options[0].leftOptions &&\n Array.isArray(options[0].children)\n ) {\n leftOptions = options[0].leftOptions;\n leftDefaultValue = options[0].leftDefaultValue ?? leftDefaultValue;\n options = options[0].children;\n }\n\n return (\n <>\n <TransferDropDown\n selectMode={selectMode}\n className={className}\n value={selectedOptions}\n disabled={disabled}\n options={options}\n onChange={this.handleChange}\n option2value={this.option2value}\n sortable={sortable}\n searchResultMode={searchResultMode}\n onSearch={searchable ? this.handleSearch : undefined}\n showArrow={showArrow}\n onDeferLoad={deferLoad}\n selectTitle={selectTitle}\n multiple={multiple}\n columns={columns}\n leftMode={leftMode}\n leftOptions={leftOptions}\n borderMode={borderMode}\n useMobileUI={useMobileUI}\n />\n\n <Spinner overlay key=\"info\" show={loading} />\n </>\n );\n }\n}\n\n@OptionsControl({\n type: 'select'\n})\nexport class SelectControlRenderer extends SelectControl {}\n\n@OptionsControl({\n type: 'multi-select'\n})\nexport class MultiSelectControlRenderer extends SelectControl {\n static defaultProps = {\n multiple: true\n };\n}\n"
12
12
  ]
13
13
  }
@@ -1,44 +1,17 @@
1
1
  /// <reference types="react" />
2
- import { OptionsControlProps, FormOptionsControl } from './Options';
3
- import { BaseTransferRenderer } from './Transfer';
4
- import { SchemaApi } from '../../Schema';
2
+ import { OptionsControlProps } from './Options';
3
+ import { BaseTransferRenderer, TransferControlSchema } from './Transfer';
4
+ import { ItemRenderStates } from '../../components/Selection';
5
5
  /**
6
6
  * TabsTransfer
7
7
  * 文档:https://baidu.gitee.io/amis/docs/components/form/tabs-transfer
8
8
  */
9
- export interface TabsTransferControlSchema extends FormOptionsControl {
9
+ export interface TabsTransferControlSchema extends Omit<TransferControlSchema, 'type'> {
10
10
  type: 'tabs-transfer';
11
- /**
12
- * 是否显示剪头
13
- */
14
- showArrow?: boolean;
15
- /**
16
- * 可排序?
17
- */
18
- sortable?: boolean;
19
- /**
20
- * 搜索结果展示模式
21
- */
22
- searchResultMode?: 'table' | 'list' | 'tree' | 'chained';
23
- /**
24
- * 可搜索?
25
- */
26
- searchable?: boolean;
27
- /**
28
- * 搜索 API
29
- */
30
- searchApi?: SchemaApi;
31
- /**
32
- * 左侧的标题文字
33
- */
34
- selectTitle?: string;
35
- /**
36
- * 右侧结果的标题文字
37
- */
38
- resultTitle?: string;
39
11
  }
40
12
  export interface TabsTransferProps extends OptionsControlProps, Omit<TabsTransferControlSchema, 'type' | 'options' | 'inputClassName' | 'className' | 'descriptionClassName'> {
41
13
  }
42
14
  export declare class TabsTransferRenderer extends BaseTransferRenderer<TabsTransferProps> {
15
+ optionItemRender(option: any, states: ItemRenderStates): JSX.Element;
43
16
  render(): JSX.Element;
44
17
  }
@@ -7,17 +7,36 @@ var react_1 = (0, tslib_1.__importDefault)(require("react"));
7
7
  var Spinner_1 = (0, tslib_1.__importDefault)(require("../../components/Spinner"));
8
8
  var Transfer_1 = require("./Transfer");
9
9
  var TabsTransfer_1 = (0, tslib_1.__importDefault)(require("../../components/TabsTransfer"));
10
+ var helper_1 = require("../../utils/helper");
11
+ var Selection_1 = require("../../components/Selection");
10
12
  var TabsTransferRenderer = /** @class */ (function (_super) {
11
13
  (0, tslib_1.__extends)(TabsTransferRenderer, _super);
12
14
  function TabsTransferRenderer() {
13
15
  return _super !== null && _super.apply(this, arguments) || this;
14
16
  }
17
+ TabsTransferRenderer.prototype.optionItemRender = function (option, states) {
18
+ var _a = this.props, menuTpl = _a.menuTpl, render = _a.render, data = _a.data;
19
+ var ctx = arguments[2] || {};
20
+ if (menuTpl) {
21
+ return render("item/" + states.index, menuTpl, {
22
+ data: (0, helper_1.createObject)((0, helper_1.createObject)(data, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, states), ctx)), option)
23
+ });
24
+ }
25
+ return Selection_1.BaseSelection.itemRender(option, states);
26
+ };
15
27
  TabsTransferRenderer.prototype.render = function () {
16
28
  var _a = this.props, className = _a.className, cx = _a.classnames, options = _a.options, selectedOptions = _a.selectedOptions, sortable = _a.sortable, loading = _a.loading, searchable = _a.searchable, searchResultMode = _a.searchResultMode, showArrow = _a.showArrow, deferLoad = _a.deferLoad, disabled = _a.disabled, selectTitle = _a.selectTitle, resultTitle = _a.resultTitle;
17
29
  return (react_1.default.createElement("div", { className: cx('TabsTransferControl', className) },
18
- react_1.default.createElement(TabsTransfer_1.default, { value: selectedOptions, disabled: disabled, options: options, onChange: this.handleChange, option2value: this.option2value, sortable: sortable, searchResultMode: searchResultMode, onSearch: searchable ? this.handleSearch : undefined, showArrow: showArrow, onDeferLoad: deferLoad, selectTitle: selectTitle, resultTitle: resultTitle }),
30
+ react_1.default.createElement(TabsTransfer_1.default, { value: selectedOptions, disabled: disabled, options: options, onChange: this.handleChange, option2value: this.option2value, sortable: sortable, searchResultMode: searchResultMode, onSearch: searchable ? this.handleSearch : undefined, showArrow: showArrow, onDeferLoad: deferLoad, selectTitle: selectTitle, resultTitle: resultTitle, optionItemRender: this.optionItemRender, resultItemRender: this.resultItemRender }),
19
31
  react_1.default.createElement(Spinner_1.default, { overlay: true, key: "info", show: loading })));
20
32
  };
33
+ var _a;
34
+ (0, tslib_1.__decorate)([
35
+ helper_1.autobind,
36
+ (0, tslib_1.__metadata)("design:type", Function),
37
+ (0, tslib_1.__metadata)("design:paramtypes", [Object, typeof (_a = typeof Selection_1.ItemRenderStates !== "undefined" && Selection_1.ItemRenderStates) === "function" ? _a : Object]),
38
+ (0, tslib_1.__metadata)("design:returntype", void 0)
39
+ ], TabsTransferRenderer.prototype, "optionItemRender", null);
21
40
  TabsTransferRenderer = (0, tslib_1.__decorate)([
22
41
  (0, Options_1.OptionsControl)({
23
42
  type: 'tabs-transfer'
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/Form/TabsTransfer.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": ";;;;AAAA,qCAImB;AACnB,6DAA0B;AAE1B,kFAA+C;AAC/C,uCAAgD;AAChD,4FAAyD;AA4DzD;IAA0C,qDAAuC;IAAjF;;IAuCA,CAAC;IAtCC,qCAAM,GAAN;QACQ,IAAA,KAcF,IAAI,CAAC,KAAK,EAbZ,SAAS,eAAA,EACG,EAAE,gBAAA,EACd,OAAO,aAAA,EACP,eAAe,qBAAA,EACf,QAAQ,cAAA,EACR,OAAO,aAAA,EACP,UAAU,gBAAA,EACV,gBAAgB,sBAAA,EAChB,SAAS,eAAA,EACT,SAAS,eAAA,EACT,QAAQ,cAAA,EACR,WAAW,iBAAA,EACX,WAAW,iBACC,CAAC;QAEf,OAAO,CACL,uCAAK,SAAS,EAAE,EAAE,CAAC,qBAAqB,EAAE,SAAS,CAAC;YAClD,8BAAC,sBAAY,IACX,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,IAAI,CAAC,YAAY,EAC3B,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,EACpD,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,SAAS,EACtB,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW,GACxB;YAEF,8BAAC,iBAAO,IAAC,OAAO,QAAC,GAAG,EAAC,MAAM,EAAC,IAAI,EAAE,OAAO,GAAI,CACzC,CACP,CAAC;IACJ,CAAC;IAtCU,oBAAoB;QAHhC,IAAA,wBAAc,EAAC;YACd,IAAI,EAAE,eAAe;SACtB,CAAC;OACW,oBAAoB,CAuChC;IAAD,2BAAC;CAAA,AAvCD,CAA0C,+BAAoB,GAuC7D;AAvCY,oDAAoB",
9
+ "mappings": ";;;;AAAA,qCAImB;AACnB,6DAA0B;AAE1B,kFAA+C;AAC/C,uCAAuE;AACvE,4FAAyD;AAEzD,6CAA0D;AAC1D,wDAA2E;AAyB3E;IAA0C,qDAAuC;IAAjF;;IA6DA,CAAC;IA3DC,+CAAgB,GAAhB,UAAiB,MAAW,EAAE,MAAwB;QAC9C,IAAA,KAA0B,IAAI,CAAC,KAAK,EAAnC,OAAO,aAAA,EAAE,MAAM,YAAA,EAAE,IAAI,UAAc,CAAC;QAC3C,IAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAE/B,IAAI,OAAO,EAAE;YACX,OAAO,MAAM,CAAC,UAAQ,MAAM,CAAC,KAAO,EAAE,OAAO,EAAE;gBAC7C,IAAI,EAAE,IAAA,qBAAY,EAChB,IAAA,qBAAY,EAAC,IAAI,kDACZ,MAAM,GACN,GAAG,EACN,EACF,MAAM,CACP;aACF,CAAC,CAAC;SACJ;QAED,OAAO,yBAAa,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClD,CAAC;IAED,qCAAM,GAAN;QACQ,IAAA,KAcF,IAAI,CAAC,KAAK,EAbZ,SAAS,eAAA,EACG,EAAE,gBAAA,EACd,OAAO,aAAA,EACP,eAAe,qBAAA,EACf,QAAQ,cAAA,EACR,OAAO,aAAA,EACP,UAAU,gBAAA,EACV,gBAAgB,sBAAA,EAChB,SAAS,eAAA,EACT,SAAS,eAAA,EACT,QAAQ,cAAA,EACR,WAAW,iBAAA,EACX,WAAW,iBACC,CAAC;QAEf,OAAO,CACL,uCAAK,SAAS,EAAE,EAAE,CAAC,qBAAqB,EAAE,SAAS,CAAC;YAClD,8BAAC,sBAAY,IACX,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,IAAI,CAAC,YAAY,EAC3B,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,EACpD,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,SAAS,EACtB,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EACvC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,GACvC;YAEF,8BAAC,iBAAO,IAAC,OAAO,QAAC,GAAG,EAAC,MAAM,EAAC,IAAI,EAAE,OAAO,GAAI,CACzC,CACP,CAAC;IACJ,CAAC;;IA1DD;QADC,iBAAQ;;kFAC6B,4BAAgB,oBAAhB,4BAAgB;;gEAiBrD;IAnBU,oBAAoB;QAHhC,IAAA,wBAAc,EAAC;YACd,IAAI,EAAE,eAAe;SACtB,CAAC;OACW,oBAAoB,CA6DhC;IAAD,2BAAC;CAAA,AA7DD,CAA0C,+BAAoB,GA6D7D;AA7DY,oDAAoB",
10
10
  "sourcesContent": [
11
- "import {\n OptionsControlProps,\n OptionsControl,\n FormOptionsControl\n} from './Options';\nimport React from 'react';\nimport {Api} from '../../types';\nimport Spinner from '../../components/Spinner';\nimport {BaseTransferRenderer} from './Transfer';\nimport TabsTransfer from '../../components/TabsTransfer';\nimport {SchemaApi} from '../../Schema';\n\n/**\n * TabsTransfer\n * 文档:https://baidu.gitee.io/amis/docs/components/form/tabs-transfer\n */\nexport interface TabsTransferControlSchema extends FormOptionsControl {\n type: 'tabs-transfer';\n\n /**\n * 是否显示剪头\n */\n showArrow?: boolean;\n\n /**\n * 可排序?\n */\n sortable?: boolean;\n\n /**\n * 搜索结果展示模式\n */\n searchResultMode?: 'table' | 'list' | 'tree' | 'chained';\n\n /**\n * 可搜索?\n */\n searchable?: boolean;\n\n /**\n * 搜索 API\n */\n searchApi?: SchemaApi;\n\n /**\n * 左侧的标题文字\n */\n selectTitle?: string;\n\n /**\n * 右侧结果的标题文字\n */\n resultTitle?: string;\n}\n\nexport interface TabsTransferProps\n extends OptionsControlProps,\n Omit<\n TabsTransferControlSchema,\n | 'type'\n | 'options'\n | 'inputClassName'\n | 'className'\n | 'descriptionClassName'\n > {}\n\n@OptionsControl({\n type: 'tabs-transfer'\n})\nexport class TabsTransferRenderer extends BaseTransferRenderer<TabsTransferProps> {\n render() {\n const {\n className,\n classnames: cx,\n options,\n selectedOptions,\n sortable,\n loading,\n searchable,\n searchResultMode,\n showArrow,\n deferLoad,\n disabled,\n selectTitle,\n resultTitle\n } = this.props;\n\n return (\n <div className={cx('TabsTransferControl', className)}>\n <TabsTransfer\n value={selectedOptions}\n disabled={disabled}\n options={options}\n onChange={this.handleChange}\n option2value={this.option2value}\n sortable={sortable}\n searchResultMode={searchResultMode}\n onSearch={searchable ? this.handleSearch : undefined}\n showArrow={showArrow}\n onDeferLoad={deferLoad}\n selectTitle={selectTitle}\n resultTitle={resultTitle}\n />\n\n <Spinner overlay key=\"info\" show={loading} />\n </div>\n );\n }\n}\n"
11
+ "import {\n OptionsControlProps,\n OptionsControl,\n FormOptionsControl\n} from './Options';\nimport React from 'react';\nimport {Api} from '../../types';\nimport Spinner from '../../components/Spinner';\nimport {BaseTransferRenderer, TransferControlSchema} from './Transfer';\nimport TabsTransfer from '../../components/TabsTransfer';\nimport {SchemaApi, SchemaObject} from '../../Schema';\nimport {autobind, createObject} from '../../utils/helper';\nimport {BaseSelection, ItemRenderStates} from '../../components/Selection';\n\n/**\n * TabsTransfer\n * 文档:https://baidu.gitee.io/amis/docs/components/form/tabs-transfer\n */\nexport interface TabsTransferControlSchema\n extends Omit<TransferControlSchema, 'type'> {\n type: 'tabs-transfer';\n}\n\nexport interface TabsTransferProps\n extends OptionsControlProps,\n Omit<\n TabsTransferControlSchema,\n | 'type'\n | 'options'\n | 'inputClassName'\n | 'className'\n | 'descriptionClassName'\n > {}\n\n@OptionsControl({\n type: 'tabs-transfer'\n})\nexport class TabsTransferRenderer extends BaseTransferRenderer<TabsTransferProps> {\n @autobind\n optionItemRender(option: any, states: ItemRenderStates) {\n const {menuTpl, render, data} = this.props;\n const ctx = arguments[2] || {};\n\n if (menuTpl) {\n return render(`item/${states.index}`, menuTpl, {\n data: createObject(\n createObject(data, {\n ...states,\n ...ctx\n }),\n option\n )\n });\n }\n\n return BaseSelection.itemRender(option, states);\n }\n\n render() {\n const {\n className,\n classnames: cx,\n options,\n selectedOptions,\n sortable,\n loading,\n searchable,\n searchResultMode,\n showArrow,\n deferLoad,\n disabled,\n selectTitle,\n resultTitle\n } = this.props;\n\n return (\n <div className={cx('TabsTransferControl', className)}>\n <TabsTransfer\n value={selectedOptions}\n disabled={disabled}\n options={options}\n onChange={this.handleChange}\n option2value={this.option2value}\n sortable={sortable}\n searchResultMode={searchResultMode}\n onSearch={searchable ? this.handleSearch : undefined}\n showArrow={showArrow}\n onDeferLoad={deferLoad}\n selectTitle={selectTitle}\n resultTitle={resultTitle}\n optionItemRender={this.optionItemRender}\n resultItemRender={this.resultItemRender}\n />\n\n <Spinner overlay key=\"info\" show={loading} />\n </div>\n );\n }\n}\n"
12
12
  ]
13
13
  }
@@ -1,48 +1,18 @@
1
1
  /// <reference types="react" />
2
- import { OptionsControlProps, FormOptionsControl } from './Options';
2
+ import { OptionsControlProps } from './Options';
3
3
  import { BaseTransferRenderer } from './Transfer';
4
- import { SchemaApi } from '../../Schema';
4
+ import { TabsTransferControlSchema } from './TabsTransfer';
5
+ import { ItemRenderStates } from '../../components/Selection';
5
6
  /**
6
7
  * TabsTransferPicker 穿梭器的弹框形态
7
8
  * 文档:https://baidu.gitee.io/amis/docs/components/form/tabs-transfer-picker
8
9
  */
9
- export interface TabsTransferPickerControlSchema extends FormOptionsControl {
10
+ export interface TabsTransferPickerControlSchema extends Omit<TabsTransferControlSchema, 'type'> {
10
11
  type: 'tabs-transfer-picker';
11
- /**
12
- * 是否显示剪头
13
- */
14
- showArrow?: boolean;
15
- /**
16
- * 可排序?
17
- */
18
- sortable?: boolean;
19
- /**
20
- * 搜索结果展示模式
21
- */
22
- searchResultMode?: 'table' | 'list' | 'tree' | 'chained';
23
- /**
24
- * 可搜索?
25
- */
26
- searchable?: boolean;
27
- /**
28
- * 搜索 API
29
- */
30
- searchApi?: SchemaApi;
31
- /**
32
- * 左侧的标题文字
33
- */
34
- selectTitle?: string;
35
- /**
36
- * 右侧结果的标题文字
37
- */
38
- resultTitle?: string;
39
- /**
40
- * 弹窗大小
41
- */
42
- pickerSize?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'full';
43
12
  }
44
13
  export interface TabsTransferProps extends OptionsControlProps, Omit<TabsTransferPickerControlSchema, 'type' | 'options' | 'inputClassName' | 'className' | 'descriptionClassName'> {
45
14
  }
46
15
  export declare class TabsTransferPickerRenderer extends BaseTransferRenderer<TabsTransferProps> {
16
+ optionItemRender(option: any, states: ItemRenderStates): JSX.Element;
47
17
  render(): JSX.Element;
48
18
  }
@@ -7,17 +7,36 @@ var react_1 = (0, tslib_1.__importDefault)(require("react"));
7
7
  var Spinner_1 = (0, tslib_1.__importDefault)(require("../../components/Spinner"));
8
8
  var Transfer_1 = require("./Transfer");
9
9
  var TabsTransferPicker_1 = (0, tslib_1.__importDefault)(require("../../components/TabsTransferPicker"));
10
+ var helper_1 = require("../../utils/helper");
11
+ var Selection_1 = require("../../components/Selection");
10
12
  var TabsTransferPickerRenderer = /** @class */ (function (_super) {
11
13
  (0, tslib_1.__extends)(TabsTransferPickerRenderer, _super);
12
14
  function TabsTransferPickerRenderer() {
13
15
  return _super !== null && _super.apply(this, arguments) || this;
14
16
  }
17
+ TabsTransferPickerRenderer.prototype.optionItemRender = function (option, states) {
18
+ var _a = this.props, menuTpl = _a.menuTpl, render = _a.render, data = _a.data;
19
+ var ctx = arguments[2] || {};
20
+ if (menuTpl) {
21
+ return render("item/" + states.index, menuTpl, {
22
+ data: (0, helper_1.createObject)((0, helper_1.createObject)(data, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, states), ctx)), option)
23
+ });
24
+ }
25
+ return Selection_1.BaseSelection.itemRender(option, states);
26
+ };
15
27
  TabsTransferPickerRenderer.prototype.render = function () {
16
- var _a = this.props, className = _a.className, cx = _a.classnames, options = _a.options, selectedOptions = _a.selectedOptions, sortable = _a.sortable, loading = _a.loading, searchable = _a.searchable, searchResultMode = _a.searchResultMode, showArrow = _a.showArrow, deferLoad = _a.deferLoad, disabled = _a.disabled, selectTitle = _a.selectTitle, resultTitle = _a.resultTitle, pickerSize = _a.pickerSize, columns = _a.columns, leftMode = _a.leftMode, leftOptions = _a.leftOptions;
28
+ var _a = this.props, className = _a.className, cx = _a.classnames, options = _a.options, selectedOptions = _a.selectedOptions, sortable = _a.sortable, loading = _a.loading, searchable = _a.searchable, searchResultMode = _a.searchResultMode, showArrow = _a.showArrow, deferLoad = _a.deferLoad, disabled = _a.disabled, selectTitle = _a.selectTitle, resultTitle = _a.resultTitle, pickerSize = _a.pickerSize, leftMode = _a.leftMode, leftOptions = _a.leftOptions;
17
29
  return (react_1.default.createElement("div", { className: cx('TabsTransferControl', className) },
18
- react_1.default.createElement(TabsTransferPicker_1.default, { value: selectedOptions, disabled: disabled, options: options, onChange: this.handleChange, option2value: this.option2value, sortable: sortable, searchResultMode: searchResultMode, onSearch: searchable ? this.handleSearch : undefined, showArrow: showArrow, onDeferLoad: deferLoad, selectTitle: selectTitle, resultTitle: resultTitle, size: pickerSize, leftMode: leftMode, leftOptions: leftOptions }),
30
+ react_1.default.createElement(TabsTransferPicker_1.default, { value: selectedOptions, disabled: disabled, options: options, onChange: this.handleChange, option2value: this.option2value, sortable: sortable, searchResultMode: searchResultMode, onSearch: searchable ? this.handleSearch : undefined, showArrow: showArrow, onDeferLoad: deferLoad, selectTitle: selectTitle, resultTitle: resultTitle, size: pickerSize, leftMode: leftMode, leftOptions: leftOptions, optionItemRender: this.optionItemRender, resultItemRender: this.resultItemRender }),
19
31
  react_1.default.createElement(Spinner_1.default, { overlay: true, key: "info", show: loading })));
20
32
  };
33
+ var _a;
34
+ (0, tslib_1.__decorate)([
35
+ helper_1.autobind,
36
+ (0, tslib_1.__metadata)("design:type", Function),
37
+ (0, tslib_1.__metadata)("design:paramtypes", [Object, typeof (_a = typeof Selection_1.ItemRenderStates !== "undefined" && Selection_1.ItemRenderStates) === "function" ? _a : Object]),
38
+ (0, tslib_1.__metadata)("design:returntype", void 0)
39
+ ], TabsTransferPickerRenderer.prototype, "optionItemRender", null);
21
40
  TabsTransferPickerRenderer = (0, tslib_1.__decorate)([
22
41
  (0, Options_1.OptionsControl)({
23
42
  type: 'tabs-transfer-picker'
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/Form/TabsTransferPicker.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": ";;;;AAAA,qCAImB;AACnB,6DAA0B;AAE1B,kFAA+C;AAC/C,uCAAgD;AAIhD,wGAAqE;AAgErE;IAAgD,2DAAuC;IAAvF;;IA8CA,CAAC;IA7CC,2CAAM,GAAN;QACQ,IAAA,KAkBF,IAAI,CAAC,KAAK,EAjBZ,SAAS,eAAA,EACG,EAAE,gBAAA,EACd,OAAO,aAAA,EACP,eAAe,qBAAA,EACf,QAAQ,cAAA,EACR,OAAO,aAAA,EACP,UAAU,gBAAA,EACV,gBAAgB,sBAAA,EAChB,SAAS,eAAA,EACT,SAAS,eAAA,EACT,QAAQ,cAAA,EACR,WAAW,iBAAA,EACX,WAAW,iBAAA,EACX,UAAU,gBAAA,EACV,OAAO,aAAA,EACP,QAAQ,cAAA,EACR,WAAW,iBACC,CAAC;QAEf,OAAO,CACL,uCAAK,SAAS,EAAE,EAAE,CAAC,qBAAqB,EAAE,SAAS,CAAC;YAClD,8BAAC,4BAAkB,IACjB,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,IAAI,CAAC,YAAY,EAC3B,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,EACpD,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,SAAS,EACtB,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,GACxB;YAEF,8BAAC,iBAAO,IAAC,OAAO,QAAC,GAAG,EAAC,MAAM,EAAC,IAAI,EAAE,OAAO,GAAI,CACzC,CACP,CAAC;IACJ,CAAC;IA7CU,0BAA0B;QAHtC,IAAA,wBAAc,EAAC;YACd,IAAI,EAAE,sBAAsB;SAC7B,CAAC;OACW,0BAA0B,CA8CtC;IAAD,iCAAC;CAAA,AA9CD,CAAgD,+BAAoB,GA8CnE;AA9CY,gEAA0B",
9
+ "mappings": ";;;;AAAA,qCAImB;AACnB,6DAA0B;AAC1B,kFAA+C;AAC/C,uCAAgD;AAEhD,wGAAqE;AAErE,6CAA0D;AAC1D,wDAA2E;AAyB3E;IAAgD,2DAAuC;IAAvF;;IAmEA,CAAC;IAjEC,qDAAgB,GAAhB,UAAiB,MAAW,EAAE,MAAwB;QAC9C,IAAA,KAA0B,IAAI,CAAC,KAAK,EAAnC,OAAO,aAAA,EAAE,MAAM,YAAA,EAAE,IAAI,UAAc,CAAC;QAC3C,IAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAE/B,IAAI,OAAO,EAAE;YACX,OAAO,MAAM,CAAC,UAAQ,MAAM,CAAC,KAAO,EAAE,OAAO,EAAE;gBAC7C,IAAI,EAAE,IAAA,qBAAY,EAChB,IAAA,qBAAY,EAAC,IAAI,kDACZ,MAAM,GACN,GAAG,EACN,EACF,MAAM,CACP;aACF,CAAC,CAAC;SACJ;QAED,OAAO,yBAAa,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClD,CAAC;IAED,2CAAM,GAAN;QACQ,IAAA,KAiBF,IAAI,CAAC,KAAK,EAhBZ,SAAS,eAAA,EACG,EAAE,gBAAA,EACd,OAAO,aAAA,EACP,eAAe,qBAAA,EACf,QAAQ,cAAA,EACR,OAAO,aAAA,EACP,UAAU,gBAAA,EACV,gBAAgB,sBAAA,EAChB,SAAS,eAAA,EACT,SAAS,eAAA,EACT,QAAQ,cAAA,EACR,WAAW,iBAAA,EACX,WAAW,iBAAA,EACX,UAAU,gBAAA,EACV,QAAQ,cAAA,EACR,WAAW,iBACC,CAAC;QAEf,OAAO,CACL,uCAAK,SAAS,EAAE,EAAE,CAAC,qBAAqB,EAAE,SAAS,CAAC;YAClD,8BAAC,4BAAkB,IACjB,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,IAAI,CAAC,YAAY,EAC3B,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,EAClC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,EACpD,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,SAAS,EACtB,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EACvC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,GACvC;YAEF,8BAAC,iBAAO,IAAC,OAAO,QAAC,GAAG,EAAC,MAAM,EAAC,IAAI,EAAE,OAAO,GAAI,CACzC,CACP,CAAC;IACJ,CAAC;;IAhED;QADC,iBAAQ;;kFAC6B,4BAAgB,oBAAhB,4BAAgB;;sEAiBrD;IAnBU,0BAA0B;QAHtC,IAAA,wBAAc,EAAC;YACd,IAAI,EAAE,sBAAsB;SAC7B,CAAC;OACW,0BAA0B,CAmEtC;IAAD,iCAAC;CAAA,AAnED,CAAgD,+BAAoB,GAmEnE;AAnEY,gEAA0B",
10
10
  "sourcesContent": [
11
- "import {\n OptionsControlProps,\n OptionsControl,\n FormOptionsControl\n} from './Options';\nimport React from 'react';\nimport {Api} from '../../types';\nimport Spinner from '../../components/Spinner';\nimport {BaseTransferRenderer} from './Transfer';\nimport TabsTransfer from '../../components/TabsTransfer';\nimport {SchemaApi} from '../../Schema';\nimport TransferPicker from '../../components/TransferPicker';\nimport TabsTransferPicker from '../../components/TabsTransferPicker';\n\n/**\n * TabsTransferPicker 穿梭器的弹框形态\n * 文档:https://baidu.gitee.io/amis/docs/components/form/tabs-transfer-picker\n */\nexport interface TabsTransferPickerControlSchema extends FormOptionsControl {\n type: 'tabs-transfer-picker';\n\n /**\n * 是否显示剪头\n */\n showArrow?: boolean;\n\n /**\n * 可排序?\n */\n sortable?: boolean;\n\n /**\n * 搜索结果展示模式\n */\n searchResultMode?: 'table' | 'list' | 'tree' | 'chained';\n\n /**\n * 可搜索?\n */\n searchable?: boolean;\n\n /**\n * 搜索 API\n */\n searchApi?: SchemaApi;\n\n /**\n * 左侧的标题文字\n */\n selectTitle?: string;\n\n /**\n * 右侧结果的标题文字\n */\n resultTitle?: string;\n\n /**\n * 弹窗大小\n */\n pickerSize?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'full';\n}\n\nexport interface TabsTransferProps\n extends OptionsControlProps,\n Omit<\n TabsTransferPickerControlSchema,\n | 'type'\n | 'options'\n | 'inputClassName'\n | 'className'\n | 'descriptionClassName'\n > {}\n\n@OptionsControl({\n type: 'tabs-transfer-picker'\n})\nexport class TabsTransferPickerRenderer extends BaseTransferRenderer<TabsTransferProps> {\n render() {\n const {\n className,\n classnames: cx,\n options,\n selectedOptions,\n sortable,\n loading,\n searchable,\n searchResultMode,\n showArrow,\n deferLoad,\n disabled,\n selectTitle,\n resultTitle,\n pickerSize,\n columns,\n leftMode,\n leftOptions\n } = this.props;\n\n return (\n <div className={cx('TabsTransferControl', className)}>\n <TabsTransferPicker\n value={selectedOptions}\n disabled={disabled}\n options={options}\n onChange={this.handleChange}\n option2value={this.option2value}\n sortable={sortable}\n searchResultMode={searchResultMode}\n onSearch={searchable ? this.handleSearch : undefined}\n showArrow={showArrow}\n onDeferLoad={deferLoad}\n selectTitle={selectTitle}\n resultTitle={resultTitle}\n size={pickerSize}\n leftMode={leftMode}\n leftOptions={leftOptions}\n />\n\n <Spinner overlay key=\"info\" show={loading} />\n </div>\n );\n }\n}\n"
11
+ "import {\n OptionsControlProps,\n OptionsControl,\n FormOptionsControl\n} from './Options';\nimport React from 'react';\nimport Spinner from '../../components/Spinner';\nimport {BaseTransferRenderer} from './Transfer';\nimport {SchemaApi, SchemaObject} from '../../Schema';\nimport TabsTransferPicker from '../../components/TabsTransferPicker';\nimport {TabsTransferControlSchema} from './TabsTransfer';\nimport {autobind, createObject} from '../../utils/helper';\nimport {BaseSelection, ItemRenderStates} from '../../components/Selection';\n\n/**\n * TabsTransferPicker 穿梭器的弹框形态\n * 文档:https://baidu.gitee.io/amis/docs/components/form/tabs-transfer-picker\n */\nexport interface TabsTransferPickerControlSchema\n extends Omit<TabsTransferControlSchema, 'type'> {\n type: 'tabs-transfer-picker';\n}\n\nexport interface TabsTransferProps\n extends OptionsControlProps,\n Omit<\n TabsTransferPickerControlSchema,\n | 'type'\n | 'options'\n | 'inputClassName'\n | 'className'\n | 'descriptionClassName'\n > {}\n\n@OptionsControl({\n type: 'tabs-transfer-picker'\n})\nexport class TabsTransferPickerRenderer extends BaseTransferRenderer<TabsTransferProps> {\n @autobind\n optionItemRender(option: any, states: ItemRenderStates) {\n const {menuTpl, render, data} = this.props;\n const ctx = arguments[2] || {};\n\n if (menuTpl) {\n return render(`item/${states.index}`, menuTpl, {\n data: createObject(\n createObject(data, {\n ...states,\n ...ctx\n }),\n option\n )\n });\n }\n\n return BaseSelection.itemRender(option, states);\n }\n\n render() {\n const {\n className,\n classnames: cx,\n options,\n selectedOptions,\n sortable,\n loading,\n searchable,\n searchResultMode,\n showArrow,\n deferLoad,\n disabled,\n selectTitle,\n resultTitle,\n pickerSize,\n leftMode,\n leftOptions\n } = this.props;\n\n return (\n <div className={cx('TabsTransferControl', className)}>\n <TabsTransferPicker\n value={selectedOptions}\n disabled={disabled}\n options={options}\n onChange={this.handleChange}\n option2value={this.option2value}\n sortable={sortable}\n searchResultMode={searchResultMode}\n onSearch={searchable ? this.handleSearch : undefined}\n showArrow={showArrow}\n onDeferLoad={deferLoad}\n selectTitle={selectTitle}\n resultTitle={resultTitle}\n size={pickerSize}\n leftMode={leftMode}\n leftOptions={leftOptions}\n optionItemRender={this.optionItemRender}\n resultItemRender={this.resultItemRender}\n />\n\n <Spinner overlay key=\"info\" show={loading} />\n </div>\n );\n }\n}\n"
12
12
  ]
13
13
  }
@@ -1,7 +1,9 @@
1
1
  import { OptionsControlProps, FormOptionsControl } from './Options';
2
2
  import React from 'react';
3
- import { Option } from './Options';
4
- import { SchemaApi } from '../../Schema';
3
+ import type { Option } from './Options';
4
+ import { SchemaApi, SchemaObject } from '../../Schema';
5
+ import { ItemRenderStates } from '../../components/Selection';
6
+ import { ItemRenderStates as ResultItemRenderStates } from '../../components/ResultList';
5
7
  /**
6
8
  * Transfer
7
9
  * 文档:https://baidu.gitee.io/amis/docs/components/form/transfer
@@ -60,15 +62,24 @@ export interface TransferControlSchema extends FormOptionsControl {
60
62
  * 右侧结果的标题文字
61
63
  */
62
64
  resultTitle?: string;
65
+ /**
66
+ * 用来丰富选项展示
67
+ */
68
+ menuTpl?: SchemaObject;
69
+ /**
70
+ * 用来丰富值的展示
71
+ */
72
+ valueTpl?: SchemaObject;
63
73
  }
64
74
  export interface BaseTransferProps extends OptionsControlProps, Omit<TransferControlSchema, 'type' | 'options' | 'className' | 'descriptionClassName' | 'inputClassName'> {
65
- optionItemRender?: (option: Option) => JSX.Element;
66
75
  resultItemRender?: (option: Option) => JSX.Element;
67
76
  }
68
77
  export declare class BaseTransferRenderer<T extends OptionsControlProps = BaseTransferProps> extends React.Component<T> {
69
- handleChange(value: Array<Option>): void;
78
+ handleChange(value: Array<Option>, optionModified?: boolean): void;
70
79
  option2value(option: Option): Option;
71
80
  handleSearch(term: string, cancelExecutor: Function): Promise<any[]>;
81
+ optionItemRender(option: Option, states: ItemRenderStates): JSX.Element;
82
+ resultItemRender(option: Option, states: ResultItemRenderStates): JSX.Element;
72
83
  renderCell(column: {
73
84
  name: string;
74
85
  label: string;
@@ -5,36 +5,42 @@ var tslib_1 = require("tslib");
5
5
  var Options_1 = require("./Options");
6
6
  var react_1 = (0, tslib_1.__importDefault)(require("react"));
7
7
  var Transfer_1 = (0, tslib_1.__importDefault)(require("../../components/Transfer"));
8
- var Options_2 = require("./Options");
9
8
  var helper_1 = require("../../utils/helper");
10
9
  var Spinner_1 = (0, tslib_1.__importDefault)(require("../../components/Spinner"));
11
10
  var find_1 = (0, tslib_1.__importDefault)(require("lodash/find"));
12
11
  var Select_1 = require("../../components/Select");
13
12
  var tpl_builtin_1 = require("../../utils/tpl-builtin");
13
+ var Selection_1 = require("../../components/Selection");
14
+ var ResultList_1 = require("../../components/ResultList");
14
15
  var BaseTransferRenderer = /** @class */ (function (_super) {
15
16
  (0, tslib_1.__extends)(BaseTransferRenderer, _super);
16
17
  function BaseTransferRenderer() {
17
18
  return _super !== null && _super.apply(this, arguments) || this;
18
19
  }
19
- BaseTransferRenderer.prototype.handleChange = function (value) {
20
+ BaseTransferRenderer.prototype.handleChange = function (value, optionModified) {
20
21
  var _a = this.props, onChange = _a.onChange, joinValues = _a.joinValues, delimiter = _a.delimiter, valueField = _a.valueField, extractValue = _a.extractValue, options = _a.options, setOptions = _a.setOptions;
21
22
  var newValue = value;
22
23
  var newOptions = options.concat();
23
24
  if (Array.isArray(value)) {
24
- if (joinValues || extractValue) {
25
- newValue = value.map(function (item) {
26
- var resolved = (0, helper_1.findTree)(options, (0, Select_1.optionValueCompare)(item[valueField || 'value'], valueField || 'value'));
27
- if (!resolved) {
28
- newOptions.push(item);
29
- }
30
- return item[valueField || 'value'];
31
- });
32
- }
25
+ newValue = value.map(function (item) {
26
+ var indexes = (0, helper_1.findTreeIndex)(options, (0, Select_1.optionValueCompare)(item[valueField || 'value'], valueField || 'value'));
27
+ if (!indexes) {
28
+ newOptions.push(item);
29
+ }
30
+ else if (optionModified) {
31
+ var origin = (0, helper_1.getTree)(newOptions, indexes);
32
+ newOptions = (0, helper_1.spliceTree)(newOptions, indexes, 1, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, origin), item));
33
+ }
34
+ return joinValues || extractValue
35
+ ? item[valueField || 'value']
36
+ : item;
37
+ });
33
38
  if (joinValues) {
34
39
  newValue = newValue.join(delimiter || ',');
35
40
  }
36
41
  }
37
- newOptions.length > options.length && setOptions(newOptions, true);
42
+ (newOptions.length > options.length || optionModified) &&
43
+ setOptions(newOptions, true);
38
44
  onChange(newValue);
39
45
  };
40
46
  BaseTransferRenderer.prototype.option2value = function (option) {
@@ -98,6 +104,25 @@ var BaseTransferRenderer = /** @class */ (function (_super) {
98
104
  });
99
105
  });
100
106
  };
107
+ BaseTransferRenderer.prototype.optionItemRender = function (option, states) {
108
+ var _a = this.props, menuTpl = _a.menuTpl, render = _a.render, data = _a.data;
109
+ if (menuTpl) {
110
+ return render("item/" + states.index, menuTpl, {
111
+ data: (0, helper_1.createObject)((0, helper_1.createObject)(data, states), option)
112
+ });
113
+ }
114
+ return Selection_1.BaseSelection.itemRender(option, states);
115
+ };
116
+ BaseTransferRenderer.prototype.resultItemRender = function (option, states) {
117
+ var _a = this.props, valueTpl = _a.valueTpl, render = _a.render, data = _a.data;
118
+ if (valueTpl) {
119
+ return render("value/" + states.index, valueTpl, {
120
+ onChange: states.onChange,
121
+ data: (0, helper_1.createObject)((0, helper_1.createObject)(data, states), option)
122
+ });
123
+ }
124
+ return ResultList_1.ResultList.itemRender(option);
125
+ };
101
126
  BaseTransferRenderer.prototype.renderCell = function (column, option, colIndex, rowIndex) {
102
127
  var _a = this.props, render = _a.render, data = _a.data;
103
128
  return render("cell/" + colIndex + "/" + rowIndex, (0, tslib_1.__assign)({ type: 'text' }, column), {
@@ -107,7 +132,7 @@ var BaseTransferRenderer = /** @class */ (function (_super) {
107
132
  };
108
133
  BaseTransferRenderer.prototype.render = function () {
109
134
  var _a;
110
- var _b = this.props, className = _b.className, cx = _b.classnames, selectedOptions = _b.selectedOptions, showArrow = _b.showArrow, sortable = _b.sortable, selectMode = _b.selectMode, columns = _b.columns, loading = _b.loading, searchable = _b.searchable, searchResultMode = _b.searchResultMode, searchResultColumns = _b.searchResultColumns, deferLoad = _b.deferLoad, leftMode = _b.leftMode, rightMode = _b.rightMode, disabled = _b.disabled, selectTitle = _b.selectTitle, resultTitle = _b.resultTitle, optionItemRender = _b.optionItemRender, resultItemRender = _b.resultItemRender;
135
+ var _b = this.props, className = _b.className, cx = _b.classnames, selectedOptions = _b.selectedOptions, showArrow = _b.showArrow, sortable = _b.sortable, selectMode = _b.selectMode, columns = _b.columns, loading = _b.loading, searchable = _b.searchable, searchResultMode = _b.searchResultMode, searchResultColumns = _b.searchResultColumns, deferLoad = _b.deferLoad, leftMode = _b.leftMode, rightMode = _b.rightMode, disabled = _b.disabled, selectTitle = _b.selectTitle, resultTitle = _b.resultTitle, menuTpl = _b.menuTpl, resultItemRender = _b.resultItemRender;
111
136
  // 目前 LeftOptions 没有接口可以动态加载
112
137
  // 为了方便可以快速实现动态化,让选项的第一个成员携带
113
138
  // LeftOptions 信息
@@ -122,32 +147,44 @@ var BaseTransferRenderer = /** @class */ (function (_super) {
122
147
  options = options[0].children;
123
148
  }
124
149
  return (react_1.default.createElement("div", { className: cx('TransferControl', className) },
125
- react_1.default.createElement(Transfer_1.default, { value: selectedOptions, options: options, disabled: disabled, onChange: this.handleChange, option2value: this.option2value, sortable: sortable, showArrow: showArrow, selectMode: selectMode, searchResultMode: searchResultMode, searchResultColumns: searchResultColumns, columns: columns, onSearch: searchable ? this.handleSearch : undefined, onDeferLoad: deferLoad, leftOptions: leftOptions, leftMode: leftMode, rightMode: rightMode, cellRender: this.renderCell, selectTitle: selectTitle, resultTitle: resultTitle, optionItemRender: optionItemRender, resultItemRender: resultItemRender }),
150
+ react_1.default.createElement(Transfer_1.default, { value: selectedOptions, options: options, disabled: disabled, onChange: this.handleChange, option2value: this.option2value, sortable: sortable, showArrow: showArrow, selectMode: selectMode, searchResultMode: searchResultMode, searchResultColumns: searchResultColumns, columns: columns, onSearch: searchable ? this.handleSearch : undefined, onDeferLoad: deferLoad, leftOptions: leftOptions, leftMode: leftMode, rightMode: rightMode, cellRender: this.renderCell, selectTitle: selectTitle, resultTitle: resultTitle, optionItemRender: this.optionItemRender, resultItemRender: this.resultItemRender }),
126
151
  react_1.default.createElement(Spinner_1.default, { overlay: true, key: "info", show: loading })));
127
152
  };
128
153
  var _a, _b, _c, _d;
129
154
  (0, tslib_1.__decorate)([
130
155
  helper_1.autobind,
131
156
  (0, tslib_1.__metadata)("design:type", Function),
132
- (0, tslib_1.__metadata)("design:paramtypes", [typeof (_a = typeof Array !== "undefined" && Array) === "function" ? _a : Object]),
157
+ (0, tslib_1.__metadata)("design:paramtypes", [typeof (_a = typeof Array !== "undefined" && Array) === "function" ? _a : Object, Boolean]),
133
158
  (0, tslib_1.__metadata)("design:returntype", void 0)
134
159
  ], BaseTransferRenderer.prototype, "handleChange", null);
135
160
  (0, tslib_1.__decorate)([
136
161
  helper_1.autobind,
137
162
  (0, tslib_1.__metadata)("design:type", Function),
138
- (0, tslib_1.__metadata)("design:paramtypes", [typeof (_b = typeof Options_2.Option !== "undefined" && Options_2.Option) === "function" ? _b : Object]),
163
+ (0, tslib_1.__metadata)("design:paramtypes", [Object]),
139
164
  (0, tslib_1.__metadata)("design:returntype", void 0)
140
165
  ], BaseTransferRenderer.prototype, "option2value", null);
141
166
  (0, tslib_1.__decorate)([
142
167
  helper_1.autobind,
143
168
  (0, tslib_1.__metadata)("design:type", Function),
144
- (0, tslib_1.__metadata)("design:paramtypes", [String, typeof (_c = typeof Function !== "undefined" && Function) === "function" ? _c : Object]),
169
+ (0, tslib_1.__metadata)("design:paramtypes", [String, typeof (_b = typeof Function !== "undefined" && Function) === "function" ? _b : Object]),
145
170
  (0, tslib_1.__metadata)("design:returntype", Promise)
146
171
  ], BaseTransferRenderer.prototype, "handleSearch", null);
147
172
  (0, tslib_1.__decorate)([
148
173
  helper_1.autobind,
149
174
  (0, tslib_1.__metadata)("design:type", Function),
150
- (0, tslib_1.__metadata)("design:paramtypes", [Object, typeof (_d = typeof Options_2.Option !== "undefined" && Options_2.Option) === "function" ? _d : Object, Number, Number]),
175
+ (0, tslib_1.__metadata)("design:paramtypes", [Object, typeof (_c = typeof Selection_1.ItemRenderStates !== "undefined" && Selection_1.ItemRenderStates) === "function" ? _c : Object]),
176
+ (0, tslib_1.__metadata)("design:returntype", void 0)
177
+ ], BaseTransferRenderer.prototype, "optionItemRender", null);
178
+ (0, tslib_1.__decorate)([
179
+ helper_1.autobind,
180
+ (0, tslib_1.__metadata)("design:type", Function),
181
+ (0, tslib_1.__metadata)("design:paramtypes", [Object, typeof (_d = typeof ResultList_1.ItemRenderStates !== "undefined" && ResultList_1.ItemRenderStates) === "function" ? _d : Object]),
182
+ (0, tslib_1.__metadata)("design:returntype", void 0)
183
+ ], BaseTransferRenderer.prototype, "resultItemRender", null);
184
+ (0, tslib_1.__decorate)([
185
+ helper_1.autobind,
186
+ (0, tslib_1.__metadata)("design:type", Function),
187
+ (0, tslib_1.__metadata)("design:paramtypes", [Object, Object, Number, Number]),
151
188
  (0, tslib_1.__metadata)("design:returntype", void 0)
152
189
  ], BaseTransferRenderer.prototype, "renderCell", null);
153
190
  return BaseTransferRenderer;