amis 2.0.0-rc.9 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (532) hide show
  1. package/esm/Schema.d.ts +442 -0
  2. package/esm/compat.d.ts +1 -0
  3. package/esm/compat.js +459 -0
  4. package/esm/index.d.ts +146 -0
  5. package/esm/index.js +144 -0
  6. package/esm/preset.d.ts +1 -0
  7. package/esm/preset.js +40 -0
  8. package/esm/renderers/Action.d.ts +393 -0
  9. package/esm/renderers/Action.js +443 -0
  10. package/esm/renderers/Alert.d.ts +49 -0
  11. package/esm/renderers/Alert.js +35 -0
  12. package/esm/renderers/AnchorNav.d.ts +69 -0
  13. package/esm/renderers/AnchorNav.js +97 -0
  14. package/esm/renderers/App.d.ts +125 -0
  15. package/esm/renderers/App.js +198 -0
  16. package/esm/renderers/Audio.d.ts +88 -0
  17. package/esm/renderers/Audio.js +382 -0
  18. package/esm/renderers/Avatar.d.ts +75 -0
  19. package/esm/renderers/Avatar.js +54 -0
  20. package/esm/renderers/BarCode.d.ts +35 -0
  21. package/esm/renderers/BarCode.js +38 -0
  22. package/esm/renderers/Breadcrumb.d.ts +89 -0
  23. package/esm/renderers/Breadcrumb.js +58 -0
  24. package/esm/renderers/ButtonGroup.d.ts +64 -0
  25. package/esm/renderers/ButtonGroup.js +22 -0
  26. package/esm/renderers/CRUD.d.ts +302 -0
  27. package/esm/renderers/CRUD.js +1244 -0
  28. package/esm/renderers/CRUD2.d.ts +215 -0
  29. package/esm/renderers/CRUD2.js +742 -0
  30. package/esm/renderers/Calendar.d.ts +45 -0
  31. package/esm/renderers/Calendar.js +22 -0
  32. package/esm/renderers/Card.d.ts +231 -0
  33. package/esm/renderers/Card.js +372 -0
  34. package/esm/renderers/Card2.d.ts +77 -0
  35. package/esm/renderers/Card2.js +83 -0
  36. package/esm/renderers/Cards.d.ts +170 -0
  37. package/esm/renderers/Cards.js +555 -0
  38. package/esm/renderers/Carousel.d.ts +103 -0
  39. package/esm/renderers/Carousel.js +329 -0
  40. package/esm/renderers/Chart.d.ts +116 -0
  41. package/esm/renderers/Chart.js +352 -0
  42. package/esm/renderers/Code.d.ts +84 -0
  43. package/esm/renderers/Code.js +130 -0
  44. package/esm/renderers/Collapse.d.ts +83 -0
  45. package/esm/renderers/Collapse.js +47 -0
  46. package/esm/renderers/CollapseGroup.d.ts +42 -0
  47. package/esm/renderers/CollapseGroup.js +35 -0
  48. package/esm/renderers/Color.d.ts +36 -0
  49. package/esm/renderers/Color.js +42 -0
  50. package/esm/renderers/Container.d.ts +44 -0
  51. package/esm/renderers/Container.js +49 -0
  52. package/esm/renderers/Copyable.d.ts +25 -0
  53. package/esm/renderers/Copyable.js +49 -0
  54. package/esm/renderers/Custom.d.ts +51 -0
  55. package/esm/renderers/Custom.js +163 -0
  56. package/esm/renderers/Date.d.ts +58 -0
  57. package/esm/renderers/Date.js +121 -0
  58. package/esm/renderers/Dialog.d.ts +1357 -0
  59. package/esm/renderers/Dialog.js +633 -0
  60. package/esm/renderers/Divider.d.ts +20 -0
  61. package/esm/renderers/Divider.js +38 -0
  62. package/esm/renderers/Drawer.d.ts +153 -0
  63. package/esm/renderers/Drawer.js +608 -0
  64. package/esm/renderers/DropDownButton.d.ts +114 -0
  65. package/esm/renderers/DropDownButton.js +151 -0
  66. package/esm/renderers/Each.d.ts +38 -0
  67. package/esm/renderers/Each.js +59 -0
  68. package/esm/renderers/Flex.d.ts +77 -0
  69. package/esm/renderers/Flex.js +84 -0
  70. package/esm/renderers/Form/ButtonGroupSelect.d.ts +26 -0
  71. package/esm/renderers/Form/ButtonGroupSelect.js +114 -0
  72. package/esm/renderers/Form/ButtonToolbar.d.ts +28 -0
  73. package/esm/renderers/Form/ButtonToolbar.js +50 -0
  74. package/esm/renderers/Form/ChainedSelect.d.ts +36 -0
  75. package/esm/renderers/Form/ChainedSelect.js +213 -0
  76. package/esm/renderers/Form/ChartRadios.d.ts +34 -0
  77. package/esm/renderers/Form/ChartRadios.js +121 -0
  78. package/esm/renderers/Form/Checkbox.d.ts +47 -0
  79. package/esm/renderers/Form/Checkbox.js +83 -0
  80. package/esm/renderers/Form/Checkboxes.d.ts +65 -0
  81. package/esm/renderers/Form/Checkboxes.js +226 -0
  82. package/esm/renderers/Form/Combo.d.ts +251 -0
  83. package/esm/renderers/Form/Combo.js +822 -0
  84. package/esm/renderers/Form/ConditionBuilder.d.ts +56 -0
  85. package/esm/renderers/Form/ConditionBuilder.js +69 -0
  86. package/esm/renderers/Form/Control.d.ts +18 -0
  87. package/esm/renderers/Form/Control.js +38 -0
  88. package/esm/renderers/Form/DiffEditor.d.ts +3925 -0
  89. package/esm/renderers/Form/DiffEditor.js +199 -0
  90. package/esm/renderers/Form/Editor.d.ts +3856 -0
  91. package/esm/renderers/Form/Editor.js +247 -0
  92. package/esm/renderers/Form/FieldSet.d.ts +70 -0
  93. package/esm/renderers/Form/FieldSet.js +59 -0
  94. package/esm/renderers/Form/Formula.d.ts +53 -0
  95. package/esm/renderers/Form/Formula.js +128 -0
  96. package/esm/renderers/Form/Group.d.ts +57 -0
  97. package/esm/renderers/Form/Group.js +99 -0
  98. package/esm/renderers/Form/Hidden.d.ts +15 -0
  99. package/esm/renderers/Form/Hidden.js +35 -0
  100. package/esm/renderers/Form/IconPicker.d.ts +49 -0
  101. package/esm/renderers/Form/IconPicker.js +305 -0
  102. package/esm/renderers/Form/IconPickerIcons.d.ts +8 -0
  103. package/esm/renderers/Form/IconPickerIcons.js +26 -0
  104. package/esm/renderers/Form/InputArray.d.ts +31 -0
  105. package/esm/renderers/Form/InputArray.js +45 -0
  106. package/esm/renderers/Form/InputCity.d.ts +654 -0
  107. package/esm/renderers/Form/InputCity.js +347 -0
  108. package/esm/renderers/Form/InputColor.d.ts +504 -0
  109. package/esm/renderers/Form/InputColor.js +52 -0
  110. package/esm/renderers/Form/InputDate.d.ts +359 -0
  111. package/esm/renderers/Form/InputDate.js +258 -0
  112. package/esm/renderers/Form/InputDateRange.d.ts +121 -0
  113. package/esm/renderers/Form/InputDateRange.js +166 -0
  114. package/esm/renderers/Form/InputExcel.d.ts +51 -0
  115. package/esm/renderers/Form/InputExcel.js +195 -0
  116. package/esm/renderers/Form/InputFile.d.ts +257 -0
  117. package/esm/renderers/Form/InputFile.js +937 -0
  118. package/esm/renderers/Form/InputFormula.d.ts +91 -0
  119. package/esm/renderers/Form/InputFormula.js +67 -0
  120. package/esm/renderers/Form/InputGroup.d.ts +33 -0
  121. package/esm/renderers/Form/InputGroup.js +111 -0
  122. package/esm/renderers/Form/InputImage.d.ts +315 -0
  123. package/esm/renderers/Form/InputImage.js +908 -0
  124. package/esm/renderers/Form/InputMonthRange.d.ts +22 -0
  125. package/esm/renderers/Form/InputMonthRange.js +46 -0
  126. package/esm/renderers/Form/InputNumber.d.ts +128 -0
  127. package/esm/renderers/Form/InputNumber.js +210 -0
  128. package/esm/renderers/Form/InputQuarterRange.d.ts +22 -0
  129. package/esm/renderers/Form/InputQuarterRange.js +46 -0
  130. package/esm/renderers/Form/InputRange.d.ts +271 -0
  131. package/esm/renderers/Form/InputRange.js +388 -0
  132. package/esm/renderers/Form/InputRating.d.ts +74 -0
  133. package/esm/renderers/Form/InputRating.js +82 -0
  134. package/esm/renderers/Form/InputRepeat.d.ts +35 -0
  135. package/esm/renderers/Form/InputRepeat.js +115 -0
  136. package/esm/renderers/Form/InputRichText.d.ts +56 -0
  137. package/esm/renderers/Form/InputRichText.js +177 -0
  138. package/esm/renderers/Form/InputSubForm.d.ts +123 -0
  139. package/esm/renderers/Form/InputSubForm.js +269 -0
  140. package/esm/renderers/Form/InputTable.d.ts +180 -0
  141. package/esm/renderers/Form/InputTable.js +677 -0
  142. package/esm/renderers/Form/InputTag.d.ts +108 -0
  143. package/esm/renderers/Form/InputTag.js +439 -0
  144. package/esm/renderers/Form/InputText.d.ts +133 -0
  145. package/esm/renderers/Form/InputText.js +632 -0
  146. package/esm/renderers/Form/InputTree.d.ts +86 -0
  147. package/esm/renderers/Form/InputTree.js +108 -0
  148. package/esm/renderers/Form/InputYearRange.d.ts +22 -0
  149. package/esm/renderers/Form/InputYearRange.js +46 -0
  150. package/esm/renderers/Form/JSONSchema.d.ts +24 -0
  151. package/esm/renderers/Form/JSONSchema.js +45 -0
  152. package/esm/renderers/Form/JSONSchemaEditor.d.ts +64 -0
  153. package/esm/renderers/Form/JSONSchemaEditor.js +57 -0
  154. package/esm/renderers/Form/ListSelect.d.ts +45 -0
  155. package/esm/renderers/Form/ListSelect.js +89 -0
  156. package/esm/renderers/Form/LocationPicker.d.ts +35 -0
  157. package/esm/renderers/Form/LocationPicker.js +39 -0
  158. package/esm/renderers/Form/MatrixCheckboxes.d.ts +79 -0
  159. package/esm/renderers/Form/MatrixCheckboxes.js +266 -0
  160. package/esm/renderers/Form/NestedSelect.d.ts +91 -0
  161. package/esm/renderers/Form/NestedSelect.js +703 -0
  162. package/esm/renderers/Form/Picker.d.ts +86 -0
  163. package/esm/renderers/Form/Picker.js +361 -0
  164. package/esm/renderers/Form/Radios.d.ts +39 -0
  165. package/esm/renderers/Form/Radios.js +91 -0
  166. package/esm/renderers/Form/Select.d.ts +140 -0
  167. package/esm/renderers/Form/Select.js +309 -0
  168. package/esm/renderers/Form/Static.d.ts +59 -0
  169. package/esm/renderers/Form/Static.js +109 -0
  170. package/esm/renderers/Form/Switch.d.ts +54 -0
  171. package/esm/renderers/Form/Switch.js +77 -0
  172. package/esm/renderers/Form/TabsTransfer.d.ts +30 -0
  173. package/esm/renderers/Form/TabsTransfer.js +241 -0
  174. package/esm/renderers/Form/TabsTransferPicker.d.ts +26 -0
  175. package/esm/renderers/Form/TabsTransferPicker.js +72 -0
  176. package/esm/renderers/Form/Textarea.d.ts +69 -0
  177. package/esm/renderers/Form/Textarea.js +103 -0
  178. package/esm/renderers/Form/Transfer.d.ts +115 -0
  179. package/esm/renderers/Form/Transfer.js +276 -0
  180. package/esm/renderers/Form/TransferPicker.d.ts +26 -0
  181. package/esm/renderers/Form/TransferPicker.js +66 -0
  182. package/esm/renderers/Form/TreeSelect.d.ts +132 -0
  183. package/esm/renderers/Form/TreeSelect.js +376 -0
  184. package/esm/renderers/Form/UUID.d.ts +22 -0
  185. package/esm/renderers/Form/UUID.js +52 -0
  186. package/esm/renderers/Form/UserSelect.d.ts +55 -0
  187. package/esm/renderers/Form/UserSelect.js +194 -0
  188. package/esm/renderers/Grid.d.ts +82 -0
  189. package/esm/renderers/Grid.js +88 -0
  190. package/esm/renderers/Grid2D.d.ts +91 -0
  191. package/esm/renderers/Grid2D.js +113 -0
  192. package/esm/renderers/GridNav.d.ts +99 -0
  193. package/esm/renderers/GridNav.js +80 -0
  194. package/esm/renderers/HBox.d.ts +95 -0
  195. package/esm/renderers/HBox.js +75 -0
  196. package/esm/renderers/IFrame.d.ts +49 -0
  197. package/esm/renderers/IFrame.js +169 -0
  198. package/esm/renderers/Icon.d.ts +28 -0
  199. package/esm/renderers/Icon.js +60 -0
  200. package/esm/renderers/Image.d.ts +415 -0
  201. package/esm/renderers/Image.js +120 -0
  202. package/esm/renderers/Images.d.ts +80 -0
  203. package/esm/renderers/Images.js +89 -0
  204. package/esm/renderers/Json.d.ts +68 -0
  205. package/esm/renderers/Json.js +98 -0
  206. package/esm/renderers/Link.d.ts +56 -0
  207. package/esm/renderers/Link.js +61 -0
  208. package/esm/renderers/List.d.ts +260 -0
  209. package/esm/renderers/List.js +680 -0
  210. package/esm/renderers/Log.d.ts +91 -0
  211. package/esm/renderers/Log.js +247 -0
  212. package/esm/renderers/Mapping.d.ts +354 -0
  213. package/esm/renderers/Mapping.js +160 -0
  214. package/esm/renderers/Markdown.d.ts +42 -0
  215. package/esm/renderers/Markdown.js +97 -0
  216. package/esm/renderers/Nav.d.ts +258 -0
  217. package/esm/renderers/Nav.js +544 -0
  218. package/esm/renderers/Operation.d.ts +28 -0
  219. package/esm/renderers/Operation.js +43 -0
  220. package/esm/renderers/Page.d.ts +228 -0
  221. package/esm/renderers/Page.js +593 -0
  222. package/esm/renderers/Pagination.d.ts +68 -0
  223. package/esm/renderers/Pagination.js +35 -0
  224. package/esm/renderers/PaginationWrapper.d.ts +67 -0
  225. package/esm/renderers/PaginationWrapper.js +74 -0
  226. package/esm/renderers/Panel.d.ts +86 -0
  227. package/esm/renderers/Panel.js +144 -0
  228. package/esm/renderers/Plain.d.ts +35 -0
  229. package/esm/renderers/Plain.js +42 -0
  230. package/esm/renderers/PopOver.d.ts +69 -0
  231. package/esm/renderers/PopOver.js +166 -0
  232. package/esm/renderers/Portlet.d.ts +125 -0
  233. package/esm/renderers/Portlet.js +152 -0
  234. package/esm/renderers/Progress.d.ts +81 -0
  235. package/esm/renderers/Progress.js +61 -0
  236. package/esm/renderers/Property.d.ts +99 -0
  237. package/esm/renderers/Property.js +95 -0
  238. package/esm/renderers/QRCode.d.ts +63 -0
  239. package/esm/renderers/QRCode.js +75 -0
  240. package/esm/renderers/QuickEdit.d.ts +65 -0
  241. package/esm/renderers/QuickEdit.js +337 -0
  242. package/esm/renderers/Remark.d.ts +105 -0
  243. package/esm/renderers/Remark.js +100 -0
  244. package/esm/renderers/SearchBox.d.ts +69 -0
  245. package/esm/renderers/SearchBox.js +77 -0
  246. package/esm/renderers/Service.d.ts +120 -0
  247. package/esm/renderers/Service.js +437 -0
  248. package/esm/renderers/SparkLine.d.ts +44 -0
  249. package/esm/renderers/SparkLine.js +40 -0
  250. package/esm/renderers/Spinner.d.ts +64 -0
  251. package/esm/renderers/Spinner.js +32 -0
  252. package/esm/renderers/Status.d.ts +55 -0
  253. package/esm/renderers/Status.js +84 -0
  254. package/esm/renderers/Steps.d.ts +66 -0
  255. package/esm/renderers/Steps.js +77 -0
  256. package/esm/renderers/Table/ColumnToggler.d.ts +120 -0
  257. package/esm/renderers/Table/ColumnToggler.js +255 -0
  258. package/esm/renderers/Table/HeadCellFilterDropdown.d.ts +32 -0
  259. package/esm/renderers/Table/HeadCellFilterDropdown.js +211 -0
  260. package/esm/renderers/Table/HeadCellSearchDropdown.d.ts +32 -0
  261. package/esm/renderers/Table/HeadCellSearchDropdown.js +193 -0
  262. package/esm/renderers/Table/ItemActionsWrapper.d.ts +11 -0
  263. package/esm/renderers/Table/ItemActionsWrapper.js +35 -0
  264. package/esm/renderers/Table/TableBody.d.ts +90 -0
  265. package/esm/renderers/Table/TableBody.js +105 -0
  266. package/esm/renderers/Table/TableCell.d.ts +21 -0
  267. package/esm/renderers/Table/TableCell.js +139 -0
  268. package/esm/renderers/Table/TableContent.d.ts +54 -0
  269. package/esm/renderers/Table/TableContent.js +69 -0
  270. package/esm/renderers/Table/TableRow.d.ts +27 -0
  271. package/esm/renderers/Table/TableRow.js +129 -0
  272. package/esm/renderers/Table/exportExcel.d.ts +6 -0
  273. package/esm/renderers/Table/exportExcel.js +301 -0
  274. package/esm/renderers/Table/index.d.ts +371 -0
  275. package/esm/renderers/Table/index.js +1539 -0
  276. package/esm/renderers/Table-v2/ColumnToggler.d.ts +19 -0
  277. package/esm/renderers/Table-v2/ColumnToggler.js +88 -0
  278. package/esm/renderers/Table-v2/HeadCellSearchDropdown.d.ts +29 -0
  279. package/esm/renderers/Table-v2/HeadCellSearchDropdown.js +206 -0
  280. package/esm/renderers/Table-v2/TableCell.d.ts +6 -0
  281. package/esm/renderers/Table-v2/TableCell.js +30 -0
  282. package/esm/renderers/Table-v2/index.d.ts +285 -0
  283. package/esm/renderers/Table-v2/index.js +833 -0
  284. package/esm/renderers/TableView.d.ts +136 -0
  285. package/esm/renderers/TableView.js +95 -0
  286. package/esm/renderers/Tabs.d.ts +204 -0
  287. package/esm/renderers/Tabs.js +501 -0
  288. package/esm/renderers/Tag.d.ts +66 -0
  289. package/esm/renderers/Tag.js +50 -0
  290. package/esm/renderers/Tasks.d.ts +140 -0
  291. package/esm/renderers/Tasks.js +209 -0
  292. package/esm/renderers/Timeline.d.ts +65 -0
  293. package/esm/renderers/Timeline.js +54 -0
  294. package/esm/renderers/TooltipWrapper.d.ts +133 -0
  295. package/esm/renderers/TooltipWrapper.js +70 -0
  296. package/esm/renderers/Tpl.d.ts +51 -0
  297. package/esm/renderers/Tpl.js +88 -0
  298. package/esm/renderers/VBox.d.ts +30 -0
  299. package/esm/renderers/VBox.js +48 -0
  300. package/esm/renderers/Video.d.ts +171 -0
  301. package/esm/renderers/Video.js +457 -0
  302. package/esm/renderers/WebComponent.d.ts +33 -0
  303. package/esm/renderers/WebComponent.js +48 -0
  304. package/esm/renderers/Wizard.d.ts +179 -0
  305. package/esm/renderers/Wizard.js +921 -0
  306. package/esm/renderers/Wrapper.d.ts +36 -0
  307. package/esm/renderers/Wrapper.js +53 -0
  308. package/esm/schemaExtend.d.ts +1 -0
  309. package/esm/schemaExtend.js +72 -0
  310. package/esm/types.d.ts +160 -0
  311. package/lib/Schema.d.ts +4 -3
  312. package/lib/compat.js +1 -1
  313. package/lib/helper.css +0 -1
  314. package/lib/index.d.ts +1 -0
  315. package/lib/index.js +2 -1
  316. package/lib/preset.js +1 -1
  317. package/lib/renderers/Action.js +1 -1
  318. package/lib/renderers/Alert.js +1 -1
  319. package/lib/renderers/AnchorNav.js +1 -1
  320. package/lib/renderers/App.d.ts +4 -0
  321. package/lib/renderers/App.js +3 -3
  322. package/lib/renderers/Audio.js +1 -1
  323. package/lib/renderers/Avatar.js +1 -1
  324. package/lib/renderers/BarCode.js +1 -1
  325. package/lib/renderers/Breadcrumb.js +1 -1
  326. package/lib/renderers/ButtonGroup.d.ts +2 -2
  327. package/lib/renderers/ButtonGroup.js +1 -1
  328. package/lib/renderers/CRUD.js +6 -7
  329. package/lib/renderers/CRUD2.d.ts +215 -0
  330. package/lib/renderers/CRUD2.js +752 -0
  331. package/lib/renderers/Calendar.js +1 -1
  332. package/lib/renderers/Card.js +1 -1
  333. package/lib/renderers/Card2.d.ts +1 -1
  334. package/lib/renderers/Card2.js +3 -3
  335. package/lib/renderers/Cards.d.ts +4 -0
  336. package/lib/renderers/Cards.js +49 -6
  337. package/lib/renderers/Carousel.js +1 -1
  338. package/lib/renderers/Chart.js +19 -3
  339. package/lib/renderers/Code.js +1 -1
  340. package/lib/renderers/Collapse.js +1 -1
  341. package/lib/renderers/CollapseGroup.js +1 -1
  342. package/lib/renderers/Color.js +1 -1
  343. package/lib/renderers/Container.js +1 -1
  344. package/lib/renderers/Copyable.js +1 -1
  345. package/lib/renderers/Custom.js +1 -1
  346. package/lib/renderers/Date.js +1 -1
  347. package/lib/renderers/Dialog.js +1 -1
  348. package/lib/renderers/Divider.js +1 -1
  349. package/lib/renderers/Drawer.js +1 -1
  350. package/lib/renderers/DropDownButton.js +3 -3
  351. package/lib/renderers/Each.js +1 -1
  352. package/lib/renderers/Flex.js +3 -2
  353. package/lib/renderers/Form/ButtonGroupSelect.js +2 -2
  354. package/lib/renderers/Form/ButtonToolbar.js +1 -1
  355. package/lib/renderers/Form/ChainedSelect.js +2 -2
  356. package/lib/renderers/Form/ChartRadios.js +1 -1
  357. package/lib/renderers/Form/Checkbox.js +1 -1
  358. package/lib/renderers/Form/Checkboxes.d.ts +5 -0
  359. package/lib/renderers/Form/Checkboxes.js +8 -3
  360. package/lib/renderers/Form/Combo.d.ts +1 -1
  361. package/lib/renderers/Form/Combo.js +4 -3
  362. package/lib/renderers/Form/ConditionBuilder.d.ts +10 -0
  363. package/lib/renderers/Form/ConditionBuilder.js +7 -3
  364. package/lib/renderers/Form/Control.js +1 -1
  365. package/lib/renderers/Form/DiffEditor.d.ts +705 -141
  366. package/lib/renderers/Form/DiffEditor.js +1 -1
  367. package/lib/renderers/Form/Editor.d.ts +701 -137
  368. package/lib/renderers/Form/Editor.js +1 -1
  369. package/lib/renderers/Form/FieldSet.js +1 -1
  370. package/lib/renderers/Form/Formula.js +1 -1
  371. package/lib/renderers/Form/Group.js +2 -2
  372. package/lib/renderers/Form/Hidden.js +1 -1
  373. package/lib/renderers/Form/IconPicker.js +1 -1
  374. package/lib/renderers/Form/IconPickerIcons.js +1 -1
  375. package/lib/renderers/Form/InputArray.js +1 -1
  376. package/lib/renderers/Form/InputCity.d.ts +40 -40
  377. package/lib/renderers/Form/InputCity.js +1 -1
  378. package/lib/renderers/Form/InputColor.js +1 -1
  379. package/lib/renderers/Form/InputDate.js +1 -1
  380. package/lib/renderers/Form/InputDateRange.js +1 -1
  381. package/lib/renderers/Form/InputExcel.js +1 -1
  382. package/lib/renderers/Form/InputFile.d.ts +5 -0
  383. package/lib/renderers/Form/InputFile.js +34 -15
  384. package/lib/renderers/Form/InputFormula.js +1 -1
  385. package/lib/renderers/Form/InputGroup.js +1 -1
  386. package/lib/renderers/Form/InputImage.js +27 -11
  387. package/lib/renderers/Form/InputMonthRange.js +1 -1
  388. package/lib/renderers/Form/InputNumber.js +1 -1
  389. package/lib/renderers/Form/InputQuarterRange.js +1 -1
  390. package/lib/renderers/Form/InputRange.d.ts +12 -5
  391. package/lib/renderers/Form/InputRange.js +1 -1
  392. package/lib/renderers/Form/InputRating.js +1 -1
  393. package/lib/renderers/Form/InputRepeat.js +1 -1
  394. package/lib/renderers/Form/InputRichText.js +1 -1
  395. package/lib/renderers/Form/InputSubForm.js +1 -1
  396. package/lib/renderers/Form/InputTable.js +2 -2
  397. package/lib/renderers/Form/InputTag.d.ts +34 -0
  398. package/lib/renderers/Form/InputTag.js +78 -40
  399. package/lib/renderers/Form/InputText.js +1 -1
  400. package/lib/renderers/Form/InputTree.d.ts +5 -2
  401. package/lib/renderers/Form/InputTree.js +7 -3
  402. package/lib/renderers/Form/InputYearRange.js +1 -1
  403. package/lib/renderers/Form/JSONSchema.js +1 -1
  404. package/lib/renderers/Form/JSONSchemaEditor.js +1 -1
  405. package/lib/renderers/Form/ListSelect.js +1 -1
  406. package/lib/renderers/Form/LocationPicker.js +1 -1
  407. package/lib/renderers/Form/MatrixCheckboxes.js +1 -1
  408. package/lib/renderers/Form/NestedSelect.js +4 -4
  409. package/lib/renderers/Form/Picker.js +1 -1
  410. package/lib/renderers/Form/Radios.d.ts +6 -1
  411. package/lib/renderers/Form/Radios.js +5 -3
  412. package/lib/renderers/Form/Select.js +1 -1
  413. package/lib/renderers/Form/Static.js +1 -1
  414. package/lib/renderers/Form/Switch.d.ts +3 -0
  415. package/lib/renderers/Form/Switch.js +3 -3
  416. package/lib/renderers/Form/TabsTransfer.js +1 -1
  417. package/lib/renderers/Form/TabsTransferPicker.js +1 -1
  418. package/lib/renderers/Form/Textarea.d.ts +2 -1
  419. package/lib/renderers/Form/Textarea.js +13 -2
  420. package/lib/renderers/Form/Transfer.js +1 -1
  421. package/lib/renderers/Form/TransferPicker.js +1 -1
  422. package/lib/renderers/Form/TreeSelect.js +4 -4
  423. package/lib/renderers/Form/UUID.js +1 -1
  424. package/lib/renderers/Form/UserSelect.js +3 -3
  425. package/lib/renderers/Grid.js +1 -1
  426. package/lib/renderers/Grid2D.js +1 -1
  427. package/lib/renderers/GridNav.js +1 -1
  428. package/lib/renderers/HBox.js +1 -1
  429. package/lib/renderers/IFrame.js +1 -1
  430. package/lib/renderers/Icon.d.ts +1 -1
  431. package/lib/renderers/Icon.js +11 -6
  432. package/lib/renderers/Image.js +1 -1
  433. package/lib/renderers/Images.js +1 -1
  434. package/lib/renderers/Json.d.ts +4 -0
  435. package/lib/renderers/Json.js +5 -4
  436. package/lib/renderers/Link.js +1 -1
  437. package/lib/renderers/List.d.ts +1 -0
  438. package/lib/renderers/List.js +30 -25
  439. package/lib/renderers/Log.js +1 -1
  440. package/lib/renderers/Mapping.js +1 -1
  441. package/lib/renderers/Markdown.js +1 -1
  442. package/lib/renderers/Nav.js +1 -1
  443. package/lib/renderers/Operation.js +1 -1
  444. package/lib/renderers/Page.js +1 -1
  445. package/lib/renderers/Pagination.js +1 -1
  446. package/lib/renderers/PaginationWrapper.js +2 -1
  447. package/lib/renderers/Panel.js +1 -1
  448. package/lib/renderers/Plain.js +1 -1
  449. package/lib/renderers/PopOver.js +4 -4
  450. package/lib/renderers/Portlet.js +1 -1
  451. package/lib/renderers/Progress.js +1 -1
  452. package/lib/renderers/Property.js +1 -1
  453. package/lib/renderers/QRCode.js +1 -1
  454. package/lib/renderers/QuickEdit.js +4 -3
  455. package/lib/renderers/Remark.js +1 -1
  456. package/lib/renderers/SearchBox.js +1 -1
  457. package/lib/renderers/Service.js +1 -1
  458. package/lib/renderers/SparkLine.js +1 -1
  459. package/lib/renderers/Spinner.js +1 -1
  460. package/lib/renderers/Status.js +1 -1
  461. package/lib/renderers/Steps.js +3 -2
  462. package/lib/renderers/Table/ColumnToggler.d.ts +4 -3
  463. package/lib/renderers/Table/ColumnToggler.js +4 -4
  464. package/lib/renderers/Table/HeadCellFilterDropdown.js +3 -3
  465. package/lib/renderers/Table/HeadCellSearchDropdown.js +4 -4
  466. package/lib/renderers/Table/ItemActionsWrapper.js +1 -1
  467. package/lib/renderers/Table/TableBody.js +1 -1
  468. package/lib/renderers/Table/TableCell.js +1 -1
  469. package/lib/renderers/Table/TableContent.js +1 -1
  470. package/lib/renderers/Table/TableRow.js +1 -1
  471. package/lib/renderers/Table/exportExcel.js +6 -6
  472. package/lib/renderers/Table/index.d.ts +2 -1
  473. package/lib/renderers/Table/index.js +24 -4
  474. package/lib/renderers/Table-v2/ColumnToggler.d.ts +18 -2
  475. package/lib/renderers/Table-v2/ColumnToggler.js +72 -2
  476. package/lib/renderers/Table-v2/HeadCellSearchDropdown.js +1 -1
  477. package/lib/renderers/Table-v2/TableCell.js +1 -1
  478. package/lib/renderers/Table-v2/index.d.ts +12 -10
  479. package/lib/renderers/Table-v2/index.js +125 -100
  480. package/lib/renderers/TableView.js +1 -1
  481. package/lib/renderers/Tabs.js +1 -1
  482. package/lib/renderers/Tag.js +1 -1
  483. package/lib/renderers/Tasks.js +1 -1
  484. package/lib/renderers/Timeline.js +1 -1
  485. package/lib/renderers/TooltipWrapper.js +3 -3
  486. package/lib/renderers/Tpl.js +1 -1
  487. package/lib/renderers/VBox.js +1 -1
  488. package/lib/renderers/Video.js +1 -1
  489. package/lib/renderers/WebComponent.js +1 -1
  490. package/lib/renderers/Wizard.d.ts +1 -1
  491. package/lib/renderers/Wizard.js +70 -75
  492. package/lib/renderers/Wrapper.js +1 -1
  493. package/lib/schemaExtend.js +1 -1
  494. package/lib/themes/ang-ie11.css +328 -250
  495. package/lib/themes/ang.css +341 -245
  496. package/lib/themes/antd-ie11.css +346 -268
  497. package/lib/themes/antd.css +345 -245
  498. package/lib/themes/cxd-ie11.css +349 -287
  499. package/lib/themes/cxd.css +356 -276
  500. package/lib/themes/dark-ie11.css +328 -250
  501. package/lib/themes/dark.css +341 -245
  502. package/lib/themes/default-ie11.css +349 -287
  503. package/lib/themes/default.css +356 -276
  504. package/lib/types.d.ts +1 -1
  505. package/package.json +15 -2
  506. package/schema.json +2494 -836
  507. package/sdk/ang-ie11.css +359 -64
  508. package/sdk/ang.css +372 -59
  509. package/sdk/antd-ie11.css +377 -82
  510. package/sdk/antd.css +376 -59
  511. package/sdk/barcode.js +50 -50
  512. package/sdk/charts.js +14 -14
  513. package/sdk/codemirror.js +7 -7
  514. package/sdk/color-picker.js +65 -65
  515. package/sdk/cropperjs.js +2 -2
  516. package/sdk/cxd-ie11.css +380 -106
  517. package/sdk/cxd.css +387 -95
  518. package/sdk/dark-ie11.css +359 -64
  519. package/sdk/dark.css +372 -59
  520. package/sdk/exceljs.js +1 -1
  521. package/sdk/helper.css +0 -1
  522. package/sdk/locale/de-DE.js +2 -1
  523. package/sdk/markdown.js +68 -68
  524. package/sdk/papaparse.js +1 -1
  525. package/sdk/rest.js +24 -24
  526. package/sdk/rich-text.js +62 -62
  527. package/sdk/sdk-ie11.css +380 -106
  528. package/sdk/sdk.css +387 -95
  529. package/sdk/sdk.js +1788 -1710
  530. package/sdk/thirds/hls.js/hls.js +1 -1
  531. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  532. package/sdk/tinymce.js +57 -57
