amis 2.0.2 → 2.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (480) hide show
  1. package/esm/Schema.d.ts +4 -4
  2. package/esm/_virtual/MiniDecimal.js +8 -0
  3. package/esm/_virtual/classCallCheck.js +8 -0
  4. package/esm/_virtual/createClass.js +8 -0
  5. package/esm/_virtual/interopRequireDefault.js +8 -0
  6. package/esm/_virtual/numberUtil.js +8 -0
  7. package/esm/_virtual/supportUtil.js +8 -0
  8. package/esm/compat.js +1 -15
  9. package/esm/index.d.ts +1 -1
  10. package/esm/index.js +2 -2
  11. package/esm/node_modules/@babel/runtime/helpers/classCallCheck.js +25 -0
  12. package/esm/node_modules/@babel/runtime/helpers/createClass.js +38 -0
  13. package/esm/node_modules/@babel/runtime/helpers/interopRequireDefault.js +16 -0
  14. package/esm/node_modules/rc-input-number/lib/utils/MiniDecimal.js +345 -0
  15. package/esm/node_modules/rc-input-number/lib/utils/numberUtil.js +146 -0
  16. package/esm/node_modules/rc-input-number/lib/utils/supportUtil.js +25 -0
  17. package/esm/preset.js +1 -1
  18. package/esm/renderers/Action.d.ts +1 -0
  19. package/esm/renderers/Action.js +17 -9
  20. package/esm/renderers/Alert.js +1 -1
  21. package/esm/renderers/AnchorNav.js +1 -1
  22. package/esm/renderers/App.js +1 -1
  23. package/esm/renderers/Audio.js +1 -1
  24. package/esm/renderers/Avatar.js +1 -1
  25. package/esm/renderers/BarCode.js +1 -1
  26. package/esm/renderers/Breadcrumb.js +1 -1
  27. package/esm/renderers/ButtonGroup.js +1 -1
  28. package/esm/renderers/CRUD.d.ts +6 -3
  29. package/esm/renderers/CRUD.js +38 -11
  30. package/esm/renderers/CRUD2.d.ts +8 -5
  31. package/esm/renderers/CRUD2.js +10 -6
  32. package/esm/renderers/Calendar.d.ts +10 -0
  33. package/esm/renderers/Calendar.js +1 -1
  34. package/esm/renderers/Card.d.ts +4 -1
  35. package/esm/renderers/Card.js +11 -10
  36. package/esm/renderers/Card2.js +1 -1
  37. package/esm/renderers/Cards.d.ts +9 -2
  38. package/esm/renderers/Cards.js +19 -13
  39. package/esm/renderers/Carousel.js +1 -1
  40. package/esm/renderers/Chart.js +2 -1
  41. package/esm/renderers/Code.js +1 -1
  42. package/esm/renderers/Collapse.js +1 -1
  43. package/esm/renderers/CollapseGroup.js +1 -1
  44. package/esm/renderers/Color.js +1 -1
  45. package/esm/renderers/Container.js +1 -1
  46. package/esm/renderers/Copyable.js +5 -4
  47. package/esm/renderers/Custom.js +1 -1
  48. package/esm/renderers/Date.js +1 -1
  49. package/esm/renderers/Dialog.d.ts +69 -62
  50. package/esm/renderers/Dialog.js +45 -9
  51. package/esm/renderers/Divider.js +1 -1
  52. package/esm/renderers/Drawer.d.ts +2 -1
  53. package/esm/renderers/Drawer.js +41 -9
  54. package/esm/renderers/DropDownButton.d.ts +1 -1
  55. package/esm/renderers/DropDownButton.js +16 -5
  56. package/esm/renderers/Each.js +1 -1
  57. package/esm/renderers/Flex.js +1 -1
  58. package/esm/renderers/Form/ButtonGroupSelect.js +1 -1
  59. package/esm/renderers/Form/ButtonToolbar.js +1 -1
  60. package/esm/renderers/Form/ChainedSelect.js +1 -1
  61. package/esm/renderers/Form/ChartRadios.js +1 -1
  62. package/esm/renderers/Form/Checkbox.js +1 -1
  63. package/esm/renderers/Form/Checkboxes.d.ts +3 -3
  64. package/esm/renderers/Form/Checkboxes.js +35 -9
  65. package/esm/renderers/Form/Combo.js +2 -2
  66. package/esm/renderers/Form/ConditionBuilder.js +1 -1
  67. package/esm/renderers/Form/Control.js +1 -1
  68. package/esm/renderers/Form/DiffEditor.d.ts +46 -0
  69. package/esm/renderers/Form/DiffEditor.js +1 -1
  70. package/esm/renderers/Form/Editor.d.ts +22 -0
  71. package/esm/renderers/Form/Editor.js +5 -3
  72. package/esm/renderers/Form/FieldSet.js +1 -1
  73. package/esm/renderers/Form/Formula.js +1 -1
  74. package/esm/renderers/Form/Group.js +4 -3
  75. package/esm/renderers/Form/Hidden.js +1 -1
  76. package/esm/renderers/Form/IconPicker.js +1 -1
  77. package/esm/renderers/Form/IconPickerIcons.js +1 -1
  78. package/esm/renderers/Form/InputArray.js +1 -1
  79. package/esm/renderers/Form/InputCity.js +1 -1
  80. package/esm/renderers/Form/InputColor.d.ts +40 -40
  81. package/esm/renderers/Form/InputColor.js +1 -1
  82. package/esm/renderers/Form/InputDate.js +2 -1
  83. package/esm/renderers/Form/InputDateRange.d.ts +8 -0
  84. package/esm/renderers/Form/InputDateRange.js +3 -2
  85. package/esm/renderers/Form/InputExcel.js +1 -1
  86. package/esm/renderers/Form/InputFile.d.ts +1 -1
  87. package/esm/renderers/Form/InputFile.js +47 -23
  88. package/esm/renderers/Form/InputFormula.js +1 -1
  89. package/esm/renderers/Form/InputGroup.js +1 -1
  90. package/esm/renderers/Form/InputImage.d.ts +13 -2
  91. package/esm/renderers/Form/InputImage.js +41 -8
  92. package/esm/renderers/Form/InputMonthRange.d.ts +1 -0
  93. package/esm/renderers/Form/InputMonthRange.js +3 -2
  94. package/esm/renderers/Form/InputNumber.d.ts +1 -2
  95. package/esm/renderers/Form/InputNumber.js +20 -2
  96. package/esm/renderers/Form/InputQuarterRange.d.ts +1 -0
  97. package/esm/renderers/Form/InputQuarterRange.js +3 -2
  98. package/esm/renderers/Form/InputRange.js +1 -1
  99. package/esm/renderers/Form/InputRating.js +1 -1
  100. package/esm/renderers/Form/InputRepeat.js +1 -1
  101. package/esm/renderers/Form/InputRichText.js +1 -1
  102. package/esm/renderers/Form/InputSubForm.js +1 -1
  103. package/esm/renderers/Form/InputTable.d.ts +9 -3
  104. package/esm/renderers/Form/InputTable.js +61 -5
  105. package/esm/renderers/Form/InputTag.d.ts +1 -0
  106. package/esm/renderers/Form/InputTag.js +23 -6
  107. package/esm/renderers/Form/InputText.d.ts +1 -1
  108. package/esm/renderers/Form/InputText.js +11 -8
  109. package/esm/renderers/Form/InputTree.d.ts +1 -0
  110. package/esm/renderers/Form/InputTree.js +13 -1
  111. package/esm/renderers/Form/InputYearRange.d.ts +1 -0
  112. package/esm/renderers/Form/InputYearRange.js +3 -2
  113. package/esm/renderers/Form/JSONSchema.js +1 -1
  114. package/esm/renderers/Form/JSONSchemaEditor.js +1 -1
  115. package/esm/renderers/Form/ListSelect.js +1 -1
  116. package/esm/renderers/Form/LocationPicker.js +1 -1
  117. package/esm/renderers/Form/MatrixCheckboxes.js +1 -1
  118. package/esm/renderers/Form/NestedSelect.js +4 -4
  119. package/esm/renderers/Form/Picker.js +6 -2
  120. package/esm/renderers/Form/Radios.js +1 -1
  121. package/esm/renderers/Form/Select.js +3 -3
  122. package/esm/renderers/Form/Static.d.ts +4 -1
  123. package/esm/renderers/Form/Static.js +4 -3
  124. package/esm/renderers/Form/Switch.js +1 -1
  125. package/esm/renderers/Form/TabsTransfer.js +1 -1
  126. package/esm/renderers/Form/TabsTransferPicker.js +1 -1
  127. package/esm/renderers/Form/Textarea.js +1 -1
  128. package/esm/renderers/Form/Transfer.js +1 -1
  129. package/esm/renderers/Form/TransferPicker.js +1 -1
  130. package/esm/renderers/Form/TreeSelect.js +13 -12
  131. package/esm/renderers/Form/UUID.js +1 -1
  132. package/esm/renderers/Form/UserSelect.js +1 -1
  133. package/esm/renderers/Grid.js +6 -3
  134. package/esm/renderers/Grid2D.js +1 -1
  135. package/esm/renderers/GridNav.js +1 -1
  136. package/esm/renderers/HBox.js +1 -1
  137. package/esm/renderers/IFrame.d.ts +4 -0
  138. package/esm/renderers/IFrame.js +3 -3
  139. package/esm/renderers/Icon.d.ts +2 -2
  140. package/esm/renderers/Icon.js +5 -3
  141. package/esm/renderers/Image.d.ts +20 -6
  142. package/esm/renderers/Image.js +3 -3
  143. package/esm/renderers/Images.js +1 -1
  144. package/esm/renderers/Json.js +1 -1
  145. package/esm/renderers/Link.js +1 -1
  146. package/esm/renderers/List.d.ts +12 -3
  147. package/esm/renderers/List.js +11 -9
  148. package/esm/renderers/Log.js +1 -1
  149. package/esm/renderers/Mapping.js +1 -1
  150. package/esm/renderers/Markdown.js +1 -1
  151. package/esm/renderers/Nav.js +1 -1
  152. package/esm/renderers/Operation.js +1 -1
  153. package/esm/renderers/Page.d.ts +1 -0
  154. package/esm/renderers/Page.js +11 -5
  155. package/esm/renderers/Pagination.d.ts +5 -0
  156. package/esm/renderers/Pagination.js +1 -1
  157. package/esm/renderers/PaginationWrapper.js +1 -1
  158. package/esm/renderers/Panel.js +1 -1
  159. package/esm/renderers/Plain.js +1 -1
  160. package/esm/renderers/PopOver.js +1 -1
  161. package/esm/renderers/Portlet.js +1 -1
  162. package/esm/renderers/Progress.d.ts +15 -1
  163. package/esm/renderers/Progress.js +20 -4
  164. package/esm/renderers/Property.js +5 -6
  165. package/esm/renderers/QRCode.js +1 -1
  166. package/esm/renderers/QuickEdit.d.ts +11 -0
  167. package/esm/renderers/QuickEdit.js +3 -3
  168. package/esm/renderers/Remark.d.ts +1 -1
  169. package/esm/renderers/Remark.js +5 -13
  170. package/esm/renderers/SearchBox.js +1 -1
  171. package/esm/renderers/Service.js +2 -1
  172. package/esm/renderers/SparkLine.js +1 -1
  173. package/esm/renderers/Spinner.js +1 -1
  174. package/esm/renderers/Status.js +3 -3
  175. package/esm/renderers/Steps.d.ts +2 -1
  176. package/esm/renderers/Steps.js +12 -8
  177. package/esm/renderers/Table/ColumnToggler.d.ts +3 -3
  178. package/esm/renderers/Table/ColumnToggler.js +1 -1
  179. package/esm/renderers/Table/HeadCellFilterDropdown.js +1 -1
  180. package/esm/renderers/Table/HeadCellSearchDropdown.js +2 -2
  181. package/esm/renderers/Table/ItemActionsWrapper.js +1 -1
  182. package/esm/renderers/Table/TableBody.js +1 -1
  183. package/esm/renderers/Table/TableCell.js +5 -2
  184. package/esm/renderers/Table/TableContent.d.ts +1 -5
  185. package/esm/renderers/Table/TableContent.js +16 -2
  186. package/esm/renderers/Table/TableRow.d.ts +4 -1
  187. package/esm/renderers/Table/TableRow.js +3 -3
  188. package/esm/renderers/Table/exportExcel.js +1 -1
  189. package/esm/renderers/Table/index.d.ts +27 -5
  190. package/esm/renderers/Table/index.js +126 -67
  191. package/esm/renderers/Table-v2/ColumnToggler.js +1 -1
  192. package/esm/renderers/Table-v2/HeadCellSearchDropdown.js +1 -1
  193. package/esm/renderers/Table-v2/TableCell.js +1 -1
  194. package/esm/renderers/Table-v2/index.js +1 -1
  195. package/{lib/renderers/Table-v2 → esm/renderers/Table2}/ColumnToggler.d.ts +3 -0
  196. package/esm/renderers/Table2/ColumnToggler.js +89 -0
  197. package/{lib/renderers/Table-v2 → esm/renderers/Table2}/HeadCellSearchDropdown.d.ts +10 -6
  198. package/esm/renderers/Table2/HeadCellSearchDropdown.js +204 -0
  199. package/{lib/renderers/Table-v2 → esm/renderers/Table2}/TableCell.d.ts +0 -0
  200. package/esm/renderers/Table2/TableCell.js +30 -0
  201. package/{lib/renderers/Table-v2 → esm/renderers/Table2}/index.d.ts +76 -31
  202. package/esm/renderers/Table2/index.js +839 -0
  203. package/esm/renderers/TableView.js +18 -14
  204. package/esm/renderers/Tabs.d.ts +8 -0
  205. package/esm/renderers/Tabs.js +3 -3
  206. package/esm/renderers/Tag.js +1 -1
  207. package/esm/renderers/Tasks.js +1 -1
  208. package/esm/renderers/Timeline.js +1 -1
  209. package/esm/renderers/TooltipWrapper.js +1 -1
  210. package/esm/renderers/Tpl.js +1 -1
  211. package/esm/renderers/VBox.js +1 -1
  212. package/esm/renderers/Video.js +1 -1
  213. package/esm/renderers/WebComponent.js +1 -1
  214. package/esm/renderers/Wizard.js +6 -6
  215. package/esm/renderers/Wrapper.js +1 -1
  216. package/esm/schemaExtend.js +1 -1
  217. package/esm/types.d.ts +1 -1
  218. package/lib/Schema.d.ts +4 -4
  219. package/lib/_virtual/MiniDecimal.js +12 -0
  220. package/lib/_virtual/classCallCheck.js +12 -0
  221. package/lib/_virtual/createClass.js +12 -0
  222. package/lib/_virtual/interopRequireDefault.js +12 -0
  223. package/lib/_virtual/numberUtil.js +12 -0
  224. package/lib/_virtual/supportUtil.js +12 -0
  225. package/lib/compat.js +1 -15
  226. package/lib/helper.css +0 -8335
  227. package/lib/index.d.ts +1 -1
  228. package/lib/index.js +2 -2
  229. package/lib/node_modules/@babel/runtime/helpers/classCallCheck.js +29 -0
  230. package/lib/node_modules/@babel/runtime/helpers/createClass.js +42 -0
  231. package/lib/node_modules/@babel/runtime/helpers/interopRequireDefault.js +18 -0
  232. package/lib/node_modules/rc-input-number/lib/utils/MiniDecimal.js +349 -0
  233. package/lib/node_modules/rc-input-number/lib/utils/numberUtil.js +150 -0
  234. package/lib/node_modules/rc-input-number/lib/utils/supportUtil.js +29 -0
  235. package/lib/preset.js +1 -1
  236. package/lib/renderers/Action.d.ts +1 -0
  237. package/lib/renderers/Action.js +17 -9
  238. package/lib/renderers/Alert.js +1 -1
  239. package/lib/renderers/AnchorNav.js +1 -1
  240. package/lib/renderers/App.js +1 -1
  241. package/lib/renderers/Audio.js +1 -1
  242. package/lib/renderers/Avatar.js +1 -1
  243. package/lib/renderers/BarCode.js +1 -1
  244. package/lib/renderers/Breadcrumb.js +1 -1
  245. package/lib/renderers/ButtonGroup.js +1 -1
  246. package/lib/renderers/CRUD.d.ts +7 -4
  247. package/lib/renderers/CRUD.js +38 -11
  248. package/lib/renderers/CRUD2.d.ts +8 -5
  249. package/lib/renderers/CRUD2.js +10 -6
  250. package/lib/renderers/Calendar.d.ts +10 -0
  251. package/lib/renderers/Calendar.js +1 -1
  252. package/lib/renderers/Card.d.ts +4 -1
  253. package/lib/renderers/Card.js +11 -11
  254. package/lib/renderers/Card2.js +1 -1
  255. package/lib/renderers/Cards.d.ts +9 -2
  256. package/lib/renderers/Cards.js +18 -12
  257. package/lib/renderers/Carousel.js +1 -1
  258. package/lib/renderers/Chart.js +2 -1
  259. package/lib/renderers/Code.js +1 -1
  260. package/lib/renderers/Collapse.js +1 -1
  261. package/lib/renderers/CollapseGroup.js +1 -1
  262. package/lib/renderers/Color.js +1 -1
  263. package/lib/renderers/Container.js +1 -1
  264. package/lib/renderers/Copyable.js +4 -3
  265. package/lib/renderers/Custom.js +1 -1
  266. package/lib/renderers/Date.js +1 -1
  267. package/lib/renderers/Dialog.d.ts +69 -62
  268. package/lib/renderers/Dialog.js +44 -8
  269. package/lib/renderers/Divider.js +1 -1
  270. package/lib/renderers/Drawer.d.ts +2 -1
  271. package/lib/renderers/Drawer.js +40 -8
  272. package/lib/renderers/DropDownButton.d.ts +1 -1
  273. package/lib/renderers/DropDownButton.js +15 -4
  274. package/lib/renderers/Each.js +1 -1
  275. package/lib/renderers/Flex.js +1 -1
  276. package/lib/renderers/Form/ButtonGroupSelect.js +1 -1
  277. package/lib/renderers/Form/ButtonToolbar.js +1 -1
  278. package/lib/renderers/Form/ChainedSelect.js +1 -1
  279. package/lib/renderers/Form/ChartRadios.js +1 -1
  280. package/lib/renderers/Form/Checkbox.js +1 -1
  281. package/lib/renderers/Form/Checkboxes.d.ts +3 -3
  282. package/lib/renderers/Form/Checkboxes.js +35 -8
  283. package/lib/renderers/Form/Combo.js +1 -1
  284. package/lib/renderers/Form/ConditionBuilder.js +1 -1
  285. package/lib/renderers/Form/Control.js +1 -1
  286. package/lib/renderers/Form/DiffEditor.d.ts +64 -18
  287. package/lib/renderers/Form/DiffEditor.js +1 -1
  288. package/lib/renderers/Form/Editor.d.ts +25 -3
  289. package/lib/renderers/Form/Editor.js +5 -3
  290. package/lib/renderers/Form/FieldSet.js +1 -1
  291. package/lib/renderers/Form/Formula.js +1 -1
  292. package/lib/renderers/Form/Group.js +4 -3
  293. package/lib/renderers/Form/Hidden.js +1 -1
  294. package/lib/renderers/Form/IconPicker.js +1 -1
  295. package/lib/renderers/Form/IconPickerIcons.js +1 -1
  296. package/lib/renderers/Form/InputArray.js +1 -1
  297. package/lib/renderers/Form/InputCity.d.ts +40 -40
  298. package/lib/renderers/Form/InputCity.js +1 -1
  299. package/lib/renderers/Form/InputColor.d.ts +40 -40
  300. package/lib/renderers/Form/InputColor.js +1 -1
  301. package/lib/renderers/Form/InputDate.js +2 -1
  302. package/lib/renderers/Form/InputDateRange.d.ts +8 -0
  303. package/lib/renderers/Form/InputDateRange.js +3 -2
  304. package/lib/renderers/Form/InputExcel.js +1 -1
  305. package/lib/renderers/Form/InputFile.d.ts +1 -1
  306. package/lib/renderers/Form/InputFile.js +46 -22
  307. package/lib/renderers/Form/InputFormula.js +1 -1
  308. package/lib/renderers/Form/InputGroup.js +1 -1
  309. package/lib/renderers/Form/InputImage.d.ts +13 -2
  310. package/lib/renderers/Form/InputImage.js +40 -7
  311. package/lib/renderers/Form/InputMonthRange.d.ts +1 -0
  312. package/lib/renderers/Form/InputMonthRange.js +3 -2
  313. package/lib/renderers/Form/InputNumber.d.ts +1 -2
  314. package/lib/renderers/Form/InputNumber.js +20 -2
  315. package/lib/renderers/Form/InputQuarterRange.d.ts +1 -0
  316. package/lib/renderers/Form/InputQuarterRange.js +3 -2
  317. package/lib/renderers/Form/InputRange.js +1 -1
  318. package/lib/renderers/Form/InputRating.js +1 -1
  319. package/lib/renderers/Form/InputRepeat.js +1 -1
  320. package/lib/renderers/Form/InputRichText.js +1 -1
  321. package/lib/renderers/Form/InputSubForm.js +1 -1
  322. package/lib/renderers/Form/InputTable.d.ts +9 -3
  323. package/lib/renderers/Form/InputTable.js +63 -3
  324. package/lib/renderers/Form/InputTag.d.ts +1 -0
  325. package/lib/renderers/Form/InputTag.js +23 -6
  326. package/lib/renderers/Form/InputText.d.ts +1 -1
  327. package/lib/renderers/Form/InputText.js +11 -8
  328. package/lib/renderers/Form/InputTree.d.ts +1 -0
  329. package/lib/renderers/Form/InputTree.js +13 -1
  330. package/lib/renderers/Form/InputYearRange.d.ts +1 -0
  331. package/lib/renderers/Form/InputYearRange.js +3 -2
  332. package/lib/renderers/Form/JSONSchema.js +1 -1
  333. package/lib/renderers/Form/JSONSchemaEditor.js +1 -1
  334. package/lib/renderers/Form/ListSelect.js +1 -1
  335. package/lib/renderers/Form/LocationPicker.js +1 -1
  336. package/lib/renderers/Form/MatrixCheckboxes.js +1 -1
  337. package/lib/renderers/Form/NestedSelect.js +4 -4
  338. package/lib/renderers/Form/Picker.js +6 -2
  339. package/lib/renderers/Form/Radios.js +1 -1
  340. package/lib/renderers/Form/Select.js +3 -3
  341. package/lib/renderers/Form/Static.d.ts +4 -1
  342. package/lib/renderers/Form/Static.js +4 -3
  343. package/lib/renderers/Form/Switch.js +1 -1
  344. package/lib/renderers/Form/TabsTransfer.js +1 -1
  345. package/lib/renderers/Form/TabsTransferPicker.js +1 -1
  346. package/lib/renderers/Form/Textarea.js +1 -1
  347. package/lib/renderers/Form/Transfer.js +1 -1
  348. package/lib/renderers/Form/TransferPicker.js +1 -1
  349. package/lib/renderers/Form/TreeSelect.js +13 -12
  350. package/lib/renderers/Form/UUID.js +1 -1
  351. package/lib/renderers/Form/UserSelect.js +1 -1
  352. package/lib/renderers/Grid.js +6 -3
  353. package/lib/renderers/Grid2D.js +1 -1
  354. package/lib/renderers/GridNav.js +1 -1
  355. package/lib/renderers/HBox.js +1 -1
  356. package/lib/renderers/IFrame.d.ts +4 -0
  357. package/lib/renderers/IFrame.js +3 -3
  358. package/lib/renderers/Icon.d.ts +2 -2
  359. package/lib/renderers/Icon.js +4 -2
  360. package/lib/renderers/Image.d.ts +20 -6
  361. package/lib/renderers/Image.js +3 -3
  362. package/lib/renderers/Images.js +1 -1
  363. package/lib/renderers/Json.js +1 -1
  364. package/lib/renderers/Link.js +1 -1
  365. package/lib/renderers/List.d.ts +12 -3
  366. package/lib/renderers/List.js +10 -8
  367. package/lib/renderers/Log.js +1 -1
  368. package/lib/renderers/Mapping.js +1 -1
  369. package/lib/renderers/Markdown.js +1 -1
  370. package/lib/renderers/Nav.d.ts +10 -10
  371. package/lib/renderers/Nav.js +1 -1
  372. package/lib/renderers/Operation.js +1 -1
  373. package/lib/renderers/Page.d.ts +1 -0
  374. package/lib/renderers/Page.js +11 -5
  375. package/lib/renderers/Pagination.d.ts +5 -0
  376. package/lib/renderers/Pagination.js +1 -1
  377. package/lib/renderers/PaginationWrapper.js +1 -1
  378. package/lib/renderers/Panel.js +1 -1
  379. package/lib/renderers/Plain.js +1 -1
  380. package/lib/renderers/PopOver.js +1 -1
  381. package/lib/renderers/Portlet.js +1 -1
  382. package/lib/renderers/Progress.d.ts +15 -1
  383. package/lib/renderers/Progress.js +19 -3
  384. package/lib/renderers/Property.js +4 -5
  385. package/lib/renderers/QRCode.js +1 -1
  386. package/lib/renderers/QuickEdit.d.ts +11 -0
  387. package/lib/renderers/QuickEdit.js +3 -3
  388. package/lib/renderers/Remark.d.ts +2 -2
  389. package/lib/renderers/Remark.js +4 -12
  390. package/lib/renderers/SearchBox.js +1 -1
  391. package/lib/renderers/Service.js +2 -1
  392. package/lib/renderers/SparkLine.js +1 -1
  393. package/lib/renderers/Spinner.js +1 -1
  394. package/lib/renderers/Status.js +3 -3
  395. package/lib/renderers/Steps.d.ts +2 -1
  396. package/lib/renderers/Steps.js +11 -7
  397. package/lib/renderers/Table/ColumnToggler.d.ts +3 -3
  398. package/lib/renderers/Table/ColumnToggler.js +1 -1
  399. package/lib/renderers/Table/HeadCellFilterDropdown.js +1 -1
  400. package/lib/renderers/Table/HeadCellSearchDropdown.js +2 -2
  401. package/lib/renderers/Table/ItemActionsWrapper.js +1 -1
  402. package/lib/renderers/Table/TableBody.js +1 -1
  403. package/lib/renderers/Table/TableCell.js +5 -2
  404. package/lib/renderers/Table/TableContent.d.ts +1 -5
  405. package/lib/renderers/Table/TableContent.js +16 -2
  406. package/lib/renderers/Table/TableRow.d.ts +4 -1
  407. package/lib/renderers/Table/TableRow.js +3 -3
  408. package/lib/renderers/Table/exportExcel.js +1 -1
  409. package/lib/renderers/Table/index.d.ts +27 -5
  410. package/lib/renderers/Table/index.js +125 -66
  411. package/lib/renderers/Table2/ColumnToggler.d.ts +22 -0
  412. package/lib/renderers/{Table-v2 → Table2}/ColumnToggler.js +6 -5
  413. package/lib/renderers/Table2/HeadCellSearchDropdown.d.ts +33 -0
  414. package/lib/renderers/{Table-v2 → Table2}/HeadCellSearchDropdown.js +3 -5
  415. package/lib/renderers/Table2/TableCell.d.ts +6 -0
  416. package/lib/renderers/{Table-v2 → Table2}/TableCell.js +1 -1
  417. package/lib/renderers/Table2/index.d.ts +330 -0
  418. package/lib/renderers/{Table-v2 → Table2}/index.js +91 -85
  419. package/lib/renderers/TableView.js +17 -13
  420. package/lib/renderers/Tabs.d.ts +8 -0
  421. package/lib/renderers/Tabs.js +3 -3
  422. package/lib/renderers/Tag.js +1 -1
  423. package/lib/renderers/Tasks.js +1 -1
  424. package/lib/renderers/Timeline.js +1 -1
  425. package/lib/renderers/TooltipWrapper.js +1 -1
  426. package/lib/renderers/Tpl.js +1 -1
  427. package/lib/renderers/VBox.js +1 -1
  428. package/lib/renderers/Video.js +1 -1
  429. package/lib/renderers/WebComponent.js +1 -1
  430. package/lib/renderers/Wizard.js +5 -5
  431. package/lib/renderers/Wrapper.js +1 -1
  432. package/lib/schemaExtend.js +1 -1
  433. package/lib/themes/ang-ie11.css +1750 -975
  434. package/lib/themes/ang.css +1751 -913
  435. package/lib/themes/antd-ie11.css +1747 -972
  436. package/lib/themes/antd.css +1751 -913
  437. package/lib/themes/cxd-ie11.css +1791 -1016
  438. package/lib/themes/cxd.css +1800 -961
  439. package/lib/themes/dark-ie11.css +1863 -1088
  440. package/lib/themes/dark.css +1755 -917
  441. package/lib/themes/default-ie11.css +1791 -1016
  442. package/lib/themes/default.css +1800 -961
  443. package/lib/types.d.ts +1 -1
  444. package/package.json +14 -12
  445. package/schema.json +12853 -642
  446. package/sdk/ang-ie11.css +6573 -5442
  447. package/sdk/ang.css +6562 -5365
  448. package/sdk/antd-ie11.css +6570 -5439
  449. package/sdk/antd.css +6563 -5366
  450. package/sdk/barcode.js +50 -50
  451. package/sdk/charts.js +15 -32
  452. package/sdk/codemirror.js +7 -7
  453. package/sdk/color-picker.js +66 -66
  454. package/sdk/cropperjs.js +2 -2
  455. package/sdk/cxd-ie11.css +6593 -5462
  456. package/sdk/cxd.css +6597 -5399
  457. package/sdk/dark-ie11.css +6573 -5442
  458. package/sdk/dark.css +6564 -5367
  459. package/sdk/exceljs.js +1 -1
  460. package/sdk/helper.css +0 -8335
  461. package/sdk/locale/de-DE.js +36 -4
  462. package/sdk/markdown.js +75 -75
  463. package/sdk/papaparse.js +1 -1
  464. package/sdk/rest.js +17 -31
  465. package/sdk/rich-text.js +63 -63
  466. package/sdk/sdk-ie11.css +6593 -5462
  467. package/sdk/sdk.css +6597 -5399
  468. package/sdk/sdk.js +1520 -1437
  469. package/sdk/thirds/@fortawesome/fontawesome-free/webfonts/fa-brands-400.ttf +0 -0
  470. package/sdk/thirds/@fortawesome/fontawesome-free/webfonts/fa-brands-400.woff2 +0 -0
  471. package/sdk/thirds/@fortawesome/fontawesome-free/webfonts/fa-regular-400.ttf +0 -0
  472. package/sdk/thirds/@fortawesome/fontawesome-free/webfonts/fa-regular-400.woff2 +0 -0
  473. package/sdk/thirds/@fortawesome/fontawesome-free/webfonts/fa-solid-900.ttf +0 -0
  474. package/sdk/thirds/@fortawesome/fontawesome-free/webfonts/fa-solid-900.woff2 +0 -0
  475. package/sdk/thirds/@fortawesome/fontawesome-free/webfonts/fa-v4compatibility.ttf +0 -0
  476. package/sdk/thirds/@fortawesome/fontawesome-free/webfonts/fa-v4compatibility.woff2 +0 -0
  477. package/sdk/thirds/hls.js/hls.js +1 -1
  478. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  479. package/sdk/thirds/tinymce/skins/ui/oxide/skin.css +358 -331
  480. package/sdk/tinymce.js +54 -64
