amis-core 6.9.0-beta.0 → 6.9.0-beta.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 (284) 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 +73 -4
  5. package/esm/Scoped.js +1 -1
  6. package/esm/StatusScoped.js +1 -1
  7. package/esm/StyleManager.d.ts +18 -0
  8. package/esm/StyleManager.js +55 -0
  9. package/esm/WithRootStore.js +1 -1
  10. package/esm/WithStore.js +1 -1
  11. package/esm/actions/Action.js +1 -1
  12. package/esm/actions/AjaxAction.js +1 -1
  13. package/esm/actions/BreakAction.js +1 -1
  14. package/esm/actions/BroadcastAction.js +1 -1
  15. package/esm/actions/CmptAction.js +1 -1
  16. package/esm/actions/ContinueAction.js +1 -1
  17. package/esm/actions/CopyAction.js +1 -1
  18. package/esm/actions/CustomAction.js +1 -1
  19. package/esm/actions/DialogAction.js +1 -1
  20. package/esm/actions/DrawerAction.js +1 -1
  21. package/esm/actions/EmailAction.js +1 -1
  22. package/esm/actions/EventAction.js +1 -1
  23. package/esm/actions/LinkAction.js +1 -1
  24. package/esm/actions/LoopAction.js +1 -1
  25. package/esm/actions/PageAction.js +1 -1
  26. package/esm/actions/ParallelAction.js +1 -1
  27. package/esm/actions/PrintAction.js +1 -1
  28. package/esm/actions/StatusAction.js +1 -1
  29. package/esm/actions/SwitchAction.js +1 -1
  30. package/esm/actions/ToastAction.js +1 -1
  31. package/esm/actions/WaitAction.js +1 -1
  32. package/esm/components/CustomStyle.js +1 -1
  33. package/esm/components/ErrorBoundary.js +1 -1
  34. package/esm/components/LazyComponent.js +1 -1
  35. package/esm/components/Overlay.js +1 -1
  36. package/esm/components/PopOver.js +1 -1
  37. package/esm/env.js +1 -1
  38. package/esm/envOverwrite.js +1 -1
  39. package/esm/factory.js +1 -1
  40. package/esm/index.d.ts +3 -1
  41. package/esm/index.js +7 -5
  42. package/esm/locale.js +1 -1
  43. package/esm/polyfills.js +1 -1
  44. package/esm/renderers/Form.js +1 -1
  45. package/esm/renderers/Item.js +1 -1
  46. package/esm/renderers/Options.js +1 -1
  47. package/esm/renderers/Placeholder.js +1 -1
  48. package/esm/renderers/builtin.js +1 -1
  49. package/esm/renderers/register.js +1 -1
  50. package/esm/renderers/wrapControl.js +1 -1
  51. package/esm/store/app.js +1 -1
  52. package/esm/store/combo.js +1 -1
  53. package/esm/store/crud.js +1 -1
  54. package/esm/store/form.js +1 -1
  55. package/esm/store/formItem.js +1 -1
  56. package/esm/store/iRenderer.js +1 -1
  57. package/esm/store/index.js +1 -1
  58. package/esm/store/list.js +1 -1
  59. package/esm/store/manager.js +1 -1
  60. package/esm/store/modal.js +1 -1
  61. package/esm/store/node.js +1 -1
  62. package/esm/store/pagination.js +1 -1
  63. package/esm/store/root.js +1 -1
  64. package/esm/store/service.js +1 -1
  65. package/esm/store/status.js +1 -1
  66. package/esm/store/table.js +1 -1
  67. package/esm/store/table2.js +1 -1
  68. package/esm/theme.js +1 -1
  69. package/esm/types.d.ts +2 -0
  70. package/esm/utils/Animation.js +1 -1
  71. package/esm/utils/ColorScale.js +1 -1
  72. package/esm/utils/DataSchema.js +1 -1
  73. package/esm/utils/DataScope.js +1 -1
  74. package/esm/utils/RootClose.js +1 -1
  75. package/esm/utils/SimpleMap.js +1 -1
  76. package/esm/utils/animations.d.ts +19 -0
  77. package/esm/utils/animations.js +58 -0
  78. package/esm/utils/api.js +1 -1
  79. package/esm/utils/arraySlice.js +1 -1
  80. package/esm/utils/attachmentAdpator.js +1 -1
  81. package/esm/utils/autobind.js +1 -1
  82. package/esm/utils/browser.js +1 -1
  83. package/esm/utils/columnsSplit.js +1 -1
  84. package/esm/utils/concatData.js +1 -1
  85. package/esm/utils/dataMapping.js +1 -1
  86. package/esm/utils/date.js +1 -1
  87. package/esm/utils/debug.js +1 -1
  88. package/esm/utils/decodeEntity.js +1 -1
  89. package/esm/utils/dom.js +1 -1
  90. package/esm/utils/errors.js +1 -1
  91. package/esm/utils/escapeHtml.js +1 -1
  92. package/esm/utils/filter-schema.js +1 -1
  93. package/esm/utils/filter.js +1 -1
  94. package/esm/utils/formatDuration.js +1 -1
  95. package/esm/utils/formula.js +1 -1
  96. package/esm/utils/getVariable.js +1 -1
  97. package/esm/utils/grammar.js +1 -1
  98. package/esm/utils/handleAction.js +1 -1
  99. package/esm/utils/helper.d.ts +1 -0
  100. package/esm/utils/helper.js +15 -2
  101. package/esm/utils/highlight.js +1 -1
  102. package/esm/utils/icon.js +1 -1
  103. package/esm/utils/image.js +1 -1
  104. package/esm/utils/isPureVariable.js +1 -1
  105. package/esm/utils/json-schema-2-amis-schema.js +1 -1
  106. package/esm/utils/keyToPath.js +1 -1
  107. package/esm/utils/labelToString.js +1 -1
  108. package/esm/utils/makeSorter.js +1 -1
  109. package/esm/utils/math.js +1 -1
  110. package/esm/utils/memoryParse.js +1 -1
  111. package/esm/utils/normalizeLink.js +1 -1
  112. package/esm/utils/normalizeOptions.js +1 -1
  113. package/esm/utils/object.js +1 -1
  114. package/esm/utils/offset.js +1 -1
  115. package/esm/utils/offsetParent.js +1 -1
  116. package/esm/utils/optionValueCompare.js +1 -1
  117. package/esm/utils/position.js +1 -1
  118. package/esm/utils/prettyBytes.js +1 -1
  119. package/esm/utils/printElement.js +1 -1
  120. package/esm/utils/renderer-event.js +1 -1
  121. package/esm/utils/replaceText.js +1 -1
  122. package/esm/utils/resize-sensor.js +1 -1
  123. package/esm/utils/resolveCondition.js +1 -1
  124. package/esm/utils/resolveVariable.js +1 -1
  125. package/esm/utils/resolveVariableAndFilter.js +1 -1
  126. package/esm/utils/resolveVariableAndFilterForAsync.js +1 -1
  127. package/esm/utils/scrollPosition.js +1 -1
  128. package/esm/utils/string2regExp.js +1 -1
  129. package/esm/utils/stripNumber.js +1 -1
  130. package/esm/utils/style-helper.js +1 -1
  131. package/esm/utils/style.js +1 -1
  132. package/esm/utils/toNumber.js +1 -1
  133. package/esm/utils/tokenize.js +1 -1
  134. package/esm/utils/tpl-builtin.js +1 -1
  135. package/esm/utils/tpl-lodash.js +1 -1
  136. package/esm/utils/tpl.js +1 -1
  137. package/esm/utils/uncontrollable.js +1 -1
  138. package/esm/utils/validateId.js +1 -1
  139. package/esm/utils/validations.js +13 -10
  140. package/esm/utils/visitedCache.js +1 -1
  141. package/lib/Root.js +1 -1
  142. package/lib/RootRenderer.js +1 -1
  143. package/lib/SchemaRenderer.d.ts +13 -0
  144. package/lib/SchemaRenderer.js +72 -3
  145. package/lib/Scoped.js +1 -1
  146. package/lib/StatusScoped.js +1 -1
  147. package/lib/StyleManager.d.ts +18 -0
  148. package/lib/StyleManager.js +63 -0
  149. package/lib/WithRootStore.js +1 -1
  150. package/lib/WithStore.js +1 -1
  151. package/lib/actions/Action.js +1 -1
  152. package/lib/actions/AjaxAction.js +1 -1
  153. package/lib/actions/BreakAction.js +1 -1
  154. package/lib/actions/BroadcastAction.js +1 -1
  155. package/lib/actions/CmptAction.js +1 -1
  156. package/lib/actions/ContinueAction.js +1 -1
  157. package/lib/actions/CopyAction.js +1 -1
  158. package/lib/actions/CustomAction.js +1 -1
  159. package/lib/actions/DialogAction.js +1 -1
  160. package/lib/actions/DrawerAction.js +1 -1
  161. package/lib/actions/EmailAction.js +1 -1
  162. package/lib/actions/EventAction.js +1 -1
  163. package/lib/actions/LinkAction.js +1 -1
  164. package/lib/actions/LoopAction.js +1 -1
  165. package/lib/actions/PageAction.js +1 -1
  166. package/lib/actions/ParallelAction.js +1 -1
  167. package/lib/actions/PrintAction.js +1 -1
  168. package/lib/actions/StatusAction.js +1 -1
  169. package/lib/actions/SwitchAction.js +1 -1
  170. package/lib/actions/ToastAction.js +1 -1
  171. package/lib/actions/WaitAction.js +1 -1
  172. package/lib/components/CustomStyle.js +1 -1
  173. package/lib/components/ErrorBoundary.js +1 -1
  174. package/lib/components/LazyComponent.js +1 -1
  175. package/lib/components/Overlay.js +1 -1
  176. package/lib/components/PopOver.js +1 -1
  177. package/lib/env.js +1 -1
  178. package/lib/envOverwrite.js +1 -1
  179. package/lib/factory.js +1 -1
  180. package/lib/index.d.ts +3 -1
  181. package/lib/index.js +9 -4
  182. package/lib/locale.js +1 -1
  183. package/lib/polyfills.js +1 -1
  184. package/lib/renderers/Form.js +1 -1
  185. package/lib/renderers/Item.js +1 -1
  186. package/lib/renderers/Options.js +1 -1
  187. package/lib/renderers/Placeholder.js +1 -1
  188. package/lib/renderers/builtin.js +1 -1
  189. package/lib/renderers/register.js +1 -1
  190. package/lib/renderers/wrapControl.js +1 -1
  191. package/lib/store/app.js +1 -1
  192. package/lib/store/combo.d.ts +1 -0
  193. package/lib/store/combo.js +1 -1
  194. package/lib/store/crud.js +1 -1
  195. package/lib/store/form.d.ts +1 -0
  196. package/lib/store/form.js +1 -1
  197. package/lib/store/formItem.js +1 -1
  198. package/lib/store/iRenderer.js +1 -1
  199. package/lib/store/index.js +1 -1
  200. package/lib/store/list.js +1 -1
  201. package/lib/store/manager.js +1 -1
  202. package/lib/store/modal.js +1 -1
  203. package/lib/store/node.js +1 -1
  204. package/lib/store/pagination.js +1 -1
  205. package/lib/store/root.js +1 -1
  206. package/lib/store/service.js +1 -1
  207. package/lib/store/status.js +1 -1
  208. package/lib/store/table.d.ts +1 -0
  209. package/lib/store/table.js +1 -1
  210. package/lib/store/table2.js +1 -1
  211. package/lib/theme.js +1 -1
  212. package/lib/types.d.ts +2 -0
  213. package/lib/utils/Animation.js +1 -1
  214. package/lib/utils/ColorScale.js +1 -1
  215. package/lib/utils/DataSchema.js +1 -1
  216. package/lib/utils/DataScope.js +1 -1
  217. package/lib/utils/RootClose.js +1 -1
  218. package/lib/utils/SimpleMap.js +1 -1
  219. package/lib/utils/animations.d.ts +19 -0
  220. package/lib/utils/animations.js +62 -0
  221. package/lib/utils/api.js +1 -1
  222. package/lib/utils/arraySlice.js +1 -1
  223. package/lib/utils/attachmentAdpator.js +1 -1
  224. package/lib/utils/autobind.js +1 -1
  225. package/lib/utils/browser.js +1 -1
  226. package/lib/utils/columnsSplit.js +1 -1
  227. package/lib/utils/concatData.js +1 -1
  228. package/lib/utils/dataMapping.js +1 -1
  229. package/lib/utils/date.js +1 -1
  230. package/lib/utils/debug.js +1 -1
  231. package/lib/utils/decodeEntity.js +1 -1
  232. package/lib/utils/dom.js +1 -1
  233. package/lib/utils/errors.js +1 -1
  234. package/lib/utils/escapeHtml.js +1 -1
  235. package/lib/utils/filter-schema.js +1 -1
  236. package/lib/utils/filter.js +1 -1
  237. package/lib/utils/formatDuration.js +1 -1
  238. package/lib/utils/formula.js +1 -1
  239. package/lib/utils/getVariable.js +1 -1
  240. package/lib/utils/grammar.js +1 -1
  241. package/lib/utils/handleAction.js +1 -1
  242. package/lib/utils/helper.d.ts +1 -0
  243. package/lib/utils/helper.js +15 -1
  244. package/lib/utils/highlight.js +1 -1
  245. package/lib/utils/icon.js +1 -1
  246. package/lib/utils/image.js +1 -1
  247. package/lib/utils/isPureVariable.js +1 -1
  248. package/lib/utils/json-schema-2-amis-schema.js +1 -1
  249. package/lib/utils/keyToPath.js +1 -1
  250. package/lib/utils/labelToString.js +1 -1
  251. package/lib/utils/makeSorter.js +1 -1
  252. package/lib/utils/math.js +1 -1
  253. package/lib/utils/memoryParse.js +1 -1
  254. package/lib/utils/normalizeLink.js +1 -1
  255. package/lib/utils/normalizeOptions.js +1 -1
  256. package/lib/utils/object.js +1 -1
  257. package/lib/utils/offset.js +1 -1
  258. package/lib/utils/offsetParent.js +1 -1
  259. package/lib/utils/optionValueCompare.js +1 -1
  260. package/lib/utils/position.js +1 -1
  261. package/lib/utils/prettyBytes.js +1 -1
  262. package/lib/utils/printElement.js +1 -1
  263. package/lib/utils/renderer-event.js +1 -1
  264. package/lib/utils/replaceText.js +1 -1
  265. package/lib/utils/resize-sensor.js +1 -1
  266. package/lib/utils/resolveCondition.js +1 -1
  267. package/lib/utils/resolveVariable.js +1 -1
  268. package/lib/utils/resolveVariableAndFilter.js +1 -1
  269. package/lib/utils/resolveVariableAndFilterForAsync.js +1 -1
  270. package/lib/utils/scrollPosition.js +1 -1
  271. package/lib/utils/string2regExp.js +1 -1
  272. package/lib/utils/stripNumber.js +1 -1
  273. package/lib/utils/style-helper.js +1 -1
  274. package/lib/utils/style.js +1 -1
  275. package/lib/utils/toNumber.js +1 -1
  276. package/lib/utils/tokenize.js +1 -1
  277. package/lib/utils/tpl-builtin.js +1 -1
  278. package/lib/utils/tpl-lodash.js +1 -1
  279. package/lib/utils/tpl.js +1 -1
  280. package/lib/utils/uncontrollable.js +1 -1
  281. package/lib/utils/validateId.js +1 -1
  282. package/lib/utils/validations.js +13 -10
  283. package/lib/utils/visitedCache.js +1 -1
  284. package/package.json +3 -2
