amis 1.5.6 → 1.6.1-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (538) hide show
  1. package/.husky/pre-commit +1 -1
  2. package/README.md +1 -0
  3. package/lib/RootRenderer.d.ts +2 -0
  4. package/lib/RootRenderer.js +19 -1
  5. package/lib/RootRenderer.js.map +2 -2
  6. package/lib/Schema.d.ts +3 -2
  7. package/lib/Schema.js.map +1 -1
  8. package/lib/SchemaRenderer.js +52 -1
  9. package/lib/SchemaRenderer.js.map +2 -2
  10. package/lib/Scoped.d.ts +2 -0
  11. package/lib/Scoped.js +27 -1
  12. package/lib/Scoped.js.map +2 -2
  13. package/lib/actions/Action.d.ts +33 -0
  14. package/lib/actions/Action.js +100 -0
  15. package/lib/actions/Action.js.map +13 -0
  16. package/lib/actions/AjaxAction.d.ts +14 -0
  17. package/lib/actions/AjaxAction.js +68 -0
  18. package/lib/actions/AjaxAction.js.map +13 -0
  19. package/lib/actions/BreakAction.d.ts +12 -0
  20. package/lib/actions/BreakAction.js +28 -0
  21. package/lib/actions/BreakAction.js.map +13 -0
  22. package/lib/actions/BroadcastAction.d.ts +12 -0
  23. package/lib/actions/BroadcastAction.js +40 -0
  24. package/lib/actions/BroadcastAction.js.map +13 -0
  25. package/lib/actions/CmptAction.d.ts +12 -0
  26. package/lib/actions/CmptAction.js +40 -0
  27. package/lib/actions/CmptAction.js.map +13 -0
  28. package/lib/actions/ContinueAction.d.ts +12 -0
  29. package/lib/actions/ContinueAction.js +28 -0
  30. package/lib/actions/ContinueAction.js.map +13 -0
  31. package/lib/actions/CopyAction.d.ts +12 -0
  32. package/lib/actions/CopyAction.js +35 -0
  33. package/lib/actions/CopyAction.js.map +13 -0
  34. package/lib/actions/CustomAction.d.ts +12 -0
  35. package/lib/actions/CustomAction.js +43 -0
  36. package/lib/actions/CustomAction.js.map +13 -0
  37. package/lib/actions/DialogAction.d.ts +12 -0
  38. package/lib/actions/DialogAction.js +31 -0
  39. package/lib/actions/DialogAction.js.map +13 -0
  40. package/lib/actions/DrawerAction.d.ts +12 -0
  41. package/lib/actions/DrawerAction.js +31 -0
  42. package/lib/actions/DrawerAction.js.map +13 -0
  43. package/lib/actions/EmailAction.d.ts +12 -0
  44. package/lib/actions/EmailAction.js +37 -0
  45. package/lib/actions/EmailAction.js.map +13 -0
  46. package/lib/actions/LoopAction.d.ts +12 -0
  47. package/lib/actions/LoopAction.js +93 -0
  48. package/lib/actions/LoopAction.js.map +13 -0
  49. package/lib/actions/OpenPageAction.d.ts +12 -0
  50. package/lib/actions/OpenPageAction.js +33 -0
  51. package/lib/actions/OpenPageAction.js.map +13 -0
  52. package/lib/actions/ParallelAction.d.ts +5 -0
  53. package/lib/actions/ParallelAction.js +33 -0
  54. package/lib/actions/ParallelAction.js.map +13 -0
  55. package/lib/actions/SwitchAction.d.ts +8 -0
  56. package/lib/actions/SwitchAction.js +45 -0
  57. package/lib/actions/SwitchAction.js.map +13 -0
  58. package/lib/actions/index.d.ts +18 -0
  59. package/lib/actions/index.js +22 -0
  60. package/lib/actions/index.js.map +13 -0
  61. package/lib/components/AnchorNav.d.ts +20 -20
  62. package/lib/components/AssociatedSelection.d.ts +84 -84
  63. package/lib/components/AssociatedSelection.js +2 -2
  64. package/lib/components/AssociatedSelection.js.map +2 -2
  65. package/lib/components/Avatar.d.ts +135 -0
  66. package/lib/components/Avatar.js +120 -0
  67. package/lib/components/Avatar.js.map +13 -0
  68. package/lib/components/BaiduMapPicker.js.map +2 -2
  69. package/lib/components/Button.d.ts +20 -20
  70. package/lib/components/CalendarMobile.d.ts +573 -0
  71. package/lib/components/CalendarMobile.js +486 -0
  72. package/lib/components/CalendarMobile.js.map +13 -0
  73. package/lib/components/Cascader.d.ts +123 -0
  74. package/lib/components/Cascader.js +487 -0
  75. package/lib/components/Cascader.js.map +13 -0
  76. package/lib/components/ChainedSelection.d.ts +84 -84
  77. package/lib/components/ChainedSelection.js +15 -3
  78. package/lib/components/ChainedSelection.js.map +2 -2
  79. package/lib/components/CityArea.d.ts +527 -0
  80. package/lib/components/CityArea.js +177 -0
  81. package/lib/components/CityArea.js.map +13 -0
  82. package/lib/components/Collapse.d.ts +20 -20
  83. package/lib/components/ColorPicker.d.ts +84 -84
  84. package/lib/components/ColorPicker.js +4 -3
  85. package/lib/components/ColorPicker.js.map +2 -2
  86. package/lib/components/DatePicker.d.ts +85 -84
  87. package/lib/components/DatePicker.js +21 -8
  88. package/lib/components/DatePicker.js.map +2 -2
  89. package/lib/components/DateRangePicker.d.ts +85 -84
  90. package/lib/components/DateRangePicker.js +19 -6
  91. package/lib/components/DateRangePicker.js.map +2 -2
  92. package/lib/components/GroupedSelection.d.ts +84 -84
  93. package/lib/components/GroupedSelection.js +14 -2
  94. package/lib/components/GroupedSelection.js.map +2 -2
  95. package/lib/components/InputBox.d.ts +21 -21
  96. package/lib/components/ListGroup.d.ts +21 -21
  97. package/lib/components/ListMenu.d.ts +84 -84
  98. package/lib/components/MonthRangePicker.d.ts +85 -84
  99. package/lib/components/MonthRangePicker.js +18 -7
  100. package/lib/components/MonthRangePicker.js.map +2 -2
  101. package/lib/components/Overlay.d.ts +1 -1
  102. package/lib/components/Overlay.js.map +1 -1
  103. package/lib/components/Picker.d.ts +1 -0
  104. package/lib/components/Picker.js +16 -7
  105. package/lib/components/Picker.js.map +2 -2
  106. package/lib/components/PickerColumn.d.ts +1 -0
  107. package/lib/components/PickerColumn.js +21 -18
  108. package/lib/components/PickerColumn.js.map +2 -2
  109. package/lib/components/PickerContainer.d.ts +3 -0
  110. package/lib/components/PickerContainer.js +12 -5
  111. package/lib/components/PickerContainer.js.map +2 -2
  112. package/lib/components/PopOverContainer.d.ts +1 -0
  113. package/lib/components/PopOverContainer.js +5 -3
  114. package/lib/components/PopOverContainer.js.map +2 -2
  115. package/lib/components/PopUp.d.ts +1041 -28
  116. package/lib/components/PopUp.js +32 -8
  117. package/lib/components/PopUp.js.map +2 -2
  118. package/lib/components/Radios.d.ts +21 -21
  119. package/lib/components/Rating.d.ts +21 -21
  120. package/lib/components/ResultBox.d.ts +85 -84
  121. package/lib/components/ResultBox.js +9 -4
  122. package/lib/components/ResultBox.js.map +2 -2
  123. package/lib/components/ResultList.d.ts +9 -2
  124. package/lib/components/ResultList.js +22 -2
  125. package/lib/components/ResultList.js.map +2 -2
  126. package/lib/components/Select.d.ts +238 -238
  127. package/lib/components/Select.js +13 -9
  128. package/lib/components/Select.js.map +2 -2
  129. package/lib/components/Selection.d.ts +94 -86
  130. package/lib/components/Selection.js +11 -2
  131. package/lib/components/Selection.js.map +2 -2
  132. package/lib/components/Steps.js.map +2 -2
  133. package/lib/components/TableSelection.d.ts +85 -85
  134. package/lib/components/TableSelection.js +1 -9
  135. package/lib/components/TableSelection.js.map +2 -2
  136. package/lib/components/Tabs.js +31 -33
  137. package/lib/components/Tabs.js.map +2 -2
  138. package/lib/components/TabsTransfer.d.ts +87 -256
  139. package/lib/components/TabsTransfer.js +52 -9
  140. package/lib/components/TabsTransfer.js.map +2 -2
  141. package/lib/components/TabsTransferPicker.d.ts +1 -1
  142. package/lib/components/TabsTransferPicker.js +20 -18
  143. package/lib/components/TabsTransferPicker.js.map +2 -2
  144. package/lib/components/Timeline.d.ts +69 -0
  145. package/lib/components/Timeline.js +16 -0
  146. package/lib/components/Timeline.js.map +13 -0
  147. package/lib/components/TimelineItem.d.ts +517 -0
  148. package/lib/components/TimelineItem.js +40 -0
  149. package/lib/components/TimelineItem.js.map +13 -0
  150. package/lib/components/Transfer.d.ts +100 -98
  151. package/lib/components/Transfer.js +2 -3
  152. package/lib/components/Transfer.js.map +2 -2
  153. package/lib/components/TransferDropDown.d.ts +85 -84
  154. package/lib/components/TransferDropDown.js +9 -10
  155. package/lib/components/TransferDropDown.js.map +2 -2
  156. package/lib/components/TransferPicker.d.ts +1 -0
  157. package/lib/components/TransferPicker.js +19 -4
  158. package/lib/components/TransferPicker.js.map +2 -2
  159. package/lib/components/Tree.d.ts +84 -84
  160. package/lib/components/TreeSelection.d.ts +85 -85
  161. package/lib/components/TreeSelection.js +7 -1
  162. package/lib/components/TreeSelection.js.map +2 -2
  163. package/lib/components/calendar/Calendar.d.ts +19 -0
  164. package/lib/components/calendar/Calendar.js +71 -1
  165. package/lib/components/calendar/Calendar.js.map +2 -2
  166. package/lib/components/calendar/DaysView.d.ts +21 -0
  167. package/lib/components/calendar/DaysView.js +76 -17
  168. package/lib/components/calendar/DaysView.js.map +2 -2
  169. package/lib/components/calendar/MonthsView.d.ts +34 -0
  170. package/lib/components/calendar/MonthsView.js +68 -3
  171. package/lib/components/calendar/MonthsView.js.map +2 -2
  172. package/lib/components/calendar/QuartersView.d.ts +1 -0
  173. package/lib/components/calendar/QuartersView.js +2 -2
  174. package/lib/components/calendar/QuartersView.js.map +2 -2
  175. package/lib/components/calendar/TimeView.d.ts +30 -18
  176. package/lib/components/calendar/TimeView.js +47 -8
  177. package/lib/components/calendar/TimeView.js.map +2 -2
  178. package/lib/components/calendar/YearsView.d.ts +6 -0
  179. package/lib/components/calendar/YearsView.js +21 -10
  180. package/lib/components/calendar/YearsView.js.map +2 -2
  181. package/lib/components/condition-builder/Field.js +1 -4
  182. package/lib/components/condition-builder/Field.js.map +2 -2
  183. package/lib/components/condition-builder/Func.js +1 -1
  184. package/lib/components/condition-builder/Func.js.map +2 -2
  185. package/lib/components/formula/Editor.d.ts +3 -0
  186. package/lib/components/formula/Editor.js +3 -2
  187. package/lib/components/formula/Editor.js.map +2 -2
  188. package/lib/components/formula/FuncList.js +2 -1
  189. package/lib/components/formula/FuncList.js.map +2 -2
  190. package/lib/components/formula/Picker.js +1 -1
  191. package/lib/components/formula/Picker.js.map +2 -2
  192. package/lib/components/formula/plugin.js +0 -1
  193. package/lib/components/formula/plugin.js.map +2 -2
  194. package/lib/components/icons.js +2 -0
  195. package/lib/components/icons.js.map +2 -2
  196. package/lib/components/index.d.ts +2 -1
  197. package/lib/components/index.js +4 -2
  198. package/lib/components/index.js.map +2 -2
  199. package/lib/components/virtual-list/SizeAndPositionManager.js.map +2 -2
  200. package/lib/components/virtual-list/index.js +1 -2
  201. package/lib/components/virtual-list/index.js.map +2 -2
  202. package/lib/env.d.ts +4 -0
  203. package/lib/env.js.map +2 -2
  204. package/lib/factory.d.ts +2 -1
  205. package/lib/factory.js +83 -0
  206. package/lib/factory.js.map +2 -2
  207. package/lib/helper.css.map +1 -1
  208. package/lib/icons/tree-down.js +7 -0
  209. package/lib/index.d.ts +3 -0
  210. package/lib/index.js +4 -1
  211. package/lib/index.js.map +2 -2
  212. package/lib/locale/de-DE.js +17 -2
  213. package/lib/locale/de-DE.js.map +2 -2
  214. package/lib/locale/en-US.js +17 -2
  215. package/lib/locale/en-US.js.map +2 -2
  216. package/lib/locale/zh-CN.js +16 -1
  217. package/lib/locale/zh-CN.js.map +2 -2
  218. package/lib/renderers/Action.d.ts +1 -1
  219. package/lib/renderers/Action.js +26 -10
  220. package/lib/renderers/Action.js.map +2 -2
  221. package/lib/renderers/Avatar.d.ts +35 -26
  222. package/lib/renderers/Avatar.js +14 -19
  223. package/lib/renderers/Avatar.js.map +2 -2
  224. package/lib/renderers/CRUD.js +1 -2
  225. package/lib/renderers/CRUD.js.map +2 -2
  226. package/lib/renderers/Card.js +6 -5
  227. package/lib/renderers/Card.js.map +2 -2
  228. package/lib/renderers/Custom.d.ts +1 -1
  229. package/lib/renderers/Custom.js +1 -1
  230. package/lib/renderers/Custom.js.map +2 -2
  231. package/lib/renderers/DropDownButton.d.ts +11 -2
  232. package/lib/renderers/DropDownButton.js +30 -12
  233. package/lib/renderers/DropDownButton.js.map +2 -2
  234. package/lib/renderers/Each.js +5 -2
  235. package/lib/renderers/Each.js.map +2 -2
  236. package/lib/renderers/Flex.js +1 -5
  237. package/lib/renderers/Flex.js.map +2 -2
  238. package/lib/renderers/Form/ChartRadios.js.map +2 -2
  239. package/lib/renderers/Form/Checkboxes.js.map +2 -2
  240. package/lib/renderers/Form/CityDB.js +526 -2
  241. package/lib/renderers/Form/CityDB.js.map +2 -2
  242. package/lib/renderers/Form/DiffEditor.d.ts +6 -0
  243. package/lib/renderers/Form/DiffEditor.js +2 -1
  244. package/lib/renderers/Form/DiffEditor.js.map +2 -2
  245. package/lib/renderers/Form/Editor.d.ts +6 -0
  246. package/lib/renderers/Form/InputCity.d.ts +85 -84
  247. package/lib/renderers/Form/InputCity.js +4 -2
  248. package/lib/renderers/Form/InputCity.js.map +2 -2
  249. package/lib/renderers/Form/InputColor.d.ts +84 -84
  250. package/lib/renderers/Form/InputColor.js +6 -2
  251. package/lib/renderers/Form/InputColor.js.map +2 -2
  252. package/lib/renderers/Form/InputDate.js +10 -5
  253. package/lib/renderers/Form/InputDate.js.map +2 -2
  254. package/lib/renderers/Form/InputDateRange.js +6 -2
  255. package/lib/renderers/Form/InputDateRange.js.map +2 -2
  256. package/lib/renderers/Form/InputFormula.d.ts +4 -1
  257. package/lib/renderers/Form/InputFormula.js +2 -2
  258. package/lib/renderers/Form/InputFormula.js.map +2 -2
  259. package/lib/renderers/Form/InputImage.d.ts +1 -0
  260. package/lib/renderers/Form/InputImage.js +8 -4
  261. package/lib/renderers/Form/InputImage.js.map +2 -2
  262. package/lib/renderers/Form/InputMonthRange.js +1 -1
  263. package/lib/renderers/Form/InputMonthRange.js.map +2 -2
  264. package/lib/renderers/Form/InputQuarterRange.js +1 -1
  265. package/lib/renderers/Form/InputQuarterRange.js.map +2 -2
  266. package/lib/renderers/Form/InputYearRange.js +1 -1
  267. package/lib/renderers/Form/InputYearRange.js.map +2 -2
  268. package/lib/renderers/Form/Item.d.ts +10 -14
  269. package/lib/renderers/Form/Item.js +18 -9
  270. package/lib/renderers/Form/Item.js.map +2 -2
  271. package/lib/renderers/Form/NestedSelect.d.ts +1 -0
  272. package/lib/renderers/Form/NestedSelect.js +8 -4
  273. package/lib/renderers/Form/NestedSelect.js.map +2 -2
  274. package/lib/renderers/Form/Options.js +9 -7
  275. package/lib/renderers/Form/Options.js.map +2 -2
  276. package/lib/renderers/Form/Select.d.ts +2 -0
  277. package/lib/renderers/Form/Select.js +9 -6
  278. package/lib/renderers/Form/Select.js.map +2 -2
  279. package/lib/renderers/Form/TabsTransfer.d.ts +5 -32
  280. package/lib/renderers/Form/TabsTransfer.js +20 -1
  281. package/lib/renderers/Form/TabsTransfer.js.map +2 -2
  282. package/lib/renderers/Form/TabsTransferPicker.d.ts +5 -35
  283. package/lib/renderers/Form/TabsTransferPicker.js +21 -2
  284. package/lib/renderers/Form/TabsTransferPicker.js.map +2 -2
  285. package/lib/renderers/Form/Transfer.d.ts +15 -4
  286. package/lib/renderers/Form/Transfer.js +55 -18
  287. package/lib/renderers/Form/Transfer.js.map +2 -2
  288. package/lib/renderers/Form/TransferPicker.d.ts +3 -32
  289. package/lib/renderers/Form/TransferPicker.js +1 -1
  290. package/lib/renderers/Form/TransferPicker.js.map +2 -2
  291. package/lib/renderers/Form/TreeSelect.js +4 -4
  292. package/lib/renderers/Form/TreeSelect.js.map +2 -2
  293. package/lib/renderers/Form/index.js +10 -2
  294. package/lib/renderers/Form/index.js.map +2 -2
  295. package/lib/renderers/IFrame.js +0 -2
  296. package/lib/renderers/IFrame.js.map +2 -2
  297. package/lib/renderers/Link.d.ts +1 -1
  298. package/lib/renderers/Link.js +27 -6
  299. package/lib/renderers/Link.js.map +2 -2
  300. package/lib/renderers/Nav.d.ts +21 -21
  301. package/lib/renderers/Nav.js +4 -1
  302. package/lib/renderers/Nav.js.map +2 -2
  303. package/lib/renderers/Remark.d.ts +5 -1
  304. package/lib/renderers/Remark.js +39 -7
  305. package/lib/renderers/Remark.js.map +2 -2
  306. package/lib/renderers/Steps.js +5 -5
  307. package/lib/renderers/Steps.js.map +2 -2
  308. package/lib/renderers/Table/TableRow.js +4 -1
  309. package/lib/renderers/Table/TableRow.js.map +2 -2
  310. package/lib/renderers/Table/index.js +4 -1
  311. package/lib/renderers/Table/index.js.map +2 -2
  312. package/lib/renderers/Tabs.js +1 -1
  313. package/lib/renderers/Tabs.js.map +2 -2
  314. package/lib/renderers/Timeline.d.ts +65 -0
  315. package/lib/renderers/Timeline.js +54 -0
  316. package/lib/renderers/Timeline.js.map +13 -0
  317. package/lib/renderers/Video.js.map +2 -2
  318. package/lib/schemaExtend.js +23 -9
  319. package/lib/schemaExtend.js.map +2 -2
  320. package/lib/store/combo.js.map +2 -2
  321. package/lib/store/formItem.js +7 -7
  322. package/lib/store/formItem.js.map +2 -2
  323. package/lib/store/table.js +1 -1
  324. package/lib/store/table.js.map +2 -2
  325. package/lib/themes/ang-ie11.css +1149 -53
  326. package/lib/themes/ang.css +1149 -53
  327. package/lib/themes/ang.css.map +1 -1
  328. package/lib/themes/antd-ie11.css +1187 -53
  329. package/lib/themes/antd.css +1187 -53
  330. package/lib/themes/antd.css.map +1 -1
  331. package/lib/themes/cxd-ie11.css +1190 -71
  332. package/lib/themes/cxd.css +1190 -71
  333. package/lib/themes/cxd.css.map +1 -1
  334. package/lib/themes/dark-ie11.css +1152 -53
  335. package/lib/themes/dark.css +1152 -53
  336. package/lib/themes/dark.css.map +1 -1
  337. package/lib/themes/default.css +1190 -71
  338. package/lib/themes/default.css.map +1 -1
  339. package/lib/utils/RootClose.js +3 -1
  340. package/lib/utils/RootClose.js.map +2 -2
  341. package/lib/utils/api.js +14 -3
  342. package/lib/utils/api.js.map +2 -2
  343. package/lib/utils/debug.d.ts +26 -0
  344. package/lib/utils/debug.js +351 -0
  345. package/lib/utils/debug.js.map +13 -0
  346. package/lib/utils/helper.d.ts +1 -6
  347. package/lib/utils/helper.js +6 -17
  348. package/lib/utils/helper.js.map +2 -2
  349. package/lib/utils/renderer-event.d.ts +38 -0
  350. package/lib/utils/renderer-event.js +28 -0
  351. package/lib/utils/renderer-event.js.map +13 -0
  352. package/package.json +12 -6
  353. package/schema.json +3483 -810
  354. package/scss/_properties.scss +20 -6
  355. package/scss/_variables.scss +1 -0
  356. package/scss/components/_avatar.scss +27 -9
  357. package/scss/components/_calendar.scss +291 -0
  358. package/scss/components/_card.scss +1 -1
  359. package/scss/components/_cascader.scss +102 -0
  360. package/scss/components/_city-area.scss +27 -0
  361. package/scss/components/_collapse-group.scss +1 -3
  362. package/scss/components/_debug.scss +167 -0
  363. package/scss/components/_dropdown.scss +39 -9
  364. package/scss/components/_formula.scss +30 -6
  365. package/scss/components/_modal.scss +18 -0
  366. package/scss/components/_panel.scss +45 -0
  367. package/scss/components/_picker-columns.scss +15 -5
  368. package/scss/components/_popup.scss +43 -16
  369. package/scss/components/_result-box.scss +31 -0
  370. package/scss/components/_timeline.scss +198 -0
  371. package/scss/components/form/_checks.scss +2 -0
  372. package/scss/components/form/_color.scss +2 -2
  373. package/scss/components/form/_date-range.scss +34 -1
  374. package/scss/components/form/_date.scss +46 -1
  375. package/scss/components/form/_form.scss +170 -0
  376. package/scss/components/form/_nested-select.scss +3 -0
  377. package/scss/components/form/_result-list.scss +2 -0
  378. package/scss/components/form/_select.scss +32 -3
  379. package/scss/components/form/_selection.scss +5 -4
  380. package/scss/components/form/_transfer.scss +3 -0
  381. package/scss/components/form/_tree-select.scss +1 -1
  382. package/scss/themes/_antd-variables.scss +45 -0
  383. package/scss/themes/_common.scss +5 -0
  384. package/scss/themes/_cxd-variables.scss +51 -2
  385. package/scss/themes/_dark-variables.scss +4 -0
  386. package/scss/themes/cxd.scss +0 -19
  387. package/sdk/ang-ie11.css +1450 -142
  388. package/sdk/ang.css +1473 -159
  389. package/sdk/antd-ie11.css +1451 -142
  390. package/sdk/antd.css +1511 -159
  391. package/sdk/charts.js +15 -15
  392. package/sdk/codemirror.js +7 -7
  393. package/sdk/color-picker.js +65 -65
  394. package/sdk/cropperjs.js +2 -2
  395. package/sdk/cxd-ie11.css +1449 -159
  396. package/sdk/cxd.css +1514 -179
  397. package/sdk/dark-ie11.css +1450 -142
  398. package/sdk/dark.css +1476 -159
  399. package/sdk/exceljs.js +1 -1
  400. package/sdk/helper.css.map +1 -1
  401. package/sdk/locale/de-DE.js +17 -2
  402. package/sdk/markdown.js +69 -69
  403. package/sdk/papaparse.js +1 -1
  404. package/sdk/renderers/Form/CityDB.js +1 -1
  405. package/sdk/rest.js +18 -18
  406. package/sdk/rich-text.js +62 -62
  407. package/sdk/sdk-ie11.css +1449 -159
  408. package/sdk/sdk.css +1514 -179
  409. package/sdk/sdk.js +1311 -1253
  410. package/sdk/thirds/hls.js/hls.js +1 -1
  411. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  412. package/sdk/tinymce.js +57 -57
  413. package/src/RootRenderer.tsx +27 -1
  414. package/src/Schema.ts +3 -0
  415. package/src/SchemaRenderer.tsx +70 -4
  416. package/src/Scoped.tsx +46 -4
  417. package/src/actions/Action.ts +138 -0
  418. package/src/actions/AjaxAction.ts +58 -0
  419. package/src/actions/BreakAction.ts +27 -0
  420. package/src/actions/BroadcastAction.ts +41 -0
  421. package/src/actions/CmptAction.ts +36 -0
  422. package/src/actions/ContinueAction.ts +27 -0
  423. package/src/actions/CopyAction.ts +41 -0
  424. package/src/actions/CustomAction.ts +46 -0
  425. package/src/actions/DialogAction.ts +28 -0
  426. package/src/actions/DrawerAction.ts +28 -0
  427. package/src/actions/EmailAction.ts +38 -0
  428. package/src/actions/LoopAction.ts +77 -0
  429. package/src/actions/OpenPageAction.ts +39 -0
  430. package/src/actions/ParallelAction.ts +26 -0
  431. package/src/actions/SwitchAction.ts +35 -0
  432. package/src/actions/index.ts +20 -0
  433. package/src/components/AssociatedSelection.tsx +5 -1
  434. package/src/components/Avatar.tsx +253 -0
  435. package/src/components/BaiduMapPicker.tsx +19 -14
  436. package/src/components/CalendarMobile.tsx +658 -0
  437. package/src/components/Cascader.tsx +564 -0
  438. package/src/components/ChainedSelection.tsx +16 -3
  439. package/src/components/CityArea.tsx +315 -0
  440. package/src/components/ColorPicker.tsx +41 -40
  441. package/src/components/DatePicker.tsx +80 -34
  442. package/src/components/DateRangePicker.tsx +85 -30
  443. package/src/components/GroupedSelection.tsx +14 -2
  444. package/src/components/MonthRangePicker.tsx +78 -31
  445. package/src/components/Overlay.tsx +1 -1
  446. package/src/components/Picker.tsx +55 -35
  447. package/src/components/PickerColumn.tsx +43 -36
  448. package/src/components/PickerContainer.tsx +13 -1
  449. package/src/components/PopOverContainer.tsx +31 -17
  450. package/src/components/PopUp.tsx +84 -57
  451. package/src/components/ResultBox.tsx +14 -2
  452. package/src/components/ResultList.tsx +36 -6
  453. package/src/components/Select.tsx +24 -26
  454. package/src/components/Selection.tsx +21 -3
  455. package/src/components/Steps.tsx +23 -10
  456. package/src/components/TableSelection.tsx +1 -44
  457. package/src/components/Tabs.tsx +65 -54
  458. package/src/components/TabsTransfer.tsx +78 -9
  459. package/src/components/TabsTransferPicker.tsx +25 -13
  460. package/src/components/Timeline.tsx +36 -0
  461. package/src/components/TimelineItem.tsx +140 -0
  462. package/src/components/Transfer.tsx +11 -8
  463. package/src/components/TransferDropDown.tsx +20 -12
  464. package/src/components/TransferPicker.tsx +25 -4
  465. package/src/components/TreeSelection.tsx +7 -1
  466. package/src/components/calendar/Calendar.tsx +101 -4
  467. package/src/components/calendar/DaysView.tsx +165 -33
  468. package/src/components/calendar/MonthsView.tsx +108 -1
  469. package/src/components/calendar/QuartersView.tsx +3 -2
  470. package/src/components/calendar/TimeView.tsx +104 -41
  471. package/src/components/calendar/YearsView.tsx +34 -17
  472. package/src/components/condition-builder/Field.tsx +1 -3
  473. package/src/components/condition-builder/Func.tsx +1 -1
  474. package/src/components/formula/Editor.tsx +16 -11
  475. package/src/components/formula/FuncList.tsx +3 -1
  476. package/src/components/formula/Picker.tsx +2 -1
  477. package/src/components/formula/plugin.ts +0 -2
  478. package/src/components/icons.tsx +2 -0
  479. package/src/components/index.tsx +2 -0
  480. package/src/components/virtual-list/SizeAndPositionManager.ts +6 -3
  481. package/src/components/virtual-list/index.tsx +4 -6
  482. package/src/env.tsx +22 -0
  483. package/src/factory.tsx +93 -1
  484. package/src/icons/tree-down.svg +5 -0
  485. package/src/index.tsx +5 -0
  486. package/src/locale/de-DE.ts +17 -2
  487. package/src/locale/en-US.ts +17 -2
  488. package/src/locale/zh-CN.ts +16 -1
  489. package/src/renderers/Action.tsx +11 -2
  490. package/src/renderers/Avatar.tsx +83 -74
  491. package/src/renderers/CRUD.tsx +1 -3
  492. package/src/renderers/Card.tsx +10 -6
  493. package/src/renderers/Custom.tsx +7 -4
  494. package/src/renderers/DropDownButton.tsx +69 -35
  495. package/src/renderers/Each.tsx +4 -4
  496. package/src/renderers/Flex.tsx +3 -7
  497. package/src/renderers/Form/ChartRadios.tsx +2 -7
  498. package/src/renderers/Form/Checkboxes.tsx +1 -1
  499. package/src/renderers/Form/CityDB.ts +526 -2
  500. package/src/renderers/Form/DiffEditor.tsx +2 -3
  501. package/src/renderers/Form/InputCity.tsx +23 -3
  502. package/src/renderers/Form/InputColor.tsx +21 -2
  503. package/src/renderers/Form/InputDate.tsx +48 -20
  504. package/src/renderers/Form/InputDateRange.tsx +9 -2
  505. package/src/renderers/Form/InputFormula.tsx +9 -4
  506. package/src/renderers/Form/InputImage.tsx +9 -4
  507. package/src/renderers/Form/InputMonthRange.tsx +0 -1
  508. package/src/renderers/Form/InputQuarterRange.tsx +0 -1
  509. package/src/renderers/Form/InputYearRange.tsx +0 -1
  510. package/src/renderers/Form/Item.tsx +29 -8
  511. package/src/renderers/Form/NestedSelect.tsx +32 -4
  512. package/src/renderers/Form/Options.tsx +15 -7
  513. package/src/renderers/Form/Select.tsx +21 -5
  514. package/src/renderers/Form/TabsTransfer.tsx +28 -38
  515. package/src/renderers/Form/TabsTransferPicker.tsx +28 -46
  516. package/src/renderers/Form/Transfer.tsx +75 -24
  517. package/src/renderers/Form/TransferPicker.tsx +6 -38
  518. package/src/renderers/Form/TreeSelect.tsx +18 -16
  519. package/src/renderers/Form/index.tsx +9 -2
  520. package/src/renderers/IFrame.tsx +0 -2
  521. package/src/renderers/Link.tsx +18 -3
  522. package/src/renderers/Nav.tsx +4 -1
  523. package/src/renderers/Remark.tsx +68 -18
  524. package/src/renderers/Steps.tsx +11 -13
  525. package/src/renderers/Table/TableRow.tsx +3 -1
  526. package/src/renderers/Table/index.tsx +7 -1
  527. package/src/renderers/Tabs.tsx +6 -2
  528. package/src/renderers/Timeline.tsx +141 -0
  529. package/src/renderers/Video.tsx +4 -20
  530. package/src/schemaExtend.ts +22 -10
  531. package/src/store/combo.ts +1 -3
  532. package/src/store/formItem.ts +3 -3
  533. package/src/store/table.ts +2 -1
  534. package/src/utils/RootClose.ts +5 -1
  535. package/src/utils/api.ts +15 -2
  536. package/src/utils/debug.tsx +438 -0
  537. package/src/utils/helper.ts +6 -16
  538. package/src/utils/renderer-event.ts +75 -0
