amis-core 2.0.0 → 2.1.0

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 (311) hide show
  1. package/esm/Root.js +1 -1
  2. package/esm/RootRenderer.js +7 -7
  3. package/esm/SchemaRenderer.js +12 -12
  4. package/esm/Scoped.js +1 -1
  5. package/esm/WithRootStore.d.ts +0 -18
  6. package/esm/WithRootStore.js +1 -1
  7. package/esm/WithStore.js +1 -1
  8. package/esm/_virtual/index.js +1 -1
  9. package/esm/_virtual/index2.js +1 -1
  10. package/esm/_virtual/react-is.development.js +1 -1
  11. package/esm/_virtual/react-is.production.min.js +1 -1
  12. package/esm/actions/Action.js +1 -1
  13. package/esm/actions/AjaxAction.js +39 -38
  14. package/esm/actions/BreakAction.js +1 -1
  15. package/esm/actions/BroadcastAction.js +1 -1
  16. package/esm/actions/CmptAction.js +3 -3
  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/Decorators.js +1 -1
  21. package/esm/actions/DialogAction.js +2 -2
  22. package/esm/actions/DrawerAction.js +1 -1
  23. package/esm/actions/EmailAction.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/SwitchAction.js +1 -1
  29. package/esm/actions/ToastAction.js +1 -1
  30. package/esm/components/LazyComponent.js +1 -1
  31. package/esm/components/Overlay.d.ts +2 -0
  32. package/esm/components/Overlay.js +19 -2
  33. package/esm/components/PopOver.js +1 -1
  34. package/esm/env.js +1 -1
  35. package/esm/envOverwrite.js +1 -1
  36. package/esm/factory.d.ts +1 -1
  37. package/esm/factory.js +1 -1
  38. package/esm/index.js +4 -4
  39. package/esm/index2.js +3 -4
  40. package/esm/locale.js +1 -1
  41. package/esm/node_modules/@restart/hooks/esm/useCommittedRef.js +1 -1
  42. package/esm/node_modules/@restart/hooks/esm/useEventCallback.js +1 -1
  43. package/esm/node_modules/dom-helpers/esm/addEventListener.js +1 -1
  44. package/esm/node_modules/dom-helpers/esm/canUseDOM.js +1 -1
  45. package/esm/node_modules/dom-helpers/esm/contains.js +1 -1
  46. package/esm/node_modules/dom-helpers/esm/listen.js +1 -1
  47. package/esm/node_modules/dom-helpers/esm/ownerDocument.js +1 -1
  48. package/esm/node_modules/dom-helpers/esm/removeEventListener.js +1 -1
  49. package/esm/node_modules/object-assign/index.js +1 -1
  50. package/esm/node_modules/prop-types/checkPropTypes.js +1 -1
  51. package/esm/node_modules/prop-types/factoryWithThrowingShims.js +1 -1
  52. package/esm/node_modules/prop-types/factoryWithTypeCheckers.js +1 -1
  53. package/esm/node_modules/prop-types/index.js +1 -1
  54. package/esm/node_modules/prop-types/lib/ReactPropTypesSecret.js +1 -1
  55. package/esm/node_modules/prop-types/lib/has.js +1 -1
  56. package/esm/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +1 -1
  57. package/esm/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +1 -1
  58. package/esm/node_modules/prop-types/node_modules/react-is/index.js +1 -1
  59. package/esm/node_modules/react-overlays/esm/Portal.js +1 -1
  60. package/esm/node_modules/react-overlays/esm/ownerDocument.js +1 -1
  61. package/esm/node_modules/react-overlays/esm/safeFindDOMNode.js +1 -1
  62. package/esm/node_modules/react-overlays/esm/useRootClose.js +1 -1
  63. package/esm/node_modules/react-overlays/esm/useWaitForDOMRef.js +1 -1
  64. package/esm/node_modules/warning/warning.js +1 -1
  65. package/esm/renderers/Form.d.ts +2 -1
  66. package/esm/renderers/Form.js +12 -6
  67. package/esm/renderers/Item.d.ts +4 -18
  68. package/esm/renderers/Item.js +21 -11
  69. package/esm/renderers/Options.js +14 -6
  70. package/esm/renderers/Placeholder.js +1 -1
  71. package/esm/renderers/builtin.js +1 -1
  72. package/esm/renderers/wrapControl.d.ts +0 -9
  73. package/esm/renderers/wrapControl.js +2 -3
  74. package/esm/store/app.d.ts +4 -1
  75. package/esm/store/app.js +5 -2
  76. package/esm/store/combo.js +1 -1
  77. package/esm/store/crud.js +1 -1
  78. package/esm/store/form.js +1 -1
  79. package/esm/store/formItem.js +4 -2
  80. package/esm/store/iRenderer.js +1 -1
  81. package/esm/store/index.d.ts +0 -5
  82. package/esm/store/index.js +1 -16
  83. package/esm/store/list.js +1 -1
  84. package/esm/store/manager.js +1 -1
  85. package/esm/store/modal.js +1 -1
  86. package/esm/store/node.js +1 -1
  87. package/esm/store/pagination.js +1 -1
  88. package/esm/store/root.d.ts +4 -0
  89. package/esm/store/root.js +14 -2
  90. package/esm/store/service.js +1 -1
  91. package/esm/store/table-v2.js +1 -1
  92. package/esm/store/table.d.ts +2 -2
  93. package/esm/store/table.js +4 -9
  94. package/esm/theme.js +1 -1
  95. package/esm/types.d.ts +2 -2
  96. package/esm/utils/Animation.js +1 -1
  97. package/esm/utils/ColorScale.js +1 -1
  98. package/esm/utils/DataSchema.js +2 -6
  99. package/esm/utils/DataScope.js +1 -1
  100. package/esm/utils/RootClose.js +1 -1
  101. package/esm/utils/SimpleMap.js +1 -1
  102. package/esm/utils/api.d.ts +7 -0
  103. package/esm/utils/api.js +47 -6
  104. package/esm/utils/attachmentAdpator.js +1 -1
  105. package/esm/utils/autobind.js +1 -1
  106. package/esm/utils/columnsSplit.js +1 -1
  107. package/esm/utils/dataMapping.d.ts +6 -0
  108. package/esm/utils/dataMapping.js +16 -2
  109. package/esm/utils/date.js +1 -1
  110. package/esm/utils/debug.js +1 -1
  111. package/esm/utils/dom.js +1 -1
  112. package/esm/utils/errors.js +1 -1
  113. package/esm/utils/escapeHtml.js +1 -1
  114. package/esm/utils/filter-schema.js +1 -1
  115. package/esm/utils/filter.js +1 -1
  116. package/esm/utils/formatDuration.js +1 -1
  117. package/esm/utils/formula.js +1 -1
  118. package/esm/utils/getVariable.js +1 -1
  119. package/esm/utils/grammar.js +1 -1
  120. package/esm/utils/handleAction.js +1 -1
  121. package/esm/utils/helper.d.ts +27 -1
  122. package/esm/utils/helper.js +23 -6
  123. package/esm/utils/highlight.js +1 -1
  124. package/esm/utils/icon.js +1 -1
  125. package/esm/utils/image.js +1 -1
  126. package/esm/utils/isPureVariable.js +1 -1
  127. package/esm/utils/json-schema-2-amis-schema.js +1 -1
  128. package/esm/utils/keyToPath.js +1 -1
  129. package/esm/utils/makeSorter.js +1 -1
  130. package/esm/utils/normalizeLink.js +1 -1
  131. package/esm/utils/normalizeOptions.js +1 -1
  132. package/esm/utils/object.js +1 -1
  133. package/esm/utils/offset.js +1 -1
  134. package/esm/utils/offsetParent.js +1 -1
  135. package/esm/utils/optionValueCompare.js +1 -1
  136. package/esm/utils/position.d.ts +1 -1
  137. package/esm/utils/position.js +9 -1
  138. package/esm/utils/prettyBytes.js +1 -1
  139. package/esm/utils/renderer-event.js +1 -1
  140. package/esm/utils/replaceText.js +1 -1
  141. package/esm/utils/resize-sensor.js +1 -1
  142. package/esm/utils/resolveVariable.js +1 -1
  143. package/esm/utils/resolveVariableAndFilter.js +1 -1
  144. package/esm/utils/scrollPosition.d.ts +1 -1
  145. package/esm/utils/scrollPosition.js +1 -1
  146. package/esm/utils/string2regExp.js +1 -1
  147. package/esm/utils/stripNumber.js +1 -1
  148. package/esm/utils/style.js +1 -1
  149. package/esm/utils/tokenize.js +1 -1
  150. package/esm/utils/tpl-builtin.d.ts +2 -2
  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/validations.js +1 -1
  156. package/lib/Root.js +1 -1
  157. package/lib/RootRenderer.js +7 -7
  158. package/lib/SchemaRenderer.js +12 -12
  159. package/lib/Scoped.js +1 -1
  160. package/lib/WithRootStore.d.ts +0 -18
  161. package/lib/WithRootStore.js +1 -1
  162. package/lib/WithStore.js +1 -1
  163. package/lib/_virtual/index.js +1 -1
  164. package/lib/_virtual/index2.js +1 -1
  165. package/lib/_virtual/react-is.development.js +1 -1
  166. package/lib/_virtual/react-is.production.min.js +1 -1
  167. package/lib/actions/Action.js +1 -1
  168. package/lib/actions/AjaxAction.js +38 -37
  169. package/lib/actions/BreakAction.js +1 -1
  170. package/lib/actions/BroadcastAction.js +1 -1
  171. package/lib/actions/CmptAction.js +3 -3
  172. package/lib/actions/ContinueAction.js +1 -1
  173. package/lib/actions/CopyAction.js +1 -1
  174. package/lib/actions/CustomAction.js +1 -1
  175. package/lib/actions/Decorators.js +1 -1
  176. package/lib/actions/DialogAction.js +2 -2
  177. package/lib/actions/DrawerAction.js +1 -1
  178. package/lib/actions/EmailAction.js +1 -1
  179. package/lib/actions/LinkAction.js +1 -1
  180. package/lib/actions/LoopAction.js +1 -1
  181. package/lib/actions/PageAction.js +1 -1
  182. package/lib/actions/ParallelAction.js +1 -1
  183. package/lib/actions/SwitchAction.js +1 -1
  184. package/lib/actions/ToastAction.js +1 -1
  185. package/lib/components/LazyComponent.js +1 -1
  186. package/lib/components/Overlay.d.ts +2 -0
  187. package/lib/components/Overlay.js +19 -2
  188. package/lib/components/PopOver.js +1 -1
  189. package/lib/env.js +1 -1
  190. package/lib/envOverwrite.js +1 -1
  191. package/lib/factory.d.ts +1 -1
  192. package/lib/factory.js +1 -1
  193. package/lib/index.js +5 -1
  194. package/lib/index2.js +4 -2
  195. package/lib/locale.js +1 -1
  196. package/lib/node_modules/@restart/hooks/esm/useCommittedRef.js +1 -1
  197. package/lib/node_modules/@restart/hooks/esm/useEventCallback.js +1 -1
  198. package/lib/node_modules/dom-helpers/esm/addEventListener.js +1 -1
  199. package/lib/node_modules/dom-helpers/esm/canUseDOM.js +1 -1
  200. package/lib/node_modules/dom-helpers/esm/contains.js +1 -1
  201. package/lib/node_modules/dom-helpers/esm/listen.js +1 -1
  202. package/lib/node_modules/dom-helpers/esm/ownerDocument.js +1 -1
  203. package/lib/node_modules/dom-helpers/esm/removeEventListener.js +1 -1
  204. package/lib/node_modules/object-assign/index.js +1 -1
  205. package/lib/node_modules/prop-types/checkPropTypes.js +1 -1
  206. package/lib/node_modules/prop-types/factoryWithThrowingShims.js +1 -1
  207. package/lib/node_modules/prop-types/factoryWithTypeCheckers.js +1 -1
  208. package/lib/node_modules/prop-types/index.js +1 -1
  209. package/lib/node_modules/prop-types/lib/ReactPropTypesSecret.js +1 -1
  210. package/lib/node_modules/prop-types/lib/has.js +1 -1
  211. package/lib/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +1 -1
  212. package/lib/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +1 -1
  213. package/lib/node_modules/prop-types/node_modules/react-is/index.js +1 -1
  214. package/lib/node_modules/react-overlays/esm/Portal.js +1 -1
  215. package/lib/node_modules/react-overlays/esm/ownerDocument.js +1 -1
  216. package/lib/node_modules/react-overlays/esm/safeFindDOMNode.js +1 -1
  217. package/lib/node_modules/react-overlays/esm/useRootClose.js +1 -1
  218. package/lib/node_modules/react-overlays/esm/useWaitForDOMRef.js +1 -1
  219. package/lib/node_modules/warning/warning.js +1 -1
  220. package/lib/renderers/Form.d.ts +2 -1
  221. package/lib/renderers/Form.js +12 -6
  222. package/lib/renderers/Item.d.ts +4 -18
  223. package/lib/renderers/Item.js +20 -10
  224. package/lib/renderers/Options.js +14 -7
  225. package/lib/renderers/Placeholder.js +1 -1
  226. package/lib/renderers/builtin.js +1 -1
  227. package/lib/renderers/wrapControl.d.ts +0 -9
  228. package/lib/renderers/wrapControl.js +2 -3
  229. package/lib/store/app.d.ts +4 -1
  230. package/lib/store/app.js +5 -2
  231. package/lib/store/combo.js +1 -1
  232. package/lib/store/crud.js +1 -1
  233. package/lib/store/form.js +1 -1
  234. package/lib/store/formItem.js +4 -2
  235. package/lib/store/iRenderer.js +1 -1
  236. package/lib/store/index.d.ts +0 -5
  237. package/lib/store/index.js +1 -16
  238. package/lib/store/list.js +1 -1
  239. package/lib/store/manager.js +1 -1
  240. package/lib/store/modal.js +1 -1
  241. package/lib/store/node.js +1 -1
  242. package/lib/store/pagination.js +1 -1
  243. package/lib/store/root.d.ts +4 -0
  244. package/lib/store/root.js +14 -2
  245. package/lib/store/service.js +1 -1
  246. package/lib/store/table-v2.js +1 -1
  247. package/lib/store/table.d.ts +2 -2
  248. package/lib/store/table.js +4 -9
  249. package/lib/theme.js +1 -1
  250. package/lib/types.d.ts +2 -2
  251. package/lib/utils/Animation.js +1 -1
  252. package/lib/utils/ColorScale.js +1 -1
  253. package/lib/utils/DataSchema.js +2 -6
  254. package/lib/utils/DataScope.js +1 -1
  255. package/lib/utils/RootClose.js +1 -1
  256. package/lib/utils/SimpleMap.js +1 -1
  257. package/lib/utils/api.d.ts +7 -0
  258. package/lib/utils/api.js +48 -5
  259. package/lib/utils/attachmentAdpator.js +1 -1
  260. package/lib/utils/autobind.js +1 -1
  261. package/lib/utils/columnsSplit.js +1 -1
  262. package/lib/utils/dataMapping.d.ts +6 -0
  263. package/lib/utils/dataMapping.js +16 -1
  264. package/lib/utils/date.js +1 -1
  265. package/lib/utils/debug.js +1 -1
  266. package/lib/utils/dom.js +1 -1
  267. package/lib/utils/errors.js +1 -1
  268. package/lib/utils/escapeHtml.js +1 -1
  269. package/lib/utils/filter-schema.js +1 -1
  270. package/lib/utils/filter.js +1 -1
  271. package/lib/utils/formatDuration.js +1 -1
  272. package/lib/utils/formula.js +1 -1
  273. package/lib/utils/getVariable.js +1 -1
  274. package/lib/utils/grammar.js +1 -1
  275. package/lib/utils/handleAction.js +1 -1
  276. package/lib/utils/helper.d.ts +27 -1
  277. package/lib/utils/helper.js +23 -5
  278. package/lib/utils/highlight.js +1 -1
  279. package/lib/utils/icon.js +1 -1
  280. package/lib/utils/image.js +1 -1
  281. package/lib/utils/isPureVariable.js +1 -1
  282. package/lib/utils/json-schema-2-amis-schema.js +1 -1
  283. package/lib/utils/keyToPath.js +1 -1
  284. package/lib/utils/makeSorter.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.d.ts +1 -1
  292. package/lib/utils/position.js +9 -1
  293. package/lib/utils/prettyBytes.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/resolveVariable.js +1 -1
  298. package/lib/utils/resolveVariableAndFilter.js +1 -1
  299. package/lib/utils/scrollPosition.d.ts +1 -1
  300. package/lib/utils/scrollPosition.js +1 -1
  301. package/lib/utils/string2regExp.js +1 -1
  302. package/lib/utils/stripNumber.js +1 -1
  303. package/lib/utils/style.js +1 -1
  304. package/lib/utils/tokenize.js +1 -1
  305. package/lib/utils/tpl-builtin.d.ts +2 -2
  306. package/lib/utils/tpl-builtin.js +1 -1
  307. package/lib/utils/tpl-lodash.js +1 -1
  308. package/lib/utils/tpl.js +1 -1
  309. package/lib/utils/uncontrollable.js +1 -1
  310. package/lib/utils/validations.js +1 -1
  311. package/package.json +6 -6
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -79,7 +79,13 @@ export declare function makeHorizontalDeeper(horizontal: {
79
79
  export declare function promisify<T extends Function>(fn: T): (...args: Array<any>) => Promise<any> & {
80
80
  raw: T;
81
81
  };
82
- export declare function getScrollParent(node: HTMLElement): HTMLElement | null;
82
+ /**
83
+ *
84
+ * @param node 当前元素
85
+ * @param compute 自定义计算,找到的父元素是否满足特殊场景
86
+ * @returns 返回控制当前元素滚动的父元素
87
+ */
88
+ export declare function getScrollParent(node: HTMLElement, compute?: (parent: HTMLElement) => boolean): HTMLElement | null;
83
89
  /**
84
90
  * Deep diff between two object, using lodash
85
91
  * @param {Object} object Object compared
@@ -184,6 +190,26 @@ export declare function someTree<T extends TreeItem>(tree: Array<T>, iterator: (
184
190
  */
185
191
  export declare function flattenTree<T extends TreeItem>(tree: Array<T>): Array<T>;
186
192
  export declare function flattenTree<T extends TreeItem, U>(tree: Array<T>, mapper: (value: T, index: number) => U): Array<U>;
193
+ /**
194
+ * 将树打平变成一维数组,用法和flattenTree类似,区别是结果仅保留叶节点
195
+ *
196
+ * 比如:
197
+ *
198
+ * flattenTreeWithLeafNodes([
199
+ * {
200
+ * id: 1,
201
+ * children: [
202
+ * { id: 2 },
203
+ * { id: 3 },
204
+ * ]
205
+ * }
206
+ * ], item => item.id); // 输出为 [2, 3]
207
+ *
208
+ * @param tree
209
+ * @param mapper
210
+ */
211
+ export declare function flattenTreeWithLeafNodes<T extends TreeItem>(tree: Array<T>): Array<T>;
212
+ export declare function flattenTreeWithLeafNodes<T extends TreeItem, U>(tree: Array<T>, mapper: (value: T, index: number) => U): Array<U>;
187
213
  /**
188
214
  * 操作树,遵循 imutable, 每次返回一个新的树。
189
215
  * 类似数组的 splice 不同的地方这个方法不修改原始数据,
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -332,7 +332,14 @@ function promisify(fn) {
332
332
  promisified.raw = fn;
333
333
  return promisified;
334
334
  }
335
- function getScrollParent(node) {
335
+ /**
336
+ *
337
+ * @param node 当前元素
338
+ * @param compute 自定义计算,找到的父元素是否满足特殊场景
339
+ * @returns 返回控制当前元素滚动的父元素
340
+ */
341
+ function getScrollParent(node, compute) {
342
+ if (compute === void 0) { compute = function () { return true; }; }
336
343
  if (node == null) {
337
344
  return null;
338
345
  }
@@ -343,10 +350,10 @@ function getScrollParent(node) {
343
350
  var text = style.getPropertyValue('overflow') +
344
351
  style.getPropertyValue('overflow-x') +
345
352
  style.getPropertyValue('overflow-y');
346
- if (/auto|scroll/.test(text) || node.nodeName === 'BODY') {
353
+ if (node.nodeName === 'BODY' || (/auto|scroll/.test(text) && compute(node))) {
347
354
  return node;
348
355
  }
349
- return getScrollParent(node.parentNode);
356
+ return getScrollParent(node.parentNode, compute);
350
357
  }
351
358
  /**
352
359
  * Deep diff between two object, using lodash
@@ -698,6 +705,15 @@ function flattenTree(tree, mapper) {
698
705
  });
699
706
  return flattened;
700
707
  }
708
+ function flattenTreeWithLeafNodes(tree, mapper) {
709
+ var flattened = [];
710
+ eachTree(tree, function (item, index) {
711
+ if (!item.hasOwnProperty('children')) {
712
+ flattened.push(mapper ? mapper(item, index) : item);
713
+ }
714
+ });
715
+ return flattened;
716
+ }
701
717
  /**
702
718
  * 操作树,遵循 imutable, 每次返回一个新的树。
703
719
  * 类似数组的 splice 不同的地方这个方法不修改原始数据,
@@ -851,7 +867,8 @@ function qsparse(data, options) {
851
867
  if (options === void 0) { options = {
852
868
  arrayFormat: 'indices',
853
869
  encodeValuesOnly: true,
854
- depth: 1000 // 默认是 5, 所以condition-builder只要来个条件组就会导致报错
870
+ depth: 1000,
871
+ arrayLimit: 1000 /** array元素数量超出限制,会被自动转化为object格式,默认值1000 */
855
872
  }; }
856
873
  return qs.parse(data, options);
857
874
  }
@@ -1198,4 +1215,4 @@ function isNumeric(value) {
1198
1215
  return /^[-+]?(?:\d*[.])?\d+$/.test(value);
1199
1216
  }
1200
1217
 
1201
- export { JSONTraverse, SkipOperation, __uri, anyChanged, autobind, bulkBindFunctions, camel, chainEvents, chainFunctions, convertArrayValueToMoment, detectPropValueChanged, difference, eachTree, everyTree, filterTree, findIndex, findObjectsWithKey, findTree, findTreeIndex, flattenTree, getLevelFromClassName, getPropValue, getRange, getScrollParent, getScrollbarWidth, getTree, getTreeAncestors, getTreeDepth, getTreeParent, getWidthRate, guid, hasAbility, hasFile, hasOwnPropertyInPath, hasVisibleExpression, hashCode, immutableExtends, injectPropsToObject, isArrayChildrenModified, isBreakpoint, isClickOnInput, isDisabled, isEmpty, isMobile, isNumeric, isObjectShallowModified, isSuperDataModified, isUnfolded, isVisible, lcFirst, loadScript, makeColumnClassBuild, makeHorizontalDeeper, mapObject, mapTree, noop, normalizeNodePath, object2formData, omitControls, padArr, pickEventsProps, preventDefault, promisify, qsparse, qsstringify, range, removeHTMLTag, repeatCount, rmUndefined, someTree, sortArray, spliceTree, syncDataFromSuper, ucFirst, until, uuid, uuidv4, visibilityFilter };
1218
+ export { JSONTraverse, SkipOperation, __uri, anyChanged, autobind, bulkBindFunctions, camel, chainEvents, chainFunctions, convertArrayValueToMoment, detectPropValueChanged, difference, eachTree, everyTree, filterTree, findIndex, findObjectsWithKey, findTree, findTreeIndex, flattenTree, flattenTreeWithLeafNodes, getLevelFromClassName, getPropValue, getRange, getScrollParent, getScrollbarWidth, getTree, getTreeAncestors, getTreeDepth, getTreeParent, getWidthRate, guid, hasAbility, hasFile, hasOwnPropertyInPath, hasVisibleExpression, hashCode, immutableExtends, injectPropsToObject, isArrayChildrenModified, isBreakpoint, isClickOnInput, isDisabled, isEmpty, isMobile, isNumeric, isObjectShallowModified, isSuperDataModified, isUnfolded, isVisible, lcFirst, loadScript, makeColumnClassBuild, makeHorizontalDeeper, mapObject, mapTree, noop, normalizeNodePath, object2formData, omitControls, padArr, pickEventsProps, preventDefault, promisify, qsparse, qsstringify, range, removeHTMLTag, repeatCount, rmUndefined, someTree, sortArray, spliceTree, syncDataFromSuper, ucFirst, until, uuid, uuidv4, visibilityFilter };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
package/esm/utils/icon.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -10,8 +10,8 @@
10
10
  export declare function position(node: HTMLElement, offsetParent?: HTMLElement): {
11
11
  top: number;
12
12
  left: number;
13
- height: number;
14
13
  width: number;
14
+ height: number;
15
15
  } | {
16
16
  top: number;
17
17
  left: number;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -30,6 +30,14 @@ function position(node, offsetParent$1) {
30
30
  else {
31
31
  var parent_1 = offsetParent$1 || offsetParent(node);
32
32
  offset$1 = offset(node);
33
+ if (parent_1 === node) {
34
+ return {
35
+ top: 0,
36
+ left: 0,
37
+ width: offset$1.width,
38
+ height: offset$1.height
39
+ };
40
+ }
33
41
  if (nodeName(parent_1) !== 'html')
34
42
  parentOffset = offset(parent_1);
35
43
  var borderTop = String(getComputedStyle(parent_1).getPropertyValue('border-top-width') || 0);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,8 +1,8 @@
1
1
  export declare function scrollPosition(dom: HTMLElement): {
2
2
  top: number;
3
3
  left: number;
4
- height: number;
5
4
  width: number;
5
+ height: number;
6
6
  } | {
7
7
  top: number;
8
8
  left: number;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -10,9 +10,9 @@ import { stripNumber } from './stripNumber';
10
10
  import { tokenize } from './tokenize';
11
11
  import { resolveVariable } from './resolveVariable';
12
12
  import { resolveVariableAndFilter } from './resolveVariableAndFilter';
13
- import { dataMapping, resolveMapping } from './dataMapping';
13
+ import { dataMapping, resolveMapping, resolveMappingObject } from './dataMapping';
14
14
  import './filter';
15
- export { prettyBytes, escapeHtml, formatDuration, filterDate, relativeValueRe, parseDuration, getFilters, registerFilter, pickValues, isPureVariable, stripNumber, tokenize, resolveVariable, resolveVariableAndFilter, resolveMapping, dataMapping };
15
+ export { prettyBytes, escapeHtml, formatDuration, filterDate, relativeValueRe, parseDuration, getFilters, registerFilter, pickValues, isPureVariable, stripNumber, tokenize, resolveVariable, resolveVariableAndFilter, resolveMapping, resolveMappingObject, dataMapping };
16
16
  export declare function register(): Enginer & {
17
17
  name: string;
18
18
  };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
package/esm/utils/tpl.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
package/lib/Root.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -257,25 +257,25 @@ var RootRenderer = /** @class */ (function (_super) {
257
257
  return render('error', {
258
258
  type: 'alert',
259
259
  level: 'danger'
260
- }, tslib.__assign(tslib.__assign({}, rest), { body: (React__default["default"].createElement(React__default["default"].Fragment, null,
260
+ }, tslib.__assign(tslib.__assign({}, rest), { topStore: this.store, body: (React__default["default"].createElement(React__default["default"].Fragment, null,
261
261
  React__default["default"].createElement("h3", null, (_a = this.store.runtimeError) === null || _a === void 0 ? void 0 : _a.toString()),
262
262
  React__default["default"].createElement("pre", null,
263
263
  React__default["default"].createElement("code", null, this.store.runtimeErrorStack.componentStack)))) }));
264
264
  }
265
265
  return (React__default["default"].createElement(React__default["default"].Fragment, null,
266
- render(pathPrefix, schema, tslib.__assign(tslib.__assign({}, rest), { data: this.store.downStream, onAction: this.handleAction })),
266
+ render(pathPrefix, schema, tslib.__assign(tslib.__assign({}, rest), { topStore: this.store, data: this.store.downStream, onAction: this.handleAction })),
267
267
  render('spinner', {
268
268
  type: 'spinner'
269
- }, tslib.__assign(tslib.__assign({}, rest), { show: store.loading })),
269
+ }, tslib.__assign(tslib.__assign({}, rest), { topStore: this.store, show: store.loading })),
270
270
  store.error
271
271
  ? render('error', {
272
272
  type: 'alert'
273
- }, tslib.__assign(tslib.__assign({}, rest), { body: store.msg, showCloseButton: true, onClose: store.clearMessage }))
273
+ }, tslib.__assign(tslib.__assign({}, rest), { topStore: this.store, body: store.msg, showCloseButton: true, onClose: store.clearMessage }))
274
274
  : null,
275
275
  render('dialog', tslib.__assign(tslib.__assign({}, (store.action &&
276
- store.action.dialog)), { type: 'dialog' }), tslib.__assign(tslib.__assign({}, rest), { key: 'dialog', data: store.dialogData, onConfirm: this.handleDialogConfirm, onClose: this.handleDialogClose, show: store.dialogOpen, onAction: this.handleAction })),
276
+ store.action.dialog)), { type: 'dialog' }), tslib.__assign(tslib.__assign({}, rest), { key: 'dialog', topStore: this.store, data: store.dialogData, onConfirm: this.handleDialogConfirm, onClose: this.handleDialogClose, show: store.dialogOpen, onAction: this.handleAction })),
277
277
  render('drawer', tslib.__assign(tslib.__assign({}, (store.action &&
278
- store.action.drawer)), { type: 'drawer' }), tslib.__assign(tslib.__assign({}, rest), { key: 'drawer', data: store.drawerData, onConfirm: this.handleDrawerConfirm, onClose: this.handleDrawerClose, show: store.drawerOpen, onAction: this.handleAction }))));
278
+ store.action.drawer)), { type: 'drawer' }), tslib.__assign(tslib.__assign({}, rest), { key: 'drawer', topStore: this.store, data: store.drawerData, onConfirm: this.handleDrawerConfirm, onClose: this.handleDrawerClose, show: store.drawerOpen, onAction: this.handleAction }))));
279
279
  };