@@ -140,6 +140,10 @@ export interface FileControlSchema extends FormBaseControlSchema {
140
140
  autoFill?: {
141
141
  [propName: string]: SchemaTokenizeableString;
142
142
  };
143
+ /**
144
+ * 初始化时是否把其他字段同步到表单内部。
145
+ */
146
+ initAutoFill?: boolean;
143
147
  /**
144
148
  * 接口返回的数据中,哪个用来当做值
145
149
  */
@@ -218,6 +222,7 @@ export default class FileControl extends React.Component<FileProps, FileState> {
218
222
  file: any;
219
223
  executor: () => void;
220
224
  }>;
225
+ initAutoFill: boolean;
221
226
  static valueToFile(value: string | FileValue, props: FileProps, files?: Array<FileX | FileValue>): FileValue | undefined;
222
227
  dropzone: React.RefObject<any>;
223
228
  constructor(props: FileProps);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.0.0-rc.9
2
+ * amis v2.0.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -45,6 +45,7 @@ var FileControl = /** @class */ (function (_super) {
45
45
  var joinValues = props.joinValues;
46
46
  var delimiter = props.delimiter;
47
47
  var files = [];
48
+ _this.initAutoFill = !!props.initAutoFill;
48
49
  if (value && value instanceof Blob) {
49
50
  files = [value];
50
51
  }
@@ -111,7 +112,12 @@ var FileControl = /** @class */ (function (_super) {
111
112
  : undefined;
112
113
  };
113
114
  FileControl.prototype.componentDidMount = function () {
114
- this.syncAutoFill();
115
+ if (this.initAutoFill) {
116
+ var _a = this.props, formInited = _a.formInited, addHook = _a.addHook;
117
+ formInited || !addHook
118
+ ? this.syncAutoFill()
119
+ : addHook(this.syncAutoFill, 'init');
120
+ }
115
121
  };
116
122
  FileControl.prototype.componentDidUpdate = function (prevProps) {
117
123
  var _this = this;
@@ -140,7 +146,7 @@ var FileControl = /** @class */ (function (_super) {
140
146
  }
141
147
  this.setState({
142
148
  files: files
143
- }, this.syncAutoFill);
149
+ }, props.formInited !== false ? this.syncAutoFill : undefined);
144
150
  }
145
151
  };
146
152
  FileControl.prototype.handleDrop = function (files) {
@@ -333,15 +339,22 @@ var FileControl = /** @class */ (function (_super) {
333
339
  else {
334
340
  this.setState({
335
341
  uploading: false
336
- }, function () {
337
- _this.onChange(!!_this.resolve);
338
- if (_this.resolve) {
339
- _this.resolve(_this.state.files.some(function (file) { return file.state === 'error'; })
340
- ? __('File.errorRetry')
341
- : null);
342
- _this.resolve = undefined;
343
- }
344
- });
342
+ }, function () { return tslib.__awaiter(_this, void 0, void 0, function () {
343
+ return tslib.__generator(this, function (_a) {
344
+ switch (_a.label) {
345
+ case 0: return [4 /*yield*/, this.onChange(!!this.resolve)];
346
+ case 1:
347
+ _a.sent();
348
+ if (this.resolve) {
349
+ this.resolve(this.state.files.some(function (file) { return file.state === 'error'; })
350
+ ? __('File.errorRetry')
351
+ : null);
352
+ this.resolve = undefined;
353
+ }
354
+ return [2 /*return*/];
355
+ }
356
+ });
357
+ }); });
345
358
  }
346
359
  };
347
360
  FileControl.prototype.sendFile = function (file, cb, onProgress) {
@@ -466,7 +479,7 @@ var FileControl = /** @class */ (function (_super) {
466
479
  return tslib.__generator(this, function (_b) {
467
480
  switch (_b.label) {
468
481
  case 0:
469
- _a = this.props, multiple = _a.multiple, onChange = _a.onChange, joinValues = _a.joinValues, extractValue = _a.extractValue, valueField = _a.valueField, delimiter = _a.delimiter, resetValue = _a.resetValue, asBlob = _a.asBlob;
482
+ _a = this.props, multiple = _a.multiple, onChange = _a.onChange, joinValues = _a.joinValues, extractValue = _a.extractValue, valueField = _a.valueField, delimiter = _a.delimiter, resetValue = _a.resetValue, asBlob = _a.asBlob, _a.autoFill, _a.onBulkChange;
470
483
  files = this.state.files.filter(function (file) { return ~['uploaded', 'init', 'ready'].indexOf(file.state); });
471
484
  value = multiple ? files : files[0];
472
485
  if (value) {
@@ -493,6 +506,7 @@ var FileControl = /** @class */ (function (_super) {
493
506
  return [2 /*return*/];
494
507
  }
495
508
  onChange((this.emitValue = value), undefined, changeImmediately);
509
+ console.log('onChange', changeImmediately);
496
510
  this.syncAutoFill();
497
511
  return [2 /*return*/];
498
512
  }
@@ -501,15 +515,19 @@ var FileControl = /** @class */ (function (_super) {
501
515
  };
502
516
  FileControl.prototype.syncAutoFill = function () {
503
517
  var _a = this.props, autoFill = _a.autoFill, multiple = _a.multiple, onBulkChange = _a.onBulkChange, data = _a.data, name = _a.name;
518
+ // 参照录入|自动填充
519
+ if (autoFill === null || autoFill === void 0 ? void 0 : autoFill.hasOwnProperty('api')) {
520
+ return;
521
+ }
504
522
  // 排除自身的字段,否则会无限更新state
505
523
  var excludeSelfAutoFill = omit__default["default"](autoFill, name || '');
506
524
  if (!amisCore.isEmpty(excludeSelfAutoFill) && onBulkChange) {
507
525
  var files = this.state.files.filter(function (file) { return ~['uploaded', 'init', 'ready'].indexOf(file.state); });
508
- var toSync_1 = amisCore.dataMapping(excludeSelfAutoFill, multiple
526
+ var toSync_1 = amisCore.dataMapping(excludeSelfAutoFill, amisCore.createObject(data, multiple
509
527
  ? {
510
528
  items: files
511
529
  }
512
- : files[0]);
530
+ : files[0]));
513
531
  Object.keys(toSync_1).forEach(function (key) {
514
532
  if (isPlainObject__default["default"](toSync_1[key]) && isPlainObject__default["default"](data[key])) {
515
533
  toSync_1[key] = merge__default["default"]({}, data[key], toSync_1[key]);
@@ -896,6 +914,7 @@ var FileControl = /** @class */ (function (_super) {
896
914
  multiple: false,
897
915
  autoUpload: true,
898
916
  hideUploadButton: false,
917
+ initAutoFill: true,
899
918
  stateTextMap: {
900
919
  init: '',
901
920
  pending: '等待上传',
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.0.0-rc.9
2
+ * amis v2.0.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.0.0-rc.9
2
+ * amis v2.0.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.0.0-rc.9
2
+ * amis v2.0.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -117,7 +117,12 @@ var ImageControl = /** @class */ (function (_super) {
117
117
  return __('Image.size', { width: width, height: height });
118
118
  };
119
119
  ImageControl.prototype.componentDidMount = function () {
120
- this.syncAutoFill();
120
+ if (this.initAutoFill) {
121
+ var _a = this.props, formInited = _a.formInited, addHook = _a.addHook;
122
+ formInited || !addHook
123
+ ? this.syncAutoFill()
124
+ : addHook(this.syncAutoFill, 'init');
125
+ }
121
126
  };
122
127
  ImageControl.prototype.componentDidUpdate = function (prevProps) {
123
128
  var _this_1 = this;
@@ -284,15 +289,22 @@ var ImageControl = /** @class */ (function (_super) {
284
289
  this.setState({
285
290
  uploading: false,
286
291
  locked: false
287
- }, function () {
288
- _this_1.onChange(!!_this_1.resolve, false);
289
- if (_this_1.resolve) {
290
- _this_1.resolve(_this_1.files.some(function (file) { return file.state === 'error'; })
291
- ? __('File.errorRetry')
292
- : null);
293
- _this_1.resolve = undefined;
294
- }
295
- });
292
+ }, function () { return tslib.__awaiter(_this_1, void 0, void 0, function () {
293
+ return tslib.__generator(this, function (_a) {
294
+ switch (_a.label) {
295
+ case 0: return [4 /*yield*/, this.onChange(!!this.resolve, false)];
296
+ case 1:
297
+ _a.sent();
298
+ if (this.resolve) {
299
+ this.resolve(this.files.some(function (file) { return file.state === 'error'; })
300
+ ? __('File.errorRetry')
301
+ : null);
302
+ this.resolve = undefined;
303
+ }
304
+ return [2 /*return*/];
305
+ }
306
+ });
307
+ }); });
296
308
  }
297
309
  };
298
310
  ImageControl.prototype.removeFile = function (file, index) {
@@ -396,6 +408,10 @@ var ImageControl = /** @class */ (function (_super) {
396
408
  };
397
409
  ImageControl.prototype.syncAutoFill = function () {
398
410
  var _a = this.props, autoFill = _a.autoFill, multiple = _a.multiple, onBulkChange = _a.onBulkChange, data = _a.data, name = _a.name;
411
+ // 参照录入|自动填充
412
+ if (autoFill === null || autoFill === void 0 ? void 0 : autoFill.hasOwnProperty('api')) {
413
+ return;
414
+ }
399
415
  // 排除自身的字段,否则会无限更新state
400
416
  var excludeSelfAutoFill = omit__default["default"](autoFill, name || '');
401
417
  if (!amisCore.isEmpty(excludeSelfAutoFill) && onBulkChange && this.initAutoFill) {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.0.0-rc.9
2
+ * amis v2.0.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.0.0-rc.9
2
+ * amis v2.0.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.0.0-rc.9
2
+ * amis v2.0.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -40,7 +40,7 @@ export interface RangeControlSchema extends FormBaseControlSchema {
40
40
  /**
41
41
  * 分割块数
42
42
  */
43
- parts?: number;
43
+ parts?: number | number[];
44
44
  /**
45
45
  * 刻度
46
46
  */
@@ -73,15 +73,18 @@ export interface RangeControlSchema extends FormBaseControlSchema {
73
73
  * 是否禁用
74
74
  */
75
75
  disabled?: boolean;
76
+ /**
77
+ * 输入框是否可清除
78
+ */
79
+ clearable?: boolean;
76
80
  }
77
81
  declare type MarksType = {
78
- [index: string]: MarksValue;
79
- [index: number]: MarksValue;
82
+ [index: string | number]: MarksValue;
80
83
  };
81
- declare type MarksValue = Record<number, SchemaObject | {
84
+ declare type MarksValue = string | number | SchemaObject | {
82
85
  style?: React.CSSProperties;
83
86
  label?: string;
84
- }>;
87
+ };
85
88
  export interface RangeProps extends FormControlProps {
86
89
  /**
87
90
  * 滑块值
@@ -147,6 +150,10 @@ export interface RangeProps extends FormControlProps {
147
150
  * 是否禁用
148
151
  */
149
152
  disabled: boolean;
153
+ /**
154
+ * 输入框是否可清除
155
+ */
156
+ clearable?: boolean;
150
157
  /**
151
158
  * value改变事件
152
159
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.0.0-rc.9
2
+ * amis v2.0.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.0.0-rc.9
2
+ * amis v2.0.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.0.0-rc.9
2
+ * amis v2.0.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.0.0-rc.9
2
+ * amis v2.0.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.0.0-rc.9
2
+ * amis v2.0.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.0.0-rc.9
2
+ * amis v2.0.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -134,7 +134,7 @@ var FormTable = /** @class */ (function (_super) {
134
134
  return tslib.__generator(this, function (_b) {
135
135
  switch (_b.label) {
136
136
  case 0:
137
- _a = this.props, onAction = _a.onAction, valueField = _a.valueField, env = _a.env, needConfirm = _a.needConfirm, addable = _a.addable, addApi = _a.addApi, __ = _a.translate;
137
+ _a = this.props, onAction = _a.onAction, valueField = _a.valueField, env = _a.env, _a.onChange, _a.editable, needConfirm = _a.needConfirm, addable = _a.addable, addApi = _a.addApi, __ = _a.translate;
138
138
  if (!(action.actionType === 'add')) return [3 /*break*/, 6];
139
139
  if (addable === false) {
140
140
  return [2 /*return*/];
@@ -16,6 +16,14 @@ export interface TagControlSchema extends FormOptionsSchema {
16
16
  * 是否为下拉模式
17
17
  */
18
18
  dropdown?: boolean;
19
+ /**
20
+ * 允许添加的标签的最大数量
21
+ */
22
+ max?: number;
23
+ /**
24
+ * 单个标签的最大文本长度
25
+ */
26
+ maxTagLength?: number;
19
27
  /**
20
28
  * 标签的最大展示数量,超出数量后以收纳浮层的方式展示,仅在多选模式开启后生效
21
29
  */
@@ -24,13 +32,32 @@ export interface TagControlSchema extends FormOptionsSchema {
24
32
  * 收纳标签的Popover配置
25
33
  */
26
34
  overflowTagPopover?: object;
35
+ /** 是否开启批量添加模式 */
36
+ enableBatchAdd: boolean;
37
+ /**
38
+ * 开启批量添加后,输入多个标签的分隔符,支持传入多个符号,默认为"-"
39
+ *
40
+ * @default "-"
41
+ */
42
+ separator?: string;
27
43
  }
44
+ export declare type InputTagValidationType = 'max' | 'maxLength';
28
45
  export interface TagProps extends OptionsControlProps {
29
46
  placeholder?: string;
30
47
  clearable: boolean;
31
48
  resetValue?: any;
32
49
  optionsTip: string;
33
50
  dropdown?: boolean;
51
+ /** 是否支持批量输入 */
52
+ enableBatchAdd: boolean;
53
+ /** 开启批量添加后,输入多个标签的分隔符,支持传入多个符号,默认为英文逗号 */
54
+ separator?: string;
55
+ /** 允许添加的tag的最大数量 */
56
+ max?: number;
57
+ /** 单个标签的最大文本长度 */
58
+ maxTagLength?: number;
59
+ /** 文本输入后校验失败的callback */
60
+ onInputValidateFailed?(value: string | string[], validationType: InputTagValidationType): void;
34
61
  }
35
62
  export interface TagState {
36
63
  inputValue: string;
@@ -46,6 +73,7 @@ export default class TagControl extends React.PureComponent<TagProps, TagState>
46
73
  multiple: boolean;
47
74
  placeholder: string;
48
75
  optionsTip: string;
76
+ separator: string;
49
77
  };
50
78
  state: {
51
79
  isOpened: boolean;
@@ -55,6 +83,12 @@ export default class TagControl extends React.PureComponent<TagProps, TagState>
55
83
  componentDidUpdate(prevProps: TagProps): void;
56
84
  doAction(action: ActionObject, data: object, throwErrors: boolean): void;
57
85
  dispatchEvent(eventName: string, eventData?: any): Promise<boolean>;
86
+ /** 处理输入的内容 */
87
+ normalizeInputValue(inputValue: string): Option[];
88
+ normalizeOptions(options: Option[]): string | any[];
89
+ /** 输入的内容和存量的内容合并,过滤掉value值相同的 */
90
+ normalizeMergedValue(inputValue: string, normalized?: boolean): string | any[];
91
+ validateInputValue(inputValue: string): boolean;
58
92
  getValue(type?: 'push' | 'pop' | 'normal', option?: any): string | any[];
59
93
  addItem(option: Option): Promise<void>;
60
94
  handleFocus(e: any): Promise<void>;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.0.0-rc.9
2
+ * amis v2.0.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -12,6 +12,8 @@ var React = require('react');
12
12
  var amisCore = require('amis-core');
13
13
  var Downshift = require('downshift');
14
14
  var find = require('lodash/find');
15
+ var isInteger = require('lodash/isInteger');
16
+ var unionWith = require('lodash/unionWith');
15
17
  var ReactDOM = require('react-dom');
16
18
  var amisUi = require('amis-ui');
17
19
 
@@ -20,6 +22,8 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
20
22
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
21
23
  var Downshift__default = /*#__PURE__*/_interopDefaultLegacy(Downshift);
22
24
  var find__default = /*#__PURE__*/_interopDefaultLegacy(find);
25
+ var isInteger__default = /*#__PURE__*/_interopDefaultLegacy(isInteger);
26
+ var unionWith__default = /*#__PURE__*/_interopDefaultLegacy(unionWith);
23
27
 
24
28
  var TagControl = /** @class */ (function (_super) {
25
29
  tslib.__extends(TagControl, _super);
@@ -68,6 +72,51 @@ var TagControl = /** @class */ (function (_super) {
68
72
  });
69
73
  });
70
74
  };
75
+ /** 处理输入的内容 */
76
+ TagControl.prototype.normalizeInputValue = function (inputValue) {
77
+ var _a = this.props, enableBatchAdd = _a.enableBatchAdd, separator = _a.separator;
78
+ var batchValues = [];
79
+ if (enableBatchAdd && separator && typeof separator === 'string') {
80
+ batchValues = inputValue.split(separator);
81
+ }
82
+ else {
83
+ batchValues.push(inputValue);
84
+ }
85
+ return batchValues
86
+ .filter(Boolean)
87
+ .map(function (item) { return ({ value: item, label: item }); });
88
+ };
89
+ TagControl.prototype.normalizeOptions = function (options) {
90
+ var _a = this.props, joinValues = _a.joinValues, extractValue = _a.extractValue, delimiter = _a.delimiter, valueField = _a.valueField;
91
+ return joinValues
92
+ ? options.map(function (item) { return item[valueField || 'value']; }).join(delimiter || ',')
93
+ : extractValue
94
+ ? options.map(function (item) { return item[valueField || 'value']; })
95
+ : options;
96
+ };
97
+ /** 输入的内容和存量的内容合并,过滤掉value值相同的 */
98
+ TagControl.prototype.normalizeMergedValue = function (inputValue, normalized) {
99
+ if (normalized === void 0) { normalized = true; }
100
+ var selectedOptions = this.props.selectedOptions;
101
+ var options = unionWith__default["default"](selectedOptions.concat(), this.normalizeInputValue(inputValue), function (origin, input) { return origin.value === input.value; });
102
+ return normalized ? this.normalizeOptions(options) : options;
103
+ };
104
+ TagControl.prototype.validateInputValue = function (inputValue) {
105
+ var _a = this.props, max = _a.max, maxTagLength = _a.maxTagLength; _a.enableBatchAdd; _a.separator; var onInputValidateFailed = _a.onInputValidateFailed;
106
+ var normalizedValue = this.normalizeMergedValue(inputValue, false);
107
+ if (max != null && isInteger__default["default"](max) && normalizedValue.length > max) {
108
+ onInputValidateFailed === null || onInputValidateFailed === void 0 ? void 0 : onInputValidateFailed(normalizedValue.map(function (item) { return item.value; }), 'max');
109
+ return false;
110
+ }
111
+ var addedValues = this.normalizeInputValue(inputValue);
112
+ if (maxTagLength != null &&
113
+ isInteger__default["default"](maxTagLength) &&
114
+ addedValues.some(function (item) { return item.value.length > maxTagLength; })) {
115
+ onInputValidateFailed === null || onInputValidateFailed === void 0 ? void 0 : onInputValidateFailed(addedValues.map(function (item) { return item.value; }), 'maxLength');
116
+ return false;
117
+ }
118
+ return true;
119
+ };
71
120
  TagControl.prototype.getValue = function (type, option) {
72
121
  if (type === void 0) { type = 'normal'; }
73
122
  if (option === void 0) { option = {}; }
@@ -79,12 +128,11 @@ var TagControl = /** @class */ (function (_super) {
79
128
  else if (type === 'pop') {
80
129
  newValue.pop();
81
130
  }
82
- var newValueRes = joinValues
131
+ return joinValues
83
132
  ? newValue.map(function (item) { return item[valueField || 'value']; }).join(delimiter || ',')
84
133
  : extractValue
85
134
  ? newValue.map(function (item) { return item[valueField || 'value']; })
86
135
  : newValue;
87
- return newValueRes;
88
136
  };
89
137
  TagControl.prototype.addItem = function (option) {
90
138
  return tslib.__awaiter(this, void 0, void 0, function () {
@@ -135,13 +183,17 @@ var TagControl = /** @class */ (function (_super) {
135
183
  TagControl.prototype.handleBlur = function (e) {
136
184
  var _a, _b;
137
185
  return tslib.__awaiter(this, void 0, void 0, function () {
138
- var _c, selectedOptions, onChange, joinValues, extractValue, delimiter, valueField, value, newValueRes, isPrevented;
186
+ var _c, selectedOptions, onChange, value, newValueRes, isPrevented;
139
187
  return tslib.__generator(this, function (_d) {
140
188
  switch (_d.label) {
141
189
  case 0:
142
- _c = this.props, selectedOptions = _c.selectedOptions, onChange = _c.onChange, joinValues = _c.joinValues, extractValue = _c.extractValue, delimiter = _c.delimiter, valueField = _c.valueField;
190
+ _c = this.props, selectedOptions = _c.selectedOptions, onChange = _c.onChange;
143
191
  value = this.state.inputValue.trim();
144
- newValueRes = this.getValue('normal');
192
+ if (!this.validateInputValue(value)) {
193
+ this.setState({ isFocused: false, isOpened: false });
194
+ return [2 /*return*/];
195
+ }
196
+ newValueRes = this.normalizeMergedValue(value);
145
197
  return [4 /*yield*/, this.dispatchEvent('blur', {
146
198
  value: newValueRes
147
199
  })];
@@ -154,20 +206,8 @@ var TagControl = /** @class */ (function (_super) {
154
206
  inputValue: ''
155
207
  }, value
156
208
  ? function () {
157
- var newValue = selectedOptions.concat();
158
- if (!find__default["default"](newValue, function (item) { return item.value === value; })) {
159
- var option = {
160
- label: value,
161
- value: value
162
- };
163
- newValue.push(option);
164
- onChange(joinValues
165
- ? newValue
166
- .map(function (item) { return item[valueField || 'value']; })
167
- .join(delimiter || ',')
168
- : extractValue
169
- ? newValue.map(function (item) { return item[valueField || 'value']; })
170
- : newValue);
209
+ if (selectedOptions.length !== newValueRes.length) {
210
+ onChange === null || onChange === void 0 ? void 0 : onChange(newValueRes);
171
211
  }
172
212
  }
173
213
  : undefined);
@@ -182,9 +222,7 @@ var TagControl = /** @class */ (function (_super) {
182
222
  });
183
223
  };
184
224
  TagControl.prototype.handleInputChange = function (text) {
185
- this.setState({
186
- inputValue: text
187
- });
225
+ this.setState({ inputValue: text });
188
226
  };
189
227
  TagControl.prototype.handleChange = function (value) {
190
228
  return tslib.__awaiter(this, void 0, void 0, function () {
@@ -217,7 +255,7 @@ var TagControl = /** @class */ (function (_super) {
217
255
  };
218
256
  TagControl.prototype.handleKeyDown = function (evt) {
219
257
  return tslib.__awaiter(this, void 0, void 0, function () {
220
- var _a, selectedOptions, onChange, delimiter, value, newValueRes, isPrevented, newValue, newValueRes, isPrevented;
258
+ var _a, selectedOptions, onChange, delimiter, value, newValueRes, isPrevented, newValueRes, isPrevented;
221
259
  return tslib.__generator(this, function (_b) {
222
260
  switch (_b.label) {
223
261
  case 0:
@@ -231,30 +269,29 @@ var TagControl = /** @class */ (function (_super) {
231
269
  case 1:
232
270
  isPrevented = _b.sent();
233
271
  isPrevented || onChange(newValueRes);
234
- return [3 /*break*/, 5];
272
+ return [3 /*break*/, 4];
235
273
  case 2:
236
- if (!(value && (evt.key === 'Enter' || evt.key === delimiter))) return [3 /*break*/, 5];
274
+ if (!(value && (evt.key === 'Enter' || evt.key === delimiter))) return [3 /*break*/, 4];
237
275
  evt.preventDefault();
238
276
  evt.stopPropagation();
239
- newValue = selectedOptions.concat();
240
- if (!!find__default["default"](newValue, function (item) { return item.value == value; })) return [3 /*break*/, 4];
241
- newValueRes = this.getValue('push', {
242
- label: value,
243
- value: value
244
- });
277
+ newValueRes = this.normalizeMergedValue(value);
245
278
  return [4 /*yield*/, this.dispatchEvent('change', {
246
279
  value: newValueRes
247
280
  })];
248
281
  case 3:
249
282
  isPrevented = _b.sent();
250
- isPrevented || onChange(newValueRes);
251
- _b.label = 4;
252
- case 4:
283
+ if (!this.validateInputValue(value)) {
284
+ this.setState({ isFocused: false, isOpened: false });
285
+ return [2 /*return*/];
286
+ }
287
+ if (!isPrevented && selectedOptions.length !== newValueRes.length) {
288
+ onChange(newValueRes);
289
+ }
253
290
  this.setState({
254
291
  inputValue: ''
255
292
  });
256
- _b.label = 5;
257
- case 5: return [2 /*return*/];
293
+ _b.label = 4;
294
+ case 4: return [2 /*return*/];
258
295
  }
259
296
  });
260
297
  });
@@ -297,8 +334,8 @@ var TagControl = /** @class */ (function (_super) {
297
334
  onBlur: _this.handleBlur,
298
335
  disabled: disabled
299
336
  }), { onChange: _this.handleInputChange, className: cx('TagControl-input'), result: selectedOptions, onResultChange: _this.handleChange, itemRender: _this.renderItem, clearable: clearable, maxTagCount: maxTagCount, overflowTagPopover: overflowTagPopover, allowInput: true }), loading ? React__default["default"].createElement(amisUi.Spinner, { size: "sm" }) : undefined),
300
- dropdown !== false ? (React__default["default"].createElement(amisUi.Overlay, { container: popOverContainer || _this.getParent, target: _this.getTarget, placement: 'auto', show: isOpen && !!finnalOptions.length },
301
- React__default["default"].createElement(amisUi.PopOver, { overlay: true, className: cx('TagControl-popover'), onHide: _this.close },
337
+ dropdown !== false ? (React__default["default"].createElement(amisCore.Overlay, { container: popOverContainer || _this.getParent, target: _this.getTarget, placement: 'auto', show: isOpen && !!finnalOptions.length },
338
+ React__default["default"].createElement(amisCore.PopOver, { overlay: true, className: cx('TagControl-popover'), onHide: _this.close },
302
339
  React__default["default"].createElement(amisUi.ListMenu, { options: finnalOptions, itemRender: _this.renderItem, highlightIndex: highlightedIndex, getItemProps: function (_a) {
303
340
  var item = _a.item, index = _a.index;
304
341
  return (tslib.__assign({}, getItemProps({
@@ -321,7 +358,8 @@ var TagControl = /** @class */ (function (_super) {
321
358
  valueField: 'value',
322
359
  multiple: true,
323
360
  placeholder: 'Tag.placeholder',
324
- optionsTip: 'Tag.tip'
361
+ optionsTip: 'Tag.tip',
362
+ separator: '-'
325
363
  };
326
364
  tslib.__decorate([
327
365
  amisCore.autobind,
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.0.0-rc.9
2
+ * amis v2.0.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,7 +1,6 @@
1
1
  import React from 'react';
2
- import { OptionsControlProps } from 'amis-core';
2
+ import { OptionsControlProps, ActionObject } from 'amis-core';
3
3
  import { FormOptionsSchema, SchemaApi } from '../../Schema';
4
- import { ActionObject } from 'amis-core';
5
4
  /**
6
5
  * Tree 下拉选择框。
7
6
  * 文档:https://baidu.gitee.io/amis/docs/components/form/tree
@@ -65,6 +64,10 @@ export interface TreeControlSchema extends FormOptionsSchema {
65
64
  */
66
65
  showOutline?: boolean;
67
66
  deferApi?: SchemaApi;
67
+ /**
68
+ * 需要高亮的字符串
69
+ */
70
+ highlightTxt?: string;
68
71
  }
69
72
  export interface TreeProps extends OptionsControlProps, Omit<TreeControlSchema, 'type' | 'options' | 'className' | 'inputClassName' | 'descriptionClassName'> {
70
73
  enableNodePath?: boolean;