amis-core 6.9.0 → 6.10.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (307) hide show
  1. package/esm/Root.js +1 -1
  2. package/esm/RootRenderer.js +4 -2
  3. package/esm/SchemaRenderer.d.ts +1 -0
  4. package/esm/SchemaRenderer.js +8 -4
  5. package/esm/Scoped.d.ts +1 -1
  6. package/esm/Scoped.js +1 -1
  7. package/esm/StatusScoped.js +1 -1
  8. package/esm/StyleManager.js +1 -1
  9. package/esm/WithRootStore.js +1 -1
  10. package/esm/WithStore.js +1 -1
  11. package/esm/actions/Action.js +4 -1
  12. package/esm/actions/AjaxAction.js +1 -1
  13. package/esm/actions/BreakAction.js +1 -1
  14. package/esm/actions/BroadcastAction.d.ts +1 -1
  15. package/esm/actions/BroadcastAction.js +6 -6
  16. package/esm/actions/CmptAction.d.ts +1 -0
  17. package/esm/actions/CmptAction.js +51 -51
  18. package/esm/actions/ContinueAction.js +1 -1
  19. package/esm/actions/CopyAction.js +1 -1
  20. package/esm/actions/CustomAction.js +1 -1
  21. package/esm/actions/DialogAction.js +1 -1
  22. package/esm/actions/DrawerAction.js +1 -1
  23. package/esm/actions/EmailAction.js +1 -1
  24. package/esm/actions/EventAction.js +1 -1
  25. package/esm/actions/LinkAction.js +1 -1
  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/PrintAction.js +1 -1
  30. package/esm/actions/StatusAction.js +1 -1
  31. package/esm/actions/SwitchAction.js +1 -1
  32. package/esm/actions/ToastAction.js +1 -1
  33. package/esm/actions/WaitAction.js +1 -1
  34. package/esm/components/CustomStyle.js +1 -1
  35. package/esm/components/ErrorBoundary.js +1 -1
  36. package/esm/components/LazyComponent.js +1 -1
  37. package/esm/components/Overlay.js +13 -16
  38. package/esm/components/PopOver.js +2 -2
  39. package/esm/env.js +1 -1
  40. package/esm/envOverwrite.js +1 -1
  41. package/esm/factory.d.ts +1 -1
  42. package/esm/factory.js +5 -3
  43. package/esm/index.d.ts +4 -3
  44. package/esm/index.js +10 -9
  45. package/esm/locale.js +1 -1
  46. package/esm/polyfills.js +1 -1
  47. package/esm/renderers/Form.js +1 -1
  48. package/esm/renderers/Item.d.ts +1 -0
  49. package/esm/renderers/Item.js +2 -2
  50. package/esm/renderers/Options.d.ts +46 -1
  51. package/esm/renderers/Options.js +921 -914
  52. package/esm/renderers/Placeholder.js +1 -1
  53. package/esm/renderers/builtin.js +1 -1
  54. package/esm/renderers/register.js +1 -1
  55. package/esm/renderers/wrapControl.d.ts +2 -1
  56. package/esm/renderers/wrapControl.js +3 -3
  57. package/esm/store/app.js +1 -1
  58. package/esm/store/combo.js +1 -1
  59. package/esm/store/crud.d.ts +4 -2
  60. package/esm/store/crud.js +39 -141
  61. package/esm/store/form.js +1 -1
  62. package/esm/store/formItem.js +2 -2
  63. package/esm/store/iRenderer.js +1 -1
  64. package/esm/store/index.js +1 -1
  65. package/esm/store/list.js +1 -1
  66. package/esm/store/manager.js +1 -1
  67. package/esm/store/modal.js +1 -1
  68. package/esm/store/node.js +1 -1
  69. package/esm/store/pagination.js +1 -1
  70. package/esm/store/root.js +1 -1
  71. package/esm/store/service.js +1 -1
  72. package/esm/store/status.js +1 -1
  73. package/esm/store/table.js +1 -1
  74. package/esm/store/table2.js +1 -1
  75. package/esm/theme.js +1 -1
  76. package/esm/utils/Animation.js +1 -1
  77. package/esm/utils/ColorScale.js +1 -1
  78. package/esm/utils/DataSchema.js +1 -1
  79. package/esm/utils/DataScope.js +1 -1
  80. package/esm/utils/RootClose.js +1 -1
  81. package/esm/utils/SimpleMap.js +1 -1
  82. package/esm/utils/animations.js +1 -1
  83. package/esm/utils/api.d.ts +2 -1
  84. package/esm/utils/api.js +6 -4
  85. package/esm/utils/arraySlice.js +1 -1
  86. package/esm/utils/attachmentAdpator.js +4 -1
  87. package/esm/utils/autobind.js +1 -1
  88. package/esm/utils/browser.js +1 -1
  89. package/esm/utils/columnsSplit.js +1 -1
  90. package/esm/utils/concatData.js +1 -1
  91. package/esm/utils/dataMapping.js +1 -1
  92. package/esm/utils/date.js +1 -1
  93. package/esm/utils/debug.d.ts +3 -3
  94. package/esm/utils/debug.js +104 -37
  95. package/esm/utils/decodeEntity.js +1 -1
  96. package/esm/utils/dom.js +1 -1
  97. package/esm/utils/errors.js +1 -1
  98. package/esm/utils/escapeHtml.js +1 -1
  99. package/esm/utils/filter-schema.js +1 -1
  100. package/esm/utils/filter.js +1 -1
  101. package/esm/utils/formatDuration.js +1 -1
  102. package/esm/utils/formula.js +1 -1
  103. package/esm/utils/getVariable.js +1 -1
  104. package/esm/utils/grammar.js +1 -1
  105. package/esm/utils/handleAction.js +1 -1
  106. package/esm/utils/helper.d.ts +7 -0
  107. package/esm/utils/helper.js +87 -2
  108. package/esm/utils/highlight.js +1 -1
  109. package/esm/utils/icon.js +1 -1
  110. package/esm/utils/image.js +1 -1
  111. package/esm/utils/index.d.ts +1 -0
  112. package/esm/utils/isPureVariable.js +1 -1
  113. package/esm/utils/json-schema-2-amis-schema.js +1 -1
  114. package/esm/utils/keyToPath.js +1 -1
  115. package/esm/utils/labelToString.js +1 -1
  116. package/esm/utils/loopTooMuch.d.ts +1 -0
  117. package/esm/utils/loopTooMuch.js +27 -0
  118. package/esm/utils/makeSorter.js +1 -1
  119. package/esm/utils/math.js +1 -1
  120. package/esm/utils/memoryParse.js +1 -1
  121. package/esm/utils/normalizeLink.js +1 -1
  122. package/esm/utils/normalizeOptions.js +1 -1
  123. package/esm/utils/object.js +1 -1
  124. package/esm/utils/offset.js +1 -1
  125. package/esm/utils/offsetParent.js +1 -1
  126. package/esm/utils/optionValueCompare.js +1 -1
  127. package/esm/utils/position.js +11 -6
  128. package/esm/utils/prettyBytes.js +1 -1
  129. package/esm/utils/printElement.js +1 -1
  130. package/esm/utils/renderer-event.d.ts +4 -0
  131. package/esm/utils/renderer-event.js +97 -11
  132. package/esm/utils/replaceText.js +1 -1
  133. package/esm/utils/resize-sensor.js +1 -1
  134. package/esm/utils/resolveCondition.js +1 -1
  135. package/esm/utils/resolveVariable.js +1 -1
  136. package/esm/utils/resolveVariableAndFilter.js +1 -1
  137. package/esm/utils/resolveVariableAndFilterForAsync.js +1 -1
  138. package/esm/utils/scrollPosition.js +1 -1
  139. package/esm/utils/string2regExp.js +1 -1
  140. package/esm/utils/stripNumber.js +1 -1
  141. package/esm/utils/style-helper.js +1 -1
  142. package/esm/utils/style.js +1 -1
  143. package/esm/utils/toNumber.js +1 -1
  144. package/esm/utils/tokenize.js +1 -1
  145. package/esm/utils/tpl-builtin.js +1 -1
  146. package/esm/utils/tpl-lodash.js +1 -1
  147. package/esm/utils/tpl.js +1 -1
  148. package/esm/utils/uncontrollable.js +1 -1
  149. package/esm/utils/validateId.js +1 -1
  150. package/esm/utils/validations.js +5 -3
  151. package/esm/utils/visitedCache.js +1 -1
  152. package/lib/Root.js +1 -1
  153. package/lib/RootRenderer.d.ts +1 -1
  154. package/lib/RootRenderer.js +4 -2
  155. package/lib/SchemaRenderer.d.ts +1 -0
  156. package/lib/SchemaRenderer.js +7 -3
  157. package/lib/Scoped.d.ts +1 -1
  158. package/lib/Scoped.js +1 -1
  159. package/lib/StatusScoped.js +1 -1
  160. package/lib/StyleManager.js +1 -1
  161. package/lib/WithRootStore.js +1 -1
  162. package/lib/WithStore.js +1 -1
  163. package/lib/actions/Action.js +4 -1
  164. package/lib/actions/AjaxAction.js +1 -1
  165. package/lib/actions/BreakAction.js +1 -1
  166. package/lib/actions/BroadcastAction.d.ts +1 -1
  167. package/lib/actions/BroadcastAction.js +5 -5
  168. package/lib/actions/CmptAction.d.ts +1 -0
  169. package/lib/actions/CmptAction.js +50 -50
  170. package/lib/actions/ContinueAction.js +1 -1
  171. package/lib/actions/CopyAction.js +1 -1
  172. package/lib/actions/CustomAction.js +1 -1
  173. package/lib/actions/DialogAction.js +1 -1
  174. package/lib/actions/DrawerAction.js +1 -1
  175. package/lib/actions/EmailAction.js +1 -1
  176. package/lib/actions/EventAction.js +1 -1
  177. package/lib/actions/LinkAction.js +1 -1
  178. package/lib/actions/LoopAction.js +1 -1
  179. package/lib/actions/PageAction.js +1 -1
  180. package/lib/actions/ParallelAction.js +1 -1
  181. package/lib/actions/PrintAction.js +1 -1
  182. package/lib/actions/StatusAction.js +1 -1
  183. package/lib/actions/SwitchAction.js +1 -1
  184. package/lib/actions/ToastAction.js +1 -1
  185. package/lib/actions/WaitAction.js +1 -1
  186. package/lib/components/CustomStyle.js +1 -1
  187. package/lib/components/ErrorBoundary.js +1 -1
  188. package/lib/components/LazyComponent.js +1 -1
  189. package/lib/components/Overlay.js +11 -14
  190. package/lib/components/PopOver.js +2 -2
  191. package/lib/env.js +1 -1
  192. package/lib/envOverwrite.js +1 -1
  193. package/lib/factory.d.ts +1 -1
  194. package/lib/factory.js +5 -3
  195. package/lib/index.d.ts +4 -3
  196. package/lib/index.js +14 -5
  197. package/lib/locale.js +1 -1
  198. package/lib/polyfills.js +1 -1
  199. package/lib/renderers/Form.js +1 -1
  200. package/lib/renderers/Item.d.ts +1 -0
  201. package/lib/renderers/Item.js +2 -2
  202. package/lib/renderers/Options.d.ts +46 -1
  203. package/lib/renderers/Options.js +920 -912
  204. package/lib/renderers/Placeholder.js +1 -1
  205. package/lib/renderers/builtin.js +1 -1
  206. package/lib/renderers/register.js +1 -1
  207. package/lib/renderers/wrapControl.d.ts +2 -1
  208. package/lib/renderers/wrapControl.js +3 -3
  209. package/lib/store/app.js +1 -1
  210. package/lib/store/combo.d.ts +25 -24
  211. package/lib/store/combo.js +1 -1
  212. package/lib/store/crud.d.ts +4 -2
  213. package/lib/store/crud.js +37 -139
  214. package/lib/store/form.d.ts +11 -10
  215. package/lib/store/form.js +1 -1
  216. package/lib/store/formItem.js +2 -2
  217. package/lib/store/iRenderer.js +1 -1
  218. package/lib/store/index.js +1 -1
  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.js +1 -1
  225. package/lib/store/service.js +1 -1
  226. package/lib/store/status.js +1 -1
  227. package/lib/store/table.d.ts +21 -20
  228. package/lib/store/table.js +1 -1
  229. package/lib/store/table2.js +1 -1
  230. package/lib/theme.js +1 -1
  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/animations.js +1 -1
  238. package/lib/utils/api.d.ts +2 -1
  239. package/lib/utils/api.js +5 -2
  240. package/lib/utils/arraySlice.js +1 -1
  241. package/lib/utils/attachmentAdpator.js +4 -1
  242. package/lib/utils/autobind.js +1 -1
  243. package/lib/utils/browser.js +1 -1
  244. package/lib/utils/columnsSplit.js +1 -1
  245. package/lib/utils/concatData.js +1 -1
  246. package/lib/utils/dataMapping.js +1 -1
  247. package/lib/utils/date.js +1 -1
  248. package/lib/utils/debug.d.ts +3 -3
  249. package/lib/utils/debug.js +103 -36
  250. package/lib/utils/decodeEntity.js +1 -1
  251. package/lib/utils/dom.js +1 -1
  252. package/lib/utils/errors.js +1 -1
  253. package/lib/utils/escapeHtml.js +1 -1
  254. package/lib/utils/filter-schema.js +1 -1
  255. package/lib/utils/filter.js +1 -1
  256. package/lib/utils/formatDuration.js +1 -1
  257. package/lib/utils/formula.js +1 -1
  258. package/lib/utils/getVariable.js +1 -1
  259. package/lib/utils/grammar.js +1 -1
  260. package/lib/utils/handleAction.js +1 -1
  261. package/lib/utils/helper.d.ts +7 -0
  262. package/lib/utils/helper.js +87 -1
  263. package/lib/utils/highlight.js +1 -1
  264. package/lib/utils/icon.js +1 -1
  265. package/lib/utils/image.js +1 -1
  266. package/lib/utils/index.d.ts +1 -0
  267. package/lib/utils/isPureVariable.js +1 -1
  268. package/lib/utils/json-schema-2-amis-schema.js +1 -1
  269. package/lib/utils/keyToPath.js +1 -1
  270. package/lib/utils/labelToString.js +1 -1
  271. package/lib/utils/loopTooMuch.d.ts +1 -0
  272. package/lib/utils/loopTooMuch.js +31 -0
  273. package/lib/utils/makeSorter.js +1 -1
  274. package/lib/utils/math.js +1 -1
  275. package/lib/utils/memoryParse.js +1 -1
  276. package/lib/utils/normalizeLink.js +1 -1
  277. package/lib/utils/normalizeOptions.js +1 -1
  278. package/lib/utils/object.js +1 -1
  279. package/lib/utils/offset.js +1 -1
  280. package/lib/utils/offsetParent.js +1 -1
  281. package/lib/utils/optionValueCompare.js +1 -1
  282. package/lib/utils/position.js +11 -6
  283. package/lib/utils/prettyBytes.js +1 -1
  284. package/lib/utils/printElement.js +1 -1
  285. package/lib/utils/renderer-event.d.ts +4 -0
  286. package/lib/utils/renderer-event.js +99 -10
  287. package/lib/utils/replaceText.js +1 -1
  288. package/lib/utils/resize-sensor.js +1 -1
  289. package/lib/utils/resolveCondition.js +1 -1
  290. package/lib/utils/resolveVariable.js +1 -1
  291. package/lib/utils/resolveVariableAndFilter.js +1 -1
  292. package/lib/utils/resolveVariableAndFilterForAsync.js +1 -1
  293. package/lib/utils/scrollPosition.js +1 -1
  294. package/lib/utils/string2regExp.js +1 -1
  295. package/lib/utils/stripNumber.js +1 -1
  296. package/lib/utils/style-helper.js +1 -1
  297. package/lib/utils/style.js +1 -1
  298. package/lib/utils/toNumber.js +1 -1
  299. package/lib/utils/tokenize.js +1 -1
  300. package/lib/utils/tpl-builtin.js +1 -1
  301. package/lib/utils/tpl-lodash.js +1 -1
  302. package/lib/utils/tpl.js +1 -1
  303. package/lib/utils/uncontrollable.js +1 -1
  304. package/lib/utils/validateId.js +1 -1
  305. package/lib/utils/validations.js +5 -3
  306. package/lib/utils/visitedCache.js +1 -1
  307. package/package.json +5 -4
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -40,15 +40,20 @@ function position(node, offsetParent$1) {
40
40
  }