280
280
  RootRenderer.contextType = Scoped.ScopedContext;
281
281
  RootRenderer = tslib.__decorate([
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -70,9 +70,9 @@ var SchemaRenderer = /** @class */ (function (_super) {
70
70
  _this.reRender = _this.reRender.bind(_this);
71
71
  _this.resolveRenderer(_this.props);
72
72
  _this.dispatchEvent = _this.dispatchEvent.bind(_this);
73
- // 监听rootStore更新
73
+ // 监听topStore更新
74
74
  _this.reaction = mobx.reaction(function () {
75
- return "".concat(props.rootStore.visibleState[props.schema.id || props.$path]).concat(props.rootStore.disableState[props.schema.id || props.$path]);
75
+ return "".concat(props.topStore.visibleState[props.schema.id || props.$path]).concat(props.topStore.disableState[props.schema.id || props.$path]);
76
76
  }, function () { return _this.forceUpdate(); });
77
77
  return _this;
78
78
  }
@@ -188,7 +188,7 @@ var SchemaRenderer = /** @class */ (function (_super) {
188
188
  SchemaRenderer.prototype.render = function () {
189
189
  var _this = this;
190
190
  var _a, _b, _c;
191
- var _d = this.props; _d.$path; var __ = _d.schema, rootStore = _d.rootStore, render = _d.render, rest = tslib.__rest(_d, ["$path", "schema", "rootStore", "render"]);
191
+ var _d = this.props; _d.$path; var __ = _d.schema, rootStore = _d.rootStore, topStore = _d.topStore, render = _d.render, rest = tslib.__rest(_d, ["$path", "schema", "rootStore", "topStore", "render"]);
192
192
  if (__ == null) {
193
193
  return null;
194
194
  }
@@ -203,11 +203,11 @@ var SchemaRenderer = /** @class */ (function (_super) {
203
203
  ? filterSchema.getExprProperties(schema, detectData, undefined, rest)
204
204
  : {};
205
205
  // 控制显隐
206
- var visible = mobxStateTree.isAlive(rootStore)
207
- ? rootStore.visibleState[schema.id || $path]
206
+ var visible = mobxStateTree.isAlive(topStore)
207
+ ? topStore.visibleState[schema.id || $path]
208
208
  : undefined;
209
- var disable = mobxStateTree.isAlive(rootStore)
210
- ? rootStore.disableState[schema.id || $path]
209
+ var disable = mobxStateTree.isAlive(topStore)
210
+ ? topStore.disableState[schema.id || $path]
211
211
  : undefined;
212
212
  if (visible === false ||
213
213
  (visible !== true &&
@@ -225,7 +225,7 @@ var SchemaRenderer = /** @class */ (function (_super) {
225
225
  ? null
226
226
  : React__default["default"].isValidElement(schema.children)
227
227
  ? schema.children
228
- : schema.children(tslib.__assign(tslib.__assign(tslib.__assign({}, rest), exprProps), { $path: $path, $schema: schema, render: this.renderChild, forwardedRef: this.refFn, rootStore: rootStore, dispatchEvent: this.dispatchEvent }));
228
+ : schema.children(tslib.__assign(tslib.__assign(tslib.__assign({}, rest), exprProps), { $path: $path, $schema: schema, render: this.renderChild, forwardedRef: this.refFn, rootStore: rootStore, topStore: topStore, dispatchEvent: this.dispatchEvent }));
229
229
  }
230
230
  else if (typeof schema.component === 'function') {
231
231
  var isSFC = !(schema.component.prototype instanceof React__default["default"].Component);
@@ -235,7 +235,7 @@ var SchemaRenderer = /** @class */ (function (_super) {
235
235
  ? null
236
236
  : React__default["default"].createElement(schema.component, tslib.__assign(tslib.__assign(tslib.__assign(tslib.__assign({}, rest), restSchema_1), exprProps), {
237
237
  // value: defaultValue, // 备注: 此处并没有将value传递给渲染器
238
- defaultData: defaultData_1, defaultValue: defaultValue_1, defaultActiveKey: defaultActiveKey_1, propKey: propKey_1, $path: $path, $schema: schema, ref: isSFC ? undefined : this.refFn, forwardedRef: isSFC ? this.refFn : undefined, render: this.renderChild, rootStore: rootStore, dispatchEvent: this.dispatchEvent }));
238
+ defaultData: defaultData_1, defaultValue: defaultValue_1, defaultActiveKey: defaultActiveKey_1, propKey: propKey_1, $path: $path, $schema: schema, ref: isSFC ? undefined : this.refFn, forwardedRef: isSFC ? this.refFn : undefined, render: this.renderChild, rootStore: rootStore, topStore: topStore, dispatchEvent: this.dispatchEvent }));
239
239
  }
240
240
  else if (Object.keys(schema).length === 0) {
241
241
  return null;
@@ -258,7 +258,7 @@ var SchemaRenderer = /** @class */ (function (_super) {
258
258
  return [2 /*return*/, function () { return factory.loadRenderer(schema, $path); }];
259
259
  }
260
260
  });
261
- }); }, "$path": $path, "$schema": schema, retry: this.reRender, rootStore: rootStore, dispatchEvent: this.dispatchEvent })));
261
+ }); }, "$path": $path, "$schema": schema, retry: this.reRender, rootStore: rootStore, topStore: topStore, dispatchEvent: this.dispatchEvent })));
262
262
  }
