amis-core 2.3.2-beta.1 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (313) hide show
  1. package/esm/Root.js +1 -1
  2. package/esm/RootRenderer.js +1 -1
  3. package/esm/SchemaRenderer.js +10 -3
  4. package/esm/Scoped.js +1 -1
  5. package/esm/WithRootStore.js +1 -1
  6. package/esm/WithStore.js +1 -1
  7. package/esm/_virtual/index.js +1 -1
  8. package/esm/actions/Action.d.ts +2 -1
  9. package/esm/actions/Action.js +90 -15
  10. package/esm/actions/AjaxAction.js +2 -3
  11. package/esm/actions/BreakAction.js +1 -1
  12. package/esm/actions/BroadcastAction.d.ts +4 -1
  13. package/esm/actions/BroadcastAction.js +8 -8
  14. package/esm/actions/CmptAction.d.ts +1 -1
  15. package/esm/actions/CmptAction.js +5 -2
  16. package/esm/actions/ContinueAction.js +1 -1
  17. package/esm/actions/CopyAction.js +1 -1
  18. package/esm/actions/CustomAction.d.ts +6 -1
  19. package/esm/actions/CustomAction.js +7 -7
  20. package/esm/actions/DialogAction.d.ts +4 -1
  21. package/esm/actions/DialogAction.js +9 -5
  22. package/esm/actions/DrawerAction.d.ts +4 -1
  23. package/esm/actions/DrawerAction.js +9 -5
  24. package/esm/actions/EmailAction.js +1 -1
  25. package/esm/actions/LinkAction.js +5 -6
  26. package/esm/actions/LoopAction.js +1 -1
  27. package/esm/actions/PageAction.js +1 -1
  28. package/esm/actions/ParallelAction.js +1 -1
  29. package/esm/actions/SwitchAction.js +1 -1
  30. package/esm/actions/ToastAction.js +1 -1
  31. package/esm/components/LazyComponent.js +1 -1
  32. package/esm/components/Overlay.js +3 -2
  33. package/esm/components/PopOver.js +2 -3
  34. package/esm/env.js +1 -1
  35. package/esm/envOverwrite.js +1 -1
  36. package/esm/factory.d.ts +1 -1
  37. package/esm/factory.js +2 -2
  38. package/esm/index.d.ts +20 -9
  39. package/esm/index.js +5 -2
  40. package/esm/locale.js +1 -1
  41. package/esm/node_modules/@restart/hooks/esm/useCommittedRef.js +1 -1
  42. package/esm/node_modules/@restart/hooks/esm/useEventCallback.js +1 -1
  43. package/esm/node_modules/dom-helpers/esm/addEventListener.js +1 -1
  44. package/esm/node_modules/dom-helpers/esm/canUseDOM.js +1 -1
  45. package/esm/node_modules/dom-helpers/esm/contains.js +1 -1
  46. package/esm/node_modules/dom-helpers/esm/listen.js +1 -1
  47. package/esm/node_modules/dom-helpers/esm/ownerDocument.js +1 -1
  48. package/esm/node_modules/dom-helpers/esm/removeEventListener.js +1 -1
  49. package/esm/node_modules/prop-types/factoryWithThrowingShims.js +51 -60
  50. package/esm/node_modules/prop-types/index.js +4 -13
  51. package/esm/node_modules/prop-types/lib/ReactPropTypesSecret.js +4 -13
  52. package/esm/node_modules/react-overlays/esm/Portal.js +1 -1
  53. package/esm/node_modules/react-overlays/esm/ownerDocument.js +1 -1
  54. package/esm/node_modules/react-overlays/esm/safeFindDOMNode.js +1 -1
  55. package/esm/node_modules/react-overlays/esm/useRootClose.js +1 -3
  56. package/esm/node_modules/react-overlays/esm/useWaitForDOMRef.js +1 -1
  57. package/esm/renderers/Form.d.ts +7 -1
  58. package/esm/renderers/Form.js +17 -6
  59. package/esm/renderers/Item.d.ts +6 -6
  60. package/esm/renderers/Item.js +24 -16
  61. package/esm/renderers/Options.d.ts +1 -1
  62. package/esm/renderers/Options.js +2 -2
  63. package/esm/renderers/Placeholder.js +1 -1
  64. package/esm/renderers/builtin.js +1 -1
  65. package/esm/renderers/wrapControl.js +1 -1
  66. package/esm/store/app.js +1 -1
  67. package/esm/store/combo.js +1 -1
  68. package/esm/store/crud.js +1 -1
  69. package/esm/store/form.js +2 -2
  70. package/esm/store/formItem.js +1 -1
  71. package/esm/store/iRenderer.js +1 -1
  72. package/esm/store/index.d.ts +26 -13
  73. package/esm/store/index.js +2 -2
  74. package/esm/store/list.js +1 -1
  75. package/esm/store/manager.js +1 -1
  76. package/esm/store/modal.js +1 -1
  77. package/esm/store/node.js +1 -1
  78. package/esm/store/pagination.js +1 -1
  79. package/esm/store/root.d.ts +2 -0
  80. package/esm/store/root.js +10 -4
  81. package/esm/store/service.js +1 -1
  82. package/esm/store/table.js +1 -1
  83. package/esm/store/table2.js +1 -1
  84. package/esm/theme.js +1 -1
  85. package/esm/types.d.ts +27 -0
  86. package/esm/utils/Animation.js +1 -1
  87. package/esm/utils/ColorScale.js +1 -1
  88. package/esm/utils/DataSchema.js +1 -1
  89. package/esm/utils/DataScope.js +1 -1
  90. package/esm/utils/RootClose.js +1 -1
  91. package/esm/utils/SimpleMap.js +1 -1
  92. package/esm/utils/api.d.ts +1 -1
  93. package/esm/utils/api.js +17 -5
  94. package/esm/utils/attachmentAdpator.js +1 -1
  95. package/esm/utils/autobind.js +1 -1
  96. package/esm/utils/columnsSplit.js +1 -1
  97. package/esm/utils/dataMapping.js +1 -1
  98. package/esm/utils/date.js +1 -1
  99. package/esm/utils/debug.js +1 -1
  100. package/esm/utils/decodeEntity.d.ts +5 -0
  101. package/esm/utils/decodeEntity.js +16 -0
  102. package/esm/utils/dom.js +1 -1
  103. package/esm/utils/errors.js +1 -1
  104. package/esm/utils/escapeHtml.js +1 -1
  105. package/esm/utils/filter-schema.js +1 -1
  106. package/esm/utils/filter.js +7 -5
  107. package/esm/utils/formatDuration.js +1 -1
  108. package/esm/utils/formula.js +1 -1
  109. package/esm/utils/getVariable.js +1 -1
  110. package/esm/utils/grammar.js +1 -1
  111. package/esm/utils/handleAction.js +1 -1
  112. package/esm/utils/helper.js +6 -1
  113. package/esm/utils/highlight.js +1 -1
  114. package/esm/utils/icon.d.ts +5 -1
  115. package/esm/utils/icon.js +11 -1
  116. package/esm/utils/image.js +1 -1
  117. package/esm/utils/index.d.ts +1 -0
  118. package/esm/utils/isPureVariable.js +1 -1
  119. package/esm/utils/json-schema-2-amis-schema.js +1 -1
  120. package/esm/utils/keyToPath.js +1 -1
  121. package/esm/utils/makeSorter.js +1 -1
  122. package/esm/utils/normalizeLink.js +1 -1
  123. package/esm/utils/normalizeOptions.js +1 -1
  124. package/esm/utils/object.js +1 -1
  125. package/esm/utils/offset.js +1 -1
  126. package/esm/utils/offsetParent.js +1 -1
  127. package/esm/utils/optionValueCompare.js +1 -1
  128. package/esm/utils/position.js +1 -1
  129. package/esm/utils/prettyBytes.js +1 -1
  130. package/esm/utils/renderer-event.js +1 -1
  131. package/esm/utils/replaceText.js +1 -1
  132. package/esm/utils/resize-sensor.js +1 -1
  133. package/esm/utils/resolveVariable.js +1 -1
  134. package/esm/utils/resolveVariableAndFilter.js +1 -1
  135. package/esm/utils/scrollPosition.js +1 -1
  136. package/esm/utils/string2regExp.js +1 -1
  137. package/esm/utils/stripNumber.js +1 -1
  138. package/esm/utils/style.js +1 -1
  139. package/esm/utils/toNumber.js +1 -1
  140. package/esm/utils/tokenize.js +1 -1
  141. package/esm/utils/tpl-builtin.js +1 -1
  142. package/esm/utils/tpl-lodash.js +1 -1
  143. package/esm/utils/tpl.js +1 -1
  144. package/esm/utils/uncontrollable.js +1 -1
  145. package/esm/utils/validations.js +1 -1
  146. package/lib/Root.js +1 -1
  147. package/lib/RootRenderer.js +1 -1
  148. package/lib/SchemaRenderer.js +10 -3
  149. package/lib/Scoped.js +1 -1
  150. package/lib/WithRootStore.js +1 -1
  151. package/lib/WithStore.js +1 -1
  152. package/lib/_virtual/index.js +1 -1
  153. package/lib/actions/Action.d.ts +2 -1
  154. package/lib/actions/Action.js +94 -15
  155. package/lib/actions/AjaxAction.js +2 -7
  156. package/lib/actions/BreakAction.js +1 -1
  157. package/lib/actions/BroadcastAction.d.ts +4 -1
  158. package/lib/actions/BroadcastAction.js +8 -8
  159. package/lib/actions/CmptAction.d.ts +1 -1
  160. package/lib/actions/CmptAction.js +5 -2
  161. package/lib/actions/ContinueAction.js +1 -1
  162. package/lib/actions/CopyAction.js +1 -1
  163. package/lib/actions/CustomAction.d.ts +6 -1
  164. package/lib/actions/CustomAction.js +7 -7
  165. package/lib/actions/DialogAction.d.ts +4 -1
  166. package/lib/actions/DialogAction.js +9 -5
  167. package/lib/actions/DrawerAction.d.ts +4 -1
  168. package/lib/actions/DrawerAction.js +9 -5
  169. package/lib/actions/EmailAction.js +1 -1
  170. package/lib/actions/LinkAction.js +5 -10
  171. package/lib/actions/LoopAction.js +1 -1
  172. package/lib/actions/PageAction.js +1 -1
  173. package/lib/actions/ParallelAction.js +1 -1
  174. package/lib/actions/SwitchAction.js +1 -1
  175. package/lib/actions/ToastAction.js +1 -1
  176. package/lib/components/LazyComponent.js +1 -1
  177. package/lib/components/Overlay.js +3 -2
  178. package/lib/components/PopOver.js +2 -3
  179. package/lib/env.js +1 -1
  180. package/lib/envOverwrite.js +1 -1
  181. package/lib/factory.d.ts +1 -1
  182. package/lib/factory.js +2 -2
  183. package/lib/index.d.ts +20 -9
  184. package/lib/index.js +6 -1
  185. package/lib/locale.js +1 -1
  186. package/lib/node_modules/@restart/hooks/esm/useCommittedRef.js +1 -1
  187. package/lib/node_modules/@restart/hooks/esm/useEventCallback.js +1 -1
  188. package/lib/node_modules/dom-helpers/esm/addEventListener.js +1 -1
  189. package/lib/node_modules/dom-helpers/esm/canUseDOM.js +1 -1
  190. package/lib/node_modules/dom-helpers/esm/contains.js +1 -1
  191. package/lib/node_modules/dom-helpers/esm/listen.js +1 -1
  192. package/lib/node_modules/dom-helpers/esm/ownerDocument.js +1 -1
  193. package/lib/node_modules/dom-helpers/esm/removeEventListener.js +1 -1
  194. package/lib/node_modules/prop-types/factoryWithThrowingShims.js +51 -60
  195. package/lib/node_modules/prop-types/index.js +3 -12
  196. package/lib/node_modules/prop-types/lib/ReactPropTypesSecret.js +4 -13
  197. package/lib/node_modules/react-overlays/esm/Portal.js +1 -1
  198. package/lib/node_modules/react-overlays/esm/ownerDocument.js +1 -1
  199. package/lib/node_modules/react-overlays/esm/safeFindDOMNode.js +1 -1
  200. package/lib/node_modules/react-overlays/esm/useRootClose.js +1 -3
  201. package/lib/node_modules/react-overlays/esm/useWaitForDOMRef.js +1 -1
  202. package/lib/renderers/Form.d.ts +7 -1
  203. package/lib/renderers/Form.js +17 -6
  204. package/lib/renderers/Item.d.ts +6 -6
  205. package/lib/renderers/Item.js +24 -16
  206. package/lib/renderers/Options.d.ts +1 -1
  207. package/lib/renderers/Options.js +2 -2
  208. package/lib/renderers/Placeholder.js +1 -1
  209. package/lib/renderers/builtin.js +1 -1
  210. package/lib/renderers/wrapControl.js +1 -1
  211. package/lib/store/app.js +1 -1
  212. package/lib/store/combo.js +1 -1
  213. package/lib/store/crud.js +1 -1
  214. package/lib/store/form.js +2 -2
  215. package/lib/store/formItem.js +1 -1
  216. package/lib/store/iRenderer.js +1 -1
  217. package/lib/store/index.d.ts +26 -13
  218. package/lib/store/index.js +2 -2
  219. package/lib/store/list.js +1 -1
  220. package/lib/store/manager.js +1 -1
  221. package/lib/store/modal.js +1 -1
  222. package/lib/store/node.js +1 -1
  223. package/lib/store/pagination.js +1 -1
  224. package/lib/store/root.d.ts +2 -0
  225. package/lib/store/root.js +9 -3
  226. package/lib/store/service.js +1 -1
  227. package/lib/store/table.js +1 -1
  228. package/lib/store/table2.js +1 -1
  229. package/lib/theme.js +1 -1
  230. package/lib/types.d.ts +27 -0
  231. package/lib/utils/Animation.js +1 -1
  232. package/lib/utils/ColorScale.js +1 -1
  233. package/lib/utils/DataSchema.js +1 -1
  234. package/lib/utils/DataScope.js +1 -1
  235. package/lib/utils/RootClose.js +1 -1
  236. package/lib/utils/SimpleMap.js +1 -1
  237. package/lib/utils/api.d.ts +1 -1
  238. package/lib/utils/api.js +16 -4
  239. package/lib/utils/attachmentAdpator.js +1 -1
  240. package/lib/utils/autobind.js +1 -1
  241. package/lib/utils/columnsSplit.js +1 -1
  242. package/lib/utils/dataMapping.js +1 -1
  243. package/lib/utils/date.js +1 -1
  244. package/lib/utils/debug.js +1 -1
  245. package/lib/utils/decodeEntity.d.ts +5 -0
  246. package/lib/utils/decodeEntity.js +20 -0
  247. package/lib/utils/dom.js +1 -1
  248. package/lib/utils/errors.js +1 -1
  249. package/lib/utils/escapeHtml.js +1 -1
  250. package/lib/utils/filter-schema.js +1 -1
  251. package/lib/utils/filter.js +7 -5
  252. package/lib/utils/formatDuration.js +1 -1
  253. package/lib/utils/formula.js +1 -1
  254. package/lib/utils/getVariable.js +1 -1
  255. package/lib/utils/grammar.js +1 -1
  256. package/lib/utils/handleAction.js +1 -1
  257. package/lib/utils/helper.js +6 -1
  258. package/lib/utils/highlight.js +1 -1
  259. package/lib/utils/icon.d.ts +5 -1
  260. package/lib/utils/icon.js +11 -1
  261. package/lib/utils/image.js +1 -1
  262. package/lib/utils/index.d.ts +1 -0
  263. package/lib/utils/isPureVariable.js +1 -1
  264. package/lib/utils/json-schema-2-amis-schema.js +1 -1
  265. package/lib/utils/keyToPath.js +1 -1
  266. package/lib/utils/makeSorter.js +1 -1
  267. package/lib/utils/normalizeLink.js +1 -1
  268. package/lib/utils/normalizeOptions.js +1 -1
  269. package/lib/utils/object.js +1 -1
  270. package/lib/utils/offset.js +1 -1
  271. package/lib/utils/offsetParent.js +1 -1
  272. package/lib/utils/optionValueCompare.js +1 -1
  273. package/lib/utils/position.js +1 -1
  274. package/lib/utils/prettyBytes.js +1 -1
  275. package/lib/utils/renderer-event.js +1 -1
  276. package/lib/utils/replaceText.js +1 -1
  277. package/lib/utils/resize-sensor.js +1 -1
  278. package/lib/utils/resolveVariable.js +1 -1
  279. package/lib/utils/resolveVariableAndFilter.js +1 -1
  280. package/lib/utils/scrollPosition.js +1 -1
  281. package/lib/utils/string2regExp.js +1 -1
  282. package/lib/utils/stripNumber.js +1 -1
  283. package/lib/utils/style.js +1 -1
  284. package/lib/utils/toNumber.js +1 -1
  285. package/lib/utils/tokenize.js +1 -1
  286. package/lib/utils/tpl-builtin.js +1 -1
  287. package/lib/utils/tpl-lodash.js +1 -1
  288. package/lib/utils/tpl.js +1 -1
  289. package/lib/utils/uncontrollable.js +1 -1
  290. package/lib/utils/validations.js +1 -1
  291. package/package.json +4 -3
  292. package/esm/_virtual/index2.js +0 -8
  293. package/esm/_virtual/react-is.development.js +0 -8
  294. package/esm/_virtual/react-is.production.min.js +0 -8
  295. package/esm/node_modules/object-assign/index.js +0 -104
  296. package/esm/node_modules/prop-types/checkPropTypes.js +0 -120
  297. package/esm/node_modules/prop-types/factoryWithTypeCheckers.js +0 -630
  298. package/esm/node_modules/prop-types/lib/has.js +0 -16
  299. package/esm/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +0 -195
  300. package/esm/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +0 -31
  301. package/esm/node_modules/prop-types/node_modules/react-is/index.js +0 -26
  302. package/esm/node_modules/warning/warning.js +0 -67
  303. package/lib/_virtual/index2.js +0 -12
  304. package/lib/_virtual/react-is.development.js +0 -12
  305. package/lib/_virtual/react-is.production.min.js +0 -12
  306. package/lib/node_modules/object-assign/index.js +0 -108
  307. package/lib/node_modules/prop-types/checkPropTypes.js +0 -124
  308. package/lib/node_modules/prop-types/factoryWithTypeCheckers.js +0 -634
  309. package/lib/node_modules/prop-types/lib/has.js +0 -20
  310. package/lib/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +0 -199
  311. package/lib/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +0 -35
  312. package/lib/node_modules/prop-types/node_modules/react-is/index.js +0 -30
  313. package/lib/node_modules/warning/warning.js +0 -71
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -8,6 +8,7 @@
8
8
  Object.defineProperty(exports, '__esModule', { value: true });
