amis 1.10.0 → 1.10.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (536) hide show
  1. package/lib/Root.js +2 -2
  2. package/lib/Root.js.map +1 -1
  3. package/lib/RootRenderer.js +1 -1
  4. package/lib/RootRenderer.js.map +1 -1
  5. package/lib/Schema.d.ts +1 -1
  6. package/lib/Schema.js.map +1 -1
  7. package/lib/SchemaRenderer.js +4 -4
  8. package/lib/SchemaRenderer.js.map +1 -1
  9. package/lib/Scoped.js +1 -1
  10. package/lib/Scoped.js.map +1 -1
  11. package/lib/WithRootStore.js +1 -1
  12. package/lib/WithRootStore.js.map +1 -1
  13. package/lib/WithStore.js +1 -1
  14. package/lib/WithStore.js.map +1 -1
  15. package/lib/actions/AjaxAction.js +1 -1
  16. package/lib/actions/AjaxAction.js.map +1 -1
  17. package/lib/actions/Decorators.js +1 -1
  18. package/lib/actions/Decorators.js.map +1 -1
  19. package/lib/actions/EmailAction.js +1 -1
  20. package/lib/actions/EmailAction.js.map +1 -1
  21. package/lib/actions/LoopAction.js +2 -2
  22. package/lib/actions/LoopAction.js.map +1 -1
  23. package/lib/compat.js +1 -1
  24. package/lib/compat.js.map +1 -1
  25. package/lib/components/Alert2.d.ts +10 -10
  26. package/lib/components/Alert2.js +2 -2
  27. package/lib/components/Alert2.js.map +1 -1
  28. package/lib/components/AnchorNav.js +1 -1
  29. package/lib/components/AnchorNav.js.map +1 -1
  30. package/lib/components/ArrayInput.js +2 -2
  31. package/lib/components/ArrayInput.js.map +1 -1
  32. package/lib/components/AsideNav.js +4 -4
  33. package/lib/components/AsideNav.js.map +1 -1
  34. package/lib/components/Avatar.d.ts +10 -10
  35. package/lib/components/Avatar.js +3 -3
  36. package/lib/components/Avatar.js.map +1 -1
  37. package/lib/components/Badge.js +10 -10
  38. package/lib/components/Badge.js.map +1 -1
  39. package/lib/components/BaiduMapPicker.js +1 -1
  40. package/lib/components/BaiduMapPicker.js.map +1 -1
  41. package/lib/components/Breadcrumb.js +1 -1
  42. package/lib/components/Breadcrumb.js.map +1 -1
  43. package/lib/components/Button.js +3 -3
  44. package/lib/components/Button.js.map +1 -1
  45. package/lib/components/CalendarMobile.js +2 -2
  46. package/lib/components/CalendarMobile.js.map +1 -1
  47. package/lib/components/Card.js +1 -1
  48. package/lib/components/Card.js.map +1 -1
  49. package/lib/components/ChainedSelection.js +1 -1
  50. package/lib/components/ChainedSelection.js.map +1 -1
  51. package/lib/components/Checkbox.js +10 -4
  52. package/lib/components/Checkbox.js.map +2 -2
  53. package/lib/components/Collapse.js +3 -3
  54. package/lib/components/Collapse.js.map +1 -1
  55. package/lib/components/ColorPicker.js +5 -5
  56. package/lib/components/ColorPicker.js.map +1 -1
  57. package/lib/components/ContextMenu.js +3 -3
  58. package/lib/components/ContextMenu.js.map +1 -1
  59. package/lib/components/DatePicker.js +3 -3
  60. package/lib/components/DatePicker.js.map +1 -1
  61. package/lib/components/DateRangePicker.js +14 -14
  62. package/lib/components/DateRangePicker.js.map +1 -1
  63. package/lib/components/Drawer.js +10 -10
  64. package/lib/components/Drawer.js.map +1 -1
  65. package/lib/components/Editor.js +3 -3
  66. package/lib/components/Editor.js.map +1 -1
  67. package/lib/components/GridNav.js +11 -11
  68. package/lib/components/GridNav.js.map +1 -1
  69. package/lib/components/InputBox.js +1 -1
  70. package/lib/components/InputBox.js.map +1 -1
  71. package/lib/components/Layout.js +1 -1
  72. package/lib/components/Layout.js.map +1 -1
  73. package/lib/components/ListGroup.d.ts +10 -10
  74. package/lib/components/ListGroup.js +1 -1
  75. package/lib/components/ListGroup.js.map +1 -1
  76. package/lib/components/Modal.js +4 -4
  77. package/lib/components/Modal.js.map +1 -1
  78. package/lib/components/MonthRangePicker.js +13 -13
  79. package/lib/components/MonthRangePicker.js.map +1 -1
  80. package/lib/components/NumberInput.js +3 -3
  81. package/lib/components/NumberInput.js.map +1 -1
  82. package/lib/components/Picker.js +4 -4
  83. package/lib/components/Picker.js.map +1 -1
  84. package/lib/components/PickerColumn.js +4 -4
  85. package/lib/components/PickerColumn.js.map +1 -1
  86. package/lib/components/PopOver.js +2 -2
  87. package/lib/components/PopOver.js.map +1 -1
  88. package/lib/components/PopUp.js +10 -10
  89. package/lib/components/PopUp.js.map +1 -1
  90. package/lib/components/Progress.js +5 -5
  91. package/lib/components/Progress.js.map +1 -1
  92. package/lib/components/PullRefresh.js +2 -2
  93. package/lib/components/PullRefresh.js.map +1 -1
  94. package/lib/components/Radios.js +2 -2
  95. package/lib/components/Radios.js.map +1 -1
  96. package/lib/components/Range.js +9 -3
  97. package/lib/components/Range.js.map +2 -2
  98. package/lib/components/Rating.js +1 -1
  99. package/lib/components/Rating.js.map +1 -1
  100. package/lib/components/ResultBox.d.ts +41 -40
  101. package/lib/components/ResultBox.js +26 -22
  102. package/lib/components/ResultBox.js.map +2 -2
  103. package/lib/components/ResultList.js +5 -5
  104. package/lib/components/ResultList.js.map +1 -1
  105. package/lib/components/ResultTreeList.js +1 -1
  106. package/lib/components/ResultTreeList.js.map +1 -1
  107. package/lib/components/SearchBox.d.ts +40 -40
  108. package/lib/components/Select.js +14 -10
  109. package/lib/components/Select.js.map +2 -2
  110. package/lib/components/SparkLine.js +3 -3
  111. package/lib/components/SparkLine.js.map +1 -1
  112. package/lib/components/Spinner.js +2 -2
  113. package/lib/components/Spinner.js.map +1 -1
  114. package/lib/components/Steps.d.ts +1 -0
  115. package/lib/components/Steps.js +10 -8
  116. package/lib/components/Steps.js.map +2 -2
  117. package/lib/components/Switch.js +2 -2
  118. package/lib/components/Switch.js.map +1 -1
  119. package/lib/components/Tabs.js +5 -5
  120. package/lib/components/Tabs.js.map +1 -1
  121. package/lib/components/Tag.js +3 -3
  122. package/lib/components/Tag.js.map +1 -1
  123. package/lib/components/Textarea.js +2 -2
  124. package/lib/components/Textarea.js.map +1 -1
  125. package/lib/components/Timeline.js +1 -1
  126. package/lib/components/Timeline.js.map +1 -1
  127. package/lib/components/TimelineItem.js +3 -3
  128. package/lib/components/TimelineItem.js.map +1 -1
  129. package/lib/components/Toast.js +3 -3
  130. package/lib/components/Toast.js.map +1 -1
  131. package/lib/components/Tooltip.js +1 -1
  132. package/lib/components/Tooltip.js.map +1 -1
  133. package/lib/components/TransferSearch.js +1 -1
  134. package/lib/components/TransferSearch.js.map +1 -1
  135. package/lib/components/Tree.js +5 -5
  136. package/lib/components/Tree.js.map +1 -1
  137. package/lib/components/TreeSelection.js +2 -2
  138. package/lib/components/TreeSelection.js.map +1 -1
  139. package/lib/components/UserSelect.js +4 -4
  140. package/lib/components/UserSelect.js.map +1 -1
  141. package/lib/components/WithRemoteConfig.js +1 -1
  142. package/lib/components/WithRemoteConfig.js.map +1 -1
  143. package/lib/components/WithStore.js +1 -1
  144. package/lib/components/WithStore.js.map +1 -1
  145. package/lib/components/calendar/DaysView.js +2 -2
  146. package/lib/components/calendar/DaysView.js.map +1 -1
  147. package/lib/components/calendar/QuartersView.js +1 -1
  148. package/lib/components/calendar/QuartersView.js.map +1 -1
  149. package/lib/components/calendar/TimeView.js +2 -2
  150. package/lib/components/calendar/TimeView.js.map +1 -1
  151. package/lib/components/condition-builder/Group.js +2 -2
  152. package/lib/components/condition-builder/Group.js.map +1 -1
  153. package/lib/components/condition-builder/GroupOrItem.js +1 -1
  154. package/lib/components/condition-builder/GroupOrItem.js.map +1 -1
  155. package/lib/components/condition-builder/index.d.ts +12 -2
  156. package/lib/components/condition-builder/index.js +40 -4
  157. package/lib/components/condition-builder/index.js.map +2 -2
  158. package/lib/components/formula/Editor.js +5 -5
  159. package/lib/components/formula/Editor.js.map +1 -1
  160. package/lib/components/formula/Picker.d.ts +0 -1
  161. package/lib/components/formula/Picker.js +8 -17
  162. package/lib/components/formula/Picker.js.map +2 -2
  163. package/lib/components/formula/VariableList.js +7 -7
  164. package/lib/components/formula/VariableList.js.map +1 -1
  165. package/lib/components/formula/plugin.js +1 -1
  166. package/lib/components/formula/plugin.js.map +1 -1
  167. package/lib/components/icons.js +1 -1
  168. package/lib/components/icons.js.map +1 -1
  169. package/lib/components/schema-editor/SchemaVariableList.js +1 -1
  170. package/lib/components/schema-editor/SchemaVariableList.js.map +1 -1
  171. package/lib/components/table/Cell.js +2 -2
  172. package/lib/components/table/Cell.js.map +1 -1
  173. package/lib/components/table/HeadCellFilter.js +1 -1
  174. package/lib/components/table/HeadCellFilter.js.map +1 -1
  175. package/lib/components/table/HeadCellSelect.js +1 -1
  176. package/lib/components/table/HeadCellSelect.js.map +1 -1
  177. package/lib/components/table/index.d.ts +9 -7
  178. package/lib/components/table/index.js +111 -111
  179. package/lib/components/table/index.js.map +2 -2
  180. package/lib/components/virtual-list/SizeAndPositionManager.js +4 -4
  181. package/lib/components/virtual-list/SizeAndPositionManager.js.map +1 -1
  182. package/lib/env.js +1 -1
  183. package/lib/env.js.map +1 -1
  184. package/lib/factory.js +3 -3
  185. package/lib/factory.js.map +1 -1
  186. package/lib/index.d.ts +1 -0
  187. package/lib/index.js +2 -1
  188. package/lib/index.js.map +2 -2
  189. package/lib/locale.js +1 -1
  190. package/lib/locale.js.map +1 -1
  191. package/lib/renderers/AnchorNav.js +1 -1
  192. package/lib/renderers/AnchorNav.js.map +1 -1
  193. package/lib/renderers/App.js +2 -2
  194. package/lib/renderers/App.js.map +1 -1
  195. package/lib/renderers/Audio.js +2 -2
  196. package/lib/renderers/Audio.js.map +1 -1
  197. package/lib/renderers/ButtonGroup.d.ts +2 -2
  198. package/lib/renderers/ButtonGroup.js.map +1 -1
  199. package/lib/renderers/CRUD.js +8 -8
  200. package/lib/renderers/CRUD.js.map +1 -1
  201. package/lib/renderers/CRUD2.d.ts +213 -0
  202. package/lib/renderers/CRUD2.js +724 -0
  203. package/lib/renderers/CRUD2.js.map +13 -0
  204. package/lib/renderers/Card.js +6 -6
  205. package/lib/renderers/Card.js.map +1 -1
  206. package/lib/renderers/Card2.d.ts +1 -1
  207. package/lib/renderers/Card2.js +1 -2
  208. package/lib/renderers/Card2.js.map +2 -2
  209. package/lib/renderers/Cards.d.ts +3 -0
  210. package/lib/renderers/Cards.js +62 -15
  211. package/lib/renderers/Cards.js.map +2 -2
  212. package/lib/renderers/Carousel.js +2 -2
  213. package/lib/renderers/Carousel.js.map +1 -1
  214. package/lib/renderers/Chart.js +2 -2
  215. package/lib/renderers/Chart.js.map +1 -1
  216. package/lib/renderers/Dialog.js +5 -5
  217. package/lib/renderers/Dialog.js.map +1 -1
  218. package/lib/renderers/Divider.js +1 -1
  219. package/lib/renderers/Divider.js.map +1 -1
  220. package/lib/renderers/Drawer.js +4 -4
  221. package/lib/renderers/Drawer.js.map +1 -1
  222. package/lib/renderers/DropDownButton.js +5 -5
  223. package/lib/renderers/DropDownButton.js.map +1 -1
  224. package/lib/renderers/Each.js +1 -1
  225. package/lib/renderers/Each.js.map +1 -1
  226. package/lib/renderers/Flex.js +2 -2
  227. package/lib/renderers/Flex.js.map +1 -1
  228. package/lib/renderers/Form/ButtonGroupSelect.js +4 -4
  229. package/lib/renderers/Form/ButtonGroupSelect.js.map +1 -1
  230. package/lib/renderers/Form/ButtonToolbar.js +1 -1
  231. package/lib/renderers/Form/ButtonToolbar.js.map +1 -1
  232. package/lib/renderers/Form/ChainedSelect.js +2 -2
  233. package/lib/renderers/Form/ChainedSelect.js.map +1 -1
  234. package/lib/renderers/Form/ChartRadios.js +1 -1
  235. package/lib/renderers/Form/ChartRadios.js.map +1 -1
  236. package/lib/renderers/Form/Checkbox.js +1 -1
  237. package/lib/renderers/Form/Checkbox.js.map +1 -1
  238. package/lib/renderers/Form/Combo.js +8 -8
  239. package/lib/renderers/Form/Combo.js.map +1 -1
  240. package/lib/renderers/Form/ConditionBuilder.d.ts +10 -0
  241. package/lib/renderers/Form/ConditionBuilder.js +6 -2
  242. package/lib/renderers/Form/ConditionBuilder.js.map +2 -2
  243. package/lib/renderers/Form/DiffEditor.d.ts +66 -20
  244. package/lib/renderers/Form/DiffEditor.js +2 -2
  245. package/lib/renderers/Form/DiffEditor.js.map +1 -1
  246. package/lib/renderers/Form/Editor.d.ts +66 -20
  247. package/lib/renderers/Form/Editor.js +4 -4
  248. package/lib/renderers/Form/Editor.js.map +1 -1
  249. package/lib/renderers/Form/FieldSet.js +1 -1
  250. package/lib/renderers/Form/FieldSet.js.map +1 -1
  251. package/lib/renderers/Form/Group.js +4 -4
  252. package/lib/renderers/Form/Group.js.map +1 -1
  253. package/lib/renderers/Form/IconPicker.js +2 -2
  254. package/lib/renderers/Form/IconPicker.js.map +1 -1
  255. package/lib/renderers/Form/InputColor.js +1 -1
  256. package/lib/renderers/Form/InputColor.js.map +1 -1
  257. package/lib/renderers/Form/InputDateRange.js +1 -1
  258. package/lib/renderers/Form/InputDateRange.js.map +1 -1
  259. package/lib/renderers/Form/InputFile.js +5 -5
  260. package/lib/renderers/Form/InputFile.js.map +1 -1
  261. package/lib/renderers/Form/InputFormula.js +1 -1
  262. package/lib/renderers/Form/InputFormula.js.map +2 -2
  263. package/lib/renderers/Form/InputGroup.js +1 -1
  264. package/lib/renderers/Form/InputGroup.js.map +1 -1
  265. package/lib/renderers/Form/InputImage.d.ts +1 -1
  266. package/lib/renderers/Form/InputImage.js +8 -4
  267. package/lib/renderers/Form/InputImage.js.map +2 -2
  268. package/lib/renderers/Form/InputMonthRange.js +1 -1
  269. package/lib/renderers/Form/InputMonthRange.js.map +1 -1
  270. package/lib/renderers/Form/InputNumber.js +2 -2
  271. package/lib/renderers/Form/InputNumber.js.map +1 -1
  272. package/lib/renderers/Form/InputQuarterRange.js +1 -1
  273. package/lib/renderers/Form/InputQuarterRange.js.map +1 -1
  274. package/lib/renderers/Form/InputRange.js +2 -2
  275. package/lib/renderers/Form/InputRange.js.map +1 -1
  276. package/lib/renderers/Form/InputRepeat.js +2 -2
  277. package/lib/renderers/Form/InputRepeat.js.map +1 -1
  278. package/lib/renderers/Form/InputRichText.js +2 -2
  279. package/lib/renderers/Form/InputRichText.js.map +1 -1
  280. package/lib/renderers/Form/InputSubForm.js +5 -5
  281. package/lib/renderers/Form/InputSubForm.js.map +1 -1
  282. package/lib/renderers/Form/InputTable.js +2 -2
  283. package/lib/renderers/Form/InputTable.js.map +1 -1
  284. package/lib/renderers/Form/InputTag.js +1 -1
  285. package/lib/renderers/Form/InputTag.js.map +1 -1
  286. package/lib/renderers/Form/InputText.js +12 -12
  287. package/lib/renderers/Form/InputText.js.map +1 -1
  288. package/lib/renderers/Form/InputTree.js +1 -1
  289. package/lib/renderers/Form/InputTree.js.map +1 -1
  290. package/lib/renderers/Form/InputYearRange.js +1 -1
  291. package/lib/renderers/Form/InputYearRange.js.map +1 -1
  292. package/lib/renderers/Form/Item.d.ts +4 -0
  293. package/lib/renderers/Form/Item.js +8 -8
  294. package/lib/renderers/Form/Item.js.map +2 -2
  295. package/lib/renderers/Form/ListSelect.js +2 -2
  296. package/lib/renderers/Form/ListSelect.js.map +1 -1
  297. package/lib/renderers/Form/NestedSelect.js +1 -1
  298. package/lib/renderers/Form/NestedSelect.js.map +1 -1
  299. package/lib/renderers/Form/Options.js +2 -2
  300. package/lib/renderers/Form/Options.js.map +1 -1
  301. package/lib/renderers/Form/Picker.js +3 -3
  302. package/lib/renderers/Form/Picker.js.map +1 -1
  303. package/lib/renderers/Form/Radios.js +1 -1
  304. package/lib/renderers/Form/Radios.js.map +1 -1
  305. package/lib/renderers/Form/Select.js +3 -3
  306. package/lib/renderers/Form/Select.js.map +1 -1
  307. package/lib/renderers/Form/Static.js +1 -1
  308. package/lib/renderers/Form/Static.js.map +1 -1
  309. package/lib/renderers/Form/TabsTransfer.js +1 -1
  310. package/lib/renderers/Form/TabsTransfer.js.map +1 -1
  311. package/lib/renderers/Form/TabsTransferPicker.js +1 -1
  312. package/lib/renderers/Form/TabsTransferPicker.js.map +1 -1
  313. package/lib/renderers/Form/Transfer.js +3 -3
  314. package/lib/renderers/Form/Transfer.js.map +1 -1
  315. package/lib/renderers/Form/TreeSelect.d.ts +0 -1
  316. package/lib/renderers/Form/TreeSelect.js +5 -13
  317. package/lib/renderers/Form/TreeSelect.js.map +2 -2
  318. package/lib/renderers/Form/index.js +11 -7
  319. package/lib/renderers/Form/index.js.map +2 -2
  320. package/lib/renderers/Grid.js +7 -7
  321. package/lib/renderers/Grid.js.map +1 -1
  322. package/lib/renderers/Grid2D.js +1 -1
  323. package/lib/renderers/Grid2D.js.map +1 -1
  324. package/lib/renderers/HBox.js +5 -5
  325. package/lib/renderers/HBox.js.map +1 -1
  326. package/lib/renderers/IFrame.js +1 -1
  327. package/lib/renderers/IFrame.js.map +1 -1
  328. package/lib/renderers/Icon.d.ts +1 -1
  329. package/lib/renderers/Icon.js +16 -11
  330. package/lib/renderers/Icon.js.map +2 -2
  331. package/lib/renderers/Image.js +3 -3
  332. package/lib/renderers/Image.js.map +1 -1
  333. package/lib/renderers/List.js +14 -14
  334. package/lib/renderers/List.js.map +1 -1
  335. package/lib/renderers/Mapping.js +1 -1
  336. package/lib/renderers/Mapping.js.map +1 -1
  337. package/lib/renderers/Operation.js +1 -1
  338. package/lib/renderers/Operation.js.map +1 -1
  339. package/lib/renderers/Page.js +7 -7
  340. package/lib/renderers/Page.js.map +1 -1
  341. package/lib/renderers/Panel.js +2 -2
  342. package/lib/renderers/Panel.js.map +1 -1
  343. package/lib/renderers/PopOver.js +2 -2
  344. package/lib/renderers/PopOver.js.map +1 -1
  345. package/lib/renderers/Portlet.js +10 -10
  346. package/lib/renderers/Portlet.js.map +1 -1
  347. package/lib/renderers/Property.js +3 -3
  348. package/lib/renderers/Property.js.map +1 -1
  349. package/lib/renderers/QRCode.js +1 -1
  350. package/lib/renderers/QRCode.js.map +1 -1
  351. package/lib/renderers/QuickEdit.js +11 -11
  352. package/lib/renderers/QuickEdit.js.map +1 -1
  353. package/lib/renderers/Remark.js +1 -1
  354. package/lib/renderers/Remark.js.map +1 -1
  355. package/lib/renderers/Service.js +2 -2
  356. package/lib/renderers/Service.js.map +1 -1
  357. package/lib/renderers/Status.js +1 -1
  358. package/lib/renderers/Status.js.map +1 -1
  359. package/lib/renderers/Table/ColumnToggler.js +5 -5
  360. package/lib/renderers/Table/ColumnToggler.js.map +1 -1
  361. package/lib/renderers/Table/HeadCellFilterDropdown.js +2 -2
  362. package/lib/renderers/Table/HeadCellFilterDropdown.js.map +1 -1
  363. package/lib/renderers/Table/HeadCellSearchDropdown.js +2 -2
  364. package/lib/renderers/Table/HeadCellSearchDropdown.js.map +1 -1
  365. package/lib/renderers/Table/ItemActionsWrapper.js +2 -2
  366. package/lib/renderers/Table/ItemActionsWrapper.js.map +1 -1
  367. package/lib/renderers/Table/TableBody.js +3 -3
  368. package/lib/renderers/Table/TableBody.js.map +1 -1
  369. package/lib/renderers/Table/TableContent.js +1 -1
  370. package/lib/renderers/Table/TableContent.js.map +1 -1
  371. package/lib/renderers/Table/TableRow.js +4 -4
  372. package/lib/renderers/Table/TableRow.js.map +1 -1
  373. package/lib/renderers/Table/index.js +32 -32
  374. package/lib/renderers/Table/index.js.map +2 -2
  375. package/lib/renderers/Table-v2/HeadCellSearchDropdown.js +1 -1
  376. package/lib/renderers/Table-v2/HeadCellSearchDropdown.js.map +1 -1
  377. package/lib/renderers/Table-v2/index.d.ts +8 -5
  378. package/lib/renderers/Table-v2/index.js +88 -59
  379. package/lib/renderers/Table-v2/index.js.map +2 -2
  380. package/lib/renderers/TableView.js +4 -4
  381. package/lib/renderers/TableView.js.map +1 -1
  382. package/lib/renderers/Tabs.js +4 -4
  383. package/lib/renderers/Tabs.js.map +1 -1
  384. package/lib/renderers/Tasks.js +1 -1
  385. package/lib/renderers/Tasks.js.map +1 -1
  386. package/lib/renderers/Tpl.js +1 -1
  387. package/lib/renderers/Tpl.js.map +1 -1
  388. package/lib/renderers/VBox.js +2 -2
  389. package/lib/renderers/VBox.js.map +1 -1
  390. package/lib/renderers/Video.js +4 -4
  391. package/lib/renderers/Video.js.map +1 -1
  392. package/lib/renderers/Wizard.js +7 -7
  393. package/lib/renderers/Wizard.js.map +1 -1
  394. package/lib/renderers/Wrapper.js +1 -1
  395. package/lib/renderers/Wrapper.js.map +1 -1
  396. package/lib/store/app.js +3 -3
  397. package/lib/store/app.js.map +1 -1
  398. package/lib/store/combo.d.ts +72 -22
  399. package/lib/store/crud.d.ts +2 -0
  400. package/lib/store/crud.js +22 -2
  401. package/lib/store/crud.js.map +2 -2
  402. package/lib/store/form.d.ts +30 -9
  403. package/lib/store/form.js +30 -12
  404. package/lib/store/form.js.map +2 -2
  405. package/lib/store/formItem.d.ts +3 -1
  406. package/lib/store/formItem.js +6 -8
  407. package/lib/store/formItem.js.map +2 -2
  408. package/lib/store/list.d.ts +2 -0
  409. package/lib/store/list.js +8 -0
  410. package/lib/store/list.js.map +2 -2
  411. package/lib/store/node.js +2 -2
  412. package/lib/store/node.js.map +1 -1
  413. package/lib/store/table-v2.js +7 -7
  414. package/lib/store/table-v2.js.map +1 -1
  415. package/lib/store/table.d.ts +60 -18
  416. package/lib/store/table.js +6 -6
  417. package/lib/store/table.js.map +1 -1
  418. package/lib/theme.js +1 -1
  419. package/lib/theme.js.map +1 -1
  420. package/lib/themes/ang-ie11.css +187 -30
  421. package/lib/themes/ang.css +190 -31
  422. package/lib/themes/ang.css.map +1 -1
  423. package/lib/themes/antd-ie11.css +182 -25
  424. package/lib/themes/antd.css +190 -31
  425. package/lib/themes/antd.css.map +1 -1
  426. package/lib/themes/cxd-ie11.css +189 -32
  427. package/lib/themes/cxd.css +192 -33
  428. package/lib/themes/cxd.css.map +1 -1
  429. package/lib/themes/dark-ie11.css +184 -27
  430. package/lib/themes/dark.css +190 -31
  431. package/lib/themes/dark.css.map +1 -1
  432. package/lib/themes/default-ie11.css +189 -32
  433. package/lib/themes/default.css +192 -33
  434. package/lib/themes/default.css.map +1 -1
  435. package/lib/types.d.ts +1 -1
  436. package/lib/types.js.map +1 -1
  437. package/lib/utils/ColorScale.js +4 -4
  438. package/lib/utils/ColorScale.js.map +1 -1
  439. package/lib/utils/api.js +7 -7
  440. package/lib/utils/api.js.map +1 -1
  441. package/lib/utils/autobind.js +2 -2
  442. package/lib/utils/autobind.js.map +1 -1
  443. package/lib/utils/columnsSplit.js +2 -2
  444. package/lib/utils/columnsSplit.js.map +1 -1
  445. package/lib/utils/debug.js +13 -13
  446. package/lib/utils/debug.js.map +1 -1
  447. package/lib/utils/dom.js +1 -1
  448. package/lib/utils/dom.js.map +1 -1
  449. package/lib/utils/filter-schema.js +1 -1
  450. package/lib/utils/filter-schema.js.map +1 -1
  451. package/lib/utils/formula.js +1 -1
  452. package/lib/utils/formula.js.map +1 -1
  453. package/lib/utils/helper.js +6 -6
  454. package/lib/utils/helper.js.map +1 -1
  455. package/lib/utils/icon.js +7 -0
  456. package/lib/utils/icon.js.map +2 -2
  457. package/lib/utils/resize-sensor.js +1 -1
  458. package/lib/utils/resize-sensor.js.map +1 -1
  459. package/lib/utils/style.js +1 -1
  460. package/lib/utils/style.js.map +1 -1
  461. package/lib/utils/tpl-builtin.js +1 -1
  462. package/lib/utils/tpl-builtin.js.map +1 -1
  463. package/lib/utils/tpl-lodash.js +1 -1
  464. package/lib/utils/tpl-lodash.js.map +1 -1
  465. package/lib/utils/tpl.js +2 -2
  466. package/lib/utils/tpl.js.map +1 -1
  467. package/lib/utils/validations.js +2 -2
  468. package/lib/utils/validations.js.map +1 -1
  469. package/package.json +1 -1
  470. package/schema.json +231 -365
  471. package/scss/_properties.scss +5 -3
  472. package/scss/components/_condition-builder.scss +11 -0
  473. package/scss/components/_crud.scss +8 -3
  474. package/scss/components/_crud2.scss +148 -0
  475. package/scss/components/_formula.scss +2 -3
  476. package/scss/components/_result-box.scss +25 -7
  477. package/scss/components/_steps.scss +21 -26
  478. package/scss/components/_table-v2.scss +1 -3
  479. package/scss/components/form/_checks.scss +26 -16
  480. package/scss/components/form/_select.scss +4 -0
  481. package/scss/themes/_common.scss +1 -0
  482. package/scss/themes/_cxd-variables.scss +2 -2
  483. package/sdk/ang-ie11.css +228 -32
  484. package/sdk/ang.css +231 -33
  485. package/sdk/antd-ie11.css +223 -27
  486. package/sdk/antd.css +231 -33
  487. package/sdk/barcode.js +51 -51
  488. package/sdk/charts.js +17 -17
  489. package/sdk/codemirror.js +7 -7
  490. package/sdk/color-picker.js +65 -65
  491. package/sdk/cropperjs.js +3 -3
  492. package/sdk/cxd-ie11.css +230 -34
  493. package/sdk/cxd.css +233 -35
  494. package/sdk/dark-ie11.css +225 -29
  495. package/sdk/dark.css +231 -33
  496. package/sdk/exceljs.js +1 -1
  497. package/sdk/markdown.js +69 -69
  498. package/sdk/papaparse.js +3 -3
  499. package/sdk/renderers/Form/CityDB.js +1 -1
  500. package/sdk/rest.js +16 -16
  501. package/sdk/rich-text.js +62 -62
  502. package/sdk/sdk-ie11.css +230 -34
  503. package/sdk/sdk.css +233 -35
  504. package/sdk/sdk.js +1663 -1775
  505. package/sdk/thirds/hls.js/hls.js +19 -19
  506. package/sdk/thirds/mpegts.js/mpegts.js +2 -2
  507. package/sdk/tinymce.js +57 -57
  508. package/src/Schema.ts +1 -0
  509. package/src/components/Checkbox.tsx +10 -3
  510. package/src/components/Range.tsx +14 -7
  511. package/src/components/ResultBox.tsx +65 -54
  512. package/src/components/Select.tsx +10 -7
  513. package/src/components/Steps.tsx +60 -18
  514. package/src/components/condition-builder/index.tsx +107 -8
  515. package/src/components/formula/Picker.tsx +27 -16
  516. package/src/components/table/index.tsx +190 -193
  517. package/src/index.tsx +1 -0
  518. package/src/renderers/ButtonGroup.tsx +2 -2
  519. package/src/renderers/CRUD2.tsx +1213 -0
  520. package/src/renderers/Card2.tsx +2 -3
  521. package/src/renderers/Cards.tsx +55 -10
  522. package/src/renderers/Form/ConditionBuilder.tsx +19 -2
  523. package/src/renderers/Form/InputFormula.tsx +1 -1
  524. package/src/renderers/Form/InputImage.tsx +7 -5
  525. package/src/renderers/Form/Item.tsx +11 -1
  526. package/src/renderers/Form/TreeSelect.tsx +14 -16
  527. package/src/renderers/Form/index.tsx +7 -2
  528. package/src/renderers/Icon.tsx +8 -1
  529. package/src/renderers/Table/index.tsx +5 -5
  530. package/src/renderers/Table-v2/index.tsx +92 -72
  531. package/src/store/crud.ts +23 -1
  532. package/src/store/form.ts +31 -24
  533. package/src/store/formItem.ts +65 -52
  534. package/src/store/list.ts +10 -0
  535. package/src/types.ts +2 -1
  536. package/src/utils/icon.tsx +9 -0