263
263
  var renderer = this.renderer;
264
264
  schema = factory.filterSchema(schema, renderer, rest);
@@ -279,7 +279,7 @@ var SchemaRenderer = /** @class */ (function (_super) {
279
279
  var $schema = tslib.__assign(tslib.__assign({}, schema), exprProps);
280
280
  var props = tslib.__assign(tslib.__assign(tslib.__assign(tslib.__assign(tslib.__assign({}, theme.getRendererConfig(renderer.name)), restSchema), helper.chainEvents(rest, restSchema)), exprProps), {
281
281
  // value: defaultValue, // 备注: 此处并没有将value传递给渲染器
282
- defaultData: (_b = restSchema.defaultData) !== null && _b !== void 0 ? _b : defaultData, defaultValue: (_c = restSchema.defaultValue) !== null && _c !== void 0 ? _c : defaultValue, defaultActiveKey: defaultActiveKey, propKey: propKey, $path: $path, $schema: $schema, ref: this.refFn, render: this.renderChild, rootStore: rootStore, dispatchEvent: this.dispatchEvent });
282
+ defaultData: (_b = restSchema.defaultData) !== null && _b !== void 0 ? _b : defaultData, defaultValue: (_c = restSchema.defaultValue) !== null && _c !== void 0 ? _c : defaultValue, defaultActiveKey: defaultActiveKey, propKey: propKey, $path: $path, $schema: $schema, ref: this.refFn, render: this.renderChild, rootStore: rootStore, topStore: topStore, dispatchEvent: this.dispatchEvent });
283
283
  if (disable !== undefined) {
284
284
  props.disabled = disable;
285
285
  }
package/lib/Scoped.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5