@@ -0,0 +1,438 @@
1
+ /**
2
+ * amis 运行时调试功能,为了避免循环引用,这个组件不要依赖 amis 里的组件
3
+ */
4
+
5
+ import React, {Component, useEffect, useRef, useState} from 'react';
6
+ import cx from 'classnames';
7
+ import {findDOMNode, render} from 'react-dom';
8
+ import JsonView from 'react-json-view';
9
+ import {autorun, observable} from 'mobx';
10
+ import {observer} from 'mobx-react';
11
+ import {uuidv4} from './helper';
12
+ import position from './position';
13
+
14
+ class Log {
15
+ @observable cat = '';
16
+ @observable level = '';
17
+ @observable msg = '';
18
+ @observable ext? = '';
19
+ }
20
+
21
+ class AMISDebugStore {
22
+ /**
23
+ * 当前 tab
24
+ */
25
+ @observable tab: 'log' | 'inspect' = 'log';
26
+
27
+ /**
28
+ * 显示位置,默认在右边
29
+ */
30
+ @observable position: 'left' | 'right' = 'right';
31
+
32
+ /**
33
+ * 组件日志
34
+ */
35
+ @observable logs: Log[] = [];
36
+
37
+ /**
38
+ * Debug 面板是否展开
39
+ */
40
+ @observable isExpanded = false;
41
+
42
+ /**
43
+ * 是否是 inspect 模式,在这个模式下可以查看数据域
44
+ */
45
+ @observable inspectMode = false;
46
+
47
+ /**
48
+ * 当前高亮的组件节点 id
49
+ */
50
+ @observable hoverId: string;
51
+
52
+ /**
53
+ * 当前选中的组件节点 id
54
+ */
55
+ @observable activeId: string;
56
+ }
57
+
58
+ const store = new AMISDebugStore();
59
+
60
+ interface ComponentInspect {
61
+ name: string;
62
+ component: any;
63
+ }
64
+
65
+ // 存储组件信息用于 debug
66
+ const ComponentInfo = {} as {[propName: string]: ComponentInspect};
67
+
68
+ const LogView = observer(({store}: {store: AMISDebugStore}) => {
69
+ const logs = store.logs;
70
+ return (
71
+ <>
72
+ {logs.map((log, index) => {
73
+ return (
74
+ <div className="AMISDebug-logLine" key={`log-${index}`}>
75
+ <div className="AMISDebug-logLineMsg">
76
+ [{log.cat}] {log.msg}
77
+ </div>
78
+ {log.ext ? (
79
+ <JsonView
80
+ name={null}
81
+ theme="monokai"
82
+ src={JSON.parse(log.ext)}
83
+ collapsed={true}
84
+ enableClipboard={false}
85
+ displayDataTypes={false}
86
+ iconStyle="square"
87
+ />
88
+ ) : null}
89
+ </div>
90
+ );
91
+ })}
92
+ </>
93
+ );
94
+ });
95
+
96
+ const AMISDebug = observer(({store}: {store: AMISDebugStore}) => {
97
+ const activeId = store.activeId;
98
+ const activeComponentInspect = ComponentInfo[activeId];
99
+
100
+ // 收集数据域里的数据
101
+ let start = activeComponentInspect?.component?.props?.data || {};
102
+ const stacks = [start];
103
+
104
+ while (Object.getPrototypeOf(start) !== Object.prototype) {
105
+ const superData = Object.getPrototypeOf(start);
106
+ if (Object.prototype.toString.call(superData) !== '[object Object]') {
107
+ break;
108
+ }
109
+ stacks.push(superData);
110
+ start = superData;
111
+ }
112
+
113
+ const stackDataView = [];
114
+ if (Object.keys(stacks[0]).length || stacks.length > 1) {
115
+ let level = 0;
116
+ for (const stack of stacks) {
117
+ stackDataView.push(
118
+ <div key={`data-${level}`}>
119
+ <h3>Data Level-{level}</h3>
120
+ <JsonView
121
+ key={`dataview-${stack}`}
122
+ name={null}
123
+ theme="monokai"
124
+ src={stack}
125
+ collapsed={level === 0 ? false : true}
126
+ enableClipboard={false}
127
+ displayDataTypes={false}
128
+ iconStyle="square"
129
+ />
130
+ </div>
131
+ );
132
+ level += 1;
133
+ }
134
+ }
135
+
136
+ const panelRef = useRef(null);
137
+
138
+ const [isResizing, setResizing] = useState(false);
139
+
140
+ const [startX, setStartX] = useState(0);
141
+
142
+ const [panelWidth, setPanelWidth] = useState(0);
143
+
144
+ useEffect(() => {
145
+ const handleMouseUp = () => {
146
+ setResizing(false);
147
+ };
148
+ const handleMouseMove = (e: MouseEvent) => {
149
+ if (!isResizing) {
150
+ return;
151
+ }
152
+ const xOffset =
153
+ store.position === 'right' ? e.clientX - startX : startX - e.clientX;
154
+ const panel = panelRef.current! as HTMLElement;
155
+ const targetWidth = Math.max(200, panelWidth - xOffset);
156
+ panel.style.width = targetWidth + 'px';
157
+ if (e.stopPropagation) e.stopPropagation();
158
+ if (e.preventDefault) e.preventDefault();
159
+ e.cancelBubble = true;
160
+ return false;
161
+ };
162
+ if (isResizing) {
163
+ document.addEventListener('mousemove', handleMouseMove);
164
+ document.addEventListener('mouseup', handleMouseUp);
165
+ }
166
+
167
+ return () => {
168
+ if (isResizing) {
169
+ document.removeEventListener('mousemove', handleMouseMove);
170
+ document.removeEventListener('mouseup', handleMouseUp);
171
+ }
172
+ };
173
+ }, [isResizing]);
174
+
175
+ return (
176
+ <div
177
+ className={cx('AMISDebug', {
178
+ 'is-expanded': store.isExpanded,
179
+ 'is-left': store.position === 'left'
180
+ })}
181
+ ref={panelRef}
182
+ >
183
+ <div
184
+ className="AMISDebug-toggle"
185
+ onClick={() => {
186
+ store.isExpanded = true;
187
+ }}
188
+ >
189
+ {store.isExpanded ? (
190
+ <i className="fas fa-times"></i>
191
+ ) : (
192
+ <i className="fas fa-bug"></i>
193
+ )}
194
+ </div>
195
+ <div className={cx('AMISDebug-content')}>
196
+ <div
197
+ className="AMISDebug-close"
198
+ title="Close"
199
+ onClick={() => {
200
+ store.isExpanded = false;
201
+ }}
202
+ >
203
+ <i className="fas fa-times" />
204
+ </div>
205
+ <div
206
+ className="AMISDebug-resize"
207
+ onMouseDown={event => {
208
+ setStartX(event.clientX);
209
+ setPanelWidth(
210
+ parseInt(
211
+ getComputedStyle(panelRef.current!).getPropertyValue('width'),
212
+ 10
213
+ )
214
+ );
215
+ setResizing(true);
216
+ }}
217
+ ></div>
218
+ <div className="AMISDebug-tab">
219
+ <button
220
+ className={cx({active: store.tab === 'log'})}
221
+ onClick={() => {
222
+ store.tab = 'log';
223
+ }}
224
+ >
225
+ Log
226
+ </button>
227
+ <button
228
+ className={cx({active: store.tab === 'inspect'})}
229
+ onClick={() => {
230
+ store.tab = 'inspect';
231
+ }}
232
+ >
233
+ Inspect
234
+ </button>
235
+ </div>
236
+ <div className="AMISDebug-changePosition">
237
+ {store.position === 'right' ? (
238
+ <i
239
+ className="fas fa-chevron-left"
240
+ title="move to left"
241
+ onClick={() => {
242
+ store.position = 'left';
243
+ }}
244
+ />
245
+ ) : (
246
+ <i
247
+ className="fas fa-chevron-right"
248
+ title="move to right"
249
+ onClick={() => {
250
+ store.position = 'right';
251
+ }}
252
+ />
253
+ )}
254
+ </div>
255
+ {store.tab === 'log' ? (
256
+ <div className="AMISDebug-log">
257
+ <button
258
+ onClick={() => {
259
+ store.logs = [];
260
+ }}
261
+ >
262
+ Clear Log
263
+ </button>
264
+ <LogView store={store} />
265
+ </div>
266
+ ) : null}
267
+ {store.tab === 'inspect' ? (
268
+ <div className="AMISDebug-inspect">
269
+ {activeId ? (
270
+ <>
271
+ <h3>
272
+ Component:{' '}
273
+ <span className="primary">{activeComponentInspect.name}</span>
274
+ </h3>
275
+ {stackDataView}
276
+ </>
277
+ ) : (
278
+ 'Click component to display inspect'
279
+ )}
280
+ </div>
281
+ ) : null}
282
+ </div>
283
+ </div>
284
+ );
285
+ });
286
+
287
+ export let enableAMISDebug = false;
288
+
289
+ // 开启 debug 有两种方法,一个是设置 enableAMISDebug 全局变量,另一个是通过 amisDebug=1 query
290
+ if (
291
+ (window as any).enableAMISDebug ||
292
+ location.search.indexOf('amisDebug=1') !== -1
293
+ ) {
294
+ enableAMISDebug = true;
295
+ // 页面只有一个
296
+ if (!(window as any).amisDebugElement) {
297
+ const amisDebugElement = document.createElement('div');
298
+ document.body.appendChild(amisDebugElement);
299
+ const element = <AMISDebug store={store} />;
300
+ render(element, amisDebugElement);
301
+ (window as any).amisDebugElement = true;
302
+ }
303
+ }
304
+
305
+ /**
306
+ * 鼠标移动到某个组件的效果
307
+ */
308
+ function handleMouseMove(e: MouseEvent) {
309
+ if (!store.isExpanded) {
310
+ return;
311
+ }
312
+ const dom = e.target as HTMLElement;
313
+ const target = dom.closest(`[data-debug-id]`);
314
+ if (target) {
315
+ store.hoverId = target.getAttribute('data-debug-id')!;
316
+ }
317
+ }
318
+
319
+ /**
320
+ * 点选某个组件
321
+ */
322
+ function handleMouseclick(e: MouseEvent) {
323
+ if (!store.isExpanded) {
324
+ return;
325
+ }
326
+ const dom = e.target as HTMLElement;
327
+ const target = dom.closest(`[data-debug-id]`);
328
+ if (target) {
329
+ store.activeId = target.getAttribute('data-debug-id')!;
330
+ store.tab = 'inspect';
331
+ }
332
+ }
333
+
334
+ // hover 及点击后的高亮
335
+ const amisHoverBox = document.createElement('div');
336
+ amisHoverBox.className = 'AMISDebug-hoverBox';
337
+ const amisActiveBox = document.createElement('div');
338
+ amisActiveBox.className = 'AMISDebug-activeBox';
339
+
340
+ autorun(() => {
341
+ const hoverId = store.hoverId;
342
+ const hoverElement = document.querySelector(
343
+ `[data-debug-id="${hoverId}"]`
344
+ ) as HTMLElement;
345
+ if (hoverElement) {
346
+ const offset = position(hoverElement, document.body);
347
+ amisHoverBox.style.top = `${offset.top}px`;
348
+ amisHoverBox.style.left = `${offset.left}px`;
349
+ amisHoverBox.style.width = `${offset.width}px`;
350
+ amisHoverBox.style.height = `${offset.height}px`;
351
+ }
352
+ });
353
+
354
+ autorun(() => {
355
+ const activeId = store.activeId;
356
+ const activeElement = document.querySelector(
357
+ `[data-debug-id="${activeId}"]`
358
+ ) as HTMLElement;
359
+ if (activeElement) {
360
+ const offset = position(activeElement, document.body);
361
+ amisActiveBox.style.top = `${offset.top}px`;
362
+ amisActiveBox.style.left = `${offset.left}px`;
363
+ amisActiveBox.style.width = `${offset.width}px`;
364
+ amisActiveBox.style.height = `${offset.height}px`;
365
+ }
366
+ });
367
+
368
+ if (enableAMISDebug) {
369
+ document.body.appendChild(amisHoverBox);
370
+ document.body.appendChild(amisActiveBox);
371
+ document.addEventListener('mousemove', handleMouseMove);
372
+ document.addEventListener('click', handleMouseclick);
373
+ }
374
+
375
+ interface DebugWrapperProps {
376
+ renderer: any;
377
+ }
378
+
379
+ export class DebugWrapper extends Component<DebugWrapperProps> {
380
+ componentDidMount() {
381
+ if (!enableAMISDebug) {
382
+ return;
383
+ }
384
+ const root = findDOMNode(this) as HTMLElement;
385
+ if (!root) {
386
+ return;
387
+ }
388
+ const {renderer} = this.props;
389
+ const debugId = uuidv4();
390
+ root.setAttribute('data-debug-id', debugId);
391
+ ComponentInfo[debugId] = {
392
+ name: renderer.name,
393
+ component: this.props.children
394
+ };
395
+ }
396
+
397
+ render() {
398
+ return this.props.children;
399
+ }
400
+ }
401
+
402
+ type Category = 'api' | 'event';
403
+
404
+ /**
405
+ * 一般调试日志
406
+ * @param msg 简单消息
407
+ * @param ext 扩展信息
408
+ */
409
+ export function debug(cat: Category, msg: string, ext?: object) {
410
+ if (!enableAMISDebug) {
411
+ return;
412
+ }
413
+ const log = {
414
+ cat,
415
+ level: 'debug',
416
+ msg: msg,
417
+ ext: JSON.stringify(ext)
418
+ };
419
+ console.debug(log);
420
+ store.logs.push(log);
421
+ }
422
+
423
+ /**
424
+ * 警告日志
425
+ * @param msg 简单消息
426
+ * @param ext 扩展信息
427
+ */
428
+ export function warning(cat: Category, msg: string, ext?: object) {
429
+ if (!enableAMISDebug) {
430
+ return;
431
+ }
432
+ store.logs.push({
433
+ cat,
434
+ level: 'warn',
435
+ msg: msg,
436
+ ext: JSON.stringify(ext)
437
+ });
438
+ }
@@ -1585,30 +1585,20 @@ export function JSONTraverse(
1585
1585
  });
