amis-core 2.3.1 → 2.4.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 (323) hide show
  1. package/esm/Root.js +1 -1
  2. package/esm/RootRenderer.js +1 -1
  3. package/esm/SchemaRenderer.js +10 -3
  4. package/esm/Scoped.js +1 -1
  5. package/esm/WithRootStore.js +1 -1
  6. package/esm/WithStore.js +1 -1
  7. package/esm/_virtual/index.js +1 -1
  8. package/esm/actions/Action.d.ts +2 -1
  9. package/esm/actions/Action.js +90 -19
  10. package/esm/actions/AjaxAction.js +2 -3
  11. package/esm/actions/BreakAction.js +1 -1
  12. package/esm/actions/BroadcastAction.d.ts +4 -1
  13. package/esm/actions/BroadcastAction.js +8 -8
  14. package/esm/actions/CmptAction.d.ts +1 -1
  15. package/esm/actions/CmptAction.js +5 -2
  16. package/esm/actions/ContinueAction.js +1 -1
  17. package/esm/actions/CopyAction.js +1 -1
  18. package/esm/actions/CustomAction.d.ts +6 -1
  19. package/esm/actions/CustomAction.js +7 -7
  20. package/esm/actions/DialogAction.d.ts +4 -1
  21. package/esm/actions/DialogAction.js +9 -5
  22. package/esm/actions/DrawerAction.d.ts +4 -1
  23. package/esm/actions/DrawerAction.js +9 -5
  24. package/esm/actions/EmailAction.js +1 -1
  25. package/esm/actions/LinkAction.js +5 -6
  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/SwitchAction.js +1 -1
  30. package/esm/actions/ToastAction.js +1 -1
  31. package/esm/actions/index.d.ts +0 -2
  32. package/esm/components/LazyComponent.js +1 -1
  33. package/esm/components/Overlay.js +3 -2
  34. package/esm/components/PopOver.js +2 -3
  35. package/esm/env.js +1 -1
  36. package/esm/envOverwrite.js +1 -1
  37. package/esm/factory.d.ts +1 -1
  38. package/esm/factory.js +2 -2
  39. package/esm/index.d.ts +20 -9
  40. package/esm/index.js +6 -4
  41. package/esm/locale.js +1 -1
  42. package/esm/node_modules/@restart/hooks/esm/useCommittedRef.js +1 -1
  43. package/esm/node_modules/@restart/hooks/esm/useEventCallback.js +1 -1
  44. package/esm/node_modules/dom-helpers/esm/addEventListener.js +1 -1
  45. package/esm/node_modules/dom-helpers/esm/canUseDOM.js +1 -1
  46. package/esm/node_modules/dom-helpers/esm/contains.js +1 -1
  47. package/esm/node_modules/dom-helpers/esm/listen.js +1 -1
  48. package/esm/node_modules/dom-helpers/esm/ownerDocument.js +1 -1
  49. package/esm/node_modules/dom-helpers/esm/removeEventListener.js +1 -1
  50. package/esm/node_modules/prop-types/factoryWithThrowingShims.js +51 -60
  51. package/esm/node_modules/prop-types/index.js +4 -13
  52. package/esm/node_modules/prop-types/lib/ReactPropTypesSecret.js +4 -13
  53. package/esm/node_modules/react-overlays/esm/Portal.js +1 -1
  54. package/esm/node_modules/react-overlays/esm/ownerDocument.js +1 -1
  55. package/esm/node_modules/react-overlays/esm/safeFindDOMNode.js +1 -1
  56. package/esm/node_modules/react-overlays/esm/useRootClose.js +1 -3
  57. package/esm/node_modules/react-overlays/esm/useWaitForDOMRef.js +1 -1
  58. package/esm/renderers/Form.d.ts +7 -1
  59. package/esm/renderers/Form.js +17 -6
  60. package/esm/renderers/Item.d.ts +6 -6
  61. package/esm/renderers/Item.js +24 -16
  62. package/esm/renderers/Options.d.ts +1 -1
  63. package/esm/renderers/Options.js +28 -7
  64. package/esm/renderers/Placeholder.js +1 -1
  65. package/esm/renderers/builtin.js +1 -1
  66. package/esm/renderers/wrapControl.js +1 -1
  67. package/esm/store/app.js +1 -1
  68. package/esm/store/combo.js +1 -1
  69. package/esm/store/crud.js +1 -1
  70. package/esm/store/form.js +2 -2
  71. package/esm/store/formItem.js +1 -1
  72. package/esm/store/iRenderer.js +1 -1
  73. package/esm/store/index.d.ts +26 -13
  74. package/esm/store/index.js +2 -2
  75. package/esm/store/list.js +1 -1
  76. package/esm/store/manager.js +1 -1
  77. package/esm/store/modal.js +1 -1
  78. package/esm/store/node.js +1 -1
  79. package/esm/store/pagination.js +1 -1
  80. package/esm/store/root.d.ts +2 -0
  81. package/esm/store/root.js +10 -4
  82. package/esm/store/service.js +1 -1
  83. package/esm/store/table.d.ts +6 -6
  84. package/esm/store/table.js +3 -11
  85. package/esm/store/table2.js +1 -1
  86. package/esm/theme.js +1 -1
  87. package/esm/types.d.ts +27 -0
  88. package/esm/utils/Animation.js +1 -1
  89. package/esm/utils/ColorScale.js +1 -1
  90. package/esm/utils/DataSchema.js +1 -1
  91. package/esm/utils/DataScope.js +1 -1
  92. package/esm/utils/RootClose.js +1 -1
  93. package/esm/utils/SimpleMap.js +1 -1
  94. package/esm/utils/api.d.ts +1 -1
  95. package/esm/utils/api.js +17 -5
  96. package/esm/utils/attachmentAdpator.js +1 -1
  97. package/esm/utils/autobind.js +1 -1
  98. package/esm/utils/columnsSplit.js +1 -1
  99. package/esm/utils/dataMapping.js +1 -1
  100. package/esm/utils/date.js +1 -1
  101. package/esm/utils/debug.js +1 -1
  102. package/esm/utils/decodeEntity.d.ts +5 -0
  103. package/esm/utils/decodeEntity.js +16 -0
  104. package/esm/utils/dom.js +1 -1
  105. package/esm/utils/errors.js +1 -1
  106. package/esm/utils/escapeHtml.js +1 -1
  107. package/esm/utils/filter-schema.js +1 -1
  108. package/esm/utils/filter.js +7 -5
  109. package/esm/utils/formatDuration.js +1 -1
  110. package/esm/utils/formula.js +1 -1
  111. package/esm/utils/getVariable.js +1 -1
  112. package/esm/utils/grammar.js +1 -1
  113. package/esm/utils/handleAction.js +1 -1
  114. package/esm/utils/helper.js +6 -1
  115. package/esm/utils/highlight.js +1 -1
  116. package/esm/utils/icon.d.ts +5 -1
  117. package/esm/utils/icon.js +11 -1
  118. package/esm/utils/image.js +1 -1
  119. package/esm/utils/index.d.ts +1 -0
  120. package/esm/utils/isPureVariable.js +1 -1
  121. package/esm/utils/json-schema-2-amis-schema.js +1 -1
  122. package/esm/utils/keyToPath.js +1 -1
  123. package/esm/utils/makeSorter.js +1 -1
  124. package/esm/utils/normalizeLink.js +1 -1
  125. package/esm/utils/normalizeOptions.js +1 -1
  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/renderer-event.d.ts +7 -0
  133. package/esm/utils/renderer-event.js +15 -3
  134. package/esm/utils/replaceText.js +1 -1
  135. package/esm/utils/resize-sensor.js +1 -1
  136. package/esm/utils/resolveVariable.js +1 -1
  137. package/esm/utils/resolveVariableAndFilter.js +1 -1
  138. package/esm/utils/scrollPosition.js +1 -1
  139. package/esm/utils/string2regExp.js +1 -1
  140. package/esm/utils/stripNumber.js +1 -1
  141. package/esm/utils/style.js +1 -1
  142. package/esm/utils/toNumber.js +1 -1
  143. package/esm/utils/tokenize.js +1 -1
  144. package/esm/utils/tpl-builtin.js +1 -1
  145. package/esm/utils/tpl-lodash.js +1 -1
  146. package/esm/utils/tpl.js +1 -1
  147. package/esm/utils/uncontrollable.js +1 -1
  148. package/esm/utils/validations.js +1 -1
  149. package/lib/Root.js +1 -1
  150. package/lib/RootRenderer.js +1 -1
  151. package/lib/SchemaRenderer.js +10 -3
  152. package/lib/Scoped.js +1 -1
  153. package/lib/WithRootStore.js +1 -1
  154. package/lib/WithStore.js +1 -1
  155. package/lib/_virtual/index.js +1 -1
  156. package/lib/actions/Action.d.ts +2 -1
  157. package/lib/actions/Action.js +94 -19
  158. package/lib/actions/AjaxAction.js +2 -7
  159. package/lib/actions/BreakAction.js +1 -1
  160. package/lib/actions/BroadcastAction.d.ts +4 -1
  161. package/lib/actions/BroadcastAction.js +8 -8
  162. package/lib/actions/CmptAction.d.ts +1 -1
  163. package/lib/actions/CmptAction.js +5 -2
  164. package/lib/actions/ContinueAction.js +1 -1
  165. package/lib/actions/CopyAction.js +1 -1
  166. package/lib/actions/CustomAction.d.ts +6 -1
  167. package/lib/actions/CustomAction.js +7 -7
  168. package/lib/actions/DialogAction.d.ts +4 -1
  169. package/lib/actions/DialogAction.js +9 -5
  170. package/lib/actions/DrawerAction.d.ts +4 -1
  171. package/lib/actions/DrawerAction.js +9 -5
  172. package/lib/actions/EmailAction.js +1 -1
  173. package/lib/actions/LinkAction.js +5 -10
  174. package/lib/actions/LoopAction.js +1 -1
  175. package/lib/actions/PageAction.js +1 -1
  176. package/lib/actions/ParallelAction.js +1 -1
  177. package/lib/actions/SwitchAction.js +1 -1
  178. package/lib/actions/ToastAction.js +1 -1
  179. package/lib/actions/index.d.ts +0 -2
  180. package/lib/components/LazyComponent.js +1 -1
  181. package/lib/components/Overlay.js +3 -2
  182. package/lib/components/PopOver.js +2 -3
  183. package/lib/env.js +1 -1
  184. package/lib/envOverwrite.js +1 -1
  185. package/lib/factory.d.ts +1 -1
  186. package/lib/factory.js +2 -2
  187. package/lib/index.d.ts +20 -9
  188. package/lib/index.js +7 -4
  189. package/lib/locale.js +1 -1
  190. package/lib/node_modules/@restart/hooks/esm/useCommittedRef.js +1 -1
  191. package/lib/node_modules/@restart/hooks/esm/useEventCallback.js +1 -1
  192. package/lib/node_modules/dom-helpers/esm/addEventListener.js +1 -1
  193. package/lib/node_modules/dom-helpers/esm/canUseDOM.js +1 -1
  194. package/lib/node_modules/dom-helpers/esm/contains.js +1 -1
  195. package/lib/node_modules/dom-helpers/esm/listen.js +1 -1
  196. package/lib/node_modules/dom-helpers/esm/ownerDocument.js +1 -1
  197. package/lib/node_modules/dom-helpers/esm/removeEventListener.js +1 -1
  198. package/lib/node_modules/prop-types/factoryWithThrowingShims.js +51 -60
  199. package/lib/node_modules/prop-types/index.js +3 -12
  200. package/lib/node_modules/prop-types/lib/ReactPropTypesSecret.js +4 -13
  201. package/lib/node_modules/react-overlays/esm/Portal.js +1 -1
  202. package/lib/node_modules/react-overlays/esm/ownerDocument.js +1 -1
  203. package/lib/node_modules/react-overlays/esm/safeFindDOMNode.js +1 -1
  204. package/lib/node_modules/react-overlays/esm/useRootClose.js +1 -3
  205. package/lib/node_modules/react-overlays/esm/useWaitForDOMRef.js +1 -1
  206. package/lib/renderers/Form.d.ts +7 -1
  207. package/lib/renderers/Form.js +17 -6
  208. package/lib/renderers/Item.d.ts +6 -6
  209. package/lib/renderers/Item.js +24 -16
  210. package/lib/renderers/Options.d.ts +1 -1
  211. package/lib/renderers/Options.js +30 -9
  212. package/lib/renderers/Placeholder.js +1 -1
  213. package/lib/renderers/builtin.js +1 -1
  214. package/lib/renderers/wrapControl.js +1 -1
  215. package/lib/store/app.js +1 -1
  216. package/lib/store/combo.js +1 -1
  217. package/lib/store/crud.js +1 -1
  218. package/lib/store/form.js +2 -2
  219. package/lib/store/formItem.js +1 -1
  220. package/lib/store/iRenderer.js +1 -1
  221. package/lib/store/index.d.ts +26 -13
  222. package/lib/store/index.js +2 -2
  223. package/lib/store/list.js +1 -1
  224. package/lib/store/manager.js +1 -1
  225. package/lib/store/modal.js +1 -1
  226. package/lib/store/node.js +1 -1
  227. package/lib/store/pagination.js +1 -1
  228. package/lib/store/root.d.ts +2 -0
  229. package/lib/store/root.js +9 -3
  230. package/lib/store/service.js +1 -1
  231. package/lib/store/table.d.ts +6 -6
  232. package/lib/store/table.js +3 -11
  233. package/lib/store/table2.js +1 -1
  234. package/lib/theme.js +1 -1
  235. package/lib/types.d.ts +27 -0
  236. package/lib/utils/Animation.js +1 -1
  237. package/lib/utils/ColorScale.js +1 -1
  238. package/lib/utils/DataSchema.js +1 -1
  239. package/lib/utils/DataScope.js +1 -1
  240. package/lib/utils/RootClose.js +1 -1
  241. package/lib/utils/SimpleMap.js +1 -1
  242. package/lib/utils/api.d.ts +1 -1
  243. package/lib/utils/api.js +16 -4
  244. package/lib/utils/attachmentAdpator.js +1 -1
  245. package/lib/utils/autobind.js +1 -1
  246. package/lib/utils/columnsSplit.js +1 -1
  247. package/lib/utils/dataMapping.js +1 -1
  248. package/lib/utils/date.js +1 -1
  249. package/lib/utils/debug.js +1 -1
  250. package/lib/utils/decodeEntity.d.ts +5 -0
  251. package/lib/utils/decodeEntity.js +20 -0
  252. package/lib/utils/dom.js +1 -1
  253. package/lib/utils/errors.js +1 -1
  254. package/lib/utils/escapeHtml.js +1 -1
  255. package/lib/utils/filter-schema.js +1 -1
  256. package/lib/utils/filter.js +7 -5
  257. package/lib/utils/formatDuration.js +1 -1
  258. package/lib/utils/formula.js +1 -1
  259. package/lib/utils/getVariable.js +1 -1
  260. package/lib/utils/grammar.js +1 -1
  261. package/lib/utils/handleAction.js +1 -1
  262. package/lib/utils/helper.js +6 -1
  263. package/lib/utils/highlight.js +1 -1
  264. package/lib/utils/icon.d.ts +5 -1
  265. package/lib/utils/icon.js +11 -1
  266. package/lib/utils/image.js +1 -1
  267. package/lib/utils/index.d.ts +1 -0
  268. package/lib/utils/isPureVariable.js +1 -1
  269. package/lib/utils/json-schema-2-amis-schema.js +1 -1
  270. package/lib/utils/keyToPath.js +1 -1
  271. package/lib/utils/makeSorter.js +1 -1
  272. package/lib/utils/normalizeLink.js +1 -1
  273. package/lib/utils/normalizeOptions.js +1 -1
  274. package/lib/utils/object.js +1 -1
  275. package/lib/utils/offset.js +1 -1
  276. package/lib/utils/offsetParent.js +1 -1
  277. package/lib/utils/optionValueCompare.js +1 -1
  278. package/lib/utils/position.js +1 -1
  279. package/lib/utils/prettyBytes.js +1 -1
  280. package/lib/utils/renderer-event.d.ts +7 -0
  281. package/lib/utils/renderer-event.js +14 -1
  282. package/lib/utils/replaceText.js +1 -1
  283. package/lib/utils/resize-sensor.js +1 -1
  284. package/lib/utils/resolveVariable.js +1 -1
  285. package/lib/utils/resolveVariableAndFilter.js +1 -1
  286. package/lib/utils/scrollPosition.js +1 -1
  287. package/lib/utils/string2regExp.js +1 -1
  288. package/lib/utils/stripNumber.js +1 -1
  289. package/lib/utils/style.js +1 -1
  290. package/lib/utils/toNumber.js +1 -1
  291. package/lib/utils/tokenize.js +1 -1
  292. package/lib/utils/tpl-builtin.js +1 -1
  293. package/lib/utils/tpl-lodash.js +1 -1
  294. package/lib/utils/tpl.js +1 -1
  295. package/lib/utils/uncontrollable.js +1 -1
  296. package/lib/utils/validations.js +1 -1
  297. package/package.json +4 -3
  298. package/esm/_virtual/index2.js +0 -8
  299. package/esm/_virtual/react-is.development.js +0 -8
  300. package/esm/_virtual/react-is.production.min.js +0 -8
  301. package/esm/actions/Decorators.d.ts +0 -25
  302. package/esm/actions/Decorators.js +0 -83
  303. package/esm/node_modules/object-assign/index.js +0 -104
  304. package/esm/node_modules/prop-types/checkPropTypes.js +0 -120
  305. package/esm/node_modules/prop-types/factoryWithTypeCheckers.js +0 -630
  306. package/esm/node_modules/prop-types/lib/has.js +0 -16
  307. package/esm/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +0 -195
  308. package/esm/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +0 -31
  309. package/esm/node_modules/prop-types/node_modules/react-is/index.js +0 -26
  310. package/esm/node_modules/warning/warning.js +0 -67
  311. package/lib/_virtual/index2.js +0 -12
  312. package/lib/_virtual/react-is.development.js +0 -12
  313. package/lib/_virtual/react-is.production.min.js +0 -12
  314. package/lib/actions/Decorators.d.ts +0 -25
  315. package/lib/actions/Decorators.js +0 -88
  316. package/lib/node_modules/object-assign/index.js +0 -108
  317. package/lib/node_modules/prop-types/checkPropTypes.js +0 -124
  318. package/lib/node_modules/prop-types/factoryWithTypeCheckers.js +0 -634
  319. package/lib/node_modules/prop-types/lib/has.js +0 -20
  320. package/lib/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +0 -199
  321. package/lib/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +0 -35
  322. package/lib/node_modules/prop-types/node_modules/react-is/index.js +0 -30
  323. package/lib/node_modules/warning/warning.js +0 -71
