amis 2.2.0 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (427) hide show
  1. package/esm/_virtual/MiniDecimal.js +1 -1
  2. package/esm/_virtual/classCallCheck.js +1 -1
  3. package/esm/_virtual/createClass.js +1 -1
  4. package/esm/_virtual/interopRequireDefault.js +1 -1
  5. package/esm/_virtual/numberUtil.js +1 -1
  6. package/esm/_virtual/supportUtil.js +1 -1
  7. package/esm/compat.js +1 -1
  8. package/esm/index.js +1 -1
  9. package/esm/node_modules/@babel/runtime/helpers/classCallCheck.js +1 -1
  10. package/esm/node_modules/@babel/runtime/helpers/createClass.js +1 -1
  11. package/esm/node_modules/@babel/runtime/helpers/interopRequireDefault.js +1 -1
  12. package/esm/node_modules/rc-input-number/lib/utils/MiniDecimal.js +1 -1
  13. package/esm/node_modules/rc-input-number/lib/utils/numberUtil.js +1 -1
  14. package/esm/node_modules/rc-input-number/lib/utils/supportUtil.js +1 -1
  15. package/esm/preset.js +9 -4
  16. package/esm/renderers/Action.js +1 -1
  17. package/esm/renderers/Alert.js +1 -1
  18. package/esm/renderers/AnchorNav.js +1 -1
  19. package/esm/renderers/App.js +1 -1
  20. package/esm/renderers/Audio.js +1 -1
  21. package/esm/renderers/Avatar.js +1 -1
  22. package/esm/renderers/BarCode.js +1 -1
  23. package/esm/renderers/Breadcrumb.js +1 -1
  24. package/esm/renderers/ButtonGroup.js +1 -1
  25. package/esm/renderers/CRUD.js +6 -6
  26. package/esm/renderers/CRUD2.js +6 -6
  27. package/esm/renderers/Calendar.js +1 -1
  28. package/esm/renderers/Card.js +1 -1
  29. package/esm/renderers/Card2.js +1 -1
  30. package/esm/renderers/Cards.js +1 -1
  31. package/esm/renderers/Carousel.js +1 -1
  32. package/esm/renderers/Chart.js +1 -1
  33. package/esm/renderers/Code.js +1 -1
  34. package/esm/renderers/Collapse.d.ts +1 -0
  35. package/esm/renderers/Collapse.js +12 -1
  36. package/esm/renderers/CollapseGroup.js +1 -1
  37. package/esm/renderers/Color.js +1 -1
  38. package/esm/renderers/Container.js +1 -1
  39. package/esm/renderers/Copyable.js +1 -1
  40. package/esm/renderers/Custom.js +1 -1
  41. package/esm/renderers/Date.js +1 -1
  42. package/esm/renderers/Dialog.d.ts +18 -18
  43. package/esm/renderers/Dialog.js +1 -1
  44. package/esm/renderers/Divider.js +1 -1
  45. package/esm/renderers/Drawer.js +2 -4
  46. package/esm/renderers/DropDownButton.js +1 -1
  47. package/esm/renderers/Each.js +1 -1
  48. package/esm/renderers/Flex.js +1 -1
  49. package/esm/renderers/Form/ButtonGroupSelect.js +1 -1
  50. package/esm/renderers/Form/ButtonToolbar.js +1 -1
  51. package/esm/renderers/Form/ChainedSelect.js +1 -1
  52. package/esm/renderers/Form/ChartRadios.js +1 -1
  53. package/esm/renderers/Form/Checkbox.js +1 -1
  54. package/esm/renderers/Form/Checkboxes.js +1 -1
  55. package/esm/renderers/Form/Combo.d.ts +4 -0
  56. package/esm/renderers/Form/Combo.js +10 -4
  57. package/esm/renderers/Form/ConditionBuilder.js +1 -1
  58. package/esm/renderers/Form/Control.js +1 -1
  59. package/esm/renderers/Form/DiffEditor.d.ts +24 -24
  60. package/esm/renderers/Form/DiffEditor.js +1 -1
  61. package/esm/renderers/Form/Editor.d.ts +24 -24
  62. package/esm/renderers/Form/Editor.js +1 -1
  63. package/esm/renderers/Form/FieldSet.d.ts +1 -0
  64. package/esm/renderers/Form/FieldSet.js +9 -3
  65. package/esm/renderers/Form/Formula.js +1 -1
  66. package/esm/renderers/Form/Group.js +1 -1
  67. package/esm/renderers/Form/Hidden.js +1 -1
  68. package/esm/renderers/Form/IconPicker.js +1 -1
  69. package/esm/renderers/Form/IconPickerIcons.js +1 -1
  70. package/esm/renderers/Form/InputArray.js +1 -1
  71. package/esm/renderers/Form/InputCity.js +1 -1
  72. package/esm/renderers/Form/InputColor.js +1 -1
  73. package/esm/renderers/Form/InputDate.js +1 -1
  74. package/esm/renderers/Form/InputDateRange.js +1 -1
  75. package/esm/renderers/Form/InputExcel.d.ts +14 -0
  76. package/esm/renderers/Form/InputExcel.js +60 -3
  77. package/esm/renderers/Form/InputFile.js +10 -9
  78. package/esm/renderers/Form/InputFormula.d.ts +7 -0
  79. package/esm/renderers/Form/InputFormula.js +3 -3
  80. package/esm/renderers/Form/InputGroup.js +1 -1
  81. package/esm/renderers/Form/InputImage.d.ts +0 -1
  82. package/esm/renderers/Form/InputImage.js +6 -16
  83. package/esm/renderers/Form/InputMonthRange.js +1 -1
  84. package/esm/renderers/Form/InputNumber.d.ts +8 -0
  85. package/esm/renderers/Form/InputNumber.js +9 -4
  86. package/esm/renderers/Form/InputQuarterRange.js +1 -1
  87. package/esm/renderers/Form/InputRange.d.ts +3 -3
  88. package/esm/renderers/Form/InputRange.js +7 -7
  89. package/esm/renderers/Form/InputRating.js +1 -1
  90. package/esm/renderers/Form/InputRepeat.js +1 -1
  91. package/esm/renderers/Form/InputRichText.js +64 -47
  92. package/esm/renderers/Form/InputSubForm.js +1 -1
  93. package/esm/renderers/Form/InputTable.js +1 -1
  94. package/esm/renderers/Form/InputTag.js +1 -1
  95. package/esm/renderers/Form/InputText.d.ts +5 -1
  96. package/esm/renderers/Form/InputText.js +10 -6
  97. package/esm/renderers/Form/InputTree.js +1 -1
  98. package/esm/renderers/Form/InputYearRange.js +1 -1
  99. package/esm/renderers/Form/JSONSchema.js +1 -1
  100. package/esm/renderers/Form/JSONSchemaEditor.js +1 -1
  101. package/esm/renderers/Form/ListSelect.js +1 -1
  102. package/esm/renderers/Form/LocationPicker.js +1 -1
  103. package/esm/renderers/Form/MatrixCheckboxes.js +1 -1
  104. package/esm/renderers/Form/NestedSelect.js +1 -1
  105. package/esm/renderers/Form/Picker.d.ts +1 -0
  106. package/esm/renderers/Form/Picker.js +30 -3
  107. package/esm/renderers/Form/Radios.js +1 -1
  108. package/esm/renderers/Form/Select.d.ts +1 -1
  109. package/esm/renderers/Form/Select.js +8 -6
  110. package/esm/renderers/Form/Static.js +1 -1
  111. package/esm/renderers/Form/Switch.js +1 -1
  112. package/esm/renderers/Form/TabsTransfer.js +1 -1
  113. package/esm/renderers/Form/TabsTransferPicker.js +1 -1
  114. package/esm/renderers/Form/Textarea.js +1 -1
  115. package/esm/renderers/Form/Transfer.d.ts +4 -0
  116. package/esm/renderers/Form/Transfer.js +16 -8
  117. package/esm/renderers/Form/TransferPicker.js +2 -2
  118. package/esm/renderers/Form/TreeSelect.js +2 -2
  119. package/esm/renderers/Form/UUID.js +1 -1
  120. package/esm/renderers/Form/UserSelect.js +1 -1
  121. package/esm/renderers/Grid.js +1 -1
  122. package/esm/renderers/Grid2D.js +1 -1
  123. package/esm/renderers/GridNav.js +1 -1
  124. package/esm/renderers/HBox.js +1 -1
  125. package/esm/renderers/IFrame.js +8 -3
  126. package/esm/renderers/Icon.js +1 -1
  127. package/esm/renderers/Image.d.ts +35 -36
  128. package/esm/renderers/Image.js +5 -3
  129. package/esm/renderers/Images.d.ts +10 -1
  130. package/esm/renderers/Images.js +3 -3
  131. package/esm/renderers/Json.js +2 -2
  132. package/esm/renderers/Link.js +1 -1
  133. package/esm/renderers/List.js +1 -1
  134. package/esm/renderers/Log.d.ts +0 -5
  135. package/esm/renderers/Log.js +5 -13
  136. package/esm/renderers/Mapping.js +1 -1
  137. package/esm/renderers/Markdown.js +1 -1
  138. package/esm/renderers/Nav.js +3 -3
  139. package/esm/renderers/Operation.js +1 -1
  140. package/esm/renderers/Page.js +5 -5
  141. package/esm/renderers/Pagination.js +1 -1
  142. package/esm/renderers/PaginationWrapper.js +1 -1
  143. package/esm/renderers/Panel.js +1 -1
  144. package/esm/renderers/Plain.js +1 -1
  145. package/esm/renderers/PopOver.js +13 -2
  146. package/esm/renderers/Portlet.js +1 -1
  147. package/esm/renderers/Progress.js +1 -1
  148. package/esm/renderers/Property.js +1 -1
  149. package/esm/renderers/QRCode.js +1 -1
  150. package/esm/renderers/QuickEdit.js +1 -1
  151. package/esm/renderers/Remark.js +1 -1
  152. package/esm/renderers/SearchBox.js +1 -1
  153. package/esm/renderers/Service.d.ts +30 -6
  154. package/esm/renderers/Service.js +161 -36
  155. package/esm/renderers/SparkLine.js +1 -1
  156. package/esm/renderers/Spinner.js +1 -1
  157. package/esm/renderers/Status.js +8 -4
  158. package/esm/renderers/Steps.js +1 -1
  159. package/esm/renderers/Table/ColumnToggler.js +1 -1
  160. package/esm/renderers/Table/HeadCellFilterDropdown.d.ts +3 -0
  161. package/esm/renderers/Table/HeadCellFilterDropdown.js +17 -3
  162. package/esm/renderers/Table/HeadCellSearchDropdown.js +1 -1
  163. package/esm/renderers/Table/ItemActionsWrapper.js +1 -1
  164. package/esm/renderers/Table/TableBody.js +1 -1
  165. package/esm/renderers/Table/TableCell.js +1 -1
  166. package/esm/renderers/Table/TableContent.js +1 -1
  167. package/esm/renderers/Table/TableRow.js +1 -1
  168. package/esm/renderers/Table/exportExcel.js +48 -32
  169. package/esm/renderers/Table/index.js +22 -24
  170. package/esm/renderers/Table2/ColumnToggler.js +1 -1
  171. package/esm/renderers/Table2/HeadCellSearchDropdown.js +1 -1
  172. package/esm/renderers/Table2/TableCell.js +1 -1
  173. package/esm/renderers/Table2/index.d.ts +13 -3
  174. package/esm/renderers/Table2/index.js +85 -35
  175. package/esm/renderers/TableView.js +1 -1
  176. package/esm/renderers/Tabs.js +1 -1
  177. package/esm/renderers/Tag.js +1 -1
  178. package/esm/renderers/Tasks.js +1 -1
  179. package/esm/renderers/Timeline.js +1 -1
  180. package/esm/renderers/TooltipWrapper.js +1 -1
  181. package/esm/renderers/Tpl.d.ts +0 -3
  182. package/esm/renderers/Tpl.js +7 -24
  183. package/esm/renderers/VBox.js +1 -1
  184. package/esm/renderers/Video.js +1 -1
  185. package/esm/renderers/WebComponent.js +1 -1
  186. package/esm/renderers/Wizard.js +1 -1
  187. package/esm/renderers/Wrapper.js +1 -1
  188. package/esm/schemaExtend.js +1 -1
  189. package/lib/_virtual/MiniDecimal.js +1 -1
  190. package/lib/_virtual/classCallCheck.js +1 -1
  191. package/lib/_virtual/createClass.js +1 -1
  192. package/lib/_virtual/interopRequireDefault.js +1 -1
  193. package/lib/_virtual/numberUtil.js +1 -1
  194. package/lib/_virtual/supportUtil.js +1 -1
  195. package/lib/compat.js +1 -1
  196. package/lib/helper.css +8335 -38
  197. package/lib/index.js +1 -1
  198. package/lib/node_modules/@babel/runtime/helpers/classCallCheck.js +1 -1
  199. package/lib/node_modules/@babel/runtime/helpers/createClass.js +1 -1
  200. package/lib/node_modules/@babel/runtime/helpers/interopRequireDefault.js +1 -1
  201. package/lib/node_modules/rc-input-number/lib/utils/MiniDecimal.js +1 -1
  202. package/lib/node_modules/rc-input-number/lib/utils/numberUtil.js +1 -1
  203. package/lib/node_modules/rc-input-number/lib/utils/supportUtil.js +1 -1
  204. package/lib/preset.js +7 -2
  205. package/lib/renderers/Action.js +1 -1
  206. package/lib/renderers/Alert.js +1 -1
  207. package/lib/renderers/AnchorNav.js +1 -1
  208. package/lib/renderers/App.js +1 -1
  209. package/lib/renderers/Audio.js +1 -1
  210. package/lib/renderers/Avatar.js +1 -1
  211. package/lib/renderers/BarCode.js +1 -1
  212. package/lib/renderers/Breadcrumb.js +1 -1
  213. package/lib/renderers/ButtonGroup.js +1 -1
  214. package/lib/renderers/CRUD.js +5 -5
  215. package/lib/renderers/CRUD2.js +5 -5
  216. package/lib/renderers/Calendar.js +1 -1
  217. package/lib/renderers/Card.js +1 -1
  218. package/lib/renderers/Card2.js +1 -1
  219. package/lib/renderers/Cards.js +1 -1
  220. package/lib/renderers/Carousel.js +1 -1
  221. package/lib/renderers/Chart.js +1 -1
  222. package/lib/renderers/Code.js +1 -1
  223. package/lib/renderers/Collapse.d.ts +1 -0
  224. package/lib/renderers/Collapse.js +12 -1
  225. package/lib/renderers/CollapseGroup.js +1 -1
  226. package/lib/renderers/Color.js +1 -1
  227. package/lib/renderers/Container.js +1 -1
  228. package/lib/renderers/Copyable.js +1 -1
  229. package/lib/renderers/Custom.js +1 -1
  230. package/lib/renderers/Date.js +1 -1
  231. package/lib/renderers/Dialog.d.ts +58 -58
  232. package/lib/renderers/Dialog.js +1 -1
  233. package/lib/renderers/Divider.js +1 -1
  234. package/lib/renderers/Drawer.js +2 -4
  235. package/lib/renderers/DropDownButton.js +1 -1
  236. package/lib/renderers/Each.js +1 -1
  237. package/lib/renderers/Flex.js +1 -1
  238. package/lib/renderers/Form/ButtonGroupSelect.js +1 -1
  239. package/lib/renderers/Form/ButtonToolbar.js +1 -1
  240. package/lib/renderers/Form/ChainedSelect.js +1 -1
  241. package/lib/renderers/Form/ChartRadios.js +1 -1
  242. package/lib/renderers/Form/Checkbox.js +1 -1
  243. package/lib/renderers/Form/Checkboxes.js +1 -1
  244. package/lib/renderers/Form/Combo.d.ts +4 -0
  245. package/lib/renderers/Form/Combo.js +10 -4
  246. package/lib/renderers/Form/ConditionBuilder.js +1 -1
  247. package/lib/renderers/Form/Control.js +1 -1
  248. package/lib/renderers/Form/DiffEditor.d.ts +38 -38
  249. package/lib/renderers/Form/DiffEditor.js +1 -1
  250. package/lib/renderers/Form/Editor.d.ts +27 -27
  251. package/lib/renderers/Form/Editor.js +1 -1
  252. package/lib/renderers/Form/FieldSet.d.ts +1 -0
  253. package/lib/renderers/Form/FieldSet.js +9 -3
  254. package/lib/renderers/Form/Formula.js +1 -1
  255. package/lib/renderers/Form/Group.js +1 -1
  256. package/lib/renderers/Form/Hidden.js +1 -1
  257. package/lib/renderers/Form/IconPicker.js +1 -1
  258. package/lib/renderers/Form/IconPickerIcons.js +1 -1
  259. package/lib/renderers/Form/InputArray.js +1 -1
  260. package/lib/renderers/Form/InputCity.d.ts +40 -40
  261. package/lib/renderers/Form/InputCity.js +1 -1
  262. package/lib/renderers/Form/InputColor.d.ts +40 -40
  263. package/lib/renderers/Form/InputColor.js +1 -1
  264. package/lib/renderers/Form/InputDate.js +1 -1
  265. package/lib/renderers/Form/InputDateRange.js +1 -1
  266. package/lib/renderers/Form/InputExcel.d.ts +14 -0
  267. package/lib/renderers/Form/InputExcel.js +59 -2
  268. package/lib/renderers/Form/InputFile.js +9 -8
  269. package/lib/renderers/Form/InputFormula.d.ts +7 -0
  270. package/lib/renderers/Form/InputFormula.js +3 -3
  271. package/lib/renderers/Form/InputGroup.d.ts +1 -1
  272. package/lib/renderers/Form/InputGroup.js +1 -1
  273. package/lib/renderers/Form/InputImage.d.ts +0 -1
  274. package/lib/renderers/Form/InputImage.js +5 -15
  275. package/lib/renderers/Form/InputMonthRange.js +1 -1
  276. package/lib/renderers/Form/InputNumber.d.ts +8 -0
  277. package/lib/renderers/Form/InputNumber.js +9 -4
  278. package/lib/renderers/Form/InputQuarterRange.js +1 -1
  279. package/lib/renderers/Form/InputRange.d.ts +3 -3
  280. package/lib/renderers/Form/InputRange.js +7 -7
  281. package/lib/renderers/Form/InputRating.js +1 -1
  282. package/lib/renderers/Form/InputRepeat.js +1 -1
  283. package/lib/renderers/Form/InputRichText.js +63 -46
  284. package/lib/renderers/Form/InputSubForm.js +1 -1
  285. package/lib/renderers/Form/InputTable.js +1 -1
  286. package/lib/renderers/Form/InputTag.js +1 -1
  287. package/lib/renderers/Form/InputText.d.ts +5 -1
  288. package/lib/renderers/Form/InputText.js +10 -6
  289. package/lib/renderers/Form/InputTree.js +1 -1
  290. package/lib/renderers/Form/InputYearRange.js +1 -1
  291. package/lib/renderers/Form/JSONSchema.js +1 -1
  292. package/lib/renderers/Form/JSONSchemaEditor.js +1 -1
  293. package/lib/renderers/Form/ListSelect.js +1 -1
  294. package/lib/renderers/Form/LocationPicker.js +1 -1
  295. package/lib/renderers/Form/MatrixCheckboxes.js +1 -1
  296. package/lib/renderers/Form/NestedSelect.js +1 -1
  297. package/lib/renderers/Form/Picker.d.ts +1 -0
  298. package/lib/renderers/Form/Picker.js +29 -2
  299. package/lib/renderers/Form/Radios.js +1 -1
  300. package/lib/renderers/Form/Select.d.ts +1 -1
  301. package/lib/renderers/Form/Select.js +8 -6
  302. package/lib/renderers/Form/Static.js +1 -1
  303. package/lib/renderers/Form/Switch.js +1 -1
  304. package/lib/renderers/Form/TabsTransfer.js +1 -1
  305. package/lib/renderers/Form/TabsTransferPicker.js +1 -1
  306. package/lib/renderers/Form/Textarea.js +1 -1
  307. package/lib/renderers/Form/Transfer.d.ts +4 -0
  308. package/lib/renderers/Form/Transfer.js +16 -8
  309. package/lib/renderers/Form/TransferPicker.js +2 -2
  310. package/lib/renderers/Form/TreeSelect.js +2 -2
  311. package/lib/renderers/Form/UUID.js +1 -1
  312. package/lib/renderers/Form/UserSelect.js +1 -1
  313. package/lib/renderers/Grid.js +1 -1
  314. package/lib/renderers/Grid2D.js +1 -1
  315. package/lib/renderers/GridNav.js +1 -1
  316. package/lib/renderers/HBox.js +1 -1
  317. package/lib/renderers/IFrame.js +8 -3
  318. package/lib/renderers/Icon.js +1 -1
  319. package/lib/renderers/Image.d.ts +35 -36
  320. package/lib/renderers/Image.js +5 -3
  321. package/lib/renderers/Images.d.ts +10 -1
  322. package/lib/renderers/Images.js +3 -3
  323. package/lib/renderers/Json.js +2 -2
  324. package/lib/renderers/Link.js +1 -1
  325. package/lib/renderers/List.js +1 -1
  326. package/lib/renderers/Log.d.ts +0 -5
  327. package/lib/renderers/Log.js +5 -14
  328. package/lib/renderers/Mapping.js +1 -1
  329. package/lib/renderers/Markdown.js +1 -1
  330. package/lib/renderers/Nav.d.ts +10 -10
  331. package/lib/renderers/Nav.js +3 -3
  332. package/lib/renderers/Operation.js +1 -1
  333. package/lib/renderers/Page.js +4 -4
  334. package/lib/renderers/Pagination.js +1 -1
  335. package/lib/renderers/PaginationWrapper.js +1 -1
  336. package/lib/renderers/Panel.js +1 -1
  337. package/lib/renderers/Plain.js +1 -1
  338. package/lib/renderers/PopOver.js +13 -2
  339. package/lib/renderers/Portlet.js +1 -1
  340. package/lib/renderers/Progress.js +1 -1
  341. package/lib/renderers/Property.js +1 -1
  342. package/lib/renderers/QRCode.js +1 -1
  343. package/lib/renderers/QuickEdit.js +1 -1
  344. package/lib/renderers/Remark.d.ts +1 -1
  345. package/lib/renderers/Remark.js +1 -1
  346. package/lib/renderers/SearchBox.js +1 -1
  347. package/lib/renderers/Service.d.ts +30 -6
  348. package/lib/renderers/Service.js +162 -34
  349. package/lib/renderers/SparkLine.js +1 -1
  350. package/lib/renderers/Spinner.js +1 -1
  351. package/lib/renderers/Status.js +9 -4
  352. package/lib/renderers/Steps.js +1 -1
  353. package/lib/renderers/Table/ColumnToggler.js +1 -1
  354. package/lib/renderers/Table/HeadCellFilterDropdown.d.ts +3 -0
  355. package/lib/renderers/Table/HeadCellFilterDropdown.js +16 -2
  356. package/lib/renderers/Table/HeadCellSearchDropdown.js +1 -1
  357. package/lib/renderers/Table/ItemActionsWrapper.js +1 -1
  358. package/lib/renderers/Table/TableBody.js +1 -1
  359. package/lib/renderers/Table/TableCell.js +1 -1
  360. package/lib/renderers/Table/TableContent.js +1 -1
  361. package/lib/renderers/Table/TableRow.js +1 -1
  362. package/lib/renderers/Table/exportExcel.js +48 -32
  363. package/lib/renderers/Table/index.js +22 -24
  364. package/lib/renderers/Table2/ColumnToggler.js +1 -1
  365. package/lib/renderers/Table2/HeadCellSearchDropdown.js +1 -1
  366. package/lib/renderers/Table2/TableCell.js +1 -1
  367. package/lib/renderers/Table2/index.d.ts +13 -3
  368. package/lib/renderers/Table2/index.js +85 -35
  369. package/lib/renderers/TableView.js +1 -1
  370. package/lib/renderers/Tabs.js +1 -1
  371. package/lib/renderers/Tag.js +1 -1
  372. package/lib/renderers/Tasks.js +1 -1
  373. package/lib/renderers/Timeline.js +1 -1
  374. package/lib/renderers/TooltipWrapper.js +1 -1
  375. package/lib/renderers/Tpl.d.ts +0 -3
  376. package/lib/renderers/Tpl.js +6 -23
  377. package/lib/renderers/VBox.js +1 -1
  378. package/lib/renderers/Video.js +1 -1
  379. package/lib/renderers/WebComponent.js +1 -1
  380. package/lib/renderers/Wizard.js +1 -1
  381. package/lib/renderers/Wrapper.js +1 -1
  382. package/lib/schemaExtend.js +1 -1
  383. package/lib/themes/ang-ie11.css +4648 -1413
  384. package/lib/themes/ang.css +8847 -5617
  385. package/lib/themes/antd-ie11.css +4644 -1415
  386. package/lib/themes/antd.css +8955 -5731
  387. package/lib/themes/cxd-ie11.css +4652 -1423
  388. package/lib/themes/cxd.css +8855 -5630
  389. package/lib/themes/dark-ie11.css +4763 -1527
  390. package/lib/themes/dark.css +8940 -5709
  391. package/lib/themes/default-ie11.css +4652 -1423
  392. package/lib/themes/default.css +8855 -5630
  393. package/package.json +23 -19
  394. package/revision.json +7 -0
  395. package/schema.json +623 -437
  396. package/sdk/ang-ie11.css +10687 -24
  397. package/sdk/ang.css +10682 -24
  398. package/sdk/antd-ie11.css +10689 -33
  399. package/sdk/antd.css +10791 -140
  400. package/sdk/barcode.js +50 -50
  401. package/sdk/charts.js +16 -16
  402. package/sdk/codemirror.js +7 -7
  403. package/sdk/color-picker.js +65 -65
  404. package/sdk/cropperjs.js +2 -2
  405. package/sdk/cxd-ie11.css +10694 -38
  406. package/sdk/cxd.css +10688 -36
  407. package/sdk/dark-ie11.css +10689 -24
  408. package/sdk/dark.css +10773 -113
  409. package/sdk/exceljs.js +1 -1
  410. package/sdk/helper.css +8335 -38
  411. package/sdk/locale/de-DE.js +7 -1
  412. package/sdk/markdown.js +68 -68
  413. package/sdk/papaparse.js +1 -1
  414. package/sdk/rest.js +17 -17
  415. package/sdk/rich-text.js +62 -62
  416. package/sdk/sdk-ie11.css +10694 -38
  417. package/sdk/sdk.css +10688 -36
  418. package/sdk/sdk.js +1438 -1440
  419. package/sdk/thirds/hls.js/hls.js +1 -1
  420. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  421. package/sdk/tinymce.js +52 -52
  422. package/sdk/thirds/codemirror/lib/codemirror.css +0 -344
  423. package/sdk/thirds/cropperjs/cropper.css +0 -304
  424. package/sdk/thirds/froala-editor/css/froala_editor.pkgd.min.css +0 -7
  425. package/sdk/thirds/froala-editor/css/froala_style.min.css +0 -7
  426. package/sdk/thirds/tinymce/skins/ui/oxide/skin.css +0 -3074
  427. package/sdk/thirds/video-react/video-react.css +0 -1049
