amis-core 2.0.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (311) hide show
  1. package/esm/Root.js +1 -1
  2. package/esm/RootRenderer.js +7 -7
  3. package/esm/SchemaRenderer.js +12 -12
  4. package/esm/Scoped.js +1 -1
  5. package/esm/WithRootStore.d.ts +0 -18
  6. package/esm/WithRootStore.js +1 -1
  7. package/esm/WithStore.js +1 -1
  8. package/esm/_virtual/index.js +1 -1
  9. package/esm/_virtual/index2.js +1 -1
  10. package/esm/_virtual/react-is.development.js +1 -1
  11. package/esm/_virtual/react-is.production.min.js +1 -1
  12. package/esm/actions/Action.js +1 -1
  13. package/esm/actions/AjaxAction.js +39 -38
  14. package/esm/actions/BreakAction.js +1 -1
  15. package/esm/actions/BroadcastAction.js +1 -1
  16. package/esm/actions/CmptAction.js +3 -3
  17. package/esm/actions/ContinueAction.js +1 -1
  18. package/esm/actions/CopyAction.js +1 -1
  19. package/esm/actions/CustomAction.js +1 -1
  20. package/esm/actions/Decorators.js +1 -1
  21. package/esm/actions/DialogAction.js +2 -2
  22. package/esm/actions/DrawerAction.js +1 -1
  23. package/esm/actions/EmailAction.js +1 -1
  24. package/esm/actions/LinkAction.js +1 -1
  25. package/esm/actions/LoopAction.js +1 -1
  26. package/esm/actions/PageAction.js +1 -1
  27. package/esm/actions/ParallelAction.js +1 -1
  28. package/esm/actions/SwitchAction.js +1 -1
  29. package/esm/actions/ToastAction.js +1 -1
  30. package/esm/components/LazyComponent.js +1 -1
  31. package/esm/components/Overlay.d.ts +2 -0
  32. package/esm/components/Overlay.js +19 -2
  33. package/esm/components/PopOver.js +1 -1
  34. package/esm/env.js +1 -1
  35. package/esm/envOverwrite.js +1 -1
  36. package/esm/factory.d.ts +1 -1
  37. package/esm/factory.js +1 -1
  38. package/esm/index.js +4 -4
  39. package/esm/index2.js +3 -4
  40. package/esm/locale.js +1 -1
  41. package/esm/node_modules/@restart/hooks/esm/useCommittedRef.js +1 -1
  42. package/esm/node_modules/@restart/hooks/esm/useEventCallback.js +1 -1
  43. package/esm/node_modules/dom-helpers/esm/addEventListener.js +1 -1
  44. package/esm/node_modules/dom-helpers/esm/canUseDOM.js +1 -1
  45. package/esm/node_modules/dom-helpers/esm/contains.js +1 -1
  46. package/esm/node_modules/dom-helpers/esm/listen.js +1 -1
  47. package/esm/node_modules/dom-helpers/esm/ownerDocument.js +1 -1
  48. package/esm/node_modules/dom-helpers/esm/removeEventListener.js +1 -1
  49. package/esm/node_modules/object-assign/index.js +1 -1
  50. package/esm/node_modules/prop-types/checkPropTypes.js +1 -1
  51. package/esm/node_modules/prop-types/factoryWithThrowingShims.js +1 -1
  52. package/esm/node_modules/prop-types/factoryWithTypeCheckers.js +1 -1
  53. package/esm/node_modules/prop-types/index.js +1 -1
  54. package/esm/node_modules/prop-types/lib/ReactPropTypesSecret.js +1 -1
  55. package/esm/node_modules/prop-types/lib/has.js +1 -1
  56. package/esm/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +1 -1
  57. package/esm/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +1 -1
  58. package/esm/node_modules/prop-types/node_modules/react-is/index.js +1 -1
  59. package/esm/node_modules/react-overlays/esm/Portal.js +1 -1
  60. package/esm/node_modules/react-overlays/esm/ownerDocument.js +1 -1
  61. package/esm/node_modules/react-overlays/esm/safeFindDOMNode.js +1 -1
  62. package/esm/node_modules/react-overlays/esm/useRootClose.js +1 -1
  63. package/esm/node_modules/react-overlays/esm/useWaitForDOMRef.js +1 -1
  64. package/esm/node_modules/warning/warning.js +1 -1
  65. package/esm/renderers/Form.d.ts +2 -1
  66. package/esm/renderers/Form.js +12 -6
  67. package/esm/renderers/Item.d.ts +4 -18
  68. package/esm/renderers/Item.js +21 -11
  69. package/esm/renderers/Options.js +14 -6
  70. package/esm/renderers/Placeholder.js +1 -1
  71. package/esm/renderers/builtin.js +1 -1
  72. package/esm/renderers/wrapControl.d.ts +0 -9
  73. package/esm/renderers/wrapControl.js +2 -3
  74. package/esm/store/app.d.ts +4 -1
  75. package/esm/store/app.js +5 -2
  76. package/esm/store/combo.js +1 -1
  77. package/esm/store/crud.js +1 -1
  78. package/esm/store/form.js +1 -1
  79. package/esm/store/formItem.js +4 -2
  80. package/esm/store/iRenderer.js +1 -1
  81. package/esm/store/index.d.ts +0 -5
  82. package/esm/store/index.js +1 -16
  83. package/esm/store/list.js +1 -1
  84. package/esm/store/manager.js +1 -1
  85. package/esm/store/modal.js +1 -1
  86. package/esm/store/node.js +1 -1
  87. package/esm/store/pagination.js +1 -1
  88. package/esm/store/root.d.ts +4 -0
  89. package/esm/store/root.js +14 -2
  90. package/esm/store/service.js +1 -1
  91. package/esm/store/table-v2.js +1 -1
  92. package/esm/store/table.d.ts +2 -2
  93. package/esm/store/table.js +4 -9
  94. package/esm/theme.js +1 -1
  95. package/esm/types.d.ts +2 -2
  96. package/esm/utils/Animation.js +1 -1
  97. package/esm/utils/ColorScale.js +1 -1
  98. package/esm/utils/DataSchema.js +2 -6
  99. package/esm/utils/DataScope.js +1 -1
  100. package/esm/utils/RootClose.js +1 -1
  101. package/esm/utils/SimpleMap.js +1 -1
  102. package/esm/utils/api.d.ts +7 -0
  103. package/esm/utils/api.js +47 -6
  104. package/esm/utils/attachmentAdpator.js +1 -1
  105. package/esm/utils/autobind.js +1 -1
  106. package/esm/utils/columnsSplit.js +1 -1
  107. package/esm/utils/dataMapping.d.ts +6 -0
  108. package/esm/utils/dataMapping.js +16 -2
  109. package/esm/utils/date.js +1 -1
  110. package/esm/utils/debug.js +1 -1
  111. package/esm/utils/dom.js +1 -1
  112. package/esm/utils/errors.js +1 -1
  113. package/esm/utils/escapeHtml.js +1 -1
  114. package/esm/utils/filter-schema.js +1 -1
  115. package/esm/utils/filter.js +1 -1
  116. package/esm/utils/formatDuration.js +1 -1
  117. package/esm/utils/formula.js +1 -1
  118. package/esm/utils/getVariable.js +1 -1
  119. package/esm/utils/grammar.js +1 -1
  120. package/esm/utils/handleAction.js +1 -1
  121. package/esm/utils/helper.d.ts +27 -1
  122. package/esm/utils/helper.js +23 -6
  123. package/esm/utils/highlight.js +1 -1
  124. package/esm/utils/icon.js +1 -1
  125. package/esm/utils/image.js +1 -1
  126. package/esm/utils/isPureVariable.js +1 -1
  127. package/esm/utils/json-schema-2-amis-schema.js +1 -1
  128. package/esm/utils/keyToPath.js +1 -1
  129. package/esm/utils/makeSorter.js +1 -1
  130. package/esm/utils/normalizeLink.js +1 -1
  131. package/esm/utils/normalizeOptions.js +1 -1
  132. package/esm/utils/object.js +1 -1
  133. package/esm/utils/offset.js +1 -1
  134. package/esm/utils/offsetParent.js +1 -1
  135. package/esm/utils/optionValueCompare.js +1 -1
  136. package/esm/utils/position.d.ts +1 -1
  137. package/esm/utils/position.js +9 -1
  138. package/esm/utils/prettyBytes.js +1 -1
  139. package/esm/utils/renderer-event.js +1 -1
  140. package/esm/utils/replaceText.js +1 -1
  141. package/esm/utils/resize-sensor.js +1 -1
  142. package/esm/utils/resolveVariable.js +1 -1
  143. package/esm/utils/resolveVariableAndFilter.js +1 -1
  144. package/esm/utils/scrollPosition.d.ts +1 -1
  145. package/esm/utils/scrollPosition.js +1 -1
  146. package/esm/utils/string2regExp.js +1 -1
  147. package/esm/utils/stripNumber.js +1 -1
  148. package/esm/utils/style.js +1 -1
  149. package/esm/utils/tokenize.js +1 -1
  150. package/esm/utils/tpl-builtin.d.ts +2 -2
  151. package/esm/utils/tpl-builtin.js +1 -1
  152. package/esm/utils/tpl-lodash.js +1 -1
  153. package/esm/utils/tpl.js +1 -1
  154. package/esm/utils/uncontrollable.js +1 -1
  155. package/esm/utils/validations.js +1 -1
  156. package/lib/Root.js +1 -1
  157. package/lib/RootRenderer.js +7 -7
  158. package/lib/SchemaRenderer.js +12 -12
  159. package/lib/Scoped.js +1 -1
  160. package/lib/WithRootStore.d.ts +0 -18
  161. package/lib/WithRootStore.js +1 -1
  162. package/lib/WithStore.js +1 -1
  163. package/lib/_virtual/index.js +1 -1
  164. package/lib/_virtual/index2.js +1 -1
  165. package/lib/_virtual/react-is.development.js +1 -1
  166. package/lib/_virtual/react-is.production.min.js +1 -1
  167. package/lib/actions/Action.js +1 -1
  168. package/lib/actions/AjaxAction.js +38 -37
  169. package/lib/actions/BreakAction.js +1 -1
  170. package/lib/actions/BroadcastAction.js +1 -1
  171. package/lib/actions/CmptAction.js +3 -3
  172. package/lib/actions/ContinueAction.js +1 -1
  173. package/lib/actions/CopyAction.js +1 -1
  174. package/lib/actions/CustomAction.js +1 -1
  175. package/lib/actions/Decorators.js +1 -1
  176. package/lib/actions/DialogAction.js +2 -2
  177. package/lib/actions/DrawerAction.js +1 -1
  178. package/lib/actions/EmailAction.js +1 -1
  179. package/lib/actions/LinkAction.js +1 -1
  180. package/lib/actions/LoopAction.js +1 -1
  181. package/lib/actions/PageAction.js +1 -1
  182. package/lib/actions/ParallelAction.js +1 -1
  183. package/lib/actions/SwitchAction.js +1 -1
  184. package/lib/actions/ToastAction.js +1 -1
  185. package/lib/components/LazyComponent.js +1 -1
  186. package/lib/components/Overlay.d.ts +2 -0
  187. package/lib/components/Overlay.js +19 -2
  188. package/lib/components/PopOver.js +1 -1
  189. package/lib/env.js +1 -1
  190. package/lib/envOverwrite.js +1 -1
  191. package/lib/factory.d.ts +1 -1
  192. package/lib/factory.js +1 -1
  193. package/lib/index.js +5 -1
  194. package/lib/index2.js +4 -2
  195. package/lib/locale.js +1 -1
  196. package/lib/node_modules/@restart/hooks/esm/useCommittedRef.js +1 -1
  197. package/lib/node_modules/@restart/hooks/esm/useEventCallback.js +1 -1
  198. package/lib/node_modules/dom-helpers/esm/addEventListener.js +1 -1
  199. package/lib/node_modules/dom-helpers/esm/canUseDOM.js +1 -1
  200. package/lib/node_modules/dom-helpers/esm/contains.js +1 -1
  201. package/lib/node_modules/dom-helpers/esm/listen.js +1 -1
  202. package/lib/node_modules/dom-helpers/esm/ownerDocument.js +1 -1
  203. package/lib/node_modules/dom-helpers/esm/removeEventListener.js +1 -1
  204. package/lib/node_modules/object-assign/index.js +1 -1
  205. package/lib/node_modules/prop-types/checkPropTypes.js +1 -1
  206. package/lib/node_modules/prop-types/factoryWithThrowingShims.js +1 -1
  207. package/lib/node_modules/prop-types/factoryWithTypeCheckers.js +1 -1
  208. package/lib/node_modules/prop-types/index.js +1 -1
  209. package/lib/node_modules/prop-types/lib/ReactPropTypesSecret.js +1 -1
  210. package/lib/node_modules/prop-types/lib/has.js +1 -1
  211. package/lib/node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js +1 -1
  212. package/lib/node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js +1 -1
  213. package/lib/node_modules/prop-types/node_modules/react-is/index.js +1 -1
  214. package/lib/node_modules/react-overlays/esm/Portal.js +1 -1
  215. package/lib/node_modules/react-overlays/esm/ownerDocument.js +1 -1
  216. package/lib/node_modules/react-overlays/esm/safeFindDOMNode.js +1 -1
  217. package/lib/node_modules/react-overlays/esm/useRootClose.js +1 -1
  218. package/lib/node_modules/react-overlays/esm/useWaitForDOMRef.js +1 -1
  219. package/lib/node_modules/warning/warning.js +1 -1
  220. package/lib/renderers/Form.d.ts +2 -1
  221. package/lib/renderers/Form.js +12 -6
  222. package/lib/renderers/Item.d.ts +4 -18
  223. package/lib/renderers/Item.js +20 -10
  224. package/lib/renderers/Options.js +14 -7
  225. package/lib/renderers/Placeholder.js +1 -1
  226. package/lib/renderers/builtin.js +1 -1
  227. package/lib/renderers/wrapControl.d.ts +0 -9
  228. package/lib/renderers/wrapControl.js +2 -3
  229. package/lib/store/app.d.ts +4 -1
  230. package/lib/store/app.js +5 -2
  231. package/lib/store/combo.js +1 -1
  232. package/lib/store/crud.js +1 -1
  233. package/lib/store/form.js +1 -1
  234. package/lib/store/formItem.js +4 -2
  235. package/lib/store/iRenderer.js +1 -1
  236. package/lib/store/index.d.ts +0 -5
  237. package/lib/store/index.js +1 -16
  238. package/lib/store/list.js +1 -1
  239. package/lib/store/manager.js +1 -1
  240. package/lib/store/modal.js +1 -1
  241. package/lib/store/node.js +1 -1
  242. package/lib/store/pagination.js +1 -1
  243. package/lib/store/root.d.ts +4 -0
  244. package/lib/store/root.js +14 -2
  245. package/lib/store/service.js +1 -1
  246. package/lib/store/table-v2.js +1 -1
  247. package/lib/store/table.d.ts +2 -2
  248. package/lib/store/table.js +4 -9
  249. package/lib/theme.js +1 -1
  250. package/lib/types.d.ts +2 -2
  251. package/lib/utils/Animation.js +1 -1
  252. package/lib/utils/ColorScale.js +1 -1
  253. package/lib/utils/DataSchema.js +2 -6
  254. package/lib/utils/DataScope.js +1 -1
  255. package/lib/utils/RootClose.js +1 -1
  256. package/lib/utils/SimpleMap.js +1 -1
  257. package/lib/utils/api.d.ts +7 -0
  258. package/lib/utils/api.js +48 -5
  259. package/lib/utils/attachmentAdpator.js +1 -1
  260. package/lib/utils/autobind.js +1 -1
  261. package/lib/utils/columnsSplit.js +1 -1
  262. package/lib/utils/dataMapping.d.ts +6 -0
  263. package/lib/utils/dataMapping.js +16 -1
  264. package/lib/utils/date.js +1 -1
  265. package/lib/utils/debug.js +1 -1
  266. package/lib/utils/dom.js +1 -1
  267. package/lib/utils/errors.js +1 -1
  268. package/lib/utils/escapeHtml.js +1 -1
  269. package/lib/utils/filter-schema.js +1 -1
  270. package/lib/utils/filter.js +1 -1
  271. package/lib/utils/formatDuration.js +1 -1
  272. package/lib/utils/formula.js +1 -1
  273. package/lib/utils/getVariable.js +1 -1
  274. package/lib/utils/grammar.js +1 -1
  275. package/lib/utils/handleAction.js +1 -1
  276. package/lib/utils/helper.d.ts +27 -1
  277. package/lib/utils/helper.js +23 -5
  278. package/lib/utils/highlight.js +1 -1
  279. package/lib/utils/icon.js +1 -1
  280. package/lib/utils/image.js +1 -1
  281. package/lib/utils/isPureVariable.js +1 -1
  282. package/lib/utils/json-schema-2-amis-schema.js +1 -1
  283. package/lib/utils/keyToPath.js +1 -1
  284. package/lib/utils/makeSorter.js +1 -1
  285. package/lib/utils/normalizeLink.js +1 -1
  286. package/lib/utils/normalizeOptions.js +1 -1
  287. package/lib/utils/object.js +1 -1
  288. package/lib/utils/offset.js +1 -1
  289. package/lib/utils/offsetParent.js +1 -1
  290. package/lib/utils/optionValueCompare.js +1 -1
  291. package/lib/utils/position.d.ts +1 -1
  292. package/lib/utils/position.js +9 -1
  293. package/lib/utils/prettyBytes.js +1 -1
  294. package/lib/utils/renderer-event.js +1 -1
  295. package/lib/utils/replaceText.js +1 -1
  296. package/lib/utils/resize-sensor.js +1 -1
  297. package/lib/utils/resolveVariable.js +1 -1
  298. package/lib/utils/resolveVariableAndFilter.js +1 -1
  299. package/lib/utils/scrollPosition.d.ts +1 -1
  300. package/lib/utils/scrollPosition.js +1 -1
  301. package/lib/utils/string2regExp.js +1 -1
  302. package/lib/utils/stripNumber.js +1 -1
  303. package/lib/utils/style.js +1 -1
  304. package/lib/utils/tokenize.js +1 -1
  305. package/lib/utils/tpl-builtin.d.ts +2 -2
  306. package/lib/utils/tpl-builtin.js +1 -1
  307. package/lib/utils/tpl-lodash.js +1 -1
  308. package/lib/utils/tpl.js +1 -1
  309. package/lib/utils/uncontrollable.js +1 -1
  310. package/lib/utils/validations.js +1 -1
  311. package/package.json +6 -6
