amis-core 6.7.0 → 6.8.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 (285) hide show
  1. package/esm/Root.js +1 -1
  2. package/esm/RootRenderer.js +1 -1
  3. package/esm/SchemaRenderer.d.ts +0 -1
  4. package/esm/SchemaRenderer.js +15 -6
  5. package/esm/Scoped.js +2 -1
  6. package/esm/StatusScoped.js +1 -1
  7. package/esm/WithRootStore.js +1 -1
  8. package/esm/WithStore.js +8 -8
  9. package/esm/actions/Action.js +2 -1
  10. package/esm/actions/AjaxAction.js +1 -1
  11. package/esm/actions/BreakAction.js +1 -1
  12. package/esm/actions/BroadcastAction.js +1 -1
  13. package/esm/actions/CmptAction.js +1 -1
  14. package/esm/actions/ContinueAction.js +1 -1
  15. package/esm/actions/CopyAction.js +1 -1
  16. package/esm/actions/CustomAction.js +2 -1
  17. package/esm/actions/DialogAction.js +3 -1
  18. package/esm/actions/DrawerAction.js +2 -1
  19. package/esm/actions/EmailAction.js +1 -1
  20. package/esm/actions/EventAction.js +2 -1
  21. package/esm/actions/LinkAction.js +1 -1
  22. package/esm/actions/LoopAction.js +2 -1
  23. package/esm/actions/PageAction.js +1 -1
  24. package/esm/actions/ParallelAction.js +1 -1
  25. package/esm/actions/PrintAction.js +1 -1
  26. package/esm/actions/StatusAction.js +1 -1
  27. package/esm/actions/SwitchAction.js +1 -1
  28. package/esm/actions/ToastAction.js +1 -1
  29. package/esm/actions/WaitAction.js +1 -1
  30. package/esm/components/CustomStyle.js +1 -1
  31. package/esm/components/ErrorBoundary.js +1 -1
  32. package/esm/components/LazyComponent.js +1 -1
  33. package/esm/components/Overlay.js +2 -1
  34. package/esm/components/PopOver.js +2 -1
  35. package/esm/env.js +1 -1
  36. package/esm/envOverwrite.js +1 -1
  37. package/esm/factory.js +1 -1
  38. package/esm/index.js +2 -2
  39. package/esm/locale.js +2 -1
  40. package/esm/polyfills.js +1 -1
  41. package/esm/renderers/Form.js +42 -16
  42. package/esm/renderers/Item.d.ts +97 -12
  43. package/esm/renderers/Item.js +159 -120
  44. package/esm/renderers/Options.js +2 -1
  45. package/esm/renderers/Placeholder.js +1 -1
  46. package/esm/renderers/builtin.js +1 -1
  47. package/esm/renderers/register.js +1 -1
  48. package/esm/renderers/wrapControl.js +2 -1
  49. package/esm/store/app.js +2 -1
  50. package/esm/store/combo.d.ts +408 -0
  51. package/esm/store/combo.js +1 -1
  52. package/esm/store/crud.js +2 -1
  53. package/esm/store/form.d.ts +170 -0
  54. package/esm/store/form.js +2 -1
  55. package/esm/store/formItem.d.ts +5 -0
  56. package/esm/store/formItem.js +30 -8
  57. package/esm/store/iRenderer.js +2 -1
  58. package/esm/store/index.js +1 -1
  59. package/esm/store/list.js +1 -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 +2 -1
  64. package/esm/store/root.js +2 -1
  65. package/esm/store/service.js +2 -1
  66. package/esm/store/status.js +1 -1
  67. package/esm/store/table.d.ts +379 -21
  68. package/esm/store/table.js +84 -54
  69. package/esm/store/table2.js +1 -1
  70. package/esm/theme.js +1 -1
  71. package/esm/utils/Animation.js +1 -1
  72. package/esm/utils/ColorScale.js +1 -1
  73. package/esm/utils/DataSchema.js +1 -1
  74. package/esm/utils/DataScope.js +1 -1
  75. package/esm/utils/RootClose.js +1 -1
  76. package/esm/utils/SimpleMap.js +1 -1
  77. package/esm/utils/api.js +1 -1
  78. package/esm/utils/arraySlice.js +1 -1
  79. package/esm/utils/attachmentAdpator.js +1 -1
  80. package/esm/utils/autobind.js +1 -1
  81. package/esm/utils/browser.js +1 -1
  82. package/esm/utils/columnsSplit.js +1 -1
  83. package/esm/utils/concatData.js +1 -1
  84. package/esm/utils/dataMapping.js +1 -1
  85. package/esm/utils/date.js +1 -1
  86. package/esm/utils/debug.js +17 -3
  87. package/esm/utils/decodeEntity.js +1 -1
  88. package/esm/utils/dom.js +1 -1
  89. package/esm/utils/errors.js +1 -1
  90. package/esm/utils/escapeHtml.js +1 -1
  91. package/esm/utils/filter-schema.js +1 -1
  92. package/esm/utils/filter.js +1 -1
  93. package/esm/utils/formatDuration.js +1 -1
  94. package/esm/utils/formula.js +2 -1
  95. package/esm/utils/getVariable.js +1 -1
  96. package/esm/utils/grammar.js +1 -1
  97. package/esm/utils/handleAction.js +1 -1
  98. package/esm/utils/helper.d.ts +4 -1
  99. package/esm/utils/helper.js +20 -4
  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 +2 -2
  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.d.ts +2 -1
  110. package/esm/utils/memoryParse.js +10 -6
  111. package/esm/utils/normalizeLink.js +1 -1
  112. package/esm/utils/normalizeOptions.js +1 -1
  113. package/esm/utils/object.d.ts +2 -4
  114. package/esm/utils/object.js +1 -1
  115. package/esm/utils/offset.js +1 -1
  116. package/esm/utils/offsetParent.js +1 -1
  117. package/esm/utils/optionValueCompare.js +1 -1
  118. package/esm/utils/position.js +1 -1
  119. package/esm/utils/prettyBytes.js +1 -1
  120. package/esm/utils/printElement.js +1 -1
  121. package/esm/utils/renderer-event.js +1 -1
  122. package/esm/utils/replaceText.js +1 -1
  123. package/esm/utils/resize-sensor.js +30 -1
  124. package/esm/utils/resolveCondition.js +2 -1
  125. package/esm/utils/resolveVariable.js +1 -1
  126. package/esm/utils/resolveVariableAndFilter.js +1 -1
  127. package/esm/utils/resolveVariableAndFilterForAsync.js +1 -1
  128. package/esm/utils/scrollPosition.js +1 -1
  129. package/esm/utils/string2regExp.js +1 -1
  130. package/esm/utils/stripNumber.js +1 -1
  131. package/esm/utils/style-helper.js +1 -1
  132. package/esm/utils/style.js +2 -1
  133. package/esm/utils/toNumber.js +1 -1
  134. package/esm/utils/tokenize.js +1 -1
  135. package/esm/utils/tpl-builtin.js +2 -1
  136. package/esm/utils/tpl-lodash.js +2 -1
  137. package/esm/utils/tpl.js +1 -1
  138. package/esm/utils/uncontrollable.js +1 -1
  139. package/esm/utils/validateId.js +1 -1
  140. package/esm/utils/validations.js +2 -1
  141. package/esm/utils/visitedCache.d.ts +46 -0
  142. package/esm/utils/visitedCache.js +124 -0
  143. package/lib/Root.js +1 -1
  144. package/lib/RootRenderer.js +1 -1
  145. package/lib/SchemaRenderer.d.ts +0 -1
  146. package/lib/SchemaRenderer.js +15 -6
  147. package/lib/Scoped.js +2 -1
  148. package/lib/StatusScoped.js +1 -1
  149. package/lib/WithRootStore.js +1 -1
  150. package/lib/WithStore.js +8 -8
  151. package/lib/actions/Action.js +2 -1
  152. package/lib/actions/AjaxAction.js +1 -1
  153. package/lib/actions/BreakAction.js +1 -1
  154. package/lib/actions/BroadcastAction.js +1 -1
  155. package/lib/actions/CmptAction.js +1 -1
  156. package/lib/actions/ContinueAction.js +1 -1
  157. package/lib/actions/CopyAction.js +1 -1
  158. package/lib/actions/CustomAction.js +2 -1
  159. package/lib/actions/DialogAction.js +3 -1
  160. package/lib/actions/DrawerAction.js +2 -1
  161. package/lib/actions/EmailAction.js +1 -1
  162. package/lib/actions/EventAction.js +2 -1
  163. package/lib/actions/LinkAction.js +1 -1
  164. package/lib/actions/LoopAction.js +2 -1
  165. package/lib/actions/PageAction.js +1 -1
  166. package/lib/actions/ParallelAction.js +1 -1
  167. package/lib/actions/PrintAction.js +1 -1
  168. package/lib/actions/StatusAction.js +1 -1
  169. package/lib/actions/SwitchAction.js +1 -1
  170. package/lib/actions/ToastAction.js +1 -1
  171. package/lib/actions/WaitAction.js +1 -1
  172. package/lib/components/CustomStyle.js +1 -1
  173. package/lib/components/ErrorBoundary.js +1 -1
  174. package/lib/components/LazyComponent.js +1 -1
  175. package/lib/components/Overlay.js +2 -1
  176. package/lib/components/PopOver.js +2 -1
  177. package/lib/env.js +1 -1
  178. package/lib/envOverwrite.js +1 -1
  179. package/lib/factory.js +1 -1
  180. package/lib/index.js +2 -2
  181. package/lib/locale.js +2 -1
  182. package/lib/polyfills.js +1 -1
  183. package/lib/renderers/Form.js +41 -15
  184. package/lib/renderers/Item.d.ts +98 -13
  185. package/lib/renderers/Item.js +158 -119
  186. package/lib/renderers/Options.js +2 -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 +2 -1
  191. package/lib/store/app.js +2 -1
  192. package/lib/store/combo.d.ts +408 -0
  193. package/lib/store/combo.js +1 -1
  194. package/lib/store/crud.js +2 -1
  195. package/lib/store/form.d.ts +170 -0
  196. package/lib/store/form.js +2 -1
  197. package/lib/store/formItem.d.ts +5 -0
  198. package/lib/store/formItem.js +30 -8
  199. package/lib/store/iRenderer.js +2 -1
  200. package/lib/store/index.js +1 -1
  201. package/lib/store/list.js +1 -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 +2 -1
  206. package/lib/store/root.js +2 -1
  207. package/lib/store/service.js +2 -1
  208. package/lib/store/status.js +1 -1
  209. package/lib/store/table.d.ts +379 -21
  210. package/lib/store/table.js +84 -54
  211. package/lib/store/table2.js +1 -1
  212. package/lib/theme.js +1 -1
  213. package/lib/utils/Animation.js +1 -1
  214. package/lib/utils/ColorScale.js +1 -1
  215. package/lib/utils/DataSchema.js +1 -1
  216. package/lib/utils/DataScope.js +1 -1
  217. package/lib/utils/RootClose.js +1 -1
  218. package/lib/utils/SimpleMap.js +1 -1
  219. package/lib/utils/api.js +1 -1
  220. package/lib/utils/arraySlice.js +1 -1
  221. package/lib/utils/attachmentAdpator.js +1 -1
  222. package/lib/utils/autobind.js +1 -1
  223. package/lib/utils/browser.js +1 -1
  224. package/lib/utils/columnsSplit.js +1 -1
  225. package/lib/utils/concatData.js +1 -1
  226. package/lib/utils/dataMapping.js +1 -1
  227. package/lib/utils/date.js +1 -1
  228. package/lib/utils/debug.js +17 -3
  229. package/lib/utils/decodeEntity.js +1 -1
  230. package/lib/utils/dom.js +1 -1
  231. package/lib/utils/errors.js +1 -1
  232. package/lib/utils/escapeHtml.js +1 -1
  233. package/lib/utils/filter-schema.js +1 -1
  234. package/lib/utils/filter.js +1 -1
  235. package/lib/utils/formatDuration.js +1 -1
  236. package/lib/utils/formula.js +2 -1
  237. package/lib/utils/getVariable.js +1 -1
  238. package/lib/utils/grammar.js +1 -1
  239. package/lib/utils/handleAction.js +1 -1
  240. package/lib/utils/helper.d.ts +4 -1
  241. package/lib/utils/helper.js +19 -3
  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 +2 -2
  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.d.ts +2 -1
  252. package/lib/utils/memoryParse.js +10 -6
  253. package/lib/utils/normalizeLink.js +1 -1
  254. package/lib/utils/normalizeOptions.js +1 -1
  255. package/lib/utils/object.d.ts +2 -4
  256. package/lib/utils/object.js +1 -1
  257. package/lib/utils/offset.js +1 -1
  258. package/lib/utils/offsetParent.js +1 -1
  259. package/lib/utils/optionValueCompare.js +1 -1
  260. package/lib/utils/position.js +1 -1
  261. package/lib/utils/prettyBytes.js +1 -1
  262. package/lib/utils/printElement.js +1 -1
  263. package/lib/utils/renderer-event.js +1 -1
  264. package/lib/utils/replaceText.js +1 -1
  265. package/lib/utils/resize-sensor.js +30 -1
  266. package/lib/utils/resolveCondition.js +2 -1
  267. package/lib/utils/resolveVariable.js +1 -1
  268. package/lib/utils/resolveVariableAndFilter.js +1 -1
  269. package/lib/utils/resolveVariableAndFilterForAsync.js +1 -1
  270. package/lib/utils/scrollPosition.js +1 -1
  271. package/lib/utils/string2regExp.js +1 -1
  272. package/lib/utils/stripNumber.js +1 -1
  273. package/lib/utils/style-helper.js +1 -1
  274. package/lib/utils/style.js +2 -1
  275. package/lib/utils/toNumber.js +1 -1
  276. package/lib/utils/tokenize.js +1 -1
  277. package/lib/utils/tpl-builtin.js +2 -1
  278. package/lib/utils/tpl-lodash.js +2 -1
  279. package/lib/utils/tpl.js +1 -1
  280. package/lib/utils/uncontrollable.js +1 -1
  281. package/lib/utils/validateId.js +1 -1
  282. package/lib/utils/validations.js +2 -1
  283. package/lib/utils/visitedCache.d.ts +46 -0
  284. package/lib/utils/visitedCache.js +128 -0
  285. package/package.json +2 -2
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -26,6 +26,7 @@ var mobx = require('mobx');
26
26
  require('amis-formula');
