amis-core 6.9.0 → 6.10.0-beta.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 (307) hide show
  1. package/esm/Root.js +1 -1
  2. package/esm/RootRenderer.js +4 -2
  3. package/esm/SchemaRenderer.d.ts +1 -0
  4. package/esm/SchemaRenderer.js +8 -4
  5. package/esm/Scoped.d.ts +1 -1
  6. package/esm/Scoped.js +1 -1
  7. package/esm/StatusScoped.js +1 -1
  8. package/esm/StyleManager.js +1 -1
  9. package/esm/WithRootStore.js +1 -1
  10. package/esm/WithStore.js +1 -1
  11. package/esm/actions/Action.js +4 -1
  12. package/esm/actions/AjaxAction.js +1 -1
  13. package/esm/actions/BreakAction.js +1 -1
  14. package/esm/actions/BroadcastAction.d.ts +1 -1
  15. package/esm/actions/BroadcastAction.js +6 -6
  16. package/esm/actions/CmptAction.d.ts +1 -0
  17. package/esm/actions/CmptAction.js +51 -51
  18. package/esm/actions/ContinueAction.js +1 -1
  19. package/esm/actions/CopyAction.js +1 -1
  20. package/esm/actions/CustomAction.js +1 -1
  21. package/esm/actions/DialogAction.js +1 -1
  22. package/esm/actions/DrawerAction.js +1 -1
  23. package/esm/actions/EmailAction.js +1 -1
  24. package/esm/actions/EventAction.js +1 -1
  25. package/esm/actions/LinkAction.js +1 -1
  26. package/esm/actions/LoopAction.js +1 -1
  27. package/esm/actions/PageAction.js +1 -1
  28. package/esm/actions/ParallelAction.js +1 -1
  29. package/esm/actions/PrintAction.js +1 -1
  30. package/esm/actions/StatusAction.js +1 -1
  31. package/esm/actions/SwitchAction.js +1 -1
  32. package/esm/actions/ToastAction.js +1 -1
  33. package/esm/actions/WaitAction.js +1 -1
  34. package/esm/components/CustomStyle.js +1 -1
  35. package/esm/components/ErrorBoundary.js +1 -1
  36. package/esm/components/LazyComponent.js +1 -1
  37. package/esm/components/Overlay.js +13 -16
  38. package/esm/components/PopOver.js +2 -2
  39. package/esm/env.js +1 -1
  40. package/esm/envOverwrite.js +1 -1
  41. package/esm/factory.d.ts +1 -1
  42. package/esm/factory.js +5 -3
  43. package/esm/index.d.ts +4 -3
  44. package/esm/index.js +10 -9
  45. package/esm/locale.js +1 -1
  46. package/esm/polyfills.js +1 -1
  47. package/esm/renderers/Form.js +1 -1
  48. package/esm/renderers/Item.d.ts +1 -0
  49. package/esm/renderers/Item.js +2 -2
  50. package/esm/renderers/Options.d.ts +46 -1
  51. package/esm/renderers/Options.js +921 -914
  52. package/esm/renderers/Placeholder.js +1 -1
  53. package/esm/renderers/builtin.js +1 -1
  54. package/esm/renderers/register.js +1 -1
  55. package/esm/renderers/wrapControl.d.ts +2 -1
  56. package/esm/renderers/wrapControl.js +3 -3
  57. package/esm/store/app.js +1 -1
  58. package/esm/store/combo.js +1 -1
  59. package/esm/store/crud.d.ts +4 -2
  60. package/esm/store/crud.js +39 -141
  61. package/esm/store/form.js +1 -1
  62. package/esm/store/formItem.js +2 -2
  63. package/esm/store/iRenderer.js +1 -1
  64. package/esm/store/index.js +1 -1
  65. package/esm/store/list.js +1 -1
  66. package/esm/store/manager.js +1 -1
  67. package/esm/store/modal.js +1 -1
  68. package/esm/store/node.js +1 -1
  69. package/esm/store/pagination.js +1 -1
  70. package/esm/store/root.js +1 -1
  71. package/esm/store/service.js +1 -1
  72. package/esm/store/status.js +1 -1
  73. package/esm/store/table.js +1 -1
  74. package/esm/store/table2.js +1 -1
  75. package/esm/theme.js +1 -1
  76. package/esm/utils/Animation.js +1 -1
  77. package/esm/utils/ColorScale.js +1 -1
  78. package/esm/utils/DataSchema.js +1 -1
  79. package/esm/utils/DataScope.js +1 -1
  80. package/esm/utils/RootClose.js +1 -1
  81. package/esm/utils/SimpleMap.js +1 -1
  82. package/esm/utils/animations.js +1 -1
  83. package/esm/utils/api.d.ts +2 -1
  84. package/esm/utils/api.js +6 -4
  85. package/esm/utils/arraySlice.js +1 -1
  86. package/esm/utils/attachmentAdpator.js +4 -1
  87. package/esm/utils/autobind.js +1 -1
  88. package/esm/utils/browser.js +1 -1
  89. package/esm/utils/columnsSplit.js +1 -1
  90. package/esm/utils/concatData.js +1 -1
  91. package/esm/utils/dataMapping.js +1 -1
  92. package/esm/utils/date.js +1 -1
  93. package/esm/utils/debug.d.ts +3 -3
  94. package/esm/utils/debug.js +104 -37
  95. package/esm/utils/decodeEntity.js +1 -1
  96. package/esm/utils/dom.js +1 -1
  97. package/esm/utils/errors.js +1 -1
  98. package/esm/utils/escapeHtml.js +1 -1
  99. package/esm/utils/filter-schema.js +1 -1
  100. package/esm/utils/filter.js +1 -1
  101. package/esm/utils/formatDuration.js +1 -1
  102. package/esm/utils/formula.js +1 -1
  103. package/esm/utils/getVariable.js +1 -1
  104. package/esm/utils/grammar.js +1 -1
  105. package/esm/utils/handleAction.js +1 -1
  106. package/esm/utils/helper.d.ts +7 -0
  107. package/esm/utils/helper.js +87 -2
  108. package/esm/utils/highlight.js +1 -1
  109. package/esm/utils/icon.js +1 -1
  110. package/esm/utils/image.js +1 -1
  111. package/esm/utils/index.d.ts +1 -0
  112. package/esm/utils/isPureVariable.js +1 -1
  113. package/esm/utils/json-schema-2-amis-schema.js +1 -1
  114. package/esm/utils/keyToPath.js +1 -1
  115. package/esm/utils/labelToString.js +1 -1
  116. package/esm/utils/loopTooMuch.d.ts +1 -0
  117. package/esm/utils/loopTooMuch.js +27 -0
  118. package/esm/utils/makeSorter.js +1 -1
  119. package/esm/utils/math.js +1 -1
  120. package/esm/utils/memoryParse.js +1 -1
  121. package/esm/utils/normalizeLink.js +1 -1
  122. package/esm/utils/normalizeOptions.js +1 -1
  123. package/esm/utils/object.js +1 -1
  124. package/esm/utils/offset.js +1 -1
  125. package/esm/utils/offsetParent.js +1 -1
  126. package/esm/utils/optionValueCompare.js +1 -1
  127. package/esm/utils/position.js +11 -6
  128. package/esm/utils/prettyBytes.js +1 -1
  129. package/esm/utils/printElement.js +1 -1
  130. package/esm/utils/renderer-event.d.ts +4 -0
  131. package/esm/utils/renderer-event.js +97 -11
  132. package/esm/utils/replaceText.js +1 -1
  133. package/esm/utils/resize-sensor.js +1 -1
  134. package/esm/utils/resolveCondition.js +1 -1
  135. package/esm/utils/resolveVariable.js +1 -1
  136. package/esm/utils/resolveVariableAndFilter.js +1 -1
  137. package/esm/utils/resolveVariableAndFilterForAsync.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-helper.js +1 -1
  142. package/esm/utils/style.js +1 -1
  143. package/esm/utils/toNumber.js +1 -1
  144. package/esm/utils/tokenize.js +1 -1
  145. package/esm/utils/tpl-builtin.js +1 -1
  146. package/esm/utils/tpl-lodash.js +1 -1
  147. package/esm/utils/tpl.js +1 -1
  148. package/esm/utils/uncontrollable.js +1 -1
  149. package/esm/utils/validateId.js +1 -1
  150. package/esm/utils/validations.js +5 -3
  151. package/esm/utils/visitedCache.js +1 -1
  152. package/lib/Root.js +1 -1
  153. package/lib/RootRenderer.d.ts +1 -1
  154. package/lib/RootRenderer.js +4 -2
  155. package/lib/SchemaRenderer.d.ts +1 -0
  156. package/lib/SchemaRenderer.js +7 -3
  157. package/lib/Scoped.d.ts +1 -1
  158. package/lib/Scoped.js +1 -1
  159. package/lib/StatusScoped.js +1 -1
  160. package/lib/StyleManager.js +1 -1
  161. package/lib/WithRootStore.js +1 -1
  162. package/lib/WithStore.js +1 -1
  163. package/lib/actions/Action.js +4 -1
  164. package/lib/actions/AjaxAction.js +1 -1
  165. package/lib/actions/BreakAction.js +1 -1
  166. package/lib/actions/BroadcastAction.d.ts +1 -1
  167. package/lib/actions/BroadcastAction.js +5 -5
  168. package/lib/actions/CmptAction.d.ts +1 -0
  169. package/lib/actions/CmptAction.js +50 -50
  170. package/lib/actions/ContinueAction.js +1 -1
  171. package/lib/actions/CopyAction.js +1 -1
  172. package/lib/actions/CustomAction.js +1 -1
  173. package/lib/actions/DialogAction.js +1 -1
  174. package/lib/actions/DrawerAction.js +1 -1
  175. package/lib/actions/EmailAction.js +1 -1
  176. package/lib/actions/EventAction.js +1 -1
  177. package/lib/actions/LinkAction.js +1 -1
  178. package/lib/actions/LoopAction.js +1 -1
  179. package/lib/actions/PageAction.js +1 -1
  180. package/lib/actions/ParallelAction.js +1 -1
  181. package/lib/actions/PrintAction.js +1 -1
  182. package/lib/actions/StatusAction.js +1 -1
  183. package/lib/actions/SwitchAction.js +1 -1
  184. package/lib/actions/ToastAction.js +1 -1
  185. package/lib/actions/WaitAction.js +1 -1
  186. package/lib/components/CustomStyle.js +1 -1
  187. package/lib/components/ErrorBoundary.js +1 -1
  188. package/lib/components/LazyComponent.js +1 -1
  189. package/lib/components/Overlay.js +11 -14
  190. package/lib/components/PopOver.js +2 -2
  191. package/lib/env.js +1 -1
  192. package/lib/envOverwrite.js +1 -1
  193. package/lib/factory.d.ts +1 -1
  194. package/lib/factory.js +5 -3
  195. package/lib/index.d.ts +4 -3
  196. package/lib/index.js +14 -5
  197. package/lib/locale.js +1 -1
  198. package/lib/polyfills.js +1 -1
  199. package/lib/renderers/Form.js +1 -1
  200. package/lib/renderers/Item.d.ts +1 -0
  201. package/lib/renderers/Item.js +2 -2
  202. package/lib/renderers/Options.d.ts +46 -1
  203. package/lib/renderers/Options.js +920 -912
  204. package/lib/renderers/Placeholder.js +1 -1
  205. package/lib/renderers/builtin.js +1 -1
  206. package/lib/renderers/register.js +1 -1
  207. package/lib/renderers/wrapControl.d.ts +2 -1
  208. package/lib/renderers/wrapControl.js +3 -3
  209. package/lib/store/app.js +1 -1
  210. package/lib/store/combo.d.ts +25 -24
  211. package/lib/store/combo.js +1 -1
  212. package/lib/store/crud.d.ts +4 -2
  213. package/lib/store/crud.js +37 -139
  214. package/lib/store/form.d.ts +11 -10
  215. package/lib/store/form.js +1 -1
  216. package/lib/store/formItem.js +2 -2
  217. package/lib/store/iRenderer.js +1 -1
  218. package/lib/store/index.js +1 -1
  219. package/lib/store/list.js +1 -1
  220. package/lib/store/manager.js +1 -1
  221. package/lib/store/modal.js +1 -1
  222. package/lib/store/node.js +1 -1
  223. package/lib/store/pagination.js +1 -1
  224. package/lib/store/root.js +1 -1
  225. package/lib/store/service.js +1 -1
  226. package/lib/store/status.js +1 -1
  227. package/lib/store/table.d.ts +21 -20
  228. package/lib/store/table.js +1 -1
  229. package/lib/store/table2.js +1 -1
  230. package/lib/theme.js +1 -1
  231. package/lib/utils/Animation.js +1 -1
  232. package/lib/utils/ColorScale.js +1 -1
  233. package/lib/utils/DataSchema.js +1 -1
  234. package/lib/utils/DataScope.js +1 -1
  235. package/lib/utils/RootClose.js +1 -1
  236. package/lib/utils/SimpleMap.js +1 -1
  237. package/lib/utils/animations.js +1 -1
  238. package/lib/utils/api.d.ts +2 -1
  239. package/lib/utils/api.js +5 -2
  240. package/lib/utils/arraySlice.js +1 -1
  241. package/lib/utils/attachmentAdpator.js +4 -1
  242. package/lib/utils/autobind.js +1 -1
  243. package/lib/utils/browser.js +1 -1
  244. package/lib/utils/columnsSplit.js +1 -1
  245. package/lib/utils/concatData.js +1 -1
  246. package/lib/utils/dataMapping.js +1 -1
  247. package/lib/utils/date.js +1 -1
  248. package/lib/utils/debug.d.ts +3 -3
  249. package/lib/utils/debug.js +103 -36
  250. package/lib/utils/decodeEntity.js +1 -1
  251. package/lib/utils/dom.js +1 -1
  252. package/lib/utils/errors.js +1 -1
  253. package/lib/utils/escapeHtml.js +1 -1
  254. package/lib/utils/filter-schema.js +1 -1
  255. package/lib/utils/filter.js +1 -1
  256. package/lib/utils/formatDuration.js +1 -1
  257. package/lib/utils/formula.js +1 -1
  258. package/lib/utils/getVariable.js +1 -1
  259. package/lib/utils/grammar.js +1 -1
  260. package/lib/utils/handleAction.js +1 -1
  261. package/lib/utils/helper.d.ts +7 -0
  262. package/lib/utils/helper.js +87 -1
  263. package/lib/utils/highlight.js +1 -1
  264. package/lib/utils/icon.js +1 -1
  265. package/lib/utils/image.js +1 -1
  266. package/lib/utils/index.d.ts +1 -0
  267. package/lib/utils/isPureVariable.js +1 -1
  268. package/lib/utils/json-schema-2-amis-schema.js +1 -1
  269. package/lib/utils/keyToPath.js +1 -1
  270. package/lib/utils/labelToString.js +1 -1
  271. package/lib/utils/loopTooMuch.d.ts +1 -0
  272. package/lib/utils/loopTooMuch.js +31 -0
  273. package/lib/utils/makeSorter.js +1 -1
  274. package/lib/utils/math.js +1 -1
  275. package/lib/utils/memoryParse.js +1 -1
  276. package/lib/utils/normalizeLink.js +1 -1
  277. package/lib/utils/normalizeOptions.js +1 -1
  278. package/lib/utils/object.js +1 -1
  279. package/lib/utils/offset.js +1 -1
  280. package/lib/utils/offsetParent.js +1 -1
  281. package/lib/utils/optionValueCompare.js +1 -1
  282. package/lib/utils/position.js +11 -6
  283. package/lib/utils/prettyBytes.js +1 -1
  284. package/lib/utils/printElement.js +1 -1
  285. package/lib/utils/renderer-event.d.ts +4 -0
  286. package/lib/utils/renderer-event.js +99 -10
  287. package/lib/utils/replaceText.js +1 -1
  288. package/lib/utils/resize-sensor.js +1 -1
  289. package/lib/utils/resolveCondition.js +1 -1
  290. package/lib/utils/resolveVariable.js +1 -1
  291. package/lib/utils/resolveVariableAndFilter.js +1 -1
  292. package/lib/utils/resolveVariableAndFilterForAsync.js +1 -1
  293. package/lib/utils/scrollPosition.js +1 -1
  294. package/lib/utils/string2regExp.js +1 -1
  295. package/lib/utils/stripNumber.js +1 -1
  296. package/lib/utils/style-helper.js +1 -1
  297. package/lib/utils/style.js +1 -1
  298. package/lib/utils/toNumber.js +1 -1
  299. package/lib/utils/tokenize.js +1 -1
  300. package/lib/utils/tpl-builtin.js +1 -1
  301. package/lib/utils/tpl-lodash.js +1 -1
  302. package/lib/utils/tpl.js +1 -1
  303. package/lib/utils/uncontrollable.js +1 -1
  304. package/lib/utils/validateId.js +1 -1
  305. package/lib/utils/validations.js +5 -3
  306. package/lib/utils/visitedCache.js +1 -1
  307. package/package.json +5 -4
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -3,6 +3,7 @@ import { IFormStore, IFormItemStore } from '../store/form';
3
3
  import { RendererProps } from '../factory';