9
9
 
10
10
  var tslib = require('tslib');
11
+ var omit = require('lodash/omit');
11
12
  require('../utils/helper.js');
12
13
  var tpl = require('../utils/tpl.js');
13
14
  require('amis-formula');
@@ -16,6 +17,10 @@ var object = require('../utils/object.js');
16
17
  var dataMapping = require('../utils/dataMapping.js');
17
18
  require('../utils/filter.js');
18
19
 
20
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
21
+
22
+ var omit__default = /*#__PURE__*/_interopDefaultLegacy(omit);
23
+
19
24
  // 循环动作执行状态
20
25
  exports.LoopStatus = void 0;
21
26
  (function (LoopStatus) {
@@ -33,6 +38,69 @@ var registerAction = function (type, action) {
33
38
  var getActionByType = function (type) {
34
39
  return ActionTypeMap[type];
35
40
  };
41
+ // 根据动作类型获取属性排除列表
42
+ var getOmitActionProp = function (type) {
43
+ var omitList = [];
44
+ switch (type) {
45
+ case 'toast':
46
+ omitList = [
47
+ 'msgType',
48
+ 'msg',
49
+ 'position',
50
+ 'closeButton',
51
+ 'showIcon',
52
+ 'timeout',
53
+ 'title'
54
+ ];
55
+ break;
56
+ case 'alert':
57
+ omitList = ['msg'];
58
+ break;
59
+ case 'confirm':
60
+ omitList = ['msg', 'title'];
61
+ break;
62
+ case 'ajax':
63
+ omitList = ['api', 'messages', 'options'];
64
+ break;
65
+ case 'setValue':
66
+ omitList = ['value', 'index'];
67
+ break;
68
+ case 'copy':
69
+ omitList = ['content', 'copyFormat'];
70
+ break;
71
+ case 'email':
72
+ omitList = ['to', 'cc', 'bcc', 'subject', 'body'];
73
+ break;
74
+ case 'link':
75
+ omitList = ['link', 'blank', 'params'];
76
+ break;
77
+ case 'url':
78
+ omitList = ['url', 'blank', 'params'];
79
+ break;
80
+ case 'for':
81
+ omitList = ['loopName'];
82
+ break;
83
+ case 'goPage':
84
+ omitList = ['delta'];
85
+ break;
86
+ case 'custom':
87
+ omitList = ['script'];
88
+ break;
89
+ case 'broadcast':
90
+ omitList = ['eventName'];
91
+ break;
92
+ case 'dialog':
93
+ omitList = ['dialog'];
94
+ break;
95
+ case 'drawer':
96
+ omitList = ['drawer'];
97
+ break;
98
+ case 'reload':
99
+ omitList = ['resetPage'];
100
+ break;
101
+ }
102
+ return omitList;
103
+ };
36
104
  var runActions = function (actions, renderer, event) { return tslib.__awaiter(void 0, void 0, void 0, function () {
37
105
  var _i, actions_1, actionConfig, actionInstrance;
38
106
  return tslib.__generator(this, function (_a) {
@@ -79,14 +147,14 @@ var runActions = function (actions, renderer, event) { return tslib.__awaiter(vo
79
147
  }); };
80
148
  // 执行动作,与原有动作处理打通
81
149
  var runAction = function (actionInstrance, actionConfig, renderer, event) { return tslib.__awaiter(void 0, void 0, void 0, function () {
82
- var mergeData, expression, preventDefault, stopPropagation, args;
83
- var _a;
84
- return tslib.__generator(this, function (_b) {
85
- switch (_b.label) {
150
+ var mergeData, expression, preventDefault, stopPropagation, args, afterMappingData, actionData, data;
151
+ var _a, _b, _c;
152
+ return tslib.__generator(this, function (_d) {
153
+ switch (_d.label) {
86
154
  case 0:
87
- mergeData = object.createObject(event.data, renderer.props.data.__super
88
- ? object.createObject(renderer.props.data.__super, object.createObject(renderer.props.data, { event: event }))
89
- : object.createObject(renderer.props.data, { event: event }));
155
+ mergeData = object.createObject(object.createObject(renderer.props.data.__super
156
+ ? object.createObject(renderer.props.data.__super, { event: event })
157
+ : { event: event }, renderer.props.data), event.data);
90
158
  expression = (_a = actionConfig.expression) !== null && _a !== void 0 ? _a : actionConfig.execOn;
91
159
  if (expression && !tpl.evalExpression(expression, mergeData)) {
92
160
  return [2 /*return*/];
@@ -95,14 +163,25 @@ var runAction = function (actionInstrance, actionConfig, renderer, event) { retu
95
163
  tpl.evalExpression(String(actionConfig.preventDefault), mergeData);
96
164
  stopPropagation = actionConfig.stopPropagation &&
97
165
  tpl.evalExpression(String(actionConfig.stopPropagation), mergeData);
98
- args = actionConfig.args !== undefined
99
- ? dataMapping.dataMapping(actionConfig.args, mergeData, function (key) {
100
- return ['adaptor', 'responseAdaptor', 'requestAdaptor'].includes(key);
101
- })
102
- : event.data;
103
- return [4 /*yield*/, actionInstrance.run(tslib.__assign(tslib.__assign({}, actionConfig), { args: args }), renderer, event, mergeData)];
166
+ args = dataMapping.dataMapping(actionConfig.args, mergeData, function (key) {
167
+ return ['adaptor', 'responseAdaptor', 'requestAdaptor'].includes(key);
168
+ });
169
+ afterMappingData = dataMapping.dataMapping(actionConfig.data, mergeData);
170
+ actionData = args && Object.keys(args).length
171
+ ? omit__default["default"](tslib.__assign(tslib.__assign({}, args), (afterMappingData !== null && afterMappingData !== void 0 ? afterMappingData : {})), getOmitActionProp(actionConfig.actionType))
172
+ : afterMappingData;
173
+ data = args && !Object.keys(args).length && actionConfig.data === undefined // 兼容历史
174
+ ? {}
175
+ : actionData !== undefined
176
+ ? actionData
177
+ : event.data;
178
+ (_b = console.group) === null || _b === void 0 ? void 0 : _b.call(console, "run action ".concat(actionConfig.actionType));
179
+ console.debug("[".concat(actionConfig.actionType, "] action args, data"), args, data);
180
+ return [4 /*yield*/, actionInstrance.run(tslib.__assign(tslib.__assign({}, actionConfig), { args: args, data: data }), renderer, event, mergeData)];
104
181
  case 1:
105
- _b.sent();
182
+ _d.sent();
183
+ console.debug("[".concat(actionConfig.actionType, "] action end event"), event);
184
+ (_c = console.groupEnd) === null || _c === void 0 ? void 0 : _c.call(console);
106
185
  // 阻止原有动作执行
107
186
  preventDefault && event.preventDefault();
108
187
  // 阻止后续动作执行
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -8,17 +8,12 @@
8
8
  Object.defineProperty(exports, '__esModule', { value: true });
9
9
 
10
10
  var tslib = require('tslib');
11
- var omit = require('lodash/omit');
12
11
  var api = require('../utils/api.js');
13
12
  var errors = require('../utils/errors.js');
14
13
  var helper = require('../utils/helper.js');
15
14
  var Action = require('./Action.js');
16
15
  var object = require('../utils/object.js');
17
16
 
18
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
19
-
20
- var omit__default = /*#__PURE__*/_interopDefaultLegacy(omit);
21
-
22
17
  /**
23
18
  * 发送请求动作
24
19
  *
@@ -51,7 +46,7 @@ var AjaxAction = /** @class */ (function () {
51
46
  _u.label = 1;
52
47
  case 1:
53
48
  _u.trys.push([1, 3, , 4]);
54
- return [4 /*yield*/, env.fetcher((_c = action.args) === null || _c === void 0 ? void 0 : _c.api, omit__default["default"]((_d = action.args) !== null && _d !== void 0 ? _d : {}, ['api', 'options', 'messages']), (_f = (_e = action.args) === null || _e === void 0 ? void 0 : _e.options) !== null && _f !== void 0 ? _f : {})];
49
+ return [4 /*yield*/, env.fetcher((_c = action.args) === null || _c === void 0 ? void 0 : _c.api, (_d = action.data) !== null && _d !== void 0 ? _d : {}, (_f = (_e = action.args) === null || _e === void 0 ? void 0 : _e.options) !== null && _f !== void 0 ? _f : {})];
55
50
  case 2:
56
51
  result = _u.sent();
57
52
  responseData = !helper.isEmpty(result.data) || result.ok
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -2,7 +2,10 @@ import { RendererEvent } from '../utils/renderer-event';
2
2
  import { RendererAction, ListenerAction, ListenerContext } from './Action';
3
3
  export interface IBroadcastAction extends ListenerAction {
4
4
  actionType: 'broadcast';
5
- eventName: string;
5
+ args: {
6
+ eventName: string;
7
+ };
8
+ eventName?: string;
6
9
  }
7
10
  /**
8
11
  * broadcast
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -24,21 +24,21 @@ var BroadcastAction = /** @class */ (function () {
24
24
  function BroadcastAction() {
25
25
  }
26
26
  BroadcastAction.prototype.run = function (action, renderer, event) {
27
- var _a;
27
+ var _a, _b, _c;
28
28
  return tslib.__awaiter(this, void 0, void 0, function () {
29
- return tslib.__generator(this, function (_b) {
30
- switch (_b.label) {
29
+ return tslib.__generator(this, function (_d) {
30
+ switch (_d.label) {
31
31
  case 0:
32
- if (!action.eventName) {
32
+ if (!((_a = action.args) === null || _a === void 0 ? void 0 : _a.eventName) && !action.eventName) {
33
33
  console.error('eventName 未定义,请定义事件名称');
34
34
  return [2 /*return*/];
35
35
  }
36
36
  // 作为一个新的事件,需要把广播动作的args参数追加到事件数据中
37
- event.setData(object.createObject(event.data, (_a = action.args) !== null && _a !== void 0 ? _a : {}));
38
- return [4 /*yield*/, rendererEvent.dispatchEvent(action.eventName, renderer, event.context.scoped, action.args, event)];
37
+ event.setData(object.createObject(event.data, (_b = action.data) !== null && _b !== void 0 ? _b : {}));
38
+ return [4 /*yield*/, rendererEvent.dispatchEvent(((_c = action.args) === null || _c === void 0 ? void 0 : _c.eventName) || action.eventName, renderer, event.context.scoped, action.data, event)];
39
39
  case 1:
40
40
  // 直接触发对应的动作
41
- return [2 /*return*/, _b.sent()];
41
+ return [2 /*return*/, _d.sent()];
42
42
  }
43
43
  });
44
44
  });
@@ -1,7 +1,7 @@
1
1
  import { RendererEvent } from '../utils/renderer-event';
2
2
  import { RendererAction, ListenerAction, ListenerContext } from './Action';
3
3
  export interface ICmptAction extends ListenerAction {
4
- actionType: 'setValue' | 'show' | 'hidden' | 'enabled' | 'disabled' | 'reload';
4
+ actionType: 'setValue' | 'static' | 'nonstatic' | 'show' | 'hidden' | 'enabled' | 'disabled' | 'reload';
5
5
  args: {
6
6
  value?: string | {
7
7
  [key: string]: string;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -33,6 +33,9 @@ var CmptAction = /** @class */ (function () {
33
33
  if (['show', 'hidden'].includes(action.actionType)) {
34
34
  return [2 /*return*/, renderer.props.topStore.setVisible(action.componentId, action.actionType === 'show')];
35
35
  }
36
+ else if (['static', 'nonstatic'].includes(action.actionType)) {
37
+ return [2 /*return*/, renderer.props.topStore.setStatic(action.componentId, action.actionType === 'static')];
38
+ }
36
39
  else if (['enabled', 'disabled'].includes(action.actionType)) {
37
40
  return [2 /*return*/, renderer.props.topStore.setDisable(action.componentId, action.actionType === 'disabled')];
38
41
  }
@@ -47,7 +50,7 @@ var CmptAction = /** @class */ (function () {
47
50
  }
48
51
  // 刷新
49
52
  if (action.actionType === 'reload') {
50
- return [2 /*return*/, (_g = component === null || component === void 0 ? void 0 : component.reload) === null || _g === void 0 ? void 0 : _g.call(component, undefined, action.args, undefined, undefined, dataMergeMode === 'override')];
53
+ return [2 /*return*/, (_g = component === null || component === void 0 ? void 0 : component.reload) === null || _g === void 0 ? void 0 : _g.call(component, undefined, action.data, undefined, undefined, dataMergeMode === 'override', action.args)];
51
54
  }
52
55
  // 执行组件动作
53
56
  return [2 /*return*/, (_h = component === null || component === void 0 ? void 0 : component.doAction) === null || _h === void 0 ? void 0 : _h.call(component, action, action.args)];
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,9 +1,13 @@
1
1
  import { ActionObject } from '../types';
2
2
  import { RendererEvent } from '../utils/renderer-event';
3
3
  import { RendererAction, ListenerAction, ListenerContext } from './Action';
4
+ declare type ScriptType = string | ((renderer: any, doAction: (action: ActionObject, data: Record<string, any>) => void, event: RendererEvent<any>, action: ListenerAction) => void);
4
5
  export interface ICustomAction extends ListenerAction {
5
6
  actionType: 'custom';
6
- script: string | ((renderer: any, doAction: (action: ActionObject, data: Record<string, any>) => void, event: RendererEvent<any>, action: ListenerAction) => void);
7
+ args: {
8
+ script: ScriptType;
9
+ };
10
+ script?: ScriptType;
7
11
  }
8
12
  /**
9
13
  * 自定义动作,JS脚本
@@ -15,3 +19,4 @@ export interface ICustomAction extends ListenerAction {
15
19
  export declare class CustomAction implements RendererAction {
16
20
  run(action: ICustomAction, renderer: ListenerContext, event: RendererEvent<any>): Promise<void>;
17
21
  }
22
+ export {};
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -27,12 +27,11 @@ require('../utils/filter.js');
27
27
  require('lodash/isObject');
28
28
  require('lodash/isString');
29
29
  require('lodash/isBoolean');
30
- require('../utils/image.js');
31
30
  require('lodash');
31
+ require('../utils/image.js');
32
32
  var Action = require('./Action.js');
33
33
  require('../utils/resize-sensor.js');
34
34
  require('../node_modules/dom-helpers/esm/addEventListener.js');
35
- require('../node_modules/warning/warning.js');
36
35
  require('../utils/SimpleMap.js');
37
36
  require('lodash/mapValues');
38
37
  require('lodash/camelCase');
@@ -52,18 +51,19 @@ var CustomAction = /** @class */ (function () {
52
51
  function CustomAction() {
53
52
  }
54
53
  CustomAction.prototype.run = function (action, renderer, event) {
54
+ var _a, _b;
55
55
  return tslib.__awaiter(this, void 0, void 0, function () {
56
56
  var scriptFunc;
57
- return tslib.__generator(this, function (_a) {
58
- switch (_a.label) {
57
+ return tslib.__generator(this, function (_c) {
58
+ switch (_c.label) {
59
59
  case 0:
60
- scriptFunc = action.script;
60
+ scriptFunc = (_b = (_a = action.args) === null || _a === void 0 ? void 0 : _a.script) !== null && _b !== void 0 ? _b : action.script;
61
61
  if (typeof scriptFunc === 'string') {
62
62
  scriptFunc = helper.promisify(new Function('context', 'doAction', 'event', scriptFunc));
63
63
  }
64
64
  return [4 /*yield*/, (scriptFunc === null || scriptFunc === void 0 ? void 0 : scriptFunc.call(null, renderer, function (action) { return Action.runActions(action, renderer, event); }, event, action))];
65
65
  case 1:
66
- _a.sent();
66
+ _c.sent();
67
67
  return [2 /*return*/];
68
68
  }
69
69
  });
@@ -18,7 +18,10 @@ export interface IConfirmAction extends ListenerAction {
18
18
  }
19
19
  export interface IDialogAction extends ListenerAction {
20
20
  actionType: 'dialog';
21
- dialog: SchemaNode;
21
+ args: {
22
+ dialog: SchemaNode;
23
+ };
24
+ dialog?: SchemaNode;
22
25
  }
23
26
  /**
24
27
  * 打开弹窗动作
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -21,10 +21,14 @@ var DialogAction = /** @class */ (function () {
21
21
  function DialogAction() {
22
22
  }
23
23
  DialogAction.prototype.run = function (action, renderer, event) {
24
- var _a, _b;
24
+ var _a, _b, _c;
25
25
  return tslib.__awaiter(this, void 0, void 0, function () {
26
- return tslib.__generator(this, function (_c) {
27
- (_b = (_a = renderer.props).onAction) === null || _b === void 0 ? void 0 : _b.call(_a, event, tslib.__assign(tslib.__assign({}, action), { reload: 'none' }), action.args);
26
+ return tslib.__generator(this, function (_d) {
27
+ (_b = (_a = renderer.props).onAction) === null || _b === void 0 ? void 0 : _b.call(_a, event, {
28
+ actionType: 'dialog',
29
+ dialog: ((_c = action.args) === null || _c === void 0 ? void 0 : _c.dialog) || action.dialog,
30
+ reload: 'none'
31
+ }, action.data);
28
32
  return [2 /*return*/];
29
33
  });
30
34
  });
@@ -51,7 +55,7 @@ var CloseDialogAction = /** @class */ (function () {
51
55
  }
52
56
  else {
53
57
  // 关闭当前弹窗
54
- (_b = (_a = renderer.props).onAction) === null || _b === void 0 ? void 0 : _b.call(_a, event, tslib.__assign(tslib.__assign({}, action), { actionType: 'close' }), action.args);
58
+ (_b = (_a = renderer.props).onAction) === null || _b === void 0 ? void 0 : _b.call(_a, event, tslib.__assign(tslib.__assign({}, action), { actionType: 'close' }), action.data);
55
59
  }
56
60
  return [2 /*return*/];
57
61
  });
@@ -3,7 +3,10 @@ import { RendererEvent } from '../utils/renderer-event';
3
3
  import { RendererAction, ListenerAction, ListenerContext } from './Action';
4
4
  export interface IDrawerAction extends ListenerAction {
5
5
  actionType: 'drawer';
6
- drawer: SchemaNode;
6
+ args: {
7
+ drawer: SchemaNode;
8
+ };
9
+ drawer?: SchemaNode;
7
10
  }
8
11
  /**
9
12
  * 打开抽屉动作
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -21,10 +21,14 @@ var DrawerAction = /** @class */ (function () {
21
21
  function DrawerAction() {
22
22
  }
23
23
  DrawerAction.prototype.run = function (action, renderer, event) {
24
- var _a, _b;
24
+ var _a, _b, _c;
25
25
  return tslib.__awaiter(this, void 0, void 0, function () {
26
- return tslib.__generator(this, function (_c) {
27
- (_b = (_a = renderer.props).onAction) === null || _b === void 0 ? void 0 : _b.call(_a, event, action, action.args);
26
+ return tslib.__generator(this, function (_d) {
27
+ (_b = (_a = renderer.props).onAction) === null || _b === void 0 ? void 0 : _b.call(_a, event, {
28
+ actionType: 'drawer',
29
+ drawer: ((_c = action.args) === null || _c === void 0 ? void 0 : _c.drawer) || action.drawer,
30
+ reload: 'none'
31
+ }, action.data);
28
32
  return [2 /*return*/];
29
33
  });
30
34
  });
@@ -51,7 +55,7 @@ var CloseDrawerAction = /** @class */ (function () {
51
55
  }
52
56
  else {
53
57
  // 关闭当前抽屉
54
- (_b = (_a = renderer.props).onAction) === null || _b === void 0 ? void 0 : _b.call(_a, event, tslib.__assign(tslib.__assign({}, action), { actionType: 'close' }), action.args);
58
+ (_b = (_a = renderer.props).onAction) === null || _b === void 0 ? void 0 : _b.call(_a, event, tslib.__assign(tslib.__assign({}, action), { actionType: 'close' }), action.data);
55
59
  }
56
60
  return [2 /*return*/];
57
61
  });
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -9,13 +9,8 @@ Object.defineProperty(exports, '__esModule', { value: true });
9
9
 
10
10
  var tslib = require('tslib');
11
11
  var api = require('../utils/api.js');
12
- var omit = require('lodash/omit');
13
12
  var Action = require('./Action.js');
14
13
 
15
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
16
-
17
- var omit__default = /*#__PURE__*/_interopDefaultLegacy(omit);
18
-
19
14
  /**
20
15
  * 打开页面动作
21
16
  *
@@ -27,20 +22,20 @@ var LinkAction = /** @class */ (function () {
27
22
  function LinkAction() {
28
23
  }
29
24
  LinkAction.prototype.run = function (action, renderer, event) {
30
- var _a, _b, _c, _d, _e, _f;
25
+ var _a, _b, _c, _d, _e, _f, _g;
31
26
  return tslib.__awaiter(this, void 0, void 0, function () {
32
27
  var urlObj;
33
- return tslib.__generator(this, function (_g) {
28
+ return tslib.__generator(this, function (_h) {
34
29
  if (!((_a = renderer.props.env) === null || _a === void 0 ? void 0 : _a.jumpTo)) {
35
30
  throw new Error('env.jumpTo is required!');
36
31
  }
37
32
  urlObj = api.buildApi({
38
33
  url: (((_b = action.args) === null || _b === void 0 ? void 0 : _b.url) || ((_c = action.args) === null || _c === void 0 ? void 0 : _c.link)),
39
34
  method: 'get'
40
- }, tslib.__assign(tslib.__assign({}, ((_e = (_d = action.args) === null || _d === void 0 ? void 0 : _d.params) !== null && _e !== void 0 ? _e : {})), omit__default["default"]((_f = action.args) !== null && _f !== void 0 ? _f : {}, ['params', 'blank', 'url', 'link'])), {
35
+ }, tslib.__assign(tslib.__assign({}, ((_e = (_d = action.args) === null || _d === void 0 ? void 0 : _d.params) !== null && _e !== void 0 ? _e : {})), ((_f = action.data) !== null && _f !== void 0 ? _f : {})), {
41
36
  autoAppend: true
42
37
  });
43
- renderer.props.env.jumpTo(urlObj.url, tslib.__assign({ actionType: action.actionType, type: 'button' }, action.args), action.args);
38
+ renderer.props.env.jumpTo(urlObj.url, tslib.__assign({ actionType: action.actionType, type: 'button' }, action.args), (_g = action.data) !== null && _g !== void 0 ? _g : {});
44
39
  return [2 /*return*/];
45
40
  });
46
41
  });
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -29,8 +29,8 @@ require('../utils/filter.js');
29
29
  require('lodash/isObject');
30
30
  require('lodash/isString');
31
31
  require('lodash/isBoolean');
32
- require('../utils/image.js');
33
32
  require('lodash');
33
+ require('../utils/image.js');
34
34
  require('../actions/Action.js');
35
35
  var resizeSensor = require('../utils/resize-sensor.js');
36
36
  var RootClose = require('../utils/RootClose.js');
@@ -147,6 +147,7 @@ var Position = /** @class */ (function (_super) {
147
147
  // and `props.style`.
148
148
  positionLeft: positionLeft, positionTop: positionTop, className: cx__default["default"](className, child.props.className), style: tslib.__assign(tslib.__assign({}, child.props.style), { left: positionLeft, top: positionTop }) }));
149
149
  };
150
+ // setState: (state: any) => void;
150
151
  Position.defaultProps = {
151
152
  containerPadding: 0,
152
153
  placement: 'right',
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -28,12 +28,11 @@ require('../utils/filter.js');
28
28
  require('lodash/isObject');
29
29
  require('lodash/isString');
30
30
  require('lodash/isBoolean');
31
- require('../utils/image.js');
32
31
  require('lodash');
32
+ require('../utils/image.js');
33
33
  require('../actions/Action.js');
34
34
  require('../utils/resize-sensor.js');
35
35
  require('../node_modules/dom-helpers/esm/addEventListener.js');
36
- require('../node_modules/warning/warning.js');
37
36
  require('../utils/SimpleMap.js');
38
37
  require('lodash/mapValues');
39
38
  require('lodash/camelCase');
package/lib/env.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
package/lib/factory.d.ts CHANGED
@@ -3,7 +3,7 @@ import { IRendererStore, IIRendererStore } from './store/index';
3
3
  import { fetcherResult, SchemaNode, Schema, PlainObject } from './types';
4
4
  import { ThemeProps } from './theme';
5
5
  import { LocaleProps } from './locale';
6
- import { RendererEnv } from './env';
6
+ import type { RendererEnv } from './env';
7
7
  import { OnEventProps } from './utils/renderer-event';
8
8
  export interface TestFunc {
9
9
  (path: string, schema?: Schema, resolveRenderer?: (path: string, schema?: Schema, props?: any) => null | RendererConfig): boolean;
package/lib/factory.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.2-beta.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -262,7 +262,7 @@ function resolveRenderer(path, schema) {
262
262
  else if (cache[path]) {
263
263
  return cache[path];
264
264
  }
265
- else if (path && path.length > 1024) {
265
+ else if (path && path.length > 3072) {
266
266
  throw new Error('Path太长是不是死循环了?');
267
267
  }
268
268
  var renderer = null;