amis-core 6.3.0 → 6.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 (282) hide show
  1. package/esm/Root.js +1 -1
  2. package/esm/RootRenderer.js +1 -1
  3. package/esm/SchemaRenderer.js +3 -2
  4. package/esm/Scoped.d.ts +1 -0
  5. package/esm/Scoped.js +28 -14
  6. package/esm/StatusScoped.js +1 -1
  7. package/esm/WithRootStore.js +1 -1
  8. package/esm/WithStore.js +1 -1
  9. package/esm/actions/Action.js +4 -2
  10. package/esm/actions/AjaxAction.js +29 -19
  11. package/esm/actions/BreakAction.js +1 -1
  12. package/esm/actions/BroadcastAction.js +1 -1
  13. package/esm/actions/CmptAction.js +2 -2
  14. package/esm/actions/ContinueAction.js +1 -1
  15. package/esm/actions/CopyAction.js +1 -1
  16. package/esm/actions/CustomAction.js +1 -1
  17. package/esm/actions/DialogAction.js +30 -14
  18. package/esm/actions/DrawerAction.js +15 -7
  19. package/esm/actions/EmailAction.js +1 -1
  20. package/esm/actions/EventAction.js +1 -1
  21. package/esm/actions/LinkAction.js +1 -1
  22. package/esm/actions/LoopAction.js +1 -1
  23. package/esm/actions/PageAction.js +1 -1
  24. package/esm/actions/ParallelAction.js +1 -1
  25. package/esm/actions/PrintAction.d.ts +2 -2
  26. package/esm/actions/PrintAction.js +6 -6
  27. package/esm/actions/StatusAction.js +1 -1
  28. package/esm/actions/SwitchAction.js +1 -1
  29. package/esm/actions/ToastAction.js +1 -1
  30. package/esm/actions/WaitAction.js +1 -1
  31. package/esm/components/CustomStyle.js +1 -4
  32. package/esm/components/ErrorBoundary.js +1 -1
  33. package/esm/components/LazyComponent.js +1 -1
  34. package/esm/components/Overlay.js +1 -1
  35. package/esm/components/PopOver.js +1 -1
  36. package/esm/env.js +1 -1
  37. package/esm/envOverwrite.js +1 -1
  38. package/esm/factory.d.ts +1 -0
  39. package/esm/factory.js +1 -1
  40. package/esm/index.js +2 -2
  41. package/esm/locale.js +1 -1
  42. package/esm/polyfills.js +1 -1
  43. package/esm/renderers/Form.d.ts +3 -2
  44. package/esm/renderers/Form.js +55 -44
  45. package/esm/renderers/Item.js +1 -1
  46. package/esm/renderers/Options.js +1 -1
  47. package/esm/renderers/Placeholder.js +1 -1
  48. package/esm/renderers/builtin.js +1 -1
  49. package/esm/renderers/register.js +1 -1
  50. package/esm/renderers/wrapControl.js +31 -27
  51. package/esm/store/app.js +1 -1
  52. package/esm/store/combo.js +1 -1
  53. package/esm/store/crud.js +12 -6
  54. package/esm/store/form.js +1 -1
  55. package/esm/store/formItem.js +1 -1
  56. package/esm/store/iRenderer.js +6 -3
  57. package/esm/store/index.js +1 -1
  58. package/esm/store/list.d.ts +13 -0
  59. package/esm/store/list.js +14 -1
  60. package/esm/store/manager.js +1 -1
  61. package/esm/store/modal.js +1 -1
  62. package/esm/store/node.js +1 -1
  63. package/esm/store/pagination.js +1 -1
  64. package/esm/store/root.js +1 -1
  65. package/esm/store/service.js +1 -1
  66. package/esm/store/status.js +1 -1
  67. package/esm/store/table.d.ts +1 -0
  68. package/esm/store/table.js +5 -1
  69. package/esm/store/table2.js +1 -1
  70. package/esm/theme.js +1 -1
  71. package/esm/types.d.ts +1 -1
  72. package/esm/utils/Animation.js +1 -1
  73. package/esm/utils/ColorScale.js +1 -1
  74. package/esm/utils/DataSchema.js +1 -1
  75. package/esm/utils/DataScope.js +1 -1
  76. package/esm/utils/RootClose.js +1 -1
  77. package/esm/utils/SimpleMap.js +1 -1
  78. package/esm/utils/api.js +1 -1
  79. package/esm/utils/arraySlice.js +1 -1
  80. package/esm/utils/attachmentAdpator.js +1 -1
  81. package/esm/utils/autobind.js +1 -1
  82. package/esm/utils/browser.js +1 -1
  83. package/esm/utils/columnsSplit.js +1 -1
  84. package/esm/utils/concatData.js +1 -1
  85. package/esm/utils/dataMapping.js +1 -1
  86. package/esm/utils/date.js +1 -1
  87. package/esm/utils/debug.js +1 -1
  88. package/esm/utils/decodeEntity.js +1 -1
  89. package/esm/utils/dom.js +3 -3
  90. package/esm/utils/errors.js +1 -1
  91. package/esm/utils/escapeHtml.js +1 -1
  92. package/esm/utils/filter-schema.js +1 -1
  93. package/esm/utils/filter.js +1 -1
  94. package/esm/utils/formatDuration.js +1 -1
  95. package/esm/utils/formula.js +1 -1
  96. package/esm/utils/getVariable.js +1 -1
  97. package/esm/utils/grammar.js +1 -1
  98. package/esm/utils/handleAction.js +1 -1
  99. package/esm/utils/helper.js +3 -3
  100. package/esm/utils/highlight.js +1 -1
  101. package/esm/utils/icon.js +1 -1
  102. package/esm/utils/image.js +1 -1
  103. package/esm/utils/isPureVariable.js +1 -1
  104. package/esm/utils/json-schema-2-amis-schema.js +1 -1
  105. package/esm/utils/keyToPath.js +1 -1
  106. package/esm/utils/labelToString.js +1 -1
  107. package/esm/utils/makeSorter.js +1 -1
  108. package/esm/utils/math.js +1 -1
  109. package/esm/utils/memoryParse.js +1 -1
  110. package/esm/utils/normalizeLink.js +1 -1
  111. package/esm/utils/normalizeOptions.js +1 -1
  112. package/esm/utils/object.js +1 -1
  113. package/esm/utils/offset.js +1 -1
  114. package/esm/utils/offsetParent.js +1 -1
  115. package/esm/utils/optionValueCompare.js +1 -1
  116. package/esm/utils/position.js +1 -1
  117. package/esm/utils/prettyBytes.js +1 -1
  118. package/esm/utils/printElement.js +1 -1
  119. package/esm/utils/renderer-event.d.ts +2 -0
  120. package/esm/utils/renderer-event.js +13 -1
  121. package/esm/utils/replaceText.js +1 -1
  122. package/esm/utils/resize-sensor.js +1 -1
  123. package/esm/utils/resolveCondition.js +1 -1
  124. package/esm/utils/resolveVariable.js +1 -1
  125. package/esm/utils/resolveVariableAndFilter.js +1 -1
  126. package/esm/utils/resolveVariableAndFilterForAsync.js +1 -1
  127. package/esm/utils/scrollPosition.js +1 -1
  128. package/esm/utils/string2regExp.js +1 -1
  129. package/esm/utils/stripNumber.js +1 -1
  130. package/esm/utils/style-helper.js +1 -1
  131. package/esm/utils/style.js +1 -1
  132. package/esm/utils/toNumber.js +1 -1
  133. package/esm/utils/tokenize.js +1 -1
  134. package/esm/utils/tpl-builtin.js +1 -1
  135. package/esm/utils/tpl-lodash.js +1 -1
  136. package/esm/utils/tpl.js +4 -4
  137. package/esm/utils/uncontrollable.js +1 -1
  138. package/esm/utils/validateId.js +1 -1
  139. package/esm/utils/validations.js +1 -1
  140. package/lib/Root.js +1 -1
  141. package/lib/RootRenderer.d.ts +1 -1
  142. package/lib/RootRenderer.js +1 -1
  143. package/lib/SchemaRenderer.js +3 -2
  144. package/lib/Scoped.d.ts +1 -0
  145. package/lib/Scoped.js +28 -14
  146. package/lib/StatusScoped.js +1 -1
  147. package/lib/WithRootStore.js +1 -1
  148. package/lib/WithStore.js +1 -1
  149. package/lib/actions/Action.js +4 -2
  150. package/lib/actions/AjaxAction.js +29 -19
  151. package/lib/actions/BreakAction.js +1 -1
  152. package/lib/actions/BroadcastAction.js +1 -1
  153. package/lib/actions/CmptAction.js +2 -2
  154. package/lib/actions/ContinueAction.js +1 -1
  155. package/lib/actions/CopyAction.js +1 -1
  156. package/lib/actions/CustomAction.js +1 -1
  157. package/lib/actions/DialogAction.js +30 -14
  158. package/lib/actions/DrawerAction.js +15 -7
  159. package/lib/actions/EmailAction.js +1 -1
  160. package/lib/actions/EventAction.js +1 -1
  161. package/lib/actions/LinkAction.js +1 -1
  162. package/lib/actions/LoopAction.js +1 -1
  163. package/lib/actions/PageAction.js +1 -1
  164. package/lib/actions/ParallelAction.js +1 -1
  165. package/lib/actions/PrintAction.d.ts +2 -2
  166. package/lib/actions/PrintAction.js +6 -6
  167. package/lib/actions/StatusAction.js +1 -1
  168. package/lib/actions/SwitchAction.js +1 -1
  169. package/lib/actions/ToastAction.js +1 -1
  170. package/lib/actions/WaitAction.js +1 -1
  171. package/lib/components/CustomStyle.js +1 -4
  172. package/lib/components/ErrorBoundary.js +1 -1
  173. package/lib/components/LazyComponent.js +1 -1
  174. package/lib/components/Overlay.js +1 -1
  175. package/lib/components/PopOver.js +1 -1
  176. package/lib/env.js +1 -1
  177. package/lib/envOverwrite.js +1 -1
  178. package/lib/factory.d.ts +1 -0
  179. package/lib/factory.js +1 -1
  180. package/lib/index.js +2 -2
  181. package/lib/locale.js +1 -1
  182. package/lib/polyfills.js +1 -1
  183. package/lib/renderers/Form.d.ts +3 -2
  184. package/lib/renderers/Form.js +55 -44
  185. package/lib/renderers/Item.js +1 -1
  186. package/lib/renderers/Options.js +1 -1
  187. package/lib/renderers/Placeholder.js +1 -1
  188. package/lib/renderers/builtin.js +1 -1
  189. package/lib/renderers/register.js +1 -1
  190. package/lib/renderers/wrapControl.js +31 -27
  191. package/lib/store/app.js +1 -1
  192. package/lib/store/combo.d.ts +24 -25
  193. package/lib/store/combo.js +1 -1
  194. package/lib/store/crud.js +12 -6
  195. package/lib/store/form.d.ts +10 -11
  196. package/lib/store/form.js +1 -1
  197. package/lib/store/formItem.js +1 -1
  198. package/lib/store/iRenderer.js +5 -2
  199. package/lib/store/index.js +1 -1
  200. package/lib/store/list.d.ts +13 -0
  201. package/lib/store/list.js +14 -1
  202. package/lib/store/manager.js +1 -1
  203. package/lib/store/modal.js +1 -1
  204. package/lib/store/node.js +1 -1
  205. package/lib/store/pagination.js +1 -1
  206. package/lib/store/root.js +1 -1
  207. package/lib/store/service.js +1 -1
  208. package/lib/store/status.js +1 -1
  209. package/lib/store/table.d.ts +21 -21
  210. package/lib/store/table.js +5 -1
  211. package/lib/store/table2.js +1 -1
  212. package/lib/theme.js +1 -1
  213. package/lib/types.d.ts +1 -1
  214. package/lib/utils/Animation.js +1 -1
  215. package/lib/utils/ColorScale.js +1 -1
  216. package/lib/utils/DataSchema.js +1 -1
  217. package/lib/utils/DataScope.js +1 -1
  218. package/lib/utils/RootClose.js +1 -1
  219. package/lib/utils/SimpleMap.js +1 -1
  220. package/lib/utils/api.js +1 -1
  221. package/lib/utils/arraySlice.js +1 -1
  222. package/lib/utils/attachmentAdpator.js +1 -1
  223. package/lib/utils/autobind.js +1 -1
  224. package/lib/utils/browser.js +1 -1
  225. package/lib/utils/columnsSplit.js +1 -1
  226. package/lib/utils/concatData.js +1 -1
  227. package/lib/utils/dataMapping.js +1 -1
  228. package/lib/utils/date.js +1 -1
  229. package/lib/utils/debug.js +1 -1
  230. package/lib/utils/decodeEntity.js +1 -1
  231. package/lib/utils/dom.js +3 -3
  232. package/lib/utils/errors.js +1 -1
  233. package/lib/utils/escapeHtml.js +1 -1
  234. package/lib/utils/filter-schema.js +1 -1
  235. package/lib/utils/filter.js +1 -1
  236. package/lib/utils/formatDuration.js +1 -1
  237. package/lib/utils/formula.js +1 -1
  238. package/lib/utils/getVariable.js +1 -1
  239. package/lib/utils/grammar.js +1 -1
  240. package/lib/utils/handleAction.js +1 -1
  241. package/lib/utils/helper.js +3 -4
  242. package/lib/utils/highlight.js +1 -1
  243. package/lib/utils/icon.js +1 -1
  244. package/lib/utils/image.js +1 -1
  245. package/lib/utils/isPureVariable.js +1 -1
  246. package/lib/utils/json-schema-2-amis-schema.js +1 -1
  247. package/lib/utils/keyToPath.js +1 -1
  248. package/lib/utils/labelToString.js +1 -1
  249. package/lib/utils/makeSorter.js +1 -1
  250. package/lib/utils/math.js +1 -1
  251. package/lib/utils/memoryParse.js +1 -1
  252. package/lib/utils/normalizeLink.js +1 -1
  253. package/lib/utils/normalizeOptions.js +1 -1
  254. package/lib/utils/object.js +1 -1
  255. package/lib/utils/offset.js +1 -1
  256. package/lib/utils/offsetParent.js +1 -1
  257. package/lib/utils/optionValueCompare.js +1 -1
  258. package/lib/utils/position.js +1 -1
  259. package/lib/utils/prettyBytes.js +1 -1
  260. package/lib/utils/printElement.js +1 -1
  261. package/lib/utils/renderer-event.d.ts +2 -0
  262. package/lib/utils/renderer-event.js +13 -1
  263. package/lib/utils/replaceText.js +1 -1
  264. package/lib/utils/resize-sensor.js +1 -1
  265. package/lib/utils/resolveCondition.js +1 -1
  266. package/lib/utils/resolveVariable.js +1 -1
  267. package/lib/utils/resolveVariableAndFilter.js +1 -1
  268. package/lib/utils/resolveVariableAndFilterForAsync.js +1 -1
  269. package/lib/utils/scrollPosition.js +1 -1
  270. package/lib/utils/string2regExp.js +1 -1
  271. package/lib/utils/stripNumber.js +1 -1
  272. package/lib/utils/style-helper.js +1 -1
  273. package/lib/utils/style.js +1 -1
  274. package/lib/utils/toNumber.js +1 -1
  275. package/lib/utils/tokenize.js +1 -1
  276. package/lib/utils/tpl-builtin.js +1 -1
  277. package/lib/utils/tpl-lodash.js +1 -1
  278. package/lib/utils/tpl.js +4 -4
  279. package/lib/utils/uncontrollable.js +1 -1
  280. package/lib/utils/validateId.js +1 -1
  281. package/lib/utils/validations.js +1 -1
  282. package/package.json +2 -2