package/lib/types.d.ts CHANGED
@@ -222,9 +222,11 @@ export interface Schema {
222
222
  visibleOn?: string;
223
223
  hiddenOn?: string;
224
224
  disabledOn?: string;
225
+ staticOn?: string;
225
226
  visible?: boolean;
226
227
  hidden?: boolean;
227
228
  disabled?: boolean;
229
+ static?: boolean;
228
230
  children?: JSX.Element | ((props: any, schema?: any) => JSX.Element) | null;
229
231
  definitions?: Definitions;
230
232
  [propName: string]: any;
@@ -449,5 +451,30 @@ export interface BaseSchemaWithoutType {
449
451
  actions: ListenerAction[];
450
452
  };
451
453
  };
454
+ /**
455
+ * 是否静态展示
456
+ */
457
+ static?: boolean;
458
+ /**
459
+ * 是否静态展示表达式
460
+ */
461
+ staticOn?: SchemaExpression;
462
+ /**
463
+ * 静态展示空值占位
464
+ */
465
+ staticPlaceholder?: string;
466
+ /**
467
+ * 静态展示表单项类名
468
+ */
469
+ staticClassName?: SchemaClassName;
470
+ /**
471
+ * 静态展示表单项Label类名
472
+ */
473
+ staticLabelClassName?: SchemaClassName;
474
+ /**
475
+ * 静态展示表单项Value类名
476
+ */
477
+ staticInputClassName?: SchemaClassName;
478
+ staticSchema?: any;
452
479
  }
