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,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
 
@@ -13,13 +13,27 @@ var amisCore = require('amis-core');
13
13
  var cx = require('classnames');
14
14
  var mobxStateTree = require('mobx-state-tree');
15
15
  var debouce = require('lodash/debounce');
16
+ var pick = require('lodash/pick');
16
17
 
17
18
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
18
19
 
19
20
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
20
21
  var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
21
22
  var debouce__default = /*#__PURE__*/_interopDefaultLegacy(debouce);
23
+ var pick__default = /*#__PURE__*/_interopDefaultLegacy(pick);
22
24
 
25
+ var DEFAULT_EVENT_PARAMS = [
26
+ 'componentType',
27
+ 'seriesType',
28
+ 'seriesIndex',
29
+ 'seriesName',
30
+ 'name',
31
+ 'dataIndex',
32
+ 'data',
33
+ 'dataType',
34
+ 'value',
35
+ 'color'
36
+ ];
23
37
  var EVAL_CACHE = {};
24
38
  /**
25
39
  * ECharts 中有些配置项可以写函数,但 JSON 中无法支持,为了实现这个功能,需要将看起来像函数的字符串转成函数类型
@@ -72,6 +86,7 @@ var Chart = /** @class */ (function (_super) {
72
86
  _this.reload = _this.reload.bind(_this);
73
87
  _this.reloadEcharts = debouce__default["default"](_this.reloadEcharts.bind(_this), 300); //过于频繁更新 ECharts 会报错
74
88
  _this.handleClick = _this.handleClick.bind(_this);
89
+ _this.dispatchEvent = _this.dispatchEvent.bind(_this);
75
90
  _this.mounted = true;
76
91
  props.config && _this.renderChart(props.config);
77
92
  return _this;
@@ -116,15 +131,37 @@ var Chart = /** @class */ (function (_super) {
116
131
  clearTimeout(this.timer);
117
132
  };
118
133
  Chart.prototype.handleClick = function (ctx) {
119
- var _a = this.props, onAction = _a.onAction, clickAction = _a.clickAction, data = _a.data;
120
- clickAction &&
121
- onAction &&
122
- onAction(null, clickAction, amisCore.createObject(data, ctx));
134
+ return tslib.__awaiter(this, void 0, void 0, function () {
135
+ var _a, onAction, clickAction, data, dispatchEvent, rendererEvent;
136
+ return tslib.__generator(this, function (_b) {
137
+ switch (_b.label) {
138
+ case 0:
139
+ _a = this.props, onAction = _a.onAction, clickAction = _a.clickAction, data = _a.data, dispatchEvent = _a.dispatchEvent;
140
+ return [4 /*yield*/, dispatchEvent(ctx.event, amisCore.createObject(data, tslib.__assign({}, pick__default["default"](ctx, DEFAULT_EVENT_PARAMS))))];
141
+ case 1:
142
+ rendererEvent = _b.sent();
143
+ if (rendererEvent === null || rendererEvent === void 0 ? void 0 : rendererEvent.prevented) {
144
+ return [2 /*return*/];
145
+ }
146
+ clickAction &&
147
+ onAction &&
148
+ onAction(null, clickAction, amisCore.createObject(data, ctx));
149
+ return [2 /*return*/];
150
+ }
151
+ });
152
+ });
153
+ };
154
+ Chart.prototype.dispatchEvent = function (ctx) {
155
+ var _a = this.props, data = _a.data, dispatchEvent = _a.dispatchEvent;
156
+ dispatchEvent(ctx.event, amisCore.createObject(data, tslib.__assign({}, pick__default["default"](ctx, ctx.type === 'legendselectchanged'
157
+ ? ['name', 'selected']
158
+ : DEFAULT_EVENT_PARAMS))));
123
159
  };
124
160
  Chart.prototype.refFn = function (ref) {
125
161
  var _this = this;
126
162
  var chartRef = this.props.chartRef;
127
- var _a = this.props, chartTheme = _a.chartTheme, onChartWillMount = _a.onChartWillMount, onChartUnMount = _a.onChartUnMount, env = _a.env;
163
+ var _a = this.props, chartTheme = _a.chartTheme, onChartWillMount = _a.onChartWillMount, onChartUnMount = _a.onChartUnMount, env = _a.env, loadBaiduMap = _a.loadBaiduMap, data = _a.data;
164
+ var _b = this.props, mapURL = _b.mapURL, mapName = _b.mapName;
128
165
  var onChartMount = this.props.onChartMount;
129
166
  if (ref) {
130
167
  Promise.all([
@@ -137,39 +174,63 @@ var Chart = /** @class */ (function (_super) {
137
174
  ]).then(function (_a) {
138
175
  var echarts = _a[0], ecStat = _a[1];
139
176
  return tslib.__awaiter(_this, void 0, void 0, function () {
140
- var theme;
177
+ var mapGeoResult, theme;
141
178
  var _this = this;
142
179
  return tslib.__generator(this, function (_b) {
143
180
  switch (_b.label) {
144
181
  case 0:
145
182
  window.echarts = echarts;
146
- window.ecStat = ecStat;
183
+ window.ecStat = (ecStat === null || ecStat === void 0 ? void 0 : ecStat.default) || ecStat;
184
+ if (!(mapURL && mapName)) return [3 /*break*/, 2];
185
+ if (amisCore.isPureVariable(mapURL)) {
186
+ mapURL = amisCore.resolveVariableAndFilter(mapURL, data);
187
+ }
188
+ if (amisCore.isPureVariable(mapName)) {
189
+ mapName = amisCore.resolveVariableAndFilter(mapName, data);
190
+ }
191
+ return [4 /*yield*/, env.fetcher(mapURL, data)];
192
+ case 1:
193
+ mapGeoResult = _b.sent();
194
+ if (!mapGeoResult.ok) {
195
+ console.warn('fetch map geo error ' + mapURL);
196
+ }
197
+ echarts.registerMap(mapName, mapGeoResult.data);
198
+ _b.label = 2;
199
+ case 2:
200
+ if (!loadBaiduMap) return [3 /*break*/, 4];
201
+ return [4 /*yield*/, amisCore.loadScript("//api.map.baidu.com/api?v=3.0&ak=".concat(this.props.ak, "&callback={{callback}}"))];
202
+ case 3:
203
+ _b.sent();
204
+ _b.label = 4;
205
+ case 4:
147
206
  theme = 'default';
148
207
  if (chartTheme) {
149
208
  echarts.registerTheme('custom', chartTheme);
150
209
  theme = 'custom';
151
210
  }
152
- if (!onChartWillMount) return [3 /*break*/, 2];
211
+ if (!onChartWillMount) return [3 /*break*/, 6];
153
212
  return [4 /*yield*/, onChartWillMount(echarts)];
154
- case 1:
213
+ case 5:
155
214
  _b.sent();
156
- _b.label = 2;
157
- case 2:
215
+ _b.label = 6;
216
+ case 6:
158
217
  echarts.registerTransform(ecStat.transform.regression);
159
218
  echarts.registerTransform(ecStat.transform.histogram);
160
219
  echarts.registerTransform(ecStat.transform.clustering);
161
- if (!env.loadChartExtends) return [3 /*break*/, 4];
220
+ if (!env.loadChartExtends) return [3 /*break*/, 8];
162
221
  return [4 /*yield*/, env.loadChartExtends()];
163
- case 3:
222
+ case 7:
164
223
  _b.sent();
165
- _b.label = 4;
166
- case 4:
224
+ _b.label = 8;
225
+ case 8:
167
226
  this.echarts = echarts.init(ref, theme);
168
227
  if (typeof onChartMount === 'string') {
169
228
  onChartMount = new Function('chart', 'echarts');
170
229
  }
171
230
  onChartMount === null || onChartMount === void 0 ? void 0 : onChartMount(this.echarts, echarts);
172
231
  this.echarts.on('click', this.handleClick);
232
+ this.echarts.on('mouseover', this.dispatchEvent);
233
+ this.echarts.on('legendselectchanged', this.dispatchEvent);
173
234
  this.unSensor = amisCore.resizeSensor(ref, function () {
174
235
  var _a;
175
236
  var width = ref.offsetWidth;
@@ -198,6 +259,10 @@ var Chart = /** @class */ (function (_super) {
198
259
  }
199
260
  this.ref = ref;
200
261
  };
262
+ Chart.prototype.doAction = function (action, data, throwErrors) {
263
+ var _a, _b;
264
+ return (_b = (_a = this.echarts) === null || _a === void 0 ? void 0 : _a.dispatchAction) === null || _b === void 0 ? void 0 : _b.call(_a, tslib.__assign({ type: action.actionType }, data));
265
+ };
201
266
  Chart.prototype.reload = function (subpath, query, ctx, silent, replace) {
202
267
  var _this = this;
203
268
  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,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
 
@@ -9,13 +9,13 @@ Object.defineProperty(exports, '__esModule', { value: true });
9
9
 
10
10
  var tslib = require('tslib');
11
11
  var React = require('react');
12
- var isEqual = require('lodash/isEqual');
12
+ var isPlainObject = require('lodash/isPlainObject');
13
13
  var amisCore = require('amis-core');
14
14
 
15
15
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
16
16
 
17
17
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
18
- var isEqual__default = /*#__PURE__*/_interopDefaultLegacy(isEqual);
18
+ var isPlainObject__default = /*#__PURE__*/_interopDefaultLegacy(isPlainObject);
19
19
 
20
20
  var Code = /** @class */ (function (_super) {
21
21
  tslib.__extends(Code, _super);
@@ -25,58 +25,113 @@ var Code = /** @class */ (function (_super) {
25
25
  _this.codeRef = React__default["default"].createRef();
26
26
  return _this;
27
27
  }
28
+ Code.prototype.shouldComponentUpdate = function (nextProps) {
29
+ return (amisCore.anyChanged(Code.propsList, this.props, nextProps) ||
30
+ this.resolveLanguage(this.props) !== this.resolveLanguage(nextProps) ||
31
+ amisCore.getPropValue(this.props) !== amisCore.getPropValue(nextProps));
32
+ };
28
33
  Code.prototype.componentDidMount = function () {
29
34
  var _this = this;
30
35
  Promise.resolve().then(function() {return new Promise(function(fullfill) {require(['monaco-editor'], function(mod) {fullfill(tslib.__importStar(mod))})})}).then(function (monaco) { return _this.handleMonaco(monaco); });
31
36
  };
32
37
  Code.prototype.componentDidUpdate = function (preProps) {
33
- var _this = this;
34
- var props = this.props;
35
- var sourceCode = amisCore.getPropValue(this.props);
36
- var preSourceCode = amisCore.getPropValue(this.props);
37
- if (sourceCode !== preSourceCode ||
38
- (props.customLang && !isEqual__default["default"](props.customLang, preProps.customLang))) {
39
- var dom_1 = this.codeRef.current;
40
- dom_1.innerHTML = sourceCode;
41
- var theme_1 = this.registTheme() || this.props.editorTheme || 'vs';
42
- setTimeout(function () {
43
- _this.monaco.editor.colorizeElement(dom_1, {
44
- tabSize: _this.props.tabSize,
45
- theme: theme_1
46
- });
47
- }, 16);
48
- }
38
+ var _a;
39
+ return tslib.__awaiter(this, void 0, void 0, function () {
40
+ var props, dom, tabSize, sourceCode, language, theme, colorizedHtml;
41
+ return tslib.__generator(this, function (_b) {
42
+ switch (_b.label) {
43
+ case 0:
44
+ props = this.props;
45
+ dom = this.codeRef.current;
46
+ if (!(((_a = this === null || this === void 0 ? void 0 : this.monaco) === null || _a === void 0 ? void 0 : _a.editor) && dom)) return [3 /*break*/, 2];
47
+ tabSize = props.tabSize;
48
+ sourceCode = amisCore.getPropValue(this.props);
49
+ language = this.resolveLanguage();
50
+ theme = this.registerAndGetTheme();
51
+ /**
52
+ * FIXME: https://github.com/microsoft/monaco-editor/issues/338
53
+ * 已知问题:变量的样式存储在顶层,所以同页面中存在多个editor时,切换主题对所有editor生效
54
+ * 每个组件单独实例化一个editor可以处理,但是成本较高,目前官方的处理方式是iframe嵌套隔离
55
+ */
56
+ this.monaco.editor.setTheme(theme);
57
+ return [4 /*yield*/, this.monaco.editor.colorize(sourceCode, language, {
58
+ tabSize: tabSize
59
+ })];
60
+ case 1:
61
+ colorizedHtml = _b.sent();
62
+ dom.innerHTML = colorizedHtml;
63
+ _b.label = 2;
64
+ case 2: return [2 /*return*/];
65
+ }
66
+ });
67
+ });
49
68
  };
50
69
  Code.prototype.handleMonaco = function (monaco) {
51
- var _this = this;
52
- this.monaco = monaco;
53
- if (this.codeRef.current) {
54
- var dom_2 = this.codeRef.current;
55
- var theme_2 = this.registTheme() || this.props.editorTheme || 'vs';
56
- // 这里必须是异步才能准确,可能是因为 monaco 里注册主题是异步的
57
- setTimeout(function () {
58
- monaco.editor.colorizeElement(dom_2, {
59
- tabSize: _this.props.tabSize,
60
- theme: theme_2
61
- });
62
- }, 16);
70
+ var _a;
71
+ return tslib.__awaiter(this, void 0, void 0, function () {
72
+ var tabSize, sourceCode, language, dom, theme, colorizedHtml;
73
+ return tslib.__generator(this, function (_b) {
74
+ switch (_b.label) {
75
+ case 0:
76
+ if (!monaco) {
77
+ return [2 /*return*/];
78
+ }
79
+ this.monaco = monaco;
80
+ tabSize = this.props.tabSize;
81
+ sourceCode = amisCore.getPropValue(this.props);
82
+ language = this.resolveLanguage();
83
+ dom = this.codeRef.current;
84
+ if (!(dom && ((_a = this.monaco) === null || _a === void 0 ? void 0 : _a.editor))) return [3 /*break*/, 2];
85
+ theme = this.registerAndGetTheme();
86
+ // 这里必须是异步才能准确,可能是因为 monaco 里注册主题是异步的
87
+ this.monaco.editor.setTheme(theme);
88
+ return [4 /*yield*/, this.monaco.editor.colorize(sourceCode, language, {
89
+ tabSize: tabSize
90
+ })];
91
+ case 1:
92
+ colorizedHtml = _b.sent();
93
+ dom.innerHTML = colorizedHtml;
94
+ _b.label = 2;
95
+ case 2: return [2 /*return*/];
96
+ }
97
+ });
98
+ });
99
+ };
100
+ Code.prototype.resolveLanguage = function (props) {
101
+ var currentProps = props !== null && props !== void 0 ? props : this.props;
102
+ var customLang = currentProps.customLang, data = currentProps.data;
103
+ var _a = currentProps.language, language = _a === void 0 ? 'plaintext' : _a;
104
+ if (amisCore.isPureVariable(language)) {
105
+ language = amisCore.resolveVariableAndFilter(language, data);
106
+ }
107
+ if (customLang) {
108
+ if (customLang.name) {
109
+ language = customLang.name;
110
+ }
63
111
  }
112
+ return language;
64
113
  };
65
- Code.prototype.registTheme = function () {
114
+ /** 注册并返回当前主题名称,如果未自定义主题,则范围editorTheme值,默认为'vs' */
115
+ Code.prototype.registerAndGetTheme = function () {
116
+ var _a, _b;
66
117
  var monaco = this.monaco;
118
+ var _c = this.props.editorTheme, editorTheme = _c === void 0 ? 'vs' : _c;
67
119
  if (!monaco) {
68
- return null;
120
+ return editorTheme;
69
121
  }
70
122
  if (this.customLang &&
71
123
  this.customLang.name &&
72
- this.customLang.tokens &&
124
+ Array.isArray(this.customLang.tokens) &&
73
125
  this.customLang.tokens.length) {
74
126
  var langName = this.customLang.name;
127
+ var colors = ((_a = this.customLang) === null || _a === void 0 ? void 0 : _a.colors) && isPlainObject__default["default"]((_b = this.customLang) === null || _b === void 0 ? void 0 : _b.colors)
128
+ ? this.customLang.colors
129
+ : {};
75
130
  monaco.languages.register({ id: langName });
76
131
  var tokenizers = [];
77
132
  var rules = [];
78
- for (var _i = 0, _a = this.customLang.tokens; _i < _a.length; _i++) {
79
- var token = _a[_i];
133
+ for (var _i = 0, _d = this.customLang.tokens; _i < _d.length; _i++) {
134
+ var token = _d[_i];
80
135
  var regex = new RegExp(token.regex, token.regexFlags || undefined);
81
136
  tokenizers.push([regex, token.name]);
82
137
  rules.push({
@@ -94,27 +149,36 @@ var Code = /** @class */ (function (_super) {
94
149
  monaco.editor.defineTheme(langName, {
95
150
  base: 'vs',
96
151
  inherit: false,
97
- rules: rules
152
+ rules: rules,
153
+ colors: colors
98
154
  });
99
155
  return langName;
100
156
  }
101
- return null;
157
+ return editorTheme;
102
158
  };
103
159
  Code.prototype.render = function () {
104
- var _a = this.props, className = _a.className, cx = _a.classnames, data = _a.data, customLang = _a.customLang, wordWrap = _a.wordWrap;
105
- var language = this.props.language;
106
160
  var sourceCode = amisCore.getPropValue(this.props);
107
- if (amisCore.isPureVariable(language)) {
108
- language = amisCore.resolveVariableAndFilter(language, data);
109
- }
161
+ var _a = this.props, className = _a.className, cx = _a.classnames, editorTheme = _a.editorTheme, customLang = _a.customLang, wordWrap = _a.wordWrap, wrapperComponent = _a.wrapperComponent;
162
+ var language = this.resolveLanguage();
163
+ var isMultiLine = typeof sourceCode === 'string' && sourceCode.split(/\r?\n/).length > 1;
164
+ var Component = wrapperComponent || (isMultiLine ? 'pre' : 'code');
110
165
  if (customLang) {
111
- if (customLang.name) {
112
- language = customLang.name;
113
- }
114
166
  this.customLang = customLang;
115
167
  }
116
- return (React__default["default"].createElement("code", { ref: this.codeRef, className: cx("Code", { 'word-break': wordWrap }, className), "data-lang": language }, sourceCode));
168
+ return (React__default["default"].createElement(Component, { ref: this.codeRef, className: cx('Code', {
169
+ // 使用内置暗色主题时设置一下背景,避免看不清
170
+ 'Code--dark': editorTheme && ['vs-dark', 'hc-black'].includes(editorTheme),
171
+ 'Code-pre-wrap': Component === 'pre',
172
+ 'word-break': wordWrap
173
+ }, className), "data-lang": language }, sourceCode));
117
174
  };
175
+ Code.propsList = [
176
+ 'language',
177
+ 'editorTheme',
178
+ 'tabSize',
179
+ 'wordWrap',
180
+ 'customLang'
181
+ ];
118
182
  Code.defaultProps = {
119
183
  language: 'plaintext',
120
184
  editorTheme: 'vs',
@@ -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
 
@@ -24,9 +24,11 @@ var Collapse = /** @class */ (function (_super) {
24
24
  Collapse.prototype.render = function () {
25
25
  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;
26
26
  return (React__default["default"].createElement(amisUi.Collapse, { 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
27
- ? render('arrow-icon', expandIcon || '', {
28
- className: cx('Collapse-icon-tranform')
29
- })
27
+ ? typeof expandIcon.icon === 'object'
28
+ ? amisCore.generateIcon(cx, expandIcon.icon)
29
+ : render('arrow-icon', expandIcon || '', {
30
+ className: cx('Collapse-icon-tranform')
31
+ })
30
32
  : null, collapseHeader: collapseTitle || collapseHeader
31
33
  ? render('heading', collapseTitle || collapseHeader)
32
34
  : 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
 
@@ -25,7 +25,7 @@ var ColorField = /** @class */ (function (_super) {
25
25
  var color = amisCore.getPropValue(this.props);
26
26
  return (React__default["default"].createElement("div", { className: cx('ColorField', className) },
27
27
  React__default["default"].createElement("i", { className: cx('ColorField-previewIcon'), style: { backgroundColor: color || defaultColor } }),
28
- showValue ? (React__default["default"].createElement("span", { className: cx('ColorField-value') }, color)) : null));
28
+ showValue ? (React__default["default"].createElement("span", { className: cx('ColorField-value') }, color || defaultColor)) : null));
29
29
  };
30
30
  ColorField.defaultProps = {
31
31
  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,66 @@
1
+ /**
2
+ * amis v2.4.1-beta.0
3
+ * Copyright 2018-2022 baidu
4
+ */
5
+
6
+ 'use strict';
7
+
8
+ Object.defineProperty(exports, '__esModule', { value: true });
9
+
10
+ var tslib = require('tslib');
11
+ var React = require('react');
12
+ var amisCore = require('amis-core');
13
+ var moment = require('moment');
14
+
15
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
16
+
17
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
18
+ var moment__default = /*#__PURE__*/_interopDefaultLegacy(moment);
19
+
20
+ var DateRangeField = /** @class */ (function (_super) {
21
+ tslib.__extends(DateRangeField, _super);
22
+ function DateRangeField() {
23
+ return _super !== null && _super.apply(this, arguments) || this;
24
+ }
25
+ DateRangeField.prototype.render = function () {
26
+ 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;
27
+ if (!value) {
28
+ return null;
29
+ }
30
+ if (typeof value === 'string') {
31
+ value = value.split(delimiter);
32
+ }
33
+ var _e = value[0], startTime = _e === void 0 ? '' : _e, _f = value[1], endTime = _f === void 0 ? '' : _f;
34
+ if (valueFormat) {
35
+ startTime = moment__default["default"](startTime, valueFormat);
36
+ endTime = moment__default["default"](endTime, valueFormat);
37
+ }
38
+ else {
39
+ startTime = moment__default["default"](startTime * 1000);
40
+ endTime = moment__default["default"](endTime * 1000);
41
+ }
42
+ startTime = startTime.isValid() ? startTime.format(format) : '';
43
+ endTime = endTime.isValid() ? endTime.format(format) : '';
44
+ return (React__default["default"].createElement("span", { className: cx('DateRangeField', className) }, [startTime, endTime].join(" ".concat(connector, " "))));
45
+ };
46
+ DateRangeField.defaultProps = {
47
+ format: 'YYYY-MM-DD',
48
+ valueFormat: 'X',
49
+ connector: '~'
50
+ };
51
+ return DateRangeField;
52
+ }(React__default["default"].Component));
53
+ /** @class */ ((function (_super) {
54
+ tslib.__extends(DateRangeFieldRenderer, _super);
55
+ function DateRangeFieldRenderer() {
56
+ return _super !== null && _super.apply(this, arguments) || this;
57
+ }
58
+ DateRangeFieldRenderer = tslib.__decorate([
59
+ amisCore.Renderer({
60
+ type: 'date-range'
61
+ })
62
+ ], DateRangeFieldRenderer);
63
+ return DateRangeFieldRenderer;
64
+ })(DateRangeField));
65
+
66
+ exports.DateRangeField = DateRangeField;