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
 
package/lib/utils/date.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
 
@@ -16,18 +16,18 @@ export declare class DebugWrapper extends Component<DebugWrapperProps> {
16
16
  componentWillUnmount(): void;
17
17
  render(): React.ReactNode;
18
18
  }
19
- type Category = 'api' | 'event';
19
+ type Category = 'api' | 'event' | 'action' | 'debug' | 'error';
20
20
  /**
21
21
  * 一般调试日志
22
22
  * @param msg 简单消息
23
23
  * @param ext 扩展信息
24
24
  */
25
- export declare function debug(cat: Category, msg: string, ext?: object): void;
25
+ export declare function debug(cat: Category, msg: string, ext?: any): void;
26
26
  /**
27
27
  * 警告日志
28
28
  * @param msg 简单消息
29
29
  * @param ext 扩展信息
30
30
  */
31
- export declare function warning(cat: Category, msg: string, ext?: object): void;
31
+ export declare function warning(cat: Category, msg: string, ext?: any): void;
32
32
  export declare function traceProps(props: any, prevProps: any, componentName: string): void;
33
33
  export {};
@@ -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
 
@@ -15,6 +15,8 @@ var mobx = require('mobx');
15
15
  var mobxReact = require('mobx-react');
16
16
  var helper = require('./helper.js');
17
17
  var position = require('./position.js');
18
+ var resolveVariableAndFilter = require('./resolveVariableAndFilter.js');
19
+ var api = require('./api.js');
18
20
 
19
21
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
20
22
 
@@ -75,6 +77,19 @@ var AMISDebugStore = /** @class */ (function () {
75
77
  */
76
78
  this.inspectMode = false;
77
79
  }
80
+ AMISDebugStore.prototype.open = function () {
81
+ this.isExpanded = true;
82
+ this.inspectMode = true;
83
+ };
84
+ AMISDebugStore.prototype.close = function () {
85
+ this.isExpanded = false;
86
+ this.activeId = '';
87
+ this.hoverId = '';
88
+ this.inspectMode = false;
89
+ };
90
+ AMISDebugStore.prototype.toggleInspectMode = function () {
91
+ this.inspectMode = !this.inspectMode;
92
+ };
78
93
  tslib.__decorate([
79
94
  mobx.observable,
80
95
  tslib.__metadata("design:type", String)
@@ -107,6 +122,24 @@ var AMISDebugStore = /** @class */ (function () {
107
122
  mobx.observable,
108
123
  tslib.__metadata("design:type", Number)
109
124
  ], AMISDebugStore.prototype, "ellipsisThreshold", void 0);
125
+ tslib.__decorate([
126
+ mobx.action.bound,
127
+ tslib.__metadata("design:type", Function),
128
+ tslib.__metadata("design:paramtypes", []),
129
+ tslib.__metadata("design:returntype", void 0)
130
+ ], AMISDebugStore.prototype, "open", null);
131
+ tslib.__decorate([
132
+ mobx.action.bound,
133
+ tslib.__metadata("design:type", Function),
134
+ tslib.__metadata("design:paramtypes", []),
135
+ tslib.__metadata("design:returntype", void 0)
136
+ ], AMISDebugStore.prototype, "close", null);
137
+ tslib.__decorate([
138
+ mobx.action.bound,
139
+ tslib.__metadata("design:type", Function),
140
+ tslib.__metadata("design:paramtypes", []),
141
+ tslib.__metadata("design:returntype", void 0)
142
+ ], AMISDebugStore.prototype, "toggleInspectMode", null);
110
143
  return AMISDebugStore;
111
144
  }());
112
145
  var store = new AMISDebugStore();
@@ -124,8 +157,10 @@ var LogView = mobxReact.observer(function (_a) {
124
157
  log.cat,
125
158
  "] ",
126
159
  log.msg),
127
- log.ext ? (_J$X_(React__default["default"].Suspense, { fallback: _J$X_("div", null, "Loading...") },
128
- _J$X_(JsonView, { name: null, theme: "monokai", src: JSON.parse(log.ext), collapsed: true, enableClipboard: false, displayDataTypes: false, collapseStringsAfterLength: ellipsisThreshold, iconStyle: "square" }))) : null));
160
+ (typeof log.ext === 'string' &&
161
+ (log.ext.startsWith('{') || log.ext.startsWith('['))) ||
162
+ typeof log.ext === 'object' ? (_J$X_(React__default["default"].Suspense, { fallback: _J$X_("div", null, "Loading...") },
163
+ _J$X_(JsonView, { name: null, theme: "monokai", src: typeof log.ext === 'string' ? parseJson(log.ext) : log.ext, collapsed: true, enableClipboard: false, displayDataTypes: false, collapseStringsAfterLength: ellipsisThreshold, iconStyle: "square" }))) : (_J$X_("pre", { className: "AMISDebug-value" }, JSON.stringify(log.ext)))));
129
164
  })));