4
4
  import { IIRendererStore } from '../store';
5
5
  import hoistNonReactStatic from 'hoist-non-react-statics';
6
+ import { FormItemConfig } from './Item';
6
7
  import { Api, DataChangeReason } from '../types';
7
8
  export interface ControlOutterProps extends RendererProps {
8
9
  formStore?: IFormStore;
@@ -49,7 +50,7 @@ export interface ControlProps {
49
50
  onChange?: (value: any, name: string, submit: boolean) => void;
50
51
  store: IIRendererStore;
51
52
  }
52
- export declare function wrapControl<T extends React.ComponentType<React.ComponentProps<T> & ControlProps>>(ComposedComponent: T): {
53
+ export declare function wrapControl<T extends React.ComponentType<React.ComponentProps<T> & ControlProps>>(config: Omit<FormItemConfig, 'component'>, ComposedComponent: T): {
53
54
  new (props: Omit<any, "rootStore">): {
54
55
  ref: any;
55
56
  getWrappedInstance(): any;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -54,7 +54,7 @@ import '../utils/resolveCondition.js';
54
54
  import 'mobx';
55
55
  import '../utils/Animation.js';
56
56
 
57
- function wrapControl(ComposedComponent) {
57
+ function wrapControl(config, ComposedComponent) {
58
58
  var _a;
59
59
  var result = hoistNonReactStatic(withRootStore(observer((_a = /** @class */ (function (_super) {
60
60
  __extends(class_1, _super);
@@ -91,7 +91,7 @@ function wrapControl(ComposedComponent) {
91
91
  var model = rootStore.addStore({
92
92
  id: guid(),
93
93
  path: _this.props.$path,
94
- storeType: FormItemStore.name,
94
+ storeType: config.formItemStoreType || FormItemStore.name,
95
95
  parentId: store === null || store === void 0 ? void 0 : store.id,
96
96
  name: name,
97
97
  colIndex: colIndex !== undefined ? colIndex : undefined,
package/esm/store/app.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -127,6 +127,8 @@ export declare const CRUDStore: import("mobx-state-tree").IModelType<{
127
127
  loadDataMode?: boolean;
128
128
  syncResponse2Query?: boolean;
129
129
  columns?: Array<any>;
130
+ matchFunc?: MatchFunc;
131
+ filterOnAllColumns?: boolean;
130
132
  isTable2?: Boolean;
131
133
  }) => Promise<any>;
132
134
  changePage: (page: number | string, perPage?: number | string) => void;
@@ -139,8 +141,8 @@ export declare const CRUDStore: import("mobx-state-tree").IModelType<{
139
141
  setUnSelectedItems: (items: Array<any>) => void;
140
142
  setInnerModalOpened: (value: boolean) => void;
141
143
  initFromScope: (scope: any, source: string, options: {
142
- columns?: any[] | undefined;
143
- matchFunc?: MatchFunc | null | undefined;
144
+ columns?: Array<any>;
145
+ matchFunc?: MatchFunc | null;
144
146
  }) => void;
145
147
  exportAsCSV: (options?: {
146
148
  loadDataOnce?: boolean | undefined;
package/esm/store/crud.js CHANGED
@@ -1,25 +1,23 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
6
- import { __extends, __assign, __generator, __rest, __values, __spreadArray, __read, __awaiter } from 'tslib';
6
+ import { __extends, __assign, __generator, __rest, __values, __awaiter } from 'tslib';
7
7
  import { saveAs } from 'file-saver';
8
8
  import { types, flow, getEnv, isAlive } from 'mobx-state-tree';
9
9
  import { ServiceStore } from './service.js';
10
- import { sortArray, isEmpty, isObjectShallowModified, qsstringify } from '../utils/helper.js';
10
+ import { applyFilters, sortArray, isEmpty, isObjectShallowModified, qsstringify } from '../utils/helper.js';
11
11
  import pick from 'lodash/pick';
12
12
  import 'amis-formula';
13
13
  import 'moment';
14
14
  import { createObject, extendObject } from '../utils/object.js';
15
15
  import '../utils/memoryParse.js';
16
16
  import '@rc-component/mini-decimal';
17
- import { getVariable } from '../utils/getVariable.js';
18
17
  import { resolveVariableAndFilter } from '../utils/resolveVariableAndFilter.js';
19
18
  import 'lodash/isPlainObject';
20
19
  import '../utils/filter.js';
21
20
  import { normalizeApiResponseData } from '../utils/api.js';
22
- import { matchSorter } from 'match-sorter';
23
21
  import { filter } from '../utils/tpl.js';
24
22
  import { TableStore } from './table.js';
25
23
 
@@ -124,7 +122,7 @@ var CRUDStore = ServiceStore.named('CRUDStore')
124
122
  }
125
123
  }
126
124
  var fetchInitData = flow(function getInitData(api, data, options) {
127
- var matchFunc, items_1, dir, data_1, ctx, json, result, total, count, page, hasNext, oItems, oRows, columns, rest, items, _a, _b, key, rowsData, data_2, filteredItems_1, dir, e_1, env;
125
+ var rawItems, matchFunc, items, dir, data_1, ctx, json, result, total, count, page, hasNext, oItems, oRows, columns, rest, items, _a, _b, key, rowsData, data_2, filteredItems, dir, e_1, env;
128
126
  var _c, e_2, _d;
129
127
  var _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
130
128
  if (options === void 0) { options = {}; }
@@ -132,61 +130,26 @@ var CRUDStore = ServiceStore.named('CRUDStore')
132
130
  switch (_q.label) {
133
131
  case 0:
134
132
  _q.trys.push([0, 2, , 3]);
135
- if (!options.forceReload && options.loadDataOnce && self.total) {
133
+ rawItems = options.source
134
+ ? resolveVariableAndFilter(options.source, createObject(self.mergedData, {
135
+ items: self.data.itemsRaw,
136
+ rows: self.data.itemsRaw
137
+ }), '| raw')
138
+ : self.items.concat();
139
+ if (!options.forceReload && options.loadDataOnce && (rawItems === null || rawItems === void 0 ? void 0 : rawItems.length)) {
136
140
  matchFunc = options.matchFunc;
137
- items_1 = options.source
138
- ? resolveVariableAndFilter(options.source, createObject(self.mergedData, {
139
- items: self.data.itemsRaw,
140
- rows: self.data.itemsRaw
141
- }), '| raw')
142
- : self.items.concat();
143
- /** 字段的格式类型无法穷举,所以支持使用函数过滤 */
144
- if (matchFunc && typeof matchFunc === 'function') {
145
- items_1 = matchFunc(items_1, self.data.itemsRaw, {
146
- query: self.query,
147
- columns: options.columns,
148
- matchSorter: matchSorter
149
- });
150
- }
151
- else {
152
- if (Array.isArray(options.columns)) {
153
- options.columns.forEach(function (column) {
154
- var value = typeof column.name === 'string'
155
- ? getVariable(self.query, column.name)
156
- : undefined;
157
- var key = column.name;
158
- if (value != null && key) {
159
- // value可能为null、undefined、''、0
160
- if (Array.isArray(value)) {
161
- if (value.length > 0) {
162
- var arr_1 = __spreadArray([], __read(items_1), false);
163
- var arrItems_1 = [];
164
- value.forEach(function (item) {
165
- arrItems_1 = __spreadArray(__spreadArray([], __read(arrItems_1), false), __read(matchSorter(arr_1, item, {
166
- keys: [key],
167
- threshold: matchSorter.rankings.CONTAINS
168
- })), false);
169
- });
170
- items_1 = items_1.filter(function (item) {
171
- return arrItems_1.find(function (a) { return a === item; });
172
- });
173
- }
174
- }
175
- else {
176
- items_1 = matchSorter(items_1, value, {
177
- keys: [key],
178
- threshold: matchSorter.rankings.CONTAINS
179
- });
180
- }
181
- }
182
- });
183
- }
184
- }
141
+ items = rawItems;
142
+ items = applyFilters(items, {
143
+ query: self.query,
144
+ columns: options.columns,
145
+ matchFunc: matchFunc,
146
+ filterOnAllColumns: options.filterOnAllColumns
147
+ });
185
148
  if (self.query.orderBy) {
186
149
  dir = /desc/i.test(self.query.orderDir) ? -1 : 1;
187
- items_1 = sortArray(items_1, self.query.orderBy, dir);
150
+ items = sortArray(items, self.query.orderBy, dir);
188
151
  }
189
- data_1 = __assign(__assign({}, self.data), { total: items_1.length, items: items_1.slice((self.page - 1) * self.perPage, self.page * self.perPage) });
152
+ data_1 = __assign(__assign({}, self.data), { total: items.length, items: items.slice((self.page - 1) * self.perPage, self.page * self.perPage) });
190
153
  self.total = parseInt((_e = data_1.total) !== null && _e !== void 0 ? _e : data_1.count, 10) || 0;
191
154
  self.reInitData(data_1);
192
155
  return [2 /*return*/];
@@ -276,44 +239,18 @@ var CRUDStore = ServiceStore.named('CRUDStore')
276
239
  * 2. 接口返回中没有 items 和 rows 字段,则直接用查到的数据。
277
240
  */
278
241
  data_2.itemsRaw = oItems || oRows || rowsData.concat();
279
- filteredItems_1 = rowsData.concat();
280
- if (Array.isArray(options.columns)) {
281
- options.columns.forEach(function (column) {
282
- var value;
283
- var key = column.name;
284
- if (column.searchable &&
285
- key &&
286
- (value = getVariable(self.query, key))) {
287
- if (Array.isArray(value)) {
288
- if (value.length > 0) {
289
- var arr_2 = __spreadArray([], __read(filteredItems_1), false);
290
- var arrItems_2 = [];
291
- value.forEach(function (item) {
292
- arrItems_2 = __spreadArray(__spreadArray([], __read(arrItems_2), false), __read(matchSorter(arr_2, item, {
293
- keys: [key],
294
- threshold: matchSorter.rankings.CONTAINS
295
- })), false);
296
- });
297
- filteredItems_1 = filteredItems_1.filter(function (item) {
298
- return arrItems_2.find(function (a) { return a === item; });
299
- });
300
- }
301
- }
302
- else {
303
- filteredItems_1 = matchSorter(filteredItems_1, value, {
304
- keys: [key],
305
- threshold: matchSorter.rankings.CONTAINS
306
- });
307
- }
308
- }
309
- });
310
- }
242
+ filteredItems = applyFilters(rowsData, {
243
+ query: self.query,
244
+ columns: options.columns,
245
+ filterOnAllColumns: false,
246
+ matchFunc: options.matchFunc
247
+ });
311
248
  if (self.query.orderBy) {
312
249
  dir = /desc/i.test(self.query.orderDir) ? -1 : 1;
313
- filteredItems_1 = sortArray(filteredItems_1, self.query.orderBy, dir);
250
+ filteredItems = sortArray(filteredItems, self.query.orderBy, dir);
314
251
  }
315
- data_2.items = filteredItems_1.slice((self.page - 1) * self.perPage, self.page * self.perPage);
316
- data_2.count = data_2.total = filteredItems_1.length;
252
+ data_2.items = filteredItems.slice((self.page - 1) * self.perPage, self.page * self.perPage);
253
+ data_2.count = data_2.total = filteredItems.length;
317
254
  }
318
255
  if (Array.isArray(columns)) {
319
256
  self.columns = columns.concat();
@@ -458,58 +395,19 @@ var CRUDStore = ServiceStore.named('CRUDStore')
458
395
  };
459
396
  var initFromScope = function (scope, source, options) {
460
397
  var _a;
461
- var matchFunc = options.matchFunc;
462
398
  var items = resolveVariableAndFilter(source, scope, '| raw');
463
399
  if (!Array.isArray(items) && !self.items.length) {
464
400
  return;
465
401
  }
466
- items = Array.isArray(items) ? items : [];
467
- /** 字段的格式类型无法穷举,所以支持使用函数过滤 */
468
- if (matchFunc && typeof matchFunc === 'function') {
469
- items = matchFunc(items, items.concat(), {
470
- query: self.query,
471
- columns: options.columns,
472
- matchSorter: matchSorter
473
- });
474
- }
475
- else {
476
- if (Array.isArray(options.columns)) {
477
- options.columns.forEach(function (column) {
478
- var value = typeof column.name === 'string'
479
- ? getVariable(self.query, column.name)
480
- : undefined;
481
- var key = column.name;
482
- if (value != null && key) {
483
- // value可能为null、undefined、''、0
484
- if (Array.isArray(value)) {
485
- if (value.length > 0) {
486
- var arr_3 = __spreadArray([], __read(items), false);
487
- var arrItems_3 = [];
488
- /** 搜索 query 值为数组的情况 */
489
- value.forEach(function (item) {
490
- arrItems_3 = __spreadArray(__spreadArray([], __read(arrItems_3), false), __read(matchSorter(arr_3, item, {
491
- keys: [key],
492
- threshold: matchSorter.rankings.CONTAINS
493
- })), false);
494
- });
495
- items = items.filter(function (item) {
496
- return arrItems_3.find(function (a) { return a === item; });
497
- });
498
- }
499
- }
500
- else {
501
- items = matchSorter(items, value, {
502
- keys: [key],
503
- threshold: matchSorter.rankings.CONTAINS
504
- });
505
- }
506
- }
507
- });
508
- }
509
- }
402
+ items = applyFilters(Array.isArray(items) ? items : [], {
403
+ query: self.query,
404
+ columns: options.columns,
405
+ matchFunc: options.matchFunc,
406
+ filterOnAllColumns: true
407
+ });
510
408
  if (self.query.orderBy) {
511
409
  var dir = /desc/i.test(self.query.orderDir) ? -1 : 1;
512
- items = sortArray(items, self.query.orderBy, dir);
410
+ items = sortArray(items.concat(), self.query.orderBy, dir);
513
411
  }
514
412
  var data = __assign(__assign({}, self.pristine), { items: items.length > self.perPage
515
413
  ? items.slice((self.page - 1) * self.perPage, self.page * self.perPage)
@@ -558,8 +456,8 @@ var CRUDStore = ServiceStore.named('CRUDStore')
558
456
  // 将数据里的对象转成 json 字符串,不然输出的 csv 没法显示
559
457
  var csvData = [];
560
458
  try {
561
- for (var items_2 = __values(items), items_2_1 = items_2.next(); !items_2_1.done; items_2_1 = items_2.next()) {
562
- var row = items_2_1.value;
459
+ for (var items_1 = __values(items), items_1_1 = items_1.next(); !items_1_1.done; items_1_1 = items_1.next()) {
460
+ var row = items_1_1.value;
563
461
  var rowData = {};
564
462
  for (var key in row) {
565
463
  var value = row[key];
@@ -576,7 +474,7 @@ var CRUDStore = ServiceStore.named('CRUDStore')
576
474
  catch (e_4_1) { e_4 = { error: e_4_1 }; }
577
475
  finally {
578
476
  try {
579
- if (items_2_1 && !items_2_1.done && (_a = items_2.return)) _a.call(items_2);
477
+ if (items_1_1 && !items_1_1.done && (_a = items_1.return)) _a.call(items_1);
580
478
  }
581
479
  finally { if (e_4) throw e_4.error; }
582
480
  }
package/esm/store/form.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -441,7 +441,7 @@ var FormItemStore = StoreNode.named('FormItemStore')
441
441
  try {
442
442
  for (var options_1 = __values(options), options_1_1 = options_1.next(); !options_1_1.done; options_1_1 = options_1.next()) {
443
443
  var option = options_1_1.value;
444
- if (Array.isArray(option.children)) {
444
+ if (Array.isArray(option.children) && option.children.length) {
445
445
  var childFirst = getFirstAvaibleOption(option.children);
446
446
  if (childFirst !== undefined) {
447
447
  return childFirst;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/store/list.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/store/node.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/store/root.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/theme.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -18,7 +18,8 @@ export declare function removeApiRequestAdaptor(adaptor: RequestAdaptor): void;
18
18
  * 添加全局响应适配器
19
19
  * @param adaptor
20
20
  */
21
- export declare function addApiResponseAdator(adaptor: ResponseAdaptor): () => void;
21
+ export declare function addApiResponseAdaptor(adaptor: ResponseAdaptor): () => void;
22
+ export declare const addApiResponseAdator: typeof addApiResponseAdaptor;
22
23
  /**
23
24
  * 删除全局响应适配器
24
25
  * @param adaptor
package/esm/utils/api.js CHANGED
@@ -1,9 +1,9 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
6
- import { __awaiter, __generator, __assign, __rest, __spreadArray, __read } from 'tslib';
6
+ import { __awaiter, __generator, __spreadArray, __read, __assign, __rest } from 'tslib';
7
7
  import omit from 'lodash/omit';
8
8
  import { evaluate } from 'amis-formula';
9
9
  import { escapeHtml } from './escapeHtml.js';
@@ -45,10 +45,12 @@ function removeApiRequestAdaptor(adaptor) {
45
45
  * 添加全局响应适配器
46
46
  * @param adaptor
47
47
  */
48
- function addApiResponseAdator(adaptor) {
48
+ function addApiResponseAdaptor(adaptor) {
49
49
  responseAdaptors.push(adaptor);
50
50
  return function () { return removeApiResponseAdaptor(adaptor); };
51
51
  }
52
+ // :( 之前写错了,这里为了让以前的代码能继续跑,暂时保留
53
+ var addApiResponseAdator = addApiResponseAdaptor;
52
54
  /**
53
55
  * 删除全局响应适配器
54
56
  * @param adaptor
@@ -810,4 +812,4 @@ function normalizeApiResponseData(data) {
810
812
  }
811
813
  // window.apiCaches = apiCaches;
812
814
 
813
- export { addApiRequestAdaptor, addApiResponseAdator, buildApi, callStrFunction, clearApiCache, getApiCache, isApiOutdated, isApiOutdatedWithData, isEffectiveApi, isSameApi, isValidApi, jsFetcher, jsonpFetcher, normalizeApi, normalizeApiResponseData, removeApiRequestAdaptor, removeApiResponseAdaptor, responseAdaptor, setApiCache, str2AsyncFunction, str2function, wrapAdaptor, wrapFetcher };
815
+ export { addApiRequestAdaptor, addApiResponseAdaptor, addApiResponseAdator, buildApi, callStrFunction, clearApiCache, getApiCache, isApiOutdated, isApiOutdatedWithData, isEffectiveApi, isSameApi, isValidApi, jsFetcher, jsonpFetcher, normalizeApi, normalizeApiResponseData, removeApiRequestAdaptor, removeApiResponseAdaptor, responseAdaptor, setApiCache, str2AsyncFunction, str2function, wrapAdaptor, wrapFetcher };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -29,6 +29,9 @@ function attachmentAdpator(response, __, api) {
29
29
  if (matches && matches.length) {
30
30
  filename = matches[1].replace("UTF-8''", '').replace(/['"]/g, '');
31
31
  }
32
+ else {
33
+ filename = disposition === null || disposition === void 0 ? void 0 : disposition.split(';')[1];
34
+ }
32
35
  // 很可能是中文被 url-encode 了
33
36
  if (filename && filename.replace(/[^%]/g, '').length > 2) {
34
37
  filename = decodeURIComponent(filename);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.9.0
2
+ * amis-core v6.10.0-beta.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5