41
41
  if (nodeName(parent_1) !== 'html')
42
42
  parentOffset = offset(parent_1);
43
- var borderTop = String(getComputedStyle(parent_1).getPropertyValue('border-top-width') || 0);
43
+ var parentStyle = getComputedStyle(parent_1);
44
+ var borderTop = String(parentStyle.getPropertyValue('border-top-width') || 0);
44
45
  parentOffset.top += parseInt(borderTop, 10) - parent_1.scrollTop || 0;
45
- var borderLeft = String(getComputedStyle(parent_1).getPropertyValue('border-left-width') || 0);
46
+ var borderLeft = String(parentStyle.getPropertyValue('border-left-width') || 0);
46
47
  parentOffset.left += parseInt(borderLeft, 10) - parent_1.scrollLeft || 0;
47
48
  }
48
- var marginTop = String(getComputedStyle(node).getPropertyValue('margin-top') || 0);
49
- var marginLeft = String(getComputedStyle(node).getPropertyValue('margin-left') || 0);
49
+ // const marginTop = String(
50
+ // getComputedStyle(node).getPropertyValue('margin-top') || 0
51
+ // );
52
+ // const marginLeft = String(
53
+ // getComputedStyle(node).getPropertyValue('margin-left') || 0
54
+ // );
50
55
  // Subtract parent offsets and node margins