package/esm/Root.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -19,12 +19,23 @@ export declare class SchemaRenderer extends React.Component<SchemaRendererProps,
19
19
  cRef: any;
20
20
  schema: any;
21
21
  path: string;
22
+ animationTimeout: {
23
+ enter?: number;
24
+ exit?: number;
25
+ };
26
+ animationClassNames: {
27
+ appear?: string;
28
+ enter?: string;
29
+ exit?: string;
30
+ };
22
31
  reaction: any;
23
32
  unbindEvent: (() => void) | undefined;
24
33
  isStatic: any;
25
34
  constructor(props: SchemaRendererProps);
35
+ componentDidMount(): void;
26
36
  componentWillUnmount(): void;
27
37
  shouldComponentUpdate(nextProps: SchemaRendererProps): boolean;
38
+ removeAnimationStyle(): void;
28
39
  resolveRenderer(props: SchemaRendererProps, force?: boolean): any;
29
40
  getWrappedInstance(): any;
30
41
  refFn(ref: any): void;
@@ -35,6 +46,8 @@ export declare class SchemaRenderer extends React.Component<SchemaRendererProps,
35
46
  [propName: string]: any;
36
47
  }): any;
37
48
  reRender(): void;
49
+ addAnimationAttention(node: HTMLElement): void;
50
+ removeAnimationAttention(node: HTMLElement): void;
38
51
  render(): JSX.Element | null;
