amis-core 6.4.1 → 6.6.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 (332) hide show
  1. package/esm/Root.js +1 -1
  2. package/esm/RootRenderer.js +1 -1
  3. package/esm/SchemaRenderer.js +16 -5
  4. package/esm/Scoped.d.ts +1 -1
  5. package/esm/Scoped.js +5 -1
  6. package/esm/StatusScoped.js +1 -1
  7. package/esm/WithRootStore.js +1 -1
  8. package/esm/WithStore.js +10 -4
  9. package/esm/actions/Action.js +6 -5
  10. package/esm/actions/AjaxAction.js +3 -3
  11. package/esm/actions/BreakAction.js +1 -1
  12. package/esm/actions/BroadcastAction.js +1 -1
  13. package/esm/actions/CmptAction.js +2 -2
  14. package/esm/actions/ContinueAction.js +1 -1
  15. package/esm/actions/CopyAction.js +4 -4
  16. package/esm/actions/CustomAction.js +2 -1
  17. package/esm/actions/DialogAction.js +2 -1
  18. package/esm/actions/DrawerAction.js +2 -1
  19. package/esm/actions/EmailAction.js +1 -1
  20. package/esm/actions/EventAction.js +2 -1
  21. package/esm/actions/LinkAction.js +1 -1
  22. package/esm/actions/LoopAction.js +2 -1
  23. package/esm/actions/PageAction.js +1 -1
  24. package/esm/actions/ParallelAction.js +1 -1
  25. package/esm/actions/PrintAction.d.ts +1 -1
  26. package/esm/actions/PrintAction.js +12 -6
  27. package/esm/actions/StatusAction.js +1 -1
  28. package/esm/actions/SwitchAction.js +3 -3
  29. package/esm/actions/ToastAction.js +1 -1
  30. package/esm/actions/WaitAction.js +1 -1
  31. package/esm/components/CustomStyle.js +3 -2
  32. package/esm/components/ErrorBoundary.js +1 -1
  33. package/esm/components/LazyComponent.js +1 -1
  34. package/esm/components/Overlay.js +2 -1
  35. package/esm/components/PopOver.js +2 -1
  36. package/esm/env.d.ts +2 -4
  37. package/esm/env.js +1 -1
  38. package/esm/envOverwrite.js +1 -1
  39. package/esm/factory.js +1 -1
  40. package/esm/index.js +4 -4
  41. package/esm/locale.js +2 -1
  42. package/esm/polyfills.js +1 -1
  43. package/esm/renderers/Form.d.ts +1 -1
  44. package/esm/renderers/Form.js +43 -9
  45. package/esm/renderers/Item.d.ts +27 -60
  46. package/esm/renderers/Item.js +75 -6
  47. package/esm/renderers/Options.js +40 -13
  48. package/esm/renderers/Placeholder.js +1 -1
  49. package/esm/renderers/builtin.js +1 -1
  50. package/esm/renderers/register.js +1 -1
  51. package/esm/renderers/wrapControl.js +19 -9
  52. package/esm/store/app.d.ts +2 -0
  53. package/esm/store/app.js +2 -1
  54. package/esm/store/combo.d.ts +6 -0
  55. package/esm/store/combo.js +1 -1
  56. package/esm/store/crud.d.ts +2 -0
  57. package/esm/store/crud.js +2 -1
  58. package/esm/store/form.d.ts +2 -0
  59. package/esm/store/form.js +2 -1
  60. package/esm/store/formItem.js +12 -2
  61. package/esm/store/iRenderer.d.ts +2 -0
  62. package/esm/store/iRenderer.js +13 -1
  63. package/esm/store/index.js +1 -1
  64. package/esm/store/list.d.ts +2 -0
  65. package/esm/store/list.js +1 -1
  66. package/esm/store/manager.js +1 -1
  67. package/esm/store/modal.d.ts +2 -0
  68. package/esm/store/modal.js +1 -1
  69. package/esm/store/node.js +1 -1
  70. package/esm/store/pagination.d.ts +2 -0
  71. package/esm/store/pagination.js +2 -1
  72. package/esm/store/root.d.ts +2 -0
  73. package/esm/store/root.js +2 -1
  74. package/esm/store/service.d.ts +2 -0
  75. package/esm/store/service.js +2 -1
  76. package/esm/store/status.js +1 -1
  77. package/esm/store/table.d.ts +6 -0
  78. package/esm/store/table.js +2 -1
  79. package/esm/store/table2.d.ts +2 -0
  80. package/esm/store/table2.js +1 -1
  81. package/esm/theme.js +1 -1
  82. package/esm/types.d.ts +2 -0
  83. package/esm/utils/Animation.js +1 -1
  84. package/esm/utils/ColorScale.js +1 -1
  85. package/esm/utils/DataSchema.js +1 -1
  86. package/esm/utils/DataScope.js +2 -1
  87. package/esm/utils/RootClose.js +1 -1
  88. package/esm/utils/SimpleMap.js +1 -1
  89. package/esm/utils/api.js +21 -3
  90. package/esm/utils/arraySlice.js +1 -1
  91. package/esm/utils/attachmentAdpator.js +1 -1
  92. package/esm/utils/autobind.js +1 -1
  93. package/esm/utils/browser.js +1 -1
  94. package/esm/utils/columnsSplit.js +1 -1
  95. package/esm/utils/concatData.js +1 -1
  96. package/esm/utils/dataMapping.js +1 -1
  97. package/esm/utils/date.d.ts +3 -1
  98. package/esm/utils/date.js +11 -5
  99. package/esm/utils/debug.js +1 -1
  100. package/esm/utils/decodeEntity.js +1 -1
  101. package/esm/utils/dom.js +1 -1
  102. package/esm/utils/errors.js +1 -1
  103. package/esm/utils/escapeHtml.js +1 -1
  104. package/esm/utils/filter-schema.js +7 -4
  105. package/esm/utils/filter.js +1 -1
  106. package/esm/utils/formatDuration.js +1 -1
  107. package/esm/utils/formula.js +2 -1
  108. package/esm/utils/getVariable.js +1 -1
  109. package/esm/utils/grammar.js +1 -1
  110. package/esm/utils/handleAction.js +1 -1
  111. package/esm/utils/helper.d.ts +1 -1
  112. package/esm/utils/helper.js +10 -6
  113. package/esm/utils/highlight.js +1 -1
  114. package/esm/utils/icon.js +1 -1
  115. package/esm/utils/image.js +1 -1
  116. package/esm/utils/isPureVariable.js +1 -1
  117. package/esm/utils/json-schema-2-amis-schema.js +1 -1
  118. package/esm/utils/keyToPath.js +1 -1
  119. package/esm/utils/labelToString.js +1 -1
  120. package/esm/utils/makeSorter.js +1 -1
  121. package/esm/utils/math.js +1 -1
  122. package/esm/utils/memoryParse.js +1 -1
  123. package/esm/utils/normalizeLink.js +1 -1
  124. package/esm/utils/normalizeOptions.d.ts +1 -1
  125. package/esm/utils/normalizeOptions.js +3 -2
  126. package/esm/utils/object.js +1 -1
  127. package/esm/utils/offset.js +1 -1
  128. package/esm/utils/offsetParent.js +1 -1
  129. package/esm/utils/optionValueCompare.js +1 -1
  130. package/esm/utils/position.js +1 -1
  131. package/esm/utils/prettyBytes.js +1 -1
  132. package/esm/utils/printElement.js +1 -1
  133. package/esm/utils/renderer-event.js +7 -6
  134. package/esm/utils/replaceText.js +1 -1
  135. package/esm/utils/resize-sensor.js +1 -1
  136. package/esm/utils/resolveCondition.d.ts +2 -1
  137. package/esm/utils/resolveCondition.js +60 -8
  138. package/esm/utils/resolveVariable.js +1 -1
  139. package/esm/utils/resolveVariableAndFilter.js +1 -1
  140. package/esm/utils/resolveVariableAndFilterForAsync.js +1 -1
  141. package/esm/utils/scrollPosition.js +1 -1
  142. package/esm/utils/string2regExp.js +1 -1
  143. package/esm/utils/stripNumber.js +2 -2
  144. package/esm/utils/style-helper.js +15 -8
  145. package/esm/utils/style.js +2 -1
  146. package/esm/utils/toNumber.js +1 -1
  147. package/esm/utils/tokenize.js +1 -1
  148. package/esm/utils/tpl-builtin.js +2 -1
  149. package/esm/utils/tpl-lodash.js +2 -1
  150. package/esm/utils/tpl.d.ts +8 -1
  151. package/esm/utils/tpl.js +18 -5
  152. package/esm/utils/uncontrollable.js +1 -1
  153. package/esm/utils/validateId.js +1 -1
  154. package/esm/utils/validations.js +2 -1
  155. package/lib/Root.js +1 -1
  156. package/lib/RootRenderer.d.ts +1 -1
  157. package/lib/RootRenderer.js +1 -1
  158. package/lib/SchemaRenderer.js +16 -5
  159. package/lib/Scoped.d.ts +1 -1
  160. package/lib/Scoped.js +5 -1
  161. package/lib/StatusScoped.js +1 -1
  162. package/lib/WithRootStore.js +1 -1
  163. package/lib/WithStore.js +10 -4
  164. package/lib/actions/Action.js +5 -4
  165. package/lib/actions/AjaxAction.js +2 -2
  166. package/lib/actions/BreakAction.js +1 -1
  167. package/lib/actions/BroadcastAction.js +1 -1
  168. package/lib/actions/CmptAction.js +2 -2
  169. package/lib/actions/ContinueAction.js +1 -1
  170. package/lib/actions/CopyAction.js +4 -4
  171. package/lib/actions/CustomAction.js +2 -1
  172. package/lib/actions/DialogAction.js +2 -1
  173. package/lib/actions/DrawerAction.js +2 -1
  174. package/lib/actions/EmailAction.js +1 -1
  175. package/lib/actions/EventAction.js +2 -1
  176. package/lib/actions/LinkAction.js +1 -1
  177. package/lib/actions/LoopAction.js +2 -1
  178. package/lib/actions/PageAction.js +1 -1
  179. package/lib/actions/ParallelAction.js +1 -1
  180. package/lib/actions/PrintAction.d.ts +1 -1
  181. package/lib/actions/PrintAction.js +12 -6
  182. package/lib/actions/StatusAction.js +1 -1
  183. package/lib/actions/SwitchAction.js +2 -2
  184. package/lib/actions/ToastAction.js +1 -1
  185. package/lib/actions/WaitAction.js +1 -1
  186. package/lib/components/CustomStyle.js +3 -2
  187. package/lib/components/ErrorBoundary.js +1 -1
  188. package/lib/components/LazyComponent.js +1 -1
  189. package/lib/components/Overlay.js +2 -1
  190. package/lib/components/PopOver.js +2 -1
  191. package/lib/env.d.ts +2 -4
  192. package/lib/env.js +1 -1
  193. package/lib/envOverwrite.js +1 -1
  194. package/lib/factory.js +1 -1
  195. package/lib/index.js +4 -2
  196. package/lib/locale.js +2 -1
  197. package/lib/polyfills.js +1 -1
  198. package/lib/renderers/Form.d.ts +1 -1
  199. package/lib/renderers/Form.js +43 -9
  200. package/lib/renderers/Item.d.ts +27 -60
  201. package/lib/renderers/Item.js +75 -6
  202. package/lib/renderers/Options.js +40 -13
  203. package/lib/renderers/Placeholder.js +1 -1
  204. package/lib/renderers/builtin.js +1 -1
  205. package/lib/renderers/register.js +1 -1
  206. package/lib/renderers/wrapControl.js +19 -9
  207. package/lib/store/app.d.ts +2 -0
  208. package/lib/store/app.js +2 -1
  209. package/lib/store/combo.d.ts +30 -24
  210. package/lib/store/combo.js +1 -1
  211. package/lib/store/crud.d.ts +2 -0
  212. package/lib/store/crud.js +2 -1
  213. package/lib/store/form.d.ts +12 -10
  214. package/lib/store/form.js +2 -1
  215. package/lib/store/formItem.js +12 -2
  216. package/lib/store/iRenderer.d.ts +2 -0
  217. package/lib/store/iRenderer.js +13 -1
  218. package/lib/store/index.js +1 -1
  219. package/lib/store/list.d.ts +2 -0
  220. package/lib/store/list.js +1 -1
  221. package/lib/store/manager.js +1 -1
  222. package/lib/store/modal.d.ts +2 -0
  223. package/lib/store/modal.js +1 -1
  224. package/lib/store/node.js +1 -1
  225. package/lib/store/pagination.d.ts +2 -0
  226. package/lib/store/pagination.js +2 -1
  227. package/lib/store/root.d.ts +2 -0
  228. package/lib/store/root.js +2 -1
  229. package/lib/store/service.d.ts +2 -0
  230. package/lib/store/service.js +2 -1
  231. package/lib/store/status.js +1 -1
  232. package/lib/store/table.d.ts +26 -20
  233. package/lib/store/table.js +2 -1
  234. package/lib/store/table2.d.ts +2 -0
  235. package/lib/store/table2.js +1 -1
  236. package/lib/theme.js +1 -1
  237. package/lib/types.d.ts +2 -0
  238. package/lib/utils/Animation.js +1 -1
  239. package/lib/utils/ColorScale.js +1 -1
  240. package/lib/utils/DataSchema.js +1 -1
  241. package/lib/utils/DataScope.js +2 -1
  242. package/lib/utils/RootClose.js +1 -1
  243. package/lib/utils/SimpleMap.js +1 -1
  244. package/lib/utils/api.js +23 -3
  245. package/lib/utils/arraySlice.js +1 -1
  246. package/lib/utils/attachmentAdpator.js +1 -1
  247. package/lib/utils/autobind.js +1 -1
  248. package/lib/utils/browser.js +1 -1
  249. package/lib/utils/columnsSplit.js +1 -1
  250. package/lib/utils/concatData.js +1 -1
  251. package/lib/utils/dataMapping.js +1 -1
  252. package/lib/utils/date.d.ts +3 -1
  253. package/lib/utils/date.js +11 -5
  254. package/lib/utils/debug.js +1 -1
  255. package/lib/utils/decodeEntity.js +1 -1
  256. package/lib/utils/dom.js +1 -1
  257. package/lib/utils/errors.js +1 -1
  258. package/lib/utils/escapeHtml.js +1 -1
  259. package/lib/utils/filter-schema.js +6 -3
  260. package/lib/utils/filter.js +1 -1
  261. package/lib/utils/formatDuration.js +1 -1
  262. package/lib/utils/formula.js +2 -1
  263. package/lib/utils/getVariable.js +1 -1
  264. package/lib/utils/grammar.js +1 -1
  265. package/lib/utils/handleAction.js +1 -1
  266. package/lib/utils/helper.d.ts +1 -1
  267. package/lib/utils/helper.js +9 -5
  268. package/lib/utils/highlight.js +1 -1
  269. package/lib/utils/icon.js +1 -1
  270. package/lib/utils/image.js +1 -1
  271. package/lib/utils/isPureVariable.js +1 -1
  272. package/lib/utils/json-schema-2-amis-schema.js +1 -1
  273. package/lib/utils/keyToPath.js +1 -1
  274. package/lib/utils/labelToString.js +1 -1
  275. package/lib/utils/makeSorter.js +1 -1
  276. package/lib/utils/math.js +1 -1
  277. package/lib/utils/memoryParse.js +1 -1
  278. package/lib/utils/normalizeLink.js +1 -1
  279. package/lib/utils/normalizeOptions.d.ts +1 -1
  280. package/lib/utils/normalizeOptions.js +3 -2
  281. package/lib/utils/object.js +1 -1
  282. package/lib/utils/offset.js +1 -1
  283. package/lib/utils/offsetParent.js +1 -1
  284. package/lib/utils/optionValueCompare.js +1 -1
  285. package/lib/utils/position.js +1 -1
  286. package/lib/utils/prettyBytes.js +1 -1
  287. package/lib/utils/printElement.js +1 -1
  288. package/lib/utils/renderer-event.js +6 -5
  289. package/lib/utils/replaceText.js +1 -1
  290. package/lib/utils/resize-sensor.js +1 -1
  291. package/lib/utils/resolveCondition.d.ts +2 -1
  292. package/lib/utils/resolveCondition.js +60 -7
  293. package/lib/utils/resolveVariable.js +1 -1
  294. package/lib/utils/resolveVariableAndFilter.js +1 -1
  295. package/lib/utils/resolveVariableAndFilterForAsync.js +1 -1
  296. package/lib/utils/scrollPosition.js +1 -1
  297. package/lib/utils/string2regExp.js +1 -1
  298. package/lib/utils/stripNumber.js +3 -3
  299. package/lib/utils/style-helper.js +15 -8
  300. package/lib/utils/style.js +2 -1
  301. package/lib/utils/toNumber.js +1 -1
  302. package/lib/utils/tokenize.js +1 -1
  303. package/lib/utils/tpl-builtin.js +2 -1
  304. package/lib/utils/tpl-lodash.js +2 -1
  305. package/lib/utils/tpl.d.ts +8 -1
  306. package/lib/utils/tpl.js +17 -3
  307. package/lib/utils/uncontrollable.js +1 -1
  308. package/lib/utils/validateId.js +1 -1
  309. package/lib/utils/validations.js +2 -1
  310. package/package.json +3 -2
  311. package/esm/node_modules/@babel/runtime/helpers/esm/classCallCheck.js +0 -12
  312. package/esm/node_modules/@babel/runtime/helpers/esm/createClass.js +0 -26
  313. package/esm/node_modules/@babel/runtime/helpers/esm/defineProperty.js +0 -23
  314. package/esm/node_modules/@babel/runtime/helpers/esm/toPrimitive.js +0 -19
  315. package/esm/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js +0 -14
  316. package/esm/node_modules/@babel/runtime/helpers/esm/typeof.js +0 -16
  317. package/esm/node_modules/@rc-component/mini-decimal/es/BigIntDecimal.js +0 -184
  318. package/esm/node_modules/@rc-component/mini-decimal/es/MiniDecimal.js +0 -56
  319. package/esm/node_modules/@rc-component/mini-decimal/es/NumberDecimal.js +0 -119
  320. package/esm/node_modules/@rc-component/mini-decimal/es/numberUtil.js +0 -105
  321. package/esm/node_modules/@rc-component/mini-decimal/es/supportUtil.js +0 -10
  322. package/lib/node_modules/@babel/runtime/helpers/esm/classCallCheck.js +0 -16
  323. package/lib/node_modules/@babel/runtime/helpers/esm/createClass.js +0 -30
  324. package/lib/node_modules/@babel/runtime/helpers/esm/defineProperty.js +0 -27
  325. package/lib/node_modules/@babel/runtime/helpers/esm/toPrimitive.js +0 -23
  326. package/lib/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js +0 -18
  327. package/lib/node_modules/@babel/runtime/helpers/esm/typeof.js +0 -20
  328. package/lib/node_modules/@rc-component/mini-decimal/es/BigIntDecimal.js +0 -188
  329. package/lib/node_modules/@rc-component/mini-decimal/es/MiniDecimal.js +0 -61
  330. package/lib/node_modules/@rc-component/mini-decimal/es/NumberDecimal.js +0 -123
  331. package/lib/node_modules/@rc-component/mini-decimal/es/numberUtil.js +0 -114
  332. package/lib/node_modules/@rc-component/mini-decimal/es/supportUtil.js +0 -14
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -187,6 +187,7 @@ var DataScope = /** @class */ (function () {
187
187
  value: schema.title === '成员' ? '' : path.value,
188
188
  path: schema.title === '成员' ? '' : path.label,
189
189
  type: schema.type,
190
+ schemaType: schema.schemaType,
190
191
  tag: (_b = (_a = schema.typeLabel) !== null && _a !== void 0 ? _a : DATASCHEMA_TYPE_MAP[schema.type]) !== null && _b !== void 0 ? _b : schema.type,
191
192
  description: schema.description,
192
193
  isMember: isMember,
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/utils/api.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -11,12 +11,15 @@ import 'moment';
11
11
  import { cloneObject, extendObject, createObject, isObject } from './object.js';
12
12
  import { tokenize } from './tokenize.js';
13
13
  import { memoryParse } from './memoryParse.js';
14
+ import '@rc-component/mini-decimal';
14
15
  import { dataMapping } from './dataMapping.js';
15
16
  import './filter.js';
16
17
  import { evalExpression } from './tpl.js';
17
18
  import { qsparse, JSONTraverse, isEmpty, uuid, qsstringify, isObjectShallowModified, hasFile, object2formData } from './helper.js';
18
19
  import isPlainObject from 'lodash/isPlainObject';
19
20
  import { debug } from './debug.js';
21
+ import cloneDeep from 'lodash/cloneDeep';
22
+ import isEqual from 'lodash/isEqual';
20
23
 
21
24
  var rSchema = /(?:^|raw\:)(get|post|put|delete|patch|options|head|jsonp|js):/i;
22
25
  var apiCaches = [];
@@ -91,13 +94,19 @@ function buildApi(api, data, options) {
91
94
  return qsstringify(query, (api === null || api === void 0 ? void 0 : api.filterEmptyQuery)
92
95
  ? {
93
96
  filter: function (key, value) {
94
- return value === '' ? undefined : value;
97
+ return value === ''
98
+ ? undefined
99
+ : // qs源码中有filter后,不会默认使用serializeDate处理date类型
100
+ value instanceof Date
101
+ ? Date.prototype.toISOString.call(value)
102
+ : value;
95
103
  }
96
104
  }
97
105
  : undefined);
98
106
  };
99
107
  /** 追加data到请求的Query中 */
100
108
  var attachDataToQuery = function (apiObject, ctx, merge) {
109
+ apiObject.originUrl = apiObject.originUrl || apiObject.url;
101
110
  var idx = apiObject.url.indexOf('?');
102
111
  if (~idx) {
103
112
  var params = (apiObject.query = __assign(__assign(__assign({}, qsparse(apiObject.url.substring(idx + 1))), apiObject.query), ctx));
@@ -366,7 +375,7 @@ function wrapFetcher(fn, tracker) {
366
375
  var wrappedFetcher = function (api, data, options) {
367
376
  var _a, _b, _c;
368
377
  return __awaiter(this, void 0, void 0, function () {
369
- var apiCache, timeStamp;
378
+ var originQuery, originQueryCopy, idx, apiCache, timeStamp;
370
379
  return __generator(this, function (_d) {
371
380
  switch (_d.label) {
372
381
  case 0:
@@ -374,9 +383,18 @@ function wrapFetcher(fn, tracker) {
374
383
  api.context = data;
375
384
  if (!api.requestAdaptor) return [3 /*break*/, 2];
376
385
  debug('api', 'before requestAdaptor', api);
386
+ originQuery = api.query;
387
+ originQueryCopy = isPlainObject(api.query)
388
+ ? cloneDeep(api.query)
389
+ : api.query;
377
390
  return [4 /*yield*/, api.requestAdaptor(api, data)];
378
391
  case 1:
379
392
  api = (_d.sent()) || api;
393
+ if (api.query !== originQuery ||
394
+ (isPlainObject(api.query) && !isEqual(api.query, originQueryCopy))) {
395
+ idx = api.url.indexOf('?');
396
+ api.url = "".concat(~idx ? api.url.substring(0, idx) : api.url, "?").concat(qsstringify(api.query));
397
+ }
380
398
  debug('api', 'after requestAdaptor', api);
381
399
  _d.label = 2;
382
400
  case 2:
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -8,4 +8,6 @@ export declare function parseDuration(str: string): moment.Duration | undefined;
8
8
  * @param format
9
9
  * @returns
10
10
  */
11
- export declare function normalizeDate(value: any, format?: string): moment.Moment | undefined;
11
+ export declare function normalizeDate(value: any, format?: string, options?: {
12
+ utc?: boolean;
13
+ }): moment.Moment | undefined;
package/esm/utils/date.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -62,8 +62,12 @@ var filterDate = function (value, data, format, utc) {
62
62
  return mm([date_2.getFullYear(), date_2.getMonth(), date_2.getDate()]);
63
63
  }
64
64
  else {
65
- var result = mm(value);
66
- return result.isValid() ? result : mm(value, format);
65
+ var result = utc ? mm(value).local() : mm(value);
66
+ return result.isValid()
67
+ ? result
68
+ : utc
69
+ ? mm(value, format).local()
70
+ : mm(value, format);
67
71
  }
68
72
  };
69
73
  function parseDuration(str) {
@@ -82,11 +86,13 @@ function parseDuration(str) {
82
86
  * @param format
83
87
  * @returns
84
88
  */
85
- function normalizeDate(value, format) {
89
+ function normalizeDate(value, format, options) {
86
90
  if (!value || value === '0') {
87
91
  return undefined;
88
92
  }
89
- var v = moment(value, format, true);
93
+ var v = (options === null || options === void 0 ? void 0 : options.utc)
94
+ ? moment.utc(value, format).local()
95
+ : moment(value, format, true);
90
96
  if (v.isValid()) {
91
97
  return v;
92
98
  }
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/utils/dom.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,9 +1,9 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
6
- import { evalExpression, filter } from './tpl.js';
6
+ import { evalExpression, evalExpressionWithConditionBuilder, filter } from './tpl.js';
7
7
  import { mapObject, injectPropsToObject } from './helper.js';
8
8
  import isPlainObject from 'lodash/isPlainObject';
9
9
  import { tokenize } from './tokenize.js';
@@ -50,7 +50,8 @@ function getExprProperties(schema, data, ignoreList, props) {
50
50
  var type = parts === null || parts === void 0 ? void 0 : parts[2];
51
51
  var value = schema[key];
52
52
  if (value &&
53
- typeof value === 'string' &&
53
+ (typeof value === 'string' ||
54
+ Object.prototype.toString.call(value) === '[object Object]') &&
54
55
  (parts === null || parts === void 0 ? void 0 : parts[1]) &&
55
56
  (type === 'On' || type === 'Expr')) {
56
57
  key = parts[1];
@@ -64,7 +65,9 @@ function getExprProperties(schema, data, ignoreList, props) {
64
65
  });
65
66
  }
66
67
  if (type === 'On') {
67
- value = (props === null || props === void 0 ? void 0 : props[key]) || evalExpression(value, ctx || data);
68
+ value =
69
+ (props === null || props === void 0 ? void 0 : props[key]) ||
70
+ evalExpressionWithConditionBuilder(value, ctx || data);
68
71
  }
69
72
  else {
70
73
  value = filter(value, ctx || data);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -12,6 +12,7 @@ import 'tslib';
12
12
  import 'moment';
13
13
  import 'lodash/isPlainObject';
14
14
  import { getVariable } from './getVariable.js';
15
+ import '@rc-component/mini-decimal';
15
16
  import { resolveVariableAndFilter } from './resolveVariableAndFilter.js';
16
17
  import './filter.js';
17
18
  import { collectVariables } from './grammar.js';
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -68,7 +68,7 @@ export declare function visibilityFilter(items: any, data?: object): any;
68
68
  export declare function isDisabled(schema: {
69
69
  disabledOn?: string;
70
70
  disabled?: boolean;
71
- }, data?: object): boolean | "" | undefined;
71
+ }, data?: object): boolean | "" | Promise<boolean> | undefined;
72
72
  export declare function hasAbility(schema: any, ability: string, data?: object, defaultValue?: boolean): boolean;
73
73
  export declare function makeHorizontalDeeper(horizontal: {
74
74
  left: string;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -14,7 +14,7 @@ import isNumber from 'lodash/isNumber';
14
14
  import isString from 'lodash/isString';
15
15
  import qs from 'qs';
16
16
  import { compile } from 'path-to-regexp';
17
- import { evalExpression, filter } from './tpl.js';
17
+ import { evalExpressionWithConditionBuilder, evalExpression, filter } from './tpl.js';
18
18
  import { autobindMethod } from './autobind.js';
19
19
  import 'amis-formula';
20
20
  import 'moment';
@@ -22,6 +22,7 @@ import { isObject } from './object.js';
22
22
  export { cloneObject, createObject, deleteVariable, extendObject, isObject, setVariable } from './object.js';
23
23
  import { tokenize } from './tokenize.js';
24
24
  import { isPureVariable } from './isPureVariable.js';
25
+ import '@rc-component/mini-decimal';
25
26
  import { resolveVariable } from './resolveVariable.js';
26
27
  import { resolveVariableAndFilter } from './resolveVariableAndFilter.js';
27
28
  import './filter.js';
@@ -281,8 +282,10 @@ function hasVisibleExpression(schema) {
281
282
  function isVisible(schema, data) {
282
283
  return !(schema.hidden ||
283
284
  schema.visible === false ||
284
- (schema.hiddenOn && evalExpression(schema.hiddenOn, data)) ||
285
- (schema.visibleOn && !evalExpression(schema.visibleOn, data)));
285
+ (schema.hiddenOn &&
286
+ evalExpressionWithConditionBuilder(schema.hiddenOn, data)) ||
287
+ (schema.visibleOn &&
288
+ !evalExpressionWithConditionBuilder(schema.visibleOn, data)));
286
289
  }
287
290
  function isUnfolded(node, config) {
288
291
  var foldedField = config.foldedField, unfoldedField = config.unfoldedField;
@@ -306,14 +309,15 @@ function visibilityFilter(items, data) {
306
309
  }
307
310
  function isDisabled(schema, data) {
308
311
  return (schema.disabled ||
309
- (schema.disabledOn && evalExpression(schema.disabledOn, data)));
312
+ (schema.disabledOn &&
313
+ evalExpressionWithConditionBuilder(schema.disabledOn, data)));
310
314
  }
311
315
  function hasAbility(schema, ability, data, defaultValue) {
312
316
  if (defaultValue === void 0) { defaultValue = true; }
313
317
  return schema.hasOwnProperty(ability)
314
318
  ? schema[ability]
315
319
  : schema.hasOwnProperty("".concat(ability, "On"))
316
- ? evalExpression(schema["".concat(ability, "On")], data || schema)
320
+ ? evalExpressionWithConditionBuilder(schema["".concat(ability, "On")], data || schema)
317
321
  : defaultValue;
318
322
  }
319
323
  function makeHorizontalDeeper(horizontal, count) {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/utils/icon.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/utils/math.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,7 +1,7 @@
1
1
  import { Options } from '../types';
2
2
  export declare function normalizeOptions(options: string | {
3
3
  [propName: string]: string;
4
- } | Array<string> | Options, share?: {
4
+ } | Array<string | number> | Options, share?: {
5
5
  values: Array<any>;
6
6
  options: Array<any>;
7
7
  }, valueField?: string): Options;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -32,7 +32,8 @@ function normalizeOptions(options, share, valueField) {
32
32
  });
33
33
  }
34
34
  else if (Array.isArray(options) &&
35
- typeof options[0] === 'string') {
35
+ (typeof options[0] === 'string' ||
36
+ typeof options[0] === 'number')) {
36
37
  return options.map(function (item) {
37
38
  var _a;
38
39
  var idx = share.values.indexOf(item);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -10,7 +10,7 @@ import { eachTree, getTree } from './helper.js';
10
10
  import { extendObject, createObject } from './object.js';
11
11
  import debounce from 'lodash/debounce';
12
12
  import { resolveVariableAndFilterForAsync } from './resolveVariableAndFilterForAsync.js';
13
- import { evalExpression, evalExpressionWithConditionBuilder } from './tpl.js';
13
+ import { evalExpression, evalExpressionWithConditionBuilderAsync } from './tpl.js';
14
14
 
15
15
  var rendererEventListeners = [];
16
16
  // 创建渲染器事件对象
@@ -122,9 +122,10 @@ var bindEvent = function (renderer) {
122
122
  return function (eventName) {
123
123
  // eventName用来避免过滤广播事件
124
124
  rendererEventListeners = rendererEventListeners.filter(function (item) {
125
- return item.renderer === renderer && eventName !== undefined
126
- ? item.type !== eventName
127
- : true;
125
+ // 如果 eventName undefined,表示全部解绑,否则解绑指定事件
126
+ return eventName === undefined
127
+ ? item.renderer !== renderer
128
+ : item.renderer !== renderer || item.type !== eventName;
128
129
  });
129
130
  };
130
131
  }
@@ -333,7 +334,7 @@ function getMatchedEventTargets(tree, ctx, index, condition, oldCondition) {
333
334
  var result;
334
335
  return __generator(this, function (_a) {
335
336
  switch (_a.label) {
336
- case 0: return [4 /*yield*/, evalExpressionWithConditionBuilder(condition, createObject(ctx, data))];
337
+ case 0: return [4 /*yield*/, evalExpressionWithConditionBuilderAsync(condition, createObject(ctx, data))];
337
338
  case 1:
338
339
  result = _a.sent();
339
340
  result && targets.push(item);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.4.1
2
+ * amis-core v6.6.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,4 +1,5 @@
1
- export declare function resolveCondition(conditions: any, data: any, defaultResult?: boolean): Promise<boolean>;
1
+ export declare function resolveConditionAsync(conditions: any, data: any, defaultResult?: boolean): Promise<boolean>;
2
+ export declare function resolveCondition(conditions: any, data: any, defaultResult?: boolean): boolean | Promise<boolean>;
2
3
  export declare function registerConditionComputer(op: string, func: (left: any, right: any, fieldType?: string) => boolean, fieldType?: string): void;
3
4
  export declare function getConditionComputers(): {
4
5
  [op: string]: (left: any, right: any, fieldType?: string | undefined) => boolean;