@@ -0,0 +1,839 @@
1
+ /**
2
+ * amis v2.2.0
3
+ * Copyright 2018-2022 baidu
4
+ */
5
+
6
+ import { __extends, __spreadArray, __rest, __assign, __awaiter, __generator, __decorate, __metadata } from 'tslib';
7
+ import React from 'react';
8
+ import { findDOMNode } from 'react-dom';
9
+ import { isAlive } from 'mobx-state-tree';
10
+ import cloneDeep from 'lodash/cloneDeep';
11
+ import isEqual from 'lodash/isEqual';
12
+ import { resolveVariableAndFilter, evalExpression, anyChanged, isPureVariable, isObject, resolveVariable, filter, isEffectiveApi, createObject, difference, ScopedContext, autobind, Renderer, TableStore2 } from 'amis-core';
13
+ import { Table, Icon, Spinner } from 'amis-ui';
14
+ import { HeadCellSearchDropDown } from './HeadCellSearchDropdown.js';
15
+ import './TableCell.js';
16
+ import './ColumnToggler.js';
17
+
18
+ var Table2 = /** @class */ (function (_super) {
19
+ __extends(Table2, _super);
20
+ function Table2(props, context) {
21
+ var _this = _super.call(this, props) || this;
22
+ _this.renderedToolbars = [];
23
+ var scoped = context;
24
+ scoped.registerComponent(_this);
25
+ var store = props.store, columnsTogglable = props.columnsTogglable, columns = props.columns;
26
+ store.update({ columnsTogglable: columnsTogglable, columns: columns });
27
+ Table2.syncRows(store, props, undefined) && _this.syncSelected();
28
+ return _this;
29
+ }
30
+ Table2.prototype.componentWillUnmount = function () {
31
+ var scoped = this.context;
32
+ scoped.unRegisterComponent(this);
33
+ };
34
+ Table2.prototype.controlRef = function (control) {
35
+ // 因为 control 有可能被 n 层 hoc 包裹。
36
+ while (control && control.getWrappedInstance) {
37
+ control = control.getWrappedInstance();
38
+ }
39
+ this.control = control;
40
+ };
41
+ Table2.prototype.syncSelected = function () {
42
+ var _a = this.props, store = _a.store, onSelect = _a.onSelect;
43
+ onSelect &&
44
+ onSelect(store.selectedRows.map(function (item) { return item.data; }), store.unSelectedRows.map(function (item) { return item.data; }));
45
+ };
46
+ Table2.syncRows = function (store, props, prevProps) {
47
+ var _a, _b;
48
+ var source = props.source;
49
+ var value = props.value || props.items;
50
+ var rows = [];
51
+ var updateRows = false;
52
+ if (Array.isArray(value) &&
53
+ (!prevProps || (prevProps.value || prevProps.items) !== value)) {
54
+ updateRows = true;
55
+ rows = value;
56
+ }
57
+ else if (typeof source === 'string') {
58
+ var resolved = resolveVariableAndFilter(source, props.data, '| raw');
59
+ var prev = prevProps
60
+ ? resolveVariableAndFilter(source, prevProps.data, '| raw')
61
+ : null;
62
+ if (prev && prev === resolved) {
63
+ updateRows = false;
64
+ }
65
+ else if (Array.isArray(resolved)) {
66
+ updateRows = true;
67
+ rows = resolved;
68
+ }
69
+ }
70
+ updateRows &&
71
+ store.initRows(rows, props.getEntryId, props.reUseRow, props.childrenColumnName);
72
+ var selectedRowKeys = [];
73
+ // selectedRowKeysExpr比selectedRowKeys优先级高
74
+ if (props.rowSelection && props.rowSelection.selectedRowKeysExpr) {
75
+ rows.forEach(function (row, index) {
76
+ var _a, _b;
77
+ var flag = evalExpression(((_a = props.rowSelection) === null || _a === void 0 ? void 0 : _a.selectedRowKeysExpr) || '', {
78
+ record: row,
79
+ rowIndex: index
80
+ });
81
+ if (flag) {
82
+ selectedRowKeys.push(row[((_b = props === null || props === void 0 ? void 0 : props.rowSelection) === null || _b === void 0 ? void 0 : _b.keyField) || 'key']);
83
+ }
84
+ });
85
+ }
86
+ else if (props.rowSelection && props.rowSelection.selectedRowKeys) {
87
+ selectedRowKeys = __spreadArray([], props.rowSelection.selectedRowKeys, true);
88
+ }
89
+ if (updateRows && selectedRowKeys.length > 0) {
90
+ store.updateSelected(selectedRowKeys, (_a = props.rowSelection) === null || _a === void 0 ? void 0 : _a.keyField);
91
+ }
92
+ var expandedRowKeys = [];
93
+ if (props.expandable && props.expandable.expandedRowKeysExpr) {
94
+ rows.forEach(function (row, index) {
95
+ var _a, _b;
96
+ var flag = evalExpression(((_a = props.expandable) === null || _a === void 0 ? void 0 : _a.expandedRowKeysExpr) || '', {
97
+ record: row,
98
+ rowIndex: index
99
+ });
100
+ if (flag) {
101
+ expandedRowKeys.push(row[((_b = props === null || props === void 0 ? void 0 : props.expandable) === null || _b === void 0 ? void 0 : _b.keyField) || 'key']);
102
+ }
103
+ });
104
+ }
105
+ else if (props.expandable && props.expandable.expandedRowKeys) {
106
+ expandedRowKeys = __spreadArray([], props.expandable.expandedRowKeys, true);
107
+ }
108
+ if (updateRows && expandedRowKeys.length > 0) {
109
+ store.updateExpanded(expandedRowKeys, (_b = props.expandable) === null || _b === void 0 ? void 0 : _b.keyField);
110
+ }
111
+ return updateRows;
112
+ };
113
+ Table2.prototype.componentDidUpdate = function (prevProps) {
114
+ var props = this.props;
115
+ var store = props.store;
116
+ if (anyChanged(['columnsTogglable'], prevProps, props)) {
117
+ store.update({
118
+ columnsTogglable: props.columnsTogglable
119
+ });
120
+ }
121
+ if (anyChanged(['source', 'value', 'items'], prevProps, props) ||
122
+ (!props.value &&
123
+ !props.items &&
124
+ (props.data !== prevProps.data ||
125
+ (typeof props.source === 'string' && isPureVariable(props.source))))) {
126
+ Table2.syncRows(store, props, prevProps) && this.syncSelected();
127
+ }
128
+ if (!isEqual(prevProps.columns, props.columns)) {
129
+ store.update({
130
+ columns: props.columns
131
+ });
132
+ }
133
+ };
134
+ Table2.prototype.getPopOverContainer = function () {
135
+ return findDOMNode(this);
136
+ };
137
+ Table2.prototype.renderCellSchema = function (schema, props) {
138
+ var render = this.props.render;
139
+ // Table Cell SchemaObject转化成ReactNode
140
+ if (schema && isObject(schema)) {
141
+ // 在TableCell里会根据width设置div的width
142
+ // 原来的table td/th是最外层标签 设置width没问题
143
+ // table2的拆开了 就不需要再设置div的width了
144
+ // 否则加上padding 就超出单元格的区域了
145
+ // children属性在schema里是一个关键字 在渲染器schema中 自定义的children没有用 去掉
146
+ schema.width; schema.children; var rest = __rest(schema, ["width", "children"]);
147
+ return render('cell-field', __assign(__assign({}, rest), { type: 'cell-field', column: rest, data: props.data, name: schema.name }), props);
148
+ }
149
+ return schema;
150
+ };
151
+ Table2.prototype.renderSchema = function (key, schema, props) {
152
+ var render = this.props.render;
153
+ // Header、Footer等SchemaObject转化成ReactNode
154
+ if (schema && isObject(schema)) {
155
+ return render(key || 'field', __assign(__assign({}, schema), { data: props.data }), props);
156
+ }
157
+ else if (Array.isArray(schema)) {
158
+ var renderers_1 = [];
159
+ schema.forEach(function (s, i) {
160
+ return renderers_1.push(render(key || 'field', __assign(__assign({}, s), { data: props.data }), __assign(__assign({}, props), { key: i })));
161
+ });
162
+ return renderers_1;
163
+ }
164
+ return schema;
165
+ };
166
+ // editor传来的处理过的column 还可能包含其他字段
167
+ Table2.prototype.buildColumns = function (columns) {
168
+ var _this = this;
169
+ var _a = this.props, env = _a.env, render = _a.render, store = _a.store, popOverContainer = _a.popOverContainer, canAccessSuperData = _a.canAccessSuperData, showBadge = _a.showBadge, itemBadge = _a.itemBadge, cx = _a.classnames;
170
+ var cols = [];
171
+ var rowSpans = [];
172
+ var colSpans = [];
173
+ Array.isArray(columns) &&
174
+ columns.forEach(function (column, col) {
175
+ var clone = __assign({}, column);
176
+ var titleSchema = null;
177
+ var titleProps = {
178
+ popOverContainer: popOverContainer || _this.getPopOverContainer,
179
+ value: column.title
180
+ };
181
+ if (isObject(column.title)) {
182
+ titleSchema = cloneDeep(column.title);
183
+ }
184
+ else if (typeof column.title === 'string') {
185
+ titleSchema = { type: 'plain' };
186
+ }
187
+ var titleRender = function (children) {
188
+ var _a;
189
+ var content = _this.renderCellSchema(titleSchema, titleProps);
190
+ var remark = null;
191
+ if (column.remark) {
192
+ remark = render('remark', {
193
+ type: 'remark',
194
+ tooltip: column.remark,
195
+ container: env && env.getModalContainer ? env.getModalContainer : undefined
196
+ });
197
+ }
198
+ return (React.createElement("div", { key: col, className: cx('Table-head-cell-wrapper', (_a = {},
199
+ _a["".concat(column.className)] = !!column.className,
200
+ _a["".concat(column.titleClassName)] = !!column.titleClassName,
201
+ _a)) },
202
+ content,
203
+ remark,
204
+ children));
205
+ };
206
+ Object.assign(clone, {
207
+ title: titleRender
208
+ });
209
+ // 设置了type值 就完全按渲染器处理了
210
+ if (column.type) {
211
+ Object.assign(clone, {
212
+ render: function (text, record, rowIndex, colIndex) {
213
+ var props = {};
214
+ var item = store.getRowByIndex(rowIndex) || {};
215
+ var obj = {
216
+ children: _this.renderCellSchema(column, {
217
+ data: item.locals,
218
+ value: column.name
219
+ ? resolveVariable(column.name, canAccessSuperData ? item.locals : item.data)
220
+ : column.name,
221
+ popOverContainer: popOverContainer || _this.getPopOverContainer,
222
+ onQuickChange: function (values, saveImmediately, savePristine, options) {
223
+ _this.handleQuickChange(item, values, saveImmediately, savePristine, options);
224
+ },
225
+ row: item,
226
+ showBadge: showBadge,
227
+ itemBadge: itemBadge
228
+ }),
229
+ props: props
230
+ };
231
+ if (column.rowSpanExpr) {
232
+ var rowSpan = +filter(column.rowSpanExpr, {
233
+ record: record,
234
+ rowIndex: rowIndex,
235
+ colIndex: colIndex
236
+ });
237
+ if (rowSpan) {
238
+ obj.props.rowSpan = rowSpan;
239
+ rowSpans.push({ colIndex: colIndex, rowIndex: rowIndex, rowSpan: rowSpan });
240
+ }
241
+ }
242
+ if (column.colSpanExpr) {
243
+ var colSpan = +filter(column.colSpanExpr, {
244
+ record: record,
245
+ rowIndex: rowIndex,
246
+ colIndex: colIndex
247
+ });
248
+ if (colSpan) {
249
+ obj.props.colSpan = colSpan;
250
+ colSpans.push({ colIndex: colIndex, rowIndex: rowIndex, colSpan: colSpan });
251
+ }
252
+ }
253
+ rowSpans.forEach(function (item) {
254
+ if (colIndex === item.colIndex &&
255
+ rowIndex > item.rowIndex &&
256
+ rowIndex < item.rowIndex + (item.rowSpan || 0)) {
257
+ obj.props.rowSpan = 0;
258
+ }
259
+ });
260
+ colSpans.forEach(function (item) {
261
+ if (rowIndex === item.rowIndex &&
262
+ colIndex > item.colIndex &&
263
+ colIndex < item.colIndex + (item.colSpan || 0)) {
264
+ obj.props.colSpan = 0;
265
+ }
266
+ });
267
+ return obj;
268
+ }
269
+ });
270
+ }
271
+ // 设置了单元格样式
272
+ if (column.classNameExpr) {
273
+ clone.className = function (record, rowIndex) {
274
+ var className = filter(column.classNameExpr, { record: record, rowIndex: rowIndex });
275
+ return "".concat(className).concat(column.className ? " ".concat(column.className) : '');
276
+ };
277
+ }
278
+ // 设置了列搜索
279
+ if (column.searchable) {
280
+ clone.filterDropdown = (React.createElement(HeadCellSearchDropDown, __assign({}, _this.props, { popOverContainer: _this.getPopOverContainer, name: column.name, searchable: column.searchable, orderBy: store.orderBy, orderDir: store.order, data: store.query, key: 'th-search-' + col, store: store })));
281
+ }
282
+ if (column.children) {
283
+ clone.children = _this.buildColumns(column.children);
284
+ }
285
+ cols.push(clone);
286
+ });
287
+ return cols;
288
+ };
289
+ Table2.prototype.buildSummary = function (key, summary) {
290
+ var _this = this;
291
+ var result = [];
292
+ if (Array.isArray(summary)) {
293
+ summary.forEach(function (s, index) {
294
+ if (isObject(s)) {
295
+ result.push({
296
+ colSpan: s.colSpan,
297
+ fixed: s.fixed,
298
+ render: function (dataSouce) {
299
+ return _this.renderSchema(key, s, {
300
+ data: dataSouce
301
+ });
302
+ }
303
+ });
304
+ }
305
+ else if (Array.isArray(s)) {
306
+ if (!result[index]) {
307
+ result.push([]);
308
+ }
309
+ s.forEach(function (d) {
310
+ result[index].push({
311
+ colSpan: d.colSpan,
312
+ fixed: d.fixed,
313
+ render: function (dataSouce) {
314
+ return _this.renderSchema(key, d, {
315
+ data: dataSouce
316
+ });
317
+ }
318
+ });
319
+ });
320
+ }
321
+ });
322
+ }
323
+ return result.length ? result : null;
324
+ };
325
+ Table2.prototype.reloadTarget = function (target, data) {
326
+ var scoped = this.context;
327
+ scoped.reload(target, data);
328
+ };
329
+ Table2.prototype.handleSave = function (rows, diff, indexes, unModifiedItems, rowsOrigin, options) {
330
+ var _this = this;
331
+ var _a = this.props, store = _a.store, quickSaveApi = _a.quickSaveApi, quickSaveItemApi = _a.quickSaveItemApi, primaryField = _a.primaryField, env = _a.env, messages = _a.messages, reload = _a.reload;
332
+ if (Array.isArray(rows)) {
333
+ if (!isEffectiveApi(quickSaveApi)) {
334
+ env && env.alert('Table2 quickSaveApi is required');
335
+ return;
336
+ }
337
+ var data_1 = createObject(store.data, {
338
+ rows: rows,
339
+ rowsDiff: diff,
340
+ indexes: indexes,
341
+ rowsOrigin: rowsOrigin
342
+ });
343
+ if (rows.length && rows[0].hasOwnProperty(primaryField || 'id')) {
344
+ data_1.ids = rows
345
+ .map(function (item) { return item[primaryField || 'id']; })
346
+ .join(',');
347
+ }
348
+ if (unModifiedItems) {
349
+ data_1.unModifiedItems = unModifiedItems;
350
+ }
351
+ store
352
+ .saveRemote(quickSaveApi, data_1, {
353
+ successMessage: messages && messages.saveFailed,
354
+ errorMessage: messages && messages.saveSuccess
355
+ })
356
+ .then(function () {
357
+ reload && _this.reloadTarget(reload, data_1);
358
+ })
359
+ .catch(function () { });
360
+ }
361
+ else {
362
+ if (!isEffectiveApi(quickSaveItemApi)) {
363
+ env && env.alert('Table2 quickSaveItemApi is required!');
364
+ return;
365
+ }
366
+ var data_2 = createObject(store.data, {
367
+ item: rows,
368
+ modified: diff,
369
+ origin: rowsOrigin
370
+ });
371
+ var sendData = createObject(data_2, rows);
372
+ store
373
+ .saveRemote(quickSaveItemApi, sendData)
374
+ .then(function () {
375
+ reload && _this.reloadTarget(reload, data_2);
376
+ })
377
+ .catch(function () {
378
+ (options === null || options === void 0 ? void 0 : options.resetOnFailed) && _this.control.reset();
379
+ });
380
+ }
381
+ };
382
+ Table2.prototype.handleQuickChange = function (item, values, saveImmediately, savePristine, options) {
383
+ if (!isAlive(item)) {
384
+ return;
385
+ }
386
+ var _a = this.props, onSave = _a.onSave, onPristineChange = _a.onPristineChange, primaryField = _a.primaryField, quickSaveItemApi = _a.quickSaveItemApi;
387
+ item.change(values, savePristine);
388
+ // 值发生变化了,需要通过 onSelect 通知到外面,否则会出现数据不同步的问题
389
+ item.modified && this.syncSelected();
390
+ if (savePristine) {
391
+ onPristineChange === null || onPristineChange === void 0 ? void 0 : onPristineChange(item.data, item.path);
392
+ return;
393
+ }
394
+ if (saveImmediately && saveImmediately.api) {
395
+ this.props.onAction &&
396
+ this.props.onAction(null, {
397
+ actionType: 'ajax',
398
+ api: saveImmediately.api,
399
+ reload: options === null || options === void 0 ? void 0 : options.reload
400
+ }, values);
401
+ return;
402
+ }
403
+ onSave
404
+ ? onSave(item.data, difference(item.data, item.pristine, ['id', primaryField]), item.path, undefined, item.pristine, options)
405
+ : this.handleSave(quickSaveItemApi ? item.data : [item.data], difference(item.data, item.pristine, ['id', primaryField]), [item.path], undefined, item.pristine, options);
406
+ };
407
+ Table2.prototype.handleAction = function (e, action, ctx) {
408
+ var onAction = this.props.onAction;
409
+ // todo
410
+ onAction && onAction(e, action, ctx);
411
+ };
412
+ Table2.prototype.renderActions = function (region) {
413
+ var _this = this;
414
+ var _a = this.props, actions = _a.actions, render = _a.render, store = _a.store, cx = _a.classnames, data = _a.data, columnsTogglable = _a.columnsTogglable, $path = _a.$path;
415
+ // 如果table是在crud里面,自定义显示列配置在grid里,这里就不需要渲染了
416
+ var isInCrud = /(?:\/|^)crud2\//.test($path);
417
+ actions = Array.isArray(actions) ? actions.concat() : [];
418
+ var config = isObject(columnsTogglable) ? columnsTogglable : {};
419
+ // 现在默认从crud里传进来的columnsTogglable是boolean类型
420
+ // table单独配置的是SchemaNode类型
421
+ if (!isInCrud &&
422
+ store.toggable &&
423
+ region === 'header' &&
424
+ !~this.renderedToolbars.indexOf('columns-toggler')) {
425
+ actions.push({
426
+ type: 'button',
427
+ children: render('column-toggler', __assign(__assign({}, config), { type: 'column-toggler' }), {
428
+ cols: store.columnsData,
429
+ toggleAllColumns: function () { return store.toggleAllColumns(); },
430
+ toggleToggle: function (toggled, index) {
431
+ var column = store.columnsData[index];
432
+ column.toggleToggle();
433
+ }
434
+ })
435
+ });
436
+ }
437
+ return Array.isArray(actions) && actions.length ? (React.createElement("div", { className: cx('Table-toolbar') }, actions.map(function (action, key) {
438
+ return render("action/".concat(key), __assign({ type: 'button' }, action), {
439
+ onAction: _this.handleAction,
440
+ key: key,
441
+ btnDisabled: store.dragging,
442
+ data: store.getData(data)
443
+ });
444
+ }))) : null;
445
+ };
446
+ Table2.prototype.handleSelected = function (selectedRows, selectedRowKeys, unSelectedRows) {
447
+ return __awaiter(this, void 0, void 0, function () {
448
+ var _a, dispatchEvent, data, rowSelection, onSelect, store, rendererEvent;
449
+ return __generator(this, function (_b) {
450
+ switch (_b.label) {
451
+ case 0:
452
+ _a = this.props, dispatchEvent = _a.dispatchEvent, data = _a.data, rowSelection = _a.rowSelection, onSelect = _a.onSelect, store = _a.store;
453
+ return [4 /*yield*/, dispatchEvent('selectedChange', createObject(data, {
454
+ selectedItems: selectedRows,
455
+ unSelectedItems: unSelectedRows
456
+ }))];
457
+ case 1:
458
+ rendererEvent = _b.sent();
459
+ if (rendererEvent === null || rendererEvent === void 0 ? void 0 : rendererEvent.prevented) {
460
+ return [2 /*return*/, rendererEvent === null || rendererEvent === void 0 ? void 0 : rendererEvent.prevented];
461
+ }
462
+ store.updateSelected(selectedRowKeys, rowSelection === null || rowSelection === void 0 ? void 0 : rowSelection.keyField);
463
+ onSelect && onSelect(selectedRows, unSelectedRows);
464
+ return [2 /*return*/];
465
+ }
466
+ });
467
+ });
468
+ };
469
+ Table2.prototype.handleSort = function (payload) {
470
+ return __awaiter(this, void 0, void 0, function () {
471
+ var _a, dispatchEvent, data, onSort, rendererEvent;
472
+ return __generator(this, function (_b) {
473
+ switch (_b.label) {
474
+ case 0:
475
+ _a = this.props, dispatchEvent = _a.dispatchEvent, data = _a.data, onSort = _a.onSort;
476
+ return [4 /*yield*/, dispatchEvent('columnSort', createObject(data, {
477
+ orderBy: payload.orderBy,
478
+ orderDir: payload.order
479
+ }))];
480
+ case 1:
481
+ rendererEvent = _b.sent();
482
+ if (rendererEvent === null || rendererEvent === void 0 ? void 0 : rendererEvent.prevented) {
483
+ return [2 /*return*/, rendererEvent === null || rendererEvent === void 0 ? void 0 : rendererEvent.prevented];
484
+ }
485
+ onSort && onSort(payload);
486
+ return [2 /*return*/];
487
+ }
488
+ });
489
+ });
490
+ };
491
+ Table2.prototype.handleFilter = function (payload) {
492
+ return __awaiter(this, void 0, void 0, function () {
493
+ var _a, dispatchEvent, data, onFilter, rendererEvent;
494
+ return __generator(this, function (_b) {
495
+ switch (_b.label) {
496
+ case 0:
497
+ _a = this.props, dispatchEvent = _a.dispatchEvent, data = _a.data, onFilter = _a.onFilter;
498
+ return [4 /*yield*/, dispatchEvent('columnFilter', createObject(data, payload))];
499
+ case 1:
500
+ rendererEvent = _b.sent();
501
+ if (rendererEvent === null || rendererEvent === void 0 ? void 0 : rendererEvent.prevented) {
502
+ return [2 /*return*/, rendererEvent === null || rendererEvent === void 0 ? void 0 : rendererEvent.prevented];
503
+ }
504
+ onFilter && onFilter(payload);
505
+ return [2 /*return*/];
506
+ }
507
+ });
508
+ });
509
+ };
510
+ Table2.prototype.handleRowClick = function (event, rowItem, rowIndex) {
511
+ return __awaiter(this, void 0, void 0, function () {
512
+ var _a, dispatchEvent, data, onRow, rendererEvent;
513
+ return __generator(this, function (_b) {
514
+ switch (_b.label) {
515
+ case 0:
516
+ _a = this.props, dispatchEvent = _a.dispatchEvent, data = _a.data, onRow = _a.onRow;
517
+ return [4 /*yield*/, dispatchEvent('rowClick', createObject(data, { rowItem: rowItem }))];
518
+ case 1:
519
+ rendererEvent = _b.sent();
520
+ if (rendererEvent === null || rendererEvent === void 0 ? void 0 : rendererEvent.prevented) {
521
+ return [2 /*return*/, rendererEvent === null || rendererEvent === void 0 ? void 0 : rendererEvent.prevented];
522
+ }
523
+ if (rowItem && onRow) {
524
+ onRow.onRowClick && onRow.onRowClick(event, rowItem, rowIndex);
525
+ }
526
+ return [2 /*return*/];
527
+ }
528
+ });
529
+ });
530
+ };
531
+ Table2.prototype.handleOrderChange = function (oldIndex, newIndex, levels) {
532
+ return __awaiter(this, void 0, void 0, function () {
533
+ var store, rowItem;
534
+ return __generator(this, function (_a) {
535
+ store = this.props.store;
536
+ rowItem = store.getRowByIndex(oldIndex, levels);
537
+ store.exchange(oldIndex, newIndex, rowItem);
538
+ return [2 /*return*/];
539
+ });
540
+ });
541
+ };
542
+ Table2.prototype.handleSaveOrder = function () {
543
+ return __awaiter(this, void 0, void 0, function () {
544
+ var _a, store, onSaveOrder, data, dispatchEvent, movedItems, items, rendererEvent;
545
+ return __generator(this, function (_b) {
546
+ switch (_b.label) {
547
+ case 0:
548
+ _a = this.props, store = _a.store, onSaveOrder = _a.onSaveOrder, data = _a.data, dispatchEvent = _a.dispatchEvent;
549
+ movedItems = store.movedRows.map(function (item) { return item.data; });
550
+ items = store.rows.map(function (item) {
551
+ return item.getDataWithModifiedChilden();
552
+ });
553
+ return [4 /*yield*/, dispatchEvent('orderChange', createObject(data, { movedItems: movedItems }))];
554
+ case 1:
555
+ rendererEvent = _b.sent();
556
+ if (rendererEvent === null || rendererEvent === void 0 ? void 0 : rendererEvent.prevented) {
557
+ return [2 /*return*/];
558
+ }
559
+ if (!onSaveOrder || !store.movedRows.length) {
560
+ return [2 /*return*/];
561
+ }
562
+ onSaveOrder(movedItems, items);
563
+ return [2 /*return*/];
564
+ }
565
+ });
566
+ });
567
+ };
568
+ Table2.prototype.reset = function () {
569
+ var store = this.props.store;
570
+ store.reset();
571
+ };
572
+ Table2.prototype.doAction = function (action, args, throwErrors) {
573
+ var _a = this.props, store = _a.store, rowSelection = _a.rowSelection, data = _a.data;
574
+ var actionType = action === null || action === void 0 ? void 0 : action.actionType;
575
+ var keyField = rowSelection === null || rowSelection === void 0 ? void 0 : rowSelection.keyField;
576
+ switch (actionType) {
577
+ case 'selectAll':
578
+ store.updateSelectedAll(keyField);
579
+ break;
580
+ case 'clearAll':
581
+ store.updateSelected([], keyField);
582
+ break;
583
+ case 'select':
584
+ var dataSource = store.getData(data);
585
+ var selected_1 = [];
586
+ dataSource.items.forEach(function (item, rowIndex) {
587
+ var flag = evalExpression(args === null || args === void 0 ? void 0 : args.selectedRowKeysExpr, {
588
+ record: item,
589
+ rowIndex: rowIndex
590
+ });
591
+ if (flag && keyField) {
592
+ selected_1.push(item[keyField]);
593
+ }
594
+ });
595
+ store.updateSelected(selected_1, keyField);
596
+ break;
597
+ }
598
+ };
599
+ Table2.prototype.renderTable = function () {
600
+ var _this = this;
601
+ var _a = this.props, render = _a.render, title = _a.title, footer = _a.footer, rowSelection = _a.rowSelection; _a.columns; var expandable = _a.expandable, footSummary = _a.footSummary, headSummary = _a.headSummary, loading = _a.loading, cx = _a.classnames, placeholder = _a.placeholder, rowClassNameExpr = _a.rowClassNameExpr, itemActions = _a.itemActions, onRow = _a.onRow, store = _a.store, rest = __rest(_a, ["render", "title", "footer", "rowSelection", "columns", "expandable", "footSummary", "headSummary", "loading", "classnames", "placeholder", "rowClassNameExpr", "itemActions", "onRow", "store"]);
602
+ var expandableConfig = null;
603
+ if (expandable) {
604
+ expandable.expandedRowKeys; var rest_1 = __rest(expandable, ["expandedRowKeys"]);
605
+ expandableConfig = __assign({ expandedRowKeys: store.currentExpandedKeys }, rest_1);
606
+ if (expandable.expandableOn) {
607
+ expandableConfig.rowExpandable = function (record, rowIndex) {
608
+ return evalExpression(expandable.expandableOn, { record: record, rowIndex: rowIndex });
609
+ };
610
+ delete expandableConfig.expandableOn;
611
+ }
612
+ if (expandable && expandable.type) {
613
+ expandableConfig.expandedRowRender = function (record, rowIndex) {
614
+ return _this.renderSchema('expandableBody', __assign({}, expandable), { data: record });
615
+ };
616
+ }
617
+ if (expandable.expandedRowClassNameExpr) {
618
+ expandableConfig.expandedRowClassName = function (record, rowIndex) { return filter(expandable.expandedRowClassNameExpr, { record: record, rowIndex: rowIndex }); };
619
+ delete expandableConfig.expandedRowClassNameExpr;
620
+ }
621
+ }
622
+ var rowSelectionConfig = null;
623
+ if (rowSelection) {
624
+ rowSelection.selectedRowKeys; var selections = rowSelection.selections, rest_2 = __rest(rowSelection, ["selectedRowKeys", "selections"]);
625
+ rowSelectionConfig = __assign({ selectedRowKeys: store.currentSelectedRowKeys }, rest_2);
626
+ if (rowSelection.disableOn) {
627
+ var disableOn_1 = rowSelection.disableOn;
628
+ rowSelectionConfig.getCheckboxProps = function (record, rowIndex) { return ({
629
+ disabled: evalExpression(disableOn_1, { record: record, rowIndex: rowIndex })
630
+ }); };
631
+ delete rowSelectionConfig.disableOn;
632
+ }
633
+ if (selections && Array.isArray(selections)) {
634
+ rowSelectionConfig.selections = [];
635
+ selections.forEach(function (item) {
636
+ rowSelectionConfig.selections.push({
637
+ key: item.key,
638
+ text: item.text,
639
+ onSelect: function (changableRowKeys) {
640
+ var newSelectedRowKeys = [];
641
+ newSelectedRowKeys = changableRowKeys.filter(function (key, index) {
642
+ if (item.key === 'all') {
643
+ return true;
644
+ }
645
+ if (item.key === 'none') {
646
+ return false;
647
+ }
648
+ if (item.key === 'invert') {
649
+ return !store.currentSelectedRowKeys.includes(key);
650
+ }
651
+ // 奇数行
652
+ if (item.key === 'odd') {
653
+ if (index % 2 !== 0) {
654
+ return false;
655
+ }
656
+ return true;
657
+ }
658
+ // 偶数行
659
+ if (item.key === 'even') {
660
+ if (index % 2 !== 0) {
661
+ return true;
662
+ }
663
+ return false;
664
+ }
665
+ return true;
666
+ });
667
+ store.updateSelected(newSelectedRowKeys, rowSelection.keyField);
668
+ }
669
+ });
670
+ });
671
+ }
672
+ }
673
+ var rowClassName = undefined;
674
+ // 设置了行样式
675
+ if (rowClassNameExpr) {
676
+ rowClassName = function (record, rowIndex) {
677
+ return filter(rowClassNameExpr, { record: record, rowIndex: rowIndex });
678
+ };
679
+ }
680
+ var itemActionsConfig = undefined;
681
+ if (itemActions) {
682
+ var finalActions_1 = Array.isArray(itemActions)
683
+ ? itemActions.filter(function (action) { return !action.hiddenOnHover; })
684
+ : [];
685
+ if (!finalActions_1.length) {
686
+ return null;
687
+ }
688
+ itemActionsConfig = function (record, rowIndex) {
689
+ return (React.createElement("div", { className: cx('Table-itemActions') }, finalActions_1.map(function (action, index) {
690
+ return render("itemAction/".concat(index), __assign(__assign({}, action), { isMenuItem: true }), {
691
+ key: index,
692
+ item: record,
693
+ data: record,
694
+ rowIndex: rowIndex
695
+ });
696
+ })));
697
+ };
698
+ }
699
+ return (React.createElement(Table, __assign({}, rest, { title: this.renderSchema('title', title, { data: this.props.data }), footer: this.renderSchema('footer', footer, { data: this.props.data }), columns: this.buildColumns(store.filteredColumns), dataSource: store.dataSource, rowSelection: rowSelectionConfig, rowClassName: rowClassName, expandable: expandableConfig, footSummary: this.buildSummary('footSummary', footSummary), headSummary: this.buildSummary('headSummary', headSummary), loading: this.renderSchema('loading', loading), placeholder: this.renderSchema('placeholder', placeholder), onSelect: this.handleSelected, onSelectAll: this.handleSelected, onSort: this.handleSort, onFilter: this.handleFilter, onDrag: this.handleOrderChange, itemActions: itemActionsConfig, onRow: __assign(__assign({}, onRow), { onRowClick: this.handleRowClick }) })));
700
+ };
701
+ Table2.prototype.renderHeading = function () {
702
+ var _a = this.props, store = _a.store, cx = _a.classnames, headingClassName = _a.headingClassName, __ = _a.translate;
703
+ if (store.moved) {
704
+ return (React.createElement("div", { className: cx('Table-heading', headingClassName), key: "heading" }, store.moved ? (React.createElement("span", null,
705
+ __('Table.moved', {
706
+ moved: store.moved
707
+ }),
708
+ React.createElement("button", { type: "button", className: cx('Button Button--xs Button--success m-l-sm'), onClick: this.handleSaveOrder },
709
+ React.createElement(Icon, { icon: "check", className: "icon m-r-xs" }),
710
+ __('Form.submit')),
711
+ React.createElement("button", { type: "button", className: cx('Button Button--xs Button--danger m-l-sm'), onClick: this.reset },
712
+ React.createElement(Icon, { icon: "close", className: "icon m-r-xs" }),
713
+ __('Table.discard')))) : null));
714
+ }
715
+ return null;
716
+ };
717
+ Table2.prototype.render = function () {
718
+ var _a = this.props, cx = _a.classnames, _b = _a.loading, loading = _b === void 0 ? false : _b;
719
+ this.renderedToolbars = []; // 用来记录哪些 toolbar 已经渲染了
720
+ var heading = this.renderHeading();
721
+ return (React.createElement("div", { className: cx('Table-render-wrapper') },
722
+ this.renderActions('header'),
723
+ heading,
724
+ this.renderTable(),
725
+ React.createElement(Spinner, { overlay: true, show: loading })));
726
+ };
727
+ Table2.contextType = ScopedContext;
728
+ __decorate([
729
+ autobind,
730
+ __metadata("design:type", Function),
731
+ __metadata("design:paramtypes", [Object]),
732
+ __metadata("design:returntype", void 0)
733
+ ], Table2.prototype, "controlRef", null);
734
+ __decorate([
735
+ autobind,
736
+ __metadata("design:type", Function),
737
+ __metadata("design:paramtypes", []),
738
+ __metadata("design:returntype", void 0)
739
+ ], Table2.prototype, "getPopOverContainer", null);
740
+ __decorate([
741
+ autobind,
742
+ __metadata("design:type", Function),
743
+ __metadata("design:paramtypes", [Object, Object, Array,
744
+ Array, Object, Object]),
745
+ __metadata("design:returntype", void 0)
746
+ ], Table2.prototype, "handleSave", null);
747
+ __decorate([
748
+ autobind,
749
+ __metadata("design:type", Function),
750
+ __metadata("design:paramtypes", [Object, Object, Object, Boolean, Object]),
751
+ __metadata("design:returntype", void 0)
752
+ ], Table2.prototype, "handleQuickChange", null);
753
+ __decorate([
754
+ autobind,
755
+ __metadata("design:type", Function),
756
+ __metadata("design:paramtypes", [Object, Object, Object]),
757
+ __metadata("design:returntype", void 0)
758
+ ], Table2.prototype, "handleAction", null);
759
+ __decorate([
760
+ autobind,
761
+ __metadata("design:type", Function),
762
+ __metadata("design:paramtypes", [Array,
763
+ Array,
764
+ Array]),
765
+ __metadata("design:returntype", Promise)
766
+ ], Table2.prototype, "handleSelected", null);
767
+ __decorate([
768
+ autobind,
769
+ __metadata("design:type", Function),
770
+ __metadata("design:paramtypes", [Object]),
771
+ __metadata("design:returntype", Promise)
772
+ ], Table2.prototype, "handleSort", null);
773
+ __decorate([
774
+ autobind,
775
+ __metadata("design:type", Function),
776
+ __metadata("design:paramtypes", [Object]),
777
+ __metadata("design:returntype", Promise)
778
+ ], Table2.prototype, "handleFilter", null);
779
+ __decorate([
780
+ autobind,
781
+ __metadata("design:type", Function),
782
+ __metadata("design:paramtypes", [Object, Object, Number]),
783
+ __metadata("design:returntype", Promise)
784
+ ], Table2.prototype, "handleRowClick", null);
785
+ __decorate([
786
+ autobind,
787
+ __metadata("design:type", Function),
788
+ __metadata("design:paramtypes", [Number, Number, Array]),
789
+ __metadata("design:returntype", Promise)
790
+ ], Table2.prototype, "handleOrderChange", null);
791
+ __decorate([
792
+ autobind,
793
+ __metadata("design:type", Function),
794
+ __metadata("design:paramtypes", []),
795
+ __metadata("design:returntype", Promise)
796
+ ], Table2.prototype, "handleSaveOrder", null);
797
+ __decorate([
798
+ autobind,
799
+ __metadata("design:type", Function),
800
+ __metadata("design:paramtypes", []),
801
+ __metadata("design:returntype", void 0)
802
+ ], Table2.prototype, "reset", null);
803
+ return Table2;
804
+ }(React.Component));
805
+ /** @class */ ((function (_super) {
806
+ __extends(TableRenderer, _super);
807
+ function TableRenderer() {
808
+ return _super !== null && _super.apply(this, arguments) || this;
809
+ }
810
+ TableRenderer.prototype.receive = function (values, subPath) {
811
+ var _this = this;
812
+ var _a, _b;
813
+ var scoped = this.context;
814
+ var parents = (_a = scoped === null || scoped === void 0 ? void 0 : scoped.parent) === null || _a === void 0 ? void 0 : _a.getComponents();
815
+ /**
816
+ * 因为Table在scope上注册,导致getComponentByName查询组件时会优先找到Table,和CRUD联动的动作都会失效
817
+ * 这里先做兼容处理,把动作交给上层的CRUD处理
818
+ */
819
+ if (Array.isArray(parents) && parents.length) {
820
+ // CRUD的name会透传给Table,这样可以保证找到CRUD
821
+ var crud = parents.find(function (cmpt) { var _a, _b; return ((_a = cmpt === null || cmpt === void 0 ? void 0 : cmpt.props) === null || _a === void 0 ? void 0 : _a.name) === ((_b = _this.props) === null || _b === void 0 ? void 0 : _b.name); });
822
+ return (_b = crud === null || crud === void 0 ? void 0 : crud.receive) === null || _b === void 0 ? void 0 : _b.call(crud, values, subPath);
823
+ }
824
+ if (subPath) {
825
+ return scoped.send(subPath, values);
826
+ }
827
+ };
828
+ TableRenderer = __decorate([
829
+ Renderer({
830
+ type: 'table2',
831
+ storeType: TableStore2.name,
832
+ name: 'table2',
833
+ isolateScope: true
834
+ })
835
+ ], TableRenderer);
836
+ return TableRenderer;
837
+ })(Table2));
838
+
839
+ export { Table2 as default };