amis-core 3.5.2 → 3.5.3

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 (269) hide show
  1. package/esm/Root.js +1 -1
  2. package/esm/RootRenderer.d.ts +1 -1
  3. package/esm/RootRenderer.js +2 -2
  4. package/esm/SchemaRenderer.js +1 -1
  5. package/esm/Scoped.js +2 -2
  6. package/esm/StatusScoped.js +1 -1
  7. package/esm/WithRootStore.js +1 -1
  8. package/esm/WithStore.js +1 -1
  9. package/esm/actions/Action.js +1 -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 +31 -32
  14. package/esm/actions/ContinueAction.js +1 -1
  15. package/esm/actions/CopyAction.js +1 -1
  16. package/esm/actions/CustomAction.js +1 -1
  17. package/esm/actions/DialogAction.js +1 -1
  18. package/esm/actions/DrawerAction.js +1 -1
  19. package/esm/actions/EmailAction.js +1 -1
  20. package/esm/actions/LinkAction.js +1 -1
  21. package/esm/actions/LoopAction.js +1 -1
  22. package/esm/actions/PageAction.js +1 -1
  23. package/esm/actions/ParallelAction.js +1 -1
  24. package/esm/actions/StatusAction.js +1 -1
  25. package/esm/actions/SwitchAction.js +1 -1
  26. package/esm/actions/ToastAction.js +1 -1
  27. package/esm/components/CustomStyle.js +1 -1
  28. package/esm/components/LazyComponent.js +1 -1
  29. package/esm/components/Overlay.js +1 -1
  30. package/esm/components/PopOver.js +1 -1
  31. package/esm/env.d.ts +9 -0
  32. package/esm/env.js +1 -1
  33. package/esm/envOverwrite.d.ts +1 -1
  34. package/esm/envOverwrite.js +15 -35
  35. package/esm/factory.js +1 -1
  36. package/esm/index.js +3 -3
  37. package/esm/locale.js +1 -1
  38. package/esm/polyfills.js +1 -1
  39. package/esm/renderers/Form.d.ts +9 -3
  40. package/esm/renderers/Form.js +50 -25
  41. package/esm/renderers/Item.js +1 -1
  42. package/esm/renderers/Options.d.ts +1 -1
  43. package/esm/renderers/Options.js +7 -6
  44. package/esm/renderers/Placeholder.js +1 -1
  45. package/esm/renderers/builtin.js +1 -1
  46. package/esm/renderers/register.js +1 -1
  47. package/esm/renderers/wrapControl.js +7 -12
  48. package/esm/store/app.js +1 -1
  49. package/esm/store/combo.d.ts +1154 -48
  50. package/esm/store/combo.js +10 -3
  51. package/esm/store/crud.js +22 -3
  52. package/esm/store/form.d.ts +480 -20
  53. package/esm/store/form.js +1 -1
  54. package/esm/store/formItem.d.ts +23 -1
  55. package/esm/store/formItem.js +88 -9
  56. package/esm/store/iRenderer.js +1 -1
  57. package/esm/store/index.js +1 -1
  58. package/esm/store/list.js +1 -1
  59. package/esm/store/manager.js +1 -1
  60. package/esm/store/modal.js +1 -1
  61. package/esm/store/node.js +1 -1
  62. package/esm/store/pagination.js +1 -1
  63. package/esm/store/root.js +1 -1
  64. package/esm/store/service.js +1 -1
  65. package/esm/store/status.js +1 -1
  66. package/esm/store/table.d.ts +1077 -42
  67. package/esm/store/table.js +66 -4
  68. package/esm/store/table2.js +1 -4
  69. package/esm/theme.js +1 -1
  70. package/esm/types.d.ts +8 -2
  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/columnsSplit.js +1 -1
  82. package/esm/utils/dataMapping.js +1 -1
  83. package/esm/utils/date.js +1 -1
  84. package/esm/utils/debug.js +1 -1
  85. package/esm/utils/decodeEntity.js +1 -1
  86. package/esm/utils/dom.js +1 -1
  87. package/esm/utils/errors.js +1 -1
  88. package/esm/utils/escapeHtml.js +1 -1
  89. package/esm/utils/filter-schema.js +1 -1
  90. package/esm/utils/filter.js +1 -1
  91. package/esm/utils/formatDuration.js +1 -1
  92. package/esm/utils/formula.js +1 -1
  93. package/esm/utils/getVariable.js +1 -1
  94. package/esm/utils/grammar.js +1 -1
  95. package/esm/utils/handleAction.js +1 -1
  96. package/esm/utils/helper.d.ts +2 -2
  97. package/esm/utils/helper.js +37 -29
  98. package/esm/utils/highlight.js +1 -1
  99. package/esm/utils/icon.js +1 -1
  100. package/esm/utils/image.js +1 -1
  101. package/esm/utils/isPureVariable.js +1 -1
  102. package/esm/utils/json-schema-2-amis-schema.js +1 -1
  103. package/esm/utils/keyToPath.js +1 -1
  104. package/esm/utils/makeSorter.js +1 -1
  105. package/esm/utils/math.js +8 -5
  106. package/esm/utils/memoryParse.js +1 -1
  107. package/esm/utils/normalizeLink.js +1 -1
  108. package/esm/utils/normalizeOptions.js +1 -1
  109. package/esm/utils/object.js +15 -1
  110. package/esm/utils/offset.js +1 -1
  111. package/esm/utils/offsetParent.js +1 -1
  112. package/esm/utils/optionValueCompare.js +1 -1
  113. package/esm/utils/position.js +1 -1
  114. package/esm/utils/prettyBytes.js +1 -1
  115. package/esm/utils/renderer-event.d.ts +7 -0
  116. package/esm/utils/renderer-event.js +30 -18
  117. package/esm/utils/replaceText.js +1 -1
  118. package/esm/utils/resize-sensor.js +1 -1
  119. package/esm/utils/resolveCondition.js +1 -1
  120. package/esm/utils/resolveVariable.js +1 -1
  121. package/esm/utils/resolveVariableAndFilter.js +1 -1
  122. package/esm/utils/resolveVariableAndFilterForAsync.js +1 -1
  123. package/esm/utils/scrollPosition.js +1 -1
  124. package/esm/utils/string2regExp.js +1 -1
  125. package/esm/utils/stripNumber.js +1 -1
  126. package/esm/utils/style-helper.js +8 -13
  127. package/esm/utils/style.js +3 -2
  128. package/esm/utils/toNumber.js +1 -1
  129. package/esm/utils/tokenize.js +1 -1
  130. package/esm/utils/tpl-builtin.js +1 -1
  131. package/esm/utils/tpl-lodash.js +1 -1
  132. package/esm/utils/tpl.js +1 -1
  133. package/esm/utils/uncontrollable.js +1 -1
  134. package/esm/utils/validations.js +1 -1
  135. package/lib/Root.js +1 -1
  136. package/lib/RootRenderer.d.ts +1 -1
  137. package/lib/RootRenderer.js +2 -2
  138. package/lib/SchemaRenderer.js +1 -1
  139. package/lib/Scoped.js +2 -2
  140. package/lib/StatusScoped.js +1 -1
  141. package/lib/WithRootStore.js +1 -1
  142. package/lib/WithStore.js +1 -1
  143. package/lib/actions/Action.js +1 -1
  144. package/lib/actions/AjaxAction.js +1 -1
  145. package/lib/actions/BreakAction.js +1 -1
  146. package/lib/actions/BroadcastAction.js +1 -1
  147. package/lib/actions/CmptAction.js +31 -32
  148. package/lib/actions/ContinueAction.js +1 -1
  149. package/lib/actions/CopyAction.js +1 -1
  150. package/lib/actions/CustomAction.js +1 -1
  151. package/lib/actions/DialogAction.js +1 -1
  152. package/lib/actions/DrawerAction.js +1 -1
  153. package/lib/actions/EmailAction.js +1 -1
  154. package/lib/actions/LinkAction.js +1 -1
  155. package/lib/actions/LoopAction.js +1 -1
  156. package/lib/actions/PageAction.js +1 -1
  157. package/lib/actions/ParallelAction.js +1 -1
  158. package/lib/actions/StatusAction.js +1 -1
  159. package/lib/actions/SwitchAction.js +1 -1
  160. package/lib/actions/ToastAction.js +1 -1
  161. package/lib/components/CustomStyle.js +1 -1
  162. package/lib/components/LazyComponent.js +1 -1
  163. package/lib/components/Overlay.js +1 -1
  164. package/lib/components/PopOver.js +1 -1
  165. package/lib/env.d.ts +9 -0
  166. package/lib/env.js +1 -1
  167. package/lib/envOverwrite.d.ts +1 -1
  168. package/lib/envOverwrite.js +18 -34
  169. package/lib/factory.js +1 -1
  170. package/lib/index.js +3 -3
  171. package/lib/locale.js +1 -1
  172. package/lib/polyfills.js +1 -1
  173. package/lib/renderers/Form.d.ts +9 -3
  174. package/lib/renderers/Form.js +50 -25
  175. package/lib/renderers/Item.js +1 -1
  176. package/lib/renderers/Options.d.ts +1 -1
  177. package/lib/renderers/Options.js +7 -6
  178. package/lib/renderers/Placeholder.js +1 -1
  179. package/lib/renderers/builtin.js +1 -1
  180. package/lib/renderers/register.js +1 -1
  181. package/lib/renderers/wrapControl.js +7 -12
  182. package/lib/store/app.js +1 -1
  183. package/lib/store/combo.d.ts +1154 -49
  184. package/lib/store/combo.js +10 -3
  185. package/lib/store/crud.js +22 -3
  186. package/lib/store/form.d.ts +480 -21
  187. package/lib/store/form.js +1 -1
  188. package/lib/store/formItem.d.ts +23 -1
  189. package/lib/store/formItem.js +89 -9
  190. package/lib/store/iRenderer.js +1 -1
  191. package/lib/store/index.js +1 -1
  192. package/lib/store/list.js +1 -1
  193. package/lib/store/manager.js +1 -1
  194. package/lib/store/modal.js +1 -1
  195. package/lib/store/node.js +1 -1
  196. package/lib/store/pagination.js +1 -1
  197. package/lib/store/root.js +1 -1
  198. package/lib/store/service.js +1 -1
  199. package/lib/store/status.js +1 -1
  200. package/lib/store/table.d.ts +1077 -43
  201. package/lib/store/table.js +65 -3
  202. package/lib/store/table2.js +1 -4
  203. package/lib/theme.js +1 -1
  204. package/lib/types.d.ts +8 -2
  205. package/lib/utils/Animation.js +1 -1
  206. package/lib/utils/ColorScale.js +1 -1
  207. package/lib/utils/DataSchema.js +1 -1
  208. package/lib/utils/DataScope.js +1 -1
  209. package/lib/utils/RootClose.js +1 -1
  210. package/lib/utils/SimpleMap.js +1 -1
  211. package/lib/utils/api.js +1 -1
  212. package/lib/utils/arraySlice.js +1 -1
  213. package/lib/utils/attachmentAdpator.js +1 -1
  214. package/lib/utils/autobind.js +1 -1
  215. package/lib/utils/columnsSplit.js +1 -1
  216. package/lib/utils/dataMapping.js +1 -1
  217. package/lib/utils/date.js +1 -1
  218. package/lib/utils/debug.js +1 -1
  219. package/lib/utils/decodeEntity.js +1 -1
  220. package/lib/utils/dom.js +1 -1
  221. package/lib/utils/errors.js +1 -1
  222. package/lib/utils/escapeHtml.js +1 -1
  223. package/lib/utils/filter-schema.js +1 -1
  224. package/lib/utils/filter.js +1 -1
  225. package/lib/utils/formatDuration.js +1 -1
  226. package/lib/utils/formula.js +1 -1
  227. package/lib/utils/getVariable.js +1 -1
  228. package/lib/utils/grammar.js +1 -1
  229. package/lib/utils/handleAction.js +1 -1
  230. package/lib/utils/helper.d.ts +2 -2
  231. package/lib/utils/helper.js +36 -28
  232. package/lib/utils/highlight.js +1 -1
  233. package/lib/utils/icon.js +1 -1
  234. package/lib/utils/image.js +1 -1
  235. package/lib/utils/isPureVariable.js +1 -1
  236. package/lib/utils/json-schema-2-amis-schema.js +1 -1
  237. package/lib/utils/keyToPath.js +1 -1
  238. package/lib/utils/makeSorter.js +1 -1
  239. package/lib/utils/math.js +8 -5
  240. package/lib/utils/memoryParse.js +1 -1
  241. package/lib/utils/normalizeLink.js +1 -1
  242. package/lib/utils/normalizeOptions.js +1 -1
  243. package/lib/utils/object.js +15 -1
  244. package/lib/utils/offset.js +1 -1
  245. package/lib/utils/offsetParent.js +1 -1
  246. package/lib/utils/optionValueCompare.js +1 -1
  247. package/lib/utils/position.js +1 -1
  248. package/lib/utils/prettyBytes.js +1 -1
  249. package/lib/utils/renderer-event.d.ts +7 -0
  250. package/lib/utils/renderer-event.js +30 -18
  251. package/lib/utils/replaceText.js +1 -1
  252. package/lib/utils/resize-sensor.js +1 -1
  253. package/lib/utils/resolveCondition.js +1 -1
  254. package/lib/utils/resolveVariable.js +1 -1
  255. package/lib/utils/resolveVariableAndFilter.js +1 -1
  256. package/lib/utils/resolveVariableAndFilterForAsync.js +1 -1
  257. package/lib/utils/scrollPosition.js +1 -1
  258. package/lib/utils/string2regExp.js +1 -1
  259. package/lib/utils/stripNumber.js +1 -1
  260. package/lib/utils/style-helper.js +8 -13
  261. package/lib/utils/style.js +3 -2
  262. package/lib/utils/toNumber.js +1 -1
  263. package/lib/utils/tokenize.js +1 -1
  264. package/lib/utils/tpl-builtin.js +1 -1
  265. package/lib/utils/tpl-lodash.js +1 -1
  266. package/lib/utils/tpl.js +1 -1
  267. package/lib/utils/uncontrollable.js +1 -1
  268. package/lib/utils/validations.js +1 -1
  269. package/package.json +3 -3
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v3.5.2
2
+ * amis-core v3.5.3
3
3
  * Copyright 2018-2023 fex