453
480
  export {};
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -13,7 +13,7 @@ export declare function buildApi(api: Api, data?: object, options?: {
13
13
  export declare function str2function(contents: string, ...args: Array<string>): Function | null;
14
14
  export declare function str2AsyncFunction(contents: string, ...args: Array<string>): Function | null;
15
15
  export declare function responseAdaptor(ret: fetcherResult, api: ApiObject): Payload;
16
- export declare function wrapFetcher(fn: (config: fetcherConfig) => Promise<fetcherResult>, tracker?: (eventTrack: EventTrack, data: any) => void): (api: Api, data: object, options?: object) => Promise<Payload | void>;
16
+ export declare function wrapFetcher(fn: (config: fetcherConfig) => Promise<fetcherResult>, tracker?: (eventTrack: EventTrack, data: any) => void): any;
17
17
  export declare function wrapAdaptor(promise: Promise<fetcherResult>, api: ApiObject): Promise<Payload>;
18
18
  /**
19
19
  * 请求远程 js 文件然后 new Function 执行,用于 schemaApi 支持 JavaScript
package/lib/utils/api.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -147,7 +147,10 @@ function buildApi(api, data, options) {
147
147
  }
148
148
  else {
149
149
  api.query = data;
150
- api.url += '?' + helper.qsstringify(data);
150
+ var query = helper.qsstringify(data);
151
+ if (query) {
152
+ api.url = "".concat(api.url, "?").concat(query);
153
+ }
151
154
  }
152
155
  }
153
156
  if (api.data && api.attachDataToQuery !== false) {
@@ -158,7 +161,10 @@ function buildApi(api, data, options) {
158
161
  }
159
162
  else {
160
163
  api.query = api.data;
161
- api.url += '?' + helper.qsstringify(api.data);
164
+ var query = helper.qsstringify(api.data);
165
+ if (query) {
166
+ api.url = "".concat(api.url, "?").concat(query);
167
+ }
162
168
  }
163
169
  delete api.data;
164
170
  }
@@ -305,7 +311,11 @@ function responseAdaptor(ret, api) {
305
311
  return payload;
306
312
  }
307
313
  function wrapFetcher(fn, tracker) {
308
- return function (api, data, options) {
314
+ // 避免重复处理
315
+ if (fn._wrappedFetcher) {
316
+ return fn;
317
+ }
318
+ var wrappedFetcher = function (api, data, options) {
309
319
  var _a, _b, _c;
310
320
  api = buildApi(api, data, options);
311
321
  if (api.requestAdaptor) {
@@ -363,6 +373,8 @@ function wrapFetcher(fn, tracker) {
363
373
  }
364
374
  return wrapAdaptor(fn(api), api);
365
375
  };
376
+ wrappedFetcher._wrappedFetcher = true;
377
+ return wrappedFetcher;
366
378
  }
367
379
  function wrapAdaptor(promise, api) {
368
380
  var _this = this;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
package/lib/utils/date.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -0,0 +1,5 @@
1
+ /**
2
+ * 解析 HTML Entity,比如 &#x2F; 转成 /
3
+ * @param text 要解析的值
4
+ */
5
+ export declare const decodeEntity: (text: string) => string;
@@ -0,0 +1,20 @@
1
+ /**
2
+ * amis-core v2.4.0
3
+ * Copyright 2018-2022 fex
4
+ */
5
+
6
+ 'use strict';
7
+
8
+ Object.defineProperty(exports, '__esModule', { value: true });
9
+
10
+ /**
11
+ * 解析 HTML Entity,比如 &#x2F; 转成 /
12
+ * @param text 要解析的值
13
+ */
14
+ var decodeEntity = function (text) {
15
+ var textArea = document.createElement('textarea');
16
+ textArea.innerHTML = text;
17
+ return textArea.value;
18
+ };
19
+
20
+ exports.decodeEntity = decodeEntity;
package/lib/utils/dom.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -114,14 +114,16 @@ amisFormula.extendsFilters({
114
114
  : JSON.stringify(input);
115
115
  },
116
116
  toJson: function (input) {
117
- var ret;
117
+ // 如果不是字符串,不处理
118
+ if (typeof input !== 'string') {
119
+ return input;
120
+ }
118
121
  try {
119
- ret = JSON.parse(input);
122
+ return JSON.parse(input);
120
123
  }
121
124
  catch (e) {
122
- ret = null;
125
+ return null;
123
126
  }
124
- return ret;
125
127
  },
126
128
  toInt: function (input) { return (typeof input === 'string' ? parseInt(input, 10) : input); },
127
129
  toFloat: function (input) { return (typeof input === 'string' ? parseFloat(input) : input); },
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -322,6 +322,10 @@ function makeHorizontalDeeper(horizontal, count) {
322
322
  return horizontal;
323
323
  }
324
324
  function promisify(fn) {
325
+ // 避免重复处理
326
+ if (fn._promisified) {
327
+ return fn;
328
+ }
325
329
  var promisified = function () {
326
330
  try {
327
331
  var ret_1 = fn.apply(null, arguments);
@@ -343,6 +347,7 @@ function promisify(fn) {
343
347
  }
344
348
  };
345
349
  promisified.raw = fn;
350
+ promisified._promisified = true;
346
351
  return promisified;
347
352
  }
348
353
  /**
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -3,10 +3,14 @@
3
3
  */
4
4
  /// <reference types="react" />
5
5
  import { ClassNamesFn } from '../theme';
6
+ export interface IconCheckedSchema {
7
+ id: string;
8
+ name?: string;
9
+ }
6
10
  /**
7
11
  * 判断字符串来生成 i 或 img
8
12
  * @param icon icon 设置
9
13
  * @param className 内部用的 className
10
14
  * @param classNameProp amis 配置里设置的 className
11
15
  */
12
- export declare const generateIcon: (cx: ClassNamesFn, icon?: string, className?: string, classNameProp?: string) => JSX.Element | null;
16
+ export declare const generateIcon: (cx: ClassNamesFn, icon?: string | IconCheckedSchema, className?: string, classNameProp?: string) => JSX.Element | null | undefined;
package/lib/utils/icon.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -8,6 +8,7 @@
8
8
  Object.defineProperty(exports, '__esModule', { value: true });
9
9
 
10
10
  var React = require('react');
11
+ var lodash = require('lodash');
11
12
 
12
13
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
14
 
@@ -26,6 +27,15 @@ var generateIcon = function (cx, icon, className, classNameProp) {
26
27
  if (React__default["default"].isValidElement(icon)) {
27
28
  return icon;
28
29
  }
30
+ if (typeof icon !== 'string') {
31
+ if (lodash.isObject(icon) &&
32
+ typeof icon.id === 'string' &&
33
+ icon.id.startsWith('svg-')) {
34
+ return (React__default["default"].createElement("svg", { className: cx('icon', 'icon-object', className, classNameProp) },
35
+ React__default["default"].createElement("use", { xlinkHref: "#".concat(icon.id.replace(/^svg-/, '')) })));
36
+ }
37
+ return;
38
+ }
29
39
  var isURLIcon = (icon === null || icon === void 0 ? void 0 : icon.indexOf('.')) !== -1;
30
40
  return icon ? (isURLIcon ? (React__default["default"].createElement("img", { className: cx(className, classNameProp), src: icon, key: icon })) : (React__default["default"].createElement("i", { className: cx(className, icon, classNameProp), key: icon }))) : null;
31
41
  };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -50,5 +50,6 @@ export * from './tpl';
50
50
  export * from './uncontrollable';
51
51
  export * from './validations';
52
52
  export * from './toNumber';
53
+ export * from './decodeEntity';
53
54
  import animation from './Animation';
54
55
  export { animation };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -40,5 +40,12 @@ export declare function createRendererEvent<T extends RendererEventContext>(type
40
40
  export declare const bindEvent: (renderer: any) => (() => void) | undefined;
41
41
  export declare function dispatchEvent(e: string | React.MouseEvent<any>, renderer: React.Component<RendererProps>, scoped: IScopedContext, data: any, broadcast?: RendererEvent<any>): Promise<RendererEvent<any> | void>;
42
42
  export declare const getRendererEventListeners: () => RendererEventListener[];
43
+ /**
44
+ * 兼容历史配置,追加对应name的值
45
+ * @param props
46
+ * @param data
47
+ * @param valueKey
48
+ */
49
+ export declare const resolveEventData: (props: any, data: any, valueKey?: string) => object;
43
50
  declare const _default: {};
44
51
  export default _default;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -9,6 +9,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
9
9
 
10
10
  var tslib = require('tslib');
11
11
  var Action = require('../actions/Action.js');
12
+ var object = require('./object.js');
12
13
 
13
14
  var rendererEventListeners = [];
14
15
  // 创建渲染器事件对象
@@ -128,8 +129,20 @@ function dispatchEvent(e, renderer, scoped, data, broadcast) {
128
129
  var getRendererEventListeners = function () {
129
130
  return rendererEventListeners;
130
131
  };
132
+ /**
133
+ * 兼容历史配置,追加对应name的值
134
+ * @param props
135
+ * @param data
136
+ * @param valueKey
137
+ */
138
+ var resolveEventData = function (props, data, valueKey) {
139
+ var _a;
140
+ return object.createObject(props.data, props.name && valueKey
141
+ ? tslib.__assign(tslib.__assign({}, data), (_a = {}, _a[props.name] = data[valueKey], _a)) : data);
142
+ };
131
143
 
132
144
  exports.bindEvent = bindEvent;
133
145
  exports.createRendererEvent = createRendererEvent;
134
146
  exports.dispatchEvent = dispatchEvent;
135
147
  exports.getRendererEventListeners = getRendererEventListeners;
148
+ exports.resolveEventData = resolveEventData;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.3.1
2
+ * amis-core v2.4.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5