amis-core 6.9.0-rc.0 → 6.9.0-rc.2

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 (303) hide show
  1. package/esm/Root.js +1 -1
  2. package/esm/RootRenderer.js +2 -2
  3. package/esm/SchemaRenderer.js +4 -3
  4. package/esm/Scoped.js +1 -1
  5. package/esm/StatusScoped.js +1 -1
  6. package/esm/WithRootStore.js +1 -1
  7. package/esm/WithStore.js +10 -10
  8. package/esm/actions/Action.js +1 -1
  9. package/esm/actions/AjaxAction.js +1 -1
  10. package/esm/actions/BreakAction.js +1 -1
  11. package/esm/actions/BroadcastAction.js +1 -1
  12. package/esm/actions/CmptAction.js +1 -1
  13. package/esm/actions/ContinueAction.js +1 -1
  14. package/esm/actions/CopyAction.js +1 -1
  15. package/esm/actions/CustomAction.js +1 -1
  16. package/esm/actions/DialogAction.js +1 -1
  17. package/esm/actions/DrawerAction.js +1 -1
  18. package/esm/actions/EmailAction.js +1 -1
  19. package/esm/actions/EventAction.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/PrintAction.js +1 -1
  25. package/esm/actions/StatusAction.js +1 -1
  26. package/esm/actions/SwitchAction.js +1 -1
  27. package/esm/actions/ToastAction.js +1 -1
  28. package/esm/actions/WaitAction.js +1 -1
  29. package/esm/components/CustomStyle.js +1 -1
  30. package/esm/components/ErrorBoundary.js +1 -1
  31. package/esm/components/LazyComponent.js +1 -1
  32. package/esm/components/Overlay.js +1 -1
  33. package/esm/components/PopOver.js +1 -1
  34. package/esm/env.d.ts +0 -4
  35. package/esm/env.js +1 -1
  36. package/esm/envOverwrite.js +1 -1
  37. package/esm/factory.d.ts +6 -0
  38. package/esm/factory.js +33 -5
  39. package/esm/index.d.ts +2 -2
  40. package/esm/index.js +7 -3
  41. package/esm/locale.js +1 -1
  42. package/esm/polyfills.js +1 -1
  43. package/esm/renderers/Form.d.ts +4 -4
  44. package/esm/renderers/Form.js +19 -9
  45. package/esm/renderers/Item.d.ts +18 -12
  46. package/esm/renderers/Item.js +1 -1
  47. package/esm/renderers/Options.js +1 -1
  48. package/esm/renderers/Placeholder.js +1 -1
  49. package/esm/renderers/builtin.js +1 -1
  50. package/esm/renderers/register.js +1 -1
  51. package/esm/renderers/wrapControl.d.ts +3 -3
  52. package/esm/renderers/wrapControl.js +19 -6
  53. package/esm/store/app.d.ts +3 -3
  54. package/esm/store/app.js +1 -1
  55. package/esm/store/combo.d.ts +17 -15
  56. package/esm/store/combo.js +1 -1
  57. package/esm/store/crud.d.ts +3 -3
  58. package/esm/store/crud.js +1 -1
  59. package/esm/store/form.d.ts +8 -7
  60. package/esm/store/form.js +28 -6
  61. package/esm/store/formItem.js +3 -3
  62. package/esm/store/iRenderer.d.ts +4 -3
  63. package/esm/store/iRenderer.js +28 -4
  64. package/esm/store/index.js +1 -1
  65. package/esm/store/list.d.ts +3 -3
  66. package/esm/store/list.js +1 -1
  67. package/esm/store/manager.js +1 -1
  68. package/esm/store/modal.d.ts +3 -3
  69. package/esm/store/modal.js +1 -1
  70. package/esm/store/node.js +1 -1
  71. package/esm/store/pagination.d.ts +3 -3
  72. package/esm/store/pagination.js +1 -1
  73. package/esm/store/root.d.ts +3 -3
  74. package/esm/store/root.js +1 -1
  75. package/esm/store/service.d.ts +3 -3
  76. package/esm/store/service.js +10 -4
  77. package/esm/store/status.js +1 -1
  78. package/esm/store/table.d.ts +17 -15
  79. package/esm/store/table.js +1 -1
  80. package/esm/store/table2.d.ts +3 -3
  81. package/esm/store/table2.js +1 -1
  82. package/esm/theme.js +1 -1
  83. package/esm/types.d.ts +15 -0
  84. package/esm/utils/Animation.js +1 -1
  85. package/esm/utils/ColorScale.js +1 -1
  86. package/esm/utils/DataSchema.js +1 -1
  87. package/esm/utils/DataScope.js +1 -1
  88. package/esm/utils/RootClose.js +1 -1
  89. package/esm/utils/SimpleMap.js +1 -1
  90. package/esm/utils/api.js +1 -1
  91. package/esm/utils/arraySlice.js +1 -1
  92. package/esm/utils/attachmentAdpator.js +1 -1
  93. package/esm/utils/autobind.js +1 -1
  94. package/esm/utils/browser.js +1 -1
  95. package/esm/utils/columnsSplit.js +1 -1
  96. package/esm/utils/concatData.js +1 -1
  97. package/esm/utils/dataMapping.js +1 -1
  98. package/esm/utils/date.js +1 -1
  99. package/esm/utils/debug.js +1 -1
  100. package/esm/utils/decodeEntity.js +1 -1
  101. package/esm/utils/dom.js +1 -1
  102. package/esm/utils/errors.js +1 -1
  103. package/esm/utils/escapeHtml.js +1 -1
  104. package/esm/utils/filter-schema.js +1 -1
  105. package/esm/utils/filter.js +1 -1
  106. package/esm/utils/formatDuration.js +1 -1
  107. package/esm/utils/formula.js +1 -1
  108. package/esm/utils/getVariable.js +1 -1
  109. package/esm/utils/grammar.js +1 -1
  110. package/esm/utils/handleAction.js +1 -1
  111. package/esm/utils/helper.js +1 -1
  112. package/esm/utils/highlight.js +1 -1
  113. package/esm/utils/icon.js +1 -1
  114. package/esm/utils/image.js +1 -1
  115. package/esm/utils/isPureVariable.js +1 -1
  116. package/esm/utils/json-schema-2-amis-schema.js +1 -1
  117. package/esm/utils/keyToPath.js +1 -1
  118. package/esm/utils/labelToString.js +4 -1
  119. package/esm/utils/makeSorter.js +1 -1
  120. package/esm/utils/math.js +1 -1
  121. package/esm/utils/memoryParse.js +1 -1
  122. package/esm/utils/normalizeLink.js +1 -1
  123. package/esm/utils/normalizeOptions.js +1 -1
  124. package/esm/utils/object.js +1 -1
  125. package/esm/utils/offset.js +1 -1
  126. package/esm/utils/offsetParent.js +1 -1
  127. package/esm/utils/optionValueCompare.js +1 -1
  128. package/esm/utils/position.js +1 -1
  129. package/esm/utils/prettyBytes.js +1 -1
  130. package/esm/utils/printElement.js +1 -1
  131. package/esm/utils/renderer-event.js +1 -1
  132. package/esm/utils/replaceText.js +1 -1
  133. package/esm/utils/resize-sensor.js +1 -1
  134. package/esm/utils/resolveCondition.js +1 -1
  135. package/esm/utils/resolveVariable.js +1 -1
  136. package/esm/utils/resolveVariableAndFilter.js +1 -1
  137. package/esm/utils/resolveVariableAndFilterForAsync.js +1 -1
  138. package/esm/utils/scrollPosition.js +1 -1
  139. package/esm/utils/string2regExp.js +1 -1
  140. package/esm/utils/stripNumber.js +1 -1
  141. package/esm/utils/style-helper.js +1 -1
  142. package/esm/utils/style.js +1 -1
  143. package/esm/utils/toNumber.js +1 -1
  144. package/esm/utils/tokenize.js +1 -1
  145. package/esm/utils/tpl-builtin.js +1 -1
  146. package/esm/utils/tpl-lodash.js +1 -1
  147. package/esm/utils/tpl.js +1 -1
  148. package/esm/utils/uncontrollable.js +1 -1
  149. package/esm/utils/validateId.js +1 -1
  150. package/esm/utils/validations.js +1 -1
  151. package/esm/utils/visitedCache.js +1 -1
  152. package/lib/Root.js +1 -1
  153. package/lib/RootRenderer.js +2 -2
  154. package/lib/SchemaRenderer.js +4 -3
  155. package/lib/Scoped.js +1 -1
  156. package/lib/StatusScoped.js +1 -1
  157. package/lib/WithRootStore.js +1 -1
  158. package/lib/WithStore.js +10 -10
  159. package/lib/actions/Action.js +1 -1
  160. package/lib/actions/AjaxAction.js +1 -1
  161. package/lib/actions/BreakAction.js +1 -1
  162. package/lib/actions/BroadcastAction.js +1 -1
  163. package/lib/actions/CmptAction.js +1 -1
  164. package/lib/actions/ContinueAction.js +1 -1
  165. package/lib/actions/CopyAction.js +1 -1
  166. package/lib/actions/CustomAction.js +1 -1
  167. package/lib/actions/DialogAction.js +1 -1
  168. package/lib/actions/DrawerAction.js +1 -1
  169. package/lib/actions/EmailAction.js +1 -1
  170. package/lib/actions/EventAction.js +1 -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/CustomStyle.js +1 -1
  181. package/lib/components/ErrorBoundary.js +1 -1
  182. package/lib/components/LazyComponent.js +1 -1
  183. package/lib/components/Overlay.js +1 -1
  184. package/lib/components/PopOver.js +1 -1
  185. package/lib/env.d.ts +0 -4
  186. package/lib/env.js +1 -1
  187. package/lib/envOverwrite.js +1 -1
  188. package/lib/factory.d.ts +6 -0
  189. package/lib/factory.js +34 -4
  190. package/lib/index.d.ts +2 -2
  191. package/lib/index.js +8 -2
  192. package/lib/locale.js +1 -1
  193. package/lib/polyfills.js +1 -1
  194. package/lib/renderers/Form.d.ts +4 -4
  195. package/lib/renderers/Form.js +19 -9
  196. package/lib/renderers/Item.d.ts +18 -12
  197. package/lib/renderers/Item.js +1 -1
  198. package/lib/renderers/Options.js +1 -1
  199. package/lib/renderers/Placeholder.js +1 -1
  200. package/lib/renderers/builtin.js +1 -1
  201. package/lib/renderers/register.js +1 -1
  202. package/lib/renderers/wrapControl.d.ts +3 -3
  203. package/lib/renderers/wrapControl.js +19 -6
  204. package/lib/store/app.d.ts +3 -3
  205. package/lib/store/app.js +1 -1
  206. package/lib/store/combo.d.ts +17 -15
  207. package/lib/store/combo.js +1 -1
  208. package/lib/store/crud.d.ts +3 -3
  209. package/lib/store/crud.js +1 -1
  210. package/lib/store/form.d.ts +8 -7
  211. package/lib/store/form.js +28 -6
  212. package/lib/store/formItem.js +3 -3
  213. package/lib/store/iRenderer.d.ts +4 -3
  214. package/lib/store/iRenderer.js +28 -4
  215. package/lib/store/index.js +1 -1
  216. package/lib/store/list.d.ts +3 -3
  217. package/lib/store/list.js +1 -1
  218. package/lib/store/manager.js +1 -1
  219. package/lib/store/modal.d.ts +3 -3
  220. package/lib/store/modal.js +1 -1
  221. package/lib/store/node.js +1 -1
  222. package/lib/store/pagination.d.ts +3 -3
  223. package/lib/store/pagination.js +1 -1
  224. package/lib/store/root.d.ts +3 -3
  225. package/lib/store/root.js +1 -1
  226. package/lib/store/service.d.ts +3 -3
  227. package/lib/store/service.js +10 -4
  228. package/lib/store/status.js +1 -1
  229. package/lib/store/table.d.ts +17 -15
  230. package/lib/store/table.js +1 -1
  231. package/lib/store/table2.d.ts +3 -3
  232. package/lib/store/table2.js +1 -1
  233. package/lib/theme.js +1 -1
  234. package/lib/types.d.ts +15 -0
  235. package/lib/utils/Animation.js +1 -1
  236. package/lib/utils/ColorScale.js +1 -1
  237. package/lib/utils/DataSchema.js +1 -1
  238. package/lib/utils/DataScope.js +1 -1
  239. package/lib/utils/RootClose.js +1 -1
  240. package/lib/utils/SimpleMap.js +1 -1
  241. package/lib/utils/api.js +1 -1
  242. package/lib/utils/arraySlice.js +1 -1
  243. package/lib/utils/attachmentAdpator.js +1 -1
  244. package/lib/utils/autobind.js +1 -1
  245. package/lib/utils/browser.js +1 -1
  246. package/lib/utils/columnsSplit.js +1 -1
  247. package/lib/utils/concatData.js +1 -1
  248. package/lib/utils/dataMapping.js +1 -1
  249. package/lib/utils/date.js +1 -1
  250. package/lib/utils/debug.js +1 -1
  251. package/lib/utils/decodeEntity.js +1 -1
  252. package/lib/utils/dom.js +1 -1
  253. package/lib/utils/errors.js +1 -1
  254. package/lib/utils/escapeHtml.js +1 -1
  255. package/lib/utils/filter-schema.js +1 -1
  256. package/lib/utils/filter.js +1 -1
  257. package/lib/utils/formatDuration.js +1 -1
  258. package/lib/utils/formula.js +1 -1
  259. package/lib/utils/getVariable.js +1 -1
  260. package/lib/utils/grammar.js +1 -1
  261. package/lib/utils/handleAction.js +1 -1
  262. package/lib/utils/helper.js +1 -1
  263. package/lib/utils/highlight.js +1 -1
  264. package/lib/utils/icon.js +1 -1
  265. package/lib/utils/image.js +1 -1
  266. package/lib/utils/isPureVariable.js +1 -1
  267. package/lib/utils/json-schema-2-amis-schema.js +1 -1
  268. package/lib/utils/keyToPath.js +1 -1
  269. package/lib/utils/labelToString.js +4 -1
  270. package/lib/utils/makeSorter.js +1 -1
  271. package/lib/utils/math.js +1 -1
  272. package/lib/utils/memoryParse.js +1 -1
  273. package/lib/utils/normalizeLink.js +1 -1
  274. package/lib/utils/normalizeOptions.js +1 -1
  275. package/lib/utils/object.js +1 -1
  276. package/lib/utils/offset.js +1 -1
  277. package/lib/utils/offsetParent.js +1 -1
  278. package/lib/utils/optionValueCompare.js +1 -1
  279. package/lib/utils/position.js +1 -1
  280. package/lib/utils/prettyBytes.js +1 -1
  281. package/lib/utils/printElement.js +1 -1
  282. package/lib/utils/renderer-event.js +1 -1
  283. package/lib/utils/replaceText.js +1 -1
  284. package/lib/utils/resize-sensor.js +1 -1
  285. package/lib/utils/resolveCondition.js +1 -1
  286. package/lib/utils/resolveVariable.js +1 -1
  287. package/lib/utils/resolveVariableAndFilter.js +1 -1
  288. package/lib/utils/resolveVariableAndFilterForAsync.js +1 -1
  289. package/lib/utils/scrollPosition.js +1 -1
  290. package/lib/utils/string2regExp.js +1 -1
  291. package/lib/utils/stripNumber.js +1 -1
  292. package/lib/utils/style-helper.js +1 -1
  293. package/lib/utils/style.js +1 -1
  294. package/lib/utils/toNumber.js +1 -1
  295. package/lib/utils/tokenize.js +1 -1
  296. package/lib/utils/tpl-builtin.js +1 -1
  297. package/lib/utils/tpl-lodash.js +1 -1
  298. package/lib/utils/tpl.js +1 -1
  299. package/lib/utils/uncontrollable.js +1 -1
  300. package/lib/utils/validateId.js +1 -1
  301. package/lib/utils/validations.js +1 -1
  302. package/lib/utils/visitedCache.js +1 -1
  303. package/package.json +2 -2
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.0
2
+ * amis-core v6.9.0-rc.2
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -92,6 +92,7 @@ var Form = /** @class */ (function (_super) {
92
92
  _this.blockRouting = _this.blockRouting.bind(_this);
93
93
  _this.beforePageUnload = _this.beforePageUnload.bind(_this);
94
94
  _this.formItemDispatchEvent = _this.formItemDispatchEvent.bind(_this);
95
+ _this.flush = _this.flush.bind(_this);
95
96
  var store = props.store, canAccessSuperData = props.canAccessSuperData, persistData = props.persistData, simpleMode = props.simpleMode, formLazyChange = props.formLazyChange;
96
97
  store.setCanAccessSuperData(canAccessSuperData !== false);
97
98
  store.setPersistData(persistData);
@@ -177,7 +178,9 @@ var Form = /** @class */ (function (_super) {
177
178
  successMessage: fetchSuccess,
178
179
  errorMessage: fetchFailed,
179
180
  onSuccess: function (json, data) {
180
- store.setValues(data);
181
+ store.setValues(data, undefined, undefined, undefined, {
182
+ type: 'api'
183
+ });
181
184
  if (!isEffectiveApi(initAsyncApi, store.data) ||
182
185
  store.data[initFinishedField || 'finished']) {
183
186
  return;
@@ -444,7 +447,9 @@ var Form = /** @class */ (function (_super) {
444
447
  Form.prototype.setValues = function (value, replace) {
445
448
  var store = this.props.store;
446
449
  this.flush();
447
- store.setValues(value, undefined, replace);
450
+ store.setValues(value, undefined, replace, undefined, {
451
+ type: 'action'
452
+ });
448
453
  };
449
454
  Form.prototype.submit = function (fn, throwErrors, skipFlush) {
450
455
  if (throwErrors === void 0) { throwErrors = false; }
@@ -554,13 +559,15 @@ var Form = /** @class */ (function (_super) {
554
559
  }
555
560
  }
556
561
  };
557
- Form.prototype.handleChange = function (value, name, submit, changePristine) {
562
+ Form.prototype.handleChange = function (value, name, submit, changePristine, changeReason) {
558
563
  if (changePristine === void 0) { changePristine = false; }
559
564
  var _a = this.props, store = _a.store, formLazyChange = _a.formLazyChange, persistDataKeys = _a.persistDataKeys;
560
565
  if (typeof name !== 'string') {
561
566
  return;
562
567
  }
563
- store.changeValue(name, value, changePristine);
568
+ store.changeValue(name, value, changePristine, undefined, undefined, changeReason || {
569
+ type: 'input'
570
+ });
564
571
  if (!changePristine || typeof value !== 'undefined') {
565
572
  (formLazyChange === false ? this.emitChange : this.lazyEmitChange)(submit);
566
573
  }
@@ -618,9 +625,11 @@ var Form = /** @class */ (function (_super) {
618
625
  });
619
626
  });
620
627
  };
621
- Form.prototype.handleBulkChange = function (values, submit) {
628
+ Form.prototype.handleBulkChange = function (values, submit, changeReason) {
622
629
  var _a = this.props; _a.onChange; var store = _a.store, formLazyChange = _a.formLazyChange;
623
- store.setValues(values);
630
+ store.setValues(values, undefined, undefined, undefined, changeReason || {
631
+ type: 'input'
632
+ });
624
633
  // store.updateData(values);
625
634
  // store.items.forEach(formItem => {
626
635
  // const updatedValue = getVariable(values, formItem.name, false);
@@ -870,7 +879,7 @@ var Form = /** @class */ (function (_super) {
870
879
  if (values === false) {
871
880
  return store.data;
872
881
  }
873
- if (onFinished && onFinished(values, action) === false) {
882
+ if (onFinished && onFinished(values, action, store) === false) {
874
883
  return values;
875
884
  }
876
885
  resetAfterSubmit && store.reset(_this.handleReset(action));
@@ -1229,7 +1238,8 @@ var Form = /** @class */ (function (_super) {
1229
1238
  removeHook: this.removeHook,
1230
1239
  renderFormItems: this.renderFormItems,
1231
1240
  formItemDispatchEvent: this.formItemDispatchEvent,
1232
- formPristine: form.pristine
1241
+ formPristine: form.pristine,
1242
+ onFlushForm: this.flush
1233
1243
  // value: (control as any)?.name
1234
1244
  // ? getVariable(form.data, (control as any)?.name, canAccessSuperData)
1235
1245
  // : (control as any)?.value,
@@ -4,7 +4,7 @@ import hoistNonReactStatic from 'hoist-non-react-statics';
4
4
  import { IFormItemStore, IFormStore } from '../store/form';
5
5
  import { RendererProps, TestFunc, RendererConfig } from '../factory';
6
6
  import { FormHorizontal, FormSchemaBase } from './Form';
7
- import { ActionObject, BaseApiObject, BaseSchemaWithoutType, ClassName, Schema } from '../types';
7
+ import { ActionObject, BaseApiObject, BaseSchemaWithoutType, ClassName, DataChangeReason, Schema } from '../types';
8
8
  import { IScopedContext } from '../Scoped';
9
9
  export type LabelAlign = 'right' | 'left' | 'top' | 'inherit';
10
10
  export interface FormBaseControl extends BaseSchemaWithoutType {
@@ -403,7 +403,7 @@ export interface FormItemProps extends RendererProps {
403
403
  onChange: (value: any, submitOnChange?: boolean, changeImmediately?: boolean) => void;
404
404
  onBulkChange?: (values: {
405
405
  [propName: string]: any;
406
- }, submitOnChange?: boolean) => void;
406
+ }, submitOnChange?: boolean, changeReason?: DataChangeReason) => void;
407
407
  addHook: (fn: Function, mode?: 'validate' | 'init' | 'flush', enforce?: 'prev' | 'post') => () => void;
408
408
  removeHook: (fn: Function, mode?: 'validate' | 'init' | 'flush') => void;
409
409
  renderFormItems: (schema: Partial<FormSchemaBase>, region: string, props: any) => JSX.Element;
@@ -643,9 +643,7 @@ export declare function asFormItem(config: Omit<FormItemConfig, 'component'>): (
643
643
  storeType: string;
644
644
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
645
645
  readonly fetcher: any;
646
- readonly notify: any; /**
647
- * 显示一个小图标, 鼠标放上去的时候显示提示内容
648
- */
646
+ readonly notify: any;
649
647
  readonly isCancel: (value: any) => boolean;
650
648
  readonly __: import("..").TranslateFn<any>;
651
649
  getStoreById(id: string): {
@@ -727,7 +725,10 @@ export declare function asFormItem(config: Omit<FormItemConfig, 'component'>): (
727
725
  } & {
728
726
  addStore(store: {
729
727
  [propName: string]: any;
730
- storeType: string;
728
+ storeType: string; /**
729
+ * 不设置时,当表单提交过后表单项每次修改都会触发重新验证,
730
+ * 如果设置了,则由此配置项来决定要不要每次修改都触发验证。
731
+ */
731
732
  id: string;
732
733
  path: string;
733
734
  parentId?: string | undefined;
@@ -804,14 +805,14 @@ export declare function asFormItem(config: Omit<FormItemConfig, 'component'>): (
804
805
  dispose: (callback?: (() => void) | undefined) => void;
805
806
  addChildId: (id: string) => void;
806
807
  removeChildId: (id: string) => void;
807
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>): void;
808
+ }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>): void; /**
809
+ * 配置 input className
810
+ */
808
811
  } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
809
812
  storeType: import("mobx-state-tree").IType<string | undefined, string, string>;
810
813
  }, {
811
814
  readonly fetcher: any;
812
- readonly notify: any; /**
813
- * 显示一个小图标, 鼠标放上去的时候显示提示内容
814
- */
815
+ readonly notify: any;
815
816
  readonly isCancel: (value: any) => boolean;
816
817
  readonly __: import("..").TranslateFn<any>;
817
818
  getStoreById(id: string): {
@@ -893,7 +894,10 @@ export declare function asFormItem(config: Omit<FormItemConfig, 'component'>): (
893
894
  } & {
894
895
  addStore(store: {
895
896
  [propName: string]: any;
896
- storeType: string;
897
+ storeType: string; /**
898
+ * 不设置时,当表单提交过后表单项每次修改都会触发重新验证,
899
+ * 如果设置了,则由此配置项来决定要不要每次修改都触发验证。
900
+ */
897
901
  id: string;
898
902
  path: string;
899
903
  parentId?: string | undefined;
@@ -970,7 +974,9 @@ export declare function asFormItem(config: Omit<FormItemConfig, 'component'>): (
970
974
  dispose: (callback?: (() => void) | undefined) => void;
971
975
  addChildId: (id: string) => void;
972
976
  removeChildId: (id: string) => void;
973
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>): void;
977
+ }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>): void; /**
978
+ * 配置 input className
979
+ */
974
980
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>>;
975
981
  ComposedComponent: React.ComponentType<any>;
976
982
  } & hoistNonReactStatic.NonReactStatics<any, {}> & {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.0
2
+ * amis-core v6.9.0-rc.2
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.0
2
+ * amis-core v6.9.0-rc.2
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.0
2
+ * amis-core v6.9.0-rc.2
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.0
2
+ * amis-core v6.9.0-rc.2
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.0
2
+ * amis-core v6.9.0-rc.2
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -3,7 +3,7 @@ import { IFormStore, IFormItemStore } from '../store/form';
3
3
  import { RendererProps } from '../factory';
4
4
  import { IIRendererStore } from '../store';
5
5
  import hoistNonReactStatic from 'hoist-non-react-statics';
6
- import { Api } from '../types';
6
+ import { Api, DataChangeReason } from '../types';
7
7
  export interface ControlOutterProps extends RendererProps {
8
8
  formStore?: IFormStore;
9
9
  name?: string;
@@ -40,12 +40,12 @@ export interface ControlOutterProps extends RendererProps {
40
40
  [propName: string]: any;
41
41
  };
42
42
  store?: IIRendererStore;
43
- onChange?: (value: any, name: string, submit?: boolean, changePristine?: boolean) => void;
43
+ onChange?: (value: any, name: string, submit?: boolean, changePristine?: boolean, changeReason?: DataChangeReason) => void;
44
44
  formItemDispatchEvent: (type: string, data: any) => void;
45
45
  formItemRef?: (control: any) => void;
46
46
  }
47
47
  export interface ControlProps {
48
- onBulkChange?: (values: Object) => void;
48
+ onBulkChange?: (values: Object, submitOnChange?: boolean, changeReason?: DataChangeReason) => void;
49
49
  onChange?: (value: any, name: string, submit: boolean) => void;
50
50
  store: IIRendererStore;
51
51
  }
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.0
2
+ * amis-core v6.9.0-rc.2
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -322,7 +322,9 @@ function wrapControl(ComposedComponent) {
322
322
  isAlive(formItem) &&
323
323
  formItem.removeSubFormItem(this.model);
324
324
  this.model.clearValueOnHidden &&
325
- ((_a = this.model.form) === null || _a === void 0 ? void 0 : _a.deleteValueByName(this.model.name));
325
+ ((_a = this.model.form) === null || _a === void 0 ? void 0 : _a.deleteValueByName(this.model.name, {
326
+ type: 'hide'
327
+ }));
326
328
  isAlive(rootStore) && rootStore.removeStore(this.model);
327
329
  }
328
330
  delete this.model;
@@ -445,7 +447,7 @@ function wrapControl(ComposedComponent) {
445
447
  var oldValue = this.model.value;
446
448
  value = callStrFunction.call(this, pipeOut, ['value', 'oldValue', 'data'], value, oldValue, data);
447
449
  }
448
- this.model.changeTmpValue(value, 'input');
450
+ this.model.changeTmpValue(value, type === 'formula' ? 'formulaChanged' : 'input');
449
451
  if (changeImmediately || conrolChangeImmediately || !formInited) {
450
452
  this.emitChange(submitOnChange);
451
453
  }
@@ -495,13 +497,24 @@ function wrapControl(ComposedComponent) {
495
497
  if (!this.model) {
496
498
  return;
497
499
  }
500
+ var changeReason = {
501
+ type: 'input'
502
+ };
503
+ if (model.changeMotivation === 'formulaChanged') {
504
+ changeReason.type = 'formula';
505
+ }
506
+ else if (model.changeMotivation === 'initialValue' ||
507
+ model.changeMotivation === 'formInited' ||
508
+ model.changeMotivation === 'defaultValue') {
509
+ changeReason.type = 'init';
510
+ }
498
511
  if (model.extraName) {
499
512
  var values = model.splitExtraValue(value);
500
- onChange === null || onChange === void 0 ? void 0 : onChange(values[0], model.name);
501
- onChange === null || onChange === void 0 ? void 0 : onChange(values[1], model.extraName, submitOnChange === true);
513
+ onChange === null || onChange === void 0 ? void 0 : onChange(values[0], model.name, undefined, undefined, changeReason);
514
+ onChange === null || onChange === void 0 ? void 0 : onChange(values[1], model.extraName, submitOnChange === true, undefined, changeReason);
502
515
  }
503
516
  else {
504
- onChange === null || onChange === void 0 ? void 0 : onChange(value, model.name, submitOnChange === true);
517
+ onChange === null || onChange === void 0 ? void 0 : onChange(value, model.name, submitOnChange === true, undefined, changeReason);
505
518
  }
506
519
  this.checkValidate();
507
520
  };
@@ -53,10 +53,10 @@ export declare const AppStore: import("mobx-state-tree").IModelType<{
53
53
  readonly pristineDiff: any;
54
54
  } & {
55
55
  setTopStore(value: any): void;
56
- initData(data?: object, skipSetPristine?: boolean): void;
56
+ initData(data?: object, skipSetPristine?: boolean, changeReason?: import("../types").DataChangeReason | undefined): void;
57
57
  reset(): void;
58
- updateData(data?: object, tag?: object | undefined, replace?: boolean | undefined, concatFields?: string | string[] | undefined): void;
59
- changeValue(name: string, value: any, changePristine?: boolean | undefined, force?: boolean | undefined, otherModifier?: ((data: Object) => void) | undefined): void;
58
+ updateData(data?: object, tag?: object | undefined, replace?: boolean | undefined, concatFields?: string | string[] | undefined, changeReason?: import("../types").DataChangeReason | undefined): void;
59
+ changeValue(name: string, value: any, changePristine?: boolean | undefined, force?: boolean | undefined, otherModifier?: ((data: Object) => void) | undefined, changeReason?: import("../types").DataChangeReason | undefined): void;
60
60
  setCurrentAction(action: any, resolveDefinitions?: ((schema: any) => any) | undefined): void;
61
61
  openDialog(ctx: any, additonal?: object | undefined, callback?: ((confirmed: boolean, values: any) => void) | undefined, scoped?: import("..").IScopedContext | undefined): void;
62
62
  closeDialog(confirmed?: any, data?: any): void;
package/esm/store/app.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.0
2
+ * amis-core v6.9.0-rc.2
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -2211,10 +2211,10 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
2211
2211
  readonly pristineDiff: any;
2212
2212
  } & {
2213
2213
  setTopStore(value: any): void;
2214
- initData(data?: object, skipSetPristine?: boolean): void;
2214
+ initData(data?: object, skipSetPristine?: boolean, changeReason?: import("..").DataChangeReason | undefined): void;
2215
2215
  reset(): void;
2216
- updateData(data?: object, tag?: object | undefined, replace?: boolean | undefined, concatFields?: string | string[] | undefined): void;
2217
- changeValue(name: string, value: any, changePristine?: boolean | undefined, force?: boolean | undefined, otherModifier?: ((data: Object) => void) | undefined): void;
2216
+ updateData(data?: object, tag?: object | undefined, replace?: boolean | undefined, concatFields?: string | string[] | undefined, changeReason?: import("..").DataChangeReason | undefined): void;
2217
+ changeValue(name: string, value: any, changePristine?: boolean | undefined, force?: boolean | undefined, otherModifier?: ((data: Object) => void) | undefined, changeReason?: import("..").DataChangeReason | undefined): void;
2218
2218
  setCurrentAction(action: any, resolveDefinitions?: ((schema: any) => any) | undefined): void;
2219
2219
  openDialog(ctx: any, additonal?: object | undefined, callback?: ((confirmed: boolean, values: any) => void) | undefined, scoped?: import("..").IScopedContext | undefined): void;
2220
2220
  closeDialog(confirmed?: any, data?: any): void;
@@ -2276,10 +2276,10 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
2276
2276
  readonly pristineDiff: any;
2277
2277
  } & {
2278
2278
  setTopStore(value: any): void;
2279
- initData(data?: object, skipSetPristine?: boolean): void;
2279
+ initData(data?: object, skipSetPristine?: boolean, changeReason?: import("..").DataChangeReason | undefined): void;
2280
2280
  reset(): void;
2281
- updateData(data?: object, tag?: object | undefined, replace?: boolean | undefined, concatFields?: string | string[] | undefined): void;
2282
- changeValue(name: string, value: any, changePristine?: boolean | undefined, force?: boolean | undefined, otherModifier?: ((data: Object) => void) | undefined): void;
2281
+ updateData(data?: object, tag?: object | undefined, replace?: boolean | undefined, concatFields?: string | string[] | undefined, changeReason?: import("..").DataChangeReason | undefined): void;
2282
+ changeValue(name: string, value: any, changePristine?: boolean | undefined, force?: boolean | undefined, otherModifier?: ((data: Object) => void) | undefined, changeReason?: import("..").DataChangeReason | undefined): void;
2283
2283
  setCurrentAction(action: any, resolveDefinitions?: ((schema: any) => any) | undefined): void;
2284
2284
  openDialog(ctx: any, additonal?: object | undefined, callback?: ((confirmed: boolean, values: any) => void) | undefined, scoped?: import("..").IScopedContext | undefined): void;
2285
2285
  closeDialog(confirmed?: any, data?: any): void;
@@ -7686,8 +7686,8 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7686
7686
  readonly persistKey: string;
7687
7687
  } & {
7688
7688
  setInited: (value: boolean) => void;
7689
- setValues: (values: object, tag?: object | undefined, replace?: boolean | undefined, concatFields?: string | string[] | undefined) => void;
7690
- setValueByName: (name: string, value: any, isPristine?: boolean, force?: boolean) => void;
7689
+ setValues: (values: object, tag?: object | undefined, replace?: boolean | undefined, concatFields?: string | string[] | undefined, changeReason?: import("..").DataChangeReason | undefined) => void;
7690
+ setValueByName: (name: string, value: any, isPristine?: boolean, force?: boolean, changeReason?: import("..").DataChangeReason | undefined) => void;
7691
7691
  trimValues: () => void;
7692
7692
  submit: (fn?: ((values: object) => Promise<any>) | undefined, hooks?: (() => Promise<any>)[] | undefined, failedMessage?: string | undefined, validateErrCb?: (() => void) | undefined, throwErrors?: boolean | undefined) => Promise<any>;
7693
7693
  validate: (hooks?: (() => Promise<any>)[] | undefined, forceValidate?: boolean | undefined, throwErrors?: boolean | undefined, failedMessage?: string | undefined, validateErrCb?: (() => void) | undefined) => Promise<boolean>;
@@ -7702,10 +7702,11 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7702
7702
  reset: (cb?: ((data: any) => void) | undefined, resetData?: boolean) => void;
7703
7703
  syncOptions: import("lodash").DebouncedFunc<() => void>;
7704
7704
  setCanAccessSuperData: (value?: boolean) => void;
7705
- deleteValueByName: (name: string) => void;
7705
+ deleteValueByName: (name: string, changeReason?: import("..").DataChangeReason | undefined) => void;
7706
7706
  getLocalPersistData: () => void;
7707
7707
  setLocalPersistData: (keys?: string[] | undefined) => void;
7708
7708
  clearLocalPersistData: () => void;
7709
+ setPristine: (data: object) => void;
7709
7710
  setPersistData: (value?: string) => void;
7710
7711
  clear: (cb?: ((data: any) => void) | undefined) => void;
7711
7712
  updateSavedData: () => void;
@@ -7773,10 +7774,10 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7773
7774
  readonly pristineDiff: any;
7774
7775
  } & {
7775
7776
  setTopStore(value: any): void;
7776
- initData(data?: object, skipSetPristine?: boolean): void;
7777
+ initData(data?: object, skipSetPristine?: boolean, changeReason?: import("..").DataChangeReason | undefined): void;
7777
7778
  reset(): void;
7778
- updateData(data?: object, tag?: object | undefined, replace?: boolean | undefined, concatFields?: string | string[] | undefined): void;
7779
- changeValue(name: string, value: any, changePristine?: boolean | undefined, force?: boolean | undefined, otherModifier?: ((data: Object) => void) | undefined): void;
7779
+ updateData(data?: object, tag?: object | undefined, replace?: boolean | undefined, concatFields?: string | string[] | undefined, changeReason?: import("..").DataChangeReason | undefined): void;
7780
+ changeValue(name: string, value: any, changePristine?: boolean | undefined, force?: boolean | undefined, otherModifier?: ((data: Object) => void) | undefined, changeReason?: import("..").DataChangeReason | undefined): void;
7780
7781
  setCurrentAction(action: any, resolveDefinitions?: ((schema: any) => any) | undefined): void;
7781
7782
  openDialog(ctx: any, additonal?: object | undefined, callback?: ((confirmed: boolean, values: any) => void) | undefined, scoped?: import("..").IScopedContext | undefined): void;
7782
7783
  closeDialog(confirmed?: any, data?: any): void;
@@ -13183,8 +13184,8 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
13183
13184
  readonly persistKey: string;
13184
13185
  } & {
13185
13186
  setInited: (value: boolean) => void;
13186
- setValues: (values: object, tag?: object | undefined, replace?: boolean | undefined, concatFields?: string | string[] | undefined) => void;
13187
- setValueByName: (name: string, value: any, isPristine?: boolean, force?: boolean) => void;
13187
+ setValues: (values: object, tag?: object | undefined, replace?: boolean | undefined, concatFields?: string | string[] | undefined, changeReason?: import("..").DataChangeReason | undefined) => void;
13188
+ setValueByName: (name: string, value: any, isPristine?: boolean, force?: boolean, changeReason?: import("..").DataChangeReason | undefined) => void;
13188
13189
  trimValues: () => void;
13189
13190
  submit: (fn?: ((values: object) => Promise<any>) | undefined, hooks?: (() => Promise<any>)[] | undefined, failedMessage?: string | undefined, validateErrCb?: (() => void) | undefined, throwErrors?: boolean | undefined) => Promise<any>;
13190
13191
  validate: (hooks?: (() => Promise<any>)[] | undefined, forceValidate?: boolean | undefined, throwErrors?: boolean | undefined, failedMessage?: string | undefined, validateErrCb?: (() => void) | undefined) => Promise<boolean>;
@@ -13199,10 +13200,11 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
13199
13200
  reset: (cb?: ((data: any) => void) | undefined, resetData?: boolean) => void;
13200
13201
  syncOptions: import("lodash").DebouncedFunc<() => void>;
13201
13202
  setCanAccessSuperData: (value?: boolean) => void;
13202
- deleteValueByName: (name: string) => void;
13203
+ deleteValueByName: (name: string, changeReason?: import("..").DataChangeReason | undefined) => void;
13203
13204
  getLocalPersistData: () => void;
13204
13205
  setLocalPersistData: (keys?: string[] | undefined) => void;
13205
13206
  clearLocalPersistData: () => void;
13207
+ setPristine: (data: object) => void;
13206
13208
  setPersistData: (value?: string) => void;
13207
13209
  clear: (cb?: ((data: any) => void) | undefined) => void;
13208
13210
  updateSavedData: () => void;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.0
2
+ * amis-core v6.9.0-rc.2
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -78,10 +78,10 @@ export declare const CRUDStore: import("mobx-state-tree").IModelType<{
78
78
  readonly pristineDiff: any;
79
79
  } & {
80
80
  setTopStore(value: any): void;
81
- initData(data?: object, skipSetPristine?: boolean): void;
81
+ initData(data?: object, skipSetPristine?: boolean, changeReason?: import("../types").DataChangeReason | undefined): void;
82
82
  reset(): void;
83
- updateData(data?: object, tag?: object | undefined, replace?: boolean | undefined, concatFields?: string | string[] | undefined): void;
84
- changeValue(name: string, value: any, changePristine?: boolean | undefined, force?: boolean | undefined, otherModifier?: ((data: Object) => void) | undefined): void;
83
+ updateData(data?: object, tag?: object | undefined, replace?: boolean | undefined, concatFields?: string | string[] | undefined, changeReason?: import("../types").DataChangeReason | undefined): void;
84
+ changeValue(name: string, value: any, changePristine?: boolean | undefined, force?: boolean | undefined, otherModifier?: ((data: Object) => void) | undefined, changeReason?: import("../types").DataChangeReason | undefined): void;
85
85
  setCurrentAction(action: any, resolveDefinitions?: ((schema: any) => any) | undefined): void;
86
86
  openDialog(ctx: any, additonal?: object | undefined, callback?: ((confirmed: boolean, values: any) => void) | undefined, scoped?: import("..").IScopedContext | undefined): void;
87
87
  closeDialog(confirmed?: any, data?: any): void;
package/esm/store/crud.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.0
2
+ * amis-core v6.9.0-rc.2
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,7 +1,7 @@
1
1
  /// <reference types="lodash" />
2
2
  import { Instance } from 'mobx-state-tree';
3
3
  import type { IFormItemStore } from './formItem';
4
- import { Api, fetchOptions, Payload } from '../types';
4
+ import { Api, DataChangeReason, fetchOptions, Payload } from '../types';
5
5
  export declare const FormStore: import("mobx-state-tree").IModelType<{
6
6
  id: import("mobx-state-tree").ISimpleType<string>;
7
7
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -58,10 +58,10 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
58
58
  readonly pristineDiff: any;
59
59
  } & {
60
60
  setTopStore(value: any): void;
61
- initData(data?: object, skipSetPristine?: boolean): void;
61
+ initData(data?: object, skipSetPristine?: boolean, changeReason?: DataChangeReason | undefined): void;
62
62
  reset(): void;
63
- updateData(data?: object, tag?: object | undefined, replace?: boolean | undefined, concatFields?: string | string[] | undefined): void;
64
- changeValue(name: string, value: any, changePristine?: boolean | undefined, force?: boolean | undefined, otherModifier?: ((data: Object) => void) | undefined): void;
63
+ updateData(data?: object, tag?: object | undefined, replace?: boolean | undefined, concatFields?: string | string[] | undefined, changeReason?: DataChangeReason | undefined): void;
64
+ changeValue(name: string, value: any, changePristine?: boolean | undefined, force?: boolean | undefined, otherModifier?: ((data: Object) => void) | undefined, changeReason?: DataChangeReason | undefined): void;
65
65
  setCurrentAction(action: any, resolveDefinitions?: ((schema: any) => any) | undefined): void;
66
66
  openDialog(ctx: any, additonal?: object | undefined, callback?: ((confirmed: boolean, values: any) => void) | undefined, scoped?: import("..").IScopedContext | undefined): void;
67
67
  closeDialog(confirmed?: any, data?: any): void;
@@ -5469,8 +5469,8 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
5469
5469
  readonly persistKey: string;
5470
5470
  } & {
5471
5471
  setInited: (value: boolean) => void;
5472
- setValues: (values: object, tag?: object, replace?: boolean, concatFields?: string | string[]) => void;
5473
- setValueByName: (name: string, value: any, isPristine?: boolean, force?: boolean) => void;
5472
+ setValues: (values: object, tag?: object, replace?: boolean, concatFields?: string | string[], changeReason?: DataChangeReason) => void;
5473
+ setValueByName: (name: string, value: any, isPristine?: boolean, force?: boolean, changeReason?: DataChangeReason) => void;
5474
5474
  trimValues: () => void;
5475
5475
  submit: (fn?: ((values: object) => Promise<any>) | undefined, hooks?: Array<() => Promise<any>>, failedMessage?: string, validateErrCb?: () => void, throwErrors?: boolean) => Promise<any>;
5476
5476
  validate: (hooks?: Array<() => Promise<any>>, forceValidate?: boolean, throwErrors?: boolean, failedMessage?: string, validateErrCb?: () => void) => Promise<boolean>;
@@ -5485,10 +5485,11 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
5485
5485
  reset: (cb?: ((data: any) => void) | undefined, resetData?: boolean) => void;
5486
5486
  syncOptions: import("lodash").DebouncedFunc<() => void>;
5487
5487
  setCanAccessSuperData: (value?: boolean) => void;
5488
- deleteValueByName: (name: string) => void;
5488
+ deleteValueByName: (name: string, changeReason?: DataChangeReason) => void;
5489
5489
  getLocalPersistData: () => void;
5490
5490
  setLocalPersistData: (keys?: string[]) => void;
5491
5491
  clearLocalPersistData: () => void;
5492
+ setPristine: (data: object) => void;
5492
5493
  setPersistData: (value?: string) => void;
5493
5494
  clear: (cb?: ((data: any) => void) | undefined) => void;
5494
5495
  updateSavedData: () => void;
package/esm/store/form.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.0
2
+ * amis-core v6.9.0-rc.2
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -133,8 +133,8 @@ var FormStore = ServiceStore.named('FormStore')
133
133
  };
134
134
  })
135
135
  .actions(function (self) {
136
- function setValues(values, tag, replace, concatFields) {
137
- self.updateData(values, tag, replace, concatFields);
136
+ function setValues(values, tag, replace, concatFields, changeReason) {
137
+ self.updateData(values, tag, replace, concatFields, changeReason);
138
138
  // 如果数据域中有数据变化,就都reset一下,去掉之前残留的验证消息
139
139
  self.items.forEach(function (item) {
140
140
  if (item.extraName) {
@@ -162,7 +162,7 @@ var FormStore = ServiceStore.named('FormStore')
162
162
  // 同步 options
163
163
  syncOptions();
164
164
  }
165
- function setValueByName(name, value, isPristine, force) {
165
+ function setValueByName(name, value, isPristine, force, changeReason) {
166
166
  if (isPristine === void 0) { isPristine = false; }
167
167
  if (force === void 0) { force = false; }
168
168
  // 没有变化就不跑了。
@@ -207,11 +207,19 @@ var FormStore = ServiceStore.named('FormStore')
207
207
  writable: false
208
208
  });
209
209
  }
210
+ changeReason &&
211
+ Object.isExtensible(data) &&
212
+ Object.defineProperty(data, '__changeReason', {
213
+ value: changeReason,
214
+ enumerable: false,
215
+ configurable: false,
216
+ writable: false
217
+ });
210
218
  self.data = data;
211
219
  // 同步 options
212
220
  syncOptions();
213
221
  }
214
- function deleteValueByName(name) {
222
+ function deleteValueByName(name, changeReason) {
215
223
  var prev = self.data;
216
224
  var data = cloneObject(self.data);
217
225
  if (prev.hasOwnProperty('__prev')) {
@@ -234,6 +242,14 @@ var FormStore = ServiceStore.named('FormStore')
234
242
  });
235
243
  }
236
244
  deleteVariable(data, name);
245
+ changeReason &&
246
+ Object.isExtensible(data) &&
247
+ Object.defineProperty(data, '__changeReason', {
248
+ value: changeReason,
249
+ enumerable: false,
250
+ configurable: false,
251
+ writable: false
252
+ });
237
253
  self.data = data;
238
254
  }
239
255
  function trimValues() {
@@ -303,7 +319,9 @@ var FormStore = ServiceStore.named('FormStore')
303
319
  ? {
304
320
  __saved: Date.now()
305
321
  }
306
- : undefined, !!api.replaceData, api.concatDataFields);
322
+ : undefined, !!api.replaceData, api.concatDataFields, {
323
+ type: 'api'
324
+ });
307
325
  }
308
326
  if (!!json.ok) return [3 /*break*/, 6];
309
327
  if (json.status === 422 && json.errors) {
@@ -607,6 +625,9 @@ var FormStore = ServiceStore.named('FormStore')
607
625
  var items = self.items.concat();
608
626
  items.forEach(function (item) { return item.reset(); });
609
627
  }
628
+ function setPristine(data) {
629
+ self.pristine = data;
630
+ }
610
631
  function reset(cb, resetData) {
611
632
  if (resetData === void 0) { resetData = true; }
612
633
  if (resetData) {
@@ -685,6 +706,7 @@ var FormStore = ServiceStore.named('FormStore')
685
706
  getLocalPersistData: getLocalPersistData,
686
707
  setLocalPersistData: setLocalPersistData,
687
708
  clearLocalPersistData: clearLocalPersistData,
709
+ setPristine: setPristine,
688
710
  setPersistData: setPersistData,
689
711
  clear: clear,
690
712
  updateSavedData: updateSavedData,
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.0
2
+ * amis-core v6.9.0-rc.2
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -964,12 +964,12 @@ var FormItemStore = StoreNode.named('FormItemStore')
964
964
  group &&
965
965
  group.items.forEach(function (item) {
966
966
  if (self !== item) {
967
- options_2.push.apply(options_2, __spreadArray([], __read(item.selectedOptions.map(function (item) { return item && item.value; })), false));
967
+ options_2.push.apply(options_2, __spreadArray([], __read(item.selectedOptions.map(function (item) { return item && item[valueField]; })), false));
968
968
  }
969
969
  });
970
970
  if (filteredOptions.length && options_2.length) {
971
971
  filteredOptions = mapTree(filteredOptions, function (item) {
972
- if (~options_2.indexOf(item.value)) {
972
+ if (~options_2.indexOf(item[valueField])) {
973
973
  return __assign(__assign({}, item), { disabled: true });
974
974
  }
975
975
  return item;
@@ -1,5 +1,6 @@
1
1
  import { Instance, SnapshotIn } from 'mobx-state-tree';
2
2
  import { IScopedContext } from '../Scoped';
3
+ import { DataChangeReason } from '../types';
3
4
  export declare const iRendererStore: import("mobx-state-tree").IModelType<{
4
5
  id: import("mobx-state-tree").ISimpleType<string>;
5
6
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -37,10 +38,10 @@ export declare const iRendererStore: import("mobx-state-tree").IModelType<{
37
38
  readonly pristineDiff: any;
38
39
  } & {
39
40
  setTopStore(value: any): void;
40
- initData(data?: object, skipSetPristine?: boolean): void;
41
+ initData(data?: object, skipSetPristine?: boolean, changeReason?: DataChangeReason): void;
41
42
  reset(): void;
42
- updateData(data?: object, tag?: object, replace?: boolean, concatFields?: string | string[]): void;
43
- changeValue(name: string, value: any, changePristine?: boolean, force?: boolean, otherModifier?: ((data: Object) => void) | undefined): void;
43
+ updateData(data?: object, tag?: object, replace?: boolean, concatFields?: string | string[], changeReason?: DataChangeReason): void;
44
+ changeValue(name: string, value: any, changePristine?: boolean, force?: boolean, otherModifier?: ((data: Object) => void) | undefined, changeReason?: DataChangeReason): void;
44
45
  setCurrentAction(action: any, resolveDefinitions?: ((schema: any) => any) | undefined): void;
45
46
  openDialog(ctx: any, additonal?: object, callback?: ((confirmed: boolean, values: any) => void) | undefined, scoped?: IScopedContext): void;
46
47
  closeDialog(confirmed?: any, data?: any): void;