amis-core 6.9.0-rc.1 → 6.9.0-rc.11

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 (315) hide show
  1. package/esm/Root.js +1 -1
  2. package/esm/RootRenderer.js +1 -1
  3. package/esm/SchemaRenderer.d.ts +13 -0
  4. package/esm/SchemaRenderer.js +76 -6
  5. package/esm/Scoped.d.ts +1 -1
  6. package/esm/Scoped.js +1 -1
  7. package/esm/StatusScoped.js +1 -1
  8. package/esm/StyleManager.d.ts +18 -0
  9. package/esm/StyleManager.js +55 -0
  10. package/esm/WithRootStore.js +1 -1
  11. package/esm/WithStore.js +1 -1
  12. package/esm/actions/Action.js +4 -1
  13. package/esm/actions/AjaxAction.js +1 -1
  14. package/esm/actions/BreakAction.js +1 -1
  15. package/esm/actions/BroadcastAction.js +1 -1
  16. package/esm/actions/CmptAction.js +57 -50
  17. package/esm/actions/ContinueAction.js +1 -1
  18. package/esm/actions/CopyAction.js +1 -1
  19. package/esm/actions/CustomAction.js +1 -1
  20. package/esm/actions/DialogAction.js +1 -1
  21. package/esm/actions/DrawerAction.js +1 -1
  22. package/esm/actions/EmailAction.js +1 -1
  23. package/esm/actions/EventAction.js +1 -1
  24. package/esm/actions/LinkAction.js +1 -1
  25. package/esm/actions/LoopAction.js +1 -1
  26. package/esm/actions/PageAction.js +1 -1
  27. package/esm/actions/ParallelAction.js +1 -1
  28. package/esm/actions/PrintAction.js +1 -1
  29. package/esm/actions/StatusAction.js +1 -1
  30. package/esm/actions/SwitchAction.js +1 -1
  31. package/esm/actions/ToastAction.js +3 -3
  32. package/esm/actions/WaitAction.js +1 -1
  33. package/esm/components/CustomStyle.js +1 -1
  34. package/esm/components/ErrorBoundary.js +1 -1
  35. package/esm/components/LazyComponent.js +1 -1
  36. package/esm/components/Overlay.js +1 -1
  37. package/esm/components/PopOver.js +1 -1
  38. package/esm/env.d.ts +0 -4
  39. package/esm/env.js +1 -1
  40. package/esm/envOverwrite.js +1 -1
  41. package/esm/factory.d.ts +7 -1
  42. package/esm/factory.js +51 -5
  43. package/esm/index.d.ts +6 -4
  44. package/esm/index.js +13 -6
  45. package/esm/locale.d.ts +1 -1
  46. package/esm/locale.js +13 -2
  47. package/esm/polyfills.js +1 -1
  48. package/esm/renderers/Form.d.ts +2 -2
  49. package/esm/renderers/Form.js +11 -6
  50. package/esm/renderers/Item.d.ts +2 -1
  51. package/esm/renderers/Item.js +9 -10
  52. package/esm/renderers/Options.d.ts +46 -1
  53. package/esm/renderers/Options.js +921 -914
  54. package/esm/renderers/Placeholder.js +1 -1
  55. package/esm/renderers/builtin.js +1 -1
  56. package/esm/renderers/register.js +1 -1
  57. package/esm/renderers/wrapControl.d.ts +2 -1
  58. package/esm/renderers/wrapControl.js +8 -7
  59. package/esm/store/app.js +1 -1
  60. package/esm/store/combo.d.ts +2 -0
  61. package/esm/store/combo.js +1 -1
  62. package/esm/store/crud.js +1 -1
  63. package/esm/store/form.d.ts +1 -0
  64. package/esm/store/form.js +5 -1
  65. package/esm/store/formItem.js +4 -4
  66. package/esm/store/iRenderer.js +1 -1
  67. package/esm/store/index.js +1 -1
  68. package/esm/store/list.js +1 -1
  69. package/esm/store/manager.js +1 -1
  70. package/esm/store/modal.js +1 -1
  71. package/esm/store/node.js +1 -1
  72. package/esm/store/pagination.js +1 -1
  73. package/esm/store/root.js +1 -1
  74. package/esm/store/service.js +1 -1
  75. package/esm/store/status.js +1 -1
  76. package/esm/store/table.d.ts +2 -0
  77. package/esm/store/table.js +1 -1
  78. package/esm/store/table2.js +1 -1
  79. package/esm/theme.d.ts +1 -1
  80. package/esm/theme.js +13 -2
  81. package/esm/types.d.ts +2 -0
  82. package/esm/utils/Animation.js +1 -1
  83. package/esm/utils/ColorScale.js +1 -1
  84. package/esm/utils/DataSchema.js +1 -1
  85. package/esm/utils/DataScope.js +1 -1
  86. package/esm/utils/RootClose.js +1 -1
  87. package/esm/utils/SimpleMap.js +1 -1
  88. package/esm/utils/animations.d.ts +19 -0
  89. package/esm/utils/animations.js +58 -0
  90. package/esm/utils/api.d.ts +2 -1
  91. package/esm/utils/api.js +11 -4
  92. package/esm/utils/arraySlice.js +1 -1
  93. package/esm/utils/attachmentAdpator.js +4 -1
  94. package/esm/utils/autobind.js +1 -1
  95. package/esm/utils/browser.js +1 -1
  96. package/esm/utils/columnsSplit.js +1 -1
  97. package/esm/utils/concatData.js +1 -1
  98. package/esm/utils/dataMapping.js +1 -1
  99. package/esm/utils/date.js +1 -1
  100. package/esm/utils/debug.d.ts +3 -3
  101. package/esm/utils/debug.js +104 -37
  102. package/esm/utils/decodeEntity.js +1 -1
  103. package/esm/utils/dom.js +1 -1
  104. package/esm/utils/errors.js +1 -1
  105. package/esm/utils/escapeHtml.js +1 -1
  106. package/esm/utils/filter-schema.js +1 -1
  107. package/esm/utils/filter.js +1 -1
  108. package/esm/utils/formatDuration.js +1 -1
  109. package/esm/utils/formula.js +1 -1
  110. package/esm/utils/getVariable.js +1 -1
  111. package/esm/utils/grammar.js +1 -1
  112. package/esm/utils/handleAction.js +1 -1
  113. package/esm/utils/helper.d.ts +1 -0
  114. package/esm/utils/helper.js +15 -2
  115. package/esm/utils/highlight.js +1 -1
  116. package/esm/utils/icon.js +1 -1
  117. package/esm/utils/image.js +1 -1
  118. package/esm/utils/index.d.ts +1 -0
  119. package/esm/utils/isPureVariable.js +1 -1
  120. package/esm/utils/json-schema-2-amis-schema.js +1 -1
  121. package/esm/utils/keyToPath.js +1 -1
  122. package/esm/utils/labelToString.js +2 -2
  123. package/esm/utils/loopTooMuch.d.ts +1 -0
  124. package/esm/utils/loopTooMuch.js +27 -0
  125. package/esm/utils/makeSorter.js +1 -1
  126. package/esm/utils/math.js +1 -1
  127. package/esm/utils/memoryParse.js +1 -1
  128. package/esm/utils/normalizeLink.js +1 -1
  129. package/esm/utils/normalizeOptions.js +1 -1
  130. package/esm/utils/object.js +1 -1
  131. package/esm/utils/offset.js +1 -1
  132. package/esm/utils/offsetParent.js +1 -1
  133. package/esm/utils/optionValueCompare.js +1 -1
  134. package/esm/utils/position.js +11 -6
  135. package/esm/utils/prettyBytes.js +1 -1
  136. package/esm/utils/printElement.js +1 -1
  137. package/esm/utils/renderer-event.js +1 -1
  138. package/esm/utils/replaceText.js +1 -1
  139. package/esm/utils/resize-sensor.js +1 -1
  140. package/esm/utils/resolveCondition.js +1 -1
  141. package/esm/utils/resolveVariable.js +1 -1
  142. package/esm/utils/resolveVariableAndFilter.js +1 -1
  143. package/esm/utils/resolveVariableAndFilterForAsync.js +1 -1
  144. package/esm/utils/scrollPosition.js +1 -1
  145. package/esm/utils/string2regExp.js +1 -1
  146. package/esm/utils/stripNumber.js +1 -1
  147. package/esm/utils/style-helper.js +1 -1
  148. package/esm/utils/style.js +1 -1
  149. package/esm/utils/toNumber.js +1 -1
  150. package/esm/utils/tokenize.js +1 -1
  151. package/esm/utils/tpl-builtin.js +1 -1
  152. package/esm/utils/tpl-lodash.js +1 -1
  153. package/esm/utils/tpl.js +1 -1
  154. package/esm/utils/uncontrollable.js +1 -1
  155. package/esm/utils/validateId.js +1 -1
  156. package/esm/utils/validations.js +17 -12
  157. package/esm/utils/visitedCache.js +1 -1
  158. package/lib/Root.js +1 -1
  159. package/lib/RootRenderer.js +1 -1
  160. package/lib/SchemaRenderer.d.ts +13 -0
  161. package/lib/SchemaRenderer.js +75 -5
  162. package/lib/Scoped.d.ts +1 -1
  163. package/lib/Scoped.js +1 -1
  164. package/lib/StatusScoped.js +1 -1
  165. package/lib/StyleManager.d.ts +18 -0
  166. package/lib/StyleManager.js +63 -0
  167. package/lib/WithRootStore.js +1 -1
  168. package/lib/WithStore.js +1 -1
  169. package/lib/actions/Action.js +4 -1
  170. package/lib/actions/AjaxAction.js +1 -1
  171. package/lib/actions/BreakAction.js +1 -1
  172. package/lib/actions/BroadcastAction.js +1 -1
  173. package/lib/actions/CmptAction.js +56 -49
  174. package/lib/actions/ContinueAction.js +1 -1
  175. package/lib/actions/CopyAction.js +1 -1
  176. package/lib/actions/CustomAction.js +1 -1
  177. package/lib/actions/DialogAction.js +1 -1
  178. package/lib/actions/DrawerAction.js +1 -1
  179. package/lib/actions/EmailAction.js +1 -1
  180. package/lib/actions/EventAction.js +1 -1
  181. package/lib/actions/LinkAction.js +1 -1
  182. package/lib/actions/LoopAction.js +1 -1
  183. package/lib/actions/PageAction.js +1 -1
  184. package/lib/actions/ParallelAction.js +1 -1
  185. package/lib/actions/PrintAction.js +1 -1
  186. package/lib/actions/StatusAction.js +1 -1
  187. package/lib/actions/SwitchAction.js +1 -1
  188. package/lib/actions/ToastAction.js +2 -2
  189. package/lib/actions/WaitAction.js +1 -1
  190. package/lib/components/CustomStyle.js +1 -1
  191. package/lib/components/ErrorBoundary.js +1 -1
  192. package/lib/components/LazyComponent.js +1 -1
  193. package/lib/components/Overlay.js +1 -1
  194. package/lib/components/PopOver.js +1 -1
  195. package/lib/env.d.ts +0 -4
  196. package/lib/env.js +1 -1
  197. package/lib/envOverwrite.js +1 -1
  198. package/lib/factory.d.ts +7 -1
  199. package/lib/factory.js +52 -4
  200. package/lib/index.d.ts +6 -4
  201. package/lib/index.js +17 -2
  202. package/lib/locale.d.ts +1 -1
  203. package/lib/locale.js +13 -2
  204. package/lib/polyfills.js +1 -1
  205. package/lib/renderers/Form.d.ts +2 -2
  206. package/lib/renderers/Form.js +11 -6
  207. package/lib/renderers/Item.d.ts +2 -1
  208. package/lib/renderers/Item.js +8 -9
  209. package/lib/renderers/Options.d.ts +46 -1
  210. package/lib/renderers/Options.js +920 -912
  211. package/lib/renderers/Placeholder.js +1 -1
  212. package/lib/renderers/builtin.js +1 -1
  213. package/lib/renderers/register.js +1 -1
  214. package/lib/renderers/wrapControl.d.ts +2 -1
  215. package/lib/renderers/wrapControl.js +8 -7
  216. package/lib/store/app.js +1 -1
  217. package/lib/store/combo.d.ts +2 -1
  218. package/lib/store/combo.js +1 -1
  219. package/lib/store/crud.js +1 -1
  220. package/lib/store/form.d.ts +1 -1
  221. package/lib/store/form.js +5 -1
  222. package/lib/store/formItem.js +4 -4
  223. package/lib/store/iRenderer.js +1 -1
  224. package/lib/store/index.js +1 -1
  225. package/lib/store/list.js +1 -1
  226. package/lib/store/manager.js +1 -1
  227. package/lib/store/modal.js +1 -1
  228. package/lib/store/node.js +1 -1
  229. package/lib/store/pagination.js +1 -1
  230. package/lib/store/root.js +1 -1
  231. package/lib/store/service.js +1 -1
  232. package/lib/store/status.js +1 -1
  233. package/lib/store/table.d.ts +2 -1
  234. package/lib/store/table.js +1 -1
  235. package/lib/store/table2.js +1 -1
  236. package/lib/theme.d.ts +1 -1
  237. package/lib/theme.js +13 -2
  238. package/lib/types.d.ts +2 -0
  239. package/lib/utils/Animation.js +1 -1
  240. package/lib/utils/ColorScale.js +1 -1
  241. package/lib/utils/DataSchema.js +1 -1
  242. package/lib/utils/DataScope.js +1 -1
  243. package/lib/utils/RootClose.js +1 -1
  244. package/lib/utils/SimpleMap.js +1 -1
  245. package/lib/utils/animations.d.ts +19 -0
  246. package/lib/utils/animations.js +62 -0
  247. package/lib/utils/api.d.ts +2 -1
  248. package/lib/utils/api.js +10 -2
  249. package/lib/utils/arraySlice.js +1 -1
  250. package/lib/utils/attachmentAdpator.js +4 -1
  251. package/lib/utils/autobind.js +1 -1
  252. package/lib/utils/browser.js +1 -1
  253. package/lib/utils/columnsSplit.js +1 -1
  254. package/lib/utils/concatData.js +1 -1
  255. package/lib/utils/dataMapping.js +1 -1
  256. package/lib/utils/date.js +1 -1
  257. package/lib/utils/debug.d.ts +3 -3
  258. package/lib/utils/debug.js +103 -36
  259. package/lib/utils/decodeEntity.js +1 -1
  260. package/lib/utils/dom.js +1 -1
  261. package/lib/utils/errors.js +1 -1
  262. package/lib/utils/escapeHtml.js +1 -1
  263. package/lib/utils/filter-schema.js +1 -1
  264. package/lib/utils/filter.js +1 -1
  265. package/lib/utils/formatDuration.js +1 -1
  266. package/lib/utils/formula.js +1 -1
  267. package/lib/utils/getVariable.js +1 -1
  268. package/lib/utils/grammar.js +1 -1
  269. package/lib/utils/handleAction.js +1 -1
  270. package/lib/utils/helper.d.ts +1 -0
  271. package/lib/utils/helper.js +15 -1
  272. package/lib/utils/highlight.js +1 -1
  273. package/lib/utils/icon.js +1 -1
  274. package/lib/utils/image.js +1 -1
  275. package/lib/utils/index.d.ts +1 -0
  276. package/lib/utils/isPureVariable.js +1 -1
  277. package/lib/utils/json-schema-2-amis-schema.js +1 -1
  278. package/lib/utils/keyToPath.js +1 -1
  279. package/lib/utils/labelToString.js +2 -2
  280. package/lib/utils/loopTooMuch.d.ts +1 -0
  281. package/lib/utils/loopTooMuch.js +31 -0
  282. package/lib/utils/makeSorter.js +1 -1
  283. package/lib/utils/math.js +1 -1
  284. package/lib/utils/memoryParse.js +1 -1
  285. package/lib/utils/normalizeLink.js +1 -1
  286. package/lib/utils/normalizeOptions.js +1 -1
  287. package/lib/utils/object.js +1 -1
  288. package/lib/utils/offset.js +1 -1
  289. package/lib/utils/offsetParent.js +1 -1
  290. package/lib/utils/optionValueCompare.js +1 -1
  291. package/lib/utils/position.js +11 -6
  292. package/lib/utils/prettyBytes.js +1 -1
  293. package/lib/utils/printElement.js +1 -1
  294. package/lib/utils/renderer-event.js +1 -1
  295. package/lib/utils/replaceText.js +1 -1
  296. package/lib/utils/resize-sensor.js +1 -1
  297. package/lib/utils/resolveCondition.js +1 -1
  298. package/lib/utils/resolveVariable.js +1 -1
  299. package/lib/utils/resolveVariableAndFilter.js +1 -1
  300. package/lib/utils/resolveVariableAndFilterForAsync.js +1 -1
  301. package/lib/utils/scrollPosition.js +1 -1
  302. package/lib/utils/string2regExp.js +1 -1
  303. package/lib/utils/stripNumber.js +1 -1
  304. package/lib/utils/style-helper.js +1 -1
  305. package/lib/utils/style.js +1 -1
  306. package/lib/utils/toNumber.js +1 -1
  307. package/lib/utils/tokenize.js +1 -1
  308. package/lib/utils/tpl-builtin.js +1 -1
  309. package/lib/utils/tpl-lodash.js +1 -1
  310. package/lib/utils/tpl.js +1 -1
  311. package/lib/utils/uncontrollable.js +1 -1
  312. package/lib/utils/validateId.js +1 -1
  313. package/lib/utils/validations.js +17 -12
  314. package/lib/utils/visitedCache.js +1 -1
  315. package/package.json +5 -4
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -3,6 +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 { FormItemConfig } from './Item';
6
7
  import { Api, DataChangeReason } from '../types';
