amis-core 6.11.0-beta.9 → 6.12.0-ab.1

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 (302) hide show
  1. package/esm/Root.js +1 -1
  2. package/esm/RootRenderer.js +1 -1
  3. package/esm/SchemaRenderer.js +1 -1
  4. package/esm/Scoped.js +2 -1
  5. package/esm/StatusScoped.js +1 -1
  6. package/esm/StyleManager.js +1 -1
  7. package/esm/WithRootStore.js +1 -1
  8. package/esm/WithStore.js +1 -1
  9. package/esm/actions/Action.d.ts +8 -0
  10. package/esm/actions/Action.js +53 -15
  11. package/esm/actions/AjaxAction.js +3 -3
  12. package/esm/actions/BreakAction.js +1 -1
  13. package/esm/actions/BroadcastAction.js +1 -1
  14. package/esm/actions/CmptAction.js +2 -7
  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 +2 -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 +1 -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/Animations.js +12 -3
  32. package/esm/components/CustomStyle.js +2 -1
  33. package/esm/components/ErrorBoundary.js +1 -1
  34. package/esm/components/LazyComponent.js +1 -1
  35. package/esm/components/Overlay.js +2 -1
  36. package/esm/components/PopOver.js +2 -1
  37. package/esm/env.js +1 -1
  38. package/esm/envOverwrite.d.ts +1 -1
  39. package/esm/envOverwrite.js +4 -3
  40. package/esm/factory.js +10 -3
  41. package/esm/globalVar.js +1 -1
  42. package/esm/globalVarClientHandler.js +1 -1
  43. package/esm/globalVarDefaultValueHandler.js +1 -1
  44. package/esm/index.js +8 -8
  45. package/esm/locale.js +4 -2
  46. package/esm/polyfills.js +1 -1
  47. package/esm/renderers/Form.js +4 -3
  48. package/esm/renderers/Item.js +1 -1
  49. package/esm/renderers/Options.d.ts +2 -2
  50. package/esm/renderers/Options.js +11 -5
  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 +18 -4
  55. package/esm/store/app.js +2 -1
  56. package/esm/store/combo.js +1 -1
  57. package/esm/store/crud.d.ts +2 -0
  58. package/esm/store/crud.js +116 -100
  59. package/esm/store/form.js +3 -1
  60. package/esm/store/formItem.js +8 -6
  61. package/esm/store/iRenderer.js +5 -1
  62. package/esm/store/index.js +1 -1
  63. package/esm/store/list.js +1 -1
  64. package/esm/store/manager.js +1 -1
  65. package/esm/store/modal.js +1 -1
  66. package/esm/store/node.js +1 -1
  67. package/esm/store/pagination.js +1 -1
  68. package/esm/store/root.js +2 -1
  69. package/esm/store/service.js +2 -1
  70. package/esm/store/status.js +1 -1
  71. package/esm/store/table.js +3 -1
  72. package/esm/store/table2.js +1 -1
  73. package/esm/theme.js +1 -1
  74. package/esm/utils/Animation.js +1 -1
  75. package/esm/utils/ColorScale.js +1 -1
  76. package/esm/utils/DataSchema.js +1 -1
  77. package/esm/utils/DataScope.js +1 -1
  78. package/esm/utils/RootClose.js +1 -1
  79. package/esm/utils/SimpleMap.js +1 -1
  80. package/esm/utils/animations.d.ts +6 -0
  81. package/esm/utils/animations.js +38 -32
  82. package/esm/utils/api.js +4 -3
  83. package/esm/utils/arraySlice.js +1 -1
  84. package/esm/utils/attachmentAdpator.js +3 -29
  85. package/esm/utils/autobind.js +1 -1
  86. package/esm/utils/browser.js +1 -1
  87. package/esm/utils/columnsSplit.js +1 -1
  88. package/esm/utils/concatData.js +1 -1
  89. package/esm/utils/dataMapping.js +1 -1
  90. package/esm/utils/date.js +1 -1
  91. package/esm/utils/debug.js +1 -1
  92. package/esm/utils/decodeEntity.js +1 -1
  93. package/esm/utils/dom.d.ts +1 -0
  94. package/esm/utils/dom.js +39 -2
  95. package/esm/utils/errors.js +1 -1
  96. package/esm/utils/escapeHtml.js +1 -1
  97. package/esm/utils/filter-schema.js +1 -1
  98. package/esm/utils/filter.js +1 -1
  99. package/esm/utils/formatDuration.js +1 -1
  100. package/esm/utils/formula.js +1 -1
  101. package/esm/utils/getVariable.js +1 -1
  102. package/esm/utils/grammar.js +1 -1
  103. package/esm/utils/handleAction.js +1 -1
  104. package/esm/utils/helper.d.ts +1 -0
  105. package/esm/utils/helper.js +9 -2
  106. package/esm/utils/highlight.js +1 -1
  107. package/esm/utils/icon.js +1 -1
  108. package/esm/utils/image.js +1 -1
  109. package/esm/utils/index.js +3 -2
  110. package/esm/utils/isPureVariable.js +1 -1
  111. package/esm/utils/json-schema-2-amis-schema.js +1 -1
  112. package/esm/utils/keyToPath.js +1 -1
  113. package/esm/utils/labelToString.js +1 -1
  114. package/esm/utils/loopTooMuch.js +1 -1
  115. package/esm/utils/makeSorter.js +1 -1
  116. package/esm/utils/math.js +1 -1
  117. package/esm/utils/memoryParse.js +1 -1
  118. package/esm/utils/normalizeLink.js +1 -1
  119. package/esm/utils/normalizeOptions.js +1 -1
  120. package/esm/utils/object.js +1 -1
  121. package/esm/utils/offset.js +1 -1
  122. package/esm/utils/offsetParent.js +1 -1
  123. package/esm/utils/optionValueCompare.js +1 -1
  124. package/esm/utils/position.js +1 -1
  125. package/esm/utils/prettyBytes.js +1 -1
  126. package/esm/utils/printElement.js +1 -1
  127. package/esm/utils/renderer-event.js +1 -1
  128. package/esm/utils/replaceText.js +1 -1
  129. package/esm/utils/resize-sensor.js +1 -1
  130. package/esm/utils/resolveCondition.js +1 -1
  131. package/esm/utils/resolveVariable.js +1 -1
  132. package/esm/utils/resolveVariableAndFilter.js +1 -1
  133. package/esm/utils/resolveVariableAndFilterForAsync.js +1 -1
  134. package/esm/utils/scrollPosition.js +1 -1
  135. package/esm/utils/string2regExp.js +1 -1
  136. package/esm/utils/stripNumber.js +1 -1
  137. package/esm/utils/style-helper.d.ts +1 -0
  138. package/esm/utils/style-helper.js +10 -7
  139. package/esm/utils/style.js +1 -1
  140. package/esm/utils/toNumber.js +1 -1
  141. package/esm/utils/tokenize.js +1 -1
  142. package/esm/utils/tpl-builtin.js +1 -1
  143. package/esm/utils/tpl-lodash.js +1 -1
  144. package/esm/utils/tpl.js +1 -1
  145. package/esm/utils/uncontrollable.js +1 -1
  146. package/esm/utils/validateId.js +1 -1
  147. package/esm/utils/validations.js +1 -1
  148. package/esm/utils/visitedCache.js +1 -1
  149. package/lib/Root.js +1 -1
  150. package/lib/RootRenderer.d.ts +1 -1
  151. package/lib/RootRenderer.js +1 -1
  152. package/lib/SchemaRenderer.js +1 -1
  153. package/lib/Scoped.js +2 -1
  154. package/lib/StatusScoped.js +1 -1
  155. package/lib/StyleManager.js +1 -1
  156. package/lib/WithRootStore.js +1 -1
  157. package/lib/WithStore.js +1 -1
  158. package/lib/actions/Action.d.ts +8 -0
  159. package/lib/actions/Action.js +56 -14
  160. package/lib/actions/AjaxAction.js +3 -3
  161. package/lib/actions/BreakAction.js +1 -1
  162. package/lib/actions/BroadcastAction.js +1 -1
  163. package/lib/actions/CmptAction.js +2 -7
  164. package/lib/actions/ContinueAction.js +1 -1
  165. package/lib/actions/CopyAction.js +1 -1
  166. package/lib/actions/CustomAction.js +2 -1
  167. package/lib/actions/DialogAction.js +2 -1
  168. package/lib/actions/DrawerAction.js +2 -1
  169. package/lib/actions/EmailAction.js +1 -1
  170. package/lib/actions/EventAction.js +2 -1
  171. package/lib/actions/LinkAction.js +1 -1
  172. package/lib/actions/LoopAction.js +1 -1
  173. package/lib/actions/PageAction.js +1 -1
  174. package/lib/actions/ParallelAction.js +1 -1
  175. package/lib/actions/PrintAction.js +1 -1
  176. package/lib/actions/StatusAction.js +1 -1
  177. package/lib/actions/SwitchAction.js +1 -1
  178. package/lib/actions/ToastAction.js +1 -1
  179. package/lib/actions/WaitAction.js +1 -1
  180. package/lib/components/Animations.js +12 -3
  181. package/lib/components/CustomStyle.js +2 -1
  182. package/lib/components/ErrorBoundary.js +1 -1
  183. package/lib/components/LazyComponent.js +1 -1
  184. package/lib/components/Overlay.js +2 -1
  185. package/lib/components/PopOver.js +2 -1
  186. package/lib/env.js +1 -1
  187. package/lib/envOverwrite.d.ts +1 -1
  188. package/lib/envOverwrite.js +4 -3
  189. package/lib/factory.js +10 -3
  190. package/lib/globalVar.js +1 -1
  191. package/lib/globalVarClientHandler.js +1 -1
  192. package/lib/globalVarDefaultValueHandler.js +1 -1
  193. package/lib/index.js +11 -5
  194. package/lib/locale.js +4 -2
  195. package/lib/polyfills.js +1 -1
  196. package/lib/renderers/Form.js +4 -3
  197. package/lib/renderers/Item.js +1 -1
  198. package/lib/renderers/Options.d.ts +2 -2
  199. package/lib/renderers/Options.js +11 -5
  200. package/lib/renderers/Placeholder.js +1 -1
  201. package/lib/renderers/builtin.js +1 -1
  202. package/lib/renderers/register.js +1 -1
  203. package/lib/renderers/wrapControl.js +19 -5
  204. package/lib/store/app.js +2 -1
  205. package/lib/store/combo.d.ts +24 -24
  206. package/lib/store/combo.js +1 -1
  207. package/lib/store/crud.d.ts +2 -0
  208. package/lib/store/crud.js +116 -100
  209. package/lib/store/form.d.ts +10 -11
  210. package/lib/store/form.js +3 -1
  211. package/lib/store/formItem.js +8 -6
  212. package/lib/store/iRenderer.js +5 -1
  213. package/lib/store/index.js +1 -1
  214. package/lib/store/list.js +1 -1
  215. package/lib/store/manager.js +1 -1
  216. package/lib/store/modal.js +1 -1
  217. package/lib/store/node.js +1 -1
  218. package/lib/store/pagination.js +1 -1
  219. package/lib/store/root.d.ts +0 -1
  220. package/lib/store/root.js +2 -1
  221. package/lib/store/service.js +2 -1
  222. package/lib/store/status.js +1 -1
  223. package/lib/store/table.d.ts +20 -21
  224. package/lib/store/table.js +3 -1
  225. package/lib/store/table2.js +1 -1
  226. package/lib/theme.js +1 -1
  227. package/lib/utils/Animation.js +1 -1
  228. package/lib/utils/ColorScale.js +1 -1
  229. package/lib/utils/DataSchema.js +1 -1
  230. package/lib/utils/DataScope.js +1 -1
  231. package/lib/utils/RootClose.js +1 -1
  232. package/lib/utils/SimpleMap.js +1 -1
  233. package/lib/utils/animations.d.ts +6 -0
  234. package/lib/utils/animations.js +38 -32
  235. package/lib/utils/api.js +4 -3
  236. package/lib/utils/arraySlice.js +1 -1
  237. package/lib/utils/attachmentAdpator.js +3 -29
  238. package/lib/utils/autobind.js +1 -1
  239. package/lib/utils/browser.js +1 -1
  240. package/lib/utils/columnsSplit.js +1 -1
  241. package/lib/utils/concatData.js +1 -1
  242. package/lib/utils/dataMapping.js +1 -1
  243. package/lib/utils/date.js +1 -1
  244. package/lib/utils/debug.js +1 -1
  245. package/lib/utils/decodeEntity.js +1 -1
  246. package/lib/utils/dom.d.ts +1 -0
  247. package/lib/utils/dom.js +39 -1
  248. package/lib/utils/errors.js +1 -1
  249. package/lib/utils/escapeHtml.js +1 -1
  250. package/lib/utils/filter-schema.js +1 -1
  251. package/lib/utils/filter.js +1 -1
  252. package/lib/utils/formatDuration.js +1 -1
  253. package/lib/utils/formula.js +1 -1
  254. package/lib/utils/getVariable.js +1 -1
  255. package/lib/utils/grammar.js +1 -1
  256. package/lib/utils/handleAction.js +1 -1
  257. package/lib/utils/helper.d.ts +1 -0
  258. package/lib/utils/helper.js +9 -1
  259. package/lib/utils/highlight.js +1 -1
  260. package/lib/utils/icon.js +1 -1
  261. package/lib/utils/image.js +1 -1
  262. package/lib/utils/index.js +4 -1
  263. package/lib/utils/isPureVariable.js +1 -1
  264. package/lib/utils/json-schema-2-amis-schema.js +1 -1
  265. package/lib/utils/keyToPath.js +1 -1
  266. package/lib/utils/labelToString.js +1 -1
  267. package/lib/utils/loopTooMuch.js +1 -1
  268. package/lib/utils/makeSorter.js +1 -1
  269. package/lib/utils/math.js +1 -1
  270. package/lib/utils/memoryParse.js +1 -1
  271. package/lib/utils/normalizeLink.js +1 -1
  272. package/lib/utils/normalizeOptions.js +1 -1
  273. package/lib/utils/object.js +1 -1
  274. package/lib/utils/offset.js +1 -1
  275. package/lib/utils/offsetParent.js +1 -1
  276. package/lib/utils/optionValueCompare.js +1 -1
  277. package/lib/utils/position.js +1 -1
  278. package/lib/utils/prettyBytes.js +1 -1
  279. package/lib/utils/printElement.js +1 -1
  280. package/lib/utils/renderer-event.js +1 -1
  281. package/lib/utils/replaceText.js +1 -1
  282. package/lib/utils/resize-sensor.js +1 -1
  283. package/lib/utils/resolveCondition.js +1 -1
  284. package/lib/utils/resolveVariable.js +1 -1
  285. package/lib/utils/resolveVariableAndFilter.js +1 -1
  286. package/lib/utils/resolveVariableAndFilterForAsync.js +1 -1
  287. package/lib/utils/scrollPosition.js +1 -1
  288. package/lib/utils/string2regExp.js +1 -1
  289. package/lib/utils/stripNumber.js +1 -1
  290. package/lib/utils/style-helper.d.ts +1 -0
  291. package/lib/utils/style-helper.js +10 -7
  292. package/lib/utils/style.js +1 -1
  293. package/lib/utils/toNumber.js +1 -1
  294. package/lib/utils/tokenize.js +1 -1
  295. package/lib/utils/tpl-builtin.js +1 -1
  296. package/lib/utils/tpl-lodash.js +1 -1
  297. package/lib/utils/tpl.js +1 -1
  298. package/lib/utils/uncontrollable.js +1 -1
  299. package/lib/utils/validateId.js +1 -1
  300. package/lib/utils/validations.js +1 -1
  301. package/lib/utils/visitedCache.js +1 -1
  302. package/package.json +2 -2
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.11.0-beta.9
2
+ * amis-core v6.12.0-ab.1
3
3
  * Copyright 2018-2025 fex