51
- return __assign(__assign({}, offset$1), { top: offset$1.top - parentOffset.top - (parseInt(marginTop, 10) || 0), left: offset$1.left - parentOffset.left - (parseInt(marginLeft, 10) || 0) });
56
+ return __assign(__assign({}, offset$1), { top: offset$1.top - parentOffset.top /*- (parseInt(marginTop, 10) || 0)*/, left: offset$1.left - parentOffset.left /* - (parseInt(marginLeft, 10) || 0)*/ });
52
57
  }
53
58
 
54
59
  export { position as default, position };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -3,6 +3,7 @@ import { ListenerAction } from '../actions/Action';
3
3
  import { RendererProps } from '../factory';
4
4
  import { IScopedContext } from '../Scoped';
5
5
  import { TreeItem } from './helper';
6
+ import type { PlainObject } from '../types';
6
7
  export interface debounceConfig {
7
8
  maxWait?: number;
8
9
  wait?: number;
@@ -59,7 +60,10 @@ export interface RendererEventContext {
59
60
  }
60
61
  export declare function createRendererEvent<T extends RendererEventContext>(type: string, context: T): RendererEvent<T>;
61
62
  export declare const bindEvent: (renderer: any) => ((eventName?: string) => void) | undefined;
63
+ export declare const bindGlobalEventForRenderer: (renderer: any) => (() => void) | undefined;
64
+ export declare const bindGlobalEvent: (eventName: string, callback: (data: PlainObject) => void) => (() => void) | undefined;
62
65
  export declare function dispatchEvent(e: string | React.MouseEvent<any>, renderer: React.Component<RendererProps>, scoped: IScopedContext, data: any, broadcast?: RendererEvent<any>): Promise<RendererEvent<any> | void>;
66
+ export declare function dispatchGlobalEvent(eventName: string, data: any): Promise<void>;
63
67
  export declare const getRendererEventListeners: () => RendererEventListener[];
64
68
  /**
65
69
  * 兼容历史配置,追加对应name的值
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -131,12 +131,80 @@ var bindEvent = function (renderer) {
131
131
  }
132
132
  return undefined;
133
133
  };
134
+ var bindGlobalEventForRenderer = function (renderer) {
135
+ var e_2, _a;
136
+ if (!renderer) {
137
+ return undefined;
138
+ }
139
+ var listeners = renderer.props.$schema.onEvent;
140
+ var bcs = [];
141
+ if (listeners) {
142
+ var _loop_2 = function (key) {
143
+ var listener = listeners[key];
144
+ if (!BroadcastChannel) {
145
+ console.error('BroadcastChannel is not supported in your browser');
146
+ return { value: void 0 };
147
+ }
148
+ var bc = new BroadcastChannel(key);
149
+ bcs.push({
150
+ renderer: renderer,
151
+ bc: bc
152
+ });
153
+ bc.onmessage = function (e) {
154
+ var _a;
155
+ var _b = e.data, eventName = _b.eventName, data = _b.data;
156
+ var rendererEvent = createRendererEvent(eventName, {
157
+ env: (_a = renderer === null || renderer === void 0 ? void 0 : renderer.props) === null || _a === void 0 ? void 0 : _a.env,
158
+ nativeEvent: eventName,
159
+ scoped: renderer === null || renderer === void 0 ? void 0 : renderer.context,
160
+ data: data
161
+ });
162
+ runActions(listener.actions, renderer, rendererEvent);
163
+ };
164
+ };
165
+ try {
166
+ for (var _b = __values(Object.keys(listeners)), _c = _b.next(); !_c.done; _c = _b.next()) {
167
+ var key = _c.value;
168
+ var state_1 = _loop_2(key);
169
+ if (typeof state_1 === "object")
170
+ return state_1.value;
171
+ }
172
+ }
173
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
174
+ finally {
175
+ try {
176
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
177
+ }
178
+ finally { if (e_2) throw e_2.error; }
179
+ }
180
+ return function () {
181
+ bcs
182
+ .filter(function (item) { return item.renderer === renderer; })
183
+ .forEach(function (item) { return item.bc.close(); });
184
+ };
185
+ }
186
+ return void 0;
187
+ };
188
+ var bindGlobalEvent = function (eventName, callback) {
189
+ if (!BroadcastChannel) {
190
+ console.error('BroadcastChannel is not supported in your browser');
191
+ return;
192
+ }
193
+ var bc = new BroadcastChannel(eventName);
194
+ bc.onmessage = function (e) {
195
+ var _a = e.data, name = _a.eventName, data = _a.data;
196
+ if (name === eventName) {
197
+ callback(data);
198
+ }
199
+ };
200
+ return function () { return bc.close(); };
201
+ };
134
202
  // 触发事件
135
203
  function dispatchEvent(e, renderer, scoped, data, broadcast) {
136
204
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
137
205
  return __awaiter(this, void 0, void 0, function () {
138
- var unbindEvent, eventName, eventConfig, rendererEvent, listeners, executedCount, checkExecuted, _loop_2, listeners_1, listeners_1_1, listener, state_1, e_2_1;
139
- var e_2, _l;
206
+ var unbindEvent, eventName, eventConfig, rendererEvent, listeners, executedCount, checkExecuted, _loop_3, listeners_1, listeners_1_1, listener, state_2, e_3_1;
207
+ var e_3, _l;
140
208
  var _this = this;
141
209
  return __generator(this, function (_m) {
142
210
  switch (_m.label) {
@@ -179,7 +247,7 @@ function dispatchEvent(e, renderer, scoped, data, broadcast) {
179
247
  unbindEvent === null || unbindEvent === void 0 ? void 0 : unbindEvent(eventName);
180
248
  }
181
249
  };
182
- _loop_2 = function (listener) {
250
+ _loop_3 = function (listener) {
183
251
  var _o, _p, wait, _q, trailing, _r, leading, _s, maxWait, debounced_1, _t, trackId, trackName;
184
252
  return __generator(this, function (_u) {
185
253
  switch (_u.label) {
@@ -243,10 +311,10 @@ function dispatchEvent(e, renderer, scoped, data, broadcast) {
243
311
  case 2:
244
312
  if (!!listeners_1_1.done) return [3 /*break*/, 5];
