amis-ui 6.2.2 → 6.4.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 (815) hide show
  1. package/esm/_virtual/_commonjsHelpers.js +10 -0
  2. package/esm/_virtual/pdf.worker.min.js +8 -0
  3. package/esm/components/404.js +1 -1
  4. package/esm/components/Alert.d.ts +124 -122
  5. package/esm/components/Alert.js +10 -6
  6. package/esm/components/Alert2.d.ts +20 -20
  7. package/esm/components/Alert2.js +1 -1
  8. package/esm/components/AnchorNav.d.ts +20 -20
  9. package/esm/components/AnchorNav.js +1 -1
  10. package/esm/components/ArrayInput.d.ts +40 -40
  11. package/esm/components/ArrayInput.js +1 -1
  12. package/esm/components/AsideNav.d.ts +2 -1
  13. package/esm/components/AsideNav.js +6 -3
  14. package/esm/components/AssociatedSelection.d.ts +120 -120
  15. package/esm/components/AssociatedSelection.js +4 -4
  16. package/esm/components/Avatar.d.ts +140 -140
  17. package/esm/components/Avatar.js +1 -1
  18. package/esm/components/Badge.js +1 -1
  19. package/esm/components/BaiduMapPicker.js +1 -1
  20. package/esm/components/BarCode.js +1 -1
  21. package/esm/components/Breadcrumb.d.ts +3 -0
  22. package/esm/components/Breadcrumb.js +7 -6
  23. package/esm/components/Button.d.ts +32 -31
  24. package/esm/components/Button.js +4 -4
  25. package/esm/components/CalendarMobile.d.ts +45 -40
  26. package/esm/components/CalendarMobile.js +41 -6
  27. package/esm/components/Card.d.ts +140 -140
  28. package/esm/components/Card.js +1 -1
  29. package/esm/components/Cascader.js +1 -1
  30. package/esm/components/ChainedDropdownSelection.d.ts +120 -120
  31. package/esm/components/ChainedDropdownSelection.js +1 -1
  32. package/esm/components/ChainedSelection.d.ts +120 -120
  33. package/esm/components/ChainedSelection.js +8 -6
  34. package/esm/components/Checkbox.d.ts +12 -11
  35. package/esm/components/Checkbox.js +7 -7
  36. package/esm/components/CityArea.js +1 -1
  37. package/esm/components/CityDB.d.ts +1 -1
  38. package/esm/components/CityDB.js +377 -889
  39. package/esm/components/CodeMirror.d.ts +1 -0
  40. package/esm/components/CodeMirror.js +16 -5
  41. package/esm/components/Collapse.d.ts +140 -140
  42. package/esm/components/Collapse.js +1 -1
  43. package/esm/components/CollapseGroup.d.ts +30 -30
  44. package/esm/components/CollapseGroup.js +1 -1
  45. package/esm/components/ColorPicker.d.ts +80 -80
  46. package/esm/components/ColorPicker.js +1 -1
  47. package/esm/components/Combo.js +1 -1
  48. package/esm/components/ConfirmBox.d.ts +81 -80
  49. package/esm/components/ConfirmBox.js +6 -3
  50. package/esm/components/ContextMenu.d.ts +17 -3
  51. package/esm/components/ContextMenu.js +72 -20
  52. package/esm/components/DatePicker.d.ts +84 -82
  53. package/esm/components/DatePicker.js +12 -12
  54. package/esm/components/DateRangePicker.d.ts +133 -129
  55. package/esm/components/DateRangePicker.js +40 -27
  56. package/esm/components/DndContainer.js +1 -1
  57. package/esm/components/Drawer.d.ts +30 -30
  58. package/esm/components/Drawer.js +1 -1
  59. package/esm/components/DropDownSelection.d.ts +120 -120
  60. package/esm/components/DropDownSelection.js +1 -1
  61. package/esm/components/Editor.d.ts +120 -120
  62. package/esm/components/Editor.js +3 -3
  63. package/esm/components/Form.js +1 -1
  64. package/esm/components/FormField.js +1 -1
  65. package/esm/components/GaodeMapPicker.js +1 -1
  66. package/esm/components/GridNav.js +1 -1
  67. package/esm/components/GroupedSelection.d.ts +120 -120
  68. package/esm/components/GroupedSelection.js +5 -4
  69. package/esm/components/Html.js +1 -1
  70. package/esm/components/ImageGallery.d.ts +40 -40
  71. package/esm/components/ImageGallery.js +2 -1
  72. package/esm/components/Input.d.ts +3 -1
  73. package/esm/components/Input.js +3 -3
  74. package/esm/components/InputBox.d.ts +14 -13
  75. package/esm/components/InputBox.js +7 -7
  76. package/esm/components/InputBoxWithSuggestion.js +7 -7
  77. package/esm/components/InputTable.js +1 -1
  78. package/esm/components/Layout.d.ts +10 -10
  79. package/esm/components/Layout.js +1 -1
  80. package/esm/components/Link.js +1 -1
  81. package/esm/components/ListGroup.d.ts +10 -10
  82. package/esm/components/ListGroup.js +1 -1
  83. package/esm/components/ListMenu.d.ts +82 -80
  84. package/esm/components/ListMenu.js +3 -3
  85. package/esm/components/LocationPicker.d.ts +40 -40
  86. package/esm/components/LocationPicker.js +1 -1
  87. package/esm/components/Markdown.js +1 -1
  88. package/esm/components/Modal.d.ts +120 -120
  89. package/esm/components/Modal.js +1 -1
  90. package/esm/components/ModalManager.js +1 -1
  91. package/esm/components/MonthRangePicker.d.ts +120 -120
  92. package/esm/components/MultilineText.d.ts +40 -40
  93. package/esm/components/MultilineText.js +1 -1
  94. package/esm/components/NumberInput.d.ts +30 -21
  95. package/esm/components/NumberInput.js +36 -6
  96. package/esm/components/OverflowTpl.js +1 -1
  97. package/esm/components/Pagination.d.ts +200 -110
  98. package/esm/components/Pagination.js +21 -21
  99. package/esm/components/PdfViewer.d.ts +49 -0
  100. package/esm/components/PdfViewer.js +85 -0
  101. package/esm/components/Picker.d.ts +1 -0
  102. package/esm/components/Picker.js +4 -4
  103. package/esm/components/PickerColumn.d.ts +1 -0
  104. package/esm/components/PickerColumn.js +8 -6
  105. package/esm/components/PickerContainer.d.ts +1 -2
  106. package/esm/components/PickerContainer.js +26 -16
  107. package/esm/components/PopOverContainer.d.ts +1 -0
  108. package/esm/components/PopOverContainer.js +3 -3
  109. package/esm/components/PopUp.d.ts +120 -120
  110. package/esm/components/PopUp.js +1 -1
  111. package/esm/components/Progress.d.ts +60 -60
  112. package/esm/components/Progress.js +1 -1
  113. package/esm/components/PullRefresh.js +1 -1
  114. package/esm/components/Radios.d.ts +12 -10
  115. package/esm/components/Radios.js +4 -3
  116. package/esm/components/Range.js +1 -1
  117. package/esm/components/Rating.d.ts +20 -20
  118. package/esm/components/Rating.js +1 -1
  119. package/esm/components/ResultBox.d.ts +82 -81
  120. package/esm/components/ResultBox.js +25 -21
  121. package/esm/components/ResultList.d.ts +42 -40
  122. package/esm/components/ResultList.js +5 -4
  123. package/esm/components/ResultTableList.d.ts +120 -120
  124. package/esm/components/ResultTableList.js +5 -4
  125. package/esm/components/ResultTreeList.d.ts +40 -40
  126. package/esm/components/ResultTreeList.js +3 -3
  127. package/esm/components/RichText.js +1 -1
  128. package/esm/components/SearchBox.d.ts +82 -81
  129. package/esm/components/SearchBox.js +8 -8
  130. package/esm/components/Select.d.ts +1363 -1354
  131. package/esm/components/Select.js +13 -12
  132. package/esm/components/SelectMobile.js +22 -19
  133. package/esm/components/Selection.d.ts +122 -120
  134. package/esm/components/Selection.js +1 -1
  135. package/esm/components/Signature.d.ts +280 -0
  136. package/esm/components/Signature.js +271 -0
  137. package/esm/components/SparkLine.d.ts +40 -40
  138. package/esm/components/SparkLine.js +1 -1
  139. package/esm/components/Spinner.d.ts +60 -60
  140. package/esm/components/Spinner.js +1 -1
  141. package/esm/components/Steps.js +1 -1
  142. package/esm/components/Switch.d.ts +12 -12
  143. package/esm/components/Switch.js +4 -4
  144. package/esm/components/TableSelection.d.ts +120 -120
  145. package/esm/components/TableSelection.js +6 -5
  146. package/esm/components/Tabs.d.ts +83 -81
  147. package/esm/components/Tabs.js +21 -22
  148. package/esm/components/TabsTransfer.d.ts +40 -40
  149. package/esm/components/TabsTransfer.js +16 -14
  150. package/esm/components/TabsTransferPicker.js +1 -1
  151. package/esm/components/Tag.d.ts +70 -70
  152. package/esm/components/Tag.js +1 -1
  153. package/esm/components/Textarea.d.ts +42 -42
  154. package/esm/components/Textarea.js +4 -4
  155. package/esm/components/Timeline.js +1 -1
  156. package/esm/components/TimelineItem.d.ts +1 -1
  157. package/esm/components/TimelineItem.js +1 -1
  158. package/esm/components/Tinymce.js +7 -4
  159. package/esm/components/TitleBar.d.ts +10 -10
  160. package/esm/components/TitleBar.js +1 -1
  161. package/esm/components/Toast.d.ts +120 -120
  162. package/esm/components/Toast.js +1 -1
  163. package/esm/components/Tooltip.js +1 -1
  164. package/esm/components/TooltipWrapper.d.ts +32 -32
  165. package/esm/components/TooltipWrapper.js +1 -1
  166. package/esm/components/Transfer.d.ts +174 -172
  167. package/esm/components/Transfer.js +16 -16
  168. package/esm/components/TransferDropDown.d.ts +160 -160
  169. package/esm/components/TransferDropDown.js +1 -1
  170. package/esm/components/TransferPicker.js +1 -1
  171. package/esm/components/TransferSearch.js +1 -1
  172. package/esm/components/Tree.d.ts +206 -210
  173. package/esm/components/Tree.js +32 -30
  174. package/esm/components/TreeSelection.d.ts +120 -120
  175. package/esm/components/TreeSelection.js +1 -1
  176. package/esm/components/UserSelect.d.ts +40 -40
  177. package/esm/components/UserSelect.js +1 -1
  178. package/esm/components/UserTabSelect.d.ts +40 -40
  179. package/esm/components/UserTabSelect.js +1 -1
  180. package/esm/components/WithRemoteConfig.d.ts +9 -0
  181. package/esm/components/WithRemoteConfig.js +19 -3
  182. package/esm/components/WithStore.js +1 -1
  183. package/esm/components/calendar/Calendar.d.ts +2 -1
  184. package/esm/components/calendar/Calendar.js +7 -6
  185. package/esm/components/calendar/CalendarContainer.js +1 -1
  186. package/esm/components/calendar/DaysView.d.ts +2 -1
  187. package/esm/components/calendar/DaysView.js +17 -15
  188. package/esm/components/calendar/MonthsView.d.ts +2 -0
  189. package/esm/components/calendar/MonthsView.js +8 -6
  190. package/esm/components/calendar/QuartersView.d.ts +2 -0
  191. package/esm/components/calendar/QuartersView.js +7 -6
  192. package/esm/components/calendar/TimeView.d.ts +2 -0
  193. package/esm/components/calendar/TimeView.js +8 -7
  194. package/esm/components/calendar/YearsView.d.ts +2 -0
  195. package/esm/components/calendar/YearsView.js +6 -5
  196. package/esm/components/condition-builder/Expression.js +1 -1
  197. package/esm/components/condition-builder/Field.js +1 -1
  198. package/esm/components/condition-builder/Func.js +1 -1
  199. package/esm/components/condition-builder/Group.js +1 -1
  200. package/esm/components/condition-builder/GroupOrItem.js +1 -1
  201. package/esm/components/condition-builder/InputSwitch.js +1 -1
  202. package/esm/components/condition-builder/Item.js +1 -1
  203. package/esm/components/condition-builder/Value.d.ts +1 -0
  204. package/esm/components/condition-builder/Value.js +30 -14
  205. package/esm/components/condition-builder/config.js +1 -1
  206. package/esm/components/condition-builder/index.js +1 -1
  207. package/esm/components/formula/CodeEditor.d.ts +92 -0
  208. package/esm/components/formula/CodeEditor.js +99 -0
  209. package/esm/components/formula/Editor.d.ts +64 -69
  210. package/esm/components/formula/Editor.js +173 -81
  211. package/esm/components/formula/FuncList.d.ts +1 -1
  212. package/esm/components/formula/FuncList.js +10 -9
  213. package/esm/components/formula/Input.d.ts +68 -54
  214. package/esm/components/formula/Input.js +45 -102
  215. package/esm/components/formula/Picker.d.ts +74 -60
  216. package/esm/components/formula/Picker.js +129 -69
  217. package/esm/components/formula/VariableList.d.ts +1 -1
  218. package/esm/components/formula/VariableList.js +26 -12
  219. package/esm/components/formula/plugin.d.ts +28 -7
  220. package/esm/components/formula/plugin.js +217 -90
  221. package/esm/components/icons.d.ts +4 -2
  222. package/esm/components/icons.js +14 -5
  223. package/esm/components/index.d.ts +5 -3
  224. package/esm/components/json-schema/Array.js +2 -2
  225. package/esm/components/json-schema/Item.d.ts +3 -1
  226. package/esm/components/json-schema/Item.js +35 -9
  227. package/esm/components/json-schema/Object.d.ts +3 -1
  228. package/esm/components/json-schema/Object.js +112 -52
  229. package/esm/components/json-schema/index.d.ts +53 -50
  230. package/esm/components/json-schema/index.js +14 -5
  231. package/esm/components/menu/MenuContext.js +1 -1
  232. package/esm/components/menu/MenuItem.d.ts +2 -1
  233. package/esm/components/menu/MenuItem.js +4 -4
  234. package/esm/components/menu/SubMenu.d.ts +2 -1
  235. package/esm/components/menu/SubMenu.js +6 -6
  236. package/esm/components/menu/index.d.ts +66 -63
  237. package/esm/components/menu/index.js +10 -7
  238. package/esm/components/schema-editor/Array.js +23 -8
  239. package/esm/components/schema-editor/Common.d.ts +17 -1
  240. package/esm/components/schema-editor/Common.js +84 -37
  241. package/esm/components/schema-editor/Item.js +2 -2
  242. package/esm/components/schema-editor/Object.d.ts +7 -1
  243. package/esm/components/schema-editor/Object.js +106 -14
  244. package/esm/components/schema-editor/SchemaVariableList.d.ts +1 -1
  245. package/esm/components/schema-editor/SchemaVariableList.js +1 -1
  246. package/esm/components/schema-editor/SchemaVariableListPicker.js +1 -1
  247. package/esm/components/schema-editor/index.d.ts +48 -40
  248. package/esm/components/schema-editor/index.js +4 -4
  249. package/esm/components/table/Cell.d.ts +2 -0
  250. package/esm/components/table/Cell.js +4 -4
  251. package/esm/components/table/ColGroup.js +1 -1
  252. package/esm/components/table/Head.d.ts +2 -0
  253. package/esm/components/table/Head.js +12 -9
  254. package/esm/components/table/HeadCellDropDown.d.ts +2 -0
  255. package/esm/components/table/HeadCellDropDown.js +1 -1
  256. package/esm/components/table/HeadCellFilter.d.ts +42 -40
  257. package/esm/components/table/HeadCellFilter.js +8 -8
  258. package/esm/components/table/HeadCellSelect.d.ts +40 -40
  259. package/esm/components/table/HeadCellSelect.js +1 -1
  260. package/esm/components/table/HeadCellSort.d.ts +2 -0
  261. package/esm/components/table/HeadCellSort.js +8 -8
  262. package/esm/components/table/ItemActionsWrapper.js +1 -1
  263. package/esm/components/table/Row.d.ts +2 -0
  264. package/esm/components/table/Row.js +4 -3
  265. package/esm/components/table/SummaryRow.js +1 -1
  266. package/esm/components/table/index.d.ts +162 -160
  267. package/esm/components/table/index.js +7 -5
  268. package/esm/components/table/util.d.ts +7 -7
  269. package/esm/components/table/util.js +4 -2
  270. package/esm/components/virtual-list/AutoSizer.js +1 -1
  271. package/esm/components/virtual-list/SizeAndPositionManager.js +1 -1
  272. package/esm/components/virtual-list/constants.js +1 -1
  273. package/esm/components/virtual-list/index.js +1 -1
  274. package/esm/hooks/use-set-state.js +1 -1
  275. package/esm/hooks/use-sub-form.js +1 -1
  276. package/esm/hooks/use-touch.js +1 -1
  277. package/esm/hooks/use-update-effect.js +1 -1
  278. package/esm/hooks/use-validation-resolver.js +1 -1
  279. package/esm/icons/alert-danger.svg.js +1 -1
  280. package/esm/icons/alert-info.svg.js +1 -1
  281. package/esm/icons/alert-success.svg.js +1 -1
  282. package/esm/icons/alert-warning.svg.js +1 -1
  283. package/esm/icons/arrow-double-left.svg.js +1 -1
  284. package/esm/icons/arrow-double-right.svg.js +1 -1
  285. package/esm/icons/back.svg.js +1 -1
  286. package/esm/icons/calendar.svg.js +1 -1
  287. package/esm/icons/caret.svg.js +1 -1
  288. package/esm/icons/check.svg.js +1 -1
  289. package/esm/icons/clock.svg.js +1 -1
  290. package/esm/icons/close-small.svg.js +1 -1
  291. package/esm/icons/close.svg.js +1 -1
  292. package/esm/icons/cloud-upload.svg.js +1 -1
  293. package/esm/icons/column-filter.svg.js +1 -1
  294. package/esm/icons/columns.svg.js +1 -1
  295. package/esm/icons/compress-alt.svg.js +1 -1
  296. package/esm/icons/copy.svg.js +1 -1
  297. package/esm/icons/date.svg.js +1 -1
  298. package/esm/icons/department.svg.js +1 -1
  299. package/esm/icons/desk-empty.svg.js +1 -1
  300. package/esm/icons/dot.svg.js +1 -1
  301. package/esm/icons/down-arrow-bold.svg.js +1 -1
  302. package/esm/icons/down.svg.js +1 -1
  303. package/esm/icons/download.svg.js +1 -1
  304. package/esm/icons/drag-bar.svg.js +1 -1
  305. package/esm/icons/drag.svg.js +1 -1
  306. package/esm/icons/edit.svg.js +1 -1
  307. package/esm/icons/ellipsis-v.svg.js +1 -1
  308. package/esm/icons/enter.svg.js +1 -1
  309. package/esm/icons/exchange.svg.js +1 -1
  310. package/esm/icons/expand-alt.svg.js +1 -1
  311. package/esm/icons/fail.svg.js +1 -1
  312. package/esm/icons/file.svg.js +1 -1
  313. package/esm/icons/filter.svg.js +1 -1
  314. package/esm/icons/folder.svg.js +1 -1
  315. package/esm/icons/fullscreen.svg.js +21 -0
  316. package/esm/icons/function.svg.js +1 -1
  317. package/esm/icons/home.svg.js +1 -1
  318. package/esm/icons/if.svg.js +1 -1
  319. package/esm/icons/image.svg.js +1 -1
  320. package/esm/icons/info-circle.svg.js +1 -1
  321. package/esm/icons/info.svg.js +1 -1
  322. package/esm/icons/input-clear.svg.js +1 -1
  323. package/esm/icons/invisible.svg.js +1 -1
  324. package/esm/icons/left-arrow.svg.js +1 -1
  325. package/esm/icons/loading-outline.svg.js +1 -1
  326. package/esm/icons/location.svg.js +1 -1
  327. package/esm/icons/menu.svg.js +1 -1
  328. package/esm/icons/minus.svg.js +1 -1
  329. package/esm/icons/move.svg.js +1 -1
  330. package/esm/icons/mute.svg.js +1 -1
  331. package/esm/icons/new-edit.svg.js +1 -1
  332. package/esm/icons/pause.svg.js +1 -1
  333. package/esm/icons/pencil.svg.js +1 -1
  334. package/esm/icons/play.svg.js +1 -1
  335. package/esm/icons/plus-cicle.svg.js +1 -1
  336. package/esm/icons/plus-fine.svg.js +1 -1
  337. package/esm/icons/plus.svg.js +1 -1
  338. package/esm/icons/post.svg.js +1 -1
  339. package/esm/icons/question-mark.svg.js +1 -1
  340. package/esm/icons/question.svg.js +1 -1
  341. package/esm/icons/redo.svg.js +1 -1
  342. package/esm/icons/refresh.svg.js +1 -1
  343. package/esm/icons/reload.svg.js +1 -1
  344. package/esm/icons/remove.svg.js +1 -1
  345. package/esm/icons/retry.svg.js +1 -1
  346. package/esm/icons/right-arrow-bold.svg.js +1 -1
  347. package/esm/icons/right-arrow.svg.js +1 -1
  348. package/esm/icons/right-double-arrow.svg.js +1 -1
  349. package/esm/icons/role.svg.js +1 -1
  350. package/esm/icons/rotate-left.svg.js +1 -1
  351. package/esm/icons/rotate-right.svg.js +1 -1
  352. package/esm/icons/scale-origin.svg.js +1 -1
  353. package/esm/icons/schedule.svg.js +1 -1
  354. package/esm/icons/search.svg.js +1 -1
  355. package/esm/icons/setting.svg.js +1 -1
  356. package/esm/icons/slider-handle-icon.svg.js +1 -1
  357. package/esm/icons/sort-asc.svg.js +1 -1
  358. package/esm/icons/sort-default.svg.js +1 -1
  359. package/esm/icons/sort-desc.svg.js +1 -1
  360. package/esm/icons/star.svg.js +1 -1
  361. package/esm/icons/status-close.svg.js +1 -1
  362. package/esm/icons/steps-finsh.svg.js +1 -1
  363. package/esm/icons/sub-plus.svg.js +20 -0
  364. package/esm/icons/success.svg.js +1 -1
  365. package/esm/icons/transparent.svg.js +1 -1
  366. package/esm/icons/trash.svg.js +1 -1
  367. package/esm/icons/tree-down.svg.js +1 -1
  368. package/esm/icons/undo-normal.svg.js +25 -0
  369. package/esm/icons/undo.svg.js +1 -1
  370. package/esm/icons/unfullscreen.svg.js +21 -0
  371. package/esm/icons/upload.svg.js +1 -1
  372. package/esm/icons/user-remove.svg.js +1 -1
  373. package/esm/icons/view.svg.js +1 -1
  374. package/esm/icons/volume.svg.js +1 -1
  375. package/esm/icons/warning-mark.svg.js +1 -1
  376. package/esm/icons/warning.svg.js +1 -1
  377. package/esm/icons/window-restore.svg.js +1 -1
  378. package/esm/icons/zoom-in.svg.js +1 -1
  379. package/esm/icons/zoom-out.svg.js +1 -1
  380. package/esm/index.js +4 -2
  381. package/esm/locale/de-DE.js +27 -11
  382. package/esm/locale/en-US.js +18 -2
  383. package/esm/locale/zh-CN.js +19 -3
  384. package/esm/node_modules/pdfjs-dist/build/pdf.worker.min.js +37 -0
  385. package/esm/node_modules/smooth-signature/es/index.js +506 -0
  386. package/esm/themes/ang.js +1 -1
  387. package/esm/themes/antd.js +1 -1
  388. package/esm/themes/cxd.js +1 -1
  389. package/esm/themes/dark.js +1 -1
  390. package/lib/_virtual/_commonjsHelpers.js +14 -0
  391. package/lib/_virtual/pdf.worker.min.js +12 -0
  392. package/lib/components/404.js +1 -1
  393. package/lib/components/Alert.d.ts +124 -122
  394. package/lib/components/Alert.js +10 -6
  395. package/lib/components/Alert2.d.ts +20 -20
  396. package/lib/components/Alert2.js +1 -1
  397. package/lib/components/AnchorNav.d.ts +20 -20
  398. package/lib/components/AnchorNav.js +1 -1
  399. package/lib/components/ArrayInput.d.ts +40 -40
  400. package/lib/components/ArrayInput.js +1 -1
  401. package/lib/components/AsideNav.d.ts +12 -11
  402. package/lib/components/AsideNav.js +5 -2
  403. package/lib/components/AssociatedSelection.d.ts +80 -80
  404. package/lib/components/AssociatedSelection.js +4 -4
  405. package/lib/components/Avatar.d.ts +70 -70
  406. package/lib/components/Avatar.js +1 -1
  407. package/lib/components/Badge.d.ts +1 -1
  408. package/lib/components/Badge.js +1 -1
  409. package/lib/components/BaiduMapPicker.js +1 -1
  410. package/lib/components/BarCode.js +1 -1
  411. package/lib/components/Breadcrumb.d.ts +3 -0
  412. package/lib/components/Breadcrumb.js +7 -6
  413. package/lib/components/Button.d.ts +42 -41
  414. package/lib/components/Button.js +3 -3
  415. package/lib/components/CalendarMobile.d.ts +85 -80
  416. package/lib/components/CalendarMobile.js +41 -6
  417. package/lib/components/Card.d.ts +110 -110
  418. package/lib/components/Card.js +1 -1
  419. package/lib/components/Cascader.js +1 -1
  420. package/lib/components/ChainedDropdownSelection.d.ts +80 -80
  421. package/lib/components/ChainedDropdownSelection.js +1 -1
  422. package/lib/components/ChainedSelection.d.ts +80 -80
  423. package/lib/components/ChainedSelection.js +8 -6
  424. package/lib/components/Checkbox.d.ts +12 -11
  425. package/lib/components/Checkbox.js +6 -6
  426. package/lib/components/CityArea.js +1 -1
  427. package/lib/components/CityDB.d.ts +1 -1
  428. package/lib/components/CityDB.js +377 -889
  429. package/lib/components/CodeMirror.d.ts +1 -0
  430. package/lib/components/CodeMirror.js +15 -4
  431. package/lib/components/Collapse.d.ts +140 -140
  432. package/lib/components/Collapse.js +1 -1
  433. package/lib/components/CollapseGroup.d.ts +20 -20
  434. package/lib/components/CollapseGroup.js +1 -1
  435. package/lib/components/ColorPicker.d.ts +40 -40
  436. package/lib/components/ColorPicker.js +1 -1
  437. package/lib/components/Combo.js +1 -1
  438. package/lib/components/ConfirmBox.d.ts +81 -80
  439. package/lib/components/ConfirmBox.js +6 -3
  440. package/lib/components/ContextMenu.d.ts +17 -3
  441. package/lib/components/ContextMenu.js +73 -20
  442. package/lib/components/DatePicker.d.ts +124 -122
  443. package/lib/components/DatePicker.js +12 -12
  444. package/lib/components/DateRangePicker.d.ts +293 -289
  445. package/lib/components/DateRangePicker.js +40 -27
  446. package/lib/components/DndContainer.js +1 -1
  447. package/lib/components/Drawer.d.ts +30 -30
  448. package/lib/components/Drawer.js +1 -1
  449. package/lib/components/DropDownSelection.d.ts +80 -80
  450. package/lib/components/DropDownSelection.js +1 -1
  451. package/lib/components/Editor.d.ts +120 -120
  452. package/lib/components/Editor.js +3 -3
  453. package/lib/components/Form.js +1 -1
  454. package/lib/components/FormField.js +1 -1
  455. package/lib/components/GaodeMapPicker.js +1 -1
  456. package/lib/components/GridNav.js +1 -1
  457. package/lib/components/GroupedSelection.d.ts +80 -80
  458. package/lib/components/GroupedSelection.js +5 -4
  459. package/lib/components/Html.js +1 -1
  460. package/lib/components/ImageGallery.d.ts +40 -40
  461. package/lib/components/ImageGallery.js +2 -1
  462. package/lib/components/Input.d.ts +3 -1
  463. package/lib/components/Input.js +3 -3
  464. package/lib/components/InputBox.d.ts +14 -13
  465. package/lib/components/InputBox.js +6 -6
  466. package/lib/components/InputBoxWithSuggestion.js +7 -7
  467. package/lib/components/InputTable.js +1 -1
  468. package/lib/components/Layout.d.ts +10 -10
  469. package/lib/components/Layout.js +1 -1
  470. package/lib/components/Link.js +1 -1
  471. package/lib/components/ListGroup.d.ts +10 -10
  472. package/lib/components/ListGroup.js +1 -1
  473. package/lib/components/ListMenu.d.ts +82 -80
  474. package/lib/components/ListMenu.js +3 -3
  475. package/lib/components/LocationPicker.d.ts +40 -40
  476. package/lib/components/LocationPicker.js +1 -1
  477. package/lib/components/Markdown.js +1 -1
  478. package/lib/components/Modal.d.ts +80 -80
  479. package/lib/components/Modal.js +1 -1
  480. package/lib/components/ModalManager.js +1 -1
  481. package/lib/components/MonthRangePicker.d.ts +160 -160
  482. package/lib/components/MultilineText.d.ts +40 -40
  483. package/lib/components/MultilineText.js +1 -1
  484. package/lib/components/NumberInput.d.ts +30 -21
  485. package/lib/components/NumberInput.js +36 -6
  486. package/lib/components/OverflowTpl.js +1 -1
  487. package/lib/components/Pagination.d.ts +200 -110
  488. package/lib/components/Pagination.js +20 -20
  489. package/lib/components/PdfViewer.d.ts +49 -0
  490. package/lib/components/PdfViewer.js +91 -0
  491. package/lib/components/Picker.d.ts +1 -0
  492. package/lib/components/Picker.js +4 -4
  493. package/lib/components/PickerColumn.d.ts +1 -0
  494. package/lib/components/PickerColumn.js +7 -5
  495. package/lib/components/PickerContainer.d.ts +1 -2
  496. package/lib/components/PickerContainer.js +26 -16
  497. package/lib/components/PopOverContainer.d.ts +1 -0
  498. package/lib/components/PopOverContainer.js +3 -3
  499. package/lib/components/PopUp.d.ts +40 -40
  500. package/lib/components/PopUp.js +1 -1
  501. package/lib/components/Progress.d.ts +50 -50
  502. package/lib/components/Progress.js +1 -1
  503. package/lib/components/PullRefresh.js +1 -1
  504. package/lib/components/Radios.d.ts +12 -10
  505. package/lib/components/Radios.js +4 -3
  506. package/lib/components/Range.js +1 -1
  507. package/lib/components/Rating.d.ts +10 -10
  508. package/lib/components/Rating.js +1 -1
  509. package/lib/components/ResultBox.d.ts +82 -81
  510. package/lib/components/ResultBox.js +25 -21
  511. package/lib/components/ResultList.d.ts +42 -40
  512. package/lib/components/ResultList.js +5 -4
  513. package/lib/components/ResultTableList.d.ts +80 -80
  514. package/lib/components/ResultTableList.js +5 -4
  515. package/lib/components/ResultTreeList.d.ts +40 -40
  516. package/lib/components/ResultTreeList.js +3 -3
  517. package/lib/components/RichText.js +1 -1
  518. package/lib/components/SearchBox.d.ts +82 -81
  519. package/lib/components/SearchBox.js +7 -7
  520. package/lib/components/Select.d.ts +1366 -1357
  521. package/lib/components/Select.js +12 -11
  522. package/lib/components/SelectMobile.js +22 -19
  523. package/lib/components/Selection.d.ts +82 -80
  524. package/lib/components/Selection.js +1 -1
  525. package/lib/components/Signature.d.ts +280 -0
  526. package/lib/components/Signature.js +275 -0
  527. package/lib/components/SparkLine.d.ts +40 -40
  528. package/lib/components/SparkLine.js +1 -1
  529. package/lib/components/Spinner.d.ts +60 -60
  530. package/lib/components/Spinner.js +1 -1
  531. package/lib/components/Steps.js +1 -1
  532. package/lib/components/Switch.d.ts +12 -12
  533. package/lib/components/Switch.js +3 -3
  534. package/lib/components/TableSelection.d.ts +80 -80
  535. package/lib/components/TableSelection.js +6 -5
  536. package/lib/components/Tabs.d.ts +83 -81
  537. package/lib/components/Tabs.js +21 -22
  538. package/lib/components/TabsTransfer.d.ts +40 -40
  539. package/lib/components/TabsTransfer.js +16 -14
  540. package/lib/components/TabsTransferPicker.js +1 -1
  541. package/lib/components/Tag.d.ts +70 -70
  542. package/lib/components/Tag.js +1 -1
  543. package/lib/components/Textarea.d.ts +42 -42
  544. package/lib/components/Textarea.js +3 -3
  545. package/lib/components/Timeline.js +1 -1
  546. package/lib/components/TimelineItem.d.ts +1 -1
  547. package/lib/components/TimelineItem.js +1 -1
  548. package/lib/components/Tinymce.js +7 -4
  549. package/lib/components/TitleBar.d.ts +10 -10
  550. package/lib/components/TitleBar.js +1 -1
  551. package/lib/components/Toast.d.ts +80 -80
  552. package/lib/components/Toast.js +1 -1
  553. package/lib/components/Tooltip.js +1 -1
  554. package/lib/components/TooltipWrapper.d.ts +42 -42
  555. package/lib/components/TooltipWrapper.js +1 -1
  556. package/lib/components/Transfer.d.ts +192 -190
  557. package/lib/components/Transfer.js +16 -16
  558. package/lib/components/TransferDropDown.d.ts +160 -160
  559. package/lib/components/TransferDropDown.js +1 -1
  560. package/lib/components/TransferPicker.js +1 -1
  561. package/lib/components/TransferSearch.js +1 -1
  562. package/lib/components/Tree.d.ts +286 -290
  563. package/lib/components/Tree.js +31 -29
  564. package/lib/components/TreeSelection.d.ts +120 -120
  565. package/lib/components/TreeSelection.js +1 -1
  566. package/lib/components/UserSelect.d.ts +40 -40
  567. package/lib/components/UserSelect.js +1 -1
  568. package/lib/components/UserTabSelect.d.ts +40 -40
  569. package/lib/components/UserTabSelect.js +1 -1
  570. package/lib/components/WithRemoteConfig.d.ts +9 -0
  571. package/lib/components/WithRemoteConfig.js +19 -3
  572. package/lib/components/WithStore.js +1 -1
  573. package/lib/components/calendar/Calendar.d.ts +2 -1
  574. package/lib/components/calendar/Calendar.js +6 -5
  575. package/lib/components/calendar/CalendarContainer.js +1 -1
  576. package/lib/components/calendar/DaysView.d.ts +2 -1
  577. package/lib/components/calendar/DaysView.js +17 -15
  578. package/lib/components/calendar/MonthsView.d.ts +2 -0
  579. package/lib/components/calendar/MonthsView.js +8 -6
  580. package/lib/components/calendar/QuartersView.d.ts +2 -0
  581. package/lib/components/calendar/QuartersView.js +7 -6
  582. package/lib/components/calendar/TimeView.d.ts +2 -0
  583. package/lib/components/calendar/TimeView.js +8 -7
  584. package/lib/components/calendar/YearsView.d.ts +2 -0
  585. package/lib/components/calendar/YearsView.js +6 -5
  586. package/lib/components/condition-builder/Expression.js +1 -1
  587. package/lib/components/condition-builder/Field.js +1 -1
  588. package/lib/components/condition-builder/Func.js +1 -1
  589. package/lib/components/condition-builder/Group.js +1 -1
  590. package/lib/components/condition-builder/GroupOrItem.js +1 -1
  591. package/lib/components/condition-builder/InputSwitch.js +1 -1
  592. package/lib/components/condition-builder/Item.js +1 -1
  593. package/lib/components/condition-builder/Value.d.ts +1 -0
  594. package/lib/components/condition-builder/Value.js +28 -12
  595. package/lib/components/condition-builder/config.js +1 -1
  596. package/lib/components/condition-builder/index.d.ts +1 -1
  597. package/lib/components/condition-builder/index.js +1 -1
  598. package/lib/components/formula/CodeEditor.d.ts +92 -0
  599. package/lib/components/formula/CodeEditor.js +110 -0
  600. package/lib/components/formula/Editor.d.ts +64 -69
  601. package/lib/components/formula/Editor.js +172 -78
  602. package/lib/components/formula/FuncList.d.ts +1 -1
  603. package/lib/components/formula/FuncList.js +10 -9
  604. package/lib/components/formula/Input.d.ts +68 -54
  605. package/lib/components/formula/Input.js +43 -101
  606. package/lib/components/formula/Picker.d.ts +74 -60
  607. package/lib/components/formula/Picker.js +128 -68
  608. package/lib/components/formula/VariableList.d.ts +1 -1
  609. package/lib/components/formula/VariableList.js +24 -10
  610. package/lib/components/formula/plugin.d.ts +28 -7
  611. package/lib/components/formula/plugin.js +220 -89
  612. package/lib/components/icons.d.ts +4 -2
  613. package/lib/components/icons.js +14 -5
  614. package/lib/components/index.d.ts +5 -3
  615. package/lib/components/json-schema/Array.js +3 -3
  616. package/lib/components/json-schema/Item.d.ts +3 -1
  617. package/lib/components/json-schema/Item.js +39 -8
  618. package/lib/components/json-schema/Object.d.ts +3 -1
  619. package/lib/components/json-schema/Object.js +113 -51
  620. package/lib/components/json-schema/index.d.ts +53 -50
  621. package/lib/components/json-schema/index.js +18 -5
  622. package/lib/components/menu/MenuContext.js +1 -1
  623. package/lib/components/menu/MenuItem.d.ts +2 -1
  624. package/lib/components/menu/MenuItem.js +3 -3
  625. package/lib/components/menu/SubMenu.d.ts +2 -1
  626. package/lib/components/menu/SubMenu.js +5 -5
  627. package/lib/components/menu/index.d.ts +86 -83
  628. package/lib/components/menu/index.js +10 -7
  629. package/lib/components/schema-editor/Array.js +23 -8
  630. package/lib/components/schema-editor/Common.d.ts +17 -1
  631. package/lib/components/schema-editor/Common.js +83 -36
  632. package/lib/components/schema-editor/Item.js +2 -2
  633. package/lib/components/schema-editor/Object.d.ts +7 -1
  634. package/lib/components/schema-editor/Object.js +105 -13
  635. package/lib/components/schema-editor/SchemaVariableList.d.ts +1 -1
  636. package/lib/components/schema-editor/SchemaVariableList.js +1 -1
  637. package/lib/components/schema-editor/SchemaVariableListPicker.js +1 -1
  638. package/lib/components/schema-editor/index.d.ts +48 -40
  639. package/lib/components/schema-editor/index.js +4 -4
  640. package/lib/components/table/Cell.d.ts +2 -0
  641. package/lib/components/table/Cell.js +4 -4
  642. package/lib/components/table/ColGroup.js +1 -1
  643. package/lib/components/table/Head.d.ts +2 -0
  644. package/lib/components/table/Head.js +12 -9
  645. package/lib/components/table/HeadCellDropDown.d.ts +2 -0
  646. package/lib/components/table/HeadCellDropDown.js +1 -1
  647. package/lib/components/table/HeadCellFilter.d.ts +82 -80
  648. package/lib/components/table/HeadCellFilter.js +8 -8
  649. package/lib/components/table/HeadCellSelect.d.ts +40 -40
  650. package/lib/components/table/HeadCellSelect.js +1 -1
  651. package/lib/components/table/HeadCellSort.d.ts +2 -0
  652. package/lib/components/table/HeadCellSort.js +7 -7
  653. package/lib/components/table/ItemActionsWrapper.js +1 -1
  654. package/lib/components/table/Row.d.ts +2 -0
  655. package/lib/components/table/Row.js +4 -3
  656. package/lib/components/table/SummaryRow.js +1 -1
  657. package/lib/components/table/index.d.ts +122 -120
  658. package/lib/components/table/index.js +7 -5
  659. package/lib/components/table/util.d.ts +7 -7
  660. package/lib/components/table/util.js +4 -2
  661. package/lib/components/virtual-list/AutoSizer.js +1 -1
  662. package/lib/components/virtual-list/SizeAndPositionManager.js +1 -1
  663. package/lib/components/virtual-list/constants.js +1 -1
  664. package/lib/components/virtual-list/index.js +1 -1
  665. package/lib/hooks/use-set-state.js +1 -1
  666. package/lib/hooks/use-sub-form.js +1 -1
  667. package/lib/hooks/use-touch.js +1 -1
  668. package/lib/hooks/use-update-effect.js +1 -1
  669. package/lib/hooks/use-validation-resolver.js +1 -1
  670. package/lib/icons/alert-danger.svg.js +1 -1
  671. package/lib/icons/alert-info.svg.js +1 -1
  672. package/lib/icons/alert-success.svg.js +1 -1
  673. package/lib/icons/alert-warning.svg.js +1 -1
  674. package/lib/icons/arrow-double-left.svg.js +1 -1
  675. package/lib/icons/arrow-double-right.svg.js +1 -1
  676. package/lib/icons/back.svg.js +1 -1
  677. package/lib/icons/calendar.svg.js +1 -1
  678. package/lib/icons/caret.svg.js +1 -1
  679. package/lib/icons/check.svg.js +1 -1
  680. package/lib/icons/clock.svg.js +1 -1
  681. package/lib/icons/close-small.svg.js +1 -1
  682. package/lib/icons/close.svg.js +1 -1
  683. package/lib/icons/cloud-upload.svg.js +1 -1
  684. package/lib/icons/column-filter.svg.js +1 -1
  685. package/lib/icons/columns.svg.js +1 -1
  686. package/lib/icons/compress-alt.svg.js +1 -1
  687. package/lib/icons/copy.svg.js +1 -1
  688. package/lib/icons/date.svg.js +1 -1
  689. package/lib/icons/department.svg.js +1 -1
  690. package/lib/icons/desk-empty.svg.js +1 -1
  691. package/lib/icons/dot.svg.js +1 -1
  692. package/lib/icons/down-arrow-bold.svg.js +1 -1
  693. package/lib/icons/down.svg.js +1 -1
  694. package/lib/icons/download.svg.js +1 -1
  695. package/lib/icons/drag-bar.svg.js +1 -1
  696. package/lib/icons/drag.svg.js +1 -1
  697. package/lib/icons/edit.svg.js +1 -1
  698. package/lib/icons/ellipsis-v.svg.js +1 -1
  699. package/lib/icons/enter.svg.js +1 -1
  700. package/lib/icons/exchange.svg.js +1 -1
  701. package/lib/icons/expand-alt.svg.js +1 -1
  702. package/lib/icons/fail.svg.js +1 -1
  703. package/lib/icons/file.svg.js +1 -1
  704. package/lib/icons/filter.svg.js +1 -1
  705. package/lib/icons/folder.svg.js +1 -1
  706. package/lib/icons/fullscreen.svg.js +28 -0
  707. package/lib/icons/function.svg.js +1 -1
  708. package/lib/icons/home.svg.js +1 -1
  709. package/lib/icons/if.svg.js +1 -1
  710. package/lib/icons/image.svg.js +1 -1
  711. package/lib/icons/info-circle.svg.js +1 -1
  712. package/lib/icons/info.svg.js +1 -1
  713. package/lib/icons/input-clear.svg.js +1 -1
  714. package/lib/icons/invisible.svg.js +1 -1
  715. package/lib/icons/left-arrow.svg.js +1 -1
  716. package/lib/icons/loading-outline.svg.js +1 -1
  717. package/lib/icons/location.svg.js +1 -1
  718. package/lib/icons/menu.svg.js +1 -1
  719. package/lib/icons/minus.svg.js +1 -1
  720. package/lib/icons/move.svg.js +1 -1
  721. package/lib/icons/mute.svg.js +1 -1
  722. package/lib/icons/new-edit.svg.js +1 -1
  723. package/lib/icons/pause.svg.js +1 -1
  724. package/lib/icons/pencil.svg.js +1 -1
  725. package/lib/icons/play.svg.js +1 -1
  726. package/lib/icons/plus-cicle.svg.js +1 -1
  727. package/lib/icons/plus-fine.svg.js +1 -1
  728. package/lib/icons/plus.svg.js +1 -1
  729. package/lib/icons/post.svg.js +1 -1
  730. package/lib/icons/question-mark.svg.js +1 -1
  731. package/lib/icons/question.svg.js +1 -1
  732. package/lib/icons/redo.svg.js +1 -1
  733. package/lib/icons/refresh.svg.js +1 -1
  734. package/lib/icons/reload.svg.js +1 -1
  735. package/lib/icons/remove.svg.js +1 -1
  736. package/lib/icons/retry.svg.js +1 -1
  737. package/lib/icons/right-arrow-bold.svg.js +1 -1
  738. package/lib/icons/right-arrow.svg.js +1 -1
  739. package/lib/icons/right-double-arrow.svg.js +1 -1
  740. package/lib/icons/role.svg.js +1 -1
  741. package/lib/icons/rotate-left.svg.js +1 -1
  742. package/lib/icons/rotate-right.svg.js +1 -1
  743. package/lib/icons/scale-origin.svg.js +1 -1
  744. package/lib/icons/schedule.svg.js +1 -1
  745. package/lib/icons/search.svg.js +1 -1
  746. package/lib/icons/setting.svg.js +1 -1
  747. package/lib/icons/slider-handle-icon.svg.js +1 -1
  748. package/lib/icons/sort-asc.svg.js +1 -1
  749. package/lib/icons/sort-default.svg.js +1 -1
  750. package/lib/icons/sort-desc.svg.js +1 -1
  751. package/lib/icons/star.svg.js +1 -1
  752. package/lib/icons/status-close.svg.js +1 -1
  753. package/lib/icons/steps-finsh.svg.js +1 -1
  754. package/lib/icons/sub-plus.svg.js +27 -0
  755. package/lib/icons/success.svg.js +1 -1
  756. package/lib/icons/transparent.svg.js +1 -1
  757. package/lib/icons/trash.svg.js +1 -1
  758. package/lib/icons/tree-down.svg.js +1 -1
  759. package/lib/icons/undo-normal.svg.js +32 -0
  760. package/lib/icons/undo.svg.js +1 -1
  761. package/lib/icons/unfullscreen.svg.js +28 -0
  762. package/lib/icons/upload.svg.js +1 -1
  763. package/lib/icons/user-remove.svg.js +1 -1
  764. package/lib/icons/view.svg.js +1 -1
  765. package/lib/icons/volume.svg.js +1 -1
  766. package/lib/icons/warning-mark.svg.js +1 -1
  767. package/lib/icons/warning.svg.js +1 -1
  768. package/lib/icons/window-restore.svg.js +1 -1
  769. package/lib/icons/zoom-in.svg.js +1 -1
  770. package/lib/icons/zoom-out.svg.js +1 -1
  771. package/lib/index.js +6 -1
  772. package/lib/locale/de-DE.js +27 -11
  773. package/lib/locale/en-US.js +18 -2
  774. package/lib/locale/zh-CN.js +19 -3
  775. package/lib/node_modules/pdfjs-dist/build/pdf.worker.min.js +41 -0
  776. package/lib/node_modules/smooth-signature/es/index.js +510 -0
  777. package/lib/{scss → packages/amis-ui/scss}/helper.scss.js +1 -1
  778. package/lib/{scss → packages/amis-ui/scss}/themes/ang.scss.js +1 -1
  779. package/lib/{scss → packages/amis-ui/scss}/themes/antd.scss.js +1 -1
  780. package/lib/{scss → packages/amis-ui/scss}/themes/cxd.scss.js +1 -1
  781. package/lib/{scss → packages/amis-ui/scss}/themes/dark.scss.js +1 -1
  782. package/lib/{scss → packages/amis-ui/scss}/themes/default.scss.js +1 -1
  783. package/lib/themes/ang.css +1032 -38
  784. package/lib/themes/ang.js +1 -1
  785. package/lib/themes/antd.css +1032 -38
  786. package/lib/themes/antd.js +1 -1
  787. package/lib/themes/cxd.css +1032 -38
  788. package/lib/themes/cxd.js +1 -1
  789. package/lib/themes/dark.css +1032 -38
  790. package/lib/themes/dark.js +1 -1
  791. package/lib/themes/default.css +1032 -38
  792. package/package.json +4 -3
  793. package/scss/_components.scss +7 -0
  794. package/scss/_mixins.scss +1 -0
  795. package/scss/_thirds.scss +3 -0
  796. package/scss/components/_collapse.scss +1 -1
  797. package/scss/components/_condition-builder.scss +18 -0
  798. package/scss/components/_crud2.scss +4 -0
  799. package/scss/components/_formula.scss +148 -26
  800. package/scss/components/_image-gallery.scss +7 -1
  801. package/scss/components/_input-box.scss +6 -0
  802. package/scss/components/_json-schema-editor.scss +24 -3
  803. package/scss/components/_json-schema.scss +5 -0
  804. package/scss/components/_menu.scss +3 -0
  805. package/scss/components/_pdf_viewer.scss +47 -0
  806. package/scss/components/_signature.scss +97 -0
  807. package/scss/components/_table.scss +6 -1
  808. package/scss/components/_tabs.scss +10 -4
  809. package/scss/components/form/_combo.scss +1 -0
  810. package/scss/components/form/_form.scss +10 -0
  811. package/scss/components/form/_icon-select.scss +3 -0
  812. package/scss/components/form/_picker.scss +2 -1
  813. package/scss/components/form/_tag.scss +2 -1
  814. package/scss/components/form/_text.scss +4 -4
  815. package/scss/themes/_common.scss +2 -0