4
4
  */
5
5
 
@@ -13,6 +13,7 @@ var debounce = require('lodash/debounce');
13
13
  var isEqual = require('lodash/isEqual');
14
14
  var combo = require('../store/combo.js');
15
15
  var helper = require('../utils/helper.js');
16
+ var validations = require('../utils/validations.js');
16
17
  var formula = require('../utils/formula.js');
17
18
  var Scoped = require('../Scoped.js');
18
19
  var formItem = require('../store/formItem.js');
@@ -53,7 +54,7 @@ var _J$F_ = (__react_jsx__["default"] || __react_jsx__).Fragment;
53
54
  trailing: true,
54
55
  leading: false
55
56
  });
56
- var _c = _this.props, form = _c.formStore, formItem$1 = _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, multiple = _d.multiple, 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, pagination = _d.pagination;
57
+ var _c = _this.props, form = _c.formStore, formItem$1 = _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$1 = _d.validations, validationErrors = _d.validationErrors, unique = _d.unique, value = _d.value, extraName = _d.extraName, multiple = _d.multiple, 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, pagination = _d.pagination;
57
58
  _this.getValue = _this.getValue.bind(_this);
58
59
  _this.setValue = _this.setValue.bind(_this);
59
60
  _this.handleChange = _this.handleChange.bind(_this);