1586
1586
  }
1587
1587
 
1588
- export function convertDateArrayToDate(
1588
+ export function convertArrayValueToMoment(
1589
1589
  value: number[],
1590
1590
  types: string[],
1591
- date: moment.Moment
1592
- ): moment.Moment | null {
1593
- if (value.length === 0) return date;
1591
+ mom: moment.Moment
1592
+ ): moment.Moment {
1593
+ if (value.length === 0) return mom;
1594
1594
  for (let i = 0; i < types.length; i++) {
1595
1595
  const type = types[i];
1596
1596
  // @ts-ignore
1597
- date[type](value[i]);
1597
+ mom.set(type, value[i]);
1598
1598
  }
1599
- return date;
1599
+ return mom;
1600
1600
  }
1601
1601
 
1602
- export function convertDateToObject(value: moment.Moment) {
1603
- if (value) {
1604
- return {
1605
- year: value.year(),
1606
- month: parseInt(value.format('MM'), 10),
1607
- day: parseInt(value.format('DD'), 10)
1608
- };
1609
- }
1610
- return null;
1611
- }
1612
1602
 
1613
1603
  export function getRange(min: number, max: number, step: number = 1) {
1614
1604
  const arr = [];
@@ -0,0 +1,75 @@
1
+ import {ListenerAction, ListenerContext} from '../actions/Action';
2
+
3
+ // 事件监听器
4
+ export interface EventListeners {
5
+ [propName: string]: {
6
+ weight?: number; // 权重
7
+ actions: ListenerAction[]; // 执行的动作集
8
+ };
9
+ }
10
+
11
+ // 事件动作属性
12
+ export interface OnEventProps {
13
+ onEvent?: {
14
+ [propName: string]: {
15
+ weight?: number; // 权重
16
+ actions: ListenerAction[]; // 执行的动作集
17
+ };
18
+ };
19
+ }
20
+
21
+ // 渲染器事件监听器
22
+ export interface RendererEventListener {
23
+ renderer: ListenerContext;
24
+ type: string;
25
+ weight: number;
26
+ actions: ListenerAction[];
27
+ }
28
+
29
+ // 将事件上下文转成事件对象
30
+ export type RendererEvent<T, P = any> = {
31
+ context: T;
32
+ type: string;
33
+ prevented?: boolean; // 阻止原有动作执行
34
+ stoped?: boolean; // 阻止后续动作执行
35
+ data?: P;
36
+ preventDefault: () => void;
37
+ stopPropagation: () => void;
38
+ setData: (data: P) => void;
39
+ };
40
+
41
+ export interface RendererEventContext {
42
+ data?: any;
43
+ [propName: string]: any;
44
+ }
45
+
46
+ // 创建渲染器事件对象
47
+ export function createRendererEvent<T extends RendererEventContext>(
48
+ type: string,
49
+ context: T
50
+ ): RendererEvent<T> {
51
+ const rendererEvent = {
52
+ context,
53
+ type,
54
+ prevented: false,
55
+ stoped: false,
56
+ preventDefault() {
57
+ rendererEvent.prevented = true;
58
+ },
59
+
60
+ stopPropagation() {
61
+ rendererEvent.stoped = true;
62
+ },
63
+
64
+ get data() {
65
+ return rendererEvent.context.data;
66
+ },
67
+
68
+ setData(data: any) {
69
+ rendererEvent.context.data = data;
70
+ }
71
+ };
72
+ return rendererEvent;
73
+ }
74
+
75
+ export default {};