4
4
  */
5
5
 
@@ -49,7 +49,7 @@ import 'uncontrollable';
49
49
  import 'hoist-non-react-statics';
50
50
  import '../utils/validations.js';
51
51
  import '../utils/resolveCondition.js';
52
- import 'mobx';
52
+ import { reaction } from 'mobx';
53
53
  import '../utils/Animation.js';
54
54
 
55
55
  var Form = /** @class */ (function (_super) {
@@ -57,6 +57,7 @@ var Form = /** @class */ (function (_super) {
57
57
  function Form(props) {
58
58
  var _this = _super.call(this, props) || this;
59
59
  _this.hooks = {};
60
+ _this.toDispose = [];
60
61
  _this.shouldLoadInitApi = false;
61
62
  _this.lazyEmitChange = debounce(_this.emitChange.bind(_this), 250, {
62
63
  trailing: true,
@@ -105,11 +106,12 @@ var Form = /** @class */ (function (_super) {
105
106
  Form.prototype.componentDidMount = function () {
106
107
  var _this = this;
107
108
  var _a, _b;
108
- var _c = this.props, initApi = _c.initApi, initFetch = _c.initFetch, initFetchOn = _c.initFetchOn, initAsyncApi = _c.initAsyncApi, initFinishedField = _c.initFinishedField, initCheckInterval = _c.initCheckInterval, store = _c.store, _d = _c.messages, fetchSuccess = _d.fetchSuccess, fetchFailed = _d.fetchFailed, onValidate = _c.onValidate, promptPageLeave = _c.promptPageLeave, env = _c.env, rules = _c.rules;
109
+ var _c = this.props, initApi = _c.initApi, initFetch = _c.initFetch, initFetchOn = _c.initFetchOn, initAsyncApi = _c.initAsyncApi, initFinishedField = _c.initFinishedField, initCheckInterval = _c.initCheckInterval, store = _c.store, _d = _c.messages, fetchSuccess = _d.fetchSuccess, fetchFailed = _d.fetchFailed, onValidate = _c.onValidate, onValidChange = _c.onValidChange, promptPageLeave = _c.promptPageLeave, env = _c.env;
110
+ var rules = this.getNormalizedRules();
109
111
  this.mounted = true;
110
112
  if (onValidate) {
111
113
  var finalValidate_1 = promisify(onValidate);
112
- this.disposeOnValidate = this.addHook(function () { return __awaiter(_this, void 0, void 0, function () {
114
+ this.toDispose.push(this.addHook(function () { return __awaiter(_this, void 0, void 0, function () {
113
115
  var result;
114
116
  return __generator(this, function (_a) {
115
117
  switch (_a.label) {
@@ -139,10 +141,14 @@ var Form = /** @class */ (function (_super) {
139
141
  return [2 /*return*/];
140
142
  }
141
143
  });
142
- }); });
144
+ }); }));
143
145
  }
144
- if (Array.isArray(rules) && rules.length) {
145
- this.disposeRulesValidate = this.addHook(function () {
146
+ // 表单校验结果发生变化时,触发 onValidChange
147
+ if (onValidChange) {
148
+ this.toDispose.push(reaction(function () { return store.valid; }, function (valid) { return onValidChange(valid, _this.props); }));
149
+ }
150
+ if (rules.length) {
151
+ this.toDispose.push(this.addHook(function () {
146
152
  if (!store.valid) {
147
153
  return;
148
154
  }
@@ -150,7 +156,7 @@ var Form = /** @class */ (function (_super) {
150
156
  return !evalExpression(item.rule, store.data) &&
151
157
  store.addRestError(item.message, item.name);
152
158
  });
153
- });
159
+ }));
154
160
  }
155
161
  if (isEffectiveApi(initApi, store.data, initFetch, initFetchOn)) {
156
162
  store
@@ -198,11 +204,23 @@ var Form = /** @class */ (function (_super) {
198
204
  // this.lazyHandleChange.flush();
199
205
  this.lazyEmitChange.cancel();
200
206
  this.asyncCancel && this.asyncCancel();
201
- this.disposeOnValidate && this.disposeOnValidate();
202
- this.disposeRulesValidate && this.disposeRulesValidate();
207
+ this.toDispose.forEach(function (fn) { return fn(); });
208
+ this.toDispose = [];
203
209
  window.removeEventListener('beforeunload', this.beforePageUnload);
204
210
  (_a = this.unBlockRouting) === null || _a === void 0 ? void 0 : _a.call(this);
205
211
  };
212
+ /** 获取表单联合校验的规则 */
213
+ Form.prototype.getNormalizedRules = function () {
214
+ var _a = this.props, rules = _a.rules, __ = _a.translate;
215
+ if (!Array.isArray(rules) || rules.length < 1) {
216
+ return [];
217
+ }
218
+ return rules
219
+ .map(function (item) { return (__assign(__assign({}, item), (!item.message || typeof item.message !== 'string'
220
+ ? { message: __('Form.rules.message') }
221
+ : {}))); })
222
+ .filter(function (item) { return item.rule && typeof item.rule === 'string'; });
223
+ };
206
224
  Form.prototype.dispatchInited = function (value) {
207
225
  var _a;
208
226
  return __awaiter(this, void 0, void 0, function () {
@@ -350,22 +368,27 @@ var Form = /** @class */ (function (_super) {
350
368
  Form.prototype.isValidated = function () {
351
369
  return this.props.store.validated;
352
370
  };
353
- Form.prototype.validate = function (forceValidate, throwErrors) {
371
+ Form.prototype.validate = function (forceValidate, throwErrors, toastErrors) {
354
372
  if (throwErrors === void 0) { throwErrors = false; }
355
- var _a = this.props, store = _a.store, dispatchEvent = _a.dispatchEvent, data = _a.data, messages = _a.messages, __ = _a.translate;
356
- this.flush();
357
- return store
358
- .validate(this.hooks['validate'] || [], forceValidate, throwErrors, typeof (messages === null || messages === void 0 ? void 0 : messages.validateFailed) === 'string'
359
- ? __(filter(messages.validateFailed, store.data))
360
- : undefined)
361
- .then(function (result) {
362
- if (result) {
363
- dispatchEvent('validateSucc', data);
364
- }
365
- else {
366
- dispatchEvent('validateError', data);
367
- }
368
- return result;
373
+ if (toastErrors === void 0) { toastErrors = true; }
374
+ return __awaiter(this, void 0, void 0, function () {
375
+ var _a, store, dispatchEvent, data, messages, __, result;
376
+ return __generator(this, function (_b) {
377
+ switch (_b.label) {
378
+ case 0:
379
+ _a = this.props, store = _a.store, dispatchEvent = _a.dispatchEvent, data = _a.data, messages = _a.messages, __ = _a.translate;
380
+ this.flush();
381
+ return [4 /*yield*/, store.validate(this.hooks['validate'] || [], forceValidate, throwErrors, toastErrors === false
382
+ ? ''
383
+ : typeof (messages === null || messages === void 0 ? void 0 : messages.validateFailed) === 'string'
384
+ ? __(filter(messages.validateFailed, store.data))
385
+ : undefined)];
386
+ case 1:
387
+ result = _b.sent();
388
+ dispatchEvent(result ? 'validateSucc' : 'validateError', data);
389
+ return [2 /*return*/, result];
390
+ }
391
+ });
369
392
  });
370
393
  };
371
394
  Form.prototype.setErrors = function (errors, tag) {
@@ -1140,6 +1163,8 @@ var Form = /** @class */ (function (_super) {
1140
1163
  'onChange',
1141
1164
  'onFailed',
1142
1165
  'onFinished',
1166
+ 'onValidate',
1167
+ 'onValidChange',
1143
1168
  'onSaved',
1144
1169
  'canAccessSuperData',
1145
1170
  'lazyChange',
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v3.5.2
2
+ * amis-core v3.5.3
3
3
  * Copyright 2018-2023 fex
4
4
  */
5
5
 
@@ -136,7 +136,7 @@ export interface OptionsControlProps extends FormControlProps, Omit<FormOptionsC
136
136
  selectedOptions: Array<Option>;
137
137
  setOptions: (value: Array<any>, skipNormalize?: boolean) => void;
138
138
  setLoading: (value: boolean) => void;
139
- reloadOptions: (setError?: boolean) => void;
139
+ reloadOptions: (setError?: boolean, isInit?: boolean, data?: Record<string, any>) => void;
140
140
  deferLoad: (option: Option) => void;
141
141
  leftDeferLoad: (option: Option, leftOptions: Option) => void;
142
142
  expandTreeOptions: (nodePathArr: any[]) => void;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v3.5.2
2
+ * amis-core v3.5.3
3
3
  * Copyright 2018-2023 fex
4
4
  */
5
5
 
@@ -157,7 +157,7 @@ function registerOptionsControl(config) {
157
157
  var prevOptions = resolveVariableAndFilter(prevProps.source, prevProps.data, '| raw');
158
158
  var options = resolveVariableAndFilter(props.source, props.data, '| raw');
159
159
  if (prevOptions !== options) {
160
- formItem.setOptions(normalizeOptions(options || [], undefined, props.valueField || 'value'), this.changeOptionValue, props.data);
160
+ formItem.loadOptionsFromDataScope(props.source, props.data, this.changeOptionValue);
161
161
  this.normalizeValue();
162
162
  }
163
163
  }
@@ -403,12 +403,13 @@ function registerOptionsControl(config) {
403
403
  FormOptionsItem.prototype.reload = function () {
404
404
  return this.reloadOptions();
405
405
  };
406
- FormOptionsItem.prototype.reloadOptions = function (setError, isInit) {
406
+ FormOptionsItem.prototype.reloadOptions = function (setError, isInit, data) {
407
407
  if (isInit === void 0) { isInit = false; }
408
- var _a = this.props, source = _a.source, formItem = _a.formItem, data = _a.data, onChange = _a.onChange, setPrinstineValue = _a.setPrinstineValue, valueField = _a.valueField;
408
+ if (data === void 0) { data = this.props.data; }
409
+ var _a = this.props, source = _a.source, formItem = _a.formItem, onChange = _a.onChange, setPrinstineValue = _a.setPrinstineValue; _a.valueField;
409
410
  if (formItem && isPureVariable(source)) {
410
411
  isAlive(formItem) &&
411
- formItem.setOptions(normalizeOptions(resolveVariableAndFilter(source, data, '| raw') || [], undefined, valueField), this.changeOptionValue, data);
412
+ formItem.loadOptionsFromDataScope(source, data, this.changeOptionValue);
412
413
  return;
413
414
  }
414
415
  else if (!formItem || !isEffectiveApi(source, data)) {
@@ -834,7 +835,7 @@ function registerOptionsControl(config) {
834
835
  __decorate([
835
836
  autobind,
836
837
  __metadata("design:type", Function),
837
- __metadata("design:paramtypes", [Boolean, Object]),
838
+ __metadata("design:paramtypes", [Boolean, Object, Object]),
838
839
  __metadata("design:returntype", void 0)
839
840
  ], FormOptionsItem.prototype, "reloadOptions", null);
840
841
  __decorate([
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v3.5.2
2
+ * amis-core v3.5.3
3
3
  * Copyright 2018-2023 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v3.5.2
2
+ * amis-core v3.5.3
3
3
  * Copyright 2018-2023 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v3.5.2
2
+ * amis-core v3.5.3
3
3
  * Copyright 2018-2023 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v3.5.2
2
+ * amis-core v3.5.3
3
3
  * Copyright 2018-2023 fex
4
4
  */
5
5
 
@@ -7,7 +7,6 @@ import { __extends, __assign, __awaiter, __generator } from 'tslib';
7
7
  import React from 'react';
8
8
  import debounce from 'lodash/debounce';
9
9
  import isEqual from 'lodash/isEqual';
10
- import { getRendererByName } from '../factory.js';
11
10
  import { ComboStore } from '../store/combo.js';
12
11
  import { guid, promisify, changedEffect } from '../utils/helper.js';
13
12
  import { isExpression, FormulaExec, replaceExpression, isNeedFormula } from '../utils/formula.js';
@@ -58,14 +57,14 @@ function wrapControl(ComposedComponent) {
58
57
  __extends(class_1, _super);
59
58
  function class_1(props) {
60
59
  var _this = this;
61
- var _a, _b;
60
+ var _a;
62
61
  _this = _super.call(this, props) || this;
63
62
  _this.value = undefined;
64
63
  _this.lazyEmitChange = debounce(_this.emitChange.bind(_this), 250, {
65
64
  trailing: true,
66
65
  leading: false
67
66
  });
68
- var _c = _this.props, form = _c.formStore, formItem = _c.formItem, rootStore = _c.rootStore, store = _c.store, onChange = _c.onChange, data = _c.data, inputGroupControl = _c.inputGroupControl, colIndex = _c.colIndex, rowIndex = _c.rowIndex, _d = _c.$schema, id = _d.id, type = _d.type, required = _d.required, validations = _d.validations, validationErrors = _d.validationErrors, unique = _d.unique, value = _d.value, extraName = _d.extraName; _d.multiple; var delimiter = _d.delimiter, valueField = _d.valueField, labelField = _d.labelField, joinValues = _d.joinValues, extractValue = _d.extractValue, selectFirst = _d.selectFirst, autoFill = _d.autoFill, clearValueOnHidden = _d.clearValueOnHidden, validateApi = _d.validateApi, minLength = _d.minLength, maxLength = _d.maxLength, validateOnChange = _d.validateOnChange, label = _d.label;
67
+ var _b = _this.props, form = _b.formStore, formItem = _b.formItem, rootStore = _b.rootStore, store = _b.store, onChange = _b.onChange, data = _b.data, inputGroupControl = _b.inputGroupControl, colIndex = _b.colIndex, rowIndex = _b.rowIndex, _c = _b.$schema, id = _c.id, type = _c.type, required = _c.required, validations = _c.validations, validationErrors = _c.validationErrors, unique = _c.unique, value = _c.value, extraName = _c.extraName; _c.multiple; var delimiter = _c.delimiter, valueField = _c.valueField, labelField = _c.labelField, joinValues = _c.joinValues, extractValue = _c.extractValue, selectFirst = _c.selectFirst, autoFill = _c.autoFill, clearValueOnHidden = _c.clearValueOnHidden, validateApi = _c.validateApi, minLength = _c.minLength, maxLength = _c.maxLength, validateOnChange = _c.validateOnChange, label = _c.label, pagination = _c.pagination;
69
68
  _this.getValue = _this.getValue.bind(_this);
70
69
  _this.setValue = _this.setValue.bind(_this);
71
70
  _this.handleChange = _this.handleChange.bind(_this);
@@ -82,11 +81,6 @@ function wrapControl(ComposedComponent) {
82
81
  name = tokenize(name, data);
83
82
  }
84
83
  if (!name) {
85
- // 一般情况下这些表单项都是需要 name 的,提示一下
86
- if (typeof type === 'string' &&
87
- ((_a = getRendererByName(type)) === null || _a === void 0 ? void 0 : _a.isFormItem)) {
88
- console.warn('name is required', _this.props.$schema);
89
- }
90
84
  return _this;
91
85
  }
92
86
  var propValue = _this.props.value;
@@ -102,10 +96,10 @@ function wrapControl(ComposedComponent) {
102
96
  _this.model = model;
103
97
  // @issue 打算干掉这个
104
98
  formItem === null || formItem === void 0 ? void 0 : formItem.addSubFormItem(model);
105
- model.config(__assign(__assign({}, pick(__assign(__assign({}, ComposedComponent.defaultProps), _this.props.$schema), ['multiple'])), { id: id, type: type, required: props.required || required, unique: unique, value: value, isValueSchemaExp: isExpression(value), rules: validations, messages: validationErrors, delimiter: delimiter, valueField: valueField, labelField: labelField, joinValues: joinValues, extractValue: extractValue, selectFirst: selectFirst, autoFill: autoFill, clearValueOnHidden: clearValueOnHidden, validateApi: validateApi, minLength: minLength, maxLength: maxLength, validateOnChange: validateOnChange, label: label, inputGroupControl: inputGroupControl, extraName: extraName }));
99
+ model.config(__assign(__assign({}, pick(__assign(__assign({}, ComposedComponent.defaultProps), _this.props.$schema), ['multiple'])), { id: id, type: type, required: props.required || required, unique: unique, value: value, isValueSchemaExp: isExpression(value), rules: validations, messages: validationErrors, delimiter: delimiter, valueField: valueField, labelField: labelField, joinValues: joinValues, extractValue: extractValue, selectFirst: selectFirst, autoFill: autoFill, clearValueOnHidden: clearValueOnHidden, validateApi: validateApi, minLength: minLength, maxLength: maxLength, validateOnChange: validateOnChange, label: label, inputGroupControl: inputGroupControl, extraName: extraName, pagination: pagination }));
106
100
  // issue 这个逻辑应该在 combo 里面自己实现。
107
101
  if (_this.model.unique &&
108
- ((_b = form === null || form === void 0 ? void 0 : form.parentStore) === null || _b === void 0 ? void 0 : _b.storeType) === ComboStore.name) {
102
+ ((_a = form === null || form === void 0 ? void 0 : form.parentStore) === null || _a === void 0 ? void 0 : _a.storeType) === ComboStore.name) {
109
103
  var combo = form.parentStore;
110
104
  combo.bindUniuqueItem(model);
111
105
  }
@@ -218,7 +212,8 @@ function wrapControl(ComposedComponent) {
218
212
  'minLength',
219
213
  'maxLength',
220
214
  'label',
221
- 'extraName'
215
+ 'extraName',
216
+ 'pagination'
222
217
  ], prevProps.$schema, props.$schema, function (changes) {
223
218
  model.config(__assign(__assign({}, changes), {
224
219
  // todo 优化后面两个
package/esm/store/app.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v3.5.2
2
+ * amis-core v3.5.3
3
3
  * Copyright 2018-2023 fex
4
4
  */
5
5