amis 2.3.2-beta.1 → 2.4.1-beta.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (472) hide show
  1. package/esm/Schema.d.ts +6 -2
  2. package/esm/compat.js +1 -1
  3. package/esm/index.d.ts +6 -0
  4. package/esm/index.js +7 -1
  5. package/esm/preset.js +1 -1
  6. package/esm/renderers/Action.js +18 -19
  7. package/esm/renderers/Alert.js +1 -1
  8. package/esm/renderers/AnchorNav.js +1 -1
  9. package/esm/renderers/App.js +1 -1
  10. package/esm/renderers/Audio.js +1 -1
  11. package/esm/renderers/Avatar.js +1 -1
  12. package/esm/renderers/BarCode.js +1 -1
  13. package/esm/renderers/Breadcrumb.js +1 -1
  14. package/esm/renderers/ButtonGroup.js +1 -1
  15. package/esm/renderers/CRUD.d.ts +5 -5
  16. package/esm/renderers/CRUD.js +28 -21
  17. package/esm/renderers/CRUD2.js +1 -1
  18. package/esm/renderers/Calendar.js +1 -1
  19. package/esm/renderers/Card.js +1 -1
  20. package/esm/renderers/Card2.js +1 -1
  21. package/esm/renderers/Cards.js +1 -1
  22. package/esm/renderers/Carousel.js +1 -1
  23. package/esm/renderers/Chart.d.ts +16 -2
  24. package/esm/renderers/Chart.js +82 -18
  25. package/esm/renderers/Code.d.ts +26 -6
  26. package/esm/renderers/Code.js +112 -48
  27. package/esm/renderers/Collapse.js +7 -5
  28. package/esm/renderers/CollapseGroup.js +1 -1
  29. package/esm/renderers/Color.js +2 -2
  30. package/esm/renderers/Container.js +1 -1
  31. package/esm/renderers/Copyable.js +1 -1
  32. package/esm/renderers/Custom.js +1 -1
  33. package/esm/renderers/Date.js +1 -1
  34. package/esm/renderers/DateRange.d.ts +37 -0
  35. package/esm/renderers/DateRange.js +57 -0
  36. package/esm/renderers/Dialog.js +1 -1
  37. package/esm/renderers/Divider.js +1 -1
  38. package/esm/renderers/Drawer.js +1 -1
  39. package/esm/renderers/DropDownButton.js +3 -3
  40. package/esm/renderers/Each.js +1 -1
  41. package/esm/renderers/Flex.js +1 -1
  42. package/esm/renderers/Form/ButtonGroupSelect.js +8 -1
  43. package/esm/renderers/Form/ButtonToolbar.js +1 -1
  44. package/esm/renderers/Form/ChainedSelect.d.ts +1 -0
  45. package/esm/renderers/Form/ChainedSelect.js +40 -2
  46. package/esm/renderers/Form/ChartRadios.d.ts +2 -1
  47. package/esm/renderers/Form/ChartRadios.js +29 -2
  48. package/esm/renderers/Form/Checkbox.d.ts +1 -0
  49. package/esm/renderers/Form/Checkbox.js +12 -1
  50. package/esm/renderers/Form/Checkboxes.js +8 -1
  51. package/esm/renderers/Form/Combo.d.ts +3 -1
  52. package/esm/renderers/Form/Combo.js +75 -75
  53. package/esm/renderers/Form/ConditionBuilder.js +1 -1
  54. package/esm/renderers/Form/Control.js +1 -1
  55. package/esm/renderers/Form/DiffEditor.d.ts +7 -0
  56. package/esm/renderers/Form/DiffEditor.js +1 -1
  57. package/esm/renderers/Form/Editor.d.ts +3 -1
  58. package/esm/renderers/Form/Editor.js +1 -1
  59. package/esm/renderers/Form/FieldSet.js +1 -1
  60. package/esm/renderers/Form/Formula.js +1 -1
  61. package/esm/renderers/Form/Group.js +4 -3
  62. package/esm/renderers/Form/Hidden.js +1 -1
  63. package/esm/renderers/Form/IconPicker.js +2 -2
  64. package/esm/renderers/Form/IconPickerIcons.js +1 -1
  65. package/esm/renderers/Form/IconSelect.d.ts +52 -0
  66. package/esm/renderers/Form/IconSelect.js +282 -0
  67. package/esm/renderers/Form/IconSelectStore.d.ts +19 -0
  68. package/esm/renderers/Form/IconSelectStore.js +69 -0
  69. package/esm/renderers/Form/InputArray.d.ts +4 -0
  70. package/esm/renderers/Form/InputArray.js +12 -5
  71. package/esm/renderers/Form/InputCity.d.ts +96 -65
  72. package/esm/renderers/Form/InputCity.js +95 -46
  73. package/esm/renderers/Form/InputColor.js +10 -3
  74. package/esm/renderers/Form/InputDate.js +8 -1
  75. package/esm/renderers/Form/InputDateRange.js +8 -1
  76. package/esm/renderers/Form/InputExcel.js +1 -1
  77. package/esm/renderers/Form/InputFile.js +1 -1
  78. package/esm/renderers/Form/InputFormula.js +1 -1
  79. package/esm/renderers/Form/InputGroup.js +1 -1
  80. package/esm/renderers/Form/InputImage.js +1 -1
  81. package/esm/renderers/Form/InputMonthRange.js +9 -2
  82. package/esm/renderers/Form/InputNumber.d.ts +5 -0
  83. package/esm/renderers/Form/InputNumber.js +34 -15
  84. package/esm/renderers/Form/InputQuarterRange.js +9 -2
  85. package/esm/renderers/Form/InputRange.d.ts +3 -4
  86. package/esm/renderers/Form/InputRange.js +16 -9
  87. package/esm/renderers/Form/InputRating.d.ts +1 -0
  88. package/esm/renderers/Form/InputRating.js +38 -4
  89. package/esm/renderers/Form/InputRepeat.js +1 -1
  90. package/esm/renderers/Form/InputRichText.js +1 -1
  91. package/esm/renderers/Form/InputSubForm.js +1 -1
  92. package/esm/renderers/Form/InputTable.d.ts +3 -1
  93. package/esm/renderers/Form/InputTable.js +39 -17
  94. package/esm/renderers/Form/InputTag.js +8 -1
  95. package/esm/renderers/Form/InputText.d.ts +3 -0
  96. package/esm/renderers/Form/InputText.js +64 -34
  97. package/esm/renderers/Form/InputTree.js +8 -1
  98. package/esm/renderers/Form/InputYearRange.js +9 -2
  99. package/esm/renderers/Form/JSONSchema.js +1 -1
  100. package/esm/renderers/Form/JSONSchemaEditor.js +1 -1
  101. package/esm/renderers/Form/ListSelect.d.ts +1 -0
  102. package/esm/renderers/Form/ListSelect.js +36 -2
  103. package/esm/renderers/Form/LocationPicker.d.ts +10 -0
  104. package/esm/renderers/Form/LocationPicker.js +82 -5
  105. package/esm/renderers/Form/MatrixCheckboxes.d.ts +2 -1
  106. package/esm/renderers/Form/MatrixCheckboxes.js +20 -4
  107. package/esm/renderers/Form/NestedSelect.js +8 -1
  108. package/esm/renderers/Form/Picker.js +26 -4
  109. package/esm/renderers/Form/Radios.js +8 -1
  110. package/esm/renderers/Form/Select.js +8 -1
  111. package/esm/renderers/Form/Static.js +1 -1
  112. package/esm/renderers/Form/StaticHoc.d.ts +5 -0
  113. package/esm/renderers/Form/StaticHoc.js +107 -0
  114. package/esm/renderers/Form/Switch.d.ts +6 -0
  115. package/esm/renderers/Form/Switch.js +30 -7
  116. package/esm/renderers/Form/TabsTransfer.js +8 -1
  117. package/esm/renderers/Form/TabsTransferPicker.js +8 -1
  118. package/esm/renderers/Form/Textarea.d.ts +1 -0
  119. package/esm/renderers/Form/Textarea.js +17 -1
  120. package/esm/renderers/Form/Transfer.js +14 -5
  121. package/esm/renderers/Form/TransferPicker.js +8 -1
  122. package/esm/renderers/Form/TreeSelect.js +8 -1
  123. package/esm/renderers/Form/UUID.js +1 -1
  124. package/esm/renderers/Form/UserSelect.js +1 -1
  125. package/esm/renderers/Grid.js +1 -1
  126. package/esm/renderers/Grid2D.js +1 -1
  127. package/esm/renderers/GridNav.js +1 -1
  128. package/esm/renderers/HBox.js +1 -1
  129. package/esm/renderers/IFrame.d.ts +2 -0
  130. package/esm/renderers/IFrame.js +18 -4
  131. package/esm/renderers/Icon.d.ts +3 -3
  132. package/esm/renderers/Icon.js +12 -3
  133. package/esm/renderers/Image.js +1 -1
  134. package/esm/renderers/Images.js +1 -1
  135. package/esm/renderers/Json.js +1 -1
  136. package/esm/renderers/Link.js +1 -1
  137. package/esm/renderers/List.d.ts +6 -5
  138. package/esm/renderers/List.js +35 -21
  139. package/esm/renderers/Log.js +1 -1
  140. package/esm/renderers/Mapping.js +1 -1
  141. package/esm/renderers/Markdown.js +1 -1
  142. package/esm/renderers/MultilineText.d.ts +35 -0
  143. package/esm/renderers/MultilineText.js +36 -0
  144. package/esm/renderers/Nav.d.ts +10 -10
  145. package/esm/renderers/Nav.js +1 -1
  146. package/esm/renderers/Operation.js +1 -1
  147. package/esm/renderers/Page.js +1 -1
  148. package/esm/renderers/Pagination.js +1 -1
  149. package/esm/renderers/PaginationWrapper.js +1 -1
  150. package/esm/renderers/Panel.js +3 -3
  151. package/esm/renderers/Password.d.ts +30 -0
  152. package/esm/renderers/Password.js +54 -0
  153. package/esm/renderers/Plain.js +1 -1
  154. package/esm/renderers/PopOver.js +1 -1
  155. package/esm/renderers/Portlet.js +1 -1
  156. package/esm/renderers/Progress.js +1 -1
  157. package/esm/renderers/Property.js +1 -1
  158. package/esm/renderers/QRCode.js +1 -1
  159. package/esm/renderers/QuickEdit.js +5 -3
  160. package/esm/renderers/Remark.js +3 -3
  161. package/esm/renderers/SearchBox.js +1 -1
  162. package/esm/renderers/Service.js +1 -1
  163. package/esm/renderers/SparkLine.js +1 -1
  164. package/esm/renderers/Spinner.js +1 -1
  165. package/esm/renderers/Status.js +1 -1
  166. package/esm/renderers/Steps.js +1 -1
  167. package/esm/renderers/Table/ColumnToggler.js +2 -2
  168. package/esm/renderers/Table/HeadCellFilterDropdown.js +1 -1
  169. package/esm/renderers/Table/HeadCellSearchDropdown.js +1 -1
  170. package/esm/renderers/Table/ItemActionsWrapper.js +1 -1
  171. package/esm/renderers/Table/TableBody.js +1 -1
  172. package/esm/renderers/Table/TableCell.js +1 -1
  173. package/esm/renderers/Table/TableContent.js +1 -1
  174. package/esm/renderers/Table/TableRow.d.ts +1 -1
  175. package/esm/renderers/Table/TableRow.js +6 -4
  176. package/esm/renderers/Table/exportExcel.js +51 -40
  177. package/esm/renderers/Table/index.js +4 -4
  178. package/esm/renderers/Table2/ColumnToggler.js +1 -1
  179. package/esm/renderers/Table2/HeadCellSearchDropdown.js +1 -1
  180. package/esm/renderers/Table2/TableCell.js +1 -1
  181. package/esm/renderers/Table2/index.js +3 -3
  182. package/esm/renderers/TableView.js +1 -1
  183. package/esm/renderers/Tabs.js +1 -1
  184. package/esm/renderers/Tag.js +1 -1
  185. package/esm/renderers/Tasks.js +2 -2
  186. package/esm/renderers/Timeline.js +3 -2
  187. package/esm/renderers/TooltipWrapper.js +1 -1
  188. package/esm/renderers/Tpl.js +1 -1
  189. package/esm/renderers/VBox.js +1 -1
  190. package/esm/renderers/Video.js +1 -1
  191. package/esm/renderers/WebComponent.js +1 -1
  192. package/esm/renderers/Wizard.js +1 -1
  193. package/esm/renderers/Words.d.ts +69 -0
  194. package/esm/renderers/Words.js +163 -0
  195. package/esm/renderers/Wrapper.js +1 -1
  196. package/esm/schemaExtend.js +1 -1
  197. package/lib/Schema.d.ts +6 -2
  198. package/lib/compat.js +1 -1
  199. package/lib/helper.css +3 -0
  200. package/lib/index.d.ts +6 -0
  201. package/lib/index.js +18 -1
  202. package/lib/preset.js +1 -1
  203. package/lib/renderers/Action.js +18 -19
  204. package/lib/renderers/Alert.js +1 -1
  205. package/lib/renderers/AnchorNav.js +1 -1
  206. package/lib/renderers/App.js +1 -1
  207. package/lib/renderers/Audio.js +1 -1
  208. package/lib/renderers/Avatar.js +1 -1
  209. package/lib/renderers/BarCode.js +1 -1
  210. package/lib/renderers/Breadcrumb.js +1 -1
  211. package/lib/renderers/ButtonGroup.js +1 -1
  212. package/lib/renderers/CRUD.d.ts +5 -5
  213. package/lib/renderers/CRUD.js +28 -21
  214. package/lib/renderers/CRUD2.js +1 -1
  215. package/lib/renderers/Calendar.js +1 -1
  216. package/lib/renderers/Card.js +1 -1
  217. package/lib/renderers/Card2.js +1 -1
  218. package/lib/renderers/Cards.js +1 -1
  219. package/lib/renderers/Carousel.js +1 -1
  220. package/lib/renderers/Chart.d.ts +16 -2
  221. package/lib/renderers/Chart.js +81 -16
  222. package/lib/renderers/Code.d.ts +26 -6
  223. package/lib/renderers/Code.js +111 -47
  224. package/lib/renderers/Collapse.js +6 -4
  225. package/lib/renderers/CollapseGroup.js +1 -1
  226. package/lib/renderers/Color.js +2 -2
  227. package/lib/renderers/Container.js +1 -1
  228. package/lib/renderers/Copyable.js +1 -1
  229. package/lib/renderers/Custom.js +1 -1
  230. package/lib/renderers/Date.js +1 -1
  231. package/lib/renderers/DateRange.d.ts +37 -0
  232. package/lib/renderers/DateRange.js +66 -0
  233. package/lib/renderers/Dialog.d.ts +40 -41
  234. package/lib/renderers/Dialog.js +1 -1
  235. package/lib/renderers/Divider.js +1 -1
  236. package/lib/renderers/Drawer.js +1 -1
  237. package/lib/renderers/DropDownButton.js +3 -3
  238. package/lib/renderers/Each.js +1 -1
  239. package/lib/renderers/Flex.js +1 -1
  240. package/lib/renderers/Form/ButtonGroupSelect.js +8 -1
  241. package/lib/renderers/Form/ButtonToolbar.js +1 -1
  242. package/lib/renderers/Form/ChainedSelect.d.ts +1 -0
  243. package/lib/renderers/Form/ChainedSelect.js +40 -1
  244. package/lib/renderers/Form/ChartRadios.d.ts +2 -1
  245. package/lib/renderers/Form/ChartRadios.js +29 -2
  246. package/lib/renderers/Form/Checkbox.d.ts +1 -0
  247. package/lib/renderers/Form/Checkbox.js +12 -1
  248. package/lib/renderers/Form/Checkboxes.js +8 -1
  249. package/lib/renderers/Form/Combo.d.ts +3 -1
  250. package/lib/renderers/Form/Combo.js +75 -75
  251. package/lib/renderers/Form/ConditionBuilder.js +1 -1
  252. package/lib/renderers/Form/Control.js +1 -1
  253. package/lib/renderers/Form/DiffEditor.d.ts +9 -3
  254. package/lib/renderers/Form/DiffEditor.js +1 -1
  255. package/lib/renderers/Form/Editor.d.ts +4 -2
  256. package/lib/renderers/Form/Editor.js +1 -1
  257. package/lib/renderers/Form/FieldSet.js +1 -1
  258. package/lib/renderers/Form/Formula.js +1 -1
  259. package/lib/renderers/Form/Group.js +4 -3
  260. package/lib/renderers/Form/Hidden.js +1 -1
  261. package/lib/renderers/Form/IconPicker.js +2 -2
  262. package/lib/renderers/Form/IconPickerIcons.js +1 -1
  263. package/lib/renderers/Form/IconSelect.d.ts +52 -0
  264. package/lib/renderers/Form/IconSelect.js +291 -0
  265. package/lib/renderers/Form/IconSelectStore.d.ts +19 -0
  266. package/lib/renderers/Form/IconSelectStore.js +79 -0
  267. package/lib/renderers/Form/InputArray.d.ts +4 -0
  268. package/lib/renderers/Form/InputArray.js +12 -5
  269. package/lib/renderers/Form/InputCity.d.ts +96 -65
  270. package/lib/renderers/Form/InputCity.js +95 -46
  271. package/lib/renderers/Form/InputColor.js +9 -2
  272. package/lib/renderers/Form/InputDate.js +8 -1
  273. package/lib/renderers/Form/InputDateRange.js +8 -1
  274. package/lib/renderers/Form/InputExcel.js +1 -1
  275. package/lib/renderers/Form/InputFile.js +1 -1
  276. package/lib/renderers/Form/InputFormula.js +1 -1
  277. package/lib/renderers/Form/InputGroup.js +1 -1
  278. package/lib/renderers/Form/InputImage.js +1 -1
  279. package/lib/renderers/Form/InputMonthRange.js +8 -1
  280. package/lib/renderers/Form/InputNumber.d.ts +5 -0
  281. package/lib/renderers/Form/InputNumber.js +33 -14
  282. package/lib/renderers/Form/InputQuarterRange.js +8 -1
  283. package/lib/renderers/Form/InputRange.d.ts +3 -4
  284. package/lib/renderers/Form/InputRange.js +16 -9
  285. package/lib/renderers/Form/InputRating.d.ts +1 -0
  286. package/lib/renderers/Form/InputRating.js +37 -3
  287. package/lib/renderers/Form/InputRepeat.js +1 -1
  288. package/lib/renderers/Form/InputRichText.js +1 -1
  289. package/lib/renderers/Form/InputSubForm.js +1 -1
  290. package/lib/renderers/Form/InputTable.d.ts +3 -1
  291. package/lib/renderers/Form/InputTable.js +38 -16
  292. package/lib/renderers/Form/InputTag.js +8 -1
  293. package/lib/renderers/Form/InputText.d.ts +3 -0
  294. package/lib/renderers/Form/InputText.js +64 -34
  295. package/lib/renderers/Form/InputTree.js +8 -1
  296. package/lib/renderers/Form/InputYearRange.js +8 -1
  297. package/lib/renderers/Form/JSONSchema.js +1 -1
  298. package/lib/renderers/Form/JSONSchemaEditor.js +1 -1
  299. package/lib/renderers/Form/ListSelect.d.ts +1 -0
  300. package/lib/renderers/Form/ListSelect.js +35 -1
  301. package/lib/renderers/Form/LocationPicker.d.ts +10 -0
  302. package/lib/renderers/Form/LocationPicker.js +79 -2
  303. package/lib/renderers/Form/MatrixCheckboxes.d.ts +2 -1
  304. package/lib/renderers/Form/MatrixCheckboxes.js +19 -3
  305. package/lib/renderers/Form/NestedSelect.js +8 -1
  306. package/lib/renderers/Form/Picker.js +26 -4
  307. package/lib/renderers/Form/Radios.js +8 -1
  308. package/lib/renderers/Form/Select.js +8 -1
  309. package/lib/renderers/Form/Static.js +1 -1
  310. package/lib/renderers/Form/StaticHoc.d.ts +5 -0
  311. package/lib/renderers/Form/StaticHoc.js +115 -0
  312. package/lib/renderers/Form/Switch.d.ts +6 -0
  313. package/lib/renderers/Form/Switch.js +30 -7
  314. package/lib/renderers/Form/TabsTransfer.js +8 -1
  315. package/lib/renderers/Form/TabsTransferPicker.js +8 -1
  316. package/lib/renderers/Form/Textarea.d.ts +1 -0
  317. package/lib/renderers/Form/Textarea.js +17 -1
  318. package/lib/renderers/Form/Transfer.js +14 -5
  319. package/lib/renderers/Form/TransferPicker.js +8 -1
  320. package/lib/renderers/Form/TreeSelect.js +8 -1
  321. package/lib/renderers/Form/UUID.js +1 -1
  322. package/lib/renderers/Form/UserSelect.js +1 -1
  323. package/lib/renderers/Grid.js +1 -1
  324. package/lib/renderers/Grid2D.js +1 -1
  325. package/lib/renderers/GridNav.js +1 -1
  326. package/lib/renderers/HBox.js +1 -1
  327. package/lib/renderers/IFrame.d.ts +2 -0
  328. package/lib/renderers/IFrame.js +18 -4
  329. package/lib/renderers/Icon.d.ts +3 -3
  330. package/lib/renderers/Icon.js +12 -3
  331. package/lib/renderers/Image.js +1 -1
  332. package/lib/renderers/Images.js +1 -1
  333. package/lib/renderers/Json.js +1 -1
  334. package/lib/renderers/Link.js +1 -1
  335. package/lib/renderers/List.d.ts +6 -5
  336. package/lib/renderers/List.js +36 -22
  337. package/lib/renderers/Log.js +1 -1
  338. package/lib/renderers/Mapping.js +1 -1
  339. package/lib/renderers/Markdown.js +1 -1
  340. package/lib/renderers/MultilineText.d.ts +35 -0
  341. package/lib/renderers/MultilineText.js +44 -0
  342. package/lib/renderers/Nav.d.ts +10 -10
  343. package/lib/renderers/Nav.js +1 -1
  344. package/lib/renderers/Operation.js +1 -1
  345. package/lib/renderers/Page.js +1 -1
  346. package/lib/renderers/Pagination.js +1 -1
  347. package/lib/renderers/PaginationWrapper.js +1 -1
  348. package/lib/renderers/Panel.js +3 -3
  349. package/lib/renderers/Password.d.ts +30 -0
  350. package/lib/renderers/Password.js +62 -0
  351. package/lib/renderers/Plain.js +1 -1
  352. package/lib/renderers/PopOver.js +1 -1
  353. package/lib/renderers/Portlet.js +1 -1
  354. package/lib/renderers/Progress.js +1 -1
  355. package/lib/renderers/Property.js +1 -1
  356. package/lib/renderers/QRCode.js +1 -1
  357. package/lib/renderers/QuickEdit.js +5 -3
  358. package/lib/renderers/Remark.js +2 -2
  359. package/lib/renderers/SearchBox.js +1 -1
  360. package/lib/renderers/Service.js +1 -1
  361. package/lib/renderers/SparkLine.js +1 -1
  362. package/lib/renderers/Spinner.js +1 -1
  363. package/lib/renderers/Status.js +1 -1
  364. package/lib/renderers/Steps.js +1 -1
  365. package/lib/renderers/Table/ColumnToggler.js +2 -2
  366. package/lib/renderers/Table/HeadCellFilterDropdown.js +1 -1
  367. package/lib/renderers/Table/HeadCellSearchDropdown.js +1 -1
  368. package/lib/renderers/Table/ItemActionsWrapper.js +1 -1
  369. package/lib/renderers/Table/TableBody.js +1 -1
  370. package/lib/renderers/Table/TableCell.js +1 -1
  371. package/lib/renderers/Table/TableContent.js +1 -1
  372. package/lib/renderers/Table/TableRow.d.ts +1 -1
  373. package/lib/renderers/Table/TableRow.js +6 -4
  374. package/lib/renderers/Table/exportExcel.js +50 -39
  375. package/lib/renderers/Table/index.js +4 -4
  376. package/lib/renderers/Table2/ColumnToggler.js +1 -1
  377. package/lib/renderers/Table2/HeadCellSearchDropdown.js +1 -1
  378. package/lib/renderers/Table2/TableCell.js +1 -1
  379. package/lib/renderers/Table2/index.js +3 -3
  380. package/lib/renderers/TableView.js +1 -1
  381. package/lib/renderers/Tabs.js +1 -1
  382. package/lib/renderers/Tag.js +1 -1
  383. package/lib/renderers/Tasks.js +2 -2
  384. package/lib/renderers/Timeline.js +3 -2
  385. package/lib/renderers/TooltipWrapper.js +1 -1
  386. package/lib/renderers/Tpl.js +1 -1
  387. package/lib/renderers/VBox.js +1 -1
  388. package/lib/renderers/Video.js +1 -1
  389. package/lib/renderers/WebComponent.js +1 -1
  390. package/lib/renderers/Wizard.js +1 -1
  391. package/lib/renderers/Words.d.ts +69 -0
  392. package/lib/renderers/Words.js +171 -0
  393. package/lib/renderers/Wrapper.js +1 -1
  394. package/lib/schemaExtend.js +1 -1
  395. package/lib/themes/ang-ie11.css +3874 -2955
  396. package/lib/themes/ang.css +1563 -748
  397. package/lib/themes/antd-ie11.css +2567 -1591
  398. package/lib/themes/antd.css +2788 -890
  399. package/lib/themes/cxd-ie11.css +2311 -1595
  400. package/lib/themes/cxd.css +3156 -1537
  401. package/lib/themes/dark-ie11.css +3525 -2606
  402. package/lib/themes/dark.css +1563 -748
  403. package/lib/themes/default-ie11.css +2311 -1595
  404. package/lib/themes/default.css +3156 -1537
  405. package/package.json +7 -7
  406. package/schema.json +6861 -1395
  407. package/sdk/ang-ie11.css +8981 -7712
  408. package/sdk/ang.css +6743 -5575
  409. package/sdk/antd-ie11.css +7705 -6380
  410. package/sdk/antd.css +7983 -5732
  411. package/sdk/barcode.js +50 -50
  412. package/sdk/charts.js +14 -14
  413. package/sdk/codemirror.js +7 -7
  414. package/sdk/color-picker.js +65 -65
  415. package/sdk/cropperjs.js +2 -2
  416. package/sdk/cxd-ie11.css +7528 -6531
  417. package/sdk/cxd.css +8308 -6404
  418. package/sdk/dark-ie11.css +8626 -7357
  419. package/sdk/dark.css +6743 -5575
  420. package/sdk/exceljs.js +1 -1
  421. package/sdk/helper.css +3 -0
  422. package/sdk/locale/de-DE.js +6 -0
  423. package/sdk/markdown.js +68 -68
  424. package/sdk/papaparse.js +1 -1
  425. package/sdk/rest.js +17 -17
  426. package/sdk/rich-text.js +62 -62
  427. package/sdk/sdk-ie11.css +7528 -6531
  428. package/sdk/sdk.css +8308 -6404
  429. package/sdk/sdk.js +1515 -1550
  430. package/sdk/thirds/@fortawesome/fontawesome-free/webfonts/fa-brands-400.ttf +0 -0
  431. package/sdk/thirds/@fortawesome/fontawesome-free/webfonts/fa-brands-400.woff2 +0 -0
  432. package/sdk/thirds/@fortawesome/fontawesome-free/webfonts/fa-regular-400.ttf +0 -0
  433. package/sdk/thirds/@fortawesome/fontawesome-free/webfonts/fa-regular-400.woff2 +0 -0
  434. package/sdk/thirds/@fortawesome/fontawesome-free/webfonts/fa-solid-900.ttf +0 -0
  435. package/sdk/thirds/@fortawesome/fontawesome-free/webfonts/fa-solid-900.woff2 +0 -0
  436. package/sdk/thirds/@fortawesome/fontawesome-free/webfonts/fa-v4compatibility.ttf +0 -0
  437. package/sdk/thirds/@fortawesome/fontawesome-free/webfonts/fa-v4compatibility.woff2 +0 -0
  438. package/sdk/thirds/hls.js/hls.js +1 -1
  439. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  440. package/sdk/tinymce.js +54 -52
  441. package/esm/_virtual/MiniDecimal.js +0 -8
  442. package/esm/_virtual/classCallCheck.js +0 -8
  443. package/esm/_virtual/createClass.js +0 -8
  444. package/esm/_virtual/interopRequireDefault.js +0 -8
  445. package/esm/_virtual/numberUtil.js +0 -8
  446. package/esm/_virtual/supportUtil.js +0 -8
  447. package/esm/node_modules/@babel/runtime/helpers/classCallCheck.js +0 -25
  448. package/esm/node_modules/@babel/runtime/helpers/createClass.js +0 -38
  449. package/esm/node_modules/@babel/runtime/helpers/interopRequireDefault.js +0 -16
  450. package/esm/node_modules/rc-input-number/lib/utils/MiniDecimal.js +0 -345
  451. package/esm/node_modules/rc-input-number/lib/utils/numberUtil.js +0 -146
  452. package/esm/node_modules/rc-input-number/lib/utils/supportUtil.js +0 -25
  453. package/esm/renderers/Table-v2/ColumnToggler.d.ts +0 -19
  454. package/esm/renderers/Table-v2/ColumnToggler.js +0 -88
  455. package/esm/renderers/Table-v2/HeadCellSearchDropdown.d.ts +0 -29
  456. package/esm/renderers/Table-v2/HeadCellSearchDropdown.js +0 -206
  457. package/esm/renderers/Table-v2/TableCell.d.ts +0 -6
  458. package/esm/renderers/Table-v2/TableCell.js +0 -30
  459. package/esm/renderers/Table-v2/index.d.ts +0 -285
  460. package/esm/renderers/Table-v2/index.js +0 -833
  461. package/lib/_virtual/MiniDecimal.js +0 -12
  462. package/lib/_virtual/classCallCheck.js +0 -12
  463. package/lib/_virtual/createClass.js +0 -12
  464. package/lib/_virtual/interopRequireDefault.js +0 -12
  465. package/lib/_virtual/numberUtil.js +0 -12
  466. package/lib/_virtual/supportUtil.js +0 -12
  467. package/lib/node_modules/@babel/runtime/helpers/classCallCheck.js +0 -29
  468. package/lib/node_modules/@babel/runtime/helpers/createClass.js +0 -42
  469. package/lib/node_modules/@babel/runtime/helpers/interopRequireDefault.js +0 -18
  470. package/lib/node_modules/rc-input-number/lib/utils/MiniDecimal.js +0 -349
  471. package/lib/node_modules/rc-input-number/lib/utils/numberUtil.js +0 -150
  472. package/lib/node_modules/rc-input-number/lib/utils/supportUtil.js +0 -29