@@ -0,0 +1,724 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CRUD2Renderer = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var react_1 = (0, tslib_1.__importDefault)(require("react"));
6
+ var factory_1 = require("../factory");
7
+ var types_1 = require("../types");
8
+ var crud_1 = require("../store/crud");
9
+ var helper_1 = require("../utils/helper");
10
+ var Scoped_1 = require("../Scoped");
11
+ var pick_1 = (0, tslib_1.__importDefault)(require("lodash/pick"));
12
+ var react_dom_1 = require("react-dom");
13
+ var tpl_1 = require("../utils/tpl");
14
+ var api_1 = require("../utils/api");
15
+ var findIndex_1 = (0, tslib_1.__importDefault)(require("lodash/findIndex"));
16
+ var Html_1 = (0, tslib_1.__importDefault)(require("../components/Html"));
17
+ var components_1 = require("../components");
18
+ var tpl_builtin_1 = require("../utils/tpl-builtin");
19
+ var lodash_1 = require("lodash");
20
+ var CRUD2 = /** @class */ (function (_super) {
21
+ (0, tslib_1.__extends)(CRUD2, _super);
22
+ function CRUD2(props) {
23
+ var _this = _super.call(this, props) || this;
24
+ _this.stopingAutoRefresh = false;
25
+ var location = props.location, store = props.store, syncLocation = props.syncLocation, pageField = props.pageField, perPageField = props.perPageField;
26
+ _this.mounted = true;
27
+ if (syncLocation && location && (location.query || location.search)) {
28
+ store.updateQuery((0, helper_1.qsparse)(location.search.substring(1)), undefined, pageField, perPageField);
29
+ }
30
+ else if (syncLocation && !location && window.location.search) {
31
+ store.updateQuery((0, helper_1.qsparse)(window.location.search.substring(1)), undefined, pageField, perPageField);
32
+ }
33
+ // 如果有 api,data 里面先写个 空数组,面得继承外层的 items
34
+ // 比如 crud 打开一个弹框,里面也是个 crud,默认一开始其实显示
35
+ // 的是外层 crud 的数据,等接口回来后就会变成新的。
36
+ // 加上这个就是为了解决这种情况
37
+ if (_this.props.api) {
38
+ _this.props.store.updateData({
39
+ items: []
40
+ });
41
+ }
42
+ return _this;
43
+ }
44
+ CRUD2.prototype.componentDidMount = function () {
45
+ var _a = this.props, store = _a.store, pickerMode = _a.pickerMode, loadType = _a.loadType, loadDataOnce = _a.loadDataOnce, perPage = _a.perPage;
46
+ // 初始化分页
47
+ var pagination = loadType && !!loadDataOnce;
48
+ if (pagination) {
49
+ store.changePage(store.page, perPage);
50
+ }
51
+ // 初始化筛选条件
52
+ this.initQuery({});
53
+ if (pickerMode) {
54
+ // 解析picker组件默认值
55
+ var val = (0, helper_1.getPropValue)(this.props);
56
+ val && store.setSelectedItems(val);
57
+ }
58
+ };
59
+ CRUD2.prototype.componentDidUpdate = function (prevProps) {
60
+ var props = this.props;
61
+ var store = prevProps.store;
62
+ // picker外部引起的值变化处理
63
+ var val;
64
+ if (this.props.pickerMode &&
65
+ (0, helper_1.isArrayChildrenModified)((val = (0, helper_1.getPropValue)(this.props)), (0, helper_1.getPropValue)(prevProps))) {
66
+ store.setSelectedItems(val);
67
+ }
68
+ var dataInvalid = false;
69
+ if (prevProps.syncLocation &&
70
+ prevProps.location &&
71
+ prevProps.location.search !== props.location.search) {
72
+ // 同步地址栏,那么直接检测 query 是否变了,变了就重新拉数据
73
+ store.updateQuery((0, helper_1.qsparse)(props.location.search.substring(1)), undefined, props.pageField, props.perPageField);
74
+ dataInvalid = !!(props.api && (0, helper_1.isObjectShallowModified)(store.query, this.lastQuery, false));
75
+ }
76
+ if (dataInvalid) {
77
+ // 要同步数据
78
+ }
79
+ else if (prevProps.api &&
80
+ props.api &&
81
+ (0, api_1.isApiOutdated)(prevProps.api, props.api, store.fetchCtxOf(prevProps.data, {
82
+ pageField: prevProps.pageField,
83
+ perPageField: prevProps.perPageField
84
+ }), store.fetchCtxOf(props.data, {
85
+ pageField: props.pageField,
86
+ perPageField: props.perPageField
87
+ }))) {
88
+ dataInvalid = true;
89
+ }
90
+ else if (!props.api && (0, tpl_builtin_1.isPureVariable)(props.source)) {
91
+ var next = (0, tpl_builtin_1.resolveVariableAndFilter)(props.source, props.data, '| raw');
92
+ if (!this.lastData || this.lastData !== next) {
93
+ store.initFromScope(props.data, props.source);
94
+ this.lastData = next;
95
+ }
96
+ }
97
+ if (dataInvalid) {
98
+ this.getData();
99
+ }
100
+ };
101
+ CRUD2.prototype.componentWillUnmount = function () {
102
+ this.mounted = false;
103
+ clearTimeout(this.timer);
104
+ };
105
+ CRUD2.prototype.controlRef = function (control) {
106
+ // 因为 control 有可能被 n 层 hoc 包裹。
107
+ while (control && control.getWrappedInstance) {
108
+ control = control.getWrappedInstance();
109
+ }
110
+ this.control = control;
111
+ };
112
+ CRUD2.prototype.initQuery = function (values) {
113
+ var _a = this.props, store = _a.store, orderBy = _a.orderBy, orderDir = _a.orderDir;
114
+ var params = {};
115
+ if (orderBy) {
116
+ params['orderBy'] = orderBy;
117
+ params['orderDir'] = orderDir || 'asc';
118
+ }
119
+ this.handleSearch({
120
+ query: (0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, params), values), store.query),
121
+ replaceQuery: this.props.initFetch !== false
122
+ });
123
+ // 保留一次用于重置查询条件
124
+ store.setPristineQuery();
125
+ };
126
+ /**
127
+ * 加载更多动作处理器
128
+ */
129
+ CRUD2.prototype.handleLoadMore = function () {
130
+ this.getData(undefined, undefined, undefined, true);
131
+ };
132
+ /**
133
+ * 发起一次新的查询,查询条件不同,需要从第一页数据加载
134
+ */
135
+ CRUD2.prototype.handleSearch = function (data) {
136
+ var _a = this.props, store = _a.store, syncLocation = _a.syncLocation, env = _a.env, pageField = _a.pageField, perPageField = _a.perPageField;
137
+ var query = data.query, resetQuery = data.resetQuery, replaceQuery = data.replaceQuery;
138
+ query = syncLocation ? (0, helper_1.qsparse)((0, helper_1.qsstringify)(query, undefined, true)) : query;
139
+ store.updateQuery(resetQuery ? this.props.store.pristineQuery : query, syncLocation && env && env.updateLocation
140
+ ? function (location) { return env.updateLocation(location, true); }
141
+ : undefined, pageField, perPageField, replaceQuery);
142
+ this.lastQuery = store.query;
143
+ this.getData(undefined, undefined, undefined);
144
+ };
145
+ CRUD2.prototype.handleStopAutoRefresh = function () {
146
+ this.timer && clearTimeout(this.timer);
147
+ this.stopingAutoRefresh = true;
148
+ };
149
+ CRUD2.prototype.handleStartAutoRefresh = function () {
150
+ this.stopingAutoRefresh = false;
151
+ this.reload();
152
+ };
153
+ CRUD2.prototype.reloadTarget = function (target, data) {
154
+ // implement this.
155
+ };
156
+ CRUD2.prototype.closeTarget = function (target) {
157
+ // implement this.
158
+ };
159
+ CRUD2.prototype.updateQuery = function (newQuery) {
160
+ if (newQuery === void 0) { newQuery = {}; }
161
+ this.props.store;
162
+ };
163
+ /**
164
+ * 更新列表数据
165
+ */
166
+ CRUD2.prototype.getData = function (
167
+ /** 静默更新,不显示加载状态 */
168
+ silent,
169
+ /** 清空已选择数据 */
170
+ clearSelection,
171
+ /** 强制重新加载 */
172
+ forceReload,
173
+ /** 加载更多数据,默认模式取props中的配置,只有事件动作需要直接触发 */
174
+ loadMore) {
175
+ var _this = this;
176
+ var _a;
177
+ if (forceReload === void 0) { forceReload = false; }
178
+ var _b = this.props, store = _b.store, api = _b.api, messages = _b.messages, pageField = _b.pageField, perPageField = _b.perPageField, interval = _b.interval, stopAutoRefreshWhen = _b.stopAutoRefreshWhen, silentPolling = _b.silentPolling, syncLocation = _b.syncLocation, syncResponse2Query = _b.syncResponse2Query, keepItemSelectionOnPageChange = _b.keepItemSelectionOnPageChange, stopAutoRefreshWhenModalIsOpen = _b.stopAutoRefreshWhenModalIsOpen, pickerMode = _b.pickerMode, env = _b.env, loadType = _b.loadType, loadDataOnce = _b.loadDataOnce, loadDataOnceFetchOnFilter = _b.loadDataOnceFetchOnFilter, source = _b.source, columns = _b.columns;
179
+ // reload 需要清空用户选择
180
+ if (!loadMore &&
181
+ keepItemSelectionOnPageChange &&
182
+ clearSelection &&
183
+ !pickerMode) {
184
+ store.setSelectedItems([]);
185
+ store.setUnSelectedItems([]);
186
+ }
187
+ clearTimeout(this.timer);
188
+ this.lastQuery = store.query;
189
+ var loadDataMode = loadMore !== null && loadMore !== void 0 ? loadMore : loadType === 'more';
190
+ var data = (0, helper_1.createObject)(store.data, store.query);
191
+ (0, api_1.isEffectiveApi)(api, data)
192
+ ? store
193
+ .fetchInitData(api, data, {
194
+ successMessage: messages && messages.fetchSuccess,
195
+ errorMessage: messages && messages.fetchFailed,
196
+ autoAppend: true,
197
+ forceReload: forceReload,
198
+ loadDataOnce: loadDataOnce,
199
+ loadDataOnceFetchOnFilter: loadDataOnceFetchOnFilter,
200
+ source: source,
201
+ silent: silent,
202
+ pageField: pageField,
203
+ perPageField: perPageField,
204
+ loadDataMode: loadDataMode,
205
+ syncResponse2Query: syncResponse2Query,
206
+ columns: (_a = store.columns) !== null && _a !== void 0 ? _a : columns
207
+ })
208
+ .then(function (value) {
209
+ interval &&
210
+ !_this.stopingAutoRefresh &&
211
+ _this.mounted &&
212
+ (!stopAutoRefreshWhen ||
213
+ !(stopAutoRefreshWhen &&
214
+ (0, tpl_1.evalExpression)(stopAutoRefreshWhen, (0, helper_1.createObject)(store.data, store.query)))) &&
215
+ // 弹窗期间不进行刷新
216
+ (!stopAutoRefreshWhenModalIsOpen || !store.dialogOpen) &&
217
+ (_this.timer = setTimeout(_this.getData.bind(_this, silentPolling, undefined, true), Math.max(interval, 1000)));
218
+ return value;
219
+ })
220
+ : source && store.initFromScope(data, source);
221
+ };
222
+ CRUD2.prototype.handleChangePage = function (page, perPage) {
223
+ var _a;
224
+ var _b;
225
+ var _c = this.props, store = _c.store, syncLocation = _c.syncLocation, env = _c.env, pageField = _c.pageField, perPageField = _c.perPageField, autoJumpToTopOnPagerChange = _c.autoJumpToTopOnPagerChange, affixOffsetTop = _c.affixOffsetTop;
226
+ var query = (_a = {},
227
+ _a[pageField || 'page'] = page,
228
+ _a);
229
+ if (perPage) {
230
+ query[perPageField || 'perPage'] = perPage;
231
+ }
232
+ store.updateQuery(query, syncLocation && (env === null || env === void 0 ? void 0 : env.updateLocation) ? env.updateLocation : undefined, pageField, perPageField);
233
+ this.getData();
234
+ if (autoJumpToTopOnPagerChange && this.control) {
235
+ (0, react_dom_1.findDOMNode)(this.control).scrollIntoView();
236
+ var scrolledY = window.scrollY;
237
+ var offsetTop = (_b = affixOffsetTop !== null && affixOffsetTop !== void 0 ? affixOffsetTop : env === null || env === void 0 ? void 0 : env.affixOffsetTop) !== null && _b !== void 0 ? _b : 0;
238
+ scrolledY && window.scroll(0, scrolledY - offsetTop);
239
+ }
240
+ };
241
+ CRUD2.prototype.handleSave = function (rows, diff, indexes, unModifiedItems, rowsOrigin, resetOnFailed) {
242
+ var _this = this;
243
+ 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;
244
+ if (Array.isArray(rows)) {
245
+ if (!(0, api_1.isEffectiveApi)(quickSaveApi)) {
246
+ env && env.alert('CRUD quickSaveApi is required');
247
+ return;
248
+ }
249
+ var data_1 = (0, helper_1.createObject)(store.data, {
250
+ rows: rows,
251
+ rowsDiff: diff,
252
+ indexes: indexes,
253
+ rowsOrigin: rowsOrigin
254
+ });
255
+ if (rows.length && rows[0].hasOwnProperty(primaryField || 'id')) {
256
+ data_1.ids = rows
257
+ .map(function (item) { return item[primaryField || 'id']; })
258
+ .join(',');
259
+ }
260
+ if (unModifiedItems) {
261
+ data_1.unModifiedItems = unModifiedItems;
262
+ }
263
+ store
264
+ .saveRemote(quickSaveApi, data_1, {
265
+ successMessage: messages && messages.saveFailed,
266
+ errorMessage: messages && messages.saveSuccess
267
+ })
268
+ .then(function () {
269
+ reload && _this.reloadTarget(reload, data_1);
270
+ _this.getData(undefined, undefined, true, true);
271
+ })
272
+ .catch(function () { });
273
+ }
274
+ else {
275
+ if (!(0, api_1.isEffectiveApi)(quickSaveItemApi)) {
276
+ env && env.alert('CRUD quickSaveItemApi is required!');
277
+ return;
278
+ }
279
+ var data_2 = (0, helper_1.createObject)(store.data, {
280
+ item: rows,
281
+ modified: diff,
282
+ origin: rowsOrigin
283
+ });
284
+ var sendData = (0, helper_1.createObject)(data_2, rows);
285
+ store
286
+ .saveRemote(quickSaveItemApi, sendData)
287
+ .then(function () {
288
+ reload && _this.reloadTarget(reload, data_2);
289
+ _this.getData(undefined, undefined, true, true);
290
+ })
291
+ .catch(function () {
292
+ resetOnFailed && _this.control.reset();
293
+ });
294
+ }
295
+ };
296
+ CRUD2.prototype.handleSaveOrder = function (moved, rows) {
297
+ var _this = this;
298
+ var _a = this.props, store = _a.store, saveOrderApi = _a.saveOrderApi, orderField = _a.orderField, primaryField = _a.primaryField, env = _a.env, reload = _a.reload;
299
+ if (!saveOrderApi) {
300
+ env && env.alert('CRUD saveOrderApi is required!');
301
+ return;
302
+ }
303
+ var model = (0, helper_1.createObject)(store.data);
304
+ var insertAfter;
305
+ var insertBefore;
306
+ var holding = [];
307
+ var hasIdField = primaryField &&
308
+ rows[0] &&
309
+ rows[0].hasOwnProperty(primaryField);
310
+ hasIdField || (model.idMap = {});
311
+ model.insertAfter = {};
312
+ rows.forEach(function (item) {
313
+ if (~moved.indexOf(item)) {
314
+ if (insertAfter) {
315
+ var insertAfterId = hasIdField
316
+ ? insertAfter[primaryField]
317
+ : rows.indexOf(insertAfter);
318
+ model.insertAfter[insertAfterId] =
319
+ model.insertAfter[insertAfterId] || [];
320
+ hasIdField || (model.idMap[insertAfterId] = insertAfter);
321
+ model.insertAfter[insertAfterId].push(hasIdField ? item[primaryField] : item);
322
+ }
323
+ else {
324
+ holding.push(item);
325
+ }
326
+ }
327
+ else {
328
+ insertAfter = item;
329
+ insertBefore = insertBefore || item;
330
+ }
331
+ });
332
+ if (insertBefore && holding.length) {
333
+ var insertBeforeId = hasIdField
334
+ ? insertBefore[primaryField]
335
+ : rows.indexOf(insertBefore);
336
+ hasIdField || (model.idMap[insertBeforeId] = insertBefore);
337
+ model.insertBefore = {};
338
+ model.insertBefore[insertBeforeId] = holding.map(function (item) {
339
+ return hasIdField ? item[primaryField] : item;
340
+ });
341
+ }
342
+ else if (holding.length) {
343
+ var first = holding[0];
344
+ var firstId = hasIdField
345
+ ? first[primaryField]
346
+ : rows.indexOf(first);
347
+ hasIdField || (model.idMap[firstId] = first);
348
+ model.insertAfter[firstId] = holding
349
+ .slice(1)
350
+ .map(function (item) { return (hasIdField ? item[primaryField] : item); });
351
+ }
352
+ if (orderField) {
353
+ var start_1 = (store.page - 1) * store.perPage || 0;
354
+ rows = rows.map(function (item, key) {
355
+ var _a;
356
+ return (0, helper_1.extendObject)(item, (_a = {},
357
+ _a[orderField] = start_1 + key + 1,
358
+ _a));
359
+ });
360
+ }
361
+ model.rows = rows.concat();
362
+ hasIdField &&
363
+ (model.ids = rows
364
+ .map(function (item) { return item[primaryField]; })
365
+ .join(','));
366
+ hasIdField &&
367
+ orderField &&
368
+ (model.order = rows.map(function (item) {
369
+ return (0, pick_1.default)(item, [primaryField, orderField]);
370
+ }));
371
+ (0, api_1.isEffectiveApi)(saveOrderApi, model) &&
372
+ store
373
+ .saveRemote(saveOrderApi, model)
374
+ .then(function () {
375
+ reload && _this.reloadTarget(reload, model);
376
+ _this.getData(undefined, undefined, true, true);
377
+ })
378
+ .catch(function () { });
379
+ };
380
+ CRUD2.prototype.handleSelect = function (items, unSelectedItems) {
381
+ var _a = this.props, store = _a.store, keepItemSelectionOnPageChange = _a.keepItemSelectionOnPageChange, primaryField = _a.primaryField, multiple = _a.multiple, pickerMode = _a.pickerMode, onSelect = _a.onSelect;
382
+ var newItems = items;
383
+ var newUnSelectedItems = unSelectedItems;
384
+ // cards等组件初始化的时候也会抛出来,感觉不太合理,但是只能用这个先暂时规避一下了
385
+ if (!(0, helper_1.isArrayChildrenModified)(store.selectedItemsAsArray, newItems)) {
386
+ return;
387
+ }
388
+ if (keepItemSelectionOnPageChange && store.selectedItems.length) {
389
+ var oldItems_1 = store.selectedItems.concat();
390
+ var oldUnselectedItems_1 = store.unSelectedItems.concat();
391
+ items.forEach(function (item) {
392
+ var idx = (0, findIndex_1.default)(oldItems_1, function (a) {
393
+ return a === item ||
394
+ (a[primaryField || 'id'] &&
395
+ a[primaryField || 'id'] == item[primaryField || 'id']);
396
+ });
397
+ if (~idx) {
398
+ oldItems_1[idx] = item;
399
+ }
400
+ else {
401
+ oldItems_1.push(item);
402
+ }
403
+ var idx2 = (0, findIndex_1.default)(oldUnselectedItems_1, function (a) {
404
+ return a === item ||
405
+ (a[primaryField || 'id'] &&
406
+ a[primaryField || 'id'] == item[primaryField || 'id']);
407
+ });
408
+ if (~idx2) {
409
+ oldUnselectedItems_1.splice(idx2, 1);
410
+ }
411
+ });
412
+ unSelectedItems.forEach(function (item) {
413
+ var idx = (0, findIndex_1.default)(oldUnselectedItems_1, function (a) {
414
+ return a === item ||
415
+ (a[primaryField || 'id'] &&
416
+ a[primaryField || 'id'] == item[primaryField || 'id']);
417
+ });
418
+ var idx2 = (0, findIndex_1.default)(oldItems_1, function (a) {
419
+ return a === item ||
420
+ (a[primaryField || 'id'] &&
421
+ a[primaryField || 'id'] == item[primaryField || 'id']);
422
+ });
423
+ if (~idx) {
424
+ oldUnselectedItems_1[idx] = item;
425
+ }
426
+ else {
427
+ oldUnselectedItems_1.push(item);
428
+ }
429
+ ~idx2 && oldItems_1.splice(idx2, 1);
430
+ });
431
+ newItems = oldItems_1;
432
+ newUnSelectedItems = oldUnselectedItems_1;
433
+ // const thisBatch = items.concat(unSelectedItems);
434
+ // let notInThisBatch = (item: any) =>
435
+ // !find(
436
+ // thisBatch,
437
+ // a => a[primaryField || 'id'] == item[primaryField || 'id']
438
+ // );
439
+ // newItems = store.selectedItems.filter(notInThisBatch);
440
+ // newUnSelectedItems = store.unSelectedItems.filter(notInThisBatch);
441
+ // newItems.push(...items);
442
+ // newUnSelectedItems.push(...unSelectedItems);
443
+ }
444
+ if (pickerMode && multiple === false && newItems.length > 1) {
445
+ newUnSelectedItems.push.apply(newUnSelectedItems, newItems.splice(0, newItems.length - 1));
446
+ }
447
+ store.updateSelectData(newItems, newUnSelectedItems);
448
+ onSelect && onSelect(newItems);
449
+ };
450
+ /**
451
+ * 表格列上的筛选触发
452
+ */
453
+ CRUD2.prototype.handleTableQuery = function (values, forceReload) {
454
+ var _a;
455
+ if (forceReload === void 0) { forceReload = false; }
456
+ var _b = this.props, store = _b.store, syncLocation = _b.syncLocation, env = _b.env, pageField = _b.pageField, perPageField = _b.perPageField;
457
+ store.updateQuery((0, tslib_1.__assign)((0, tslib_1.__assign)({}, values), (_a = {}, _a[pageField || 'page'] = 1, _a)), syncLocation && env && env.updateLocation
458
+ ? env.updateLocation
459
+ : undefined, pageField, perPageField);
460
+ this.getData(undefined, undefined, undefined, forceReload);
461
+ };
462
+ CRUD2.prototype.reload = function (subpath, query) {
463
+ if (query) {
464
+ return this.receive(query);
465
+ }
466
+ else {
467
+ this.getData(undefined, undefined, true, true);
468
+ }
469
+ };
470
+ CRUD2.prototype.receive = function (values) {
471
+ this.handleTableQuery(values, true);
472
+ };
473
+ CRUD2.prototype.doAction = function (action, data, throwErrors) {
474
+ if (throwErrors === void 0) { throwErrors = false; }
475
+ if (action.actionType &&
476
+ ~['stopAutoRefresh', 'reload', 'search', 'startAutoRefresh'].includes(action.actionType)) {
477
+ // @ts-ignore
478
+ return this["handle" + (0, lodash_1.upperFirst)(action.actionType)](data);
479
+ }
480
+ // const {onAction, data: ctx} = this.props;
481
+ // return this.props.onAction?.(
482
+ // undefined,
483
+ // action,
484
+ // ctx,
485
+ // throwErrors,
486
+ // undefined
487
+ // );
488
+ };
489
+ CRUD2.prototype.unSelectItem = function (item, index) {
490
+ var store = this.props.store;
491
+ var selected = store.selectedItems.concat();
492
+ var unSelected = store.unSelectedItems.concat();
493
+ var idx = selected.indexOf(item);
494
+ ~idx && unSelected.push.apply(unSelected, selected.splice(idx, 1));
495
+ store.setSelectedItems(selected);
496
+ store.setUnSelectedItems(unSelected);
497
+ };
498
+ CRUD2.prototype.clearSelection = function () {
499
+ var store = this.props.store;
500
+ var selected = store.selectedItems.concat();
501
+ var unSelected = store.unSelectedItems.concat();
502
+ store.setSelectedItems([]);
503
+ store.setUnSelectedItems(unSelected.concat(selected));
504
+ };
505
+ CRUD2.prototype.renderChild = function (region, schema, props) {
506
+ if (props === void 0) { props = {}; }
507
+ var _a = this.props, render = _a.render, store = _a.store;
508
+ // 覆盖所有分页组件
509
+ var childProps = {
510
+ activePage: store.page,
511
+ lastPage: store.lastPage,
512
+ perPage: store.perPage,
513
+ total: store.total,
514
+ onPageChange: this.handleChangePage
515
+ // onAction: onAction
516
+ };
517
+ return render(region, schema, (0, tslib_1.__assign)((0, tslib_1.__assign)((0, tslib_1.__assign)({}, props), {
518
+ // 包两层,主要是为了处理以下 case
519
+ // 里面放了个 form,form 提交过来的时候不希望把 items 这些发送过来。
520
+ // 因为会把数据呈现在地址栏上。
521
+ data: (0, helper_1.createObject)((0, helper_1.createObject)(store.filterData, store.getData(this.props.data)), {}), render: this.renderChild }), childProps));
522
+ };
523
+ CRUD2.prototype.renderToolbar = function (region, toolbar) {
524
+ var _this = this;
525
+ if (!toolbar) {
526
+ return null;
527
+ }
528
+ toolbar = [].concat(toolbar);
529
+ return toolbar.map(function (item, index) {
530
+ return _this.renderChild(region + "/" + index, item, {
531
+ key: index + ''
532
+ });
533
+ });
534
+ };
535
+ CRUD2.prototype.renderFilter = function (filter) {
536
+ var _this = this;
537
+ if (!filter || filter.length === 0) {
538
+ return null;
539
+ }
540
+ return filter.map(function (item, index) {
541
+ return _this.renderChild("filter/" + index, item, {
542
+ key: index + '',
543
+ onSubmit: function (data) { return _this.handleSearch({ query: data }); }
544
+ });
545
+ });
546
+ };
547
+ CRUD2.prototype.renderSelection = function () {
548
+ var _this = this;
549
+ var _a = this.props, store = _a.store, cx = _a.classnames, labelField = _a.labelField, labelTpl = _a.labelTpl, primaryField = _a.primaryField, __ = _a.translate;
550
+ if (!store.selectedItems.length) {
551
+ return null;
552
+ }
553
+ return (react_1.default.createElement("div", { className: cx('Crud-selection') },
554
+ react_1.default.createElement("div", { className: cx('Crud-selectionLabel') }, __('CRUD.selected', { total: store.selectedItems.length })),
555
+ store.selectedItems.map(function (item, index) { return (react_1.default.createElement("div", { key: index, className: cx("Crud-value") },
556
+ react_1.default.createElement("span", { "data-tooltip": __('delete'), "data-position": "bottom", className: cx('Crud-valueIcon'), onClick: _this.unSelectItem.bind(_this, item, index) }, "\u00D7"),
557
+ react_1.default.createElement("span", { className: cx('Crud-valueLabel') }, labelTpl ? (react_1.default.createElement(Html_1.default, { html: (0, tpl_1.filter)(labelTpl, item) })) : ((0, helper_1.getVariable)(item, labelField || 'label') ||
558
+ (0, helper_1.getVariable)(item, primaryField || 'id'))))); }),
559
+ react_1.default.createElement("a", { onClick: this.clearSelection, className: cx('Crud-selectionClear') }, __('clear'))));
560
+ };
561
+ CRUD2.prototype.render = function () {
562
+ var _a = this.props, columns = _a.columns, className = _a.className, bodyClassName = _a.bodyClassName, filter = _a.filter, render = _a.render, store = _a.store, _b = _a.mode, mode = _b === void 0 ? 'table-v2' : _b, syncLocation = _a.syncLocation, children = _a.children, bulkActions = _a.bulkActions, pickerMode = _a.pickerMode, selectable = _a.selectable, multiple = _a.multiple, valueField = _a.valueField, primaryField = _a.primaryField, value = _a.value, hideQuickSaveBtn = _a.hideQuickSaveBtn, itemActions = _a.itemActions, cx = _a.classnames, keepItemSelectionOnPageChange = _a.keepItemSelectionOnPageChange, maxKeepItemSelectionLength = _a.maxKeepItemSelectionLength, onAction = _a.onAction, popOverContainer = _a.popOverContainer, __ = _a.translate, onQuery = _a.onQuery, autoGenerateFilter = _a.autoGenerateFilter, onSelect = _a.onSelect, autoFillHeight = _a.autoFillHeight, showSelection = _a.showSelection, headerToolbar = _a.headerToolbar, footerToolbar = _a.footerToolbar, rest = (0, tslib_1.__rest)(_a, ["columns", "className", "bodyClassName", "filter", "render", "store", "mode", "syncLocation", "children", "bulkActions", "pickerMode", "selectable", "multiple", "valueField", "primaryField", "value", "hideQuickSaveBtn", "itemActions", "classnames", "keepItemSelectionOnPageChange", "maxKeepItemSelectionLength", "onAction", "popOverContainer", "translate", "onQuery", "autoGenerateFilter", "onSelect", "autoFillHeight", "showSelection", "headerToolbar", "footerToolbar"]);
563
+ return (react_1.default.createElement("div", { className: cx('Crud2', className, {
564
+ 'is-loading': store.loading
565
+ }) },
566
+ react_1.default.createElement("div", { className: cx('Crud2-filter') }, this.renderFilter(filter)),
567
+ react_1.default.createElement("div", { className: cx('Crud2-toolbar') }, this.renderToolbar('headerToolbar', headerToolbar)),
568
+ showSelection && keepItemSelectionOnPageChange && multiple !== false
569
+ ? this.renderSelection()
570
+ : null,
571
+ render('body', (0, tslib_1.__assign)((0, tslib_1.__assign)({}, rest), { type: mode, columns: mode.startsWith('table')
572
+ ? store.columns || columns
573
+ : undefined }), {
574
+ key: 'body',
575
+ className: cx('Crud2-body', bodyClassName),
576
+ ref: this.controlRef,
577
+ autoGenerateFilter: !filter && autoGenerateFilter,
578
+ autoFillHeight: autoFillHeight,
579
+ checkAll: false,
580
+ selectable: !!(selectable !== null && selectable !== void 0 ? selectable : pickerMode),
581
+ itemActions: itemActions,
582
+ multiple: multiple,
583
+ selected: pickerMode || keepItemSelectionOnPageChange
584
+ ? store.selectedItemsAsArray
585
+ : undefined,
586
+ keepItemSelectionOnPageChange: keepItemSelectionOnPageChange,
587
+ maxKeepItemSelectionLength: maxKeepItemSelectionLength,
588
+ valueField: valueField || primaryField,
589
+ primaryField: primaryField,
590
+ items: store.data.items,
591
+ query: store.query,
592
+ orderBy: store.query.orderBy,
593
+ orderDir: store.query.orderDir,
594
+ popOverContainer: popOverContainer,
595
+ onSave: this.handleSave,
596
+ onSaveOrder: this.handleSaveOrder,
597
+ onQuery: this.handleTableQuery,
598
+ onSelect: this.handleSelect,
599
+ data: store.mergedData
600
+ }),
601
+ react_1.default.createElement(components_1.Spinner, { overlay: true, size: "lg", key: "info", show: store.loading }),
602
+ react_1.default.createElement("div", { className: cx('Crud2-toolbar') }, this.renderToolbar('footerToolbar', footerToolbar))));
603
+ };
604
+ var _a, _b, _c;
605
+ CRUD2.propsList = [
606
+ 'mode',
607
+ 'syncLocation',
608
+ 'value',
609
+ 'multiple',
610
+ 'valueField',
611
+ 'pageField',
612
+ 'perPageField',
613
+ 'hideQuickSaveBtn',
614
+ 'autoJumpToTopOnPagerChange',
615
+ 'interval',
616
+ 'silentPolling',
617
+ 'stopAutoRefreshWhen',
618
+ 'stopAutoRefreshWhenModalIsOpen',
619
+ 'api',
620
+ 'headerToolbar',
621
+ 'footerToolbar',
622
+ 'autoGenerateFilter',
623
+ 'syncResponse2Query',
624
+ 'keepItemSelectionOnPageChange',
625
+ 'source',
626
+ 'onChange',
627
+ 'onInit',
628
+ 'onSaved',
629
+ 'onQuery',
630
+ 'autoFillHeight',
631
+ 'showSelection'
632
+ ];
633
+ CRUD2.defaultProps = {
634
+ toolbarInline: true,
635
+ syncLocation: true,
636
+ hideQuickSaveBtn: false,
637
+ autoJumpToTopOnPagerChange: true,
638
+ silentPolling: false,
639
+ autoFillHeight: false,
640
+ showSelection: true,
641
+ perPage: 10
642
+ };
643
+ (0, tslib_1.__decorate)([
644
+ helper_1.autobind,
645
+ (0, tslib_1.__metadata)("design:type", Function),
646
+ (0, tslib_1.__metadata)("design:paramtypes", [Object]),
647
+ (0, tslib_1.__metadata)("design:returntype", void 0)
648
+ ], CRUD2.prototype, "controlRef", null);
649
+ (0, tslib_1.__decorate)([
650
+ helper_1.autobind,
651
+ (0, tslib_1.__metadata)("design:type", Function),
652
+ (0, tslib_1.__metadata)("design:paramtypes", [Number, Number]),
653
+ (0, tslib_1.__metadata)("design:returntype", void 0)
654
+ ], CRUD2.prototype, "handleChangePage", null);
655
+ (0, tslib_1.__decorate)([
656
+ helper_1.autobind,
657
+ (0, tslib_1.__metadata)("design:type", Function),
658
+ (0, tslib_1.__metadata)("design:paramtypes", [typeof (_a = typeof Array !== "undefined" && Array) === "function" ? _a : Object, typeof (_b = typeof Array !== "undefined" && Array) === "function" ? _b : Object]),
659
+ (0, tslib_1.__metadata)("design:returntype", void 0)
660
+ ], CRUD2.prototype, "handleSelect", null);
661
+ (0, tslib_1.__decorate)([
662
+ helper_1.autobind,
663
+ (0, tslib_1.__metadata)("design:type", Function),
664
+ (0, tslib_1.__metadata)("design:paramtypes", [typeof (_c = typeof types_1.Action !== "undefined" && types_1.Action) === "function" ? _c : Object, Object, Boolean]),
665
+ (0, tslib_1.__metadata)("design:returntype", void 0)
666
+ ], CRUD2.prototype, "doAction", null);
667
+ (0, tslib_1.__decorate)([
668
+ helper_1.autobind,
669
+ (0, tslib_1.__metadata)("design:type", Function),
670
+ (0, tslib_1.__metadata)("design:paramtypes", [String, Object, Object]),
671
+ (0, tslib_1.__metadata)("design:returntype", void 0)
672
+ ], CRUD2.prototype, "renderChild", null);
673
+ return CRUD2;
674
+ }(react_1.default.Component));
675
+ exports.default = CRUD2;
676
+ var CRUD2Renderer = /** @class */ (function (_super) {
677
+ (0, tslib_1.__extends)(CRUD2Renderer, _super);
678
+ function CRUD2Renderer(props, context) {
679
+ var _this = _super.call(this, props) || this;
680
+ var scoped = context;
681
+ scoped.registerComponent(_this);
682
+ return _this;
683
+ }
684
+ CRUD2Renderer.prototype.componentWillUnmount = function () {
685
+ _super.prototype.componentWillUnmount.call(this);
686
+ var scoped = this.context;
687
+ scoped.unRegisterComponent(this);
688
+ };
689
+ CRUD2Renderer.prototype.reload = function (subpath, query, ctx) {
690
+ var scoped = this.context;
691
+ if (subpath) {
692
+ return scoped.reload(query ? subpath + "?" + (0, helper_1.qsstringify)(query) : subpath, ctx);
693
+ }
694
+ return _super.prototype.reload.call(this, subpath, query);
695
+ };
696
+ CRUD2Renderer.prototype.receive = function (values, subPath) {
697
+ var scoped = this.context;
698
+ if (subPath) {
699
+ return scoped.send(subPath, values);
700
+ }
701
+ return _super.prototype.receive.call(this, values);
702
+ };
703
+ CRUD2Renderer.prototype.reloadTarget = function (target, data) {
704
+ var scoped = this.context;
705
+ scoped.reload(target, data);
706
+ };
707
+ CRUD2Renderer.prototype.closeTarget = function (target) {
708
+ var scoped = this.context;
709
+ scoped.close(target);
710
+ };
711
+ var _d;
712
+ CRUD2Renderer.contextType = Scoped_1.ScopedContext;
713
+ CRUD2Renderer = (0, tslib_1.__decorate)([
714
+ (0, factory_1.Renderer)({
715
+ type: 'crud2',
716
+ storeType: crud_1.CRUDStore.name,
717
+ isolateScope: true
718
+ }),
719
+ (0, tslib_1.__metadata)("design:paramtypes", [Object, typeof (_d = typeof Scoped_1.IScopedContext !== "undefined" && Scoped_1.IScopedContext) === "function" ? _d : Object])
720
+ ], CRUD2Renderer);
721
+ return CRUD2Renderer;
722
+ }(CRUD2));
723
+ exports.CRUD2Renderer = CRUD2Renderer;
724
+ //# sourceMappingURL=./renderers/CRUD2.js.map