27
27
  require('moment');
28
28
  require('lodash/isPlainObject');
29
+ require('./utils/memoryParse.js');
29
30
  require('@rc-component/mini-decimal');
30
31
  var resolveVariableAndFilter = require('./utils/resolveVariableAndFilter.js');
31
32
  require('./utils/filter.js');
@@ -101,10 +102,6 @@ var SchemaRenderer = /** @class */ (function (_super) {
101
102
  }, function () { return _this.forceUpdate(); });
102
103
  return _this;
103
104
  }
104
- SchemaRenderer.prototype.componentDidMount = function () {
105
- // 这里无法区分监听的是不是广播,所以又bind一下,主要是为了绑广播
106
- this.unbindEvent = rendererEvent.bindEvent(this.cRef);
107
- };
108
105
  SchemaRenderer.prototype.componentWillUnmount = function () {
109
106
  var _a, _b;
110
107
  (_a = this.reaction) === null || _a === void 0 ? void 0 : _a.call(this);
@@ -180,7 +177,15 @@ var SchemaRenderer = /** @class */ (function (_super) {
180
177
  };
181
178
  SchemaRenderer.prototype.childRef = function (ref) {
182
179
  var _this = this;
183
- while (ref && ref.getWrappedInstance) {
180
+ var _a;
181
+ // todo 这里有个问题,就是注意以下的这段注释
182
+ // > // 原来表单项的 visible: false 和 hidden: true 表单项的值和验证是有效的
183
+ // > 而 visibleOn 和 hiddenOn 是无效的,
184
+ // > 这个本来就是个bug,但是已经被广泛使用了
185
+ // > 我只能继续实现这个bug了
186
+ // 这样会让子组件去根据是 hidden 的情况去渲染个 null,这样会导致这里 ref 有值,但是 ref.getWrappedInstance() 为 null
187
+ // 这样会和直接渲染的组件时有些区别,至少 cRef 的指向是不一样的
188
+ while ((_a = ref === null || ref === void 0 ? void 0 : ref.getWrappedInstance) === null || _a === void 0 ? void 0 : _a.call(ref)) {
184
189
  ref = ref.getWrappedInstance();
185
190
  }
186
191
  if (ref && !ref.props) {
@@ -188,6 +193,10 @@ var SchemaRenderer = /** @class */ (function (_super) {
188
193
  get: function () { return _this.props; }
189
194
  });
190
195
  }
196
+ if (ref) {
197
+ // 这里无法区分监听的是不是广播,所以又bind一下,主要是为了绑广播
198
+ this.unbindEvent = rendererEvent.bindEvent(this.ref);
199
+ }
191
200
  this.cRef = ref;
192
201
  };
193
202
  SchemaRenderer.prototype.dispatchEvent = function (e, data, renderer // for didmount
package/lib/Scoped.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -19,6 +19,7 @@ var tokenize = require('./utils/tokenize.js');
19
19
  var isPureVariable = require('./utils/isPureVariable.js');
20
20
  require('@rc-component/mini-decimal');
21
21
  var getVariable = require('./utils/getVariable.js');
22
+ require('./utils/memoryParse.js');
22
23
  var dataMapping = require('./utils/dataMapping.js');
23
24
  require('./utils/filter.js');
24
25
  var helper = require('./utils/helper.js');
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.8.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.8.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.7.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -19,6 +19,7 @@ require('amis-formula');
19
19
  require('moment');
20
20
  var object = require('./utils/object.js');
21
21
  var tokenize = require('./utils/tokenize.js');
22
+ require('./utils/memoryParse.js');
22
23
  require('@rc-component/mini-decimal');
23
24
  var dataMapping = require('./utils/dataMapping.js');
24
25
  require('./utils/filter.js');
@@ -142,7 +143,7 @@ function HocStoreFactory(renderer) {
142
143
  (props.data &&
143
144
  prevProps.data &&
144
145
  props.data.__super !== prevProps.data.__super))) {
145
- store.initData(object.extendObject(props.data, tslib.__assign(tslib.__assign(tslib.__assign({}, (store.hasRemoteData ? store.data : null)), this.formatData(props.defaultData)), this.formatData(props.data))), ((_c = props.updatePristineAfterStoreDataReInit) !== null && _c !== void 0 ? _c : props.dataUpdatedAt !== prevProps.dataUpdatedAt) === false);
146
+ store.initData(object.extendObject(props.data, tslib.__assign(tslib.__assign(tslib.__assign(tslib.__assign({}, this.formatData(dataMapping.dataMapping(this.props.defaultData, this.props.data, ignoreSchemaProps))), (store.hasRemoteData ? store.data : null)), this.formatData(props.defaultData)), this.formatData(props.data))), ((_c = props.updatePristineAfterStoreDataReInit) !== null && _c !== void 0 ? _c : props.dataUpdatedAt !== prevProps.dataUpdatedAt) === false);
146
147
  }
147
148
  }
148
149
  else if (shouldSync === true ||
@@ -153,19 +154,18 @@ function HocStoreFactory(renderer) {
153
154
  (props.syncSuperStore !== false &&
154
155
  helper.isSuperDataModified(props.data, prevProps.data, store)))) {
155
156
  if (props.store && props.scope === props.data) {
156
- store.initData(object.createObject(props.store.data, props.syncSuperStore === false
157
- ? tslib.__assign({}, store.data) : helper.syncDataFromSuper(store.data, props.store.data, prevProps.scope, store, props.syncSuperStore === true)), ((_d = props.updatePristineAfterStoreDataReInit) !== null && _d !== void 0 ? _d : props.dataUpdatedAt !== prevProps.dataUpdatedAt) === false);
157
+ store.initData(object.createObject(props.store.data, tslib.__assign(tslib.__assign({}, this.formatData(dataMapping.dataMapping(this.props.defaultData, this.props.data, ignoreSchemaProps))), (props.syncSuperStore === false
158
+ ? tslib.__assign({}, store.data) : helper.syncDataFromSuper(store.data, props.store.data, prevProps.scope, store, props.syncSuperStore === true)))), ((_d = props.updatePristineAfterStoreDataReInit) !== null && _d !== void 0 ? _d : props.dataUpdatedAt !== prevProps.dataUpdatedAt) === false);
158
159
  }
159
160
  else if (props.data && props.data.__super) {
160
- store.initData(object.extendObject(props.data,
161
- // 有远程数据
161
+ store.initData(object.extendObject(props.data, tslib.__assign(tslib.__assign({}, this.formatData(dataMapping.dataMapping(this.props.defaultData, this.props.data, ignoreSchemaProps))), // 有远程数据
162
162
  // 或者顶级 store
163
- store.hasRemoteData || !store.path.includes('/')
163
+ (store.hasRemoteData || !store.path.includes('/')
164
164
  ? tslib.__assign(tslib.__assign({}, store.data), props.data) : // combo 不需要同步,如果要同步,在 Combo.tsx 里面已经实现了相关逻辑
165
165
  // 目前主要的问题是,如果 combo 中表单项名字和 combo 本身的名字一样,会导致里面的值会被覆盖成数组
166
166
  ((_e = props.store) === null || _e === void 0 ? void 0 : _e.storeType) === 'ComboStore'
167
167
  ? undefined
168
- : helper.syncDataFromSuper(tslib.__assign(tslib.__assign({}, store.pristineDiff), props.data), props.data.__super, prevProps.data.__super, store, false)), ((_f = props.updatePristineAfterStoreDataReInit) !== null && _f !== void 0 ? _f : props.dataUpdatedAt !== prevProps.dataUpdatedAt) === false);
168
+ : helper.syncDataFromSuper(tslib.__assign(tslib.__assign({}, store.pristineDiff), props.data), props.data.__super, prevProps.data.__super, store, false)))), ((_f = props.updatePristineAfterStoreDataReInit) !== null && _f !== void 0 ? _f : props.dataUpdatedAt !== prevProps.dataUpdatedAt) === false);
169
169
  }
170
170
  else {
171
171
  store.initData(object.createObject(props.scope, props.data), ((_g = props.updatePristineAfterStoreDataReInit) !== null && _g !== void 0 ? _g : props.dataUpdatedAt !== prevProps.dataUpdatedAt) === false);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -14,6 +14,7 @@ var tpl = require('../utils/tpl.js');
14
14
  require('amis-formula');
15
15
  require('moment');
16
16
  var object = require('../utils/object.js');
17
+ require('../utils/memoryParse.js');
17
18
  require('@rc-component/mini-decimal');
18
19
  var dataMapping = require('../utils/dataMapping.js');
19
20
  require('../utils/filter.js');
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.8.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.8.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.8.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.8.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.8.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.8.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.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -14,6 +14,7 @@ require('../utils/ColorScale.js');
14
14
  require('../utils/columnsSplit.js');
15
15
  require('lodash/isPlainObject');
16
16
  require('amis-formula');
17
+ require('../utils/memoryParse.js');
17
18
  require('../utils/DataSchema.js');
18
19
  require('../utils/DataScope.js');
19
20
  require('moment');
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -13,6 +13,7 @@ require('../utils/browser.js');
13
13
  require('../utils/ColorScale.js');
14
14
  require('../utils/columnsSplit.js');
15
15
  var object = require('../utils/object.js');
16
+ require('../utils/memoryParse.js');
16
17
  require('amis-formula');
17
18
  require('lodash/isPlainObject');
18
19
  require('../utils/DataSchema.js');
@@ -120,6 +121,7 @@ var CloseDialogAction = /** @class */ (function () {
120
121
  var _a, _b;
121
122
  return tslib.__awaiter(this, void 0, void 0, function () {
122
123
  return tslib.__generator(this, function (_c) {
124
+ // todo 支持 waitForAction,等待弹窗关闭后再执行后续动作
123
125
  if (action.componentId) {
124
126
  // 关闭指定弹窗
125
127
  event.context.scoped.closeById(action.componentId);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -13,6 +13,7 @@ require('../utils/browser.js');
13
13
  require('../utils/ColorScale.js');
14
14
  require('../utils/columnsSplit.js');
15
15
  var object = require('../utils/object.js');
16
+ require('../utils/memoryParse.js');
16
17
  require('amis-formula');
17
18
  require('lodash/isPlainObject');
18
19
  require('../utils/DataSchema.js');
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.8.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.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -13,6 +13,7 @@ require('../utils/browser.js');
13
13
  require('../utils/ColorScale.js');
14
14
  require('../utils/columnsSplit.js');
15
15
  var object = require('../utils/object.js');
16
+ require('../utils/memoryParse.js');
16
17
  require('amis-formula');
17
18
  require('lodash/isPlainObject');
18
19
  require('../utils/DataSchema.js');
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.8.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.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -13,6 +13,7 @@ var Action = require('./Action.js');
13
13
  require('amis-formula');
14
14
  require('moment');
15
15
  var object = require('../utils/object.js');
16
+ require('../utils/memoryParse.js');
16
17
  require('@rc-component/mini-decimal');
17
18
  var resolveVariable = require('../utils/resolveVariable.js');
18
19
  require('lodash/isPlainObject');
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.8.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.8.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.8.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.8.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.8.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.8.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.8.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.8.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.8.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.8.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.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -18,6 +18,7 @@ require('../utils/ColorScale.js');
18
18
  require('../utils/columnsSplit.js');
19
19
  require('lodash/isPlainObject');
20
20
  require('amis-formula');
21
+ require('../utils/memoryParse.js');
21
22
  require('../utils/DataSchema.js');
22
23
  require('../utils/DataScope.js');
23
24
  require('moment');
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -17,6 +17,7 @@ require('../utils/ColorScale.js');
17
17
  require('../utils/columnsSplit.js');
18
18
  require('lodash/isPlainObject');
19
19
  require('amis-formula');
20
+ require('../utils/memoryParse.js');
20
21
  require('../utils/DataSchema.js');
21
22
  require('../utils/DataScope.js');
22
23
  require('moment');
package/lib/env.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.8.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.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/lib/factory.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/lib/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -139,7 +139,7 @@ var _J$X_ = (__react_jsx__["default"] || __react_jsx__).createElement;
139
139
  (__react_jsx__["default"] || __react_jsx__).Fragment;
140
140
  var classPrefix = theme.getClassPrefix();
141
141
  // @ts-ignore
142
- var version = '6.7.0';
142
+ var version = '6.8.0';
143
143
  function render(schema, props, options, pathPrefix) {
144
144
  if (props === void 0) { props = {}; }
145
145
  if (options === void 0) { options = {}; }
package/lib/locale.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -14,6 +14,7 @@ var moment = require('moment');
14
14
  require('amis-formula');
15
15
  require('lodash/isPlainObject');
16
16
  var resolveVariable = require('./utils/resolveVariable.js');
17
+ require('./utils/memoryParse.js');
17
18
  require('@rc-component/mini-decimal');
18
19
  require('./utils/filter.js');
19
20
 
package/lib/polyfills.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.7.0
2
+ * amis-core v6.8.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.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -21,6 +21,7 @@ var Scoped = require('../Scoped.js');
21
21
  require('amis-formula');
22
22
  require('moment');
23
23
  var object = require('../utils/object.js');
24
+ require('../utils/memoryParse.js');
24
25
  require('@rc-component/mini-decimal');
25
26
  var dataMapping = require('../utils/dataMapping.js');
26
27
  require('../utils/filter.js');
@@ -110,7 +111,7 @@ var Form = /** @class */ (function (_super) {
110
111
  _this.blockRouting = _this.blockRouting.bind(_this);
111
112
  _this.beforePageUnload = _this.beforePageUnload.bind(_this);
112
113
  _this.formItemDispatchEvent = _this.formItemDispatchEvent.bind(_this);
113
- var store = props.store, canAccessSuperData = props.canAccessSuperData, persistData = props.persistData, simpleMode = props.simpleMode;
114
+ var store = props.store, canAccessSuperData = props.canAccessSuperData, persistData = props.persistData, simpleMode = props.simpleMode, formLazyChange = props.formLazyChange;
114
115
  store.setCanAccessSuperData(canAccessSuperData !== false);
115
116
  store.setPersistData(persistData);
116
117
  if (simpleMode) {
@@ -130,7 +131,7 @@ var Form = /** @class */ (function (_super) {
130
131
  // https://github.com/baidu/amis/issues/8773
131
132
  _this.toDispose.push(mobx.reaction(function () { return store.initedAt; }, function () {
132
133
  store.inited &&
133
- _this.lazyEmitChange(!!_this.props.submitOnChange, true);
134
+ (formLazyChange === false ? _this.emitChange : _this.lazyEmitChange)(!!_this.props.submitOnChange, true);
134
135
  }));
135
136
  return _this;
136
137
  }
@@ -489,29 +490,54 @@ var Form = /** @class */ (function (_super) {
489
490
  };
490
491
  Form.prototype.flush = function () {
491
492
  return tslib.__awaiter(this, void 0, void 0, function () {
492
- var hooks;
493
- return tslib.__generator(this, function (_a) {
494
- switch (_a.label) {
493
+ var hooks, hooks_1, hooks_1_1, hook, e_1_1;
494
+ var e_1, _a;
495
+ return tslib.__generator(this, function (_b) {
496
+ switch (_b.label) {
495
497
  case 0:
496
- _a.trys.push([0, , 4, 5]);
498
+ _b.trys.push([0, , 11, 12]);
497
499
  if (this.flushing) {
498
500
  return [2 /*return*/];
499
501
  }
500
502
  this.flushing = true;
501
503
  hooks = this.hooks['flush'] || [];
502
- return [4 /*yield*/, Promise.all(hooks.map(function (fn) { return fn(); }))];
504
+ _b.label = 1;
503
505
  case 1:
504
- _a.sent();
505
- if (!!this.emitting) return [3 /*break*/, 3];
506
- return [4 /*yield*/, this.lazyEmitChange.flush()];
506
+ _b.trys.push([1, 6, 7, 8]);
507
+ hooks_1 = tslib.__values(hooks), hooks_1_1 = hooks_1.next();
508
+ _b.label = 2;
507
509
  case 2:
508
- _a.sent();
509
- _a.label = 3;
510
- case 3: return [3 /*break*/, 5];
510
+ if (!!hooks_1_1.done) return [3 /*break*/, 5];
511
+ hook = hooks_1_1.value;
512
+ return [4 /*yield*/, hook()];
513
+ case 3:
514
+ _b.sent();
515
+ _b.label = 4;
511
516
  case 4:
517
+ hooks_1_1 = hooks_1.next();
518
+ return [3 /*break*/, 2];
519
+ case 5: return [3 /*break*/, 8];
520
+ case 6:
521
+ e_1_1 = _b.sent();
522
+ e_1 = { error: e_1_1 };
523
+ return [3 /*break*/, 8];
524
+ case 7:
525
+ try {
526
+ if (hooks_1_1 && !hooks_1_1.done && (_a = hooks_1.return)) _a.call(hooks_1);
527
+ }
528
+ finally { if (e_1) throw e_1.error; }
529
+ return [7 /*endfinally*/];
530
+ case 8:
531
+ if (!!this.emitting) return [3 /*break*/, 10];
532
+ return [4 /*yield*/, this.lazyEmitChange.flush()];
533
+ case 9:
534
+ _b.sent();
535
+ _b.label = 10;
536
+ case 10: return [3 /*break*/, 12];
537
+ case 11:
512
538
  this.flushing = false;
513
539
  return [7 /*endfinally*/];
514
- case 5: return [2 /*return*/];
540
+ case 12: return [2 /*return*/];
515
541
  }
516
542
  });
517
543
  });