@@ -1,15 +1,28 @@
1
1
  /**
2
- * amis v2.3.2-beta.1
2
+ * amis v2.4.1-beta.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
6
- import { __extends, __awaiter, __generator, __decorate, __metadata } from 'tslib';
6
+ import { __extends, __awaiter, __generator, __assign, __decorate, __metadata } from 'tslib';
7
7
  import React from 'react';
8
- import { isPureVariable, resolveVariableAndFilter, isApiOutdated, filter, createObject, resizeSensor, isEffectiveApi, normalizeApiResponseData, dataMapping, LazyComponent, ScopedContext, Renderer, ServiceStore, findObjectsWithKey } from 'amis-core';
8
+ import { isPureVariable, resolveVariableAndFilter, isApiOutdated, filter, createObject, resizeSensor, loadScript, isEffectiveApi, normalizeApiResponseData, dataMapping, LazyComponent, ScopedContext, Renderer, ServiceStore, findObjectsWithKey } from 'amis-core';
9
9
  import cx from 'classnames';
10
10
  import { isAlive } from 'mobx-state-tree';
11
11
  import debouce from 'lodash/debounce';
12
+ import pick from 'lodash/pick';
12
13
 
14
+ var DEFAULT_EVENT_PARAMS = [
15
+ 'componentType',
16
+ 'seriesType',
17
+ 'seriesIndex',
18
+ 'seriesName',
19
+ 'name',
20
+ 'dataIndex',
21
+ 'data',
22
+ 'dataType',
23
+ 'value',
24
+ 'color'
25
+ ];
13
26
  var EVAL_CACHE = {};
14
27
  /**
15
28
  * ECharts 中有些配置项可以写函数,但 JSON 中无法支持,为了实现这个功能,需要将看起来像函数的字符串转成函数类型
@@ -62,6 +75,7 @@ var Chart = /** @class */ (function (_super) {
62
75
  _this.reload = _this.reload.bind(_this);
63
76
  _this.reloadEcharts = debouce(_this.reloadEcharts.bind(_this), 300); //过于频繁更新 ECharts 会报错
64
77
  _this.handleClick = _this.handleClick.bind(_this);
78
+ _this.dispatchEvent = _this.dispatchEvent.bind(_this);
65
79
  _this.mounted = true;
66
80
  props.config && _this.renderChart(props.config);
67
81
  return _this;
@@ -106,15 +120,37 @@ var Chart = /** @class */ (function (_super) {
106
120
  clearTimeout(this.timer);
107
121
  };
108
122
  Chart.prototype.handleClick = function (ctx) {
109
- var _a = this.props, onAction = _a.onAction, clickAction = _a.clickAction, data = _a.data;
110
- clickAction &&
111
- onAction &&
112
- onAction(null, clickAction, createObject(data, ctx));
123
+ return __awaiter(this, void 0, void 0, function () {
124
+ var _a, onAction, clickAction, data, dispatchEvent, rendererEvent;
125
+ return __generator(this, function (_b) {
126
+ switch (_b.label) {
127
+ case 0:
128
+ _a = this.props, onAction = _a.onAction, clickAction = _a.clickAction, data = _a.data, dispatchEvent = _a.dispatchEvent;
129
+ return [4 /*yield*/, dispatchEvent(ctx.event, createObject(data, __assign({}, pick(ctx, DEFAULT_EVENT_PARAMS))))];
130
+ case 1:
131
+ rendererEvent = _b.sent();
132
+ if (rendererEvent === null || rendererEvent === void 0 ? void 0 : rendererEvent.prevented) {
133
+ return [2 /*return*/];
134
+ }
135
+ clickAction &&
136
+ onAction &&
137
+ onAction(null, clickAction, createObject(data, ctx));
138
+ return [2 /*return*/];
139
+ }
140
+ });
141
+ });
142
+ };
143
+ Chart.prototype.dispatchEvent = function (ctx) {
144
+ var _a = this.props, data = _a.data, dispatchEvent = _a.dispatchEvent;
145
+ dispatchEvent(ctx.event, createObject(data, __assign({}, pick(ctx, ctx.type === 'legendselectchanged'
146
+ ? ['name', 'selected']
147
+ : DEFAULT_EVENT_PARAMS))));
113
148
  };
114
149
  Chart.prototype.refFn = function (ref) {
115
150
  var _this = this;
116
151
  var chartRef = this.props.chartRef;
117
- var _a = this.props, chartTheme = _a.chartTheme, onChartWillMount = _a.onChartWillMount, onChartUnMount = _a.onChartUnMount, env = _a.env;
152
+ var _a = this.props, chartTheme = _a.chartTheme, onChartWillMount = _a.onChartWillMount, onChartUnMount = _a.onChartUnMount, env = _a.env, loadBaiduMap = _a.loadBaiduMap, data = _a.data;
153
+ var _b = this.props, mapURL = _b.mapURL, mapName = _b.mapName;
118
154
  var onChartMount = this.props.onChartMount;
119
155
  if (ref) {
120
156
  Promise.all([
@@ -127,39 +163,63 @@ var Chart = /** @class */ (function (_super) {
127
163
  ]).then(function (_a) {
128
164
  var echarts = _a[0], ecStat = _a[1];
129
165
  return __awaiter(_this, void 0, void 0, function () {
130
- var theme;
166
+ var mapGeoResult, theme;
131
167
  var _this = this;
132
168
  return __generator(this, function (_b) {
133
169
  switch (_b.label) {
134
170
  case 0:
135
171
  window.echarts = echarts;
136
- window.ecStat = ecStat;
172
+ window.ecStat = (ecStat === null || ecStat === void 0 ? void 0 : ecStat.default) || ecStat;
173
+ if (!(mapURL && mapName)) return [3 /*break*/, 2];
174
+ if (isPureVariable(mapURL)) {
175
+ mapURL = resolveVariableAndFilter(mapURL, data);
176
+ }
177
+ if (isPureVariable(mapName)) {
178
+ mapName = resolveVariableAndFilter(mapName, data);
179
+ }
180
+ return [4 /*yield*/, env.fetcher(mapURL, data)];
181
+ case 1:
182
+ mapGeoResult = _b.sent();
183
+ if (!mapGeoResult.ok) {
184
+ console.warn('fetch map geo error ' + mapURL);
185
+ }
186
+ echarts.registerMap(mapName, mapGeoResult.data);
187
+ _b.label = 2;
188
+ case 2:
189
+ if (!loadBaiduMap) return [3 /*break*/, 4];
190
+ return [4 /*yield*/, loadScript("//api.map.baidu.com/api?v=3.0&ak=".concat(this.props.ak, "&callback={{callback}}"))];
191
+ case 3:
192
+ _b.sent();
193
+ _b.label = 4;
194
+ case 4:
137
195
  theme = 'default';
138
196
  if (chartTheme) {
139
197
  echarts.registerTheme('custom', chartTheme);
140
198
  theme = 'custom';
141
199
  }
142
- if (!onChartWillMount) return [3 /*break*/, 2];
200
+ if (!onChartWillMount) return [3 /*break*/, 6];
143
201
  return [4 /*yield*/, onChartWillMount(echarts)];
144
- case 1:
202
+ case 5:
145
203
  _b.sent();
146
- _b.label = 2;
147
- case 2:
204
+ _b.label = 6;
205
+ case 6:
148
206
  echarts.registerTransform(ecStat.transform.regression);
149
207
  echarts.registerTransform(ecStat.transform.histogram);
150
208
  echarts.registerTransform(ecStat.transform.clustering);
151
- if (!env.loadChartExtends) return [3 /*break*/, 4];
209
+ if (!env.loadChartExtends) return [3 /*break*/, 8];
152
210
  return [4 /*yield*/, env.loadChartExtends()];
153
- case 3:
211
+ case 7:
154
212
  _b.sent();
155
- _b.label = 4;
156
- case 4:
213
+ _b.label = 8;
214
+ case 8:
157
215
  this.echarts = echarts.init(ref, theme);
158
216
  if (typeof onChartMount === 'string') {
159
217
  onChartMount = new Function('chart', 'echarts');
160
218
  }
161
219
  onChartMount === null || onChartMount === void 0 ? void 0 : onChartMount(this.echarts, echarts);
162
220
  this.echarts.on('click', this.handleClick);
221
+ this.echarts.on('mouseover', this.dispatchEvent);
222
+ this.echarts.on('legendselectchanged', this.dispatchEvent);
163
223
  this.unSensor = resizeSensor(ref, function () {
164
224
  var _a;
165
225
  var width = ref.offsetWidth;
@@ -188,6 +248,10 @@ var Chart = /** @class */ (function (_super) {
188
248
  }
189
249
  this.ref = ref;
190
250
  };
251
+ Chart.prototype.doAction = function (action, data, throwErrors) {
252
+ var _a, _b;
253
+ return (_b = (_a = this.echarts) === null || _a === void 0 ? void 0 : _a.dispatchAction) === null || _b === void 0 ? void 0 : _b.call(_a, __assign({ type: action.actionType }, data));
254
+ };
191
255
  Chart.prototype.reload = function (subpath, query, ctx, silent, replace) {
192
256
  var _this = this;
193
257
  var _a, _b;
@@ -4,6 +4,13 @@
4
4
  import React from 'react';
5
5
  import { BaseSchema } from '../Schema';
6
6
  import { RendererProps } from 'amis-core';
7
+ import type { editor as EditorNamespace } from 'monaco-editor';
8
+ export declare type MonacoEditor = typeof EditorNamespace;
9
+ export declare type CodeBuiltinTheme = EditorNamespace.BuiltinTheme;
10
+ export declare type IMonaco = {
11
+ editor: MonacoEditor;
12
+ [propName: string]: any;
13
+ };
7
14
  export interface Token {
8
15
  /**
9
16
  * token 的正则
@@ -39,6 +46,10 @@ export interface CustomLang {
39
46
  * token
40
47
  */
41
48
  tokens: Token[];
49
+ /**
50
+ * 编辑器颜色相关配置,不传使用内置默认值
51
+ */
52
+ colors?: EditorNamespace.IColors;
42
53
  }
43
54
  /**
44
55
  * 代码高亮组件
@@ -50,7 +61,7 @@ export interface CodeSchema extends BaseSchema {
50
61
  * 语言类型
51
62
  */
52
63
  language?: 'bat' | 'c' | 'coffeescript' | 'cpp' | 'csharp' | 'css' | 'dockerfile' | 'fsharp' | 'go' | 'handlebars' | 'html' | 'ini' | 'java' | 'javascript' | 'json' | 'less' | 'lua' | 'markdown' | 'msdax' | 'objective-c' | 'php' | 'plaintext' | 'postiats' | 'powershell' | 'pug' | 'python' | 'r' | 'razor' | 'ruby' | 'sb' | 'scss' | 'shell' | 'sol' | 'sql' | 'swift' | 'typescript' | 'vb' | 'xml' | 'yaml' | string;
53
- editorTheme?: string;
64
+ editorTheme?: CodeBuiltinTheme;
54
65
  /**
55
66
  * tab 大小
56
67
  */
@@ -63,21 +74,30 @@ export interface CodeSchema extends BaseSchema {
63
74
  * 自定义语言
64
75
  */
65
76
  customLang?: CustomLang;
77
+ /**
78
+ * 使用的标签,默认多行使用pre,单行使用code
79
+ */
80
+ wrapperComponent?: string;
66
81
  }
67
- export interface CodeProps extends RendererProps, Omit<CodeSchema, 'type' | 'className'> {
82
+ export interface CodeProps extends RendererProps, Omit<CodeSchema, 'type' | 'className' | 'wrapperComponent'> {
83
+ wrapperComponent?: any;
68
84
  }
69
85
  export default class Code extends React.Component<CodeProps> {
86
+ static propsList: string[];
70
87
  static defaultProps: Partial<CodeProps>;
71
- monaco: any;
88
+ monaco: IMonaco;
72
89
  toDispose: Array<Function>;
73
90
  codeRef: React.RefObject<HTMLElement>;
74
91
  customLang: CustomLang;
75
92
  sourceCode: string;
76
93
  constructor(props: CodeProps);
94
+ shouldComponentUpdate(nextProps: CodeProps): boolean;
77
95
  componentDidMount(): void;
78
- componentDidUpdate(preProps: CodeProps): void;
79
- handleMonaco(monaco: any): void;
80
- registTheme(): string | null;
96
+ componentDidUpdate(preProps: CodeProps): Promise<void>;
97
+ handleMonaco(monaco: any): Promise<void>;
98
+ resolveLanguage(props?: CodeProps): string;
99
+ /** 注册并返回当前主题名称,如果未自定义主题,则范围editorTheme值,默认为'vs' */
100
+ registerAndGetTheme(): string;
81
101
  render(): JSX.Element;
82
102
  }
83
103
  export declare class CodeRenderer extends Code {
@@ -1,12 +1,12 @@
1
1
  /**
2
- * amis v2.3.2-beta.1
2
+ * amis v2.4.1-beta.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
6
- import { __extends, __decorate } from 'tslib';
6
+ import { __extends, __awaiter, __generator, __decorate } from 'tslib';
7
7
  import React from 'react';
8
- import isEqual from 'lodash/isEqual';
9
- import { getPropValue, isPureVariable, resolveVariableAndFilter, Renderer } from 'amis-core';
8
+ import isPlainObject from 'lodash/isPlainObject';
9
+ import { anyChanged, getPropValue, isPureVariable, resolveVariableAndFilter, Renderer } from 'amis-core';
10
10
 
11
11
  var Code = /** @class */ (function (_super) {
12
12
  __extends(Code, _super);
@@ -16,58 +16,113 @@ var Code = /** @class */ (function (_super) {
16
16
  _this.codeRef = React.createRef();
17
17
  return _this;
18
18
  }
19
+ Code.prototype.shouldComponentUpdate = function (nextProps) {
20
+ return (anyChanged(Code.propsList, this.props, nextProps) ||
21
+ this.resolveLanguage(this.props) !== this.resolveLanguage(nextProps) ||
22
+ getPropValue(this.props) !== getPropValue(nextProps));
23
+ };
19
24
  Code.prototype.componentDidMount = function () {
20
25
  var _this = this;
21
26
  import('monaco-editor').then(function (monaco) { return _this.handleMonaco(monaco); });
22
27
  };
23
28
  Code.prototype.componentDidUpdate = function (preProps) {
24
- var _this = this;
25
- var props = this.props;
26
- var sourceCode = getPropValue(this.props);
27
- var preSourceCode = getPropValue(this.props);
28
- if (sourceCode !== preSourceCode ||
29
- (props.customLang && !isEqual(props.customLang, preProps.customLang))) {
30
- var dom_1 = this.codeRef.current;
31
- dom_1.innerHTML = sourceCode;
32
- var theme_1 = this.registTheme() || this.props.editorTheme || 'vs';
33
- setTimeout(function () {
34
- _this.monaco.editor.colorizeElement(dom_1, {
35
- tabSize: _this.props.tabSize,
36
- theme: theme_1
37
- });
38
- }, 16);
39
- }
29
+ var _a;
30
+ return __awaiter(this, void 0, void 0, function () {
31
+ var props, dom, tabSize, sourceCode, language, theme, colorizedHtml;
32
+ return __generator(this, function (_b) {
33
+ switch (_b.label) {
34
+ case 0:
35
+ props = this.props;
36
+ dom = this.codeRef.current;
37
+ if (!(((_a = this === null || this === void 0 ? void 0 : this.monaco) === null || _a === void 0 ? void 0 : _a.editor) && dom)) return [3 /*break*/, 2];
38
+ tabSize = props.tabSize;
39
+ sourceCode = getPropValue(this.props);
40
+ language = this.resolveLanguage();
41
+ theme = this.registerAndGetTheme();
42
+ /**
43
+ * FIXME: https://github.com/microsoft/monaco-editor/issues/338
44
+ * 已知问题:变量的样式存储在顶层,所以同页面中存在多个editor时,切换主题对所有editor生效
45
+ * 每个组件单独实例化一个editor可以处理,但是成本较高,目前官方的处理方式是iframe嵌套隔离
46
+ */
47
+ this.monaco.editor.setTheme(theme);
48
+ return [4 /*yield*/, this.monaco.editor.colorize(sourceCode, language, {
49
+ tabSize: tabSize
50
+ })];
51
+ case 1:
52
+ colorizedHtml = _b.sent();
53
+ dom.innerHTML = colorizedHtml;
54
+ _b.label = 2;
55
+ case 2: return [2 /*return*/];
56
+ }
57
+ });
58
+ });
40
59
  };
41
60
  Code.prototype.handleMonaco = function (monaco) {
42
- var _this = this;
43
- this.monaco = monaco;
44
- if (this.codeRef.current) {
45
- var dom_2 = this.codeRef.current;
46
- var theme_2 = this.registTheme() || this.props.editorTheme || 'vs';
47
- // 这里必须是异步才能准确,可能是因为 monaco 里注册主题是异步的
48
- setTimeout(function () {
49
- monaco.editor.colorizeElement(dom_2, {
50
- tabSize: _this.props.tabSize,
51
- theme: theme_2
52
- });
53
- }, 16);
61
+ var _a;
62
+ return __awaiter(this, void 0, void 0, function () {
63
+ var tabSize, sourceCode, language, dom, theme, colorizedHtml;
64
+ return __generator(this, function (_b) {
65
+ switch (_b.label) {
66
+ case 0:
67
+ if (!monaco) {
68
+ return [2 /*return*/];
69
+ }
70
+ this.monaco = monaco;
71
+ tabSize = this.props.tabSize;
72
+ sourceCode = getPropValue(this.props);
73
+ language = this.resolveLanguage();
74
+ dom = this.codeRef.current;
75
+ if (!(dom && ((_a = this.monaco) === null || _a === void 0 ? void 0 : _a.editor))) return [3 /*break*/, 2];
76
+ theme = this.registerAndGetTheme();
77
+ // 这里必须是异步才能准确,可能是因为 monaco 里注册主题是异步的
78
+ this.monaco.editor.setTheme(theme);
79
+ return [4 /*yield*/, this.monaco.editor.colorize(sourceCode, language, {
80
+ tabSize: tabSize
81
+ })];
82
+ case 1:
83
+ colorizedHtml = _b.sent();
84
+ dom.innerHTML = colorizedHtml;
85
+ _b.label = 2;
86
+ case 2: return [2 /*return*/];
87
+ }
88
+ });
89
+ });
90
+ };
91
+ Code.prototype.resolveLanguage = function (props) {
92
+ var currentProps = props !== null && props !== void 0 ? props : this.props;
93
+ var customLang = currentProps.customLang, data = currentProps.data;
94
+ var _a = currentProps.language, language = _a === void 0 ? 'plaintext' : _a;
95
+ if (isPureVariable(language)) {
96
+ language = resolveVariableAndFilter(language, data);
97
+ }
98
+ if (customLang) {
99
+ if (customLang.name) {
100
+ language = customLang.name;
101
+ }
54
102
  }
103
+ return language;
55
104
  };
56
- Code.prototype.registTheme = function () {
105
+ /** 注册并返回当前主题名称,如果未自定义主题,则范围editorTheme值,默认为'vs' */
106
+ Code.prototype.registerAndGetTheme = function () {
107
+ var _a, _b;
57
108
  var monaco = this.monaco;
109
+ var _c = this.props.editorTheme, editorTheme = _c === void 0 ? 'vs' : _c;
58
110
  if (!monaco) {
59
- return null;
111
+ return editorTheme;
60
112
  }
61
113
  if (this.customLang &&
62
114
  this.customLang.name &&
63
- this.customLang.tokens &&
115
+ Array.isArray(this.customLang.tokens) &&
64
116
  this.customLang.tokens.length) {
65
117
  var langName = this.customLang.name;
118
+ var colors = ((_a = this.customLang) === null || _a === void 0 ? void 0 : _a.colors) && isPlainObject((_b = this.customLang) === null || _b === void 0 ? void 0 : _b.colors)
119
+ ? this.customLang.colors
120
+ : {};
66
121
  monaco.languages.register({ id: langName });
67
122
  var tokenizers = [];
68
123
  var rules = [];
69
- for (var _i = 0, _a = this.customLang.tokens; _i < _a.length; _i++) {
70
- var token = _a[_i];
124
+ for (var _i = 0, _d = this.customLang.tokens; _i < _d.length; _i++) {
125
+ var token = _d[_i];
71
126
  var regex = new RegExp(token.regex, token.regexFlags || undefined);
72
127
  tokenizers.push([regex, token.name]);
73
128
  rules.push({
@@ -85,27 +140,36 @@ var Code = /** @class */ (function (_super) {
85
140
  monaco.editor.defineTheme(langName, {
86
141
  base: 'vs',
87
142
  inherit: false,
88
- rules: rules
143
+ rules: rules,
144
+ colors: colors
89
145
  });
90
146
  return langName;
91
147
  }
92
- return null;
148
+ return editorTheme;
93
149
  };
94
150
  Code.prototype.render = function () {
95
- var _a = this.props, className = _a.className, cx = _a.classnames, data = _a.data, customLang = _a.customLang, wordWrap = _a.wordWrap;
96
- var language = this.props.language;
97
151
  var sourceCode = getPropValue(this.props);
98
- if (isPureVariable(language)) {
99
- language = resolveVariableAndFilter(language, data);
100
- }
152
+ var _a = this.props, className = _a.className, cx = _a.classnames, editorTheme = _a.editorTheme, customLang = _a.customLang, wordWrap = _a.wordWrap, wrapperComponent = _a.wrapperComponent;
153
+ var language = this.resolveLanguage();
154
+ var isMultiLine = typeof sourceCode === 'string' && sourceCode.split(/\r?\n/).length > 1;
155
+ var Component = wrapperComponent || (isMultiLine ? 'pre' : 'code');
101
156
  if (customLang) {
102
- if (customLang.name) {
103
- language = customLang.name;
104
- }
105
157
  this.customLang = customLang;
106
158
  }
107
- return (React.createElement("code", { ref: this.codeRef, className: cx("Code", { 'word-break': wordWrap }, className), "data-lang": language }, sourceCode));
159
+ return (React.createElement(Component, { ref: this.codeRef, className: cx('Code', {
160
+ // 使用内置暗色主题时设置一下背景,避免看不清
161
+ 'Code--dark': editorTheme && ['vs-dark', 'hc-black'].includes(editorTheme),
162
+ 'Code-pre-wrap': Component === 'pre',
163
+ 'word-break': wordWrap
164
+ }, className), "data-lang": language }, sourceCode));
108
165
  };
166
+ Code.propsList = [
167
+ 'language',
168
+ 'editorTheme',
169
+ 'tabSize',
170
+ 'wordWrap',
171
+ 'customLang'
172
+ ];
109
173
  Code.defaultProps = {
110
174
  language: 'plaintext',
111
175
  editorTheme: 'vs',
@@ -1,11 +1,11 @@
1
1
  /**
2
- * amis v2.3.2-beta.1
2
+ * amis v2.4.1-beta.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
6
6
  import { __extends, __decorate } from 'tslib';
7
7
  import React from 'react';
8
- import { Renderer } from 'amis-core';
8
+ import { generateIcon, Renderer } from 'amis-core';
9
9
  import { Collapse as Collapse$1 } from 'amis-ui';
10
10
 
11
11
  var Collapse = /** @class */ (function (_super) {
@@ -16,9 +16,11 @@ var Collapse = /** @class */ (function (_super) {
16
16
  Collapse.prototype.render = function () {
17
17
  var _a = this.props, id = _a.id, ns = _a.classPrefix, cx = _a.classnames, size = _a.size, wrapperComponent = _a.wrapperComponent, headingComponent = _a.headingComponent, className = _a.className, headingClassName = _a.headingClassName, children = _a.children, titlePosition = _a.titlePosition, headerPosition = _a.headerPosition, title = _a.title, collapseTitle = _a.collapseTitle, collapseHeader = _a.collapseHeader, header = _a.header, body = _a.body, bodyClassName = _a.bodyClassName, render = _a.render, collapsable = _a.collapsable; _a.translate; var mountOnEnter = _a.mountOnEnter, unmountOnExit = _a.unmountOnExit, showArrow = _a.showArrow, expandIcon = _a.expandIcon, disabled = _a.disabled, collapsed = _a.collapsed, propsUpdate = _a.propsUpdate, onCollapse = _a.onCollapse;
18
18
  return (React.createElement(Collapse$1, { id: id, classnames: cx, classPrefix: ns, mountOnEnter: mountOnEnter, unmountOnExit: unmountOnExit, size: size, wrapperComponent: wrapperComponent, headingComponent: headingComponent, className: className, headingClassName: headingClassName, bodyClassName: bodyClassName, headerPosition: titlePosition || headerPosition, collapsable: collapsable, collapsed: collapsed, showArrow: showArrow, disabled: disabled, propsUpdate: propsUpdate, expandIcon: expandIcon
19
- ? render('arrow-icon', expandIcon || '', {
20
- className: cx('Collapse-icon-tranform')
21
- })
19
+ ? typeof expandIcon.icon === 'object'
20
+ ? generateIcon(cx, expandIcon.icon)
21
+ : render('arrow-icon', expandIcon || '', {
22
+ className: cx('Collapse-icon-tranform')
23
+ })
22
24
  : null, collapseHeader: collapseTitle || collapseHeader
23
25
  ? render('heading', collapseTitle || collapseHeader)
24
26
  : null, header: render('heading', title || header || ''), body: children
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.3.2-beta.1
2
+ * amis v2.4.1-beta.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.3.2-beta.1
2
+ * amis v2.4.1-beta.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -17,7 +17,7 @@ var ColorField = /** @class */ (function (_super) {
17
17
  var color = getPropValue(this.props);
18
18
  return (React.createElement("div", { className: cx('ColorField', className) },
19
19
  React.createElement("i", { className: cx('ColorField-previewIcon'), style: { backgroundColor: color || defaultColor } }),
20
- showValue ? (React.createElement("span", { className: cx('ColorField-value') }, color)) : null));
20
+ showValue ? (React.createElement("span", { className: cx('ColorField-value') }, color || defaultColor)) : null));
21
21
  };
22
22
  ColorField.defaultProps = {
23
23
  className: '',
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.3.2-beta.1
2
+ * amis v2.4.1-beta.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.3.2-beta.1
2
+ * amis v2.4.1-beta.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.3.2-beta.1
2
+ * amis v2.4.1-beta.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.3.2-beta.1
2
+ * amis v2.4.1-beta.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -0,0 +1,37 @@
1
+ import React from 'react';
2
+ import { RendererProps } from 'amis-core';
3
+ import { BaseSchema } from '../Schema';
4
+ /**
5
+ * DateRange 展示渲染器。
6
+ */
7
+ export interface DateRangeSchema extends BaseSchema {
8
+ /**
9
+ * 指定为日期展示类型
10
+ */
11
+ type: 'date-range';
12
+ /**
13
+ * 值的时间格式,参考 moment 中的格式说明。
14
+ */
15
+ valueFormat?: string;
16
+ /**
17
+ * 展示的时间格式,参考 moment 中的格式说明。
18
+ */
19
+ format?: string;
20
+ /**
21
+ * 分割符
22
+ */
23
+ delimiter?: string;
24
+ /**
25
+ * 连接符
26
+ */
27
+ connector?: string;
28
+ }
29
+ export interface DateRangeProps extends RendererProps, Omit<DateRangeSchema, 'type' | 'className'> {
30
+ }
31
+ export declare class DateRangeField extends React.Component<DateRangeProps, Object> {
32
+ refreshInterval: ReturnType<typeof setTimeout>;
33
+ static defaultProps: Pick<DateRangeProps, 'valueFormat' | 'format' | 'connector'>;
34
+ render(): JSX.Element | null;
35
+ }
36
+ export declare class DateRangeFieldRenderer extends DateRangeField {
37
+ }
@@ -0,0 +1,57 @@
1
+ /**
2
+ * amis v2.4.1-beta.0
3
+ * Copyright 2018-2022 baidu
4
+ */
5
+
6
+ import { __extends, __decorate } from 'tslib';
7
+ import React from 'react';
8
+ import { Renderer } from 'amis-core';
9
+ import moment from 'moment';
10
+
11
+ var DateRangeField = /** @class */ (function (_super) {
12
+ __extends(DateRangeField, _super);
13
+ function DateRangeField() {
14
+ return _super !== null && _super.apply(this, arguments) || this;
15
+ }
16
+ DateRangeField.prototype.render = function () {
17
+ var _a = this.props, _b = _a.delimiter, delimiter = _b === void 0 ? ',' : _b, _c = _a.connector, connector = _c === void 0 ? '~' : _c, value = _a.value, valueFormat = _a.valueFormat, _d = _a.format, format = _d === void 0 ? 'YYYY-MM-DD' : _d, cx = _a.classnames, className = _a.className;
18
+ if (!value) {
19
+ return null;
20
+ }
21
+ if (typeof value === 'string') {
22
+ value = value.split(delimiter);
23
+ }
24
+ var _e = value[0], startTime = _e === void 0 ? '' : _e, _f = value[1], endTime = _f === void 0 ? '' : _f;
25
+ if (valueFormat) {
26
+ startTime = moment(startTime, valueFormat);
27
+ endTime = moment(endTime, valueFormat);
28
+ }
29
+ else {
30
+ startTime = moment(startTime * 1000);
31
+ endTime = moment(endTime * 1000);
32
+ }
33
+ startTime = startTime.isValid() ? startTime.format(format) : '';
34
+ endTime = endTime.isValid() ? endTime.format(format) : '';
35
+ return (React.createElement("span", { className: cx('DateRangeField', className) }, [startTime, endTime].join(" ".concat(connector, " "))));
36
+ };
37
+ DateRangeField.defaultProps = {
38
+ format: 'YYYY-MM-DD',
39
+ valueFormat: 'X',
40
+ connector: '~'
41
+ };
42
+ return DateRangeField;
43
+ }(React.Component));
44
+ /** @class */ ((function (_super) {
45
+ __extends(DateRangeFieldRenderer, _super);
46
+ function DateRangeFieldRenderer() {
47
+ return _super !== null && _super.apply(this, arguments) || this;
48
+ }
49
+ DateRangeFieldRenderer = __decorate([
50
+ Renderer({
51
+ type: 'date-range'
52
+ })
53
+ ], DateRangeFieldRenderer);
54
+ return DateRangeFieldRenderer;
55
+ })(DateRangeField));
56
+
57
+ export { DateRangeField };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.3.2-beta.1
2
+ * amis v2.4.1-beta.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis v2.3.2-beta.1
2
+ * amis v2.4.1-beta.0
3
3
  * Copyright 2018-2022 baidu
4
4
  */
5
5