@@ -2,9 +2,14 @@ import React from 'react';
2
2
  import { RendererProps } from 'amis-core';
3
3
  import { IServiceStore } from 'amis-core';
4
4
  import { Api, RendererData, ActionObject } from 'amis-core';
5
- import Scoped, { IScopedContext } from 'amis-core';
5
+ import { IScopedContext } from 'amis-core';
6
6
  import { BaseSchema, SchemaApi, SchemaCollection, SchemaExpression, SchemaMessage, SchemaName } from '../Schema';
7
7
  import type { ListenerAction } from 'amis-core';
8
+ export declare const eventTypes: readonly ["inited", "onApiFetched", "onSchemaApiFetched", "onWsFetched"];
9
+ export declare type ProviderEventType = typeof eventTypes[number];
10
+ export declare type DataProviderCollection = Partial<Record<ProviderEventType, DataProvider>>;
11
+ export declare type DataProvider = string | Function;
12
+ export declare type ComposedDataProvider = DataProvider | DataProviderCollection;
8
13
  /**
9
14
  * Service 服务类控件。
10
15
  * 文档:https://baidu.gitee.io/amis/docs/components/service
@@ -25,7 +30,7 @@ export interface ServiceSchema extends BaseSchema {
25
30
  /**
26
31
  * 通过调用外部函数来获取数据
27
32
  */