39
52
  }
40
53
  export {};
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -14,7 +14,7 @@ import { asFormItem } from './renderers/Item.js';
14
14
  import { ScopedContext } from './Scoped.js';
15
15
  import { DebugWrapper } from './utils/debug.js';
16
16
  import { getExprProperties } from './utils/filter-schema.js';
17
- import { anyChanged, chainEvents, TestIdBuilder, autobind } from './utils/helper.js';
17
+ import { formateId, anyChanged, chainEvents, TestIdBuilder, autobind } from './utils/helper.js';
18
18
  import { SimpleMap } from './utils/SimpleMap.js';
19
19
  import { bindEvent, dispatchEvent } from './utils/renderer-event.js';
20
20
  import { isAlive } from 'mobx-state-tree';
@@ -29,6 +29,9 @@ import './utils/filter.js';
29
29
  import { buildStyle } from './utils/style.js';
30
30
  import { isExpression } from './utils/formula.js';
31
31
  import { filter, evalExpression } from './utils/tpl.js';
32
+ import { CSSTransition } from 'react-transition-group';
33
+ import { createAnimationStyle } from './utils/animations.js';
34
+ import styleManager from './StyleManager.js';
32
35
 
33
36
  var RENDERER_TRANSMISSION_OMIT_PROPS = [
34
37
  'type',
@@ -71,15 +74,39 @@ var componentCache = new SimpleMap();
71
74
  var SchemaRenderer = /** @class */ (function (_super) {
72
75
  __extends(SchemaRenderer, _super);
73
76
  function SchemaRenderer(props) {
74
- var _this = _super.call(this, props) || this;
77
+ var _this = this;
78
+ var _a;
79
+ _this = _super.call(this, props) || this;
75
80
  _this.rendererKey = '';
81
+ _this.animationTimeout = {};
82
+ _this.animationClassNames = {};
76
83
  _this.unbindEvent = undefined;
77
84
  _this.isStatic = undefined;
85
+ var animations = (_a = props === null || props === void 0 ? void 0 : props.schema) === null || _a === void 0 ? void 0 : _a.animations;
86
+ if (animations) {
87
+ var id = props === null || props === void 0 ? void 0 : props.schema.id;
88
+ id = formateId(id);
89
+ if (animations.enter) {
90
+ _this.animationTimeout.enter =
91
+ ((animations.enter.duration || 1) + (animations.enter.delay || 0)) *
92
+ 1000;
93
+ _this.animationClassNames.enter = "".concat(animations.enter.type, "-").concat(id, "-enter");
94
+ _this.animationClassNames.appear = _this.animationClassNames.enter;
95
+ }
96
+ if (animations.exit) {
97
+ _this.animationTimeout.exit =
98
+ ((animations.exit.duration || 1) + (animations.exit.delay || 0)) *
99
+ 1000;
100
+ _this.animationClassNames.exit = "".concat(animations.exit.type, "-").concat(id, "-exit");
101
+ }
102
+ }
78
103
  _this.refFn = _this.refFn.bind(_this);
79
104
  _this.renderChild = _this.renderChild.bind(_this);
80
105
  _this.reRender = _this.reRender.bind(_this);
81
106
  _this.resolveRenderer(_this.props);
82
107
  _this.dispatchEvent = _this.dispatchEvent.bind(_this);
108
+ _this.addAnimationAttention = _this.addAnimationAttention.bind(_this);
109
+ _this.removeAnimationAttention = _this.removeAnimationAttention.bind(_this);
83
110
  // 监听statusStore更新
84
111
  _this.reaction = reaction(function () {
85
112
  var _a, _b, _c;
@@ -89,10 +116,18 @@ var SchemaRenderer = /** @class */ (function (_super) {
89
116
  }, function () { return _this.forceUpdate(); });
90
117
  return _this;
91
118
  }
119
+ SchemaRenderer.prototype.componentDidMount = function () {
120
+ if (this.props.schema.animations) {
121
+ var _a = this.props.schema, animations = _a.animations, id = _a.id;
122
+ id = formateId(id);
123
+ createAnimationStyle(id, animations);
124
+ }
125
+ };
92
126
  SchemaRenderer.prototype.componentWillUnmount = function () {
93
127
  var _a, _b;
94
128
  (_a = this.reaction) === null || _a === void 0 ? void 0 : _a.call(this);
95
129
  (_b = this.unbindEvent) === null || _b === void 0 ? void 0 : _b.call(this);
130
+ this.removeAnimationStyle();
96
131
  };
97
132
  // 限制:只有 schema 除外的 props 变化,或者 schema 里面的某个成员值发生变化才更新。
98
133
  SchemaRenderer.prototype.shouldComponentUpdate = function (nextProps) {
@@ -115,6 +150,13 @@ var SchemaRenderer = /** @class */ (function (_super) {
115
150
  }
116
151
  return false;
117
152
  };
153
+ SchemaRenderer.prototype.removeAnimationStyle = function () {
154
+ if (this.props.schema.animations) {
155
+ var id = this.props.schema.id;
156
+ id = formateId(id);
157
+ styleManager.removeStyles(id);
158
+ }
159
+ };
118
160
  SchemaRenderer.prototype.resolveRenderer = function (props, force) {
119
161
  if (force === void 0) { force = false; }
120
162
  var schema = props.schema;
@@ -220,6 +262,24 @@ var SchemaRenderer = /** @class */ (function (_super) {
220
262
  this.resolveRenderer(this.props, true);
221
263
  this.forceUpdate();
222
264
  };
265
+ SchemaRenderer.prototype.addAnimationAttention = function (node) {
266
+ var schema = (this.props || {}).schema;
267
+ var attention = ((schema === null || schema === void 0 ? void 0 : schema.animations) || {}).attention;
268
+ if (attention) {
269
+ var id = schema.id;
270
+ id = formateId(id);
271
+ node.classList.add("".concat(attention.type, "-").concat(id, "-attention"));
272
+ }
273
+ };
274
+ SchemaRenderer.prototype.removeAnimationAttention = function (node) {
275
+ var schema = (this.props || {}).schema;
276
+ var attention = ((schema === null || schema === void 0 ? void 0 : schema.animations) || {}).attention;
277
+ if (attention) {
278
+ var id = schema.id;
279
+ id = formateId(id);
280
+ node.classList.remove("".concat(attention.type, "-").concat(id, "-attention"));
281
+ }
282
+ };
223
283
  SchemaRenderer.prototype.render = function () {
224
284
  var e_1, _a;
225
285
  var _this = this;
@@ -322,6 +382,7 @@ var SchemaRenderer = /** @class */ (function (_super) {
322
382
  schema = filterSchema(schema, renderer, rest);
323
383
  var defaultData = schema.data, defaultValue = schema.value, defaultActiveKey = schema.activeKey, restSchema = __rest(schema, ["data", "value", "activeKey"]);
324
384
  var Component = renderer.component;
385
+ var animationIn = true;
325
386
  // 原来表单项的 visible: false 和 hidden: true 表单项的值和验证是有效的
326
387
  // 而 visibleOn 和 hiddenOn 是无效的,
327
388
  // 这个本来就是个bug,但是已经被广泛使用了
@@ -331,7 +392,12 @@ var SchemaRenderer = /** @class */ (function (_super) {
331
392
  exprProps.visible === false ||
332
393
  !renderer.isFormItem ||
333
394
  (schema.visible !== false && !schema.hidden))) {
334
- return null;
395
+ if (schema.animations) {
396
+ animationIn = false;
397
+ }
398
+ else {
399
+ return null;
400
+ }
335
401
  }
336
402
  // withStore 里面会处理,而且会实时处理
337
403
  // 这里处理反而导致了问题
@@ -381,6 +447,9 @@ var SchemaRenderer = /** @class */ (function (_super) {
381
447
  }
382
448
  }
383
449
  var component = supportRef ? (React.createElement(Component, __assign({}, props, { ref: this.childRef }))) : (React.createElement(Component, __assign({}, props, { forwardedRef: this.childRef })));
450
+ if (schema.animations) {
451
+ component = (React.createElement(CSSTransition, { in: animationIn, timeout: this.animationTimeout, classNames: this.animationClassNames, onEntered: this.addAnimationAttention, onExit: this.removeAnimationAttention, appear: true, unmountOnExit: true }, component));
452
+ }
384
453
  return this.props.env.enableAMISDebug ? (React.createElement(DebugWrapper, { renderer: renderer }, component)) : (component);
385
454
  };
386
455
  SchemaRenderer.displayName = 'Renderer';
package/esm/Scoped.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -0,0 +1,18 @@
1
+ interface Style {
2
+ [id: string]: {
3
+ [className: string]: {
4
+ [propName: string]: string | number;
5
+ };
6
+ };
7
+ }
8
+ declare class StyleManager {
9
+ styles: Style;
10
+ styleDom: HTMLStyleElement;
11
+ styleText: string;
12
+ constructor();
13
+ updateStyle(style: Style): void;
14
+ removeStyles(id: string): void;
15
+ updateStyleDom(): void;
16
+ }
17
+ declare const _default: StyleManager;
18
+ export default _default;
@@ -0,0 +1,55 @@
1
+ /**
2
+ * amis-core v6.9.0-beta.1
3
+ * Copyright 2018-2024 fex
4
+ */
5
+
6
+ import { __assign } from 'tslib';
7
+ import kebabCase from 'lodash/kebabCase';
8
+
9
+ var StyleManager = /** @class */ (function () {
10
+ function StyleManager() {
11
+ this.styles = {};
12
+ this.styleDom = document.createElement('style');
13
+ this.styleDom.id = 'amis-styles';
14
+ document.head.appendChild(this.styleDom);
15
+ }
16
+ StyleManager.prototype.updateStyle = function (style) {
17
+ var _this = this;
18
+ Object.keys(style).forEach(function (className) {
19
+ if (!_this.styles[className]) {
20
+ _this.styles[className] = style[className];
21
+ }
22
+ else {
23
+ _this.styles[className] = __assign(__assign({}, _this.styles[className]), style[className]);
24
+ }
25
+ });
26
+ this.updateStyleDom();
27
+ };
28
+ StyleManager.prototype.removeStyles = function (id) {
29
+ delete this.styles[id];
30
+ this.updateStyleDom();
31
+ };
32
+ StyleManager.prototype.updateStyleDom = function () {
33
+ var _this = this;
34
+ var styleText = Object.keys(this.styles)
35
+ .map(function (id) {
36
+ var style = _this.styles[id];
37
+ return Object.keys(style)
38
+ .map(function (className) {
39
+ return "".concat(className, " {").concat(Object.keys(style[className])
40
+ .map(function (propName) {
41
+ return "".concat(kebabCase(propName), ": ").concat(style[className][propName], ";");
42
+ })
43
+ .join(''), "}");
44
+ })
45
+ .join('');
46
+ })
47
+ .join('');
48
+ this.styleDom.innerHTML = styleText;
49
+ this.styleText = styleText;
50
+ };
51
+ return StyleManager;
52
+ }());
53
+ var styleManager = new StyleManager();
54
+
55
+ export { styleManager as default };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/WithStore.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/env.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/factory.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/index.d.ts CHANGED
@@ -12,6 +12,7 @@ import './polyfills';
12
12
  import './renderers/builtin';
13
13
  import './renderers/register';
14
14
  export * from './utils/index';
15
+ export * from './utils/animations';
15
16
  export * from './types';
16
17
  export * from './store';
17
18
  import * as utils from './utils/helper';
@@ -50,6 +51,7 @@ import { RENDERER_TRANSMISSION_OMIT_PROPS } from './SchemaRenderer';
50
51
  import type { IItem } from './store/list';
51
52
  import CustomStyle from './components/CustomStyle';
52
53
  import { StatusScoped } from './StatusScoped';
54
+ import styleManager from './StyleManager';
53
55
  export declare const version = "__buildVersion";
54
- export { clearStoresCache, updateEnv, Renderer, RendererProps, RenderOptions, RendererEnv, EnvContext, RegisterStore, registerStore, FormItem, FormItemWrap, FormItemProps, OptionsControl, FormRenderer, FormHorizontal, utils, getRendererByName, registerRenderer, unRegisterRenderer, getRenderers, loadAllAsyncRenderers, loadAsyncRenderersByType, loadAsyncRenderer, hasAsyncRenderers, registerFormItem, getFormItemByName, registerOptionsControl, resolveRenderer, filterSchema, Scoped, ScopedContext, IScopedContext, StatusScoped, setDefaultTheme, theme, themeable, ThemeProps, getTheme, classPrefix, getClassPrefix, classnames, makeClassnames, getDefaultLocale, setDefaultLocale, registerLocale, makeTranslator, extendLocale, removeLocaleData, localeable, LocaleProps, TranslateFn, ClassNamesFn, parse, lexer, Evaluator, AsyncEvaluator, FilterContext, filters, getFilters, registerFilter, extendsFilters, registerFunction, evaluate, evaluateForAsync, LazyComponent, Overlay, PopOver, ErrorBoundary, addSchemaFilter, OptionsControlProps, FormOptionsControl, FormControlProps, FormBaseControl, extendDefaultEnv, addRootWrapper, RendererConfig, styleMap, RENDERER_TRANSMISSION_OMIT_PROPS, ScopedComponentType, IItem, IColumn, IRow, IColumn2, IRow2, OnEventProps, FormSchemaBase, filterTarget, splitTarget, CustomStyle, enableDebug, disableDebug, envOverwrite, getGlobalOptions, setGlobalOptions };
56
+ export { styleManager, clearStoresCache, updateEnv, Renderer, RendererProps, RenderOptions, RendererEnv, EnvContext, RegisterStore, registerStore, FormItem, FormItemWrap, FormItemProps, OptionsControl, FormRenderer, FormHorizontal, utils, getRendererByName, registerRenderer, unRegisterRenderer, getRenderers, loadAllAsyncRenderers, loadAsyncRenderersByType, loadAsyncRenderer, hasAsyncRenderers, registerFormItem, getFormItemByName, registerOptionsControl, resolveRenderer, filterSchema, Scoped, ScopedContext, IScopedContext, StatusScoped, setDefaultTheme, theme, themeable, ThemeProps, getTheme, classPrefix, getClassPrefix, classnames, makeClassnames, getDefaultLocale, setDefaultLocale, registerLocale, makeTranslator, extendLocale, removeLocaleData, localeable, LocaleProps, TranslateFn, ClassNamesFn, parse, lexer, Evaluator, AsyncEvaluator, FilterContext, filters, getFilters, registerFilter, extendsFilters, registerFunction, evaluate, evaluateForAsync, LazyComponent, Overlay, PopOver, ErrorBoundary, addSchemaFilter, OptionsControlProps, FormOptionsControl, FormControlProps, FormBaseControl, extendDefaultEnv, addRootWrapper, RendererConfig, styleMap, RENDERER_TRANSMISSION_OMIT_PROPS, ScopedComponentType, IItem, IColumn, IRow, IColumn2, IRow2, OnEventProps, FormSchemaBase, filterTarget, splitTarget, CustomStyle, enableDebug, disableDebug, envOverwrite, getGlobalOptions, setGlobalOptions };
55
57
  export declare function render(schema: Schema, props?: RootRenderProps, options?: RenderOptions, pathPrefix?: string): JSX.Element;
package/esm/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -36,7 +36,7 @@ export { handleAction } from './utils/handleAction.js';
36
36
  import { promisify } from './utils/helper.js';
37
37
  import * as helper from './utils/helper.js';
38
38
  export { helper as utils };
39
- export { JSONTraverse, JSONValueMap, SkipOperation, TEST_ID_KEY, TestIdBuilder, ValidateError, __uri, anyChanged, autobind, buildTrackExpression, bulkBindFunctions, camel, chainEvents, chainFunctions, changedEffect, convertArrayValueToMoment, countTree, detectPropValueChanged, difference, differenceFromAll, eachTree, evalTrackExpression, everyTree, filterTree, findIndex, findObjectsWithKey, findTree, findTreeAll, findTreeIndex, flattenTree, flattenTreeWithLeafNodes, getLevelFromClassName, getPropValue, getRange, getScrollParent, getScrollbarWidth, getTree, getTreeAncestors, getTreeDepth, getTreeParent, getWidthRate, guid, hasAbility, hasFile, hasOwnPropertyInPath, hasVisibleExpression, hashCode, immutableExtends, importLazyComponent, injectPropsToObject, isArrayChildrenModified, isBreakpoint, isClickOnInput, isDisabled, isEmpty, isMobile, isNumeric, isObjectShallowModified, isSuperDataModified, isUnfolded, isVisible, lcFirst, loadScript, loadStyle, makeColumnClassBuild, makeHorizontalDeeper, mapObject, mapTree, noop, normalizeNodePath, object2formData, omitControls, padArr, parsePrimitiveQueryString, parseQuery, pickEventsProps, preventDefault, promisify, qsparse, qsstringify, range, removeHTMLTag, repeatCount, replaceUrlParams, rmUndefined, someTree, sortArray, spliceTree, supportsMjs, syncDataFromSuper, ucFirst, until, uuid, uuidv4, visibilityFilter } from './utils/helper.js';
39
+ export { JSONTraverse, JSONValueMap, SkipOperation, TEST_ID_KEY, TestIdBuilder, ValidateError, __uri, anyChanged, autobind, buildTrackExpression, bulkBindFunctions, camel, chainEvents, chainFunctions, changedEffect, convertArrayValueToMoment, countTree, detectPropValueChanged, difference, differenceFromAll, eachTree, evalTrackExpression, everyTree, filterTree, findIndex, findObjectsWithKey, findTree, findTreeAll, findTreeIndex, flattenTree, flattenTreeWithLeafNodes, formateId, getLevelFromClassName, getPropValue, getRange, getScrollParent, getScrollbarWidth, getTree, getTreeAncestors, getTreeDepth, getTreeParent, getWidthRate, guid, hasAbility, hasFile, hasOwnPropertyInPath, hasVisibleExpression, hashCode, immutableExtends, importLazyComponent, injectPropsToObject, isArrayChildrenModified, isBreakpoint, isClickOnInput, isDisabled, isEmpty, isMobile, isNumeric, isObjectShallowModified, isSuperDataModified, isUnfolded, isVisible, lcFirst, loadScript, loadStyle, makeColumnClassBuild, makeHorizontalDeeper, mapObject, mapTree, noop, normalizeNodePath, object2formData, omitControls, padArr, parsePrimitiveQueryString, parseQuery, pickEventsProps, preventDefault, promisify, qsparse, qsstringify, range, removeHTMLTag, repeatCount, replaceUrlParams, rmUndefined, someTree, sortArray, spliceTree, supportsMjs, syncDataFromSuper, ucFirst, until, uuid, uuidv4, visibilityFilter } from './utils/helper.js';
40
40
  export { highlight } from './utils/highlight.js';
41
41
  export { generateIcon } from './utils/icon.js';
42
42
  export { getImageDimensions, toDataURL } from './utils/image.js';
@@ -77,6 +77,7 @@ export { getConditionComputers, registerConditionComputer, resolveCondition, res
77
77
  export { arraySlice } from './utils/arraySlice.js';
78
78
  export { isIntegerInRange, numberFormatter, safeAdd, safeSub } from './utils/math.js';
79
79
  export { default as animation } from './utils/Animation.js';
80
+ export { createAnimationStyle } from './utils/animations.js';
80
81
  import { RendererStore } from './store/index.js';
81
82
  export { RegisterStore, RendererStore, registerStore } from './store/index.js';
82
83
  import { getEnv } from 'mobx-state-tree';
@@ -124,6 +125,7 @@ export { FormRenderer } from './renderers/Form.js';
124
125
  export { RENDERER_TRANSMISSION_OMIT_PROPS } from './SchemaRenderer.js';
125
126
  export { default as CustomStyle } from './components/CustomStyle.js';
126
127
  export { StatusScoped } from './StatusScoped.js';
128
+ export { default as styleManager } from './StyleManager.js';
127
129
  export { stripNumber } from './utils/stripNumber.js';
128
130
  export { iRendererStore } from './store/iRenderer.js';
129
131
  export { ServiceStore } from './store/service.js';
@@ -148,10 +150,10 @@ export { StoreNode } from './store/node.js';
148
150
  */
149
151
  var classPrefix = getClassPrefix();
150
152
  // @ts-ignore
151
- var version = '6.9.0-beta.0';
153
+ var version = '6.9.0-beta.1';
152
154
  window.amisVersionInfo = {
153
- version: '6.9.0-beta.0',
154
- buildTime: '2024-10-22T11:40:53.112Z'
155
+ version: '6.9.0-beta.1',
156
+ buildTime: '2024-10-30T01:54:53.165Z'
155
157
  };
156
158
  function render(schema, props, options, pathPrefix) {
157
159
  if (props === void 0) { props = {}; }
package/esm/locale.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/polyfills.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0-beta.0
2
+ * amis-core v6.9.0-beta.1
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5