@@ -84,9 +85,13 @@ var _J$F_ = (__react_jsx__["default"] || __react_jsx__).Fragment;
84
85
  rowIndex: rowIndex !== undefined ? rowIndex : undefined
85
86
  });
86
87
  _this.model = model;
88
+ // 如果组件有默认验证器类型,则合并
89
+ var rules = validations$1 && model && config.validations
90
+ ? tslib.__assign(tslib.__assign({}, validations$1), validations.str2rules(config.validations)) : validations$1;
87
91
  // @issue 打算干掉这个
88
92
  formItem$1 === null || formItem$1 === void 0 ? void 0 : formItem$1.addSubFormItem(model);
89
- model.config(tslib.__assign(tslib.__assign({}, pick__default["default"](tslib.__assign(tslib.__assign({}, ComposedComponent.defaultProps), _this.props.$schema), ['multiple'])), { id: id, type: type, required: props.required || required, unique: unique, value: value, isValueSchemaExp: formula.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 }));
93
+ model.config(tslib.__assign(tslib.__assign({}, pick__default["default"](tslib.__assign(tslib.__assign({}, ComposedComponent.defaultProps), _this.props.$schema), ['multiple'])), { id: id, type: type, required: props.required || required, unique: unique, value: value, isValueSchemaExp: formula.isExpression(value) &&
94
+ value.replace(/\s/g, '') !== "${".concat(name, "}"), rules: rules, 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 }));
90
95
  // issue 这个逻辑应该在 combo 里面自己实现。