28
- dataProvider?: string | Function;
33
+ dataProvider?: ComposedDataProvider;
29
34
  /**
30
35
  * 内容区域
31
36
  */
@@ -80,7 +85,8 @@ export default class Service extends React.Component<ServiceProps> {
80
85
  timer: ReturnType<typeof setTimeout>;
81
86
  mounted: boolean;
82
87
  socket: any;
83
- dataProviderUnsubscribe?: Function;
88
+ dataProviders: DataProviderCollection;
89
+ dataProviderUnsubscribe?: Partial<Record<ProviderEventType, Function>>;
84
90
  static defaultProps: Partial<ServiceProps>;
85
91
  static propsList: Array<string>;
86
92
  constructor(props: ServiceProps);
@@ -89,8 +95,26 @@ export default class Service extends React.Component<ServiceProps> {
89
95
  componentWillUnmount(): void;
90
96
  doAction(action: ListenerAction, args: any): void;
91
97
  initFetch(): void;
92
- runDataProvider(): Promise<void>;
93
- runDataProviderUnsubscribe(): void;
98
+ /**
99
+ * 初始化Provider函数集,将Schema配置统一转化为DataProviderCollection格式
100
+ */
101
+ initDataProviders(provider?: ComposedDataProvider): Partial<Record<"inited" | "onApiFetched" | "onSchemaApiFetched" | "onWsFetched", DataProvider>>;
102
+ /**
103
+ * 标准化处理Provider函数
104
+ */
105
+ normalizeProvider(provider: any, event?: ProviderEventType): DataProviderCollection | null;
106
+ /**
107
+ * 使用外部函数获取数据
108
+ *
109
+ * @param {ProviderEventType} event 触发provider函数执行的事件,默认初始时执行
110
+ */
111
+ runDataProvider(event: ProviderEventType): Promise<void>;
112
+ /**
113
+ * 运行销毁外部函数的方法
114
+ *
115
+ * @param {ProviderEventType} event 事件名称,不传参数即执行所有销毁函数
116
+ */
117
+ runDataProviderUnsubscribe(event?: ProviderEventType): void;
94
118
  dataProviderSetData(data: any): void;
95
119
  fetchWSData(ws: string | Api, data: any): void;
96
120
  afterDataFetch(result: any): void;
@@ -110,7 +134,7 @@ export default class Service extends React.Component<ServiceProps> {
110
134
  render(): JSX.Element;
111
135
  }
112
136
  export declare class ServiceRenderer extends Service {
113
- static contextType: React.Context<Scoped.IScopedContext>;
137
+ static contextType: React.Context<IScopedContext>;
114
138
  constructor(props: ServiceProps, context: IScopedContext);
115
139
  reload(subpath?: string, query?: any, ctx?: any, silent?: boolean): void;
116
140
  receive(values: any, subPath?: string): void;
@@ -1,17 +1,30 @@
1
1
  /**
2
- * amis v2.2.0
2
+ * amis v2.3.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
6
6
  import { __extends, __awaiter, __generator, __assign, __decorate, __metadata } from 'tslib';
7
7
  import React from 'react';
8
- import { isApiOutdated, isObjectShallowModified, isEffectiveApi, str2AsyncFunction, buildApi, isEmpty, evalExpression, createObject, filter, isVisible, autobind, qsstringify, ScopedContext, Renderer, ServiceStore } from 'amis-core';
8
+ import extend from 'lodash/extend';
9
+ import cloneDeep from 'lodash/cloneDeep';
10
+ import { isApiOutdated, isObjectShallowModified, isEffectiveApi, isObject, str2AsyncFunction, buildApi, isEmpty, evalExpression, createObject, filter, isVisible, autobind, qsstringify, ScopedContext, Renderer, ServiceStore } from 'amis-core';
9
11
  import { Spinner } from 'amis-ui';
10
12
 
13
+ var eventTypes = [
14
+ /* 初始化时执行,默认 */
15
+ 'inited',
16
+ /* API请求调用成功之后执行 */
17
+ 'onApiFetched',
18
+ /* Schema API请求调用成功之后执行 */
19
+ 'onSchemaApiFetched',
20
+ /* WebSocket调用成功后执行 */
21
+ 'onWsFetched'
22
+ ];
11
23
  var Service = /** @class */ (function (_super) {
12
24
  __extends(Service, _super);
13
25
  function Service(props) {
14
26
  var _this = _super.call(this, props) || this;
27
+ _this.dataProviders = _this.initDataProviders(props.dataProvider);
15
28
  _this.handleQuery = _this.handleQuery.bind(_this);
16
29
  _this.handleAction = _this.handleAction.bind(_this);
17
30
  _this.handleChange = _this.handleChange.bind(_this);
@@ -29,23 +42,38 @@ var Service = /** @class */ (function (_super) {
29
42
  this.initFetch();
30
43
  };
31
44
  Service.prototype.componentDidUpdate = function (prevProps) {
45
+ var _this = this;
46
+ var _a;
32
47
  var props = this.props;
33
48
  var store = props.store;
34
- var _a = props.messages, fetchSuccess = _a.fetchSuccess, fetchFailed = _a.fetchFailed;
49
+ var _b = props.messages, fetchSuccess = _b.fetchSuccess, fetchFailed = _b.fetchFailed;
50
+ if (props.dataProvider !== prevProps.dataProvider) {
51
+ /* 重新构建provider函数 */
52
+ this.dataProviders = this.initDataProviders(props.dataProvider);
53
+ if (this.dataProviders && ((_a = this.dataProviders) === null || _a === void 0 ? void 0 : _a.inited)) {
54
+ this.runDataProvider('inited');
55
+ }
56
+ }
35
57
  isApiOutdated(prevProps.api, props.api, prevProps.data, props.data) &&
36
58
  store
37
59
  .fetchData(props.api, store.data, {
38
60
  successMessage: fetchSuccess,
39
61
  errorMessage: fetchFailed
40
62
  })
41
- .then(this.afterDataFetch);
63
+ .then(function (res) {
64
+ _this.runDataProvider('onApiFetched');
65
+ _this.afterDataFetch(res);
66
+ });
42
67
  isApiOutdated(prevProps.schemaApi, props.schemaApi, prevProps.data, props.data) &&
43
68
  store
44
69
  .fetchSchema(props.schemaApi, store.data, {
45
70
  successMessage: fetchSuccess,
46
71
  errorMessage: fetchFailed
47
72
  })
48
- .then(this.afterSchemaFetch);
73
+ .then(function (res) {
74
+ _this.runDataProvider('onSchemaApiFetched');
75
+ _this.afterSchemaFetch(res);
76
+ });
49
77
  if (props.ws && prevProps.ws !== props.ws) {
50
78
  if (this.socket) {
51
79
  this.socket.close();
@@ -55,9 +83,6 @@ var Service = /** @class */ (function (_super) {
55
83
  if (isObjectShallowModified(prevProps.defaultData, props.defaultData)) {
56
84
  store.reInitData(props.defaultData);
57
85
  }
58
- if (props.dataProvider !== prevProps.dataProvider) {
59
- this.runDataProvider();
60
- }
61
86
  };
62
87
  Service.prototype.componentWillUnmount = function () {
63
88
  this.mounted = false;
@@ -81,11 +106,12 @@ var Service = /** @class */ (function (_super) {
81
106
  .then(this.afterSchemaFetch);
82
107
  }
83
108
  if (dataProvider) {
84
- this.runDataProvider();
109
+ this.runDataProvider('inited');
85
110
  }
86
111
  }
87
112
  };
88
113
  Service.prototype.initFetch = function () {
114
+ var _this = this;
89
115
  var _a = this.props, schemaApi = _a.schemaApi, initFetchSchema = _a.initFetchSchema, api = _a.api, ws = _a.ws, initFetch = _a.initFetch, initFetchOn = _a.initFetchOn, dataProvider = _a.dataProvider, store = _a.store, _b = _a.messages, fetchSuccess = _b.fetchSuccess, fetchFailed = _b.fetchFailed;
90
116
  if (isEffectiveApi(schemaApi, store.data, initFetchSchema)) {
91
117
  store
@@ -93,7 +119,10 @@ var Service = /** @class */ (function (_super) {
93
119
  successMessage: fetchSuccess,
94
120
  errorMessage: fetchFailed
95
121
  })
96
- .then(this.afterSchemaFetch);
122
+ .then(function (res) {
123
+ _this.runDataProvider('onSchemaApiFetched');
124
+ _this.afterSchemaFetch(res);
125
+ });
97
126
  }
98
127
  if (isEffectiveApi(api, store.data, initFetch, initFetchOn)) {
99
128
  store
@@ -101,51 +130,127 @@ var Service = /** @class */ (function (_super) {
101
130
  successMessage: fetchSuccess,
102
131
  errorMessage: fetchFailed
103
132
  })
104
- .then(this.afterDataFetch);
133
+ .then(function (res) {
134
+ _this.runDataProvider('onApiFetched');
135
+ _this.afterDataFetch(res);
136
+ });
105
137
  }
106
138
  if (ws) {
107
139
  this.socket = this.fetchWSData(ws, store.data);
108
140
  }
109
141
  if (dataProvider) {
110
- this.runDataProvider();
142
+ this.runDataProvider('inited');
143
+ }
144
+ };
145
+ /**
146
+ * 初始化Provider函数集,将Schema配置统一转化为DataProviderCollection格式
147
+ */
148
+ Service.prototype.initDataProviders = function (provider) {
149
+ var _this = this;
150
+ var dataProvider = cloneDeep(provider);
151
+ var fnCollection = {};
152
+ if (dataProvider) {
153
+ if (typeof dataProvider === 'object' && isObject(dataProvider)) {
154
+ Object.keys(dataProvider).forEach(function (event) {
155
+ var normalizedProvider = _this.normalizeProvider(dataProvider[event], event);
156
+ fnCollection = extend(fnCollection, normalizedProvider || {});
157
+ });
158
+ }
159
+ else {
160
+ var normalizedProvider = this.normalizeProvider(dataProvider, 'inited');
161
+ fnCollection = extend(fnCollection, normalizedProvider || {});
162
+ }
163
+ }
164
+ return fnCollection;
165
+ };
166
+ /**
167
+ * 标准化处理Provider函数
168
+ */
169
+ Service.prototype.normalizeProvider = function (provider, event) {
170
+ var _a, _b;
171
+ if (event === void 0) { event = 'inited'; }
172
+ if (!~eventTypes.indexOf(event)) {
173
+ return null;
174
+ }
175
+ if (typeof provider === 'function') {
176
+ return _a = {}, _a[event] = provider, _a;
111
177
  }
178
+ else if (typeof provider === 'string') {
179
+ var asyncFn = str2AsyncFunction(provider, 'data', 'setData', 'env');
180
+ return asyncFn
181
+ ? (_b = {},
182
+ _b[event] = asyncFn,
183
+ _b) : null;
184
+ }
185
+ return null;
112
186
  };
113
- // 使用外部函数获取数据
114
- Service.prototype.runDataProvider = function () {
187
+ /**
188
+ * 使用外部函数获取数据
189
+ *
190
+ * @param {ProviderEventType} event 触发provider函数执行的事件,默认初始时执行
191
+ */
192
+ Service.prototype.runDataProvider = function (event) {
115
193
  return __awaiter(this, void 0, void 0, function () {
116
- var _a, dataProvider, store, dataProviderFunc, unsubscribe;
117
- return __generator(this, function (_b) {
118
- switch (_b.label) {
194
+ var store, dataProviders, fn, unsubscribe;
195
+ return __generator(this, function (_a) {
196
+ switch (_a.label) {
119
197
  case 0:
120
- this.runDataProviderUnsubscribe();
121
- _a = this.props, dataProvider = _a.dataProvider, store = _a.store;
122
- dataProviderFunc = dataProvider;
123
- if (typeof dataProvider === 'string' && dataProvider) {
124
- dataProviderFunc = str2AsyncFunction(dataProvider, 'data', 'setData', 'env');
125
- }
126
- if (!(typeof dataProviderFunc === 'function')) return [3 /*break*/, 2];
127
- return [4 /*yield*/, dataProviderFunc(store.data, this.dataProviderSetData, this.props.env)];
198
+ this.runDataProviderUnsubscribe(event);
199
+ store = this.props.store;
200
+ dataProviders = this.dataProviders;
201
+ if (!(dataProviders && ~eventTypes.indexOf(event))) return [3 /*break*/, 2];
202
+ fn = dataProviders[event];
203
+ if (!(fn && typeof fn === 'function')) return [3 /*break*/, 2];
204
+ return [4 /*yield*/, fn(store.data, this.dataProviderSetData, this.props.env)];
128
205
  case 1:
129
- unsubscribe = _b.sent();
206
+ unsubscribe = _a.sent();
130
207
  if (typeof unsubscribe === 'function') {
131
- this.dataProviderUnsubscribe = unsubscribe;
208
+ if (!this.dataProviderUnsubscribe) {
209
+ this.dataProviderUnsubscribe = {};
210
+ }
211
+ this.dataProviderUnsubscribe[event] = unsubscribe;
132
212
  }
133
- _b.label = 2;
213
+ _a.label = 2;
134
214
  case 2: return [2 /*return*/];
135
215
  }
136
216
  });
137
217
  });
138
218
  };
139
- // 运行销毁外部函数的方法
140
- Service.prototype.runDataProviderUnsubscribe = function () {
141
- if (typeof this.dataProviderUnsubscribe === 'function') {
219
+ /**
220
+ * 运行销毁外部函数的方法
221
+ *
222
+ * @param {ProviderEventType} event 事件名称,不传参数即执行所有销毁函数
223
+ */
224
+ Service.prototype.runDataProviderUnsubscribe = function (event) {
225
+ var _a;
226
+ var dataProviderUnsubscribe = this.dataProviderUnsubscribe;
227
+ if (!dataProviderUnsubscribe) {
228
+ return;
229
+ }
230
+ if (event) {
231
+ var disposedFn = dataProviderUnsubscribe[event];
142
232
  try {
143
- this.dataProviderUnsubscribe();
233
+ if (disposedFn && typeof disposedFn === 'function') {
234
+ disposedFn();
235
+ }
144
236
  }
145
237
  catch (error) {
146
238
  console.error(error);
147
239
  }
148
240
  }
241
+ else {
242
+ (_a = Object.keys(dataProviderUnsubscribe)) === null || _a === void 0 ? void 0 : _a.forEach(function (event) {
243
+ var disposedFn = dataProviderUnsubscribe[event];
244
+ try {
245
+ if (disposedFn && typeof disposedFn === 'function') {
246
+ disposedFn();
247
+ }
248
+ }
249
+ catch (error) {
250
+ console.error(error);
251
+ }
252
+ });
253
+ }
149
254
  };
150
255
  // 外部函数回调更新数据
151
256
  Service.prototype.dataProviderSetData = function (data) {
@@ -173,6 +278,7 @@ var Service = /** @class */ (function (_super) {
173
278
  }
174
279
  store.updateData(returndata, undefined, false);
175
280
  store.setHasRemoteData();
281
+ _this.runDataProvider('onWsFetched');
176
282
  // 因为 WebSocket 只会获取纯数据,所以没有 msg 之类的
177
283
  _this.afterDataFetch({ ok: true, data: returndata });
178
284
  }, function (error) {
@@ -212,6 +318,7 @@ var Service = /** @class */ (function (_super) {
212
318
  return value;
213
319
  };
214
320
  Service.prototype.reload = function (subpath, query, ctx, silent) {
321
+ var _this = this;
215
322
  if (query) {
216
323
  return this.receive(query);
217
324
  }
@@ -223,7 +330,10 @@ var Service = /** @class */ (function (_super) {
223
330
  successMessage: fetchSuccess,
224
331
  errorMessage: fetchFailed
225
332
  })
226
- .then(this.afterSchemaFetch);
333
+ .then(function (res) {
334
+ _this.runDataProvider('onApiFetched');
335
+ _this.afterSchemaFetch(res);
336
+ });
227
337
  }
228
338
  if (isEffectiveApi(api, store.data)) {
229
339
  store
@@ -232,10 +342,13 @@ var Service = /** @class */ (function (_super) {
232
342
  successMessage: fetchSuccess,
233
343
  errorMessage: fetchFailed
234
344
  })
235
- .then(this.afterDataFetch);
345
+ .then(function (res) {
346
+ _this.runDataProvider('onSchemaApiFetched');
347
+ _this.afterDataFetch(res);
348
+ });
236
349
  }
237
350
  if (dataProvider) {
238
- this.runDataProvider();
351
+ this.runDataProvider('inited');
239
352
  }
240
353
  };
241
354
  Service.prototype.silentReload = function (target, query) {
@@ -374,6 +487,18 @@ var Service = /** @class */ (function (_super) {
374
487
  __metadata("design:paramtypes", []),
375
488
  __metadata("design:returntype", void 0)
376
489
  ], Service.prototype, "initFetch", null);
490
+ __decorate([
491
+ autobind,
492
+ __metadata("design:type", Function),
493
+ __metadata("design:paramtypes", [Object]),
494
+ __metadata("design:returntype", void 0)
495
+ ], Service.prototype, "initDataProviders", null);
496
+ __decorate([
497
+ autobind,
498
+ __metadata("design:type", Function),
499
+ __metadata("design:paramtypes", [Object, String]),
500
+ __metadata("design:returntype", Object)
501
+ ], Service.prototype, "normalizeProvider", null);
377
502
  __decorate([
378
503
  autobind,
379
504
  __metadata("design:type", Function),
@@ -435,4 +560,4 @@ var Service = /** @class */ (function (_super) {
435
560
  return ServiceRenderer;
436
561
  })(Service));
437
562
 
438
- export { Service as default };
563
+ export { Service as default, eventTypes };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.2.0
2
+ * amis v2.3.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.2.0
2
+ * amis v2.3.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,10 +1,11 @@
1
1
  /**
2
- * amis v2.2.0
2
+ * amis v2.3.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
6
6
  import { __extends, __decorate } from 'tslib';
7
7
  import React from 'react';
8
+ import merge from 'lodash/merge';
8
9
  import { getPropValue, filter, Renderer } from 'amis-core';
9
10
  import { Icon } from 'amis-ui';
10
11
 
@@ -14,11 +15,14 @@ var StatusField = /** @class */ (function (_super) {
14
15
  return _super !== null && _super.apply(this, arguments) || this;
15
16
  }
16
17
  StatusField.prototype.render = function () {
17
- var _a = this.props, className = _a.className, placeholder = _a.placeholder, map = _a.map, labelMap = _a.labelMap, cx = _a.classnames, data = _a.data;
18
+ var _a, _b;
19
+ var _c = this.props, className = _c.className, placeholder = _c.placeholder, cx = _c.classnames, data = _c.data;
20
+ var map = merge(StatusField.defaultProps.map, (_a = this.props) === null || _a === void 0 ? void 0 : _a.map);
21
+ var labelMap = merge(StatusField.defaultProps.labelMap, (_b = this.props) === null || _b === void 0 ? void 0 : _b.labelMap);
18
22
  var value = getPropValue(this.props);
19
23
  var viewValue = (React.createElement("span", { className: "text-muted", key: "status-value" }, placeholder));
20
24
  var wrapClassName = '';
21
- if (value !== undefined && value !== '' && map) {
25
+ if (value != undefined && value !== '' && map) {
22
26
  if (typeof value === 'boolean') {
23
27
  value = value ? 1 : 0;
24
28
  }
@@ -26,7 +30,7 @@ var StatusField = /** @class */ (function (_super) {
26
30
  value = parseInt(value, 10) || 0;
27
31
  }
28
32
  wrapClassName = "StatusField--".concat(value);
29
- var itemClassName = map[value] || '';
33
+ var itemClassName = filter(map[value], data) || '';
30
34
  var svgIcon_1 = '';
31
35
  itemClassName = itemClassName.replace(/\bsvg-([^\s|$]+)\b/g, function (_, icon) {
32
36
  svgIcon_1 = icon;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.2.0
2
+ * amis v2.3.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.2.0
2
+ * amis v2.3.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,8 +1,10 @@
1
1
  import React from 'react';
2
2
  import { RendererProps } from 'amis-core';
3
+ import type { Option } from 'amis-core';
3
4
  export interface QuickFilterConfig {
4
5
  options: Array<any>;
5
6
  multiple: boolean;
7
+ strictMode?: boolean;
6
8
  [propName: string]: any;
7
9
  }
8
10
  export interface HeadCellFilterProps extends RendererProps {
@@ -22,6 +24,7 @@ export declare class HeadCellFilterDropDown extends React.Component<HeadCellFilt
22
24
  componentDidUpdate(prevProps: HeadCellFilterProps, prevState: any): void;
23
25
  fetchOptions(): void;
24
26
  alterOptions(options: Array<any>): any[];
27
+ optionComparator(option: Option, selected: any): boolean;
25
28
  handleClickOutside(): void;
26
29
  open(): void;
27
30
  close(): void;
@@ -1,11 +1,11 @@
1
1
  /**
2
- * amis v2.2.0
2
+ * amis v2.3.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
6
6
  import { __extends, __assign, __awaiter, __generator } from 'tslib';
7
7
  import React from 'react';
8
- import { isApiOutdated, getVariable, isEffectiveApi, normalizeApi, normalizeOptions, createObject, Overlay, PopOver } from 'amis-core';
8
+ import { isApiOutdated, getVariable, isEffectiveApi, normalizeApi, normalizeOptions, isNumeric, createObject, Overlay, PopOver } from 'amis-core';
9
9
  import { Icon, Checkbox } from 'amis-ui';
10
10
  import { findDOMNode } from 'react-dom';
11
11
  import xor from 'lodash/xor';
@@ -98,6 +98,7 @@ var HeadCellFilterDropDown = /** @class */ (function (_super) {
98
98
  });
99
99
  };
100
100
  HeadCellFilterDropDown.prototype.alterOptions = function (options) {
101
+ var _this = this;
101
102
  var _a = this.props, data = _a.data, filterable = _a.filterable, name = _a.name;
102
103
  var filterValue = data && typeof data[name] !== 'undefined' ? data[name] : '';
103
104
  options = normalizeOptions(options);
@@ -105,10 +106,23 @@ var HeadCellFilterDropDown = /** @class */ (function (_super) {
105
106
  options = options.map(function (option) { return (__assign(__assign({}, option), { selected: filterValue.split(',').indexOf(option.value) > -1 })); });
106
107
  }
107
108
  else {
108
- options = options.map(function (option) { return (__assign(__assign({}, option), { selected: option.value == filterValue })); });
109
+ options = options.map(function (option) { return (__assign(__assign({}, option), { selected: _this.optionComparator(option, filterValue) })); });
109
110
  }
110
111
  return options;
111
112
  };
113
+ HeadCellFilterDropDown.prototype.optionComparator = function (option, selected) {
114
+ var filterable = this.props.filterable;
115
+ /**
116
+ * 无论是否严格模式,需要考虑CRUD开启syncLocation后,参数值会被转化为string的情况:
117
+ * 数字类需要特殊处理,如果两边都为数字类时才进行比较,否则不相等,排除 1 == true 这种情况
118
+ */
119
+ if (isNumeric(option.value)) {
120
+ return isNumeric(selected) ? option.value == selected : false;
121
+ }
122
+ return (filterable === null || filterable === void 0 ? void 0 : filterable.strictMode) === true
123
+ ? option.value === selected
124
+ : option.value == selected;
125
+ };
112
126
  HeadCellFilterDropDown.prototype.handleClickOutside = function () {
113
127
  this.close();
114
128
  };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.2.0
2
+ * amis v2.3.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.2.0
2
+ * amis v2.3.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.2.0
2
+ * amis v2.3.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.2.0
2
+ * amis v2.3.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.2.0
2
+ * amis v2.3.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.2.0
2
+ * amis v2.3.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5