amis-core 6.2.2 → 6.3.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 (327) hide show
  1. package/esm/Root.js +1 -1
  2. package/esm/RootRenderer.d.ts +1 -1
  3. package/esm/RootRenderer.js +28 -10
  4. package/esm/SchemaRenderer.js +15 -6
  5. package/esm/Scoped.d.ts +1 -1
  6. package/esm/Scoped.js +3 -1
  7. package/esm/StatusScoped.js +4 -2
  8. package/esm/WithRootStore.js +1 -1
  9. package/esm/WithStore.js +28 -17
  10. package/esm/actions/Action.js +2 -2
  11. package/esm/actions/AjaxAction.js +1 -1
  12. package/esm/actions/BreakAction.js +1 -1
  13. package/esm/actions/BroadcastAction.js +1 -1
  14. package/esm/actions/CmptAction.js +2 -2
  15. package/esm/actions/ContinueAction.js +1 -1
  16. package/esm/actions/CopyAction.js +1 -1
  17. package/esm/actions/CustomAction.js +2 -2
  18. package/esm/actions/DialogAction.d.ts +8 -0
  19. package/esm/actions/DialogAction.js +95 -35
  20. package/esm/actions/DrawerAction.d.ts +5 -0
  21. package/esm/actions/DrawerAction.js +66 -11
  22. package/esm/actions/EmailAction.js +1 -1
  23. package/esm/actions/EventAction.d.ts +20 -0
  24. package/esm/actions/EventAction.js +102 -0
  25. package/esm/actions/LinkAction.js +1 -1
  26. package/esm/actions/LoopAction.js +1 -1
  27. package/esm/actions/PageAction.js +1 -1
  28. package/esm/actions/ParallelAction.js +1 -1
  29. package/esm/actions/PrintAction.js +1 -1
  30. package/esm/actions/StatusAction.js +1 -1
  31. package/esm/actions/SwitchAction.js +1 -1
  32. package/esm/actions/ToastAction.js +1 -1
  33. package/esm/actions/WaitAction.d.ts +18 -0
  34. package/esm/actions/WaitAction.js +41 -0
  35. package/esm/actions/index.d.ts +2 -0
  36. package/esm/components/CustomStyle.js +1 -1
  37. package/esm/components/ErrorBoundary.js +1 -1
  38. package/esm/components/LazyComponent.js +1 -1
  39. package/esm/components/Overlay.d.ts +3 -0
  40. package/esm/components/Overlay.js +7 -4
  41. package/esm/components/PopOver.js +2 -2
  42. package/esm/env.js +1 -1
  43. package/esm/envOverwrite.js +1 -1
  44. package/esm/factory.d.ts +2 -0
  45. package/esm/factory.js +1 -1
  46. package/esm/index.js +6 -4
  47. package/esm/locale.js +4 -2
  48. package/esm/polyfills.js +1 -1
  49. package/esm/renderers/Form.d.ts +3 -2
  50. package/esm/renderers/Form.js +82 -25
  51. package/esm/renderers/Item.d.ts +123 -79
  52. package/esm/renderers/Item.js +159 -60
  53. package/esm/renderers/Options.d.ts +0 -11
  54. package/esm/renderers/Options.js +20 -84
  55. package/esm/renderers/Placeholder.js +1 -1
  56. package/esm/renderers/builtin.js +1 -1
  57. package/esm/renderers/register.js +1 -1
  58. package/esm/renderers/wrapControl.d.ts +2 -1
  59. package/esm/renderers/wrapControl.js +4 -2
  60. package/esm/store/app.d.ts +5 -5
  61. package/esm/store/app.js +1 -1
  62. package/esm/store/combo.d.ts +255 -63
  63. package/esm/store/combo.js +1 -1
  64. package/esm/store/crud.d.ts +5 -5
  65. package/esm/store/crud.js +1 -1
  66. package/esm/store/form.d.ts +105 -25
  67. package/esm/store/form.js +33 -15
  68. package/esm/store/formItem.d.ts +6 -2
  69. package/esm/store/formItem.js +68 -5
  70. package/esm/store/iRenderer.d.ts +5 -5
  71. package/esm/store/iRenderer.js +23 -10
  72. package/esm/store/index.js +1 -1
  73. package/esm/store/list.d.ts +5 -5
  74. package/esm/store/list.js +1 -1
  75. package/esm/store/manager.js +1 -1
  76. package/esm/store/modal.d.ts +5 -5
  77. package/esm/store/modal.js +1 -1
  78. package/esm/store/node.js +1 -1
  79. package/esm/store/pagination.d.ts +5 -5
  80. package/esm/store/pagination.js +1 -1
  81. package/esm/store/root.d.ts +5 -5
  82. package/esm/store/root.js +1 -1
  83. package/esm/store/service.d.ts +5 -5
  84. package/esm/store/service.js +2 -2
  85. package/esm/store/status.js +1 -1
  86. package/esm/store/table.d.ts +243 -55
  87. package/esm/store/table.js +23 -9
  88. package/esm/store/table2.d.ts +5 -5
  89. package/esm/store/table2.js +1 -1
  90. package/esm/theme.js +4 -2
  91. package/esm/types.d.ts +7 -1
  92. package/esm/utils/Animation.js +1 -1
  93. package/esm/utils/ColorScale.js +1 -1
  94. package/esm/utils/DataSchema.js +1 -1
  95. package/esm/utils/DataScope.js +1 -1
  96. package/esm/utils/RootClose.js +1 -1
  97. package/esm/utils/SimpleMap.js +1 -1
  98. package/esm/utils/api.js +1 -1
  99. package/esm/utils/arraySlice.js +1 -1
  100. package/esm/utils/attachmentAdpator.js +1 -1
  101. package/esm/utils/autobind.js +1 -1
  102. package/esm/utils/browser.js +1 -1
  103. package/esm/utils/columnsSplit.js +1 -1
  104. package/esm/utils/concatData.js +1 -1
  105. package/esm/utils/dataMapping.js +1 -1
  106. package/esm/utils/date.js +1 -1
  107. package/esm/utils/debug.js +1 -1
  108. package/esm/utils/decodeEntity.js +1 -1
  109. package/esm/utils/dom.d.ts +2 -2
  110. package/esm/utils/dom.js +70 -11
  111. package/esm/utils/errors.js +1 -1
  112. package/esm/utils/escapeHtml.js +1 -1
  113. package/esm/utils/filter-schema.js +1 -1
  114. package/esm/utils/filter.js +1 -1
  115. package/esm/utils/formatDuration.js +1 -1
  116. package/esm/utils/formula.js +2 -2
  117. package/esm/utils/getVariable.js +1 -1
  118. package/esm/utils/grammar.js +1 -1
  119. package/esm/utils/handleAction.js +1 -1
  120. package/esm/utils/helper.d.ts +12 -6
  121. package/esm/utils/helper.js +39 -16
  122. package/esm/utils/highlight.js +1 -1
  123. package/esm/utils/icon.js +1 -1
  124. package/esm/utils/image.js +1 -1
  125. package/esm/utils/isPureVariable.js +1 -1
  126. package/esm/utils/json-schema-2-amis-schema.js +1 -1
  127. package/esm/utils/keyToPath.js +1 -1
  128. package/esm/utils/labelToString.js +1 -1
  129. package/esm/utils/makeSorter.js +1 -1
  130. package/esm/utils/math.js +1 -1
  131. package/esm/utils/memoryParse.js +1 -1
  132. package/esm/utils/normalizeLink.js +1 -1
  133. package/esm/utils/normalizeOptions.js +1 -1
  134. package/esm/utils/object.js +1 -1
  135. package/esm/utils/offset.js +1 -1
  136. package/esm/utils/offsetParent.js +1 -1
  137. package/esm/utils/optionValueCompare.js +1 -1
  138. package/esm/utils/position.js +1 -1
  139. package/esm/utils/prettyBytes.js +1 -1
  140. package/esm/utils/printElement.js +1 -1
  141. package/esm/utils/renderer-event.d.ts +11 -0
  142. package/esm/utils/renderer-event.js +99 -2
  143. package/esm/utils/replaceText.js +1 -1
  144. package/esm/utils/resize-sensor.js +1 -1
  145. package/esm/utils/resolveCondition.js +1 -1
  146. package/esm/utils/resolveVariable.js +1 -1
  147. package/esm/utils/resolveVariableAndFilter.js +1 -1
  148. package/esm/utils/resolveVariableAndFilterForAsync.js +1 -1
  149. package/esm/utils/scrollPosition.js +1 -1
  150. package/esm/utils/string2regExp.js +1 -1
  151. package/esm/utils/stripNumber.d.ts +1 -1
  152. package/esm/utils/stripNumber.js +4 -3
  153. package/esm/utils/style-helper.d.ts +21 -2
  154. package/esm/utils/style-helper.js +55 -10
  155. package/esm/utils/style.js +1 -1
  156. package/esm/utils/toNumber.js +1 -1
  157. package/esm/utils/tokenize.js +1 -1
  158. package/esm/utils/tpl-builtin.js +1 -1
  159. package/esm/utils/tpl-lodash.js +1 -1
  160. package/esm/utils/tpl.js +1 -1
  161. package/esm/utils/uncontrollable.js +1 -1
  162. package/esm/utils/validateId.js +5 -2
  163. package/esm/utils/validations.js +1 -1
  164. package/lib/Root.js +1 -1
  165. package/lib/RootRenderer.d.ts +1 -1
  166. package/lib/RootRenderer.js +28 -10
  167. package/lib/SchemaRenderer.js +14 -5
  168. package/lib/Scoped.d.ts +1 -1
  169. package/lib/Scoped.js +3 -1
  170. package/lib/StatusScoped.js +4 -2
  171. package/lib/WithRootStore.js +1 -1
  172. package/lib/WithStore.js +28 -17
  173. package/lib/actions/Action.js +2 -2
  174. package/lib/actions/AjaxAction.js +1 -1
  175. package/lib/actions/BreakAction.js +1 -1
  176. package/lib/actions/BroadcastAction.js +1 -1
  177. package/lib/actions/CmptAction.js +2 -2
  178. package/lib/actions/ContinueAction.js +1 -1
  179. package/lib/actions/CopyAction.js +1 -1
  180. package/lib/actions/CustomAction.js +1 -1
  181. package/lib/actions/DialogAction.d.ts +8 -0
  182. package/lib/actions/DialogAction.js +98 -35
  183. package/lib/actions/DrawerAction.d.ts +5 -0
  184. package/lib/actions/DrawerAction.js +69 -11
  185. package/lib/actions/EmailAction.js +1 -1
  186. package/lib/actions/EventAction.d.ts +20 -0
  187. package/lib/actions/EventAction.js +109 -0
  188. package/lib/actions/LinkAction.js +1 -1
  189. package/lib/actions/LoopAction.js +1 -1
  190. package/lib/actions/PageAction.js +1 -1
  191. package/lib/actions/ParallelAction.js +1 -1
  192. package/lib/actions/PrintAction.js +1 -1
  193. package/lib/actions/StatusAction.js +1 -1
  194. package/lib/actions/SwitchAction.js +1 -1
  195. package/lib/actions/ToastAction.js +1 -1
  196. package/lib/actions/WaitAction.d.ts +18 -0
  197. package/lib/actions/WaitAction.js +45 -0
  198. package/lib/actions/index.d.ts +2 -0
  199. package/lib/components/CustomStyle.js +1 -1
  200. package/lib/components/ErrorBoundary.js +1 -1
  201. package/lib/components/LazyComponent.js +1 -1
  202. package/lib/components/Overlay.d.ts +3 -0
  203. package/lib/components/Overlay.js +7 -4
  204. package/lib/components/PopOver.js +1 -1
  205. package/lib/env.js +1 -1
  206. package/lib/envOverwrite.js +1 -1
  207. package/lib/factory.d.ts +2 -0
  208. package/lib/factory.js +1 -1
  209. package/lib/index.js +6 -4
  210. package/lib/locale.js +4 -2
  211. package/lib/polyfills.js +1 -1
  212. package/lib/renderers/Form.d.ts +3 -2
  213. package/lib/renderers/Form.js +83 -24
  214. package/lib/renderers/Item.d.ts +123 -79
  215. package/lib/renderers/Item.js +158 -58
  216. package/lib/renderers/Options.d.ts +0 -11
  217. package/lib/renderers/Options.js +19 -84
  218. package/lib/renderers/Placeholder.js +1 -1
  219. package/lib/renderers/builtin.js +1 -1
  220. package/lib/renderers/register.js +1 -1
  221. package/lib/renderers/wrapControl.d.ts +2 -1
  222. package/lib/renderers/wrapControl.js +4 -2
  223. package/lib/store/app.d.ts +5 -5
  224. package/lib/store/app.js +1 -1
  225. package/lib/store/combo.d.ts +255 -63
  226. package/lib/store/combo.js +1 -1
  227. package/lib/store/crud.d.ts +5 -5
  228. package/lib/store/crud.js +1 -1
  229. package/lib/store/form.d.ts +105 -25
  230. package/lib/store/form.js +33 -15
  231. package/lib/store/formItem.d.ts +6 -2
  232. package/lib/store/formItem.js +67 -4
  233. package/lib/store/iRenderer.d.ts +5 -5
  234. package/lib/store/iRenderer.js +23 -10
  235. package/lib/store/index.js +1 -1
  236. package/lib/store/list.d.ts +5 -5
  237. package/lib/store/list.js +1 -1
  238. package/lib/store/manager.js +1 -1
  239. package/lib/store/modal.d.ts +5 -5
  240. package/lib/store/modal.js +1 -1
  241. package/lib/store/node.js +1 -1
  242. package/lib/store/pagination.d.ts +5 -5
  243. package/lib/store/pagination.js +1 -1
  244. package/lib/store/root.d.ts +5 -5
  245. package/lib/store/root.js +1 -1
  246. package/lib/store/service.d.ts +5 -5
  247. package/lib/store/service.js +2 -2
  248. package/lib/store/status.js +1 -1
  249. package/lib/store/table.d.ts +243 -55
  250. package/lib/store/table.js +23 -9
  251. package/lib/store/table2.d.ts +5 -5
  252. package/lib/store/table2.js +1 -1
  253. package/lib/theme.js +4 -2
  254. package/lib/types.d.ts +7 -1
  255. package/lib/utils/Animation.js +1 -1
  256. package/lib/utils/ColorScale.js +1 -1
  257. package/lib/utils/DataSchema.js +1 -1
  258. package/lib/utils/DataScope.js +1 -1
  259. package/lib/utils/RootClose.js +1 -1
  260. package/lib/utils/SimpleMap.js +1 -1
  261. package/lib/utils/api.js +1 -1
  262. package/lib/utils/arraySlice.js +1 -1
  263. package/lib/utils/attachmentAdpator.js +1 -1
  264. package/lib/utils/autobind.js +1 -1
  265. package/lib/utils/browser.js +1 -1
  266. package/lib/utils/columnsSplit.js +1 -1
  267. package/lib/utils/concatData.js +1 -1
  268. package/lib/utils/dataMapping.js +1 -1
  269. package/lib/utils/date.js +1 -1
  270. package/lib/utils/debug.js +1 -1
  271. package/lib/utils/decodeEntity.js +1 -1
  272. package/lib/utils/dom.d.ts +2 -2
  273. package/lib/utils/dom.js +70 -11
  274. package/lib/utils/errors.js +1 -1
  275. package/lib/utils/escapeHtml.js +1 -1
  276. package/lib/utils/filter-schema.js +1 -1
  277. package/lib/utils/filter.js +1 -1
  278. package/lib/utils/formatDuration.js +1 -1
  279. package/lib/utils/formula.js +2 -2
  280. package/lib/utils/getVariable.js +1 -1
  281. package/lib/utils/grammar.js +1 -1
  282. package/lib/utils/handleAction.js +1 -1
  283. package/lib/utils/helper.d.ts +12 -6
  284. package/lib/utils/helper.js +39 -17
  285. package/lib/utils/highlight.js +1 -1
  286. package/lib/utils/icon.js +1 -1
  287. package/lib/utils/image.js +1 -1
  288. package/lib/utils/isPureVariable.js +1 -1
  289. package/lib/utils/json-schema-2-amis-schema.js +1 -1
  290. package/lib/utils/keyToPath.js +1 -1
  291. package/lib/utils/labelToString.js +1 -1
  292. package/lib/utils/makeSorter.js +1 -1
  293. package/lib/utils/math.js +1 -1
  294. package/lib/utils/memoryParse.js +1 -1
  295. package/lib/utils/normalizeLink.js +1 -1
  296. package/lib/utils/normalizeOptions.js +1 -1
  297. package/lib/utils/object.js +1 -1
  298. package/lib/utils/offset.js +1 -1
  299. package/lib/utils/offsetParent.js +1 -1
  300. package/lib/utils/optionValueCompare.js +1 -1
  301. package/lib/utils/position.js +1 -1
  302. package/lib/utils/prettyBytes.js +1 -1
  303. package/lib/utils/printElement.js +1 -1
  304. package/lib/utils/renderer-event.d.ts +11 -0
  305. package/lib/utils/renderer-event.js +99 -1
  306. package/lib/utils/replaceText.js +1 -1
  307. package/lib/utils/resize-sensor.js +1 -1
  308. package/lib/utils/resolveCondition.js +1 -1
  309. package/lib/utils/resolveVariable.js +1 -1
  310. package/lib/utils/resolveVariableAndFilter.js +1 -1
  311. package/lib/utils/resolveVariableAndFilterForAsync.js +1 -1
  312. package/lib/utils/scrollPosition.js +1 -1
  313. package/lib/utils/string2regExp.js +1 -1
  314. package/lib/utils/stripNumber.d.ts +1 -1
  315. package/lib/utils/stripNumber.js +4 -3
  316. package/lib/utils/style-helper.d.ts +21 -2
  317. package/lib/utils/style-helper.js +55 -10
  318. package/lib/utils/style.js +1 -1
  319. package/lib/utils/toNumber.js +1 -1
  320. package/lib/utils/tokenize.js +1 -1
  321. package/lib/utils/tpl-builtin.js +1 -1
  322. package/lib/utils/tpl-lodash.js +1 -1
  323. package/lib/utils/tpl.js +1 -1
  324. package/lib/utils/uncontrollable.js +1 -1
  325. package/lib/utils/validateId.js +9 -2
  326. package/lib/utils/validations.js +1 -1
  327. package/package.json +5 -3
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1627,21 +1627,44 @@ function replaceUrlParams(path, params) {
1627
1627
  return path;
1628
1628
  }