91
96
  if (_this.model.unique &&
92
97
  ((_b = form === null || form === void 0 ? void 0 : form.parentStore) === null || _b === void 0 ? void 0 : _b.storeType) === combo.ComboStore.name) {
@@ -189,7 +194,9 @@ var _J$F_ = (__react_jsx__["default"] || __react_jsx__).Fragment;
189
194
  ], prevProps.$schema, props.$schema, function (changes) {
190
195
  model.config(tslib.__assign(tslib.__assign({}, changes), {
191
196
  // todo 优化后面两个
192
- isValueSchemaExp: formula.isExpression(props.$schema.value), inputGroupControl: props === null || props === void 0 ? void 0 : props.inputGroupControl }));
197
+ isValueSchemaExp: formula.isExpression(props.$schema.value) &&
198
+ props.$schema.value.replace(/\s/g, '') !==
199
+ "${".concat(props.$schema.name, "}"), inputGroupControl: props === null || props === void 0 ? void 0 : props.inputGroupControl }));
193
200
  if (changes.hasOwnProperty('name')) {
194
201
  _this.setInitialValue(_this.props.$schema.value);
195
202
  }
@@ -210,6 +217,8 @@ var _J$F_ = (__react_jsx__["default"] || __react_jsx__).Fragment;
210
217
  }
211
218
  else if (typeof props.defaultValue !== 'undefined' &&
212
219
  formula.isExpression(props.defaultValue) &&
220
+ props.defaultValue.replace(/\s/g, '') !==
221
+ "${".concat(props.name, "}") &&
213
222
  (!isEqual__default["default"](props.defaultValue, prevProps.defaultValue) ||
214
223
  (props.data !== prevProps.data &&
215
224
  formula.isNeedFormula(props.defaultValue, props.data, prevProps.data)))) {
@@ -270,8 +279,13 @@ var _J$F_ = (__react_jsx__["default"] || __react_jsx__).Fragment;
270
279
  };