130
165
  });
131
166
  var AMISDebug = mobxReact.observer(function (_a) {
@@ -202,19 +237,35 @@ var AMISDebug = mobxReact.observer(function (_a) {
202
237
  }
203
238
  };
204
239
  }, [isResizing]);
240
+ var handleInputKeyUp = React__default["default"].useCallback(function (e) {
241
+ var _a;
242
+ if (e.key === 'Enter') {
243
+ var input = e.target;
244
+ var expression = input.value;
245
+ input.value = '';
246
+ try {
247
+ var activeId_1 = store.activeId;
248
+ var ctx = ((_a = ComponentInfo[activeId_1]) === null || _a === void 0 ? void 0 : _a.component.props.data) || {};
249
+ var result = expression.startsWith('${')
250
+ ? resolveVariableAndFilter.resolveVariableAndFilter(expression, ctx, '| raw')
251
+ : api.callStrFunction(new Function('data', "with(data) {return ".concat(expression, ";}")), ['data'], ctx);
252
+ debug('debug', "evaluate expression `".concat(expression, "`"), result);
253
+ }
254
+ catch (e) {
255
+ debug('error', "evaluate expression `".concat(expression, "`"), "Error: ".concat(e.message));
256
+ }
257
+ finally {
258
+ store.tab = 'log';
259
+ }
260
+ }
261
+ }, []);
205
262
  return (_J$X_("div", { className: cx__default["default"]('AMISDebug', {
206
263
  'is-expanded': store.isExpanded,
207
264
  'is-left': store.position === 'left'
208
265
  }), ref: panelRef },
209
- _J$X_("div", { className: "AMISDebug-toggle", title: "open debug", onClick: function () {
210
- store.isExpanded = true;
211
- } }, store.isExpanded ? (_J$X_("i", { className: "fas fa-times" })) : (_J$X_("i", { className: "fas fa-bug" }))),
266
+ _J$X_("div", { className: "AMISDebug-toggle", title: "open debug", onClick: store.open }, store.isExpanded ? (_J$X_("i", { className: "fas fa-times" })) : (_J$X_("i", { className: "fas fa-bug" }))),
212
267
  _J$X_("div", { className: cx__default["default"]('AMISDebug-content') },
213
- _J$X_("div", { className: "AMISDebug-close", title: "Close", onClick: function () {
214
- store.isExpanded = false;
215
- store.activeId = '';
216
- store.hoverId = '';
217
- } },
268
+ _J$X_("div", { className: "AMISDebug-close", title: "Close", onClick: store.close },
218
269
  _J$X_("i", { className: "fas fa-times" })),
219
270
  _J$X_("div", { className: "AMISDebug-resize", onMouseDown: function (event) {
220
271
  setStartX(event.clientX);
@@ -238,18 +289,26 @@ var AMISDebug = mobxReact.observer(function (_a) {
238
289
  store.logs = [];
239
290
  } }, "Clear Log"),
240
291
  _J$X_(LogView, { store: store }))) : null,
241
- store.tab === 'inspect' ? (_J$X_("div", { className: "AMISDebug-inspect" }, activeId ? (_J$X_(React__default["default"].Fragment, null,
242
- _J$X_("h3", null,
243
- "Component:",
244
- ' ',
245
- _J$X_("span", { className: "primary" }, activeComponentInspect.name)),
246
- stackDataView)) : ('Click component to display inspect'))) : null)));
292
+ store.tab === 'inspect' ? (_J$X_("div", { className: "AMISDebug-inspect" },
293
+ _J$X_("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 1024 1024", className: "AMISDebug-inspectIcon ".concat(store.inspectMode ? 'is-active' : ''), onClick: store.toggleInspectMode },
294
+ _J$X_("path", { d: "M64 192L128 128h768l64 64v384H896v-384H128v512h320V768H128l-64-64v-512z m941.226667 621.226667L576 384v602.496l173.226667-173.226667h256zM640 832v-293.504l210.773333 210.773333h-128L640 832z" })),
295
+ store.inspectMode ? (_J$X_("span", null, "Select an element in the page to inspect it.")) : (_J$X_("span", null, "Click to inspect an element.")),
296
+ activeId ? (_J$X_(React__default["default"].Fragment, null,
297
+ _J$X_("h3", null,
298
+ "Component:",
299
+ ' ',
300
+ _J$X_("span", { className: "primary" }, activeComponentInspect === null || activeComponentInspect === void 0 ? void 0 : activeComponentInspect.name)),
301
+ stackDataView)) : null)) : null,
302
+ activeId ? (_J$X_("div", { className: "AMISDebug-footer" },
303
+ _J$X_("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 1024 1024" },
304
+ _J$X_("path", { d: "M724.48 521.728c-1.8432 7.7824-5.7344 14.848-11.3664 20.48l-341.9136 342.016c-16.6912 16.6912-43.7248 16.6912-60.3136 0s-16.6912-43.7248 0-60.3136L622.6944 512 310.8864 200.0896c-16.6912-16.6912-16.6912-43.7248 0-60.3136 16.6912-16.6912 43.7248-16.6912 60.3136 0l341.9136 341.9136c10.8544 10.8544 14.6432 26.112 11.3664 40.0384z", fill: "currentColor" })),
305
+ _J$X_("input", { type: "text", placeholder: "", onKeyUp: handleInputKeyUp }))) : null)));
247
306
  });