245
313
  listener = listeners_1_1.value;
246
- return [5 /*yield**/, _loop_2(listener)];
314
+ return [5 /*yield**/, _loop_3(listener)];
247
315
  case 3:
248
- state_1 = _m.sent();
249
- if (state_1 === "break")
316
+ state_2 = _m.sent();
317
+ if (state_2 === "break")
250
318
  return [3 /*break*/, 5];
251
319
  _m.label = 4;
252
320
  case 4:
@@ -254,20 +322,38 @@ function dispatchEvent(e, renderer, scoped, data, broadcast) {
254
322
  return [3 /*break*/, 2];
255
323
  case 5: return [3 /*break*/, 8];
256
324
  case 6:
257
- e_2_1 = _m.sent();
258
- e_2 = { error: e_2_1 };
325
+ e_3_1 = _m.sent();
326
+ e_3 = { error: e_3_1 };
259
327
  return [3 /*break*/, 8];
260
328
  case 7:
261
329
  try {
262
330
  if (listeners_1_1 && !listeners_1_1.done && (_l = listeners_1.return)) _l.call(listeners_1);
263
331
  }
264
- finally { if (e_2) throw e_2.error; }
332
+ finally { if (e_3) throw e_3.error; }
265
333
  return [7 /*endfinally*/];
266
334
  case 8: return [2 /*return*/, Promise.resolve(rendererEvent)];
267
335
  }