7
8
  export interface ControlOutterProps extends RendererProps {
8
9
  formStore?: IFormStore;
@@ -49,7 +50,7 @@ export interface ControlProps {
49
50
  onChange?: (value: any, name: string, submit: boolean) => void;
50
51
  store: IIRendererStore;
51
52
  }
52
- export declare function wrapControl<T extends React.ComponentType<React.ComponentProps<T> & ControlProps>>(ComposedComponent: T): {
53
+ export declare function wrapControl<T extends React.ComponentType<React.ComponentProps<T> & ControlProps>>(config: Omit<FormItemConfig, 'component'>, ComposedComponent: T): {
53
54
  new (props: Omit<any, "rootStore">): {
54
55
  ref: any;
55
56
  getWrappedInstance(): any;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -72,20 +72,20 @@ var pick__default = /*#__PURE__*/_interopDefaultLegacy(pick);
72
72
  var __react_jsx__ = require('react');
73
73
  var _J$X_ = (__react_jsx__["default"] || __react_jsx__).createElement;
74
74
  (__react_jsx__["default"] || __react_jsx__).Fragment;
75
- function wrapControl(ComposedComponent) {
75
+ function wrapControl(config, ComposedComponent) {
76
76
  var _a;
77
77
  var result = hoistNonReactStatic__default["default"](WithRootStore.withRootStore(mobxReact.observer((_a = /** @class */ (function (_super) {
78
78
  tslib.__extends(class_1, _super);
79
79
  function class_1(props) {
80
80
  var _this = this;
81
- var _a;
81
+ var _a, _b;
82
82
  _this = _super.call(this, props) || this;
83
83
  _this.value = undefined;
84
84
  _this.lazyEmitChange = debounce__default["default"](_this.emitChange.bind(_this), 250, {
85
85
  trailing: true,
86
86
  leading: false
87
87
  });
88
- var _b = _this.props, form = _b.formStore, formItem$1 = _b.formItem, rootStore = _b.rootStore, store = _b.store, onChange = _b.onChange, data = _b.data, inputGroupControl = _b.inputGroupControl, colIndex = _b.colIndex, rowIndex = _b.rowIndex, _c = _b.$schema, id = _c.id, type = _c.type, required = _c.required, validations = _c.validations, validationErrors = _c.validationErrors, unique = _c.unique, value = _c.value, extraName = _c.extraName; _c.multiple; var delimiter = _c.delimiter, valueField = _c.valueField, labelField = _c.labelField, joinValues = _c.joinValues, extractValue = _c.extractValue, selectFirst = _c.selectFirst, autoFill = _c.autoFill, clearValueOnHidden = _c.clearValueOnHidden, validateApi = _c.validateApi, minLength = _c.minLength, maxLength = _c.maxLength, validateOnChange = _c.validateOnChange, label = _c.label, pagination = _c.pagination;
88
+ 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; _d.multiple; var delimiter = _d.delimiter, valueField = _d.valueField, labelField = _d.labelField, joinValues = _d.joinValues, extractValue = _d.extractValue, selectFirst = _d.selectFirst, autoFill = _d.autoFill, clearValueOnHidden = _d.clearValueOnHidden, validateApi = _d.validateApi, minLength = _d.minLength, maxLength = _d.maxLength, validateOnChange = _d.validateOnChange, label = _d.label, pagination = _d.pagination;
89
89
  _this.getValue = _this.getValue.bind(_this);
90
90
  _this.setValue = _this.setValue.bind(_this);
91
91
  _this.handleChange = _this.handleChange.bind(_this);
@@ -95,7 +95,8 @@ function wrapControl(ComposedComponent) {
95
95
  _this.validate = _this.validate.bind(_this);
96
96
  _this.flushChange = _this.flushChange.bind(_this);
97
97
  _this.renderChild = _this.renderChild.bind(_this);
98
- var name = _this.props.$schema.name;
98
+ var name = _this.props.$schema.name ||
99
+ ((_a = ComposedComponent.defaultProps) === null || _a === void 0 ? void 0 : _a.name);
99
100
  // 如果 name 是表达式
100
101
  // 扩充 each 用法
101
102
  if (formula.isExpression(name)) {
@@ -108,7 +109,7 @@ function wrapControl(ComposedComponent) {
108
109
  var model = rootStore.addStore({
109
110
  id: helper.guid(),
110
111
  path: _this.props.$path,
111
- storeType: formItem.FormItemStore.name,
112
+ storeType: config.formItemStoreType || formItem.FormItemStore.name,
112
113
  parentId: store === null || store === void 0 ? void 0 : store.id,
113
114
  name: name,
114
115
  colIndex: colIndex !== undefined ? colIndex : undefined,
@@ -120,7 +121,7 @@ function wrapControl(ComposedComponent) {
120
121
  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 }));
121
122
  // issue 这个逻辑应该在 combo 里面自己实现。
122
123
  if (_this.model.unique &&
123
- ((_a = form === null || form === void 0 ? void 0 : form.parentStore) === null || _a === void 0 ? void 0 : _a.storeType) === combo.ComboStore.name) {
124
+ ((_b = form === null || form === void 0 ? void 0 : form.parentStore) === null || _b === void 0 ? void 0 : _b.storeType) === combo.ComboStore.name) {
124
125
  var combo$1 = form.parentStore;
125
126
  combo$1.bindUniuqueItem(model);
126
127
  }
package/lib/store/app.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,4 +1,3 @@
1
- /// <reference types="lodash" />
2
1
  import { SnapshotIn, Instance } from 'mobx-state-tree';
3
2
  import type { IFormStore, IFormItemStore } from './form';
4
3
  export declare const UniqueGroup: import("mobx-state-tree").IModelType<{
@@ -7706,6 +7705,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7706
7705
  getLocalPersistData: () => void;
7707
7706
  setLocalPersistData: (keys?: string[] | undefined) => void;
7708
7707
  clearLocalPersistData: () => void;
7708
+ setPristine: (data: object) => void;
7709
7709
  setPersistData: (value?: string) => void;
7710
7710
  clear: (cb?: ((data: any) => void) | undefined) => void;
7711
7711
  updateSavedData: () => void;
@@ -13203,6 +13203,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
13203
13203
  getLocalPersistData: () => void;
13204
13204
  setLocalPersistData: (keys?: string[] | undefined) => void;
13205
13205
  clearLocalPersistData: () => void;
13206
+ setPristine: (data: object) => void;
13206
13207
  setPersistData: (value?: string) => void;
13207
13208
  clear: (cb?: ((data: any) => void) | undefined) => void;
13208
13209
  updateSavedData: () => void;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/lib/store/crud.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,4 +1,3 @@
1
- /// <reference types="lodash" />
2
1
  import { Instance } from 'mobx-state-tree';
3
2
  import type { IFormItemStore } from './formItem';
4
3
  import { Api, DataChangeReason, fetchOptions, Payload } from '../types';
@@ -5489,6 +5488,7 @@ export declare const FormStore: import("mobx-state-tree").IModelType<{
5489
5488
  getLocalPersistData: () => void;
5490
5489
  setLocalPersistData: (keys?: string[]) => void;
5491
5490
  clearLocalPersistData: () => void;
5491
+ setPristine: (data: object) => void;
5492
5492
  setPersistData: (value?: string) => void;
5493
5493
  clear: (cb?: ((data: any) => void) | undefined) => void;
5494
5494
  updateSavedData: () => void;
package/lib/store/form.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -639,6 +639,9 @@ var FormStore = service.ServiceStore.named('FormStore')
639
639
  var items = self.items.concat();
640
640
  items.forEach(function (item) { return item.reset(); });
641
641
  }
642
+ function setPristine(data) {
643
+ self.pristine = data;
644
+ }
642
645
  function reset(cb, resetData) {
643
646
  if (resetData === void 0) { resetData = true; }
644
647
  if (resetData) {
@@ -717,6 +720,7 @@ var FormStore = service.ServiceStore.named('FormStore')
717
720
  getLocalPersistData: getLocalPersistData,
718
721
  setLocalPersistData: setLocalPersistData,
719
722
  clearLocalPersistData: clearLocalPersistData,
723
+ setPristine: setPristine,
720
724
  setPersistData: setPersistData,
721
725
  clear: clear,
722
726
  updateSavedData: updateSavedData,
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -454,7 +454,7 @@ var FormItemStore = node.StoreNode.named('FormItemStore')
454
454
  try {
455
455
  for (var options_1 = tslib.__values(options), options_1_1 = options_1.next(); !options_1_1.done; options_1_1 = options_1.next()) {
456
456
  var option = options_1_1.value;
457
- if (Array.isArray(option.children)) {
457
+ if (Array.isArray(option.children) && option.children.length) {
458
458
  var childFirst = getFirstAvaibleOption(option.children);
459
459
  if (childFirst !== undefined) {
460
460
  return childFirst;
@@ -977,12 +977,12 @@ var FormItemStore = node.StoreNode.named('FormItemStore')
977
977
  group &&
978
978
  group.items.forEach(function (item) {
979
979
  if (self !== item) {
980
- options_2.push.apply(options_2, tslib.__spreadArray([], tslib.__read(item.selectedOptions.map(function (item) { return item && item.value; })), false));
980
+ options_2.push.apply(options_2, tslib.__spreadArray([], tslib.__read(item.selectedOptions.map(function (item) { return item && item[valueField]; })), false));
981
981
  }
982
982
  });
983
983
  if (filteredOptions.length && options_2.length) {
984
984
  filteredOptions = helper.mapTree(filteredOptions, function (item) {
985
- if (~options_2.indexOf(item.value)) {
985
+ if (~options_2.indexOf(item[valueField])) {
986
986
  return tslib.__assign(tslib.__assign({}, item), { disabled: true });
987
987
  }
988
988
  return item;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/lib/store/list.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/lib/store/node.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/lib/store/root.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,4 +1,3 @@
1
- /// <reference types="lodash" />
2
1
  import { SnapshotIn, IAnyModelType, Instance } from 'mobx-state-tree';
3
2
  import { IFormStore } from './form';
4
3
  export declare enum SELECTED_STATUS {
@@ -5900,6 +5899,7 @@ export declare const TableStore: import("mobx-state-tree").IModelType<{
5900
5899
  getLocalPersistData: () => void;
5901
5900
  setLocalPersistData: (keys?: string[] | undefined) => void;
5902
5901
  clearLocalPersistData: () => void;
5902
+ setPristine: (data: object) => void;
5903
5903
  setPersistData: (value?: string) => void;
5904
5904
  clear: (cb?: ((data: any) => void) | undefined) => void;
5905
5905
  updateSavedData: () => void;
@@ -11397,6 +11397,7 @@ export declare const TableStore: import("mobx-state-tree").IModelType<{
11397
11397
  getLocalPersistData: () => void;
11398
11398
  setLocalPersistData: (keys?: string[] | undefined) => void;
11399
11399
  clearLocalPersistData: () => void;
11400
+ setPristine: (data: object) => void;
11400
11401
  setPersistData: (value?: string) => void;
11401
11402
  clear: (cb?: ((data: any) => void) | undefined) => void;
11402
11403
  updateSavedData: () => void;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/lib/theme.d.ts CHANGED
@@ -40,7 +40,7 @@ export declare let defaultTheme: string;
40
40
  export declare const ThemeContext: React.Context<string>;
41
41
  export declare function themeable<T extends React.ComponentType<React.ComponentProps<T> & ThemeProps> & {
42
42
  themeKey?: string;
43
- }>(ComposedComponent: T): {
43
+ }>(ComposedComponent: T, methods?: Array<string>): {
44
44
  new (props: JSX.LibraryManagedAttributes<T, Omit<React.ComponentProps<T>, keyof ThemeProps>> & ThemeOuterProps): {
45
45
  ref: any;
46
46
  childRef(ref: any): void;
package/lib/theme.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -92,7 +92,7 @@ function getTheme(theme) {
92
92
  }
93
93
  exports.defaultTheme = 'cxd';
94
94
  var ThemeContext = React__default["default"].createContext('');
95
- function themeable(ComposedComponent) {
95
+ function themeable(ComposedComponent, methods) {
96
96
  var _a;
97
97
  var result = hoistNonReactStatic__default["default"]((_a = /** @class */ (function (_super) {
98
98
  tslib.__extends(class_1, _super);
@@ -136,6 +136,17 @@ function themeable(ComposedComponent) {
136
136
  _a.contextType = ThemeContext,
137
137
  _a.ComposedComponent = ComposedComponent,
138
138
  _a), ComposedComponent);
139
+ if (Array.isArray(methods)) {
140
+ methods.forEach(function (method) {
141
+ if (ComposedComponent.prototype[method]) {
142
+ result.prototype[method] = function () {
143
+ var _a;
144
+ var fn = (_a = this.ref) === null || _a === void 0 ? void 0 : _a[method];
145
+ return fn ? fn.apply(this.ref, arguments) : undefined;
146
+ };
147
+ }
148
+ });
149
+ }
139
150
  return result;
140
151
  }
141
152
 
package/lib/types.d.ts CHANGED
@@ -3,6 +3,7 @@ import type { JSONSchema7 } from 'json-schema';
3
3
  import { ListenerAction } from './actions/Action';
4
4
  import { debounceConfig, trackConfig } from './utils/renderer-event';
5
5
  import type { TestIdBuilder } from './utils/helper';
6
+ import { AnimationsProps } from './utils/animations';
6
7
  export interface Option {
7
8
  /**
8
9
  * 用来显示的文字
@@ -258,6 +259,7 @@ export interface Schema {
258
259
  static?: boolean;
259
260
  children?: JSX.Element | ((props: any, schema?: any) => JSX.Element) | null;
260
261
  definitions?: Definitions;
262
+ animations?: AnimationsProps;
261
263
  [propName: string]: any;
262
264
  }
263
265
  export interface ButtonObject {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -0,0 +1,19 @@
1
+ export interface AnimationsProps {
2
+ enter?: {
3
+ type: string;
4
+ duration?: number;
5
+ delay?: number;
6
+ };
7
+ attention?: {
8
+ type: string;
9
+ duration?: number;
10
+ repeat?: string;
11
+ delay?: number;
12
+ };
13
+ exit?: {
14
+ type: string;
15
+ duration?: number;
16
+ delay?: number;
17
+ };
18
+ }
19
+ export declare function createAnimationStyle(id: string, animationsConfig: AnimationsProps): void;
@@ -0,0 +1,62 @@
1
+ /**
2
+ * amis-core v6.9.0-rc.11
3
+ * Copyright 2018-2024 fex
4
+ */
5
+
6
+ 'use strict';
7
+
8
+ Object.defineProperty(exports, '__esModule', { value: true });
9
+
10
+ var StyleManager = require('../StyleManager.js');
11
+
12
+ function generateStyleByAnimation(className, animation) {
13
+ var _a;
14
+ return _a = {},
15
+ _a[className.join(',')] = {
16
+ animationName: animation.name,
17
+ animationDuration: "".concat(animation.duration || 1, "s"),
18
+ animationIterationCount: animation.iterationCount || 1,
19
+ animationDelay: "".concat(animation.delay || 0, "s"),
20
+ animationTimingFunction: animation.timingFunction || 'ease',
21
+ animationFillMode: animation.fillMode || 'none'
22
+ },
23
+ _a;
24
+ }
25
+ function createAnimationStyle(id, animationsConfig) {
26
+ var _a;
27
+ var enterAnimationConfig = animationsConfig.enter;
28
+ var enterStyle = {};
29
+ if (enterAnimationConfig === null || enterAnimationConfig === void 0 ? void 0 : enterAnimationConfig.type) {
30
+ enterStyle = generateStyleByAnimation([".".concat(enterAnimationConfig.type, "-").concat(id, "-enter")], {
31
+ name: enterAnimationConfig.type,
32
+ duration: enterAnimationConfig.duration,
33
+ delay: enterAnimationConfig.delay,
34
+ fillMode: 'backwards'
35
+ });
36
+ }
37
+ var attentionAnimationConfig = animationsConfig.attention;
38
+ var attentionStyle = {};
39
+ if (attentionAnimationConfig === null || attentionAnimationConfig === void 0 ? void 0 : attentionAnimationConfig.type) {
40
+ attentionStyle = generateStyleByAnimation([".".concat(attentionAnimationConfig.type, "-").concat(id, "-attention")], {
41
+ name: attentionAnimationConfig.type,
42
+ duration: attentionAnimationConfig.duration,
43
+ iterationCount: attentionAnimationConfig.repeat || 'infinite',
44
+ delay: attentionAnimationConfig.delay
45
+ });
46
+ }
47
+ var exitAnimationConfig = animationsConfig.exit;
48
+ var exitStyle = {};
49
+ if (exitAnimationConfig === null || exitAnimationConfig === void 0 ? void 0 : exitAnimationConfig.type) {
50
+ exitStyle = generateStyleByAnimation([".".concat(exitAnimationConfig.type, "-").concat(id, "-exit")], {
51
+ name: exitAnimationConfig.type,
52
+ duration: exitAnimationConfig.duration,
53
+ delay: exitAnimationConfig.delay,
54
+ fillMode: 'forwards'
55
+ });
56
+ }
57
+ StyleManager["default"].updateStyle((_a = {},
58
+ _a[id] = Object.assign({}, enterStyle, attentionStyle, exitStyle),
59
+ _a));
60
+ }
61
+
62
+ exports.createAnimationStyle = createAnimationStyle;
@@ -18,7 +18,8 @@ export declare function removeApiRequestAdaptor(adaptor: RequestAdaptor): void;
18
18
  * 添加全局响应适配器
19
19
  * @param adaptor
20
20
  */
21
- export declare function addApiResponseAdator(adaptor: ResponseAdaptor): () => void;
21
+ export declare function addApiResponseAdaptor(adaptor: ResponseAdaptor): () => void;
22
+ export declare const addApiResponseAdator: typeof addApiResponseAdaptor;
22
23
  /**
23
24
  * 删除全局响应适配器
24
25
  * @param adaptor
package/lib/utils/api.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -56,10 +56,12 @@ function removeApiRequestAdaptor(adaptor) {
56
56
  * 添加全局响应适配器
57
57
  * @param adaptor
58
58
  */
59
- function addApiResponseAdator(adaptor) {
59
+ function addApiResponseAdaptor(adaptor) {
60
60
  responseAdaptors.push(adaptor);
61
61
  return function () { return removeApiResponseAdaptor(adaptor); };
62
62
  }
63
+ // :( 之前写错了,这里为了让以前的代码能继续跑,暂时保留
64
+ var addApiResponseAdator = addApiResponseAdaptor;
63
65
  /**
64
66
  * 删除全局响应适配器
65
67
  * @param adaptor
@@ -499,6 +501,11 @@ function wrapFetcher(fn, tracker) {
499
501
  // 如果发送适配器中设置了 mockResponse
500
502
  // 则直接跳过请求发送
501
503
  if (api.mockResponse) {
504
+ console.debug("fetch api ".concat(api.url).concat(api.data
505
+ ? "?".concat(typeof api.data === 'string'
506
+ ? api.data
507
+ : helper.qsstringify(api.data, api.qsOptions))
508
+ : '', " with mock response"), api.mockResponse, api);
502
509
  return [2 /*return*/, wrapAdaptor(Promise.resolve(api.mockResponse), api, data)];
503
510
  }
504
511
  if (!isValidApi(api.url)) {
@@ -809,6 +816,7 @@ function normalizeApiResponseData(data) {
809
816
  // window.apiCaches = apiCaches;
810
817
 
811
818
  exports.addApiRequestAdaptor = addApiRequestAdaptor;
819
+ exports.addApiResponseAdaptor = addApiResponseAdaptor;
812
820
  exports.addApiResponseAdator = addApiResponseAdator;
813
821
  exports.buildApi = buildApi;
814
822
  exports.callStrFunction = callStrFunction;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -33,6 +33,9 @@ function attachmentAdpator(response, __, api) {
33
33
  if (matches && matches.length) {
34
34
  filename = matches[1].replace("UTF-8''", '').replace(/['"]/g, '');
35
35
  }
36
+ else {
37
+ filename = disposition === null || disposition === void 0 ? void 0 : disposition.split(';')[1];
38
+ }
36
39
  // 很可能是中文被 url-encode 了
37
40
  if (filename && filename.replace(/[^%]/g, '').length > 2) {
38
41
  filename = decodeURIComponent(filename);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-rc.1
2
+ * amis-core v6.9.0-rc.11
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5