248
307
  /**
249
308
  * 鼠标移动到某个组件的效果
250
309
  */
251
310
  function handleMouseMove(e) {
252
- if (!store.isExpanded) {
311
+ if (!store.inspectMode) {
253
312
  return;
254
313
  }
255
314
  var dom = e.target;
@@ -262,14 +321,16 @@ function handleMouseMove(e) {
262
321
  * 点选某个组件
263
322
  */
264
323
  function handleMouseclick(e) {
265
- if (!store.isExpanded) {
324
+ if (!store.inspectMode) {
266
325
  return;
267
326
  }
327
+ e.preventDefault();
268
328
  var dom = e.target;
269
329
  var target = dom.closest("[data-debug-id]");
270
330
  if (target && !target.closest('.AMISDebug')) {
271
331
  store.activeId = target.getAttribute('data-debug-id');
272
332
  store.tab = 'inspect';
333
+ store.inspectMode = false;
273
334
  }
274
335
  }
275
336
  // hover 及点击后的高亮
@@ -277,6 +338,7 @@ var amisHoverBox = document.createElement('div');
277
338
  amisHoverBox.className = 'AMISDebug-hoverBox';
278
339
  var amisActiveBox = document.createElement('div');
279
340
  amisActiveBox.className = 'AMISDebug-activeBox';
341
+ var timer = null;
280
342
  mobx.autorun(function () {
281
343
  var hoverId = store.hoverId;
282
344
  var hoverElement = document.querySelector("[data-debug-id=\"".concat(hoverId, "\"]"));
@@ -300,6 +362,11 @@ mobx.autorun(function () {
300
362
  amisActiveBox.style.left = "".concat(offset.left, "px");
301
363
  amisActiveBox.style.width = "".concat(offset.width, "px");
302
364
  amisActiveBox.style.height = "".concat(offset.height, "px");
365
+ amisActiveBox.classList.add('shake');
366
+ clearTimeout(timer);
367
+ timer = setTimeout(function () {
368
+ amisActiveBox.classList.remove('shake');
369
+ }, 500);
303
370
  }
304
371
  else {
305
372
  amisActiveBox.style.top = '-999999px';
@@ -333,7 +400,7 @@ function enableDebug() {
333
400
  document.body.appendChild(amisHoverBox);
334
401
  document.body.appendChild(amisActiveBox);
335
402
  document.addEventListener('mousemove', handleMouseMove);
336
- document.addEventListener('click', handleMouseclick);
403
+ document.addEventListener('click', handleMouseclick, true);
337
404
  }
338
405
  function disableDebug() {
339
406
  if (!isEnabled) {
@@ -377,12 +444,26 @@ var DebugWrapper = /** @class */ (function (_super) {
377
444
  };
378
445
  DebugWrapper.prototype.componentWillUnmount = function () {
379
446
  delete ComponentInfo[this.debugId];
447
+ if (this.debugId === store.activeId) {
448
+ store.activeId = '';
449
+ }
450
+ if (this.debugId === store.hoverId) {
451
+ store.hoverId = '';
452
+ }
380
453
  };
381
454
  DebugWrapper.prototype.render = function () {
382
455
  return this.props.children;
383
456
  };
384
457
  return DebugWrapper;
385
458
  }(React.Component));
459
+ function parseJson(str) {
460
+ try {
461
+ return JSON.parse(str);
462
+ }
463
+ catch (e) {
464
+ return e;
465
+ }
466
+ }
386
467
  /**
387
468
  * 一般调试日志
388
469
  * @param msg 简单消息
@@ -395,18 +476,11 @@ function debug(cat, msg, ext) {
395
476
  console.groupCollapsed('[amis debug]', msg);
396
477
  console.debug(ext);
397
478
  console.groupEnd();
398
- var extStr = '';
399
- try {
400
- extStr = JSON.stringify(ext);
401
- }
402
- catch (e) {
403
- console.error(e);
404
- }
405
479
  var log = {
406
480
  cat: cat,
407
481
  level: 'debug',
408
482
  msg: msg,
409
- ext: extStr
483
+ ext: ext
410
484
  };
411
485
  store.logs.push(log);
412
486
  }
@@ -419,18 +493,11 @@ function warning(cat, msg, ext) {
419
493
  if (!isEnabled) {
420
494
  return;
421
495
  }
422
- var extStr = '';
423
- try {
424
- extStr = JSON.stringify(ext);
425
- }
426
- catch (e) {
427
- console.error(e);
428
- }
429
496
  var log = {
430
497
  cat: cat,
431
498
  level: 'warn',
432
499
  msg: msg,
433
- ext: extStr
500
+ ext: ext
434
501
  };
435
502
  console.groupCollapsed('amis debug', msg);
436
503
  console.trace(log);
@@ -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/utils/dom.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,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
 
@@ -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
 
@@ -400,3 +400,4 @@ export declare class TestIdBuilder {
400
400
  getTestIdValue(data?: object): string | undefined;
401
401
  }
402
402
  export declare function supportsMjs(): boolean;
403
+ export declare function formateId(id: string): string;
@@ -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
 
@@ -1697,6 +1697,19 @@ function supportsMjs() {
1697
1697
  return false;
1698
1698
  }
1699
1699
  }
1700
+ function formateId(id) {
1701
+ // 将className非法字符替换为短横线
1702
+ id = id.replace(/[^a-zA-Z0-9-]/g, '-');
1703
+ // 将连续的-替换为单个-
1704
+ id = id.replace(/-{2,}/g, '-');
1705
+ // 去掉首尾的-
1706
+ id = id.replace(/^-|-$/g, '');
1707
+ // 首字母不能为数字
1708
+ if (/^\d/.test(id)) {
1709
+ id = 'amis-' + id;
1710
+ }
1711
+ return id;
1712
+ }
1700
1713
 
1701
1714
  exports.cloneObject = object.cloneObject;
1702
1715
  exports.createObject = object.createObject;
@@ -1738,6 +1751,7 @@ exports.findTreeAll = findTreeAll;
1738
1751
  exports.findTreeIndex = findTreeIndex;
1739
1752
  exports.flattenTree = flattenTree;
1740
1753
  exports.flattenTreeWithLeafNodes = flattenTreeWithLeafNodes;
1754
+ exports.formateId = formateId;
1741
1755
  exports.getLevelFromClassName = getLevelFromClassName;
1742
1756
  exports.getPropValue = getPropValue;
1743
1757
  exports.getRange = getRange;
@@ -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/utils/icon.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
 
@@ -28,6 +28,7 @@ export * from './isPureVariable';
28
28
  export * from './json-schema-2-amis-schema';
29
29
  export * from './keyToPath';
30
30
  export * from './labelToString';
31
+ export * from './loopTooMuch';
31
32
  export * from './makeSorter';
32
33
  export * from './normalizeLink';
33
34
  export * from './normalizeOptions';
@@ -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
 
@@ -23,7 +23,7 @@ function labelToString(label) {
23
23
  else if (type === 'number') {
24
24
  return "".concat(label);
25
25
  }
26
- else if (label === 'boolean') {
26
+ else if (type === 'boolean') {
27
27
  return String(label);
28
28
  }
29
29
  if (isPlainObject__default["default"](label)) {
@@ -0,0 +1 @@
1
+ export declare function loopTooMuch(key: string, maxSpeed?: number): boolean;
@@ -0,0 +1,31 @@
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 loopCount = {};
11
+ var loopTimer = {};
12
+ var loopResult = {};
13
+ function loopTooMuch(key, maxSpeed) {
14
+ if (maxSpeed === void 0) { maxSpeed = 20; }
15
+ if (loopResult[key]) {
16
+ return loopResult[key];
17
+ }
18
+ clearTimeout(loopTimer[key]);
19
+ loopTimer[key] = setTimeout(function () {
20
+ delete loopCount[key];
21
+ delete loopTimer[key];
22
+ }, 1000);
23
+ if (loopCount[key] && loopCount[key] > maxSpeed) {
24
+ loopResult[key] = true;
25
+ return true;
26
+ }
27
+ loopCount[key] = (loopCount[key] || 0) + 1;
28
+ return false;
29
+ }
30
+
31
+ exports.loopTooMuch = loopTooMuch;
@@ -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/utils/math.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,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
 
@@ -44,15 +44,20 @@ function position(node, offsetParent$1) {
44
44
  }
45
45
  if (nodeName(parent_1) !== 'html')
46
46
  parentOffset = offset.offset(parent_1);
47
- var borderTop = String(getComputedStyle(parent_1).getPropertyValue('border-top-width') || 0);
47
+ var parentStyle = getComputedStyle(parent_1);
48
+ var borderTop = String(parentStyle.getPropertyValue('border-top-width') || 0);
48
49
  parentOffset.top += parseInt(borderTop, 10) - parent_1.scrollTop || 0;
49
- var borderLeft = String(getComputedStyle(parent_1).getPropertyValue('border-left-width') || 0);
50
+ var borderLeft = String(parentStyle.getPropertyValue('border-left-width') || 0);
50
51
  parentOffset.left += parseInt(borderLeft, 10) - parent_1.scrollLeft || 0;
51
52
  }
52
- var marginTop = String(getComputedStyle(node).getPropertyValue('margin-top') || 0);
53
- var marginLeft = String(getComputedStyle(node).getPropertyValue('margin-left') || 0);
53
+ // const marginTop = String(
54
+ // getComputedStyle(node).getPropertyValue('margin-top') || 0
55
+ // );
56
+ // const marginLeft = String(
57
+ // getComputedStyle(node).getPropertyValue('margin-left') || 0
58
+ // );
54
59
  // Subtract parent offsets and node margins
55
- return tslib.__assign(tslib.__assign({}, offset$1), { top: offset$1.top - parentOffset.top - (parseInt(marginTop, 10) || 0), left: offset$1.left - parentOffset.left - (parseInt(marginLeft, 10) || 0) });
60
+ return tslib.__assign(tslib.__assign({}, offset$1), { top: offset$1.top - parentOffset.top /*- (parseInt(marginTop, 10) || 0)*/, left: offset$1.left - parentOffset.left /* - (parseInt(marginLeft, 10) || 0)*/ });
56
61
  }
57
62
 
58
63
  exports["default"] = position;
@@ -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