268
336
  });
269
337
  });
270
338
  }
339
+ function dispatchGlobalEvent(eventName, data) {
340
+ return __awaiter(this, void 0, void 0, function () {
341
+ var bc;
342
+ return __generator(this, function (_a) {
343
+ if (!BroadcastChannel) {
344
+ console.error('BroadcastChannel is not supported in your browser');
345
+ return [2 /*return*/];
346
+ }
347
+ bc = new BroadcastChannel(eventName);
348
+ bc.postMessage({
349
+ eventName: eventName,
350
+ data: data
351
+ });
352
+ bc.close();
353
+ return [2 /*return*/];
354
+ });
355
+ });
356
+ }
271
357
  var getRendererEventListeners = function () {
272
358
  return rendererEventListeners;
273
359
  };
@@ -379,4 +465,4 @@ function getMatchedEventTargets(tree, ctx, index, condition, oldCondition) {
379
465
  });
380
466
  }
381
467
 
382
- export { bindEvent, createRendererEvent, dispatchEvent, getMatchedEventTargets, getRendererEventListeners, resolveEventData };
468
+ export { bindEvent, bindGlobalEvent, bindGlobalEventForRenderer, createRendererEvent, dispatchEvent, dispatchGlobalEvent, getMatchedEventTargets, getRendererEventListeners, resolveEventData };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/utils/tpl.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -211,12 +211,14 @@ var validations = {
211
211
  return true;
212
212
  },