271
280
  class_1.prototype.setInitialValue = function (value) {
272
281
  var model = this.model;
273
- var _a = this.props, form = _a.formStore, data = _a.data, canAccessSuperData = _a.canAccessSuperData;
282
+ var _a = this.props, form = _a.formStore, data = _a.data, canAccessSuperData = _a.canAccessSuperData, name = _a.name;
274
283
  var isExp = formula.isExpression(value);
284
+ if (isExp && value.replace(/\s/g, '') === "${".concat(name, "}")) {
285
+ console.warn('value 不要使用表达式关联自己');
286
+ isExp = false;
287
+ value = undefined;
288
+ }
275
289
  var initialValue = model.extraName
276
290
  ? [
277
291
  getVariable.getVariable(data, model.name, canAccessSuperData !== null && canAccessSuperData !== void 0 ? canAccessSuperData : form === null || form === void 0 ? void 0 : form.canAccessSuperData),
package/lib/store/app.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.11.0-beta.9
2
+ * amis-core v6.12.0-ab.1
3
3
  * Copyright 2018-2025 fex
4
4
  */
5
5
 
@@ -12,6 +12,7 @@ var mobxStateTree = require('mobx-state-tree');
12
12
  var helper = require('../utils/helper.js');
13
13
  var service = require('./service.js');
14
14
  require('../utils/api.js');
15
+ require('file-saver');
15
16
  require('../utils/browser.js');
16
17
  require('../utils/ColorScale.js');
17
18
  require('../utils/columnsSplit.js');
@@ -172,7 +172,7 @@ export declare const UniqueGroup: import("mobx-state-tree").IModelType<{
172
172
  closeDialog: (confirmed?: any, result?: any) => void;
173
173
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
174
174
  closePopOver: (confirmed?: any, result?: any) => void;
175
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
175
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
176
176
  changeEmitedValue: (value: any) => void;
177
177
  addSubFormItem: (item: {
178
178
  id: string;
@@ -707,7 +707,7 @@ export declare const UniqueGroup: import("mobx-state-tree").IModelType<{
707
707
  closeDialog: (confirmed?: any, result?: any) => void;
708
708
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
709
709
  closePopOver: (confirmed?: any, result?: any) => void;
710
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
710
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
711
711
  changeEmitedValue: (value: any) => void;
712
712
  addSubFormItem: (item: {
713
713
  id: string;
@@ -1276,7 +1276,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
1276
1276
  closeDialog: (confirmed?: any, result?: any) => void;
1277
1277
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
1278
1278
  closePopOver: (confirmed?: any, result?: any) => void;
1279
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
1279
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
1280
1280
  changeEmitedValue: (value: any) => void;
1281
1281
  addSubFormItem: (item: {
1282
1282
  id: string;
@@ -1811,7 +1811,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
1811
1811
  closeDialog: (confirmed?: any, result?: any) => void;
1812
1812
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
1813
1813
  closePopOver: (confirmed?: any, result?: any) => void;
1814
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
1814
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
1815
1815
  changeEmitedValue: (value: any) => void;
1816
1816
  addSubFormItem: (item: {
1817
1817
  id: string;
@@ -2471,7 +2471,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
2471
2471
  closeDialog: (confirmed?: any, result?: any) => void;
2472
2472
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
2473
2473
  closePopOver: (confirmed?: any, result?: any) => void;
2474
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
2474
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
2475
2475
  changeEmitedValue: (value: any) => void;
2476
2476
  addSubFormItem: (item: {
2477
2477
  id: string;
@@ -3006,7 +3006,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
3006
3006
  closeDialog: (confirmed?: any, result?: any) => void;
3007
3007
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
3008
3008
  closePopOver: (confirmed?: any, result?: any) => void;
3009
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
3009
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
3010
3010
  changeEmitedValue: (value: any) => void;
3011
3011
  addSubFormItem: (item: {
3012
3012
  id: string;
@@ -3545,7 +3545,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
3545
3545
  closeDialog: (confirmed?: any, result?: any) => void;
3546
3546
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
3547
3547
  closePopOver: (confirmed?: any, result?: any) => void;
3548
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
3548
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
3549
3549
  changeEmitedValue: (value: any) => void;
3550
3550
  addSubFormItem: (item: {
3551
3551
  id: string;
@@ -4080,7 +4080,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
4080
4080
  closeDialog: (confirmed?: any, result?: any) => void;
4081
4081
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
4082
4082
  closePopOver: (confirmed?: any, result?: any) => void;
4083
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
4083
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
4084
4084
  changeEmitedValue: (value: any) => void;
4085
4085
  addSubFormItem: (item: {
4086
4086
  id: string;
@@ -4624,7 +4624,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
4624
4624
  closeDialog: (confirmed?: any, result?: any) => void;
4625
4625
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
4626
4626
  closePopOver: (confirmed?: any, result?: any) => void;
4627
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
4627
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
4628
4628
  changeEmitedValue: (value: any) => void;
4629
4629
  addSubFormItem: (item: {
4630
4630
  id: string;
@@ -5159,7 +5159,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
5159
5159
  closeDialog: (confirmed?: any, result?: any) => void;
5160
5160
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
5161
5161
  closePopOver: (confirmed?: any, result?: any) => void;
5162
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
5162
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
5163
5163
  changeEmitedValue: (value: any) => void;
5164
5164
  addSubFormItem: (item: {
5165
5165
  id: string;
@@ -5698,7 +5698,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
5698
5698
  closeDialog: (confirmed?: any, result?: any) => void;
5699
5699
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
5700
5700
  closePopOver: (confirmed?: any, result?: any) => void;
5701
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
5701
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
5702
5702
  changeEmitedValue: (value: any) => void;
5703
5703
  addSubFormItem: (item: {
5704
5704
  id: string;
@@ -6233,7 +6233,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
6233
6233
  closeDialog: (confirmed?: any, result?: any) => void;
6234
6234
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
6235
6235
  closePopOver: (confirmed?: any, result?: any) => void;
6236
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
6236
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
6237
6237
  changeEmitedValue: (value: any) => void;
6238
6238
  addSubFormItem: (item: {
6239
6239
  id: string;
@@ -6772,7 +6772,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
6772
6772
  closeDialog: (confirmed?: any, result?: any) => void;
6773
6773
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
6774
6774
  closePopOver: (confirmed?: any, result?: any) => void;
6775
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
6775
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
6776
6776
  changeEmitedValue: (value: any) => void;
6777
6777
  addSubFormItem: (item: {
6778
6778
  id: string;
@@ -7307,7 +7307,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7307
7307
  closeDialog: (confirmed?: any, result?: any) => void;
7308
7308
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
7309
7309
  closePopOver: (confirmed?: any, result?: any) => void;
7310
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
7310
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
7311
7311
  changeEmitedValue: (value: any) => void;
7312
7312
  addSubFormItem: (item: {
7313
7313
  id: string;
@@ -7969,7 +7969,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7969
7969
  closeDialog: (confirmed?: any, result?: any) => void;
7970
7970
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
7971
7971
  closePopOver: (confirmed?: any, result?: any) => void;
7972
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
7972
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
7973
7973
  changeEmitedValue: (value: any) => void;
7974
7974
  addSubFormItem: (item: {
7975
7975
  id: string;
@@ -8504,7 +8504,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
8504
8504
  closeDialog: (confirmed?: any, result?: any) => void;
8505
8505
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
8506
8506
  closePopOver: (confirmed?: any, result?: any) => void;
8507
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
8507
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
8508
8508
  changeEmitedValue: (value: any) => void;
8509
8509
  addSubFormItem: (item: {
8510
8510
  id: string;
@@ -9043,7 +9043,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
9043
9043
  closeDialog: (confirmed?: any, result?: any) => void;
9044
9044
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
9045
9045
  closePopOver: (confirmed?: any, result?: any) => void;
9046
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
9046
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
9047
9047
  changeEmitedValue: (value: any) => void;
9048
9048
  addSubFormItem: (item: {
9049
9049
  id: string;
@@ -9578,7 +9578,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
9578
9578
  closeDialog: (confirmed?: any, result?: any) => void;
9579
9579
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
9580
9580
  closePopOver: (confirmed?: any, result?: any) => void;
9581
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
9581
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
9582
9582
  changeEmitedValue: (value: any) => void;
9583
9583
  addSubFormItem: (item: {
9584
9584
  id: string;
@@ -10122,7 +10122,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
10122
10122
  closeDialog: (confirmed?: any, result?: any) => void;
10123
10123
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
10124
10124
  closePopOver: (confirmed?: any, result?: any) => void;
10125
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
10125
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
10126
10126
  changeEmitedValue: (value: any) => void;
10127
10127
  addSubFormItem: (item: {
10128
10128
  id: string;
@@ -10657,7 +10657,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
10657
10657
  closeDialog: (confirmed?: any, result?: any) => void;
10658
10658
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
10659
10659
  closePopOver: (confirmed?: any, result?: any) => void;
10660
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
10660
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
10661
10661
  changeEmitedValue: (value: any) => void;
10662
10662
  addSubFormItem: (item: {
10663
10663
  id: string;
@@ -11196,7 +11196,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
11196
11196
  closeDialog: (confirmed?: any, result?: any) => void;
11197
11197
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
11198
11198
  closePopOver: (confirmed?: any, result?: any) => void;
11199
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
11199
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
11200
11200
  changeEmitedValue: (value: any) => void;
11201
11201
  addSubFormItem: (item: {
11202
11202
  id: string;
@@ -11731,7 +11731,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
11731
11731
  closeDialog: (confirmed?: any, result?: any) => void;
11732
11732
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
11733
11733
  closePopOver: (confirmed?: any, result?: any) => void;
11734
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
11734
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
11735
11735
  changeEmitedValue: (value: any) => void;
11736
11736
  addSubFormItem: (item: {
11737
11737
  id: string;
@@ -12270,7 +12270,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
12270
12270
  closeDialog: (confirmed?: any, result?: any) => void;
12271
12271
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
12272
12272
  closePopOver: (confirmed?: any, result?: any) => void;
12273
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
12273
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
12274
12274
  changeEmitedValue: (value: any) => void;
12275
12275
  addSubFormItem: (item: {
12276
12276
  id: string;
@@ -12805,7 +12805,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
12805
12805
  closeDialog: (confirmed?: any, result?: any) => void;
12806
12806
  openPopOver: (schema: any, ctx: any, callback?: ((confirmed?: any, value?: any) => void) | undefined) => void;
12807
12807
  closePopOver: (confirmed?: any, result?: any) => void;
12808
- changeTmpValue: (value: any, changeReason?: "input" | "defaultValue" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | undefined) => void;
12808
+ changeTmpValue: (value: any, changeReason?: "input" | "initialValue" | "formInited" | "dataChanged" | "formulaChanged" | "controlled" | "defaultValue" | undefined) => void;
12809
12809
  changeEmitedValue: (value: any) => void;
12810
12810
  addSubFormItem: (item: {
12811
12811
  id: string;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.11.0-beta.9
2
+ * amis-core v6.12.0-ab.1
3
3
  * Copyright 2018-2025 fex
4
4
  */
5
5
 
@@ -137,6 +137,8 @@ export declare const CRUDStore: import("mobx-state-tree").IModelType<{
137
137
  matchFunc?: MatchFunc;
138
138
  filterOnAllColumns?: boolean;
139
139
  isTable2?: Boolean;
140
+ minLoadingTime?: number;
141
+ dataAppendTo?: 'top' | 'bottom';
140
142
  }) => Promise<any>;
141
143
  changePage: (page: number | string, perPage?: number | string) => void;
142
144
  changePerPage: (perPage: number | string) => void;
package/lib/store/crud.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.11.0-beta.9
2
+ * amis-core v6.12.0-ab.1
3
3
  * Copyright 2018-2025 fex
4
4
  */
5
5
 
@@ -141,14 +141,15 @@ var CRUDStore = service.ServiceStore.named('CRUDStore')
141
141
  }
142
142
  }
143
143
  var fetchInitData = mobxStateTree.flow(function getInitData(api$1, data, options) {
144
- var rawItems, matchFunc, items, dir, data_1, ctx, json, result, total, count, page, hasNext, oItems, oRows, columns, rest, items, _a, _b, key, rowsData, data_2, filteredItems, dir, e_1, env;
144
+ var startTime, rawItems, matchFunc, items, dir, data_1, ctx, json, elapsedTime, remainingTime_1, result, total, count, page, hasNext, oItems, oRows, columns, rest, items, _a, _b, key, rowsData, data_2, filteredItems, dir, e_1, env;
145
145
  var _c, e_2, _d;
146
146
  var _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
147
147
  if (options === void 0) { options = {}; }
148
148
  return tslib.__generator(this, function (_q) {
149
149
  switch (_q.label) {
150
150
  case 0:
151
- _q.trys.push([0, 2, , 3]);
151
+ _q.trys.push([0, 6, , 7]);
152
+ startTime = Date.now();
152
153
  rawItems = options.source
153
154
  ? resolveVariableAndFilter.resolveVariableAndFilter(options.source, object.createObject(self.mergedData, {
154
155
  items: self.data.itemsRaw,
@@ -188,116 +189,131 @@ var CRUDStore = service.ServiceStore.named('CRUDStore')
188
189
  case 1:
189
190
  json = _q.sent();
190
191
  fetchCancel = null;
191
- if (!json.ok) {
192
- self.updateMessage((_j = (_h = (_g = (_f = api$1 === null || api$1 === void 0 ? void 0 : api$1.messages) === null || _f === void 0 ? void 0 : _f.failed) !== null && _g !== void 0 ? _g : json.msg) !== null && _h !== void 0 ? _h : options.errorMessage) !== null && _j !== void 0 ? _j : self.__('CRUD.fetchFailed'), true);
193
- !(api$1 === null || api$1 === void 0 ? void 0 : api$1.silent) &&
194
- mobxStateTree.getEnv(self).notify('error', json.msg, json.msgTimeout !== undefined
195
- ? {
196
- closeButton: true,
197
- timeout: json.msgTimeout
198
- }
199
- : undefined);
192
+ if (!!json.ok) return [3 /*break*/, 2];
193
+ self.updateMessage((_j = (_h = (_g = (_f = api$1 === null || api$1 === void 0 ? void 0 : api$1.messages) === null || _f === void 0 ? void 0 : _f.failed) !== null && _g !== void 0 ? _g : json.msg) !== null && _h !== void 0 ? _h : options.errorMessage) !== null && _j !== void 0 ? _j : self.__('CRUD.fetchFailed'), true);
194
+ !(api$1 === null || api$1 === void 0 ? void 0 : api$1.silent) &&
195
+ mobxStateTree.getEnv(self).notify('error', json.msg, json.msgTimeout !== undefined
196
+ ? {
197
+ closeButton: true,
198
+ timeout: json.msgTimeout
199
+ }
200
+ : undefined);
201
+ return [3 /*break*/, 5];
202
+ case 2:
203
+ if (!json.data) {
204
+ throw new Error(self.__('CRUD.invalidData'));
205
+ }
206
+ if (!options.minLoadingTime) return [3 /*break*/, 4];
207
+ elapsedTime = Date.now() - startTime;
208
+ remainingTime_1 = options.minLoadingTime - elapsedTime;
209
+ if (!(remainingTime_1 > 0)) return [3 /*break*/, 4];
210
+ return [4 /*yield*/, new Promise(function (resolve) { return setTimeout(resolve, remainingTime_1); })];
211
+ case 3:
212
+ _q.sent();
213
+ _q.label = 4;
214
+ case 4:
215
+ self.updatedAt = Date.now();
216
+ result = api.normalizeApiResponseData(json.data);
217
+ total = result.total, count = result.count, page = result.page, hasNext = result.hasNext, oItems = result.items, oRows = result.rows, columns = result.columns, rest = tslib.__rest(result, ["total", "count", "page", "hasNext", "items", "rows", "columns"]);
218
+ items = void 0;
219
+ if (options.source) {
220
+ items = resolveVariableAndFilter.resolveVariableAndFilter(options.source, object.createObject(self.filterData, result), '| raw');
200
221
  }
201
222
  else {
202
- if (!json.data) {
203
- throw new Error(self.__('CRUD.invalidData'));
204
- }
205
- self.updatedAt = Date.now();
206
- result = api.normalizeApiResponseData(json.data);
207
- total = result.total, count = result.count, page = result.page, hasNext = result.hasNext, oItems = result.items, oRows = result.rows, columns = result.columns, rest = tslib.__rest(result, ["total", "count", "page", "hasNext", "items", "rows", "columns"]);
208
- items = void 0;
209
- if (options.source) {
210
- items = resolveVariableAndFilter.resolveVariableAndFilter(options.source, object.createObject(self.filterData, result), '| raw');
211
- }
212
- else {
213
- items = result.items || result.rows;
214
- }
215
- if (!Array.isArray(items)) {
216
- try {
217
- // 如果不按照 items 格式返回,就拿第一个数组当成 items
218
- for (_a = tslib.__values(Object.keys(result)), _b = _a.next(); !_b.done; _b = _a.next()) {
219
- key = _b.value;
220
- if (result.hasOwnProperty(key) && Array.isArray(result[key])) {
221
- items = result[key];
222
- break;
223
- }
224
- }
225
- }
226
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
227
- finally {
228
- try {
229
- if (_b && !_b.done && (_d = _a.return)) _d.call(_a);
223
+ items = result.items || result.rows;
224
+ }
225
+ if (!Array.isArray(items)) {
226
+ try {
227
+ // 如果不按照 items 格式返回,就拿第一个数组当成 items
228
+ for (_a = tslib.__values(Object.keys(result)), _b = _a.next(); !_b.done; _b = _a.next()) {
229
+ key = _b.value;
230
+ if (result.hasOwnProperty(key) && Array.isArray(result[key])) {
231
+ items = result[key];
232
+ break;
230
233
  }
231
- finally { if (e_2) throw e_2.error; }
232
234
  }
233
235
  }
234
- else if (items == null) {
235
- items = [];
236
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
237
+ finally {
238
+ try {
239
+ if (_b && !_b.done && (_d = _a.return)) _d.call(_a);
240
+ }
241
+ finally { if (e_2) throw e_2.error; }
236
242
  }
237
- if (!Array.isArray(items)) {
238
- throw new Error(self.__('CRUD.invalidArray'));
243
+ }
244
+ else if (items == null) {
245
+ items = [];
246
+ }
247
+ if (!Array.isArray(items)) {
248
+ throw new Error(self.__('CRUD.invalidArray'));
249
+ }
250
+ else {
251
+ // 确保成员是对象。
252
+ items.map(function (item) {
253
+ return typeof item === 'string' ? { text: item } : item;
254
+ });
255
+ }
256
+ rowsData = [];
257
+ if (options.loadDataMode && Array.isArray(self.data.items)) {
258
+ if (options.dataAppendTo === 'top') {
259
+ rowsData = items.concat(self.data.items);
239
260
  }
240
261
  else {
241
- // 确保成员是对象。
242
- items.map(function (item) {
243
- return typeof item === 'string' ? { text: item } : item;
244
- });
245
- }
246
- rowsData = [];
247
- if (options.loadDataMode && Array.isArray(self.data.items)) {
248
262
  rowsData = self.data.items.concat(items);
249
263
  }
250
- else {
251
- // 第一次的时候就是直接加载请求的数据
252
- rowsData = items;
253
- }
254
- data_2 = tslib.__assign(tslib.__assign(tslib.__assign({}, (api$1.replaceData ? {} : self.pristine)), { items: rowsData, count: count, total: total }), rest);
255
- if (options.loadDataOnce) {
256
- /**
257
- * 1. 记录原始集合,后续可能基于原始数据做排序查找。
258
- * 2. 接口返回中没有 items 和 rows 字段,则直接用查到的数据。
259
- */
260
- data_2.itemsRaw = oItems || oRows || rowsData.concat();
261
- filteredItems = helper.applyFilters(rowsData, {
262
- query: self.query,
263
- columns: options.columns,
264
- filterOnAllColumns: false,
265
- matchFunc: options.matchFunc
266
- });
267
- if (self.query.orderBy) {
268
- dir = /desc/i.test(self.query.orderDir) ? -1 : 1;
269
- filteredItems = helper.sortArray(filteredItems, self.query.orderBy, dir);
270
- }
271
- data_2.items = filteredItems.slice((self.page - 1) * self.perPage, self.page * self.perPage);
272
- data_2.count = data_2.total = filteredItems.length;
273
- }
274
- if (Array.isArray(columns)) {
275
- self.columns = columns.concat();
276
- }
277
- else if (rest.isTable2) {
278
- self.columns = options.columns;
279
- }
280
- self.items.replace(rowsData);
281
- self.reInitData(data_2, !!api$1.replaceData, api$1.concatDataFields);
282
- options.syncResponse2Query !== false &&
283
- updateQuery(pick__default["default"](rest, Object.keys(self.query)), undefined, options.pageField || 'page', options.perPageField || 'perPage');
284
- self.total = parseInt((_k = data_2.total) !== null && _k !== void 0 ? _k : data_2.count, 10) || 0;
285
- typeof page !== 'undefined' && (self.page = parseInt(page, 10));
286
- // 分页情况不清楚,只能知道有没有下一页。
287
- if (typeof hasNext !== 'undefined') {
288
- self.mode = 'simple';
289
- self.total = 0;
290
- self.hasNext = !!hasNext;
264
+ }
265
+ else {
266
+ // 第一次的时候就是直接加载请求的数据
267
+ rowsData = items;
268
+ }
269
+ data_2 = tslib.__assign(tslib.__assign(tslib.__assign({}, (api$1.replaceData ? {} : self.pristine)), { items: rowsData, count: count, total: total }), rest);
270
+ if (options.loadDataOnce) {
271
+ /**
272
+ * 1. 记录原始集合,后续可能基于原始数据做排序查找。
273
+ * 2. 接口返回中没有 items 和 rows 字段,则直接用查到的数据。
274
+ */
275
+ data_2.itemsRaw = oItems || oRows || rowsData.concat();
276
+ filteredItems = helper.applyFilters(rowsData, {
277
+ query: self.query,
278
+ columns: options.columns,
279
+ filterOnAllColumns: false,
280
+ matchFunc: options.matchFunc
281
+ });
282
+ if (self.query.orderBy) {
283
+ dir = /desc/i.test(self.query.orderDir) ? -1 : 1;
284
+ filteredItems = helper.sortArray(filteredItems, self.query.orderBy, dir);
291
285
  }
292
- self.updateMessage((_p = (_o = (_m = (_l = api$1.messages) === null || _l === void 0 ? void 0 : _l.success) !== null && _m !== void 0 ? _m : json.msg) !== null && _o !== void 0 ? _o : options.successMessage) !== null && _p !== void 0 ? _p : json.defaultMsg);
293
- // 配置了获取成功提示后提示,默认是空不会提示。
294
- options &&
295
- options.successMessage &&
296
- mobxStateTree.getEnv(self).notify('success', self.msg);
286
+ data_2.items = filteredItems.slice((self.page - 1) * self.perPage, self.page * self.perPage);
287
+ data_2.count = data_2.total = filteredItems.length;
288
+ }
289
+ if (Array.isArray(columns)) {
290
+ self.columns = columns.concat();
291
+ }
292
+ else if (rest.isTable2) {
293
+ self.columns = options.columns;
297
294
  }
295
+ self.items.replace(rowsData);
296
+ self.reInitData(data_2, !!api$1.replaceData, api$1.concatDataFields);
297
+ options.syncResponse2Query !== false &&
298
+ updateQuery(pick__default["default"](rest, Object.keys(self.query)), undefined, options.pageField || 'page', options.perPageField || 'perPage');
299
+ self.total = parseInt((_k = data_2.total) !== null && _k !== void 0 ? _k : data_2.count, 10) || 0;
300
+ typeof page !== 'undefined' && (self.page = parseInt(page, 10));
301
+ // 分页情况不清楚,只能知道有没有下一页。
302
+ if (typeof hasNext !== 'undefined') {
303
+ self.mode = 'simple';
304
+ self.total = 0;
305
+ self.hasNext = !!hasNext;
306
+ }
307
+ self.updateMessage((_p = (_o = (_m = (_l = api$1.messages) === null || _l === void 0 ? void 0 : _l.success) !== null && _m !== void 0 ? _m : json.msg) !== null && _o !== void 0 ? _o : options.successMessage) !== null && _p !== void 0 ? _p : json.defaultMsg);
308
+ // 配置了获取成功提示后提示,默认是空不会提示。
309
+ options &&
310
+ options.successMessage &&
311
+ mobxStateTree.getEnv(self).notify('success', self.msg);
312
+ _q.label = 5;
313
+ case 5:
298
314
  self.markFetching(false);
299
315
  return [2 /*return*/, json];
300
- case 2:
316
+ case 6:
301
317
  e_1 = _q.sent();
302
318
  env = mobxStateTree.getEnv(self);
303
319
  if (!mobxStateTree.isAlive(self) || self.disposed) {
@@ -310,7 +326,7 @@ var CRUDStore = service.ServiceStore.named('CRUDStore')
310
326
  console.error(e_1);
311
327
  !(api$1 === null || api$1 === void 0 ? void 0 : api$1.silent) && env.notify('error', e_1.message);
312
328
  return [2 /*return*/];
313
- case 3: return [2 /*return*/];
329
+ case 7: return [2 /*return*/];
314
330
  }
315
331
  });
316
332
  });