amis 1.9.0-beta.12 → 1.9.0-beta.15

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 (365) hide show
  1. package/lib/Schema.d.ts +4 -2
  2. package/lib/Schema.js.map +1 -1
  3. package/lib/SchemaRenderer.d.ts +2 -2
  4. package/lib/SchemaRenderer.js +3 -3
  5. package/lib/SchemaRenderer.js.map +2 -2
  6. package/lib/actions/Action.d.ts +8 -6
  7. package/lib/actions/Action.js.map +2 -2
  8. package/lib/actions/AjaxAction.d.ts +10 -7
  9. package/lib/actions/AjaxAction.js +27 -21
  10. package/lib/actions/AjaxAction.js.map +2 -2
  11. package/lib/actions/BreakAction.d.ts +2 -2
  12. package/lib/actions/BreakAction.js.map +1 -1
  13. package/lib/actions/BroadcastAction.d.ts +3 -3
  14. package/lib/actions/BroadcastAction.js +3 -2
  15. package/lib/actions/BroadcastAction.js.map +2 -2
  16. package/lib/actions/CmptAction.d.ts +2 -2
  17. package/lib/actions/CmptAction.js +7 -9
  18. package/lib/actions/CmptAction.js.map +2 -2
  19. package/lib/actions/ContinueAction.d.ts +2 -2
  20. package/lib/actions/ContinueAction.js.map +1 -1
  21. package/lib/actions/CopyAction.d.ts +7 -4
  22. package/lib/actions/CopyAction.js +8 -6
  23. package/lib/actions/CopyAction.js.map +2 -2
  24. package/lib/actions/CustomAction.d.ts +2 -2
  25. package/lib/actions/CustomAction.js.map +1 -1
  26. package/lib/actions/DialogAction.d.ts +14 -8
  27. package/lib/actions/DialogAction.js +6 -6
  28. package/lib/actions/DialogAction.js.map +2 -2
  29. package/lib/actions/DrawerAction.d.ts +3 -3
  30. package/lib/actions/DrawerAction.js.map +1 -1
  31. package/lib/actions/EmailAction.d.ts +10 -7
  32. package/lib/actions/EmailAction.js +4 -5
  33. package/lib/actions/EmailAction.js.map +2 -2
  34. package/lib/actions/LinkAction.d.ts +19 -11
  35. package/lib/actions/LinkAction.js +6 -5
  36. package/lib/actions/LinkAction.js.map +2 -2
  37. package/lib/actions/LoopAction.d.ts +6 -3
  38. package/lib/actions/LoopAction.js +22 -20
  39. package/lib/actions/LoopAction.js.map +2 -2
  40. package/lib/actions/PageAction.d.ts +8 -5
  41. package/lib/actions/PageAction.js +3 -2
  42. package/lib/actions/PageAction.js.map +2 -2
  43. package/lib/actions/ParallelAction.d.ts +2 -2
  44. package/lib/actions/ParallelAction.js.map +1 -1
  45. package/lib/actions/SwitchAction.d.ts +2 -2
  46. package/lib/actions/SwitchAction.js.map +1 -1
  47. package/lib/actions/ToastAction.d.ts +2 -2
  48. package/lib/actions/ToastAction.js +6 -4
  49. package/lib/actions/ToastAction.js.map +2 -2
  50. package/lib/components/Editor.d.ts +84 -84
  51. package/lib/components/InputBox.js +1 -1
  52. package/lib/components/InputBox.js.map +2 -2
  53. package/lib/components/Pagination.d.ts +1175 -0
  54. package/lib/components/Pagination.js +274 -0
  55. package/lib/components/Pagination.js.map +13 -0
  56. package/lib/components/PickerContainer.d.ts +1 -0
  57. package/lib/components/PickerContainer.js +3 -2
  58. package/lib/components/PickerContainer.js.map +2 -2
  59. package/lib/components/Rating.js +11 -9
  60. package/lib/components/Rating.js.map +2 -2
  61. package/lib/components/Select.js +3 -3
  62. package/lib/components/Select.js.map +2 -2
  63. package/lib/components/Tag.d.ts +148 -0
  64. package/lib/components/Tag.js +96 -0
  65. package/lib/components/Tag.js.map +13 -0
  66. package/lib/components/TooltipWrapper.d.ts +25 -21
  67. package/lib/components/TooltipWrapper.js +11 -1
  68. package/lib/components/TooltipWrapper.js.map +2 -2
  69. package/lib/components/TransferDropDown.d.ts +85 -84
  70. package/lib/components/TransferDropDown.js +2 -2
  71. package/lib/components/TransferDropDown.js.map +2 -2
  72. package/lib/components/Tree.d.ts +84 -84
  73. package/lib/components/formula/VariableList.d.ts +1 -0
  74. package/lib/components/formula/VariableList.js.map +2 -2
  75. package/lib/components/icons.js +2 -0
  76. package/lib/components/icons.js.map +2 -2
  77. package/lib/components/index.d.ts +4 -1
  78. package/lib/components/index.js +7 -1
  79. package/lib/components/index.js.map +2 -2
  80. package/lib/components/schema-editor/Array.d.ts +11 -0
  81. package/lib/components/schema-editor/Array.js +66 -0
  82. package/lib/components/schema-editor/Array.js.map +13 -0
  83. package/lib/components/schema-editor/Common.d.ts +29 -0
  84. package/lib/components/schema-editor/Common.js +69 -0
  85. package/lib/components/schema-editor/Common.js.map +13 -0
  86. package/lib/components/schema-editor/Item.d.ts +9 -0
  87. package/lib/components/schema-editor/Item.js +31 -0
  88. package/lib/components/schema-editor/Item.js.map +13 -0
  89. package/lib/components/schema-editor/Object.d.ts +44 -0
  90. package/lib/components/schema-editor/Object.js +191 -0
  91. package/lib/components/schema-editor/Object.js.map +13 -0
  92. package/lib/components/schema-editor/SchemaVariableList.d.ts +316 -0
  93. package/lib/components/schema-editor/SchemaVariableList.js +74 -0
  94. package/lib/components/schema-editor/SchemaVariableList.js.map +13 -0
  95. package/lib/components/schema-editor/SchemaVariableListPicker.d.ts +305 -0
  96. package/lib/components/schema-editor/SchemaVariableListPicker.js +32 -0
  97. package/lib/components/schema-editor/SchemaVariableListPicker.js.map +13 -0
  98. package/lib/components/schema-editor/index.d.ts +520 -0
  99. package/lib/components/schema-editor/index.js +118 -0
  100. package/lib/components/schema-editor/index.js.map +13 -0
  101. package/lib/components/table/Cell.d.ts +930 -0
  102. package/lib/components/table/Cell.js +36 -0
  103. package/lib/components/table/Cell.js.map +13 -0
  104. package/lib/components/table/HeadCellDropDown.d.ts +514 -0
  105. package/lib/components/table/HeadCellDropDown.js +52 -0
  106. package/lib/components/table/HeadCellDropDown.js.map +13 -0
  107. package/lib/components/table/HeadCellFilter.d.ts +771 -0
  108. package/lib/components/table/HeadCellFilter.js +106 -0
  109. package/lib/components/table/HeadCellFilter.js.map +13 -0
  110. package/lib/components/table/HeadCellSelect.d.ts +672 -0
  111. package/lib/components/table/HeadCellSelect.js +46 -0
  112. package/lib/components/table/HeadCellSelect.js.map +13 -0
  113. package/lib/components/table/HeadCellSort.d.ts +498 -0
  114. package/lib/components/table/HeadCellSort.js +67 -0
  115. package/lib/components/table/HeadCellSort.js.map +13 -0
  116. package/lib/components/table/index.d.ts +1355 -0
  117. package/lib/components/table/index.js +1095 -0
  118. package/lib/components/table/index.js.map +13 -0
  119. package/lib/env.d.ts +2 -4
  120. package/lib/env.js.map +2 -2
  121. package/lib/factory.js +0 -95
  122. package/lib/factory.js.map +2 -2
  123. package/lib/icons/dot.js +11 -0
  124. package/lib/index.d.ts +6 -1
  125. package/lib/index.js +9 -2
  126. package/lib/index.js.map +2 -2
  127. package/lib/locale/de-DE.js +18 -1
  128. package/lib/locale/de-DE.js.map +2 -2
  129. package/lib/locale/en-US.js +18 -1
  130. package/lib/locale/en-US.js.map +2 -2
  131. package/lib/locale/zh-CN.js +20 -1
  132. package/lib/locale/zh-CN.js.map +2 -2
  133. package/lib/renderers/Action.js +0 -2
  134. package/lib/renderers/Action.js.map +2 -2
  135. package/lib/renderers/Carousel.d.ts +5 -1
  136. package/lib/renderers/Carousel.js +18 -5
  137. package/lib/renderers/Carousel.js.map +2 -2
  138. package/lib/renderers/Form/ButtonGroupSelect.d.ts +2 -0
  139. package/lib/renderers/Form/ButtonGroupSelect.js +7 -0
  140. package/lib/renderers/Form/ButtonGroupSelect.js.map +2 -2
  141. package/lib/renderers/Form/Checkbox.js +3 -4
  142. package/lib/renderers/Form/Checkbox.js.map +2 -2
  143. package/lib/renderers/Form/Checkboxes.d.ts +2 -1
  144. package/lib/renderers/Form/Checkboxes.js +19 -14
  145. package/lib/renderers/Form/Checkboxes.js.map +2 -2
  146. package/lib/renderers/Form/Combo.js +23 -4
  147. package/lib/renderers/Form/Combo.js.map +2 -2
  148. package/lib/renderers/Form/DiffEditor.d.ts +126 -18
  149. package/lib/renderers/Form/Editor.d.ts +412 -112
  150. package/lib/renderers/Form/Editor.js +10 -1
  151. package/lib/renderers/Form/Editor.js.map +2 -2
  152. package/lib/renderers/Form/InputExcel.js +6 -1
  153. package/lib/renderers/Form/InputExcel.js.map +2 -2
  154. package/lib/renderers/Form/InputFile.js +1 -2
  155. package/lib/renderers/Form/InputFile.js.map +2 -2
  156. package/lib/renderers/Form/InputTree.js +1 -1
  157. package/lib/renderers/Form/InputTree.js.map +2 -2
  158. package/lib/renderers/Form/Item.d.ts +0 -6
  159. package/lib/renderers/Form/JSONSchemaEditor.d.ts +41 -0
  160. package/lib/renderers/Form/JSONSchemaEditor.js +33 -0
  161. package/lib/renderers/Form/JSONSchemaEditor.js.map +13 -0
  162. package/lib/renderers/Form/ListSelect.d.ts +2 -0
  163. package/lib/renderers/Form/ListSelect.js +7 -0
  164. package/lib/renderers/Form/ListSelect.js.map +2 -2
  165. package/lib/renderers/Form/Options.js +1 -0
  166. package/lib/renderers/Form/Options.js.map +2 -2
  167. package/lib/renderers/Form/Select.js +12 -1
  168. package/lib/renderers/Form/Select.js.map +2 -2
  169. package/lib/renderers/Form/TabsTransfer.d.ts +1 -1
  170. package/lib/renderers/Form/TabsTransfer.js +2 -2
  171. package/lib/renderers/Form/TabsTransfer.js.map +2 -2
  172. package/lib/renderers/Form/TreeSelect.d.ts +4 -0
  173. package/lib/renderers/Form/TreeSelect.js +2 -2
  174. package/lib/renderers/Form/TreeSelect.js.map +2 -2
  175. package/lib/renderers/Form/wrapControl.js +10 -5
  176. package/lib/renderers/Form/wrapControl.js.map +2 -2
  177. package/lib/renderers/Pagination.d.ts +49 -30
  178. package/lib/renderers/Pagination.js +3 -132
  179. package/lib/renderers/Pagination.js.map +2 -2
  180. package/lib/renderers/Table/HeadCellSearchDropdown.js +0 -1
  181. package/lib/renderers/Table/HeadCellSearchDropdown.js.map +2 -2
  182. package/lib/renderers/Table-v2/HeadCellSearchDropdown.d.ts +29 -0
  183. package/lib/renderers/Table-v2/HeadCellSearchDropdown.js +158 -0
  184. package/lib/renderers/Table-v2/HeadCellSearchDropdown.js.map +13 -0
  185. package/lib/renderers/Table-v2/TableCell.d.ts +6 -0
  186. package/lib/renderers/Table-v2/TableCell.js +28 -0
  187. package/lib/renderers/Table-v2/TableCell.js.map +13 -0
  188. package/lib/renderers/Table-v2/index.d.ts +256 -0
  189. package/lib/renderers/Table-v2/index.js +548 -0
  190. package/lib/renderers/Table-v2/index.js.map +13 -0
  191. package/lib/renderers/Tabs.js +1 -1
  192. package/lib/renderers/Tabs.js.map +2 -2
  193. package/lib/renderers/Tag.d.ts +66 -0
  194. package/lib/renderers/Tag.js +53 -0
  195. package/lib/renderers/Tag.js.map +13 -0
  196. package/lib/renderers/Wizard.js +3 -3
  197. package/lib/renderers/Wizard.js.map +2 -2
  198. package/lib/schemaExtend.js +24 -30
  199. package/lib/schemaExtend.js.map +2 -2
  200. package/lib/store/combo.d.ts +140 -20
  201. package/lib/store/form.d.ts +56 -8
  202. package/lib/store/formItem.d.ts +3 -1
  203. package/lib/store/formItem.js +3 -1
  204. package/lib/store/formItem.js.map +2 -2
  205. package/lib/store/index.js +2 -0
  206. package/lib/store/index.js.map +2 -2
  207. package/lib/store/table-v2.d.ts +308 -0
  208. package/lib/store/table-v2.js +452 -0
  209. package/lib/store/table-v2.js.map +13 -0
  210. package/lib/store/table.d.ts +112 -16
  211. package/lib/store/table.js +1 -1
  212. package/lib/store/table.js.map +2 -2
  213. package/lib/themes/ang-ie11.css +1686 -120
  214. package/lib/themes/ang.css +1807 -208
  215. package/lib/themes/ang.css.map +1 -1
  216. package/lib/themes/antd-ie11.css +1667 -101
  217. package/lib/themes/antd.css +1789 -201
  218. package/lib/themes/antd.css.map +1 -1
  219. package/lib/themes/cxd-ie11.css +1662 -97
  220. package/lib/themes/cxd.css +1983 -394
  221. package/lib/themes/cxd.css.map +1 -1
  222. package/lib/themes/dark-ie11.css +1667 -101
  223. package/lib/themes/dark.css +1789 -201
  224. package/lib/themes/dark.css.map +1 -1
  225. package/lib/themes/default-ie11.css +1662 -97
  226. package/lib/themes/default.css +1983 -394
  227. package/lib/themes/default.css.map +1 -1
  228. package/lib/utils/DataSchema.d.ts +25 -0
  229. package/lib/utils/DataSchema.js +104 -0
  230. package/lib/utils/DataSchema.js.map +13 -0
  231. package/lib/utils/DataScope.d.ts +23 -0
  232. package/lib/utils/DataScope.js +140 -0
  233. package/lib/utils/DataScope.js.map +13 -0
  234. package/lib/utils/handleAction.js +1 -1
  235. package/lib/utils/handleAction.js.map +2 -2
  236. package/lib/utils/renderer-event.d.ts +8 -2
  237. package/lib/utils/renderer-event.js +102 -1
  238. package/lib/utils/renderer-event.js.map +2 -2
  239. package/package.json +3 -2
  240. package/schema.json +1476 -469
  241. package/scss/_properties.scss +69 -0
  242. package/scss/components/_button.scss +37 -39
  243. package/scss/components/_context-menu.scss +3 -18
  244. package/scss/components/_json-schema-editor.scss +126 -0
  245. package/scss/components/_pagination.scss +104 -23
  246. package/scss/components/_result-box.scss +2 -2
  247. package/scss/components/_table-v2.scss +912 -0
  248. package/scss/components/_tag.scss +177 -0
  249. package/scss/components/form/_selection.scss +1 -14
  250. package/scss/components/form/_text.scss +1 -1
  251. package/scss/themes/_antd-variables.scss +0 -13
  252. package/scss/themes/_common.scss +3 -0
  253. package/scss/themes/_cxd-variables.scss +7 -17
  254. package/scss/themes/_dark-variables.scss +0 -13
  255. package/scss/themes/cxd.scss +1 -1
  256. package/sdk/ang-ie11.css +2240 -227
  257. package/sdk/ang.css +2905 -859
  258. package/sdk/antd-ie11.css +2233 -220
  259. package/sdk/antd.css +2905 -870
  260. package/sdk/barcode.js +51 -51
  261. package/sdk/charts.js +14 -14
  262. package/sdk/codemirror.js +7 -7
  263. package/sdk/color-picker.js +65 -65
  264. package/sdk/cropperjs.js +2 -2
  265. package/sdk/cxd-ie11.css +2223 -211
  266. package/sdk/cxd.css +2911 -875
  267. package/sdk/dark-ie11.css +2233 -220
  268. package/sdk/dark.css +2905 -870
  269. package/sdk/exceljs.js +1 -1
  270. package/sdk/locale/de-DE.js +18 -1
  271. package/sdk/markdown.js +69 -69
  272. package/sdk/papaparse.js +1 -1
  273. package/sdk/renderers/Form/CityDB.js +1 -1
  274. package/sdk/rest.js +16 -16
  275. package/sdk/rich-text.js +62 -62
  276. package/sdk/sdk-ie11.css +2223 -211
  277. package/sdk/sdk.css +2911 -875
  278. package/sdk/sdk.js +1326 -1270
  279. package/sdk/thirds/hls.js/hls.js +1 -1
  280. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  281. package/sdk/tinymce.js +57 -57
  282. package/src/Schema.ts +7 -0
  283. package/src/SchemaRenderer.tsx +4 -5
  284. package/src/actions/Action.ts +7 -6
  285. package/src/actions/AjaxAction.ts +33 -24
  286. package/src/actions/BreakAction.ts +2 -2
  287. package/src/actions/BroadcastAction.ts +6 -5
  288. package/src/actions/CmptAction.ts +5 -6
  289. package/src/actions/ContinueAction.ts +2 -2
  290. package/src/actions/CopyAction.ts +14 -8
  291. package/src/actions/CustomAction.ts +2 -2
  292. package/src/actions/DialogAction.ts +16 -10
  293. package/src/actions/DrawerAction.ts +3 -3
  294. package/src/actions/EmailAction.ts +12 -12
  295. package/src/actions/LinkAction.ts +34 -14
  296. package/src/actions/LoopAction.ts +13 -8
  297. package/src/actions/PageAction.ts +9 -6
  298. package/src/actions/ParallelAction.ts +2 -2
  299. package/src/actions/SwitchAction.ts +2 -2
  300. package/src/actions/ToastAction.ts +9 -5
  301. package/src/components/InputBox.tsx +1 -0
  302. package/src/components/Pagination.tsx +446 -0
  303. package/src/components/PickerContainer.tsx +8 -5
  304. package/src/components/Rating.tsx +16 -9
  305. package/src/components/Select.tsx +3 -3
  306. package/src/components/Tag.tsx +179 -0
  307. package/src/components/TooltipWrapper.tsx +14 -1
  308. package/src/components/TransferDropDown.tsx +3 -0
  309. package/src/components/formula/VariableList.tsx +1 -0
  310. package/src/components/icons.tsx +2 -0
  311. package/src/components/index.tsx +7 -1
  312. package/src/components/schema-editor/Array.tsx +95 -0
  313. package/src/components/schema-editor/Common.tsx +138 -0
  314. package/src/components/schema-editor/Item.tsx +36 -0
  315. package/src/components/schema-editor/Object.tsx +299 -0
  316. package/src/components/schema-editor/SchemaVariableList.tsx +97 -0
  317. package/src/components/schema-editor/SchemaVariableListPicker.tsx +66 -0
  318. package/src/components/schema-editor/index.tsx +211 -0
  319. package/src/components/table/Cell.tsx +70 -0
  320. package/src/components/table/HeadCellDropDown.tsx +115 -0
  321. package/src/components/table/HeadCellFilter.tsx +193 -0
  322. package/src/components/table/HeadCellSelect.tsx +86 -0
  323. package/src/components/table/HeadCellSort.tsx +102 -0
  324. package/src/components/table/index.tsx +1681 -0
  325. package/src/env.tsx +7 -14
  326. package/src/factory.tsx +3 -106
  327. package/src/icons/dot.svg +11 -0
  328. package/src/index.tsx +8 -1
  329. package/src/locale/de-DE.ts +18 -1
  330. package/src/locale/en-US.ts +18 -1
  331. package/src/locale/zh-CN.ts +20 -1
  332. package/src/renderers/Action.tsx +1 -1
  333. package/src/renderers/Carousel.tsx +21 -6
  334. package/src/renderers/Form/ButtonGroupSelect.tsx +10 -1
  335. package/src/renderers/Form/Checkbox.tsx +4 -4
  336. package/src/renderers/Form/Checkboxes.tsx +31 -25
  337. package/src/renderers/Form/Combo.tsx +20 -4
  338. package/src/renderers/Form/Editor.tsx +15 -1
  339. package/src/renderers/Form/InputExcel.tsx +6 -1
  340. package/src/renderers/Form/InputFile.tsx +1 -2
  341. package/src/renderers/Form/InputTree.tsx +1 -1
  342. package/src/renderers/Form/JSONSchemaEditor.tsx +67 -0
  343. package/src/renderers/Form/ListSelect.tsx +9 -1
  344. package/src/renderers/Form/Options.tsx +1 -1
  345. package/src/renderers/Form/Select.tsx +7 -0
  346. package/src/renderers/Form/TabsTransfer.tsx +2 -2
  347. package/src/renderers/Form/TreeSelect.tsx +8 -1
  348. package/src/renderers/Form/wrapControl.tsx +11 -5
  349. package/src/renderers/Pagination.tsx +65 -253
  350. package/src/renderers/Table/HeadCellSearchDropdown.tsx +0 -1
  351. package/src/renderers/Table-v2/HeadCellSearchDropdown.tsx +244 -0
  352. package/src/renderers/Table-v2/TableCell.tsx +19 -0
  353. package/src/renderers/Table-v2/index.tsx +1140 -0
  354. package/src/renderers/Tabs.tsx +1 -1
  355. package/src/renderers/Tag.tsx +128 -0
  356. package/src/renderers/Wizard.tsx +3 -3
  357. package/src/schemaExtend.ts +24 -28
  358. package/src/store/formItem.ts +5 -1
  359. package/src/store/index.ts +2 -0
  360. package/src/store/table-v2.ts +646 -0
  361. package/src/store/table.ts +1 -1
  362. package/src/utils/DataSchema.ts +131 -0
  363. package/src/utils/DataScope.ts +190 -0
  364. package/src/utils/handleAction.ts +1 -1
  365. package/src/utils/renderer-event.ts +113 -2