@@ -1,13 +1,12 @@
1
1
  /**
2
- * amis-ui v6.2.2
2
+ * amis-ui v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
6
6
  import { __extends, __awaiter, __generator, __assign, __rest, __read, __decorate, __metadata } from 'tslib';
7
- import { anyChanged, parse, noop, autobind, themeable, localeable, uncontrollable, isExpression, resolveVariableAndFilterForAsync } from 'amis-core';
7
+ import { anyChanged, isExpression, parse, autobind, themeable, localeable, uncontrollable, resolveVariableAndFilterForAsync } from 'amis-core';
8
8
  import React__default from 'react';
9
9
  import Editor, { FormulaEditor } from './Editor.js';
10
- import ResultBox from '../ResultBox.js';
11
10
  import Button from '../Button.js';
12
11
  import { Icon } from '../icons.js';
13
12
  import FinalModal from '../Modal.js';
@@ -21,12 +20,14 @@ var InputSchemaType = [
21
20
  'date',
22
21
  'time',
23
22
  'datetime',
24
- 'select'
23
+ 'select',
24
+ 'custom'
25
25
  ];
26
26
  var FormulaPicker = /** @class */ (function (_super) {
27
27
  __extends(FormulaPicker, _super);
28
28
  function FormulaPicker(props) {
29
29
  var _this = _super.call(this, props) || this;
30
+ _this.unmounted = false;
30
31
  _this.props.onRef && _this.props.onRef(_this);
31
32
  _this.state = {
32
33
  isOpened: false,
@@ -57,7 +58,9 @@ var FormulaPicker = /** @class */ (function (_super) {
57
58
  result = _b.sent();
58
59
  this.setState({ variables: result });
59
60
  _b.label = 4;
60
- case 4: return [2 /*return*/];
61
+ case 4:
62
+ this.buildFunctions();
63
+ return [2 /*return*/];
61
64
  }
62
65
  });
63
66
  });
@@ -69,7 +72,7 @@ var FormulaPicker = /** @class */ (function (_super) {
69
72
  switch (_b.label) {
70
73
  case 0:
71
74
  value = this.props.value;
72
- if (value !== prevProps.value) {
75
+ if (value !== prevProps.value && !this.state.isOpened) {
73
76
  this.setState({
74
77
  value: typeof value === 'string' || !this.isTextInput() ? value : '',
75
78
  editorValue: this.value2EditorValue(this.props)
@@ -90,14 +93,50 @@ var FormulaPicker = /** @class */ (function (_super) {
90
93
  result = _b.sent();
91
94
  this.setState({ variables: result });
92
95
  _b.label = 4;
93
- case 4: return [2 /*return*/];
96
+ case 4:
97
+ if (prevProps.functions !== this.props.functions) {
98
+ this.buildFunctions();
99
+ }
100
+ return [2 /*return*/];
101
+ }
102
+ });
103
+ });
104
+ };
105
+ FormulaPicker.prototype.componentWillUnmount = function () {
106
+ this.unmounted = true;
107
+ };
108
+ FormulaPicker.prototype.buildFunctions = function (functions, setState) {
109
+ if (functions === void 0) { functions = this.props.functions; }
110
+ if (setState === void 0) { setState = true; }
111
+ return __awaiter(this, void 0, void 0, function () {
112
+ var functionList;
113
+ return __generator(this, function (_a) {
114
+ switch (_a.label) {
115
+ case 0: return [4 /*yield*/, FormulaEditor.buildFunctions(functions, this.props.functionsFilter)];
116
+ case 1:
117
+ functionList = _a.sent();
118
+ if (this.unmounted) {
119
+ return [2 /*return*/];
120
+ }
121
+ if (!setState) {
122
+ return [2 /*return*/, functionList];
123
+ }
124
+ this.setState({
125
+ functions: functionList
126
+ });
127
+ return [2 /*return*/];
94
128
  }
95
129
  });
96
130
  });
97
131
  };
98
132
  FormulaPicker.prototype.value2EditorValue = function (props) {
99
- var value = props.value;
100
- if (!this.isTextInput()) {
133
+ var value = props.value, mixedMode = props.mixedMode; props.inputSettings;
134
+ if (mixedMode &&
135
+ typeof value === 'string' &&
136
+ /^\s*\$\{([\s\S]+)\}\s*$/.test(value)) {
137
+ return RegExp.$1;
138
+ }
139
+ else if (typeof value !== 'string') {
101
140
  var editorValue = '';
102
141
  try {
103
142
  editorValue = JSON.stringify(value);
@@ -105,16 +144,15 @@ var FormulaPicker = /** @class */ (function (_super) {
105
144
  catch (error) { }
106
145
  return editorValue;
107
146
  }
108
- if (props.mixedMode) {
109
- if (typeof props.value === 'string' &&
110
- /^\s*\$\{(.+?)\}\s*$/.test(props.value)) {
111
- return RegExp.$1;
112
- }
113
- else {
114
- return '';
115
- }
147
+ else {
148
+ return value
149
+ ? mixedMode
150
+ ? isExpression(value)
151
+ ? "`".concat(value.replace(/`/g, '\\`'), "`")
152
+ : JSON.stringify(value)
153
+ : value
154
+ : '';
116
155
  }
117
- return String(props.value || '');
118
156
  };
119
157
  FormulaPicker.prototype.isTextInput = function () {
120
158
  var inputSettings = this.props.inputSettings;
@@ -132,14 +170,6 @@ var FormulaPicker = /** @class */ (function (_super) {
132
170
  (_b = (_a = this.props).onChange) === null || _b === void 0 ? void 0 : _b.call(_a, value);
133
171
  }
134
172
  };
135
- FormulaPicker.prototype.renderFormulaValue = function (item) {
136
- var _a = this.props, allowInput = _a.allowInput, cx = _a.classnames;
137
- var html = { __html: item.html };
138
- if (allowInput) {
139
- return '';
140
- }
141
- return (React__default.createElement("div", { className: cx('FormulaPicker-ResultBox'), dangerouslySetInnerHTML: html }));
142
- };
143
173
  FormulaPicker.prototype.handleInputChange = function (value) {
144
174
  var _this = this;
145
175
  this.setState({ value: value }, function () { return _this.handleConfirm(); });
@@ -158,38 +188,53 @@ var FormulaPicker = /** @class */ (function (_super) {
158
188
  var _a, _b;
159
189
  var _c = this.props; _c.translate; var inputSettings = _c.inputSettings;
160
190
  var editorValue = this.state.editorValue;
161
- if (this.isTextInput()) {
162
- return this.confirm(editorValue);
191
+ var ast;
192
+ try {
193
+ ast = parse(editorValue, {
194
+ // mixedMode 弹窗中的一定是表达式
195
+ evalMode: this.props.mixedMode ? true : this.props.evalMode,
196
+ allowFilter: false
197
+ });
198
+ }
199
+ catch (error) {
200
+ this.setState({ isError: (_a = error === null || error === void 0 ? void 0 : error.message) !== null && _a !== void 0 ? _a : true });
201
+ return;
163
202
  }
164
- else if (inputSettings) {
203
+ if ((inputSettings === null || inputSettings === void 0 ? void 0 : inputSettings.type) &&
204
+ ['boolean', 'number'].includes(inputSettings === null || inputSettings === void 0 ? void 0 : inputSettings.type)) {
165
205
  var result = editorValue;
166
- var schemaType = inputSettings === null || inputSettings === void 0 ? void 0 : inputSettings.type;
167
- try {
168
- var ast = parse(editorValue, { evalMode: true, allowFilter: false });
169
- if (schemaType === 'select' &&
170
- inputSettings.multiple &&
171
- ast.type === 'array') {
172
- result = ast.members.map(function (i) { return i.value; });
173
- }
174
- else if (ast.type === 'literal' || ast.type === 'string') {
175
- result = (_a = ast.value) !== null && _a !== void 0 ? _a : '';
176
- }
177
- }
178
- catch (error) {
179
- this.setState({ isError: (_b = error === null || error === void 0 ? void 0 : error.message) !== null && _b !== void 0 ? _b : true });
180
- return;
206
+ // const schemaType = inputSettings?.type;
207
+ if (ast.type === 'literal' || ast.type === 'string') {
208
+ result = (_b = ast.value) !== null && _b !== void 0 ? _b : '';
181
209
  }
182
210
  this.setState({ isError: false });
183
211
  return this.confirm(result);
184
212
  }
213
+ return this.confirm(editorValue, ast);
185
214
  };
186
- FormulaPicker.prototype.confirm = function (value) {
215
+ FormulaPicker.prototype.confirm = function (value, ast) {
187
216
  var _this = this;
188
217
  var mixedMode = this.props.mixedMode;
218
+ var stateOnConfirm = this.state.onConfirm;
189
219
  var validate = this.validate(value);
190
220
  if (validate === true) {
191
- this.setState({ value: mixedMode && value ? "${".concat(value, "}") : value }, function () {
192
- _this.close(undefined, function () { return _this.handleConfirm(); });
221
+ var result = value;
222
+ if (mixedMode && typeof value === 'string') {
223
+ result =
224
+ (ast === null || ast === void 0 ? void 0 : ast.type) === 'string'
225
+ ? ast.value
226
+ : (ast === null || ast === void 0 ? void 0 : ast.type) === 'template' &&
227
+ ast.body.length === 1 &&
228
+ ast.body[0].type === 'template_raw'
229
+ ? ast.body[0].value
230
+ : "${".concat(value, "}");
231
+ }
232
+ this.setState({ value: result, onConfirm: undefined }, function () {
233
+ _this.close(undefined, function () {
234
+ stateOnConfirm
235
+ ? stateOnConfirm(_this.state.value)
236
+ : _this.handleConfirm();
237
+ });
193
238
  });
194
239
  }
195
240
  else {
@@ -197,17 +242,30 @@ var FormulaPicker = /** @class */ (function (_super) {
197
242
  }
198
243
  };
199
244
  FormulaPicker.prototype.handleClick = function () {
245
+ return __awaiter(this, void 0, void 0, function () {
246
+ return __generator(this, function (_a) {
247
+ return [2 /*return*/, this.openEditor(this.value2EditorValue(this.props))];
248
+ });
249
+ });
250
+ };
251
+ FormulaPicker.prototype.openEditor = function (editorValue, onConfirm) {
200
252
  var _a, _b;
201
253
  return __awaiter(this, void 0, void 0, function () {
202
- var _c, state, _d;
254
+ var state, _c, _d;
203
255
  return __generator(this, function (_e) {
204
256
  switch (_e.label) {
205
257
  case 0:
206
- _c = this.props, _c.variables, _c.data;
207
- _d = [{}];
258
+ _c = [{}];
208
259
  return [4 /*yield*/, ((_b = (_a = this.props).onPickerOpen) === null || _b === void 0 ? void 0 : _b.call(_a, this.props))];
209
260
  case 1:
210
- state = __assign.apply(void 0, [__assign.apply(void 0, _d.concat([(_e.sent())])), { editorValue: this.value2EditorValue(this.props), isOpened: true }]);
261
+ state = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_e.sent())])), { editorValue: editorValue, isOpened: true, onConfirm: onConfirm }]);
262
+ if (!state.functions) return [3 /*break*/, 3];
263
+ _d = state;
264
+ return [4 /*yield*/, this.buildFunctions(state.functions, false)];
265
+ case 2:
266
+ _d.functions = _e.sent();
267
+ _e.label = 3;
268
+ case 3:
211
269
  this.setState(state);
212
270
  return [2 /*return*/];
213
271
  }
@@ -256,7 +314,8 @@ var FormulaPicker = /** @class */ (function (_super) {
256
314
  try {
257
315
  value &&
258
316
  parse(value, {
259
- evalMode: this.props.mixedMode ? true : this.props.evalMode,
317
+ // mixedMode 值是模版, ${} 包裹表达式
318
+ evalMode: this.props.mixedMode ? false : this.props.evalMode,
260
319
  allowFilter: false
261
320
  });
262
321
  return true;
@@ -271,19 +330,22 @@ var FormulaPicker = /** @class */ (function (_super) {
271
330
  };
272
331
  FormulaPicker.prototype.render = function () {
273
332
  var _a, _b, _c;
274
- var _d, _e, _f, _g, _h, _j;
275
- var _k = this.props, cx = _k.classnames, __ = _k.translate, disabled = _k.disabled, _l = _k.allowInput, allowInput = _l === void 0 ? true : _l, className = _k.className, style = _k.style; _k.onChange; _k.size; var borderMode = _k.borderMode, placeholder = _k.placeholder, _m = _k.mode, mode = _m === void 0 ? 'input-button' : _m, btnLabel = _k.btnLabel, level = _k.level, btnSize = _k.btnSize, icon = _k.icon, title = _k.title, clearable = _k.clearable, functions = _k.functions, children = _k.children, variableMode = _k.variableMode, mixedMode = _k.mixedMode, evalMode = _k.evalMode, popOverContainer = _k.popOverContainer, mobileUI = _k.mobileUI, inputSettings = _k.inputSettings, rest = __rest(_k, ["classnames", "translate", "disabled", "allowInput", "className", "style", "onChange", "size", "borderMode", "placeholder", "mode", "btnLabel", "level", "btnSize", "icon", "title", "clearable", "functions", "children", "variableMode", "mixedMode", "evalMode", "popOverContainer", "mobileUI", "inputSettings"]);
276
- var _o = this.state, isOpened = _o.isOpened, value = _o.value, editorValue = _o.editorValue, isError = _o.isError;
333
+ var _d, _e, _f, _g, _h, _j, _k, _l;
334
+ var _m = this.props, cx = _m.classnames, __ = _m.translate, disabled = _m.disabled, className = _m.className, style = _m.style; _m.onChange; _m.size; var borderMode = _m.borderMode, placeholder = _m.placeholder, _o = _m.mode, mode = _o === void 0 ? 'input-button' : _o, btnLabel = _m.btnLabel, level = _m.level, btnSize = _m.btnSize, icon = _m.icon, title = _m.title, clearable = _m.clearable, functions = _m.functions, children = _m.children, variableMode = _m.variableMode, mixedMode = _m.mixedMode, evalMode = _m.evalMode, popOverContainer = _m.popOverContainer, mobileUI = _m.mobileUI, inputSettings = _m.inputSettings, customInputRender = _m.customInputRender, rest = __rest(_m, ["classnames", "translate", "disabled", "className", "style", "onChange", "size", "borderMode", "placeholder", "mode", "btnLabel", "level", "btnSize", "icon", "title", "clearable", "functions", "children", "variableMode", "mixedMode", "evalMode", "popOverContainer", "mobileUI", "inputSettings", "customInputRender"]);
335
+ var _p = this.state, isOpened = _p.isOpened, value = _p.value, editorValue = _p.editorValue, isError = _p.isError;
277
336
  var iconElement = React__default.createElement(Icon, { cx: cx, icon: icon, className: "Icon" });
278
337
  return (React__default.createElement(React__default.Fragment, null,
279
338
  children ? (children({
280
339
  isOpened: this.state.isOpened,
281
340
  onClick: this.handleClick,
282
- setState: this.updateState
341
+ setState: this.updateState,
342
+ value: value,
343
+ onChange: this.handleInputChange,
344
+ disabled: disabled
283
345
  })) : (React__default.createElement("div", { className: cx('FormulaPicker', mode === 'input-group' ? 'is-input-group' : '', {
284
346
  'FormulaPicker--text': this.isTextInput()
285
347
  }, className), style: style },
286
- mode === 'button' && (React__default.createElement(Button, { className: cx('FormulaPicker-action', 'w-full'), level: level, size: btnSize, onClick: this.handleClick },
348
+ mode === 'button' && (React__default.createElement(Button, { className: cx('FormulaPicker-action', 'w-full'), level: level, size: btnSize, active: !!value, onClick: this.handleClick },
287
349
  iconElement ? (React__default.cloneElement(iconElement, {
288
350
  className: cx((_e = (_d = iconElement === null || iconElement === void 0 ? void 0 : iconElement.props) === null || _d === void 0 ? void 0 : _d.className) !== null && _e !== void 0 ? _e : '', 'FormulaPicker-icon', (_a = {},
289
351
  _a['is-filled'] = !!value,
@@ -293,25 +355,23 @@ var FormulaPicker = /** @class */ (function (_super) {
293
355
  _b)) })),
294
356
  React__default.createElement("span", { className: cx('FormulaPicker-label') }, __(btnLabel || 'FormulaEditor.btnLabel')))),
295
357
  mode === 'input-button' && (React__default.createElement(React__default.Fragment, null,
296
- React__default.createElement(ResultBox, { className: cx('FormulaPicker-input', isOpened ? 'is-active' : '', !!isError ? 'is-error' : ''), allowInput: allowInput, clearable: clearable, value: value, result: allowInput
297
- ? void 0
298
- : FormulaEditor.highlightValue(value, this.state.variables, this.props.evalMode), itemRender: this.renderFormulaValue, onResultChange: noop, onChange: this.handleInputChange, disabled: disabled, borderMode: borderMode, placeholder: placeholder }),
358
+ React__default.createElement(FormulaInput, { className: cx('FormulaPicker-input', isOpened ? 'is-active' : '', !!isError ? 'is-error' : ''), inputSettings: inputSettings, customInputRender: customInputRender, clearable: clearable, evalMode: mixedMode ? false : evalMode, variables: this.state.variables, functions: (_f = this.state.functions) !== null && _f !== void 0 ? _f : functions, value: value, onChange: this.handleInputChange, disabled: disabled, borderMode: borderMode, placeholder: placeholder }),
299
359
  React__default.createElement(Button, { className: cx('FormulaPicker-action'), onClick: this.handleClick },
300
360
  React__default.createElement(Icon, { icon: "function", className: cx('FormulaPicker-icon', 'icon', (_c = {},
301
361
  _c['is-filled'] = !!value,
302
362
  _c)) })))),
303
363
  mode === 'input-group' && (React__default.createElement(React__default.Fragment, null,
304
- React__default.createElement(FormulaInput, { className: cx('FormulaPicker-input', isOpened ? 'is-active' : '', !!isError ? 'is-error' : ''), inputSettings: inputSettings, allowInput: allowInput, clearable: clearable, evalMode: evalMode, mixedMode: mixedMode, variables: this.state.variables, value: value, itemRender: this.renderFormulaValue, onChange: this.handleInputChange, disabled: disabled, borderMode: borderMode, placeholder: placeholder }),
364
+ React__default.createElement(FormulaInput, { className: cx('FormulaPicker-input', isOpened ? 'is-active' : '', !!isError ? 'is-error' : ''), inputSettings: inputSettings, customInputRender: customInputRender, clearable: clearable, evalMode: mixedMode ? false : evalMode, variables: this.state.variables, functions: (_g = this.state.functions) !== null && _g !== void 0 ? _g : functions, value: value, onChange: this.handleInputChange, disabled: disabled, borderMode: borderMode, placeholder: placeholder }),
305
365
  React__default.createElement("a", { className: cx("FormulaPicker-toggler"), onClick: this.handleClick },
306
366
  React__default.createElement(Icon, { icon: "function", className: "icon" })))))),
307
367
  mobileUI ? (React__default.createElement(PopUp, { className: cx("FormulaPicker-popup"), isShow: this.state.isOpened, showConfirm: true, onHide: this.close, onConfirm: this.handleEditorConfirm, container: popOverContainer },
308
368
  React__default.createElement("div", { className: cx('FormulaPicker-popup-inner') },
309
- React__default.createElement(Editor, __assign({}, rest, { evalMode: mixedMode ? true : evalMode, variables: this.state.variables, functions: (_f = this.state.functions) !== null && _f !== void 0 ? _f : functions, variableMode: (_g = this.state.variableMode) !== null && _g !== void 0 ? _g : variableMode, value: editorValue, onChange: this.handleEditorChange, selfVariableName: this.props.selfVariableName })),
369
+ React__default.createElement(Editor, __assign({}, rest, { evalMode: mixedMode ? true : evalMode, variables: this.state.variables, functions: (_h = this.state.functions) !== null && _h !== void 0 ? _h : functions, variableMode: (_j = this.state.variableMode) !== null && _j !== void 0 ? _j : variableMode, value: editorValue, onChange: this.handleEditorChange, selfVariableName: this.props.selfVariableName })),
310
370
  !!isError ? (React__default.createElement("div", { className: cx('Dialog-info'), key: "info" },
311
371
  React__default.createElement("span", { className: cx('Dialog-error') }, __('FormulaEditor.invalidData', { err: isError })))) : null))) : (React__default.createElement(FinalModal, { size: "lg", closeOnEsc: true, show: this.state.isOpened, onHide: this.close, container: popOverContainer },
312
372
  React__default.createElement(FinalModal.Header, { onClose: this.close, className: "font-bold" }, __(title || 'FormulaEditor.title')),
313
373
  React__default.createElement(FinalModal.Body, null,
314
- React__default.createElement(Editor, __assign({}, rest, { evalMode: mixedMode ? true : evalMode, variables: this.state.variables, functions: (_h = this.state.functions) !== null && _h !== void 0 ? _h : functions, variableMode: (_j = this.state.variableMode) !== null && _j !== void 0 ? _j : variableMode, value: editorValue, onChange: this.handleEditorChange, selfVariableName: this.props.selfVariableName }))),
374
+ React__default.createElement(Editor, __assign({}, rest, { evalMode: mixedMode ? true : evalMode, variables: this.state.variables, functions: (_k = this.state.functions) !== null && _k !== void 0 ? _k : functions, variableMode: (_l = this.state.variableMode) !== null && _l !== void 0 ? _l : variableMode, value: editorValue, onChange: this.handleEditorChange, selfVariableName: this.props.selfVariableName }))),
315
375
  React__default.createElement(FinalModal.Footer, null,
316
376
  !!isError ? (React__default.createElement("div", { className: cx('Dialog-info'), key: "info" },
317
377
  React__default.createElement("span", { className: cx('Dialog-error') }, __('FormulaEditor.invalidData', { err: isError })))) : null,
@@ -327,12 +387,6 @@ var FormulaPicker = /** @class */ (function (_super) {
327
387
  __metadata("design:paramtypes", []),
328
388
  __metadata("design:returntype", void 0)
329
389
  ], FormulaPicker.prototype, "handleConfirm", null);
330
- __decorate([
331
- autobind,
332
- __metadata("design:type", Function),
333
- __metadata("design:paramtypes", [Object]),
334
- __metadata("design:returntype", void 0)
335
- ], FormulaPicker.prototype, "renderFormulaValue", null);
336
390
  __decorate([
337
391
  autobind,
338
392
  __metadata("design:type", Function),
@@ -363,6 +417,12 @@ var FormulaPicker = /** @class */ (function (_super) {
363
417
  __metadata("design:paramtypes", []),
364
418
  __metadata("design:returntype", Promise)
365
419
  ], FormulaPicker.prototype, "handleClick", null);
420
+ __decorate([
421
+ autobind,
422
+ __metadata("design:type", Function),
423
+ __metadata("design:paramtypes", [String, Function]),
424
+ __metadata("design:returntype", Promise)
425
+ ], FormulaPicker.prototype, "openEditor", null);
366
426
  __decorate([
367
427
  autobind,
368
428
  __metadata("design:type", Function),
@@ -1,7 +1,7 @@
1
1
  /// <reference types="hoist-non-react-statics" />
2
2
  import React from 'react';
3
3
  import { ThemeProps } from 'amis-core';
4
- import type { VariableItem } from './Editor';
4
+ import type { VariableItem } from './CodeEditor';
5
5
  import type { ItemRenderStates } from '../Selection';
6
6
  import type { Option } from '../Select';
7
7
  import type { TabsMode } from '../Tabs';
@@ -1,11 +1,11 @@
1
1
  /**
2
- * amis-ui v6.2.2
2
+ * amis-ui v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
6
6
  import { __read, __assign } from 'tslib';
7
- import React__default, { useEffect } from 'react';
8
- import { themeable, filterTree } from 'amis-core';
7
+ import React__default from 'react';
8
+ import { themeable, mapTree, filterTree } from 'amis-core';
9
9
  import GroupedSelection from '../GroupedSelection.js';
10
10
  import ThemedTabs, { Tab } from '../Tabs.js';
11
11
  import TreeSelection from '../TreeSelection.js';
@@ -65,14 +65,28 @@ var memberOpers = [
65
65
  ];
66
66
  function VariableList(props) {
67
67
  var variableListRef = React__default.useRef(null);
68
- var list = props.data, className = props.className, cx = props.classnames, _a = props.tabsMode, tabsMode = _a === void 0 ? 'line' : _a, themePrefix = props.classPrefix, itemClassName = props.itemClassName, selectMode = props.selectMode, onSelect = props.onSelect, placeholderRender = props.placeholderRender, selfVariableName = props.selfVariableName, expandTree = props.expandTree;
69
- var _b = __read(React__default.useState(list), 2), filterVars = _b[0], setFilterVars = _b[1];
68
+ var className = props.className, cx = props.classnames, _a = props.tabsMode, tabsMode = _a === void 0 ? 'line' : _a, themePrefix = props.classPrefix, itemClassName = props.itemClassName, selectMode = props.selectMode, onSelect = props.onSelect, placeholderRender = props.placeholderRender, selfVariableName = props.selfVariableName, expandTree = props.expandTree;
69
+ var _b = __read(React__default.useState([]), 2), variables = _b[0], setVariables = _b[1];
70
+ var _c = __read(React__default.useState([]), 2), filterVars = _c[0], setFilterVars = _c[1];
70
71
  var classPrefix = "".concat(themePrefix, "FormulaEditor-VariableList");
71
- useEffect(function () {
72
- var data = props.data;
73
- if (data) {
74
- setFilterVars(data);
75
- }
72
+ React__default.useEffect(function () {
73
+ // 追加path,用于分级高亮
74
+ var list = mapTree(props.data, function (item, key, level, paths) {
75
+ var _a;
76
+ var path = paths === null || paths === void 0 ? void 0 : paths.reduce(function (prev, item) {
77
+ var _a;
78
+ return !item.value
79
+ ? prev
80
+ : "".concat(prev).concat(prev ? '.' : '').concat((_a = item.label) !== null && _a !== void 0 ? _a : item.value);
81
+ }, '');
82
+ return __assign(__assign(__assign({}, item), { path: "".concat(path).concat(path ? '.' : '').concat(item.label) }), (item.isMember || paths.some(function (item) { return item.isMember; })
83
+ ? {
84
+ memberDepth: (_a = paths === null || paths === void 0 ? void 0 : paths.filter(function (item) { return item.type === 'array'; })) === null || _a === void 0 ? void 0 : _a.length
85
+ }
86
+ : {}));
87
+ });
88
+ setVariables(list);
89
+ setFilterVars(list);
76
90
  }, [props.data]);
77
91
  var itemRender = props.itemRender && typeof props.itemRender === 'function'
78
92
  ? props.itemRender
@@ -126,14 +140,14 @@ function VariableList(props) {
126
140
  onSelect === null || onSelect === void 0 ? void 0 : onSelect(__assign(__assign({}, item), { label: value, value: value }));
127
141
  }
128
142
  function onSearch(term) {
129
- var tree = filterTree(list, function (i, key, level, paths) {
143
+ var tree = filterTree(variables, function (i, key, level, paths) {
130
144
  return !!((Array.isArray(i.children) && i.children.length) ||
131
145
  !!matchSorter([i].concat(paths), term, {
132
146
  keys: ['label', 'value'],
133
147
  threshold: matchSorter.rankings.CONTAINS
134
148
  }).length);
135
149
  }, 1, true);
136
- setFilterVars(!term ? list : tree);
150
+ setFilterVars(!term ? variables : tree);
137
151
  }
138
152
  function renderSearchBox() {
139
153
  return (React__default.createElement("div", { className: cx('FormulaEditor-VariableList-searchBox') },
@@ -2,14 +2,33 @@
2
2
  * @file 扩展 codemirror
3
3
  */
4
4
  import type CodeMirror from 'codemirror';
5
- import { FormulaEditorProps, VariableItem } from './Editor';
5
+ import { FuncGroup, VariableItem } from './CodeEditor';
6
6
  export declare function editorFactory(dom: HTMLElement, cm: typeof CodeMirror, props: any, options?: any): CodeMirror.Editor;
7
7
  export declare class FormulaPlugin {
8
8
  readonly editor: CodeMirror.Editor;
9
9
  readonly cm: typeof CodeMirror;
10
- readonly getProps: () => FormulaEditorProps;
11
- constructor(editor: CodeMirror.Editor, cm: typeof CodeMirror, getProps: () => FormulaEditorProps);
12
- autoMarkText(): void;
10
+ /**
11
+ * 用于提示的变量集合,默认为空
12
+ */
13
+ variables: Array<VariableItem>;
14
+ /**
15
+ * 函数集合,默认不需要传,即 amis-formula 里面那个函数
16
+ * 如果有扩充,则需要传。
17
+ */
18
+ functions: Array<FuncGroup>;
19
+ /**
20
+ * evalMode 即直接就是表达式,否则就是混合模式
21
+ */
22
+ evalMode: boolean;
23
+ highlightMode: 'expression' | 'formula';
24
+ disableAutoMark: boolean;
25
+ constructor(editor: CodeMirror.Editor, cm: typeof CodeMirror);
26
+ setVariables(variables: Array<VariableItem>): void;
27
+ setFunctions(functions: Array<FuncGroup>): void;
28
+ setEvalMode(evalMode: boolean): void;
29
+ setHighlightMode(highlightMode: 'expression' | 'formula'): void;
30
+ setDisableAutoMark(disableAutoMark: boolean): void;
31
+ autoMarkText(forceClear?: boolean): void;
13
32
  computedBracesPosition(exp: string): {
14
33
  begin: number;
15
34
  end: number;
@@ -19,11 +38,13 @@ export declare class FormulaPlugin {
19
38
  end: number;
20
39
  }[]): boolean;
21
40
  insertBraces(originFrom: CodeMirror.Position, originTo: CodeMirror.Position): void;
22
- insertContent(value: any, type?: 'variable' | 'func', className?: string, toMark?: boolean): void;
41
+ insertContent(value: any, type?: 'variable' | 'func'): void;
23
42
  setValue(value: string): void;
24
43
  getValue(): string;
25
- markText(from: CodeMirror.Position, to: CodeMirror.Position, label: string, className?: string): void;
26
- autoMark(variables: Array<VariableItem>): void;
44
+ markText(from: CodeMirror.Position, to: CodeMirror.Position, label: string, className?: string, rawString?: string): CodeMirror.TextMarker<CodeMirror.MarkerRange>;
45
+ widgets: any[];
46
+ marks: any[];
47
+ autoMark(): void;
27
48
  focus(value: string): void;
28
49
  dispose(): void;
29
50
  validate(): void;