amis-core 6.7.0 → 6.9.0-rc.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 (304) hide show
  1. package/esm/Root.js +1 -1
  2. package/esm/RootRenderer.d.ts +1 -1
  3. package/esm/RootRenderer.js +24 -2
  4. package/esm/SchemaRenderer.d.ts +0 -1
  5. package/esm/SchemaRenderer.js +43 -20
  6. package/esm/Scoped.js +2 -1
  7. package/esm/StatusScoped.js +1 -1
  8. package/esm/WithRootStore.js +1 -1
  9. package/esm/WithStore.js +8 -8
  10. package/esm/actions/Action.js +2 -1
  11. package/esm/actions/AjaxAction.js +1 -1
  12. package/esm/actions/BreakAction.js +1 -1
  13. package/esm/actions/BroadcastAction.js +1 -1
  14. package/esm/actions/CmptAction.js +1 -1
  15. package/esm/actions/ContinueAction.js +1 -1
  16. package/esm/actions/CopyAction.js +1 -1
  17. package/esm/actions/CustomAction.js +2 -1
  18. package/esm/actions/DialogAction.js +3 -1
  19. package/esm/actions/DrawerAction.js +2 -1
  20. package/esm/actions/EmailAction.js +1 -1
  21. package/esm/actions/EventAction.js +2 -1
  22. package/esm/actions/LinkAction.js +1 -1
  23. package/esm/actions/LoopAction.js +2 -1
  24. package/esm/actions/PageAction.js +1 -1
  25. package/esm/actions/ParallelAction.js +1 -1
  26. package/esm/actions/PrintAction.js +1 -1
  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 -1
  32. package/esm/components/ErrorBoundary.js +1 -1
  33. package/esm/components/LazyComponent.d.ts +40 -2
  34. package/esm/components/LazyComponent.js +13 -7
  35. package/esm/components/Overlay.js +2 -1
  36. package/esm/components/PopOver.d.ts +1 -1
  37. package/esm/components/PopOver.js +2 -1
  38. package/esm/env.js +1 -1
  39. package/esm/envOverwrite.js +1 -1
  40. package/esm/factory.d.ts +13 -2
  41. package/esm/factory.js +157 -45
  42. package/esm/index.d.ts +4 -4
  43. package/esm/index.js +5 -5
  44. package/esm/locale.js +2 -1
  45. package/esm/polyfills.js +1 -1
  46. package/esm/renderers/Form.js +44 -18
  47. package/esm/renderers/Item.d.ts +97 -12
  48. package/esm/renderers/Item.js +164 -125
  49. package/esm/renderers/Options.d.ts +3 -3
  50. package/esm/renderers/Options.js +43 -19
  51. package/esm/renderers/Placeholder.js +1 -1
  52. package/esm/renderers/builtin.js +1 -1
  53. package/esm/renderers/register.js +1 -1
  54. package/esm/renderers/wrapControl.js +2 -1
  55. package/esm/store/app.js +2 -1
  56. package/esm/store/combo.d.ts +408 -0
  57. package/esm/store/combo.js +1 -1
  58. package/esm/store/crud.js +2 -1
  59. package/esm/store/form.d.ts +170 -0
  60. package/esm/store/form.js +2 -1
  61. package/esm/store/formItem.d.ts +5 -0
  62. package/esm/store/formItem.js +30 -8
  63. package/esm/store/iRenderer.js +2 -1
  64. package/esm/store/index.d.ts +1 -0
  65. package/esm/store/index.js +3 -2
  66. package/esm/store/list.js +1 -1
  67. package/esm/store/manager.js +1 -1
  68. package/esm/store/modal.js +1 -1
  69. package/esm/store/node.js +1 -1
  70. package/esm/store/pagination.js +2 -1
  71. package/esm/store/root.d.ts +2 -0
  72. package/esm/store/root.js +46 -21
  73. package/esm/store/service.js +2 -1
  74. package/esm/store/status.js +1 -1
  75. package/esm/store/table.d.ts +379 -21
  76. package/esm/store/table.js +84 -54
  77. package/esm/store/table2.js +1 -1
  78. package/esm/theme.js +1 -1
  79. package/esm/types.d.ts +4 -2
  80. package/esm/utils/Animation.js +1 -1
  81. package/esm/utils/ColorScale.js +1 -1
  82. package/esm/utils/DataSchema.js +1 -1
  83. package/esm/utils/DataScope.js +1 -1
  84. package/esm/utils/RootClose.js +1 -1
  85. package/esm/utils/SimpleMap.js +1 -1
  86. package/esm/utils/api.d.ts +21 -1
  87. package/esm/utils/api.js +133 -41
  88. package/esm/utils/arraySlice.js +1 -1
  89. package/esm/utils/attachmentAdpator.js +1 -1
  90. package/esm/utils/autobind.js +1 -1
  91. package/esm/utils/browser.js +1 -1
  92. package/esm/utils/columnsSplit.js +1 -1
  93. package/esm/utils/concatData.js +1 -1
  94. package/esm/utils/dataMapping.js +1 -1
  95. package/esm/utils/date.js +1 -1
  96. package/esm/utils/debug.js +17 -3
  97. package/esm/utils/decodeEntity.js +1 -1
  98. package/esm/utils/dom.js +1 -1
  99. package/esm/utils/errors.js +1 -1
  100. package/esm/utils/escapeHtml.js +1 -1
  101. package/esm/utils/filter-schema.js +1 -1
  102. package/esm/utils/filter.js +1 -1
  103. package/esm/utils/formatDuration.js +1 -1
  104. package/esm/utils/formula.js +2 -1
  105. package/esm/utils/getVariable.js +1 -1
  106. package/esm/utils/grammar.js +1 -1
  107. package/esm/utils/handleAction.js +1 -1
  108. package/esm/utils/helper.d.ts +4 -1
  109. package/esm/utils/helper.js +20 -4
  110. package/esm/utils/highlight.js +1 -1
  111. package/esm/utils/icon.js +1 -1
  112. package/esm/utils/image.js +1 -1
  113. package/esm/utils/isPureVariable.js +2 -2
  114. package/esm/utils/json-schema-2-amis-schema.js +1 -1
  115. package/esm/utils/keyToPath.js +1 -1
  116. package/esm/utils/labelToString.js +1 -1
  117. package/esm/utils/makeSorter.js +1 -1
  118. package/esm/utils/math.js +1 -1
  119. package/esm/utils/memoryParse.d.ts +2 -1
  120. package/esm/utils/memoryParse.js +10 -6
  121. package/esm/utils/normalizeLink.js +1 -1
  122. package/esm/utils/normalizeOptions.js +1 -1
  123. package/esm/utils/object.d.ts +2 -4
  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/printElement.js +1 -1
  131. package/esm/utils/renderer-event.js +1 -1
  132. package/esm/utils/replaceText.js +1 -1
  133. package/esm/utils/resize-sensor.js +30 -1
  134. package/esm/utils/resolveCondition.js +2 -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 +2 -1
  143. package/esm/utils/toNumber.js +1 -1
  144. package/esm/utils/tokenize.js +1 -1
  145. package/esm/utils/tpl-builtin.js +2 -1
  146. package/esm/utils/tpl-lodash.js +2 -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 +2 -1
  151. package/esm/utils/visitedCache.d.ts +46 -0
  152. package/esm/utils/visitedCache.js +124 -0
  153. package/lib/Root.js +1 -1
  154. package/lib/RootRenderer.js +23 -1
  155. package/lib/SchemaRenderer.d.ts +0 -1
  156. package/lib/SchemaRenderer.js +41 -18
  157. package/lib/Scoped.js +2 -1
  158. package/lib/StatusScoped.js +1 -1
  159. package/lib/WithRootStore.js +1 -1
  160. package/lib/WithStore.js +8 -8
  161. package/lib/actions/Action.js +2 -1
  162. package/lib/actions/AjaxAction.js +1 -1
  163. package/lib/actions/BreakAction.js +1 -1
  164. package/lib/actions/BroadcastAction.js +1 -1
  165. package/lib/actions/CmptAction.js +1 -1
  166. package/lib/actions/ContinueAction.js +1 -1
  167. package/lib/actions/CopyAction.js +1 -1
  168. package/lib/actions/CustomAction.js +2 -1
  169. package/lib/actions/DialogAction.js +3 -1
  170. package/lib/actions/DrawerAction.js +2 -1
  171. package/lib/actions/EmailAction.js +1 -1
  172. package/lib/actions/EventAction.js +2 -1
  173. package/lib/actions/LinkAction.js +1 -1
  174. package/lib/actions/LoopAction.js +2 -1
  175. package/lib/actions/PageAction.js +1 -1
  176. package/lib/actions/ParallelAction.js +1 -1
  177. package/lib/actions/PrintAction.js +1 -1
  178. package/lib/actions/StatusAction.js +1 -1
  179. package/lib/actions/SwitchAction.js +1 -1
  180. package/lib/actions/ToastAction.js +1 -1
  181. package/lib/actions/WaitAction.js +1 -1
  182. package/lib/components/CustomStyle.js +1 -1
  183. package/lib/components/ErrorBoundary.js +1 -1
  184. package/lib/components/LazyComponent.d.ts +40 -2
  185. package/lib/components/LazyComponent.js +14 -7
  186. package/lib/components/Overlay.js +2 -1
  187. package/lib/components/PopOver.d.ts +1 -1
  188. package/lib/components/PopOver.js +2 -1
  189. package/lib/env.js +1 -1
  190. package/lib/envOverwrite.js +1 -1
  191. package/lib/factory.d.ts +13 -2
  192. package/lib/factory.js +161 -44
  193. package/lib/index.d.ts +4 -4
  194. package/lib/index.js +10 -2
  195. package/lib/locale.js +2 -1
  196. package/lib/polyfills.js +1 -1
  197. package/lib/renderers/Form.js +41 -15
  198. package/lib/renderers/Item.d.ts +98 -13
  199. package/lib/renderers/Item.js +163 -124
  200. package/lib/renderers/Options.d.ts +3 -3
  201. package/lib/renderers/Options.js +43 -19
  202. package/lib/renderers/Placeholder.js +1 -1
  203. package/lib/renderers/builtin.js +1 -1
  204. package/lib/renderers/register.js +1 -1
  205. package/lib/renderers/wrapControl.js +2 -1
  206. package/lib/store/app.js +2 -1
  207. package/lib/store/combo.d.ts +432 -25
  208. package/lib/store/combo.js +1 -1
  209. package/lib/store/crud.js +3 -2
  210. package/lib/store/form.d.ts +180 -11
  211. package/lib/store/form.js +2 -1
  212. package/lib/store/formItem.d.ts +5 -0
  213. package/lib/store/formItem.js +30 -8
  214. package/lib/store/iRenderer.js +2 -1
  215. package/lib/store/index.d.ts +1 -0
  216. package/lib/store/index.js +3 -1
  217. package/lib/store/list.js +1 -1
  218. package/lib/store/manager.js +1 -1
  219. package/lib/store/modal.js +1 -1
  220. package/lib/store/node.js +1 -1
  221. package/lib/store/pagination.js +2 -1
  222. package/lib/store/root.d.ts +2 -0
  223. package/lib/store/root.js +44 -19
  224. package/lib/store/service.js +2 -1
  225. package/lib/store/status.js +1 -1
  226. package/lib/store/table.d.ts +399 -42
  227. package/lib/store/table.js +84 -54
  228. package/lib/store/table2.js +1 -1
  229. package/lib/theme.js +1 -1
  230. package/lib/types.d.ts +4 -2
  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 +21 -1
  238. package/lib/utils/api.js +136 -40
  239. package/lib/utils/arraySlice.js +1 -1
  240. package/lib/utils/attachmentAdpator.js +1 -1
  241. package/lib/utils/autobind.js +1 -1
  242. package/lib/utils/browser.js +1 -1
  243. package/lib/utils/columnsSplit.js +1 -1
  244. package/lib/utils/concatData.js +1 -1
  245. package/lib/utils/dataMapping.js +1 -1
  246. package/lib/utils/date.js +1 -1
  247. package/lib/utils/debug.js +18 -4
  248. package/lib/utils/decodeEntity.js +1 -1
  249. package/lib/utils/dom.js +1 -1
  250. package/lib/utils/errors.js +1 -1
  251. package/lib/utils/escapeHtml.js +1 -1
  252. package/lib/utils/filter-schema.js +1 -1
  253. package/lib/utils/filter.js +1 -1
  254. package/lib/utils/formatDuration.js +1 -1
  255. package/lib/utils/formula.js +2 -1
  256. package/lib/utils/getVariable.js +1 -1
  257. package/lib/utils/grammar.js +1 -1
  258. package/lib/utils/handleAction.js +1 -1
  259. package/lib/utils/helper.d.ts +4 -1
  260. package/lib/utils/helper.js +19 -3
  261. package/lib/utils/highlight.js +1 -1
  262. package/lib/utils/icon.js +1 -1
  263. package/lib/utils/image.js +1 -1
  264. package/lib/utils/isPureVariable.js +2 -2
  265. package/lib/utils/json-schema-2-amis-schema.js +1 -1
  266. package/lib/utils/keyToPath.js +1 -1
  267. package/lib/utils/labelToString.js +1 -1
  268. package/lib/utils/makeSorter.js +1 -1
  269. package/lib/utils/math.js +1 -1
  270. package/lib/utils/memoryParse.d.ts +2 -1
  271. package/lib/utils/memoryParse.js +10 -6
  272. package/lib/utils/normalizeLink.js +1 -1
  273. package/lib/utils/normalizeOptions.js +1 -1
  274. package/lib/utils/object.d.ts +2 -4
  275. package/lib/utils/object.js +1 -1
  276. package/lib/utils/offset.js +1 -1
  277. package/lib/utils/offsetParent.js +1 -1
  278. package/lib/utils/optionValueCompare.js +1 -1
  279. package/lib/utils/position.js +1 -1
  280. package/lib/utils/prettyBytes.js +1 -1
  281. package/lib/utils/printElement.js +1 -1
  282. package/lib/utils/renderer-event.js +1 -1
  283. package/lib/utils/replaceText.js +1 -1
  284. package/lib/utils/resize-sensor.js +30 -1
  285. package/lib/utils/resolveCondition.js +2 -1
  286. package/lib/utils/resolveVariable.js +1 -1
  287. package/lib/utils/resolveVariableAndFilter.js +1 -1
  288. package/lib/utils/resolveVariableAndFilterForAsync.js +1 -1
  289. package/lib/utils/scrollPosition.js +1 -1
  290. package/lib/utils/string2regExp.js +1 -1
  291. package/lib/utils/stripNumber.js +1 -1
  292. package/lib/utils/style-helper.js +1 -1
  293. package/lib/utils/style.js +2 -1
  294. package/lib/utils/toNumber.js +1 -1
  295. package/lib/utils/tokenize.js +1 -1
  296. package/lib/utils/tpl-builtin.js +2 -1
  297. package/lib/utils/tpl-lodash.js +2 -1
  298. package/lib/utils/tpl.js +1 -1
  299. package/lib/utils/uncontrollable.js +1 -1
  300. package/lib/utils/validateId.js +1 -1
  301. package/lib/utils/validations.js +2 -1
  302. package/lib/utils/visitedCache.d.ts +46 -0
  303. package/lib/utils/visitedCache.js +128 -0
  304. package/package.json +2 -2