package/esm/Root.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -25,6 +25,7 @@ import 'lodash/isPlainObject';
25
25
  import { resolveVariableAndFilter } from './utils/resolveVariableAndFilter.js';
26
26
  import './utils/filter.js';
27
27
  import { buildStyle } from './utils/style.js';
28
+ import { isExpression } from './utils/formula.js';
28
29
  import { filter, evalExpression } from './utils/tpl.js';
29
30
 
30
31
  var RENDERER_TRANSMISSION_OMIT_PROPS = [
@@ -331,7 +332,7 @@ var SchemaRenderer = /** @class */ (function (_super) {
331
332
  try {
332
333
  for (var _k = __values(Object.keys(schema)), _l = _k.next(); !_l.done; _l = _k.next()) {
333
334
  var key = _l.value;
334
- if (typeof props[key] === 'string') {
335
+ if (typeof props[key] === 'string' && isExpression(props[key])) {
335
336
  props[key] = resolveVariableAndFilter(props[key], props.data, '| raw');
336
337
  }
337
338
  }
package/esm/Scoped.d.ts CHANGED
@@ -37,6 +37,7 @@ export interface IScopedContext {
37
37
  unRegisterComponent: (component: ScopedComponentType) => void;
38
38
  getComponentByName: (name: string) => ScopedComponentType;
39
39
  getComponentById: (id: string) => ScopedComponentType | undefined;
40
+ getComponentByIdUnderCurrentScope: (id: string, ignoreScope?: IScopedContext) => ScopedComponentType | undefined;
40
41
  getComponents: () => Array<ScopedComponentType>;
41
42
  reload: (target: string, ctx: RendererData) => void;
42
43
  send: (target: string, ctx: RendererData) => void;
package/esm/Scoped.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -172,24 +172,38 @@ function createScopedTools(path, parent, env, rendererType) {
172
172
  });
173
173
  return resolved || (parent && parent.getComponentByName(name));
174
174
  },
175
+ getComponentByIdUnderCurrentScope: function (id, ignoreScope) {
176
+ var component = undefined;
177
+ findTree([this], function (item) {
178
+ return item !== ignoreScope &&
179
+ item.getComponents().find(function (cmpt) {
180
+ if (filter(cmpt.props.id, cmpt.props.data) === id) {
181
+ component = cmpt;
182
+ return true;
183
+ }
184
+ return false;
185
+ });
186
+ });
187
+ return component;
188
+ },
175
189
  getComponentById: function (id) {
176
190
  var root = this;
191
+ var ignoreScope = undefined;
177
192
  // 找到顶端scoped
178
- while (root.parent && root.parent !== rootScopedContext) {
193
+ while (root) {
194
+ // 优先从当前scope查找
195
+ // 直接跑到顶层查找,对于有历史标签一次渲染多个页面的情况,会有问题
196
+ var component = root.getComponentByIdUnderCurrentScope(id, ignoreScope);
197
+ if (component) {
198
+ return component;
199
+ }
200
+ if (!root.parent || root.parent === rootScopedContext) {
201
+ break;
202
+ }
203
+ ignoreScope = root;
179
204
  root = root.parent;
180
205
  }
181
- // 向下查找
182
- var component = undefined;
183
- findTree([root], function (item) {
184
- return item.getComponents().find(function (cmpt) {
185
- if (filter(cmpt.props.id, cmpt.props.data) === id) {
186
- component = cmpt;
187
- return true;
188
- }
189
- return false;
190
- });
191
- });
192
- return component;
206
+ return undefined;
193
207
  },
194
208
  /**
195
209
  * 基于绑定的变量名称查找组件
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/WithStore.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -255,7 +255,9 @@ var runAction = function (actionInstrance, actionConfig, renderer, event) { retu
255
255
  'table': ['condition'],
256
256
  'table2': ['condition'],
257
257
  'crud': ['condition'],
258
- 'combo': ['condition']
258
+ 'combo': ['condition'],
259
+ 'list': ['condition'],
260
+ 'cards': ['condition']
259
261
  };
260
262
  var curCmptType = (_a = targetComponent === null || targetComponent === void 0 ? void 0 : targetComponent.props) === null || _a === void 0 ? void 0 : _a.type;
261
263
  var curActionType = action.actionType;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -7,6 +7,7 @@ import { __awaiter, __generator, __assign } from 'tslib';
7
7
  import { normalizeApiResponseData, normalizeApi } from '../utils/api.js';
8
8
  import { ServerError } from '../utils/errors.js';
9
9
  import { isEmpty } from '../utils/helper.js';
10
+ import { evalExpressionWithConditionBuilder } from '../utils/tpl.js';
10
11
  import { registerAction } from './Action.js';
11
12
  import { createObject } from '../utils/object.js';
12
13
 
@@ -23,12 +24,12 @@ var AjaxAction = /** @class */ (function () {
23
24
  this.fetcherType = fetcherType;
24
25
  }
25
26
  AjaxAction.prototype.run = function (action, renderer, event) {
26
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
27
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
27
28
  return __awaiter(this, void 0, void 0, function () {
28
- var env, silent, messages, api, result, responseData, msg, e_1, result;
29
- var _o;
30
- return __generator(this, function (_p) {
31
- switch (_p.label) {
29
+ var env, silent, messages, api, sendOn, result, responseData, msg, e_1, result;
30
+ var _p;
31
+ return __generator(this, function (_q) {
32
+ switch (_q.label) {
32
33
  case 0:
33
34
  if (!((_a = event.context.env) === null || _a === void 0 ? void 0 : _a.fetcher)) {
34
35
  throw new Error('env.fetcher is required!');
@@ -45,27 +46,36 @@ var AjaxAction = /** @class */ (function () {
45
46
  silent = ((_b = action === null || action === void 0 ? void 0 : action.options) === null || _b === void 0 ? void 0 : _b.silent) || (action === null || action === void 0 ? void 0 : action.api).silent;
46
47
  messages = (_c = action === null || action === void 0 ? void 0 : action.api) === null || _c === void 0 ? void 0 : _c.messages;
47
48
  api = normalizeApi(action.api);
49
+ if (!(api.sendOn !== undefined)) return [3 /*break*/, 2];
50
+ return [4 /*yield*/, evalExpressionWithConditionBuilder(api.sendOn, (_d = action.data) !== null && _d !== void 0 ? _d : {}, false)];
51
+ case 1:
52
+ sendOn = _q.sent();
53
+ if (!sendOn) {
54
+ return [2 /*return*/];
55
+ }
56
+ _q.label = 2;
57
+ case 2:
48
58
  // 如果没配置data数据映射,则给一个空对象,避免将当前数据域作为接口请求参数
49
59
  if ((api === null || api === void 0 ? void 0 : api.data) == undefined) {
50
60
  api = __assign(__assign({}, api), { data: {} });
51
61
  }
52
- _p.label = 1;
53
- case 1:
54
- _p.trys.push([1, 3, , 4]);
55
- return [4 /*yield*/, env.fetcher(api, (_d = action.data) !== null && _d !== void 0 ? _d : {}, (_e = action === null || action === void 0 ? void 0 : action.options) !== null && _e !== void 0 ? _e : {})];
56
- case 2:
57
- result = _p.sent();
62
+ _q.label = 3;
63
+ case 3:
64
+ _q.trys.push([3, 5, , 6]);
65
+ return [4 /*yield*/, env.fetcher(api, (_e = action.data) !== null && _e !== void 0 ? _e : {}, (_f = action === null || action === void 0 ? void 0 : action.options) !== null && _f !== void 0 ? _f : {})];
66
+ case 4:
67
+ result = _q.sent();
58
68
  responseData = !isEmpty(result.data) || result.ok
59
69
  ? normalizeApiResponseData(result.data)
60
70
  : null;
61
71
  // 记录请求返回的数据
62
- event.setData(createObject(event.data, __assign(__assign({}, responseData), (_o = { responseData: responseData }, _o[action.outputVar || 'responseResult'] = __assign(__assign({}, responseData), { responseData: responseData, responseStatus: result.status, responseMsg: result.msg }), _o))));
72
+ event.setData(createObject(event.data, __assign(__assign({}, responseData), (_p = { responseData: responseData }, _p[action.outputVar || 'responseResult'] = __assign(__assign({}, responseData), { responseData: responseData, responseStatus: result.status, responseMsg: result.msg }), _p))));
63
73
  if (!silent) {
64
74
  if (!result.ok) {
65
- throw new ServerError((_h = (_f = messages === null || messages === void 0 ? void 0 : messages.failed) !== null && _f !== void 0 ? _f : (_g = action.messages) === null || _g === void 0 ? void 0 : _g.failed) !== null && _h !== void 0 ? _h : result.msg, result);
75
+ throw new ServerError((_j = (_g = messages === null || messages === void 0 ? void 0 : messages.failed) !== null && _g !== void 0 ? _g : (_h = action.messages) === null || _h === void 0 ? void 0 : _h.failed) !== null && _j !== void 0 ? _j : result.msg, result);
66
76
  }
67
77
  else {
68
- msg = (_m = (_l = (_j = messages === null || messages === void 0 ? void 0 : messages.success) !== null && _j !== void 0 ? _j : (_k = action.messages) === null || _k === void 0 ? void 0 : _k.success) !== null && _l !== void 0 ? _l : result.msg) !== null && _m !== void 0 ? _m : result.defaultMsg;
78
+ msg = (_o = (_m = (_k = messages === null || messages === void 0 ? void 0 : messages.success) !== null && _k !== void 0 ? _k : (_l = action.messages) === null || _l === void 0 ? void 0 : _l.success) !== null && _m !== void 0 ? _m : result.msg) !== null && _o !== void 0 ? _o : result.defaultMsg;
69
79
  msg &&
70
80
  env.notify('success', msg, result.msgTimeout !== undefined
71
81
  ? {
@@ -76,8 +86,8 @@ var AjaxAction = /** @class */ (function () {
76
86
  }
77
87
  }
78
88
  return [2 /*return*/, result.data];
79
- case 3:
80
- e_1 = _p.sent();
89
+ case 5:
90
+ e_1 = _q.sent();
81
91
  if (!silent) {
82
92
  if (e_1.type === 'ServerError') {
83
93
  result = e_1.response;
@@ -92,8 +102,8 @@ var AjaxAction = /** @class */ (function () {
92
102
  env.notify('error', e_1.message);
93
103
  }
94
104
  }
95
- return [3 /*break*/, 4];
96
- case 4: return [2 /*return*/];
105
+ return [3 /*break*/, 6];
106
+ case 6: return [2 /*return*/];
97
107
  }
98
108
  });
99
109
  });
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -46,7 +46,7 @@ var CmptAction = /** @class */ (function () {
46
46
  : renderer;
47
47
  // 如果key指定了,但是没找到组件,则报错
48
48
  if (key && !component) {
49
- msg = '尝试执行一个不存在的目标组件动作,请检查目标组件非隐藏状态,且正确指定了componentId或componentName';
49
+ msg = "\u5C1D\u8BD5\u6267\u884C\u4E00\u4E2A\u4E0D\u5B58\u5728\u7684\u76EE\u6807\u7EC4\u4EF6\u52A8\u4F5C\uFF08".concat(key, "\uFF09\uFF0C\u8BF7\u68C0\u67E5\u76EE\u6807\u7EC4\u4EF6\u975E\u9690\u85CF\u72B6\u6001\uFF0C\u4E14\u6B63\u786E\u6307\u5B9A\u4E86componentId\u6216componentName");
50
50
  if (action.ignoreError === false) {
51
51
  throw Error(msg);
52
52
  }
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -66,12 +66,20 @@ var DialogAction = /** @class */ (function () {
66
66
  if (action.$$id !== undefined) {
67
67
  return [2 /*return*/];
68
68
  }
69
- ret = (_b = (_a = renderer.props).onAction) === null || _b === void 0 ? void 0 : _b.call(_a, event, {
70
- actionType: 'dialog',
71
- dialog: action.dialog,
72
- reload: 'none',
73
- data: action.rawData
74
- }, action.data);
69
+ ret = renderer.handleAction
70
+ ? renderer.handleAction(event, {
71
+ actionType: 'dialog',
72
+ dialog: action.dialog,
73
+ reload: 'none',
74
+ data: action.rawData
75
+ }, action.data)
76
+ : (_b = (_a = renderer.props).onAction) === null || _b === void 0 ? void 0 : _b.call(_a, event, {
77
+ actionType: 'dialog',
78
+ dialog: action.dialog,
79
+ reload: 'none',
80
+ data: action.rawData
81
+ }, action.data);
82
+ event.pendingPromise.push(ret);
75
83
  if (!action.waitForAction) return [3 /*break*/, 2];
76
84
  return [4 /*yield*/, ret];
77
85
  case 1:
@@ -173,13 +181,21 @@ var ConfirmAction = /** @class */ (function () {
173
181
  return [2 /*return*/, confirmed_1];
174
182
  case 2: return [4 /*yield*/, new Promise(function (resolve, reject) {
175
183
  var _a, _b;
176
- (_b = (_a = renderer.props).onAction) === null || _b === void 0 ? void 0 : _b.call(_a, event, {
177
- actionType: 'dialog',
178
- dialog: modal,
179
- data: action.rawData,
180
- reload: 'none',
181
- callback: function (result) { return resolve(result); }
182
- }, action.data);
184
+ renderer.handleAction
185
+ ? renderer.handleAction(event, {
186
+ actionType: 'dialog',
187
+ dialog: modal,
188
+ data: action.rawData,
189
+ reload: 'none',
190
+ callback: function (result) { return resolve(result); }
191
+ }, action.data)
192
+ : (_b = (_a = renderer.props).onAction) === null || _b === void 0 ? void 0 : _b.call(_a, event, {
193
+ actionType: 'dialog',
194
+ dialog: modal,
195
+ data: action.rawData,
196
+ reload: 'none',
197
+ callback: function (result) { return resolve(result); }
198
+ }, action.data);
183
199
  })];
184
200
  case 3:
185
201
  confirmed = _v.sent();
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -66,12 +66,20 @@ var DrawerAction = /** @class */ (function () {
66
66
  if (action.$$id !== undefined) {
67
67
  return [2 /*return*/];
68
68
  }
69
- ret = (_b = (_a = renderer.props).onAction) === null || _b === void 0 ? void 0 : _b.call(_a, event, {
70
- actionType: 'drawer',
71
- drawer: action.drawer,
72
- reload: 'none',
73
- data: action.rawData
74
- }, action.data);
69
+ ret = renderer.handleAction
70
+ ? renderer.handleAction(event, {
71
+ actionType: 'drawer',
72
+ drawer: action.drawer,
73
+ reload: 'none',
74
+ data: action.rawData
75
+ }, action.data)
76
+ : (_b = (_a = renderer.props).onAction) === null || _b === void 0 ? void 0 : _b.call(_a, event, {
77
+ actionType: 'drawer',
78
+ drawer: action.drawer,
79
+ reload: 'none',
80
+ data: action.rawData
81
+ }, action.data);
82
+ event.pendingPromise.push(ret);
75
83
  if (!action.waitForAction) return [3 /*break*/, 2];
76
84
  return [4 /*yield*/, ret];
77
85
  case 1:
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -3,8 +3,8 @@ import { RendererAction, ListenerAction, ListenerContext } from './Action';
3
3
  export interface IPrintAction extends ListenerAction {
4
4
  actionType: 'copy';
5
5
  args: {
6
- testid?: string;
7
- testids?: string[];
6
+ id?: string;
7
+ ids?: string[];
8
8
  };
9
9
  }
10
10
  /**
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -22,16 +22,16 @@ var PrintAction = /** @class */ (function () {
22
22
  return __awaiter(this, void 0, void 0, function () {
23
23
  var element, elements_1;
24
24
  return __generator(this, function (_c) {
25
- if ((_a = action.args) === null || _a === void 0 ? void 0 : _a.testid) {
26
- element = document.querySelector("[data-testid='".concat(action.args.testid, "']"));
25
+ if ((_a = action.args) === null || _a === void 0 ? void 0 : _a.id) {
26
+ element = document.querySelector("[data-id='".concat(action.args.id, "']"));
27
27
  if (element) {
28
28
  printElements([element]);
29
29
  }
30
30
  }
31
- else if ((_b = action.args) === null || _b === void 0 ? void 0 : _b.testids) {
31
+ else if ((_b = action.args) === null || _b === void 0 ? void 0 : _b.ids) {
32
32
  elements_1 = [];
33
- action.args.testids.forEach(function (testid) {
34
- var element = document.querySelector("[data-testid='".concat(testid, "']"));
33
+ action.args.ids.forEach(function (id) {
34
+ var element = document.querySelector("[data-id='".concat(id, "']"));
35
35
  if (element) {
36
36
  elements_1.push(element);
37
37
  }
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -10,9 +10,6 @@ var styleIdCount = new Map();
10
10
  function CustomStyle (props) {
11
11
  var config = props.config, env = props.env, data = props.data;
12
12
  var themeCss = config.themeCss, classNames = config.classNames, id = config.id, defaultData = config.defaultData, wrapperCustomStyle = config.wrapperCustomStyle;
13
- if (!themeCss && !wrapperCustomStyle) {
14
- return null;
15
- }
16
13
  useEffect(function () {
17
14
  if (styleIdCount.has(id)) {
18
15
  styleIdCount.set(id, styleIdCount.get(id) + 1);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/env.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/factory.d.ts CHANGED
@@ -39,6 +39,7 @@ export interface RendererProps extends ThemeProps, LocaleProps, OnEventProps, St
39
39
  [propName: string]: any;
40
40
  };
41
41
  onBroadcast?: (type: string, rawEvent: RendererEvent<any>, ctx: any) => any;
42
+ dispatchEvent: (e: React.UIEvent<any> | React.BaseSyntheticEvent<any> | string, data: any, renderer?: React.Component<RendererProps>) => Promise<RendererEvent<any>>;
42
43
  mobileUI?: boolean;
43
44
  [propName: string]: any;
44
45
  }
package/esm/factory.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -148,7 +148,7 @@ export { StoreNode } from './store/node.js';
148
148
  */
149
149
  var classPrefix = getClassPrefix();
150
150
  // @ts-ignore
151
- var version = '6.3.0';
151
+ var version = '6.4.0';
152
152
  function render(schema, props, options, pathPrefix) {
153
153
  if (props === void 0) { props = {}; }
154
154
  if (options === void 0) { options = {}; }
package/esm/locale.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.3.0
2
+ * amis-core v6.4.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5