213
213
  isPhoneNumber: function (values, value) {
214
- return (!isExisty(value) || isEmpty(value) || /^[1]([3-9])[0-9]{9}$/.test(value));
214
+ return (!isExisty(value) ||
215
+ isEmpty(value) ||
216
+ /^(\+\d{2}-)?[1]([3-9])[0-9]{9}$/.test(value));
215
217
  },
216
218
  isTelNumber: function (values, value) {
217
219
  return (!isExisty(value) ||
218
220
  isEmpty(value) ||
219
- /^(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}$/.test(value));
221
+ /^(\+\d{2}-)?(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}$/.test(value));
220
222
  },
221
223
  isZipcode: function (values, value) {
222
224
  return !isExisty(value) || isEmpty(value) || /^\d{6}$/.test(value);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/lib/Root.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -30,5 +30,5 @@ export declare class RootRenderer extends React.Component<RootRendererProps> {
30
30
  renderError(): React.ReactNode;
31
31
  renderDialog(): React.ReactNode;
32
32
  renderDrawer(): React.ReactNode;
33
- render(): string | number | boolean | Iterable<React.ReactNode> | React.JSX.Element | null | undefined;
33
+ render(): string | number | boolean | React.JSX.Element | Iterable<React.ReactNode> | null | undefined;
34
34
  }
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -72,7 +72,9 @@ var RootRenderer = /** @class */ (function (_super) {
72
72
  }
73
73
  }
74
74
  });