@@ -1,5 +1,5 @@
1
1
  import { RendererEvent } from '../utils/renderer-event';
2
- import { Action, ListenerAction, ListenerContext } from './Action';
2
+ import { RendererAction, ListenerAction, ListenerContext } from './Action';
3
3
  export interface IBroadcastAction extends ListenerAction {
4
4
  eventName: string;
5
5
  }
@@ -10,6 +10,6 @@ export interface IBroadcastAction extends ListenerAction {
10
10
  * @class BroadcastAction
11
11
  * @implements {Action}
12
12
  */
13
- export declare class BroadcastAction implements Action {
14
- run(action: IBroadcastAction, renderer: ListenerContext, event: RendererEvent<any>): Promise<any>;
13
+ export declare class BroadcastAction implements RendererAction {
14
+ run(action: IBroadcastAction, renderer: ListenerContext, event: RendererEvent<any>): Promise<void | RendererEvent<any, any>>;
15
15
  }
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BroadcastAction = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var helper_1 = require("../utils/helper");
6
+ var renderer_event_1 = require("../utils/renderer-event");
6
7
  var Action_1 = require("./Action");
7
8
  /**
8
9
  * broadcast
@@ -20,12 +21,12 @@ var BroadcastAction = /** @class */ (function () {
20
21
  switch (_a.label) {
21
22
  case 0:
22
23
  if (!action.eventName) {
23
- console.warn('eventName 未定义,请定义事件名称');
24
+ console.error('eventName 未定义,请定义事件名称');
24
25
  return [2 /*return*/];
25
26
  }
26
27
  // 作为一个新的事件,需要把广播动作的args参数追加到事件数据中
27
28
  event.setData((0, helper_1.createObject)(event.data, action.args));
28
- return [4 /*yield*/, event.context.env.dispatchEvent(action.eventName, renderer, event.context.scoped, action.args, event)];
29
+ return [4 /*yield*/, (0, renderer_event_1.dispatchEvent)(action.eventName, renderer, event.context.scoped, action.args, event)];
29
30
  case 1:
30
31
  // 直接触发对应的动作
31
32
  return [2 /*return*/, _a.sent()];
@@ -6,8 +6,8 @@
6
6
  "/src/actions/BroadcastAction.ts"
7
7
  ],
8
8
  "names": [],
9
- "mappings": ";;;;AAAA,0CAA6C;AAE7C,mCAKkB;AAMlB;;;;;;GAMG;AACH;IAAA;IAuBA,CAAC;IAtBO,6BAAG,GAAT,UACE,MAAwB,EACxB,QAAyB,EACzB,KAAyB;;;;;wBAEzB,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;4BACrB,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;4BACtC,sBAAO;yBACR;wBAED,kCAAkC;wBAClC,KAAK,CAAC,OAAO,CAAC,IAAA,qBAAY,EAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;wBAG9C,qBAAM,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAC1C,MAAM,CAAC,SAAS,EAChB,QAAQ,EACR,KAAK,CAAC,OAAO,CAAC,MAAM,EACpB,MAAM,CAAC,IAAI,EACX,KAAK,CACN,EAAA;;oBAPD,YAAY;oBACZ,sBAAO,SAMN,EAAC;;;;KACH;IACH,sBAAC;AAAD,CAAC,AAvBD,IAuBC;AAvBY,0CAAe;AAyB5B,IAAA,uBAAc,EAAC,WAAW,EAAE,IAAI,eAAe,EAAE,CAAC,CAAC",
9
+ "mappings": ";;;;AACA,0CAA6C;AAC7C,0DAAqE;AACrE,mCAKkB;AAMlB;;;;;;GAMG;AACH;IAAA;IAuBA,CAAC;IAtBO,6BAAG,GAAT,UACE,MAAwB,EACxB,QAAyB,EACzB,KAAyB;;;;;wBAEzB,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;4BACrB,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;4BACvC,sBAAO;yBACR;wBAED,kCAAkC;wBAClC,KAAK,CAAC,OAAO,CAAC,IAAA,qBAAY,EAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;wBAG9C,qBAAM,IAAA,8BAAa,EACxB,MAAM,CAAC,SAAS,EAChB,QAAQ,EACR,KAAK,CAAC,OAAO,CAAC,MAAM,EACpB,MAAM,CAAC,IAAI,EACX,KAAK,CACN,EAAA;;oBAPD,YAAY;oBACZ,sBAAO,SAMN,EAAC;;;;KACH;IACH,sBAAC;AAAD,CAAC,AAvBD,IAuBC;AAvBY,0CAAe;AAyB5B,IAAA,uBAAc,EAAC,WAAW,EAAE,IAAI,eAAe,EAAE,CAAC,CAAC",
10
10
  "sourcesContent": [
11
- "import {createObject} from '../utils/helper';\nimport {RendererEvent} from '../utils/renderer-event';\nimport {\n Action,\n ListenerAction,\n ListenerContext,\n registerAction\n} from './Action';\n\nexport interface IBroadcastAction extends ListenerAction {\n eventName: string; // 事件名称,actionType: broadcast\n}\n\n/**\n * broadcast\n *\n * @export\n * @class BroadcastAction\n * @implements {Action}\n */\nexport class BroadcastAction implements Action {\n async run(\n action: IBroadcastAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n if (!action.eventName) {\n console.warn('eventName 未定义,请定义事件名称');\n return;\n }\n\n // 作为一个新的事件,需要把广播动作的args参数追加到事件数据中\n event.setData(createObject(event.data, action.args));\n\n // 直接触发对应的动作\n return await event.context.env.dispatchEvent(\n action.eventName,\n renderer,\n event.context.scoped,\n action.args,\n event\n );\n }\n}\n\nregisterAction('broadcast', new BroadcastAction());\n"
11
+ "import {RendererProps} from '../factory';\nimport {createObject} from '../utils/helper';\nimport {RendererEvent, dispatchEvent} from '../utils/renderer-event';\nimport {\n RendererAction,\n ListenerAction,\n ListenerContext,\n registerAction\n} from './Action';\n\nexport interface IBroadcastAction extends ListenerAction {\n eventName: string; // 事件名称,actionType: broadcast\n}\n\n/**\n * broadcast\n *\n * @export\n * @class BroadcastAction\n * @implements {Action}\n */\nexport class BroadcastAction implements RendererAction {\n async run(\n action: IBroadcastAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n if (!action.eventName) {\n console.error('eventName 未定义,请定义事件名称');\n return;\n }\n\n // 作为一个新的事件,需要把广播动作的args参数追加到事件数据中\n event.setData(createObject(event.data, action.args));\n\n // 直接触发对应的动作\n return await dispatchEvent(\n action.eventName,\n renderer,\n event.context.scoped,\n action.args,\n event\n );\n }\n}\n\nregisterAction('broadcast', new BroadcastAction());\n"
12
12
  ]
13
13
  }
@@ -1,5 +1,5 @@
1
1
  import { RendererEvent } from '../utils/renderer-event';
2
- import { Action, ListenerAction, ListenerContext } from './Action';
2
+ import { RendererAction, ListenerAction, ListenerContext } from './Action';
3
3
  export interface ICmptAction extends ListenerAction {
4
4
  value?: string | {
5
5
  [key: string]: string;
@@ -12,6 +12,6 @@ export interface ICmptAction extends ListenerAction {
12
12
  * @class CmptAction
13
13
  * @implements {Action}
14
14
  */
15
- export declare class CmptAction implements Action {
15
+ export declare class CmptAction implements RendererAction {
16
16
  run(action: ICmptAction, renderer: ListenerContext, event: RendererEvent<any>): Promise<any>;
17
17
  }
@@ -2,7 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CmptAction = void 0;
4
4
  var tslib_1 = require("tslib");
5
- var tpl_builtin_1 = require("../utils/tpl-builtin");
6
5
  var Action_1 = require("./Action");
7
6
  /**
8
7
  * 组件动作
@@ -15,10 +14,10 @@ var CmptAction = /** @class */ (function () {
15
14
  function CmptAction() {
16
15
  }
17
16
  CmptAction.prototype.run = function (action, renderer, event) {
18
- var _a, _b, _c, _d, _e;
17
+ var _a, _b, _c, _d, _e, _f, _g;
19
18
  return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
20
- var component, value;
21
- return (0, tslib_1.__generator)(this, function (_f) {
19
+ var component;
20
+ return (0, tslib_1.__generator)(this, function (_h) {
22
21
  component = action.componentId && renderer.props.$schema.id !== action.componentId
23
22
  ? (_a = event.context.scoped) === null || _a === void 0 ? void 0 : _a.getComponentById(action.componentId)
24
23
  : renderer;
@@ -31,20 +30,19 @@ var CmptAction = /** @class */ (function () {
31
30
  }
32
31
  // 数据更新
33
32
  if (action.actionType === 'setValue') {
34
- value = (0, tpl_builtin_1.dataMapping)(action.value, event.data);
35
33
  if (component.setData) {
36
- return [2 /*return*/, component.setData(value)];
34
+ return [2 /*return*/, component.setData((_b = action.args) === null || _b === void 0 ? void 0 : _b.value)];
37
35
  }
38
36
  else {
39
- return [2 /*return*/, (_c = (_b = component.props).onChange) === null || _c === void 0 ? void 0 : _c.call(_b, value)];
37
+ return [2 /*return*/, (_d = (_c = component.props).onChange) === null || _d === void 0 ? void 0 : _d.call(_c, (_e = action.args) === null || _e === void 0 ? void 0 : _e.value)];
40
38
  }
41
39
  }
42
40
  // 刷新
43
41
  if (action.actionType === 'reload') {
44
- return [2 /*return*/, (_d = component.reload) === null || _d === void 0 ? void 0 : _d.call(component, undefined, action.args)];
42
+ return [2 /*return*/, (_f = component.reload) === null || _f === void 0 ? void 0 : _f.call(component, undefined, action.args)];
45
43
  }
46
44
  // 执行组件动作
47
- return [2 /*return*/, (_e = component.doAction) === null || _e === void 0 ? void 0 : _e.call(component, action, action.args)];
45
+ return [2 /*return*/, (_g = component === null || component === void 0 ? void 0 : component.doAction) === null || _g === void 0 ? void 0 : _g.call(component, action, action.args)];
48
46
  });
49
47
  });
50
48
  };
@@ -6,8 +6,8 @@
6
6
  "/src/actions/CmptAction.ts"
7
7
  ],
8
8
  "names": [],
9
- "mappings": ";;;;AACA,oDAAiD;AACjD,mCAMkB;AAMlB;;;;;;GAMG;AACH;IAAA;IA8CA,CAAC;IA7CO,wBAAG,GAAT,UACE,MAAmB,EACnB,QAAyB,EACzB,KAAyB;;;;;gBAMnB,SAAS,GACb,MAAM,CAAC,WAAW,IAAI,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,MAAM,CAAC,WAAW;oBACpE,CAAC,CAAC,MAAA,KAAK,CAAC,OAAO,CAAC,MAAM,0CAAE,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC;oBAC5D,CAAC,CAAC,QAAQ,CAAC;gBAEf,UAAU;gBACV,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;oBAClD,sBAAO,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,CACxC,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,UAAU,KAAK,MAAM,CAC7B,EAAC;iBACH;qBAAM,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;oBAC9D,sBAAO,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,CACxC,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,UAAU,KAAK,UAAU,CACjC,EAAC;iBACH;gBAED,OAAO;gBACP,IAAI,MAAM,CAAC,UAAU,KAAK,UAAU,EAAE;oBAC9B,KAAK,GAAG,IAAA,yBAAW,EAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;oBACpD,IAAI,SAAS,CAAC,OAAO,EAAE;wBACrB,sBAAO,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,EAAC;qBACjC;yBAAM;wBACL,sBAAO,MAAA,MAAA,SAAS,CAAC,KAAK,EAAC,QAAQ,mDAAG,KAAK,CAAC,EAAC;qBAC1C;iBACF;gBAED,KAAK;gBACL,IAAI,MAAM,CAAC,UAAU,KAAK,QAAQ,EAAE;oBAClC,sBAAO,MAAA,SAAS,CAAC,MAAM,+CAAhB,SAAS,EAAU,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,EAAC;iBACnD;gBAED,SAAS;gBACT,sBAAO,MAAA,SAAS,CAAC,QAAQ,+CAAlB,SAAS,EAAY,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,EAAC;;;KAClD;IACH,iBAAC;AAAD,CAAC,AA9CD,IA8CC;AA9CY,gCAAU;AAgDvB,IAAA,uBAAc,EAAC,WAAW,EAAE,IAAI,UAAU,EAAE,CAAC,CAAC",
9
+ "mappings": ";;;;AAEA,mCAMkB;AAMlB;;;;;;GAMG;AACH;IAAA;IA6CA,CAAC;IA5CO,wBAAG,GAAT,UACE,MAAmB,EACnB,QAAyB,EACzB,KAAyB;;;;;gBAMnB,SAAS,GACb,MAAM,CAAC,WAAW,IAAI,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,MAAM,CAAC,WAAW;oBACpE,CAAC,CAAC,MAAA,KAAK,CAAC,OAAO,CAAC,MAAM,0CAAE,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC;oBAC5D,CAAC,CAAC,QAAQ,CAAC;gBAEf,UAAU;gBACV,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;oBAClD,sBAAO,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,CACxC,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,UAAU,KAAK,MAAM,CAC7B,EAAC;iBACH;qBAAM,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;oBAC9D,sBAAO,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,CACxC,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,UAAU,KAAK,UAAU,CACjC,EAAC;iBACH;gBAED,OAAO;gBACP,IAAI,MAAM,CAAC,UAAU,KAAK,UAAU,EAAE;oBACpC,IAAI,SAAS,CAAC,OAAO,EAAE;wBACrB,sBAAO,SAAS,CAAC,OAAO,CAAC,MAAA,MAAM,CAAC,IAAI,0CAAE,KAAK,CAAC,EAAC;qBAC9C;yBAAM;wBACL,sBAAO,MAAA,MAAA,SAAS,CAAC,KAAK,EAAC,QAAQ,mDAAG,MAAA,MAAM,CAAC,IAAI,0CAAE,KAAK,CAAC,EAAC;qBACvD;iBACF;gBAED,KAAK;gBACL,IAAI,MAAM,CAAC,UAAU,KAAK,QAAQ,EAAE;oBAClC,sBAAO,MAAA,SAAS,CAAC,MAAM,+CAAhB,SAAS,EAAU,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,EAAC;iBACnD;gBAED,SAAS;gBACT,sBAAO,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,+CAAnB,SAAS,EAAa,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,EAAC;;;KACnD;IACH,iBAAC;AAAD,CAAC,AA7CD,IA6CC;AA7CY,gCAAU;AA+CvB,IAAA,uBAAc,EAAC,WAAW,EAAE,IAAI,UAAU,EAAE,CAAC,CAAC",
10
10
  "sourcesContent": [
11
- "import {RendererEvent} from '../utils/renderer-event';\nimport {dataMapping} from '../utils/tpl-builtin';\nimport {\n Action,\n ListenerAction,\n ListenerContext,\n LoopStatus,\n registerAction\n} from './Action';\n\nexport interface ICmptAction extends ListenerAction {\n value?: string | {[key: string]: string};\n}\n\n/**\n * 组件动作\n *\n * @export\n * @class CmptAction\n * @implements {Action}\n */\nexport class CmptAction implements Action {\n async run(\n action: ICmptAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n /**\n * 根据唯一ID查找指定组件\n * 触发组件未指定id或未指定响应组件componentId,则使用触发组件响应\n */\n const component =\n action.componentId && renderer.props.$schema.id !== action.componentId\n ? event.context.scoped?.getComponentById(action.componentId)\n : renderer;\n\n // 显隐&状态控制\n if (['show', 'hidden'].includes(action.actionType)) {\n return renderer.props.rootStore.setVisible(\n action.componentId,\n action.actionType === 'show'\n );\n } else if (['enabled', 'disabled'].includes(action.actionType)) {\n return renderer.props.rootStore.setDisable(\n action.componentId,\n action.actionType === 'disabled'\n );\n }\n\n // 数据更新\n if (action.actionType === 'setValue') {\n const value = dataMapping(action.value, event.data);\n if (component.setData) {\n return component.setData(value);\n } else {\n return component.props.onChange?.(value);\n }\n }\n\n // 刷新\n if (action.actionType === 'reload') {\n return component.reload?.(undefined, action.args);\n }\n\n // 执行组件动作\n return component.doAction?.(action, action.args);\n }\n}\n\nregisterAction('component', new CmptAction());\n"
11
+ "import {RendererEvent} from '../utils/renderer-event';\nimport {dataMapping} from '../utils/tpl-builtin';\nimport {\n RendererAction,\n ListenerAction,\n ListenerContext,\n LoopStatus,\n registerAction\n} from './Action';\n\nexport interface ICmptAction extends ListenerAction {\n value?: string | {[key: string]: string};\n}\n\n/**\n * 组件动作\n *\n * @export\n * @class CmptAction\n * @implements {Action}\n */\nexport class CmptAction implements RendererAction {\n async run(\n action: ICmptAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n /**\n * 根据唯一ID查找指定组件\n * 触发组件未指定id或未指定响应组件componentId,则使用触发组件响应\n */\n const component =\n action.componentId && renderer.props.$schema.id !== action.componentId\n ? event.context.scoped?.getComponentById(action.componentId)\n : renderer;\n\n // 显隐&状态控制\n if (['show', 'hidden'].includes(action.actionType)) {\n return renderer.props.rootStore.setVisible(\n action.componentId,\n action.actionType === 'show'\n );\n } else if (['enabled', 'disabled'].includes(action.actionType)) {\n return renderer.props.rootStore.setDisable(\n action.componentId,\n action.actionType === 'disabled'\n );\n }\n\n // 数据更新\n if (action.actionType === 'setValue') {\n if (component.setData) {\n return component.setData(action.args?.value);\n } else {\n return component.props.onChange?.(action.args?.value);\n }\n }\n\n // 刷新\n if (action.actionType === 'reload') {\n return component.reload?.(undefined, action.args);\n }\n\n // 执行组件动作\n return component?.doAction?.(action, action.args);\n }\n}\n\nregisterAction('component', new CmptAction());\n"
12
12
  ]
13
13
  }
@@ -1,5 +1,5 @@
1
1
  import { RendererEvent } from '../utils/renderer-event';
2
- import { Action, ListenerAction, ListenerContext } from './Action';
2
+ import { RendererAction, ListenerAction, ListenerContext } from './Action';
3
3
  /**
4
4
  * continue
5
5
  *
@@ -7,6 +7,6 @@ import { Action, ListenerAction, ListenerContext } from './Action';
7
7
  * @class ContinueAction
8
8
  * @implements {Action}
9
9
  */
10
- export declare class ContinueAction implements Action {
10
+ export declare class ContinueAction implements RendererAction {
11
11
  run(action: ListenerAction, renderer: ListenerContext, event: RendererEvent<any>): Promise<void>;
12
12
  }
@@ -8,6 +8,6 @@
8
8
  "names": [],
9
9
  "mappings": ";;;;AACA,mCAMkB;AAElB;;;;;;GAMG;AACH;IAAA;IAQA,CAAC;IAPO,4BAAG,GAAT,UACE,MAAsB,EACtB,QAAyB,EACzB,KAAyB;;;gBAEzB,QAAQ,CAAC,UAAU,GAAG,mBAAU,CAAC,QAAQ,CAAC;;;;KAC3C;IACH,qBAAC;AAAD,CAAC,AARD,IAQC;AARY,wCAAc;AAU3B,IAAA,uBAAc,EAAC,UAAU,EAAE,IAAI,cAAc,EAAE,CAAC,CAAC",
10
10
  "sourcesContent": [
11
- "import {RendererEvent} from '../utils/renderer-event';\nimport {\n Action,\n ListenerAction,\n ListenerContext,\n LoopStatus,\n registerAction\n} from './Action';\n\n/**\n * continue\n *\n * @export\n * @class ContinueAction\n * @implements {Action}\n */\nexport class ContinueAction implements Action {\n async run(\n action: ListenerAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n renderer.loopStatus = LoopStatus.CONTINUE;\n }\n}\n\nregisterAction('continue', new ContinueAction());\n"
11
+ "import {RendererEvent} from '../utils/renderer-event';\nimport {\n RendererAction,\n ListenerAction,\n ListenerContext,\n LoopStatus,\n registerAction\n} from './Action';\n\n/**\n * continue\n *\n * @export\n * @class ContinueAction\n * @implements {Action}\n */\nexport class ContinueAction implements RendererAction {\n async run(\n action: ListenerAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n renderer.loopStatus = LoopStatus.CONTINUE;\n }\n}\n\nregisterAction('continue', new ContinueAction());\n"
12
12
  ]
13
13
  }
@@ -1,8 +1,11 @@
1
1
  import { RendererEvent } from '../utils/renderer-event';
2
- import { Action, ListenerAction, ListenerContext } from './Action';
2
+ import { RendererAction, ListenerAction, ListenerContext } from './Action';
3
3
  export interface ICopyAction extends ListenerAction {
4
- content: string;
5
- copyFormat?: string;
4
+ args: {
5
+ content: string;
6
+ copyFormat?: string;
7
+ [propName: string]: any;
8
+ };
6
9
  }
7
10
  /**
8
11
  * 复制动作
@@ -11,6 +14,6 @@ export interface ICopyAction extends ListenerAction {
11
14
  * @class CopyAction
12
15
  * @implements {Action}
13
16
  */
14
- export declare class CopyAction implements Action {
17
+ export declare class CopyAction implements RendererAction {
15
18
  run(action: ICopyAction, renderer: ListenerContext, event: RendererEvent<any>): Promise<void>;
16
19
  }
@@ -2,7 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CopyAction = void 0;
4
4
  var tslib_1 = require("tslib");
5
- var tpl_1 = require("../utils/tpl");
6
5
  var Action_1 = require("./Action");
7
6
  /**
8
7
  * 复制动作
@@ -15,12 +14,15 @@ var CopyAction = /** @class */ (function () {
15
14
  function CopyAction() {
16
15
  }
17
16
  CopyAction.prototype.run = function (action, renderer, event) {
18
- var _a, _b;
17
+ var _a, _b, _c, _d, _e, _f;
19
18
  return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
20
- return (0, tslib_1.__generator)(this, function (_c) {
21
- if (action.content) {
22
- (_b = (_a = renderer.props.env).copy) === null || _b === void 0 ? void 0 : _b.call(_a, (0, tpl_1.filter)(action.content, action.args, '| raw'), {
23
- format: action.copyFormat
19
+ return (0, tslib_1.__generator)(this, function (_g) {
20
+ if (!((_a = renderer.props.env) === null || _a === void 0 ? void 0 : _a.copy)) {
21
+ throw new Error('env.copy is required!');
22
+ }
23
+ if ((_b = action.args) === null || _b === void 0 ? void 0 : _b.content) {
24
+ (_d = (_c = renderer.props.env).copy) === null || _d === void 0 ? void 0 : _d.call(_c, action.args.content, {
25
+ format: (_f = (_e = action.args) === null || _e === void 0 ? void 0 : _e.copyFormat) !== null && _f !== void 0 ? _f : 'text/html'
24
26
  });
25
27
  }
26
28
  return [2 /*return*/];
@@ -6,8 +6,8 @@
6
6
  "/src/actions/CopyAction.ts"
7
7
  ],
8
8
  "names": [],
9
- "mappings": ";;;;AACA,oCAAoC;AACpC,mCAMkB;AAOlB;;;;;;GAMG;AACH;IAAA;IAYA,CAAC;IAXO,wBAAG,GAAT,UACE,MAAmB,EACnB,QAAyB,EACzB,KAAyB;;;;gBAEzB,IAAI,MAAM,CAAC,OAAO,EAAE;oBAClB,MAAA,MAAA,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAC,IAAI,mDAAG,IAAA,YAAM,EAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE;wBACtE,MAAM,EAAE,MAAM,CAAC,UAAU;qBAC1B,CAAC,CAAC;iBACJ;;;;KACF;IACH,iBAAC;AAAD,CAAC,AAZD,IAYC;AAZY,gCAAU;AAcvB,IAAA,uBAAc,EAAC,MAAM,EAAE,IAAI,UAAU,EAAE,CAAC,CAAC",
9
+ "mappings": ";;;;AAEA,mCAKkB;AAUlB;;;;;;GAMG;AACH;IAAA;IAgBA,CAAC;IAfO,wBAAG,GAAT,UACE,MAAmB,EACnB,QAAyB,EACzB,KAAyB;;;;gBAEzB,IAAI,CAAC,CAAA,MAAA,QAAQ,CAAC,KAAK,CAAC,GAAG,0CAAE,IAAI,CAAA,EAAE;oBAC7B,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;iBAC1C;gBAED,IAAI,MAAA,MAAM,CAAC,IAAI,0CAAE,OAAO,EAAE;oBACxB,MAAA,MAAA,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAC,IAAI,mDAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE;wBAC7C,MAAM,EAAE,MAAA,MAAA,MAAM,CAAC,IAAI,0CAAE,UAAU,mCAAI,WAAW;qBAC/C,CAAC,CAAC;iBACJ;;;;KACF;IACH,iBAAC;AAAD,CAAC,AAhBD,IAgBC;AAhBY,gCAAU;AAkBvB,IAAA,uBAAc,EAAC,MAAM,EAAE,IAAI,UAAU,EAAE,CAAC,CAAC",
10
10
  "sourcesContent": [
11
- "import {RendererEvent} from '../utils/renderer-event';\nimport {filter} from '../utils/tpl';\nimport {\n Action,\n ListenerAction,\n ListenerContext,\n LoopStatus,\n registerAction\n} from './Action';\n\nexport interface ICopyAction extends ListenerAction {\n content: string;\n copyFormat?: string;\n}\n\n/**\n * 复制动作\n *\n * @export\n * @class CopyAction\n * @implements {Action}\n */\nexport class CopyAction implements Action {\n async run(\n action: ICopyAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n if (action.content) {\n renderer.props.env.copy?.(filter(action.content, action.args, '| raw'), {\n format: action.copyFormat\n });\n }\n }\n}\n\nregisterAction('copy', new CopyAction());\n"
11
+ "import {RendererEvent} from '../utils/renderer-event';\nimport {filter} from '../utils/tpl';\nimport {\n RendererAction,\n ListenerAction,\n ListenerContext,\n registerAction\n} from './Action';\n\nexport interface ICopyAction extends ListenerAction {\n args: {\n content: string;\n copyFormat?: string;\n [propName: string]: any;\n };\n}\n\n/**\n * 复制动作\n *\n * @export\n * @class CopyAction\n * @implements {Action}\n */\nexport class CopyAction implements RendererAction {\n async run(\n action: ICopyAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n if (!renderer.props.env?.copy) {\n throw new Error('env.copy is required!');\n }\n\n if (action.args?.content) {\n renderer.props.env.copy?.(action.args.content, {\n format: action.args?.copyFormat ?? 'text/html'\n });\n }\n }\n}\n\nregisterAction('copy', new CopyAction());\n"
12
12
  ]
13
13
  }
@@ -1,5 +1,5 @@
1
1
  import { RendererEvent } from '../utils/renderer-event';
2
- import { Action, ListenerAction, ListenerContext } from './Action';
2
+ import { RendererAction, ListenerAction, ListenerContext } from './Action';
3
3
  export interface ICustomAction extends ListenerAction {
4
4
  script: string;
5
5
  }
@@ -10,6 +10,6 @@ export interface ICustomAction extends ListenerAction {
10
10
  * @class CustomAction
11
11
  * @implements {Action}
12
12
  */
13
- export declare class CustomAction implements Action {
13
+ export declare class CustomAction implements RendererAction {
14
14
  run(action: ICustomAction, renderer: ListenerContext, event: RendererEvent<any>): Promise<void>;
15
15
  }
@@ -8,6 +8,6 @@
8
8
  "names": [],
9
9
  "mappings": ";;;;AACA,mCAMkB;AAMlB;;;;;;GAMG;AACH;IAAA;IA6BA,CAAC;IA5BO,0BAAG,GAAT,UACE,MAAqB,EACrB,QAAyB,EACzB,KAAyB;;;;;;;wBAGrB,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC;wBAE/B,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;4BAClC,UAAU,GAAG,IAAI,QAAQ,CACvB,SAAS,EACT,UAAU,EACV,OAAO,EACP,UAAU,CACJ,CAAC;yBACV;wBAED,0BAA0B;wBAC1B,iCAAiC;wBACjC,qBAAM,CAAA,MAAC,UAAkB,0CAAE,IAAI,CAC7B,IAAI,EACJ,QAAQ,EACR,CAAA,MAAA,QAAQ,CAAC,KAAK,CAAC,QAAQ,0CAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;iCAChE,MAAA,QAAQ,CAAC,QAAQ,0CAAE,IAAI,CAAC,QAAQ,CAAC,CAAA,EACnC,KAAK,EACL,MAAM,CACP,CAAA,EAAA;;wBATD,0BAA0B;wBAC1B,iCAAiC;wBACjC,SAOC,CAAC;;;;;KACH;IACH,mBAAC;AAAD,CAAC,AA7BD,IA6BC;AA7BY,oCAAY;AA+BzB,IAAA,uBAAc,EAAC,QAAQ,EAAE,IAAI,YAAY,EAAE,CAAC,CAAC",
10
10
  "sourcesContent": [
11
- "import {RendererEvent} from '../utils/renderer-event';\nimport {\n Action,\n ListenerAction,\n ListenerContext,\n LoopStatus,\n registerAction\n} from './Action';\n\nexport interface ICustomAction extends ListenerAction {\n script: string; // 自定义JS,actionType: custom\n}\n\n/**\n * 自定义动作,JS脚本\n *\n * @export\n * @class CustomAction\n * @implements {Action}\n */\nexport class CustomAction implements Action {\n async run(\n action: ICustomAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n // 执行自定义编排脚本\n let scriptFunc = action.script;\n\n if (typeof scriptFunc === 'string') {\n scriptFunc = new Function(\n 'context',\n 'doAction',\n 'event',\n scriptFunc\n ) as any;\n }\n\n // 外部可以直接调用doAction来完成动作调用\n // 可以通过上下文直接编排动作调用,通过event来进行动作干预\n await (scriptFunc as any)?.call(\n null,\n renderer,\n renderer.props.onAction?.bind(renderer, event.context.nativeEvent) ||\n renderer.doAction?.bind(renderer),\n event,\n action\n );\n }\n}\n\nregisterAction('custom', new CustomAction());\n"
11
+ "import {RendererEvent} from '../utils/renderer-event';\nimport {\n RendererAction,\n ListenerAction,\n ListenerContext,\n LoopStatus,\n registerAction\n} from './Action';\n\nexport interface ICustomAction extends ListenerAction {\n script: string; // 自定义JS,actionType: custom\n}\n\n/**\n * 自定义动作,JS脚本\n *\n * @export\n * @class CustomAction\n * @implements {Action}\n */\nexport class CustomAction implements RendererAction {\n async run(\n action: ICustomAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n // 执行自定义编排脚本\n let scriptFunc = action.script;\n\n if (typeof scriptFunc === 'string') {\n scriptFunc = new Function(\n 'context',\n 'doAction',\n 'event',\n scriptFunc\n ) as any;\n }\n\n // 外部可以直接调用doAction来完成动作调用\n // 可以通过上下文直接编排动作调用,通过event来进行动作干预\n await (scriptFunc as any)?.call(\n null,\n renderer,\n renderer.props.onAction?.bind(renderer, event.context.nativeEvent) ||\n renderer.doAction?.bind(renderer),\n event,\n action\n );\n }\n}\n\nregisterAction('custom', new CustomAction());\n"
12
12
  ]
13
13
  }
@@ -1,12 +1,18 @@
1
1
  import { SchemaNode } from '../types';
2
2
  import { RendererEvent } from '../utils/renderer-event';
3
- import { Action, ListenerAction, ListenerContext } from './Action';
3
+ import { RendererAction, ListenerAction, ListenerContext } from './Action';
4
4
  export interface IAlertAction extends ListenerAction {
5
- msg: string;
5
+ args: {
6
+ msg: string;
7
+ [propName: string]: any;
8
+ };
6
9
  }
7
10
  export interface IConfirmAction extends ListenerAction {
8
- title: string;
9
- msg: string;
11
+ args: {
12
+ title: string;
13
+ msg: string;
14
+ [propName: string]: any;
15
+ };
10
16
  }
11
17
  export interface IDialogAction extends ListenerAction {
12
18
  dialog: SchemaNode;
@@ -18,7 +24,7 @@ export interface IDialogAction extends ListenerAction {
18
24
  * @class DialogAction
19
25
  * @implements {Action}
20
26
  */
21
- export declare class DialogAction implements Action {
27
+ export declare class DialogAction implements RendererAction {
22
28
  run(action: IDialogAction, renderer: ListenerContext, event: RendererEvent<any>): Promise<void>;
23
29
  }
24
30
  /**
@@ -28,18 +34,18 @@ export declare class DialogAction implements Action {
28
34
  * @class CloseDialogAction
29
35
  * @implements {Action}
30
36
  */
31
- export declare class CloseDialogAction implements Action {
37
+ export declare class CloseDialogAction implements RendererAction {
32
38
  run(action: ListenerAction, renderer: ListenerContext, event: RendererEvent<any>): Promise<void>;
33
39
  }
34
40
  /**
35
41
  * alert提示动作
36
42
  */
37
- export declare class AlertAction implements Action {
43
+ export declare class AlertAction implements RendererAction {
38
44
  run(action: IAlertAction, renderer: ListenerContext, event: RendererEvent<any>): Promise<void>;
39
45
  }
40
46
  /**
41
47
  * confirm确认提示动作
42
48
  */
43
- export declare class ConfirmAction implements Action {
49
+ export declare class ConfirmAction implements RendererAction {
44
50
  run(action: IConfirmAction, renderer: ListenerContext, event: RendererEvent<any>): Promise<void>;
45
51
  }
@@ -61,10 +61,10 @@ var AlertAction = /** @class */ (function () {
61
61
  function AlertAction() {
62
62
  }
63
63
  AlertAction.prototype.run = function (action, renderer, event) {
64
- var _a, _b;
64
+ var _a, _b, _c;
65
65
  return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
66
- return (0, tslib_1.__generator)(this, function (_c) {
67
- (_b = (_a = event.context.env).alert) === null || _b === void 0 ? void 0 : _b.call(_a, action.msg);
66
+ return (0, tslib_1.__generator)(this, function (_d) {
67
+ (_b = (_a = event.context.env).alert) === null || _b === void 0 ? void 0 : _b.call(_a, (_c = action.args) === null || _c === void 0 ? void 0 : _c.msg);
68
68
  return [2 /*return*/];
69
69
  });
70
70
  });
@@ -79,10 +79,10 @@ var ConfirmAction = /** @class */ (function () {
79
79
  function ConfirmAction() {
80
80
  }
81
81
  ConfirmAction.prototype.run = function (action, renderer, event) {
82
- var _a, _b;
82
+ var _a, _b, _c, _d;
83
83
  return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
84
- return (0, tslib_1.__generator)(this, function (_c) {
85
- (_b = (_a = event.context.env).confirm) === null || _b === void 0 ? void 0 : _b.call(_a, action.msg, action.title);
84
+ return (0, tslib_1.__generator)(this, function (_e) {
85
+ (_b = (_a = event.context.env).confirm) === null || _b === void 0 ? void 0 : _b.call(_a, (_c = action.args) === null || _c === void 0 ? void 0 : _c.msg, (_d = action.args) === null || _d === void 0 ? void 0 : _d.title);
86
86
  return [2 /*return*/];
87
87
  });
88
88
  });
@@ -6,8 +6,8 @@
6
6
  "/src/actions/DialogAction.ts"
7
7
  ],
8
8
  "names": [],
9
- "mappings": ";;;;AAEA,mCAKkB;AAelB;;;;;;GAMG;AACH;IAAA;IAQA,CAAC;IAPO,0BAAG,GAAT,UACE,MAAqB,EACrB,QAAyB,EACzB,KAAyB;;;;gBAEzB,MAAA,MAAA,QAAQ,CAAC,KAAK,EAAC,QAAQ,mDAAG,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;;;;KACvD;IACH,mBAAC;AAAD,CAAC,AARD,IAQC;AARY,oCAAY;AAUzB;;;;;;GAMG;AACH;IAAA;IAqBA,CAAC;IApBO,+BAAG,GAAT,UACE,MAAsB,EACtB,QAAyB,EACzB,KAAyB;;;;gBAEzB,IAAI,MAAM,CAAC,WAAW,EAAE;oBACtB,SAAS;oBACT,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;iBACpD;qBAAM;oBACL,SAAS;oBACT,MAAA,MAAA,QAAQ,CAAC,KAAK,EAAC,QAAQ,mDACrB,KAAK,kDAEA,MAAM,KACT,UAAU,EAAE,OAAO,KAErB,MAAM,CAAC,IAAI,CACZ,CAAC;iBACH;;;;KACF;IACH,wBAAC;AAAD,CAAC,AArBD,IAqBC;AArBY,8CAAiB;AAuB9B;;GAEG;AACH;IAAA;IAQA,CAAC;IAPO,yBAAG,GAAT,UACE,MAAoB,EACpB,QAAyB,EACzB,KAAyB;;;;gBAEzB,MAAA,MAAA,KAAK,CAAC,OAAO,CAAC,GAAG,EAAC,KAAK,mDAAG,MAAM,CAAC,GAAG,CAAC,CAAC;;;;KACvC;IACH,kBAAC;AAAD,CAAC,AARD,IAQC;AARY,kCAAW;AAUxB;;GAEG;AACH;IAAA;IAQA,CAAC;IAPO,2BAAG,GAAT,UACE,MAAsB,EACtB,QAAyB,EACzB,KAAyB;;;;gBAEzB,MAAA,MAAA,KAAK,CAAC,OAAO,CAAC,GAAG,EAAC,OAAO,mDAAG,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;;;;KACvD;IACH,oBAAC;AAAD,CAAC,AARD,IAQC;AARY,sCAAa;AAU1B,IAAA,uBAAc,EAAC,QAAQ,EAAE,IAAI,YAAY,EAAE,CAAC,CAAC;AAC7C,IAAA,uBAAc,EAAC,aAAa,EAAE,IAAI,iBAAiB,EAAE,CAAC,CAAC;AACvD,IAAA,uBAAc,EAAC,OAAO,EAAE,IAAI,WAAW,EAAE,CAAC,CAAC;AAC3C,IAAA,uBAAc,EAAC,eAAe,EAAE,IAAI,aAAa,EAAE,CAAC,CAAC",
9
+ "mappings": ";;;;AAEA,mCAKkB;AAqBlB;;;;;;GAMG;AACH;IAAA;IAQA,CAAC;IAPO,0BAAG,GAAT,UACE,MAAqB,EACrB,QAAyB,EACzB,KAAyB;;;;gBAEzB,MAAA,MAAA,QAAQ,CAAC,KAAK,EAAC,QAAQ,mDAAG,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;;;;KACvD;IACH,mBAAC;AAAD,CAAC,AARD,IAQC;AARY,oCAAY;AAUzB;;;;;;GAMG;AACH;IAAA;IAqBA,CAAC;IApBO,+BAAG,GAAT,UACE,MAAsB,EACtB,QAAyB,EACzB,KAAyB;;;;gBAEzB,IAAI,MAAM,CAAC,WAAW,EAAE;oBACtB,SAAS;oBACT,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;iBACpD;qBAAM;oBACL,SAAS;oBACT,MAAA,MAAA,QAAQ,CAAC,KAAK,EAAC,QAAQ,mDACrB,KAAK,kDAEA,MAAM,KACT,UAAU,EAAE,OAAO,KAErB,MAAM,CAAC,IAAI,CACZ,CAAC;iBACH;;;;KACF;IACH,wBAAC;AAAD,CAAC,AArBD,IAqBC;AArBY,8CAAiB;AAuB9B;;GAEG;AACH;IAAA;IAQA,CAAC;IAPO,yBAAG,GAAT,UACE,MAAoB,EACpB,QAAyB,EACzB,KAAyB;;;;gBAEzB,MAAA,MAAA,KAAK,CAAC,OAAO,CAAC,GAAG,EAAC,KAAK,mDAAG,MAAA,MAAM,CAAC,IAAI,0CAAE,GAAG,CAAC,CAAC;;;;KAC7C;IACH,kBAAC;AAAD,CAAC,AARD,IAQC;AARY,kCAAW;AAUxB;;GAEG;AACH;IAAA;IAQA,CAAC;IAPO,2BAAG,GAAT,UACE,MAAsB,EACtB,QAAyB,EACzB,KAAyB;;;;gBAEzB,MAAA,MAAA,KAAK,CAAC,OAAO,CAAC,GAAG,EAAC,OAAO,mDAAG,MAAA,MAAM,CAAC,IAAI,0CAAE,GAAG,EAAE,MAAA,MAAM,CAAC,IAAI,0CAAE,KAAK,CAAC,CAAC;;;;KACnE;IACH,oBAAC;AAAD,CAAC,AARD,IAQC;AARY,sCAAa;AAU1B,IAAA,uBAAc,EAAC,QAAQ,EAAE,IAAI,YAAY,EAAE,CAAC,CAAC;AAC7C,IAAA,uBAAc,EAAC,aAAa,EAAE,IAAI,iBAAiB,EAAE,CAAC,CAAC;AACvD,IAAA,uBAAc,EAAC,OAAO,EAAE,IAAI,WAAW,EAAE,CAAC,CAAC;AAC3C,IAAA,uBAAc,EAAC,eAAe,EAAE,IAAI,aAAa,EAAE,CAAC,CAAC",
10
10
  "sourcesContent": [
11
- "import {SchemaNode} from '../types';\nimport {RendererEvent} from '../utils/renderer-event';\nimport {\n Action,\n ListenerAction,\n ListenerContext,\n registerAction\n} from './Action';\n\nexport interface IAlertAction extends ListenerAction {\n msg: string;\n}\n\nexport interface IConfirmAction extends ListenerAction {\n title: string;\n msg: string;\n}\n\nexport interface IDialogAction extends ListenerAction {\n dialog: SchemaNode;\n}\n\n/**\n * 打开弹窗动作\n *\n * @export\n * @class DialogAction\n * @implements {Action}\n */\nexport class DialogAction implements Action {\n async run(\n action: IDialogAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n renderer.props.onAction?.(event, action, action.args);\n }\n}\n\n/**\n * 关闭弹窗动作\n *\n * @export\n * @class CloseDialogAction\n * @implements {Action}\n */\nexport class CloseDialogAction implements Action {\n async run(\n action: ListenerAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n if (action.componentId) {\n // 关闭指定弹窗\n event.context.scoped.closeById(action.componentId);\n } else {\n // 关闭当前弹窗\n renderer.props.onAction?.(\n event,\n {\n ...action,\n actionType: 'close'\n },\n action.args\n );\n }\n }\n}\n\n/**\n * alert提示动作\n */\nexport class AlertAction implements Action {\n async run(\n action: IAlertAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n event.context.env.alert?.(action.msg);\n }\n}\n\n/**\n * confirm确认提示动作\n */\nexport class ConfirmAction implements Action {\n async run(\n action: IConfirmAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n event.context.env.confirm?.(action.msg, action.title);\n }\n}\n\nregisterAction('dialog', new DialogAction());\nregisterAction('closeDialog', new CloseDialogAction());\nregisterAction('alert', new AlertAction());\nregisterAction('confirmDialog', new ConfirmAction());\n"
11
+ "import {SchemaNode} from '../types';\nimport {RendererEvent} from '../utils/renderer-event';\nimport {\n RendererAction,\n ListenerAction,\n ListenerContext,\n registerAction\n} from './Action';\n\nexport interface IAlertAction extends ListenerAction {\n args: {\n msg: string;\n [propName: string]: any;\n };\n}\n\nexport interface IConfirmAction extends ListenerAction {\n args: {\n title: string;\n msg: string;\n [propName: string]: any;\n };\n}\n\nexport interface IDialogAction extends ListenerAction {\n dialog: SchemaNode;\n}\n\n/**\n * 打开弹窗动作\n *\n * @export\n * @class DialogAction\n * @implements {Action}\n */\nexport class DialogAction implements RendererAction {\n async run(\n action: IDialogAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n renderer.props.onAction?.(event, action, action.args);\n }\n}\n\n/**\n * 关闭弹窗动作\n *\n * @export\n * @class CloseDialogAction\n * @implements {Action}\n */\nexport class CloseDialogAction implements RendererAction {\n async run(\n action: ListenerAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n if (action.componentId) {\n // 关闭指定弹窗\n event.context.scoped.closeById(action.componentId);\n } else {\n // 关闭当前弹窗\n renderer.props.onAction?.(\n event,\n {\n ...action,\n actionType: 'close'\n },\n action.args\n );\n }\n }\n}\n\n/**\n * alert提示动作\n */\nexport class AlertAction implements RendererAction {\n async run(\n action: IAlertAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n event.context.env.alert?.(action.args?.msg);\n }\n}\n\n/**\n * confirm确认提示动作\n */\nexport class ConfirmAction implements RendererAction {\n async run(\n action: IConfirmAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n event.context.env.confirm?.(action.args?.msg, action.args?.title);\n }\n}\n\nregisterAction('dialog', new DialogAction());\nregisterAction('closeDialog', new CloseDialogAction());\nregisterAction('alert', new AlertAction());\nregisterAction('confirmDialog', new ConfirmAction());\n"
12
12
  ]
13
13
  }
@@ -1,6 +1,6 @@
1
1
  import { SchemaNode } from '../types';
2
2
  import { RendererEvent } from '../utils/renderer-event';
3
- import { Action, ListenerAction, ListenerContext } from './Action';
3
+ import { RendererAction, ListenerAction, ListenerContext } from './Action';
4
4
  export interface IDrawerAction extends ListenerAction {
5
5
  drawer: SchemaNode;
6
6
  }
@@ -11,7 +11,7 @@ export interface IDrawerAction extends ListenerAction {
11
11
  * @class DrawerAction
12
12
  * @implements {Action}
13
13
  */
14
- export declare class DrawerAction implements Action {
14
+ export declare class DrawerAction implements RendererAction {
15
15
  run(action: IDrawerAction, renderer: ListenerContext, event: RendererEvent<any>): Promise<void>;
16
16
  }
17
17
  /**
@@ -21,6 +21,6 @@ export declare class DrawerAction implements Action {
21
21
  * @class CloseDrawerAction
22
22
  * @implements {Action}
23
23
  */
24
- export declare class CloseDrawerAction implements Action {
24
+ export declare class CloseDrawerAction implements RendererAction {
25
25
  run(action: ListenerAction, renderer: ListenerContext, event: RendererEvent<any>): Promise<void>;
26
26
  }
@@ -8,6 +8,6 @@
8
8
  "names": [],
9
9
  "mappings": ";;;;AAEA,mCAKkB;AAMlB;;;;;;GAMG;AACH;IAAA;IAQA,CAAC;IAPO,0BAAG,GAAT,UACE,MAAqB,EACrB,QAAyB,EACzB,KAAyB;;;;gBAEzB,MAAA,MAAA,QAAQ,CAAC,KAAK,EAAC,QAAQ,mDAAG,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;;;;KACvD;IACH,mBAAC;AAAD,CAAC,AARD,IAQC;AARY,oCAAY;AAUzB;;;;;;GAMG;AACH;IAAA;IAqBA,CAAC;IApBO,+BAAG,GAAT,UACE,MAAsB,EACtB,QAAyB,EACzB,KAAyB;;;;gBAEzB,IAAI,MAAM,CAAC,WAAW,EAAE;oBACtB,SAAS;oBACT,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;iBACpD;qBAAM;oBACL,SAAS;oBACT,MAAA,MAAA,QAAQ,CAAC,KAAK,EAAC,QAAQ,mDACrB,KAAK,kDAEA,MAAM,KACT,UAAU,EAAE,OAAO,KAErB,MAAM,CAAC,IAAI,CACZ,CAAC;iBACH;;;;KACF;IACH,wBAAC;AAAD,CAAC,AArBD,IAqBC;AArBY,8CAAiB;AAuB9B,IAAA,uBAAc,EAAC,QAAQ,EAAE,IAAI,YAAY,EAAE,CAAC,CAAC;AAC7C,IAAA,uBAAc,EAAC,aAAa,EAAE,IAAI,iBAAiB,EAAE,CAAC,CAAC",
10
10
  "sourcesContent": [
11
- "import {SchemaNode} from '../types';\nimport {RendererEvent} from '../utils/renderer-event';\nimport {\n Action,\n ListenerAction,\n ListenerContext,\n registerAction\n} from './Action';\n\nexport interface IDrawerAction extends ListenerAction {\n drawer: SchemaNode;\n}\n\n/**\n * 打开抽屉动作\n *\n * @export\n * @class DrawerAction\n * @implements {Action}\n */\nexport class DrawerAction implements Action {\n async run(\n action: IDrawerAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n renderer.props.onAction?.(event, action, action.args);\n }\n}\n\n/**\n * 关闭抽屉动作\n *\n * @export\n * @class CloseDrawerAction\n * @implements {Action}\n */\nexport class CloseDrawerAction implements Action {\n async run(\n action: ListenerAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n if (action.componentId) {\n // 关闭指定抽屉\n event.context.scoped.closeById(action.componentId);\n } else {\n // 关闭当前抽屉\n renderer.props.onAction?.(\n event,\n {\n ...action,\n actionType: 'close'\n },\n action.args\n );\n }\n }\n}\n\nregisterAction('drawer', new DrawerAction());\nregisterAction('closeDrawer', new CloseDrawerAction());\n"
11
+ "import {SchemaNode} from '../types';\nimport {RendererEvent} from '../utils/renderer-event';\nimport {\n RendererAction,\n ListenerAction,\n ListenerContext,\n registerAction\n} from './Action';\n\nexport interface IDrawerAction extends ListenerAction {\n drawer: SchemaNode;\n}\n\n/**\n * 打开抽屉动作\n *\n * @export\n * @class DrawerAction\n * @implements {Action}\n */\nexport class DrawerAction implements RendererAction {\n async run(\n action: IDrawerAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n renderer.props.onAction?.(event, action, action.args);\n }\n}\n\n/**\n * 关闭抽屉动作\n *\n * @export\n * @class CloseDrawerAction\n * @implements {Action}\n */\nexport class CloseDrawerAction implements RendererAction {\n async run(\n action: ListenerAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n if (action.componentId) {\n // 关闭指定抽屉\n event.context.scoped.closeById(action.componentId);\n } else {\n // 关闭当前抽屉\n renderer.props.onAction?.(\n event,\n {\n ...action,\n actionType: 'close'\n },\n action.args\n );\n }\n }\n}\n\nregisterAction('drawer', new DrawerAction());\nregisterAction('closeDrawer', new CloseDrawerAction());\n"
12
12
  ]
13
13
  }
@@ -1,11 +1,14 @@
1
1
  import { RendererEvent } from '../utils/renderer-event';
2
- import { Action, ListenerAction, ListenerContext } from './Action';
2
+ import { RendererAction, ListenerAction, ListenerContext } from './Action';
3
3
  export interface IEmailAction extends ListenerAction {
4
- to: string;
5
- cc: string;
6
- bcc: string;
7
- subject: string;
8
- body: string;
4
+ args: {
5
+ to: string;
6
+ cc: string;
7
+ bcc: string;
8
+ subject: string;
9
+ body: string;
10
+ [propName: string]: any;
11
+ };
9
12
  }
10
13
  /**
11
14
  * 邮件动作
@@ -14,6 +17,6 @@ export interface IEmailAction extends ListenerAction {
14
17
  * @class EmailAction
15
18
  * @implements {Action}
16
19
  */
17
- export declare class EmailAction implements Action {
20
+ export declare class EmailAction implements RendererAction {
18
21
  run(action: IEmailAction, renderer: ListenerContext, event: RendererEvent<any>): Promise<void>;
19
22
  }
@@ -2,9 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EmailAction = void 0;
4
4
  var tslib_1 = require("tslib");
5
- var tpl_1 = require("../utils/tpl");
6
5
  var pick_1 = (0, tslib_1.__importDefault)(require("lodash/pick"));
7
- var mapValues_1 = (0, tslib_1.__importDefault)(require("lodash/mapValues"));
8
6
  var qs_1 = (0, tslib_1.__importDefault)(require("qs"));
9
7
  var Action_1 = require("./Action");
10
8
  /**
@@ -18,11 +16,12 @@ var EmailAction = /** @class */ (function () {
18
16
  function EmailAction() {
19
17
  }
20
18
  EmailAction.prototype.run = function (action, renderer, event) {
19
+ var _a, _b;
21
20
  return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
22
21
  var mailTo, mailInfo, mailStr, mailto;
23
- return (0, tslib_1.__generator)(this, function (_a) {
24
- mailTo = (0, tpl_1.filter)(action.to, action.args);
25
- mailInfo = (0, mapValues_1.default)((0, pick_1.default)(action, 'cc', 'bcc', 'subject', 'body'), function (val) { return (0, tpl_1.filter)(val, action.args); });
22
+ return (0, tslib_1.__generator)(this, function (_c) {
23
+ mailTo = (_a = action.args) === null || _a === void 0 ? void 0 : _a.to;
24
+ mailInfo = (0, pick_1.default)((_b = action.args) !== null && _b !== void 0 ? _b : {}, 'cc', 'bcc', 'subject', 'body');
26
25
  mailStr = qs_1.default.stringify(mailInfo);
27
26
  mailto = "mailto:".concat(mailTo, "?").concat(mailStr);
28
27
  window.open(mailto);
@@ -6,8 +6,8 @@
6
6
  "/src/actions/EmailAction.ts"
7
7
  ],
8
8
  "names": [],
9
- "mappings": ";;;;AACA,oCAAoC;AACpC,kEAA+B;AAC/B,4EAAyC;AACzC,uDAAoB;AACpB,mCAKkB;AAUlB;;;;;;GAMG;AACH;IAAA;IAgBA,CAAC;IAfO,yBAAG,GAAT,UACE,MAAoB,EACpB,QAAyB,EACzB,KAAyB;;;;gBAEnB,MAAM,GAAG,IAAA,YAAM,EAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;gBACxC,QAAQ,GAAG,IAAA,mBAAS,EACxB,IAAA,cAAI,EAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,EAC5C,UAAA,GAAG,IAAI,OAAA,IAAA,YAAM,EAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,EAAxB,CAAwB,CAChC,CAAC;gBACI,OAAO,GAAG,YAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;gBACjC,MAAM,GAAG,iBAAU,MAAM,cAAI,OAAO,CAAE,CAAC;gBAE7C,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;;;;KACrB;IACH,kBAAC;AAAD,CAAC,AAhBD,IAgBC;AAhBY,kCAAW;AAkBxB,IAAA,uBAAc,EAAC,OAAO,EAAE,IAAI,WAAW,EAAE,CAAC,CAAC",
9
+ "mappings": ";;;;AAEA,kEAA+B;AAE/B,uDAAoB;AACpB,mCAKkB;AAalB;;;;;;GAMG;AACH;IAAA;IAaA,CAAC;IAZO,yBAAG,GAAT,UACE,MAAoB,EACpB,QAAyB,EACzB,KAAyB;;;;;gBAEnB,MAAM,GAAG,MAAA,MAAM,CAAC,IAAI,0CAAE,EAAE,CAAC;gBACzB,QAAQ,GAAG,IAAA,cAAI,EAAC,MAAA,MAAM,CAAC,IAAI,mCAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;gBACnE,OAAO,GAAG,YAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;gBACjC,MAAM,GAAG,iBAAU,MAAM,cAAI,OAAO,CAAE,CAAC;gBAE7C,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;;;;KACrB;IACH,kBAAC;AAAD,CAAC,AAbD,IAaC;AAbY,kCAAW;AAexB,IAAA,uBAAc,EAAC,OAAO,EAAE,IAAI,WAAW,EAAE,CAAC,CAAC",
10
10
  "sourcesContent": [
11
- "import {RendererEvent} from '../utils/renderer-event';\nimport {filter} from '../utils/tpl';\nimport pick from 'lodash/pick';\nimport mapValues from 'lodash/mapValues';\nimport qs from 'qs';\nimport {\n Action,\n ListenerAction,\n ListenerContext,\n registerAction\n} from './Action';\n\nexport interface IEmailAction extends ListenerAction {\n to: string;\n cc: string;\n bcc: string;\n subject: string;\n body: string;\n}\n\n/**\n * 邮件动作\n *\n * @export\n * @class EmailAction\n * @implements {Action}\n */\nexport class EmailAction implements Action {\n async run(\n action: IEmailAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n const mailTo = filter(action.to, action.args);\n const mailInfo = mapValues(\n pick(action, 'cc', 'bcc', 'subject', 'body'),\n val => filter(val, action.args)\n );\n const mailStr = qs.stringify(mailInfo);\n const mailto = `mailto:${mailTo}?${mailStr}`;\n\n window.open(mailto);\n }\n}\n\nregisterAction('email', new EmailAction());\n"
11
+ "import {RendererEvent} from '../utils/renderer-event';\nimport {filter} from '../utils/tpl';\nimport pick from 'lodash/pick';\nimport mapValues from 'lodash/mapValues';\nimport qs from 'qs';\nimport {\n RendererAction,\n ListenerAction,\n ListenerContext,\n registerAction\n} from './Action';\n\nexport interface IEmailAction extends ListenerAction {\n args: {\n to: string;\n cc: string;\n bcc: string;\n subject: string;\n body: string;\n [propName: string]: any;\n };\n}\n\n/**\n * 邮件动作\n *\n * @export\n * @class EmailAction\n * @implements {Action}\n */\nexport class EmailAction implements RendererAction {\n async run(\n action: IEmailAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n const mailTo = action.args?.to;\n const mailInfo = pick(action.args ?? {}, 'cc', 'bcc', 'subject', 'body');\n const mailStr = qs.stringify(mailInfo);\n const mailto = `mailto:${mailTo}?${mailStr}`;\n\n window.open(mailto);\n }\n}\n\nregisterAction('email', new EmailAction());\n"
12
12
  ]
13
13
  }
@@ -1,17 +1,25 @@
1
1
  import { RendererEvent } from '../utils/renderer-event';
2
- import { Action, ListenerAction, ListenerContext } from './Action';
2
+ import { RendererAction, ListenerAction, ListenerContext } from './Action';
3
3
  export interface ILinkAction extends ListenerAction {
4
- link: string;
5
- url?: never;
6
- params?: {
7
- [key: string]: string;
4
+ args: {
5
+ link: string;
6
+ url?: never;
7
+ blank?: boolean;
8
+ params?: {
9
+ [key: string]: string;
10
+ };
11
+ [propName: string]: any;
8
12
  };
9
13
  }
10
14
  export interface IUrlAction extends ListenerAction {
11
- url: string;
12
- link?: never;
13
- params?: {
14
- [key: string]: string;
15
+ args: {
16
+ url: string;
17
+ link?: never;
18
+ blank?: boolean;
19
+ params?: {
20
+ [key: string]: string;
21
+ };
22
+ [propName: string]: any;
15
23
  };
16
24
  }
17
25
  /**
@@ -21,6 +29,6 @@ export interface IUrlAction extends ListenerAction {
21
29
  * @class LinkAction
22
30
  * @implements {Action}
23
31
  */
24
- export declare class LinkAction implements Action {
25
- run(action: ILinkAction | IUrlAction, renderer: ListenerContext, event: RendererEvent<any>): Promise<void>;
32
+ export declare class LinkAction implements RendererAction {
33
+ run(action: ListenerAction, renderer: ListenerContext, event: RendererEvent<any>): Promise<void>;
26
34
  }
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.LinkAction = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var api_1 = require("../utils/api");
6
+ var omit_1 = (0, tslib_1.__importDefault)(require("lodash/omit"));
6
7
  var Action_1 = require("./Action");
7
8
  /**
8
9
  * 打开页面动作
@@ -15,20 +16,20 @@ var LinkAction = /** @class */ (function () {
15
16
  function LinkAction() {
16
17
  }
17
18
  LinkAction.prototype.run = function (action, renderer, event) {
18
- var _a;
19
+ var _a, _b, _c, _d, _e, _f;
19
20
  return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
20
21
  var urlObj;
21
- return (0, tslib_1.__generator)(this, function (_b) {
22
+ return (0, tslib_1.__generator)(this, function (_g) {
22
23
  if (!((_a = renderer.props.env) === null || _a === void 0 ? void 0 : _a.jumpTo)) {
23
24
  throw new Error('env.jumpTo is required!');
24
25
  }
25
26
  urlObj = (0, api_1.buildApi)({
26
- url: (action.url || action.link),
27
+ url: (((_b = action.args) === null || _b === void 0 ? void 0 : _b.url) || ((_c = action.args) === null || _c === void 0 ? void 0 : _c.link)),
27
28
  method: 'get'
28
- }, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, action.params), action.args), {
29
+ }, (0, tslib_1.__assign)((0, tslib_1.__assign)({}, ((_e = (_d = action.args) === null || _d === void 0 ? void 0 : _d.params) !== null && _e !== void 0 ? _e : {})), (0, omit_1.default)((_f = action.args) !== null && _f !== void 0 ? _f : {}, ['params', 'blank', 'url', 'link'])), {
29
30
  autoAppend: true
30
31
  });
31
- renderer.props.env.jumpTo(urlObj.url, action, action.args);
32
+ renderer.props.env.jumpTo(urlObj.url, (0, tslib_1.__assign)({ actionType: action.actionType }, action.args), action.args);
32
33
  return [2 /*return*/];
33
34
  });
34
35
  });
@@ -6,8 +6,8 @@
6
6
  "/src/actions/LinkAction.ts"
7
7
  ],
8
8
  "names": [],
9
- "mappings": ";;;;AAAA,oCAAsC;AAItC,mCAKkB;AAkBlB;;;;;;GAMG;AACH;IAAA;IAwBA,CAAC;IAvBO,wBAAG,GAAT,UACE,MAAgC,EAChC,QAAyB,EACzB,KAAyB;;;;;gBAEzB,IAAI,CAAC,CAAA,MAAA,QAAQ,CAAC,KAAK,CAAC,GAAG,0CAAE,MAAM,CAAA,EAAE;oBAC/B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;iBAC5C;gBAGG,MAAM,GAAG,IAAA,cAAQ,EACnB;oBACE,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,IAAI,CAAW;oBAC1C,MAAM,EAAE,KAAK;iBACd,kDACG,MAAM,CAAC,MAAM,GAAK,MAAM,CAAC,IAAI,GACjC;oBACE,UAAU,EAAE,IAAI;iBACjB,CACF,CAAC;gBAEF,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;;;;KAC5D;IACH,iBAAC;AAAD,CAAC,AAxBD,IAwBC;AAxBY,gCAAU;AA0BvB,IAAA,uBAAc,EAAC,UAAU,EAAE,IAAI,UAAU,EAAE,CAAC,CAAC",
9
+ "mappings": ";;;;AACA,oCAAsC;AAItC,kEAA+B;AAC/B,mCAKkB;AA0BlB;;;;;;GAMG;AACH;IAAA;IAkCA,CAAC;IAjCO,wBAAG,GAAT,UACE,MAAsB,EACtB,QAAyB,EACzB,KAAyB;;;;;gBAEzB,IAAI,CAAC,CAAA,MAAA,QAAQ,CAAC,KAAK,CAAC,GAAG,0CAAE,MAAM,CAAA,EAAE;oBAC/B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;iBAC5C;gBAGG,MAAM,GAAG,IAAA,cAAQ,EACnB;oBACE,GAAG,EAAE,CAAC,CAAA,MAAA,MAAM,CAAC,IAAI,0CAAE,GAAG,MAAI,MAAA,MAAM,CAAC,IAAI,0CAAE,IAAI,CAAA,CAAW;oBACtD,MAAM,EAAE,KAAK;iBACd,kDAEI,CAAC,MAAA,MAAA,MAAM,CAAC,IAAI,0CAAE,MAAM,mCAAI,EAAE,CAAC,GAC3B,IAAA,cAAI,EAAC,MAAA,MAAM,CAAC,IAAI,mCAAI,EAAE,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,GAEhE;oBACE,UAAU,EAAE,IAAI;iBACjB,CACF,CAAC;gBAEF,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CACvB,MAAM,CAAC,GAAG,0BAER,UAAU,EAAE,MAAM,CAAC,UAAU,IAC1B,MAAM,CAAC,IAAI,GAEhB,MAAM,CAAC,IAAI,CACZ,CAAC;;;;KACH;IACH,iBAAC;AAAD,CAAC,AAlCD,IAkCC;AAlCY,gCAAU;AAoCvB,IAAA,uBAAc,EAAC,UAAU,EAAE,IAAI,UAAU,EAAE,CAAC,CAAC",
10
10
  "sourcesContent": [
11
- "import {buildApi} from '../utils/api';\nimport {isEmpty, isObject, qsstringify} from '../utils/helper';\nimport {RendererEvent} from '../utils/renderer-event';\nimport {filter} from '../utils/tpl';\nimport {\n Action,\n ListenerAction,\n ListenerContext,\n registerAction\n} from './Action';\n\nexport interface ILinkAction extends ListenerAction {\n link: string;\n url?: never;\n params?: {\n [key: string]: string;\n };\n}\n\nexport interface IUrlAction extends ListenerAction {\n url: string;\n link?: never;\n params?: {\n [key: string]: string;\n };\n}\n\n/**\n * 打开页面动作\n *\n * @export\n * @class LinkAction\n * @implements {Action}\n */\nexport class LinkAction implements Action {\n async run(\n action: ILinkAction | IUrlAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n if (!renderer.props.env?.jumpTo) {\n throw new Error('env.jumpTo is required!');\n }\n\n // 通过buildApi兼容较复杂的url情况\n let urlObj = buildApi(\n {\n url: (action.url || action.link) as string,\n method: 'get'\n },\n {...action.params, ...action.args},\n {\n autoAppend: true\n }\n );\n\n renderer.props.env.jumpTo(urlObj.url, action, action.args);\n }\n}\n\nregisterAction('openlink', new LinkAction());\n"
11
+ "import {Action} from '../types';\nimport {buildApi} from '../utils/api';\nimport {isEmpty, isObject, qsstringify} from '../utils/helper';\nimport {RendererEvent} from '../utils/renderer-event';\nimport {filter} from '../utils/tpl';\nimport omit from 'lodash/omit';\nimport {\n RendererAction,\n ListenerAction,\n ListenerContext,\n registerAction\n} from './Action';\n\nexport interface ILinkAction extends ListenerAction {\n args: {\n link: string;\n url?: never;\n blank?: boolean;\n params?: {\n [key: string]: string;\n };\n [propName: string]: any;\n };\n}\n\nexport interface IUrlAction extends ListenerAction {\n args: {\n url: string;\n link?: never;\n blank?: boolean;\n params?: {\n [key: string]: string;\n };\n [propName: string]: any;\n };\n}\n\n/**\n * 打开页面动作\n *\n * @export\n * @class LinkAction\n * @implements {Action}\n */\nexport class LinkAction implements RendererAction {\n async run(\n action: ListenerAction,\n renderer: ListenerContext,\n event: RendererEvent<any>\n ) {\n if (!renderer.props.env?.jumpTo) {\n throw new Error('env.jumpTo is required!');\n }\n\n // 通过buildApi兼容较复杂的url情况\n let urlObj = buildApi(\n {\n url: (action.args?.url || action.args?.link) as string,\n method: 'get'\n },\n {\n ...(action.args?.params ?? {}),\n ...omit(action.args ?? {}, ['params', 'blank', 'url', 'link'])\n },\n {\n autoAppend: true\n }\n );\n\n renderer.props.env.jumpTo(\n urlObj.url,\n {\n actionType: action.actionType,\n ...action.args\n },\n action.args\n );\n }\n}\n\nregisterAction('openlink', new LinkAction());\n"
12
12
  ]
13
13
  }