1629
1629
  var TEST_ID_KEY = 'data-testid';
1630
- function buildTestId(testid, data) {
1631
- var _a;
1632
- if (!testid) {
1633
- return {};
1634
- }
1635
- return _a = {},
1636
- _a[TEST_ID_KEY] = tpl.filter(testid, data),
1637
- _a;
1638
- }
1639
- function getTestId(testid, data) {
1640
- if (!testid) {
1641
- return undefined;
1630
+ var TestIdBuilder = /** @class */ (function () {
1631
+ // 为空就表示没有启用testId,后续一直返回都将是空
1632
+ function TestIdBuilder(testId) {
1633
+ this.testId = testId;
1642
1634
  }
1643
- return buildTestId(testid, data)[TEST_ID_KEY];
1644
- }
1635
+ TestIdBuilder.fast = function (testId) {
1636
+ var _a;
1637
+ return _a = {},
1638
+ _a[TEST_ID_KEY] = testId,
1639
+ _a;
1640
+ };
1641
+ // 生成子区域的testid生成器
1642
+ TestIdBuilder.prototype.getChild = function (childPath, data) {
1643
+ if (this.testId == null) {
1644
+ return new TestIdBuilder();
1645
+ }
1646
+ return new TestIdBuilder(data
1647
+ ? tpl.filter("".concat(this.testId, "-").concat(childPath), data)
1648
+ : "".concat(this.testId, "-").concat(childPath));
1649
+ };
1650
+ // 获取当前组件的testid
1651
+ TestIdBuilder.prototype.getTestId = function (data) {
1652
+ var _a;
1653
+ if (this.testId == null) {
1654
+ return undefined;
1655
+ }
1656
+ return _a = {},
1657
+ _a[TEST_ID_KEY] = data ? tpl.filter(this.testId, data) : this.testId,
1658
+ _a;
1659
+ };
1660
+ TestIdBuilder.prototype.getTestIdValue = function (data) {
1661
+ if (this.testId == null) {
1662
+ return undefined;
1663
+ }
1664
+ return data ? tpl.filter(this.testId, data) : this.testId;
1665
+ };
1666
+ return TestIdBuilder;
1667
+ }());
1645
1668
 
1646
1669
  exports.cloneObject = object.cloneObject;
1647
1670
  exports.createObject = object.createObject;
@@ -1656,11 +1679,11 @@ exports.JSONTraverse = JSONTraverse;
1656
1679
  exports.JSONValueMap = JSONValueMap;
1657
1680
  exports.SkipOperation = SkipOperation;
1658
1681
  exports.TEST_ID_KEY = TEST_ID_KEY;
1682
+ exports.TestIdBuilder = TestIdBuilder;
1659
1683
  exports.ValidateError = ValidateError;
1660
1684
  exports.__uri = __uri;
1661
1685
  exports.anyChanged = anyChanged;
1662
1686
  exports.autobind = autobind;
1663
- exports.buildTestId = buildTestId;
1664
1687
  exports.buildTrackExpression = buildTrackExpression;
1665
1688
  exports.bulkBindFunctions = bulkBindFunctions;
1666
1689
  exports.camel = camel;
@@ -1688,7 +1711,6 @@ exports.getPropValue = getPropValue;
1688
1711
  exports.getRange = getRange;
1689
1712
  exports.getScrollParent = getScrollParent;
1690
1713
  exports.getScrollbarWidth = getScrollbarWidth;
1691
- exports.getTestId = getTestId;
1692
1714
  exports.getTree = getTree;
1693
1715
  exports.getTreeAncestors = getTreeAncestors;
1694
1716
  exports.getTreeDepth = getTreeDepth;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
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.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
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.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -2,6 +2,7 @@
2
2
  import { ListenerAction } from '../actions/Action';
3
3
  import { RendererProps } from '../factory';
4
4
  import { IScopedContext } from '../Scoped';
5
+ import { TreeItem } from './helper';
5
6
  export interface debounceConfig {
6
7
  maxWait?: number;
7
8
  wait?: number;
@@ -65,5 +66,15 @@ export declare const getRendererEventListeners: () => RendererEventListener[];
65
66
  * @param valueKey
66
67
  */
67
68
  export declare const resolveEventData: (props: any, data: any, valueKey?: string) => object;
69
+ /**
70
+ * 基于 index、condition、oldCondition 获取匹配的事件目标
71
+ * @param tree
72
+ * @param ctx
73
+ * @param index
74
+ * @param condition
75
+ * @param oldCondition
76
+ * @returns
77
+ */
78
+ export declare function getMatchedEventTargets<T extends TreeItem>(tree: Array<T>, ctx: any, index?: string | number, condition?: string, oldCondition?: string): Promise<T[]>;
68
79
  declare const _default: {};
69
80
  export default _default;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -9,8 +9,12 @@ Object.defineProperty(exports, '__esModule', { value: true });
9
9
 
10
10
  var tslib = require('tslib');
11
11
  var Action = require('../actions/Action.js');
12
+ var formula = require('./formula.js');
13
+ var helper = require('./helper.js');
12
14
  var object = require('./object.js');
13
15
  var debounce = require('lodash/debounce');
16
+ var resolveVariableAndFilterForAsync = require('./resolveVariableAndFilterForAsync.js');
17
+ var tpl = require('./tpl.js');
14
18
 
15
19
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
16
20
 
@@ -274,9 +278,103 @@ var resolveEventData = function (props, data, valueKey) {
274
278
  return object.createObject(props.data, props.name && valueKey
275
279
  ? tslib.__assign(tslib.__assign({}, data), (_a = {}, _a[props.name] = data[valueKey], _a.__rendererData = tslib.__assign(tslib.__assign({}, props.data), (_b = {}, _b[props.name] = data[valueKey], _b)), _a)) : data);
276
280
  };
281
+ /**
282
+ * 基于 index、condition、oldCondition 获取匹配的事件目标
283
+ * @param tree
284
+ * @param ctx
285
+ * @param index
286
+ * @param condition
287
+ * @param oldCondition
288
+ * @returns
289
+ */
290
+ function getMatchedEventTargets(tree, ctx, index, condition, oldCondition) {
291
+ return tslib.__awaiter(this, void 0, void 0, function () {
292
+ var targets, row, _a, promies_1, promies_2;
293
+ var _this = this;
294
+ return tslib.__generator(this, function (_b) {
295
+ switch (_b.label) {
296
+ case 0:
297
+ targets = [];
298
+ if (!(typeof index === 'number')) return [3 /*break*/, 1];
299
+ row = tree[index];
300
+ row && targets.push(row);
301
+ return [3 /*break*/, 9];
302
+ case 1:
303
+ if (!(typeof index === 'string')) return [3 /*break*/, 5];
304
+ if (!formula.isExpression(index)) return [3 /*break*/, 3];
305
+ return [4 /*yield*/, resolveVariableAndFilterForAsync.resolveVariableAndFilterForAsync(index, ctx)];
306
+ case 2:
307
+ _a = _b.sent();
308
+ return [3 /*break*/, 4];
309
+ case 3:
310
+ _a = index;
311
+ _b.label = 4;
312
+ case 4:
313
+ index = _a;
314
+ index.split(',').forEach(function (i) {
315
+ i = i.trim();
316
+ if (i) {
317
+ var indexes = i.split('.').map(function (ii) { return parseInt(ii, 10); });
318
+ var row = helper.getTree(tree, indexes);
319
+ row && targets.push(row);
320
+ }
321
+ });
322
+ return [3 /*break*/, 9];
323
+ case 5:
324
+ if (!condition) return [3 /*break*/, 7];
325
+ promies_1 = [];
326
+ helper.eachTree(tree, function (item) {
327
+ var data = item.storeType ? item.data : item;
328
+ promies_1.push(function () { return tslib.__awaiter(_this, void 0, void 0, function () {
329
+ var result;
330
+ return tslib.__generator(this, function (_a) {
331
+ switch (_a.label) {
332
+ case 0: return [4 /*yield*/, tpl.evalExpressionWithConditionBuilder(condition, object.createObject(ctx, data))];
333
+ case 1:
334
+ result = _a.sent();
335
+ result && targets.push(item);
336
+ return [2 /*return*/];
337
+ }
338
+ });
339
+ }); });
340
+ });
341
+ return [4 /*yield*/, Promise.all(promies_1.map(function (fn) { return fn(); }))];
342
+ case 6:
343
+ _b.sent();
344
+ return [3 /*break*/, 9];
345
+ case 7:
346
+ if (!oldCondition) return [3 /*break*/, 9];
347
+ promies_2 = [];
348
+ helper.eachTree(tree, function (item, rowIndex) {
349
+ var record = item.storeType ? item.data : item;
350
+ promies_2.push(function () { return tslib.__awaiter(_this, void 0, void 0, function () {
351
+ var result;
352
+ return tslib.__generator(this, function (_a) {
353
+ result = tpl.evalExpression(oldCondition, object.createObject(ctx, {
354
+ record: record,
355
+ rowIndex: rowIndex,
356
+ item: record,
357
+ index: rowIndex,
358
+ indexPath: item.path
359
+ }));
360
+ result && targets.push(item);
361
+ return [2 /*return*/];
362
+ });
363
+ }); });
364
+ });
365
+ return [4 /*yield*/, Promise.all(promies_2.map(function (fn) { return fn(); }))];
366
+ case 8:
367
+ _b.sent();
368
+ _b.label = 9;
369
+ case 9: return [2 /*return*/, targets];
370
+ }
371
+ });
372
+ });
373
+ }
277
374
 
278
375
  exports.bindEvent = bindEvent;
279
376
  exports.createRendererEvent = createRendererEvent;
280
377
  exports.dispatchEvent = dispatchEvent;
378
+ exports.getMatchedEventTargets = getMatchedEventTargets;
281
379
  exports.getRendererEventListeners = getRendererEventListeners;
282
380
  exports.resolveEventData = resolveEventData;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1 +1 @@
1
- export declare function stripNumber(number: number): number;
1
+ export declare function stripNumber(number: number, precision?: number): number;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -8,9 +8,10 @@
8
8
  Object.defineProperty(exports, '__esModule', { value: true });
9
9
 
10
10
  // 主要用于解决 0.1+0.2 结果的精度问题导致太长
11
- function stripNumber(number) {
11
+ function stripNumber(number, precision) {
12
+ if (precision === void 0) { precision = 16; }
12
13
  if (typeof number === 'number' && !Number.isInteger(number)) {
13
- return parseFloat(number.toPrecision(16));
14
+ return parseFloat(number.toPrecision(precision));
14
15
  }
15
16
  else {
16
17
  return number;
@@ -7,8 +7,27 @@ interface extra {
7
7
  pre?: string;
8
8
  suf?: string;
9
9
  }
10
- export declare function findOrCreateStyle(id: string, doc?: Document): HTMLElement;
11
- export declare function insertStyle(style: string, id: string, doc?: Document): void;
10
+ /**
11
+ * 查找或创建style标签
12
+ * @param param
13
+ * @param param.classId 根据classId查找或创建style标签
14
+ * @param param.id 用于赋值给style的class
15
+ * @param param.doc 文档对象,默认为document
16
+ * @param param.before 插入到某个class为id的style标签之前
17
+ */
18
+ export declare function findOrCreateStyle({ classId, doc, before, id }: {
19
+ classId: string;
20
+ doc?: Document;
21
+ before?: string;
22
+ id?: string;
23
+ }): HTMLElement;
24
+ export declare function insertStyle({ style, classId, id, doc, before }: {
25
+ style: string;
26
+ classId: string;
27
+ id?: string;
28
+ doc?: Document;
29
+ before?: string;
30
+ }): void;
12
31
  export declare function addStyle(style: string, id: string): void;
13
32
  export declare function formatStyle(themeCss: any, classNames?: CustomStyleClassName[], id?: string, defaultData?: any, data?: any): {
14
33
  value: string;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -53,18 +53,51 @@ var inheritValueMap = {
53
53
  background: 'bg-color',
54
54
  radius: 'border'
55
55
  };
56
- function findOrCreateStyle(id, doc) {
56
+ /**
57
+ * 查找或创建style标签
58
+ * @param param
59
+ * @param param.classId 根据classId查找或创建style标签
60
+ * @param param.id 用于赋值给style的class
61
+ * @param param.doc 文档对象,默认为document
62
+ * @param param.before 插入到某个class为id的style标签之前
63
+ */
64
+ function findOrCreateStyle(_a) {
65
+ var _b;
66
+ var classId = _a.classId, doc = _a.doc, before = _a.before, id = _a.id;
57
67
  doc = doc || document;
58
- var varStyleTag = doc.getElementById(id);
68
+ var varStyleTag = doc.getElementById(classId);
59
69
  if (!varStyleTag) {
60
70
  varStyleTag = doc.createElement('style');
61
- varStyleTag.id = id;
62
- doc.body.appendChild(varStyleTag);
71
+ varStyleTag.id = classId;
72
+ varStyleTag.setAttribute('class', id || '');
73
+ var beforeStyleTag = (_b = doc.getElementsByClassName(before || '')) === null || _b === void 0 ? void 0 : _b[0];
74
+ // 如果存在before则插入到before之前,否则插入到body中
75
+ if (beforeStyleTag) {
76
+ beforeStyleTag.before(varStyleTag);
77
+ }
78
+ else {
79
+ doc.body.appendChild(varStyleTag);
80
+ }
63
81
  }
64
82
  return varStyleTag;
65
83
  }
66
- function insertStyle(style, id, doc) {
67
- var varStyleTag = findOrCreateStyle('amis-' + id, doc);
84
+ /*
85
+ * 插入样式
86
+ * @param param
87
+ * @param param.style 样式内容
88
+ * @param param.classId 样式标识,会绑定到id上
89
+ * @param param.id id,会绑定到class上
90
+ * @param param.doc 文档对象
91
+ * @param param.before 插入到某个id之前
92
+ */
93
+ function insertStyle(_a) {
94
+ var style = _a.style, classId = _a.classId, id = _a.id, doc = _a.doc, before = _a.before;
95
+ var varStyleTag = findOrCreateStyle({
96
+ classId: 'amis-' + classId,
97
+ doc: doc,
98
+ before: before,
99
+ id: id
100
+ });
68
101
  // bca-disable-line
69
102
  varStyleTag.innerHTML = style;
70
103
  if (!style) {
@@ -72,7 +105,7 @@ function insertStyle(style, id, doc) {
72
105
  }
73
106
  }
74
107
  function addStyle(style, id) {
75
- var varStyleTag = findOrCreateStyle(id);
108
+ var varStyleTag = findOrCreateStyle({ classId: id });
76
109
  // bca-disable-line
77
110
  varStyleTag.innerHTML += style;
78
111
  }
@@ -251,7 +284,14 @@ function insertCustomStyle(prams) {
251
284
  if (typeof (data === null || data === void 0 ? void 0 : data.index) === 'number') {
252
285
  classId += "-".concat(data.index);
253
286
  }
254
- insertStyle(value, classId, doc);
287
+ // 这里需要插入到wrapperCustomStyle的前面
288
+ insertStyle({
289
+ style: value,
290
+ classId: classId,
291
+ doc: doc,
292
+ id: classId.replace(/(-.*)/, ''),
293
+ before: classId.replace(/(-.*)/, '')
294
+ });
255
295
  }
256
296
  /**
257
297
  * 根据路径获取默认值
@@ -330,7 +370,12 @@ function insertEditCustomStyle(params) {
330
370
  }
331
371
  });
332
372
  }
333
- insertStyle(content, 'wrapperCustomStyle-' + ((id === null || id === void 0 ? void 0 : id.replace('u:', '')) || helper.uuid()) + index, doc);
373
+ insertStyle({
374
+ style: content,
375
+ classId: 'wrapperCustomStyle-' + ((id === null || id === void 0 ? void 0 : id.replace('u:', '')) || helper.uuid()) + index,
376
+ doc: doc,
377
+ id: id === null || id === void 0 ? void 0 : id.replace('u:', '').replace(/(-.*)/, '')
378
+ });
334
379
  }
335
380
  /**
336
381
  * 移除自定义样式
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/lib/utils/tpl.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.2.2
2
+ * amis-core v6.3.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5