75
- return factory.loadAsyncRenderersByType(types, true);
75
+ return factory.hasAsyncRenderers(types)
76
+ ? factory.loadAsyncRenderersByType(types, true)
77
+ : undefined;
76
78
  });
77
79
  return _this;
78
80
  }
@@ -30,6 +30,7 @@ export declare class SchemaRenderer extends React.Component<SchemaRendererProps,
30
30
  };
31
31
  toDispose: Array<() => any>;
32
32
  unbindEvent: (() => void) | undefined;
33
+ unbindGlobalEvent: (() => void) | undefined;
33
34
  isStatic: any;
34
35
  constructor(props: SchemaRendererProps);
35
36
  componentDidMount(): void;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -95,6 +95,7 @@ var SchemaRenderer = /** @class */ (function (_super) {
95
95
  _this.animationClassNames = {};
96
96
  _this.toDispose = [];
97
97
  _this.unbindEvent = undefined;
98
+ _this.unbindGlobalEvent = undefined;
98
99
  _this.isStatic = undefined;
99
100
  var animations = (_a = props === null || props === void 0 ? void 0 : props.schema) === null || _a === void 0 ? void 0 : _a.animations;
100
101
  if (animations) {
@@ -138,10 +139,11 @@ var SchemaRenderer = /** @class */ (function (_super) {
138
139
  }
139
140
  };
140
141
  SchemaRenderer.prototype.componentWillUnmount = function () {
141
- var _a;
142
+ var _a, _b;
142
143
  this.toDispose.forEach(function (fn) { return fn(); });
143
144
  this.toDispose = [];
144
145
  (_a = this.unbindEvent) === null || _a === void 0 ? void 0 : _a.call(this);
146
+ (_b = this.unbindGlobalEvent) === null || _b === void 0 ? void 0 : _b.call(this);
145
147
  this.removeAnimationStyle();
146
148
  };
147
149
  // 限制:只有 schema 除外的 props 变化,或者 schema 里面的某个成员值发生变化才更新。
@@ -221,7 +223,7 @@ var SchemaRenderer = /** @class */ (function (_super) {
221
223
  };
222
224
  SchemaRenderer.prototype.childRef = function (ref) {
223
225
  var _this = this;
224
- var _a, _b;
226
+ var _a, _b, _c;
225
227
  // todo 这里有个问题,就是注意以下的这段注释
226
228
  // > // 原来表单项的 visible: false 和 hidden: true 表单项的值和验证是有效的
227
229
  // > 而 visibleOn 和 hiddenOn 是无效的,
@@ -240,7 +242,9 @@ var SchemaRenderer = /** @class */ (function (_super) {
240
242
  if (ref) {
241
243
  // 这里无法区分监听的是不是广播,所以又bind一下,主要是为了绑广播
242
244
  (_b = this.unbindEvent) === null || _b === void 0 ? void 0 : _b.call(this);
245
+ (_c = this.unbindGlobalEvent) === null || _c === void 0 ? void 0 : _c.call(this);
243
246
  this.unbindEvent = rendererEvent.bindEvent(ref);
247
+ this.unbindGlobalEvent = rendererEvent.bindGlobalEventForRenderer(ref);
244
248
  }
245
249
  this.cRef = ref;
246
250
  };
package/lib/Scoped.d.ts CHANGED
@@ -24,7 +24,7 @@ export interface ScopedComponentType extends React.Component<RendererProps> {
24
24
  focus?: () => void;
25
25
  doAction?: (action: ActionObject, data: RendererData, throwErrors?: boolean, args?: any) => void;
26
26
  receive?: (values: RendererData, subPath?: string, replace?: boolean) => void;
27
- reload?: (subPath?: string, query?: RendererData | null, ctx?: RendererData, silent?: boolean, replace?: boolean, args?: any) => void;
27
+ reload?: (subpath?: string, query?: any, ctx?: RendererData, silent?: boolean, replace?: boolean, args?: any) => void;
28
28
  context: any;
29
29
  setData?: (value?: object, replace?: boolean, index?: number) => void;
30
30
  }
package/lib/Scoped.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/lib/WithStore.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -18,6 +18,7 @@ require('../utils/memoryParse.js');
18
18
  require('@rc-component/mini-decimal');
19
19
  var dataMapping = require('../utils/dataMapping.js');
20
20
  require('../utils/filter.js');
21
+ var debug = require('../utils/debug.js');
21
22
 
22
23
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
23
24
 
@@ -285,6 +286,8 @@ var runAction = function (actionInstrance, actionConfig, renderer, event) { retu
285
286
  : mergeData;
286
287
  (_x = console.group) === null || _x === void 0 ? void 0 : _x.call(console, "run action ".concat(action.actionType));
287
288
  console.debug("[".concat(action.actionType, "] action args, data"), args, data);
289
+ debug.debug('action', "run action ".concat(action.actionType, " with args"), args);
290
+ debug.debug('action', "run action ".concat(action.actionType, " with data"), data);
288
291
  stopped = false;
289
292
  return [4 /*yield*/, actionInstrance.run(tslib.__assign(tslib.__assign(tslib.__assign({}, action), { args: args, rawData: actionConfig.data, data: action.actionType === 'reload' ? actionData : data }), key), renderer, event, mergeData)];
290
293
  case 5:
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5