package/esm/store/app.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -118,9 +118,12 @@ var AppStore = ServiceStore.named('AppStore')
118
118
  findTree(self.pages, function (item, index, level, paths) {
119
119
  if (item.id === page.id) {
120
120
  bcn = paths.filter(function (item) { return item.path && item.label; });
121
+ if (env.showFullBreadcrumbPath) {
122
+ bcn = paths.filter(function (item) { return item.label; });
123
+ }
121
124
  bcn.push(__assign(__assign({}, item), { path: '' }));
122
125
  self.__;
123
- if (bcn[0].path !== '/') {
126
+ if (env.showBreadcrumbHomePath && bcn[0].path !== '/') {
124
127
  bcn.unshift({
125
128
  label: self.__('App.home'),
126
129
  path: '/'
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
package/esm/store/crud.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
package/esm/store/form.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -263,6 +263,7 @@ var FormItemStore = StoreNode.named('FormItemStore')
263
263
  if (group.items.some(function (item) {
264
264
  return item !== self &&
265
265
  self.tmpValue !== undefined &&
266
+ self.tmpValue !== '' &&
266
267
  item.value === self.tmpValue;
267
268
  })) {
268
269
  addError(self.__('Form.unique'));
@@ -310,7 +311,8 @@ var FormItemStore = StoreNode.named('FormItemStore')
310
311
  return childFirst;
311
312
  }
312
313
  }
313
- else if (option[self.valueField || 'value'] && !option.disabled) {
314
+ else if (option[self.valueField || 'value'] != null &&
315
+ !option.disabled) {
314
316
  return option;
315
317
  }
316
318
  }
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -15,9 +15,6 @@ import { IPaginationStore, PaginationStore } from './pagination';
15
15
  import { AppStore, IAppStore } from './app';
16
16
  export declare const RendererStore: import("mobx-state-tree").IModelType<{
17
17
  storeType: import("mobx-state-tree").IType<string | undefined, string, string>;
18
- } & {
19
- visibleState: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
20
- disableState: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
21
18
  }, {
22
19
  readonly fetcher: any;
23
20
  readonly notify: any;
@@ -108,8 +105,6 @@ export declare const RendererStore: import("mobx-state-tree").IModelType<{
108
105
  parentId?: string | undefined;
109
106
  }): IStoreNode;
110
107
  removeStore(store: IStoreNode): void;
111
- setVisible(id: string, value: boolean): void;
112
- setDisable(id: string, value: boolean): void;
113
108
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
114
109
  export declare type IRendererStore = Instance<typeof RendererStore>;
115
110
  export { iRendererStore, IIRendererStore };
@@ -1,9 +1,8 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
6
- import { __assign } from 'tslib';
7
6
  import { setLivelinessChecking, types, getEnv } from 'mobx-state-tree';
8
7
  export { iRendererStore } from './iRenderer.js';
9
8
  import { ServiceStore } from './service.js';
@@ -50,10 +49,6 @@ var allowedStoreList = [
50
49
  var RendererStore = types
51
50
  .model('RendererStore', {
52
51
  storeType: 'RendererStore'
53
- })
54
- .props({
55
- visibleState: types.optional(types.frozen(), {}),
56
- disableState: types.optional(types.frozen(), {})
57
52
  })
58
53
  .views(function (self) { return ({
59
54
  get fetcher() {
@@ -86,16 +81,6 @@ var RendererStore = types
86
81
  removeStore: function (store) {
87
82
  // store.dispose();
88
83
  removeStore(store);
89
- },
90
- setVisible: function (id, value) {
91
- var _a;
92
- var state = __assign(__assign({}, self.visibleState), (_a = {}, _a[id] = value, _a));
93
- self.visibleState = state;
94
- },
95
- setDisable: function (id, value) {
96
- var _a;
97
- var state = __assign(__assign({}, self.disableState), (_a = {}, _a[id] = value, _a));
98
- self.disableState = state;
99
84
  }
100
85
  }); });
101
86
  var RegisterStore = function (store) {
package/esm/store/list.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
package/esm/store/node.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -31,6 +31,8 @@ export declare const RootStore: import("mobx-state-tree").IModelType<{
31
31
  runtimeError: import("mobx-state-tree").IType<any, any, any>;
32
32
  runtimeErrorStack: import("mobx-state-tree").IType<any, any, any>;
33
33
  query: import("mobx-state-tree").IType<any, any, any>;
34
+ visibleState: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
35
+ disableState: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
34
36
  }, {
35
37
  readonly parentStore: any;
36
38
  readonly __: any;
@@ -75,5 +77,7 @@ export declare const RootStore: import("mobx-state-tree").IModelType<{
75
77
  } & {
76
78
  setRuntimeError(error: any, errorStack: any): void;
77
79
  updateLocation(location?: any): void;
80
+ setVisible(id: string, value: boolean): void;
81
+ setDisable(id: string, value: boolean): void;
78
82
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
79
83
  export declare type IRootStore = Instance<typeof RootStore>;
package/esm/store/root.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -13,7 +13,9 @@ var RootStore = ServiceStore.named('RootStore')
13
13
  .props({
14
14
  runtimeError: types.frozen(),
15
15
  runtimeErrorStack: types.frozen(),
16
- query: types.frozen()
16
+ query: types.frozen(),
17
+ visibleState: types.optional(types.frozen(), {}),
18
+ disableState: types.optional(types.frozen(), {})
17
19
  })
18
20
  .views(function (self) { return ({
19
21
  get downStream() {
@@ -35,6 +37,16 @@ var RootStore = ServiceStore.named('RootStore')
35
37
  (window.location.search &&
36
38
  qsparse(window.location.search.substring(1)));
37
39
  self.query = query;
40
+ },
41
+ setVisible: function (id, value) {
42
+ var _a;
43
+ var state = __assign(__assign({}, self.visibleState), (_a = {}, _a[id] = value, _a));
44
+ self.visibleState = state;
45
+ },
46
+ setDisable: function (id, value) {
47
+ var _a;
48
+ var state = __assign(__assign({}, self.disableState), (_a = {}, _a[id] = value, _a));
49
+ self.disableState = state;
38
50
  }
39
51
  }); });
40
52
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -186,7 +186,7 @@ export declare const TableStore: import("mobx-state-tree").IModelType<{
186
186
  expandedRows: import("mobx-state-tree").IArrayType<import("mobx-state-tree").ISimpleType<string>>;
187
187
  primaryField: import("mobx-state-tree").IType<string | undefined, string, string>;
188
188
  orderBy: import("mobx-state-tree").IType<string | undefined, string, string>;
189
- orderDir: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ITypeUnion<"desc" | "asc", "desc" | "asc", "desc" | "asc">, [undefined]>;
189
+ orderDir: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ITypeUnion<"" | "desc" | "asc", "" | "desc" | "asc", "" | "desc" | "asc">, [undefined]>;
190
190
  draggable: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
191
191
  dragging: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
192
192
  selectable: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
@@ -9939,7 +9939,7 @@ export declare const TableStore: import("mobx-state-tree").IModelType<{
9939
9939
  toggleExpanded: (row: IRow) => void;
9940
9940
  collapseAllAtDepth: (depth: number) => void;
9941
9941
  clear: () => void;
9942
- setOrderByInfo: (key: string, direction: 'asc' | 'desc') => void;
9942
+ setOrderByInfo: (key: string, direction: 'asc' | 'desc' | '') => void;
9943
9943
  reset: () => void;
9944
9944
  toggleDragging: () => void;
9945
9945
  stopDragging: () => void;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -209,7 +209,7 @@ var TableStore = iRendererStore
209
209
  expandedRows: types.array(types.string),
210
210
  primaryField: 'id',
211
211
  orderBy: '',
212
- orderDir: types.optional(types.union(types.literal('asc'), types.literal('desc')), 'asc'),
212
+ orderDir: types.optional(types.union(types.literal('asc'), types.literal('desc'), types.literal('')), 'asc'),
213
213
  draggable: false,
214
214
  dragging: false,
215
215
  selectable: false,
@@ -375,10 +375,6 @@ var TableStore = iRendererStore
375
375
  has: [columns[0]]
376
376
  }
377
377
  ];
378
- // 如果是勾选栏,让它和下一列合并。
379
- if (columns[0].type === '__checkme' && columns[1]) {
380
- groups[0].label = columns[1].groupName;
381
- }
382
378
  // 用户是否启用了 groupName
383
379
  var hasGroupName = columns.some(function (column) { return column.groupName; });
384
380
  for (var i = 1; i < len; i++) {
@@ -684,8 +680,7 @@ var TableStore = iRendererStore
684
680
  ? 1
685
681
  : 0);
686
682
  var keys = [];
687
- var len = columns.length;
688
- for (var i = 0; i < len; i++) {
683
+ for (var i = 0; i < maxCount; i++) {
689
684
  var column = columns[i];
690
685
  // maxCount 可能比实际配置的 columns 还有多。
691
686
  if (!column) {
@@ -958,7 +953,7 @@ var TableStore = iRendererStore
958
953
  }
959
954
  function setOrderByInfo(key, direction) {
960
955
  self.orderBy = key;
961
- self.orderDir = direction;
956
+ self.orderDir = key ? direction : '';
962
957
  }
963
958
  function reset() {
964
959
  self.rows.forEach(function (item) { return item.reset(); });
package/esm/theme.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
package/esm/types.d.ts CHANGED
@@ -63,7 +63,7 @@ export interface BaseApiObject {
63
63
  /**
64
64
  * API 发送类型
65
65
  */
66
- method?: 'get' | 'post' | 'put' | 'delete' | 'patch' | 'jsonp';
66
+ method?: 'get' | 'post' | 'put' | 'delete' | 'patch' | 'jsonp' | 'js';
67
67
  /**
68
68
  * API 发送目标地址
69
69
  */
@@ -195,7 +195,7 @@ export interface fetcherResult {
195
195
  headers: object;
196
196
  }
197
197
  export interface fetchOptions {
198
- method?: 'get' | 'post' | 'put' | 'patch' | 'delete' | 'jsonp';
198
+ method?: 'get' | 'post' | 'put' | 'patch' | 'delete' | 'jsonp' | 'js';
199
199
  successMessage?: string;
200
200
  errorMessage?: string;
201
201
  autoAppend?: boolean;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -67,11 +67,7 @@ var DataSchema = /** @class */ (function () {
67
67
  };
68
68
  DataSchema.prototype.getScope = function (idOrScope) {
69
69
  var id = typeof idOrScope === 'string' ? idOrScope : idOrScope.id;
70
- var scope = this.idMap[id];
71
- if (!scope) {
72
- throw new Error('scope not found!');
73
- }
74
- return scope;
70
+ return this.idMap[id];
75
71
  };
76
72
  DataSchema.prototype.switchToRoot = function () {
77
73
  this.current = this.root;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -15,7 +15,14 @@ export declare function str2AsyncFunction(contents: string, ...args: Array<strin
15
15
  export declare function responseAdaptor(ret: fetcherResult, api: ApiObject): Payload;
16
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>;
17
17
  export declare function wrapAdaptor(promise: Promise<fetcherResult>, api: ApiObject): Promise<Payload>;
18
+ /**
19
+ * 请求远程 js 文件然后 new Function 执行,用于 schemaApi 支持 JavaScript
20
+ * @param api
21
+ * @returns
22
+ */
23
+ export declare function jsFetcher(fetcher: (config: fetcherConfig) => Promise<fetcherResult>, api: ApiObject): Promise<fetcherResult>;
18
24
  export declare function jsonpFetcher(api: ApiObject): Promise<fetcherResult>;
25
+ export declare function isApiOutdatedWithData(prevApi: Api | undefined, nextApi: Api | undefined, prevData: any, nextData: any): nextApi is Api;
19
26
  export declare function isApiOutdated(prevApi: Api | undefined, nextApi: Api | undefined, prevData: any, nextData: any): nextApi is Api;
20
27
  export declare function isValidApi(api: string): boolean | "";
21
28
  export declare function isEffectiveApi(api?: Api, data?: any, initFetch?: boolean, initFetchOn?: string): api is Api;
package/esm/utils/api.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -17,7 +17,7 @@ import { qsparse, JSONTraverse, qsstringify, hasFile, object2formData, uuid, isO
17
17
  import isPlainObject from 'lodash/isPlainObject';
18
18
  import { debug, warning } from './debug.js';
19
19
 
20
- var rSchema = /(?:^|raw\:)(get|post|put|delete|patch|options|head|jsonp):/i;
20
+ var rSchema = /(?:^|raw\:)(get|post|put|delete|patch|options|head|jsonp|js):/i;
21
21
  var apiCaches = [];
22
22
  var isIE = !!document.documentMode;
23
23
  function normalizeApi(api, defaultMethod) {
@@ -123,7 +123,7 @@ function buildApi(api, data, options) {
123
123
  api.body = api.data = cloneObject(data);
124
124
  }
125
125
  // get 类请求,把 data 附带到 url 上。
126
- if (api.method === 'get' || api.method === 'jsonp') {
126
+ if (api.method === 'get' || api.method === 'jsonp' || api.method === 'js') {
127
127
  if (!api.data &&
128
128
  ((!~raw.indexOf('$') && autoAppend) || api.forceAppendDataToQuery)) {
129
129
  api.query = api.data = data;
@@ -296,7 +296,7 @@ function responseAdaptor(ret, api) {
296
296
  }
297
297
  function wrapFetcher(fn, tracker) {
298
298
  return function (api, data, options) {
299
- var _a, _b;
299
+ var _a, _b, _c;
300
300
  api = buildApi(api, data, options);
301
301
  if (api.requestAdaptor) {
302
302
  debug('api', 'before requestAdaptor', api);
@@ -332,6 +332,9 @@ function wrapFetcher(fn, tracker) {
332
332
  if (((_a = api.method) === null || _a === void 0 ? void 0 : _a.toLocaleLowerCase()) === 'jsonp') {
333
333
  return wrapAdaptor(jsonpFetcher(api), api);
334
334
  }
335
+ if (((_b = api.method) === null || _b === void 0 ? void 0 : _b.toLocaleLowerCase()) === 'js') {
336
+ return wrapAdaptor(jsFetcher(fn, api), api);
337
+ }
335
338
  if (typeof api.cache === 'number' && api.cache > 0) {
336
339
  var apiCache = getApiCache(api);
337
340
  return wrapAdaptor(apiCache
@@ -339,7 +342,7 @@ function wrapFetcher(fn, tracker) {
339
342
  : setApiCache(api, fn(api)), api);
340
343
  }
341
344
  // IE 下 get 请求会被缓存,所以自动加个时间戳
342
- if (isIE && api && ((_b = api.method) === null || _b === void 0 ? void 0 : _b.toLocaleLowerCase()) === 'get') {
345
+ if (isIE && api && ((_c = api.method) === null || _c === void 0 ? void 0 : _c.toLocaleLowerCase()) === 'get') {
343
346
  var timeStamp = "_t=".concat(Date.now());
344
347
  if (api.url.indexOf('?') === -1) {
345
348
  api.url = api.url + "?".concat(timeStamp);
@@ -377,6 +380,34 @@ function wrapAdaptor(promise, api) {
377
380
  .then(function (ret) { return responseAdaptor(ret, api); })
378
381
  : promise.then(function (ret) { return responseAdaptor(ret, api); });
379
382
  }
383
+ /**
384
+ * 请求远程 js 文件然后 new Function 执行,用于 schemaApi 支持 JavaScript
385
+ * @param api
386
+ * @returns
387
+ */
388
+ function jsFetcher(fetcher, api) {
389
+ return new Promise(function (resolve, reject) {
390
+ // 大概也不会有人用 post
391
+ api.method = 'get';
392
+ fetcher(api).then(function (response) {
393
+ if (typeof response.data === 'string') {
394
+ var result = new Function('api', response.data)(api);
395
+ resolve({
396
+ status: 200,
397
+ headers: {},
398
+ data: {
399
+ status: 0,
400
+ msg: '',
401
+ data: result
402
+ }
403
+ });
404
+ }
405
+ else {
406
+ reject('must return string: ' + response.data);
407
+ }
408
+ });
409
+ });
410
+ }
380
411
  function jsonpFetcher(api) {
381
412
  return new Promise(function (resolve, reject) {
382
413
  var _a;
@@ -428,6 +459,16 @@ function jsonpFetcher(api) {
428
459
  document.head.appendChild(script);
429
460
  });
430
461
  }
462
+ // 避免在 isApiOutdated 中修改,减少影响
463
+ function isApiOutdatedWithData(prevApi, nextApi, prevData, nextData) {
464
+ if (!nextApi) {
465
+ return false;
466
+ }
467
+ else if (!prevApi) {
468
+ return true;
469
+ }
470
+ return isObjectShallowModified(buildApi(normalizeApi(prevApi), prevData), buildApi(normalizeApi(nextApi), nextData));
471
+ }
431
472
  function isApiOutdated(prevApi, nextApi, prevData, nextData) {
432
473
  var _a;
433
474
  if (!nextApi) {
@@ -532,4 +573,4 @@ function normalizeApiResponseData(data) {
532
573
  }
533
574
  // window.apiCaches = apiCaches;
534
575
 
535
- export { buildApi, clearApiCache, getApiCache, isApiOutdated, isEffectiveApi, isSameApi, isValidApi, jsonpFetcher, normalizeApi, normalizeApiResponseData, responseAdaptor, setApiCache, str2AsyncFunction, str2function, wrapAdaptor, wrapFetcher };
576
+ export { buildApi, clearApiCache, getApiCache, isApiOutdated, isApiOutdatedWithData, isEffectiveApi, isSameApi, isValidApi, jsFetcher, jsonpFetcher, normalizeApi, normalizeApiResponseData, responseAdaptor, setApiCache, str2AsyncFunction, str2function, wrapAdaptor, wrapFetcher };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,3 +1,9 @@
1
1
  import { PlainObject } from '../types';
2
2
  export declare function resolveMapping(value: any, data: PlainObject, defaultFilter?: string): any;
3
+ /**
4
+ * 遍历对象,对每个字符串 key 进行数据映射
5
+ * @param value 要映射的对象
6
+ * @param data 数据上下文
7
+ */
8
+ export declare function resolveMappingObject(value: PlainObject, data: PlainObject): PlainObject;
3
9
  export declare function dataMapping(to: any, from?: PlainObject, ignoreFunction?: boolean | ((key: string, value: any) => boolean), convertKeyToPath?: boolean): any;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -18,6 +18,20 @@ function resolveMapping(value, data, defaultFilter) {
18
18
  ? tokenize(value, data, defaultFilter)
19
19
  : value;
20
20
  }
21
+ /**
22
+ * 遍历对象,对每个字符串 key 进行数据映射
23
+ * @param value 要映射的对象
24
+ * @param data 数据上下文
25
+ */
26
+ function resolveMappingObject(value, data) {
27
+ for (var _i = 0, _a = Object.keys(value); _i < _a.length; _i++) {
28
+ var key = _a[_i];
29
+ if (typeof value[key] === 'string') {
30
+ value[key] = resolveMapping(value[key], data);
31
+ }
32
+ }
33
+ return value;
34
+ }
21
35
  function dataMapping(to, from, ignoreFunction, convertKeyToPath) {
22
36
  if (from === void 0) { from = {}; }
23
37
  if (ignoreFunction === void 0) { ignoreFunction = false; }
@@ -124,4 +138,4 @@ function dataMapping(to, from, ignoreFunction, convertKeyToPath) {
124
138
  return ret;
125
139
  }
126
140
 
127
- export { dataMapping, resolveMapping };
141
+ export { dataMapping, resolveMapping, resolveMappingObject };
package/esm/utils/date.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
package/esm/utils/dom.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v2.0.0
2
+ * amis-core v2.1.0
3
3
  * Copyright 2018-2022 fex
4
4
  */
5
5