package/esm/utils/date.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -386,11 +386,18 @@ function debug(cat, msg, ext) {
386
386
  console.groupCollapsed('[amis debug]', msg);
387
387
  console.debug(ext);
388
388
  console.groupEnd();
389
+ var extStr = '';
390
+ try {
391
+ extStr = JSON.stringify(ext);
392
+ }
393
+ catch (e) {
394
+ console.error(e);
395
+ }
389
396
  var log = {
390
397
  cat: cat,
391
398
  level: 'debug',
392
399
  msg: msg,
393
- ext: JSON.stringify(ext)
400
+ ext: extStr
394
401
  };
395
402
  store.logs.push(log);
396
403
  }
@@ -403,11 +410,18 @@ function warning(cat, msg, ext) {
403
410
  if (!isEnabled) {
404
411
  return;
405
412
  }
413
+ var extStr = '';
414
+ try {
415
+ extStr = JSON.stringify(ext);
416
+ }
417
+ catch (e) {
418
+ console.error(e);
419
+ }
406
420
  var log = {
407
421
  cat: cat,
408
422
  level: 'warn',
409
423
  msg: msg,
410
- ext: JSON.stringify(ext)
424
+ ext: extStr
411
425
  };
412
426
  console.groupCollapsed('amis debug', msg);
413
427
  console.trace(log);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/utils/dom.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -12,6 +12,7 @@ import 'tslib';
12
12
  import 'moment';
13
13
  import 'lodash/isPlainObject';
14
14
  import { getVariable } from './getVariable.js';
15
+ import './memoryParse.js';
15
16
  import '@rc-component/mini-decimal';
16
17
  import { resolveVariableAndFilter } from './resolveVariableAndFilter.js';
17
18
  import './filter.js';
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -8,6 +8,7 @@ import { cloneObject, createObject, deleteVariable, extendObject, isObject, setV
8
8
  import { string2regExp } from './string2regExp';
9
9
  import { getVariable } from './getVariable';
10
10
  import { keyToPath } from './keyToPath';
11
+ import type { IStatusStore } from '../store/status';
11
12
  export { createObject, cloneObject, isObject, string2regExp, getVariable, setVariable, deleteVariable, keyToPath, extendObject };
12
13
  export declare function preventDefault(event: TouchEvent | Event): void;
13
14
  export declare function isMobile(): any;
@@ -52,11 +53,13 @@ export declare function hasVisibleExpression(schema: {
52
53
  hidden?: boolean;
53
54
  }): boolean;
54
55
  export declare function isVisible(schema: {
56
+ id?: string;
57
+ name?: string;
55
58
  visibleOn?: string;
56
59
  hiddenOn?: string;
57
60
  visible?: boolean;
58
61
  hidden?: boolean;
59
- }, data?: object): boolean;
62
+ }, data?: object, statusStore?: IStatusStore): any;
60
63
  export declare function isUnfolded(node: any, config: {
61
64
  foldedField?: string;
62
65
  unfoldedField?: string;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -14,7 +14,7 @@ import isNumber from 'lodash/isNumber';
14
14
  import isString from 'lodash/isString';
15
15
  import qs from 'qs';
16
16
  import { compile } from 'path-to-regexp';
17
- import { evalExpressionWithConditionBuilder, evalExpression, filter } from './tpl.js';
17
+ import { filter, evalExpressionWithConditionBuilder, evalExpression } from './tpl.js';
18
18
  import { autobindMethod } from './autobind.js';
19
19
  import 'amis-formula';
20
20
  import 'moment';
@@ -25,12 +25,14 @@ import { isPureVariable } from './isPureVariable.js';
25
25
  import '@rc-component/mini-decimal';
26
26
  import { resolveVariable } from './resolveVariable.js';
27
27
  import { resolveVariableAndFilter } from './resolveVariableAndFilter.js';
28
+ import './memoryParse.js';
28
29
  import './filter.js';
29
30
  export { string2regExp } from './string2regExp.js';
30
31
  export { getVariable } from './getVariable.js';
31
32
  import { keyToPath } from './keyToPath.js';
32
33
  export { keyToPath } from './keyToPath.js';
33
34
  import { isExpression, replaceExpression } from './formula.js';
35
+ import { isAlive } from 'mobx-state-tree';
34
36
 
35
37
  function preventDefault(event) {
36
38
  if (typeof event.cancelable !== 'boolean' || event.cancelable) {
@@ -283,7 +285,19 @@ function makeColumnClassBuild(steps, classNameTpl) {
283
285
  function hasVisibleExpression(schema) {
284
286
  return !!(schema.visibleOn || schema.hiddenOn);
285
287
  }
286
- function isVisible(schema, data) {
288
+ function isVisible(schema, data, statusStore) {
289
+ var _a;
290
+ // 有状态时,状态优先
291
+ if ((schema.id || schema.name) && statusStore) {
292
+ var id = filter(schema.id, data);
293
+ var name_1 = filter(schema.name, data);
294
+ var visible = isAlive(statusStore)
295
+ ? (_a = statusStore.visibleState[id]) !== null && _a !== void 0 ? _a : statusStore.visibleState[name_1]
296
+ : undefined;
297
+ if (typeof visible !== 'undefined') {
298
+ return visible;
299
+ }
300
+ }
287
301
  return !(schema.hidden ||
288
302
  schema.visible === false ||
289
303
  (schema.hiddenOn &&
@@ -415,7 +429,9 @@ function difference(object, base, keepProps) {
415
429
  result_1[key] = a;
416
430
  }
417
431
  // isEquals 里面没有处理好递归引用对象的情况
418
- if (!isObjectShallowModified(a, b, true, undefined, undefined, 10)) {
432
+ if (object.hasOwnProperty(key) && // 其中一个不是自己的属性,就不要比对了
433
+ base.hasOwnProperty(key) &&
434
+ !isObjectShallowModified(a, b, true, undefined, undefined, 10)) {
419
435
  return;
420
436
  }
421
437
  if (!object.hasOwnProperty(key)) {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/utils/icon.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -10,7 +10,7 @@ function isPureVariable(path) {
10
10
  try {
11
11
  var ast = memoryParse(path);
12
12
  // 只有一个成员说明是纯表达式模式
13
- return ast.body.length === 1 && ast.body[0].type === 'script';
13
+ return (ast === null || ast === void 0 ? void 0 : ast.body.length) === 1 && ast.body[0].type === 'script';
14
14
  }
15
15
  catch (err) {
16
16
  return false;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/utils/math.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,3 +1,4 @@
1
+ import type { ASTNode } from 'amis-formula';
1
2
  export declare function memoryParse(input: string, options?: {
2
3
  /**
3
4
  * 直接是运算表达式?还是从模板开始 ${} 里面才算运算表达式
@@ -14,4 +15,4 @@ export declare function memoryParse(input: string, options?: {
14
15
  */
15
16
  allowFilter?: boolean;
16
17
  variableNamespaces?: Array<string>;
17
- }): any;
18
+ }): ASTNode | undefined;
@@ -1,25 +1,29 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
6
6
  import { parse } from 'amis-formula';
7
+ import VisitedCache from './visitedCache.js';
7
8
 
8
- var cache = {};
9
+ // NOTE 缓存前40条表达式
10
+ var cache = new VisitedCache(40);
9
11
  function memoryParse(input, options) {
10
12
  if (options === void 0) { options = {
11
13
  evalMode: false
12
14
  }; }
13
- // @todo 优化内存缓存释放,比如只缓存最高频的模版
15
+ // 优化内存缓存释放,比如只缓存最高频的模版
14
16
  if (typeof input !== 'string') {
15
17
  return;
16
18
  }
17
19
  var key = input + JSON.stringify(options);
18
- if (cache[key]) {
19
- return cache[key];
20
+ // get cache result
21
+ if (cache.has(key)) {
22
+ return cache.get(key);
20
23
  }
24
+ // run parse function and cache
21
25
  var ast = parse(input, options);
22
- cache[key] = ast;
26
+ cache.set(key, ast);
23
27
  return ast;
24
28
  }
25
29
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,8 +1,6 @@
1
- export declare function createObject(superProps?: {
1
+ export declare function createObject<P extends {
2
2
  [propName: string]: any;
3
- }, props?: {
4
- [propName: string]: any;
5
- }, properties?: any): object;
3
+ } | null>(superProps?: P, props?: P, properties?: any): object;
6
4
  export declare function extractObjectChain(value: any): object[];
7
5
  export declare function createObjectFromChain(chain: Array<object>): object;
8
6
  /**
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -163,6 +163,35 @@ function resizeSensor(element, callback, once, type) {
163
163
  if (!element) {
164
164
  return function () { };
165
165
  }
166
+ // 优先用 ResizeObserver
167
+ if (typeof ResizeObserver !== 'undefined') {
168
+ var rect = element.getBoundingClientRect();
169
+ var originWidth_1 = rect.width;
170
+ var originHeight_1 = rect.height;
171
+ var observer_1 = new ResizeObserver(function (entries) {
172
+ if (once) {
173
+ observer_1.disconnect();
174
+ }
175
+ if (type === 'both') {
176
+ callback();
177
+ }
178
+ else {
179
+ var entry = entries[0];
180
+ var cr = entry.contentRect;
181
+ if ((type === 'width' && cr.width !== originWidth_1) ||
182
+ (type === 'height' && cr.height !== originHeight_1)) {
183
+ callback();
184
+ originWidth_1 = cr.width;
185
+ originHeight_1 = cr.height;
186
+ }
187
+ }
188
+ });
189
+ observer_1.observe(element);
190
+ return function () {
191
+ observer_1.disconnect();
192
+ };
193
+ }
194
+ // 不支持 ResizeObserver 的话,用 polyfill
166
195
  var disposeEvent = undefined;
167
196
  if (once) {
168
197
  disposeEvent = attachResizeEvent(element, function () {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -14,6 +14,7 @@ import moment from 'moment';
14
14
  import capitalize from 'lodash/capitalize';
15
15
  import 'amis-formula';
16
16
  import 'lodash/isPlainObject';
17
+ import './memoryParse.js';
17
18
  import { isPureVariable } from './isPureVariable.js';
18
19
  import '@rc-component/mini-decimal';
19
20
  import { resolveVariableAndFilter } from './resolveVariableAndFilter.js';
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -7,6 +7,7 @@ import 'tslib';
7
7
  import 'amis-formula';
8
8
  import 'moment';
9
9
  import 'lodash/isPlainObject';
10
+ import './memoryParse.js';
10
11
  import '@rc-component/mini-decimal';
11
12
  import { resolveVariableAndFilter } from './resolveVariableAndFilter.js';
12
13
  import './filter.js';
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -7,6 +7,7 @@ import { __awaiter, __generator } from 'tslib';
7
7
  export { getFilters, registerFilter, registerFunction } from 'amis-formula';
8
8
  import 'moment';
9
9
  import 'lodash/isPlainObject';
10
+ import './memoryParse.js';
10
11
  import { tokenize } from './tokenize.js';
11
12
  export { tokenize } from './tokenize.js';
12
13
  import '@rc-component/mini-decimal';
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -8,6 +8,7 @@ import template from 'lodash/template';
8
8
  import { getFilters } from 'amis-formula';
9
9
  import moment from 'moment';
10
10
  import 'lodash/isPlainObject';
11
+ import './memoryParse.js';
11
12
  import '@rc-component/mini-decimal';
12
13
  import './filter.js';
13
14
 
package/esm/utils/tpl.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.9.0-rc.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5