amis-core 6.6.0 → 6.8.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 (312) hide show
  1. package/esm/Root.js +4 -3
  2. package/esm/RootRenderer.d.ts +1 -1
  3. package/esm/RootRenderer.js +1 -1
  4. package/esm/SchemaRenderer.d.ts +0 -1
  5. package/esm/SchemaRenderer.js +19 -10
  6. package/esm/Scoped.js +2 -1
  7. package/esm/StatusScoped.js +1 -1
  8. package/esm/WithRootStore.js +1 -1
  9. package/esm/WithStore.js +8 -8
  10. package/esm/actions/Action.js +33 -31
  11. package/esm/actions/AjaxAction.js +1 -1
  12. package/esm/actions/BreakAction.js +1 -1
  13. package/esm/actions/BroadcastAction.js +1 -1
  14. package/esm/actions/CmptAction.js +55 -48
  15. package/esm/actions/ContinueAction.js +1 -1
  16. package/esm/actions/CopyAction.js +1 -1
  17. package/esm/actions/CustomAction.js +12 -3
  18. package/esm/actions/DialogAction.js +3 -1
  19. package/esm/actions/DrawerAction.js +2 -1
  20. package/esm/actions/EmailAction.js +1 -1
  21. package/esm/actions/EventAction.js +2 -1
  22. package/esm/actions/LinkAction.js +1 -1
  23. package/esm/actions/LoopAction.js +2 -1
  24. package/esm/actions/PageAction.js +1 -1
  25. package/esm/actions/ParallelAction.js +1 -1
  26. package/esm/actions/PrintAction.js +1 -1
  27. package/esm/actions/StatusAction.js +1 -1
  28. package/esm/actions/SwitchAction.js +1 -1
  29. package/esm/actions/ToastAction.js +1 -1
  30. package/esm/actions/WaitAction.js +1 -1
  31. package/esm/components/CustomStyle.js +1 -1
  32. package/esm/components/ErrorBoundary.js +1 -1
  33. package/esm/components/LazyComponent.js +1 -1
  34. package/esm/components/Overlay.js +2 -1
  35. package/esm/components/PopOver.d.ts +2 -0
  36. package/esm/components/PopOver.js +5 -4
  37. package/esm/env.d.ts +4 -0
  38. package/esm/env.js +1 -1
  39. package/esm/envOverwrite.js +1 -1
  40. package/esm/factory.js +1 -1
  41. package/esm/index.js +3 -3
  42. package/esm/locale.js +2 -1
  43. package/esm/polyfills.js +1 -1
  44. package/esm/renderers/Form.js +123 -25
  45. package/esm/renderers/Item.d.ts +97 -12
  46. package/esm/renderers/Item.js +180 -126
  47. package/esm/renderers/Options.js +2 -1
  48. package/esm/renderers/Placeholder.js +1 -1
  49. package/esm/renderers/builtin.js +1 -1
  50. package/esm/renderers/register.js +1 -1
  51. package/esm/renderers/wrapControl.js +2 -1
  52. package/esm/store/app.d.ts +1 -0
  53. package/esm/store/app.js +2 -1
  54. package/esm/store/combo.d.ts +411 -0
  55. package/esm/store/combo.js +1 -1
  56. package/esm/store/crud.d.ts +1 -0
  57. package/esm/store/crud.js +2 -1
  58. package/esm/store/form.d.ts +171 -0
  59. package/esm/store/form.js +2 -1
  60. package/esm/store/formItem.d.ts +5 -0
  61. package/esm/store/formItem.js +30 -8
  62. package/esm/store/iRenderer.d.ts +1 -0
  63. package/esm/store/iRenderer.js +8 -3
  64. package/esm/store/index.js +1 -1
  65. package/esm/store/list.d.ts +1 -0
  66. package/esm/store/list.js +1 -1
  67. package/esm/store/manager.js +1 -1
  68. package/esm/store/modal.d.ts +1 -0
  69. package/esm/store/modal.js +1 -1
  70. package/esm/store/node.js +1 -1
  71. package/esm/store/pagination.d.ts +1 -0
  72. package/esm/store/pagination.js +2 -1
  73. package/esm/store/root.d.ts +1 -0
  74. package/esm/store/root.js +2 -1
  75. package/esm/store/service.d.ts +1 -0
  76. package/esm/store/service.js +2 -1
  77. package/esm/store/status.js +1 -1
  78. package/esm/store/table.d.ts +382 -21
  79. package/esm/store/table.js +84 -54
  80. package/esm/store/table2.d.ts +1 -0
  81. package/esm/store/table2.js +1 -1
  82. package/esm/theme.js +1 -1
  83. package/esm/types.d.ts +1 -1
  84. package/esm/utils/Animation.js +1 -1
  85. package/esm/utils/ColorScale.js +1 -1
  86. package/esm/utils/DataSchema.js +1 -1
  87. package/esm/utils/DataScope.js +2 -2
  88. package/esm/utils/RootClose.js +1 -1
  89. package/esm/utils/SimpleMap.js +1 -1
  90. package/esm/utils/api.js +2 -2
  91. package/esm/utils/arraySlice.js +1 -1
  92. package/esm/utils/attachmentAdpator.js +1 -1
  93. package/esm/utils/autobind.js +1 -1
  94. package/esm/utils/browser.js +1 -1
  95. package/esm/utils/columnsSplit.js +1 -1
  96. package/esm/utils/concatData.js +1 -1
  97. package/esm/utils/dataMapping.js +1 -1
  98. package/esm/utils/date.js +1 -1
  99. package/esm/utils/debug.js +17 -3
  100. package/esm/utils/decodeEntity.js +1 -1
  101. package/esm/utils/dom.js +1 -1
  102. package/esm/utils/errors.js +1 -1
  103. package/esm/utils/escapeHtml.js +1 -1
  104. package/esm/utils/filter-schema.js +1 -1
  105. package/esm/utils/filter.js +1 -1
  106. package/esm/utils/formatDuration.js +1 -1
  107. package/esm/utils/formula.js +2 -1
  108. package/esm/utils/getVariable.js +1 -1
  109. package/esm/utils/grammar.js +1 -1
  110. package/esm/utils/handleAction.js +1 -1
  111. package/esm/utils/helper.d.ts +5 -1
  112. package/esm/utils/helper.js +37 -8
  113. package/esm/utils/highlight.js +1 -1
  114. package/esm/utils/icon.js +1 -1
  115. package/esm/utils/image.js +1 -1
  116. package/esm/utils/isPureVariable.js +2 -2
  117. package/esm/utils/json-schema-2-amis-schema.js +1 -1
  118. package/esm/utils/keyToPath.js +1 -1
  119. package/esm/utils/labelToString.js +1 -1
  120. package/esm/utils/makeSorter.js +1 -1
  121. package/esm/utils/math.js +1 -1
  122. package/esm/utils/memoryParse.d.ts +2 -1
  123. package/esm/utils/memoryParse.js +10 -6
  124. package/esm/utils/normalizeLink.js +1 -1
  125. package/esm/utils/normalizeOptions.js +1 -1
  126. package/esm/utils/object.d.ts +2 -4
  127. package/esm/utils/object.js +1 -1
  128. package/esm/utils/offset.js +1 -1
  129. package/esm/utils/offsetParent.js +1 -1
  130. package/esm/utils/optionValueCompare.js +1 -1
  131. package/esm/utils/position.js +1 -1
  132. package/esm/utils/prettyBytes.js +1 -1
  133. package/esm/utils/printElement.js +1 -1
  134. package/esm/utils/renderer-event.js +5 -3
  135. package/esm/utils/replaceText.js +1 -1
  136. package/esm/utils/resize-sensor.js +30 -1
  137. package/esm/utils/resolveCondition.js +2 -1
  138. package/esm/utils/resolveVariable.js +1 -1
  139. package/esm/utils/resolveVariableAndFilter.js +1 -1
  140. package/esm/utils/resolveVariableAndFilterForAsync.js +1 -1
  141. package/esm/utils/scrollPosition.js +1 -1
  142. package/esm/utils/string2regExp.js +1 -1
  143. package/esm/utils/stripNumber.js +1 -1
  144. package/esm/utils/style-helper.d.ts +4 -2
  145. package/esm/utils/style-helper.js +27 -13
  146. package/esm/utils/style.js +2 -1
  147. package/esm/utils/toNumber.js +1 -1
  148. package/esm/utils/tokenize.js +1 -1
  149. package/esm/utils/tpl-builtin.js +2 -1
  150. package/esm/utils/tpl-lodash.js +2 -1
  151. package/esm/utils/tpl.js +1 -1
  152. package/esm/utils/uncontrollable.js +1 -1
  153. package/esm/utils/validateId.js +3 -3
  154. package/esm/utils/validations.js +2 -1
  155. package/esm/utils/visitedCache.d.ts +46 -0
  156. package/esm/utils/visitedCache.js +124 -0
  157. package/lib/Root.js +4 -3
  158. package/lib/RootRenderer.js +1 -1
  159. package/lib/SchemaRenderer.d.ts +0 -1
  160. package/lib/SchemaRenderer.js +19 -10
  161. package/lib/Scoped.js +2 -1
  162. package/lib/StatusScoped.js +1 -1
  163. package/lib/WithRootStore.js +1 -1
  164. package/lib/WithStore.js +8 -8
  165. package/lib/actions/Action.js +33 -31
  166. package/lib/actions/AjaxAction.js +1 -1
  167. package/lib/actions/BreakAction.js +1 -1
  168. package/lib/actions/BroadcastAction.js +1 -1
  169. package/lib/actions/CmptAction.js +55 -48
  170. package/lib/actions/ContinueAction.js +1 -1
  171. package/lib/actions/CopyAction.js +1 -1
  172. package/lib/actions/CustomAction.js +12 -3
  173. package/lib/actions/DialogAction.js +3 -1
  174. package/lib/actions/DrawerAction.js +2 -1
  175. package/lib/actions/EmailAction.js +1 -1
  176. package/lib/actions/EventAction.js +2 -1
  177. package/lib/actions/LinkAction.js +1 -1
  178. package/lib/actions/LoopAction.js +2 -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 +2 -1
  190. package/lib/components/PopOver.d.ts +2 -0
  191. package/lib/components/PopOver.js +5 -4
  192. package/lib/env.d.ts +4 -0
  193. package/lib/env.js +1 -1
  194. package/lib/envOverwrite.js +1 -1
  195. package/lib/factory.js +1 -1
  196. package/lib/index.js +3 -2
  197. package/lib/locale.js +2 -1
  198. package/lib/polyfills.js +1 -1
  199. package/lib/renderers/Form.js +122 -24
  200. package/lib/renderers/Item.d.ts +97 -12
  201. package/lib/renderers/Item.js +179 -125
  202. package/lib/renderers/Options.js +2 -1
  203. package/lib/renderers/Placeholder.js +1 -1
  204. package/lib/renderers/builtin.js +1 -1
  205. package/lib/renderers/register.js +1 -1
  206. package/lib/renderers/wrapControl.js +2 -1
  207. package/lib/store/app.d.ts +1 -0
  208. package/lib/store/app.js +2 -1
  209. package/lib/store/combo.d.ts +435 -24
  210. package/lib/store/combo.js +1 -1
  211. package/lib/store/crud.d.ts +1 -0
  212. package/lib/store/crud.js +2 -1
  213. package/lib/store/form.d.ts +181 -10
  214. package/lib/store/form.js +2 -1
  215. package/lib/store/formItem.d.ts +5 -0
  216. package/lib/store/formItem.js +30 -8
  217. package/lib/store/iRenderer.d.ts +1 -0
  218. package/lib/store/iRenderer.js +8 -3
  219. package/lib/store/index.js +1 -1
  220. package/lib/store/list.d.ts +1 -0
  221. package/lib/store/list.js +1 -1
  222. package/lib/store/manager.js +1 -1
  223. package/lib/store/modal.d.ts +1 -0
  224. package/lib/store/modal.js +1 -1
  225. package/lib/store/node.js +1 -1
  226. package/lib/store/pagination.d.ts +1 -0
  227. package/lib/store/pagination.js +2 -1
  228. package/lib/store/root.d.ts +1 -0
  229. package/lib/store/root.js +2 -1
  230. package/lib/store/service.d.ts +1 -0
  231. package/lib/store/service.js +2 -1
  232. package/lib/store/status.js +1 -1
  233. package/lib/store/table.d.ts +402 -41
  234. package/lib/store/table.js +84 -54
  235. package/lib/store/table2.d.ts +1 -0
  236. package/lib/store/table2.js +1 -1
  237. package/lib/theme.js +1 -1
  238. package/lib/types.d.ts +1 -1
  239. package/lib/utils/Animation.js +1 -1
  240. package/lib/utils/ColorScale.js +1 -1
  241. package/lib/utils/DataSchema.js +1 -1
  242. package/lib/utils/DataScope.js +2 -2
  243. package/lib/utils/RootClose.js +1 -1
  244. package/lib/utils/SimpleMap.js +1 -1
  245. package/lib/utils/api.js +2 -2
  246. package/lib/utils/arraySlice.js +1 -1
  247. package/lib/utils/attachmentAdpator.js +1 -1
  248. package/lib/utils/autobind.js +1 -1
  249. package/lib/utils/browser.js +1 -1
  250. package/lib/utils/columnsSplit.js +1 -1
  251. package/lib/utils/concatData.js +1 -1
  252. package/lib/utils/dataMapping.js +1 -1
  253. package/lib/utils/date.js +1 -1
  254. package/lib/utils/debug.js +17 -3
  255. package/lib/utils/decodeEntity.js +1 -1
  256. package/lib/utils/dom.js +1 -1
  257. package/lib/utils/errors.js +1 -1
  258. package/lib/utils/escapeHtml.js +1 -1
  259. package/lib/utils/filter-schema.js +1 -1
  260. package/lib/utils/filter.js +1 -1
  261. package/lib/utils/formatDuration.js +1 -1
  262. package/lib/utils/formula.js +2 -1
  263. package/lib/utils/getVariable.js +1 -1
  264. package/lib/utils/grammar.js +1 -1
  265. package/lib/utils/handleAction.js +1 -1
  266. package/lib/utils/helper.d.ts +5 -1
  267. package/lib/utils/helper.js +36 -6
  268. package/lib/utils/highlight.js +1 -1
  269. package/lib/utils/icon.js +1 -1
  270. package/lib/utils/image.js +1 -1
  271. package/lib/utils/isPureVariable.js +2 -2
  272. package/lib/utils/json-schema-2-amis-schema.js +1 -1
  273. package/lib/utils/keyToPath.js +1 -1
  274. package/lib/utils/labelToString.js +1 -1
  275. package/lib/utils/makeSorter.js +1 -1
  276. package/lib/utils/math.js +1 -1
  277. package/lib/utils/memoryParse.d.ts +2 -1
  278. package/lib/utils/memoryParse.js +10 -6
  279. package/lib/utils/normalizeLink.js +1 -1
  280. package/lib/utils/normalizeOptions.js +1 -1
  281. package/lib/utils/object.d.ts +2 -4
  282. package/lib/utils/object.js +1 -1
  283. package/lib/utils/offset.js +1 -1
  284. package/lib/utils/offsetParent.js +1 -1
  285. package/lib/utils/optionValueCompare.js +1 -1
  286. package/lib/utils/position.js +1 -1
  287. package/lib/utils/prettyBytes.js +1 -1
  288. package/lib/utils/printElement.js +1 -1
  289. package/lib/utils/renderer-event.js +5 -3
  290. package/lib/utils/replaceText.js +1 -1
  291. package/lib/utils/resize-sensor.js +30 -1
  292. package/lib/utils/resolveCondition.js +2 -1
  293. package/lib/utils/resolveVariable.js +1 -1
  294. package/lib/utils/resolveVariableAndFilter.js +1 -1
  295. package/lib/utils/resolveVariableAndFilterForAsync.js +1 -1
  296. package/lib/utils/scrollPosition.js +1 -1
  297. package/lib/utils/string2regExp.js +1 -1
  298. package/lib/utils/stripNumber.js +1 -1
  299. package/lib/utils/style-helper.d.ts +4 -2
  300. package/lib/utils/style-helper.js +27 -13
  301. package/lib/utils/style.js +2 -1
  302. package/lib/utils/toNumber.js +1 -1
  303. package/lib/utils/tokenize.js +1 -1
  304. package/lib/utils/tpl-builtin.js +2 -1
  305. package/lib/utils/tpl-lodash.js +2 -1
  306. package/lib/utils/tpl.js +1 -1
  307. package/lib/utils/uncontrollable.js +1 -1
  308. package/lib/utils/validateId.js +3 -3
  309. package/lib/utils/validations.js +2 -1
  310. package/lib/utils/visitedCache.d.ts +46 -0
  311. package/lib/utils/visitedCache.js +128 -0
  312. package/package.json +2 -2
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -9,6 +9,7 @@ import { iRendererStore } from './iRenderer.js';
9
9
  import 'amis-formula';
10
10
  import 'moment';
11
11
  import { createObject, extendObject, isObject } from '../utils/object.js';
12
+ import '../utils/memoryParse.js';
12
13
  import '@rc-component/mini-decimal';
13
14
  import { resolveVariable } from '../utils/resolveVariable.js';
14
15
  import { resolveVariableAndFilter } from '../utils/resolveVariableAndFilter.js';
@@ -94,6 +95,9 @@ var Column = types
94
95
  var _a;
95
96
  var table = getParent(self, 2);
96
97
  return (((_a = table.filteredColumns.find(function (column) { return !column.type.startsWith('__'); })) === null || _a === void 0 ? void 0 : _a.id) === self.id);
98
+ },
99
+ get columnKey() {
100
+ return self.pristine.uid || self.name || self.label || self.rawIndex;
97
101
  }
98
102
  }); })
99
103
  .actions(function (self) { return ({
@@ -109,10 +113,13 @@ var Column = types
109
113
  setToggled: function (value) {
110
114
  self.toggled = value;
111
115
  },
112
- setEnableSearch: function (value) {
116
+ setEnableSearch: function (value, skipSave) {
117
+ if (skipSave === void 0) { skipSave = false; }
113
118
  self.enableSearch = value;
114
- var table = getParent(self, 2);
115
- table.persistSaveToggledColumns();
119
+ if (!skipSave) {
120
+ var table = getParent(self, 2);
121
+ table.persistSaveToggledColumns();
122
+ }
116
123
  },
117
124
  setMinWidth: function (value) {
118
125
  self.minWidth = value;
@@ -363,7 +370,6 @@ var TableStore = iRendererStore
363
370
  .named('TableStore')
364
371
  .props({
365
372
  columns: types.array(Column),
366
- columnsKey: '',
367
373
  rows: types.array(Row),
368
374
  selectedRows: types.array(types.reference(Row)),
369
375
  expandedRows: types.array(types.string),
@@ -585,6 +591,9 @@ var TableStore = iRendererStore
585
591
  }
586
592
  return {
587
593
  getSelectionUpperLimit: getSelectionUpperLimit,
594
+ get columnsKey() {
595
+ return location.pathname + self.path;
596
+ },
588
597
  get columnsData() {
589
598
  return getColumnsExceptBuiltinTypes();
590
599
  },
@@ -703,7 +712,8 @@ var TableStore = iRendererStore
703
712
  get columnWidthReady() {
704
713
  return getFilteredColumns().every(function (column) { return column.realWidth; });
705
714
  },
706
- getStickyStyles: function (column, columns) {
715
+ getStickyStyles: function (column, columns, colSpan) {
716
+ if (colSpan === void 0) { colSpan = 1; }
707
717
  var stickyClassName = '';
708
718
  var style = {};
709
719
  var autoFixLeftColumns = ['__checkme', '__dragme', '__expandme'];
@@ -712,7 +722,7 @@ var TableStore = iRendererStore
712
722
  stickyClassName = 'is-sticky is-sticky-left';
713
723
  var index = columns.indexOf(column) - 1;
714
724
  if (columns
715
- .slice(index + 2)
725
+ .slice(index + (colSpan - 1) + 2)
716
726
  .every(function (col) {
717
727
  return !((col && col.fixed === 'left') ||
718
728
  autoFixLeftColumns.includes(col.type));
@@ -826,7 +836,6 @@ var TableStore = iRendererStore
826
836
  typeof config.tableLayout === 'string' &&
827
837
  (self.tableLayout = config.tableLayout);
828
838
  if (config.columns && Array.isArray(config.columns)) {
829
- self.columnsKey = getPersistDataKey(config.columns);
830
839
  var columns = config.columns
831
840
  .map(function (column) {
832
841
  if ((options === null || options === void 0 ? void 0 : options.resolveDefinitions) &&
@@ -849,7 +858,9 @@ var TableStore = iRendererStore
849
858
  var order_1 = tableMetaData === null || tableMetaData === void 0 ? void 0 : tableMetaData.columnOrder;
850
859
  if (Array.isArray(order_1) && order_1.length != 0) {
851
860
  columns = sortBy(columns, function (item, index) {
852
- return order_1.indexOf(item.name || item.label || index);
861
+ var columnKey = item.uid || item.name || item.label || index;
862
+ var idx = order_1.indexOf(columnKey);
863
+ return idx === -1 ? Number.MAX_SAFE_INTEGER : idx;
853
864
  });
854
865
  }
855
866
  }
@@ -1076,26 +1087,28 @@ var TableStore = iRendererStore
1076
1087
  if (self.combineNum) {
1077
1088
  arr = autoCombineCell(arr, self.columns, self.combineNum, self.combineFromIndex);
1078
1089
  }
1079
- replaceRow(arr, reUseRow);
1090
+ var allMatched = replaceRow(arr, reUseRow);
1080
1091
  self.isNested = self.rows.some(function (item) { return item.children.length || (item.defer && !item.loaded); });
1081
- // 20 个直接渲染,后面的按需渲染
1082
- if (self.lazyRenderAfter &&
1083
- self.falttenedRows.length > self.lazyRenderAfter) {
1084
- for (var i = self.lazyRenderAfter, len = self.falttenedRows.length; i < len; i++) {
1085
- self.falttenedRows[i].appeared = false;
1086
- self.falttenedRows[i].lazyRender = true;
1092
+ if (!allMatched) {
1093
+ // 20 个直接渲染,后面的按需渲染
1094
+ if (self.lazyRenderAfter &&
1095
+ self.falttenedRows.length > self.lazyRenderAfter) {
1096
+ for (var i = self.lazyRenderAfter, len = self.falttenedRows.length; i < len; i++) {
1097
+ self.falttenedRows[i].appeared = false;
1098
+ self.falttenedRows[i].lazyRender = true;
1099
+ }
1100
+ }
1101
+ var expand = self.footable && self.footable.expand;
1102
+ if (expand === 'first' ||
1103
+ (self.expandConfig && self.expandConfig.expand === 'first')) {
1104
+ self.rows.length && self.expandedRows.push(self.rows[0].id);
1105
+ }
1106
+ else if ((expand === 'all' && !self.footable.accordion) ||
1107
+ (self.expandConfig &&
1108
+ self.expandConfig.expand === 'all' &&
1109
+ !self.expandConfig.accordion)) {
1110
+ self.expandedRows.replace(getExpandAllRows(self.rows));
1087
1111
  }
1088
- }
1089
- var expand = self.footable && self.footable.expand;
1090
- if (expand === 'first' ||
1091
- (self.expandConfig && self.expandConfig.expand === 'first')) {
1092
- self.rows.length && self.expandedRows.push(self.rows[0].id);
1093
- }
1094
- else if ((expand === 'all' && !self.footable.accordion) ||
1095
- (self.expandConfig &&
1096
- self.expandConfig.expand === 'all' &&
1097
- !self.expandConfig.accordion)) {
1098
- self.expandedRows.replace(getExpandAllRows(self.rows));
1099
1112
  }
1100
1113
  self.dragging = false;
1101
1114
  }
@@ -1113,7 +1126,21 @@ var TableStore = iRendererStore
1113
1126
  function replaceRow(arr, reUseRow) {
1114
1127
  if (reUseRow === false) {
1115
1128
  self.rows.replace(arr.map(function (item) { return Row.create(item); }));
1116
- return;
1129
+ return false;
1130
+ }
1131
+ else if (reUseRow === 'match') {
1132
+ var rows_1 = self.falttenedRows;
1133
+ var allMatched_1 = true;
1134
+ self.rows.replace(arr.map(function (item) {
1135
+ var exist = rows_1.find(function (row) { return row.id === item.id; });
1136
+ if (exist) {
1137
+ exist.replaceWith(item);
1138
+ return exist;
1139
+ }
1140
+ allMatched_1 = false;
1141
+ return Row.create(item);
1142
+ }));
1143
+ return allMatched_1;
1117
1144
  }
1118
1145
  var pool = arr.concat();
1119
1146
  // 把多的删了先
@@ -1133,6 +1160,7 @@ var TableStore = iRendererStore
1133
1160
  }
1134
1161
  index++;
1135
1162
  }
1163
+ return false;
1136
1164
  }
1137
1165
  function updateSelected(selected, valueField) {
1138
1166
  self.selectedRows.clear();
@@ -1236,8 +1264,8 @@ var TableStore = iRendererStore
1236
1264
  var maxIndex = lastCheckedRowIndex > rowIndex ? lastCheckedRowIndex : rowIndex + 1;
1237
1265
  var rows = checkableRows.slice(minIndex, maxIndex);
1238
1266
  try {
1239
- for (var rows_1 = __values(rows), rows_1_1 = rows_1.next(); !rows_1_1.done; rows_1_1 = rows_1.next()) {
1240
- var rowItem = rows_1_1.value;
1267
+ for (var rows_2 = __values(rows), rows_2_1 = rows_2.next(); !rows_2_1.done; rows_2_1 = rows_2.next()) {
1268
+ var rowItem = rows_2_1.value;
1241
1269
  // 如果上一个是选中状态,则将之间的所有 check 都变成可选
1242
1270
  if (!(lastCheckedRow.checked &&
1243
1271
  maxLength &&
@@ -1249,7 +1277,7 @@ var TableStore = iRendererStore
1249
1277
  catch (e_1_1) { e_1 = { error: e_1_1 }; }
1250
1278
  finally {
1251
1279
  try {
1252
- if (rows_1_1 && !rows_1_1.done && (_a = rows_1.return)) _a.call(rows_1);
1280
+ if (rows_2_1 && !rows_2_1.done && (_a = rows_2.return)) _a.call(rows_2);
1253
1281
  }
1254
1282
  finally { if (e_1) throw e_1.error; }
1255
1283
  }
@@ -1347,9 +1375,9 @@ var TableStore = iRendererStore
1347
1375
  var rows = self.rows.concat();
1348
1376
  eachTree(rows, function (item) {
1349
1377
  if (item.children) {
1350
- var rows_2 = item.children.concat().sort(function (a, b) { return a.index - b.index; });
1351
- rows_2.forEach(function (item) { return item.reset(); });
1352
- item.children.replace(rows_2);
1378
+ var rows_3 = item.children.concat().sort(function (a, b) { return a.index - b.index; });
1379
+ rows_3.forEach(function (item) { return item.reset(); });
1380
+ item.children.replace(rows_3);
1353
1381
  }
1354
1382
  });
1355
1383
  rows.forEach(function (item) { return item.reset(); });
@@ -1391,13 +1419,21 @@ var TableStore = iRendererStore
1391
1419
  */
1392
1420
  function persistSaveToggledColumns() {
1393
1421
  var key = self.columnsKey;
1422
+ var toggledColumns = self.activeToggaleColumns;
1423
+ var activedSearchableColumns = self.activedSearchableColumns;
1394
1424
  localStorage.setItem(key, JSON.stringify({
1395
- // 可显示列index
1396
- toggledColumnIndex: self.activeToggaleColumns.map(function (item) { return item.index; }),
1425
+ // 记录隐藏的字段,因为默认不设置是显示的,设置了隐藏才需要记录,这样新出来的字段才会默认显示
1426
+ unToggledColumns: self.columnsData
1427
+ .filter(function (item) { return !toggledColumns.includes(item); })
1428
+ .map(function (item) { return item.columnKey; }),
1397
1429
  // 列排序,name,label可能不存在
1398
- columnOrder: self.columnsData.map(function (item) { return item.name || item.label || item.rawIndex; }),
1399
- // 已激活的可查询列
1400
- enabledSearchableColumn: self.activedSearchableColumns.map(function (item) { return item.name; })
1430
+ columnOrder: self.columnsData.map(function (item) { return item.columnKey; }),
1431
+ // 同理只记录不启用的,因为默认是启用的
1432
+ disabledSearchableColumn: self.columnsData
1433
+ .filter(function (item) {
1434
+ return item.searchable && !activedSearchableColumns.includes(item);
1435
+ })
1436
+ .map(function (item) { return item.columnKey; })
1401
1437
  }));
1402
1438
  }
1403
1439
  function addForm(form, rowIndex) {
@@ -1432,14 +1468,6 @@ var TableStore = iRendererStore
1432
1468
  }
1433
1469
  }
1434
1470
  }
1435
- function getPersistDataKey(columns) {
1436
- // 这里的columns使用除了__开头的所有列
1437
- return (location.pathname +
1438
- self.path +
1439
- // 不能 sort 因为原始列的顺序设计器是可能改变的,此时如果缓存了打开会失效
1440
- // 还是缓存的顺序,不符合用户调整列顺序的预期
1441
- columns.map(function (item, index) { return item.name || item.label || index; }).join('-'));
1442
- }
1443
1471
  function setSearchFormExpanded(value) {
1444
1472
  self.searchFormExpanded = !!value;
1445
1473
  }
@@ -1489,16 +1517,18 @@ var TableStore = iRendererStore
1489
1517
  var key = self.columnsKey;
1490
1518
  var data = localStorage.getItem(key);
1491
1519
  if (data) {
1492
- var tableMetaData_1 = JSON.parse(data);
1493
- var toggledColumns_1 = isObject(tableMetaData_1)
1494
- ? tableMetaData_1 === null || tableMetaData_1 === void 0 ? void 0 : tableMetaData_1.toggledColumnIndex
1495
- : tableMetaData_1; // 兼容之前的类型
1520
+ var tableMetaData = JSON.parse(data);
1521
+ var unToggledColumns_1 = Array.isArray(tableMetaData.unToggledColumns)
1522
+ ? tableMetaData.unToggledColumns
1523
+ : [];
1524
+ var disabledSearchableColumn_1 = Array.isArray(tableMetaData.disabledSearchableColumn)
1525
+ ? tableMetaData.disabledSearchableColumn
1526
+ : [];
1496
1527
  self.toggableColumns.forEach(function (item) {
1497
- return item.setToggled(!!~toggledColumns_1.indexOf(item.index));
1528
+ return item.setToggled(!unToggledColumns_1.includes(item.columnKey));
1498
1529
  });
1499
1530
  self.searchableColumns.forEach(function (item) {
1500
- var _a;
1501
- item.setEnableSearch(!!~((_a = tableMetaData_1 === null || tableMetaData_1 === void 0 ? void 0 : tableMetaData_1.enabledSearchableColumn) !== null && _a !== void 0 ? _a : []).indexOf(item.name));
1531
+ item.setEnableSearch(!disabledSearchableColumn_1.includes(item.columnKey), true);
1502
1532
  });
1503
1533
  }
1504
1534
  }, 200);
@@ -56,6 +56,7 @@ export declare const TableStore2: import("mobx-state-tree").IModelType<{
56
56
  initedAt: import("mobx-state-tree").IType<number | undefined, number, number>;
57
57
  updatedAt: import("mobx-state-tree").IType<number | undefined, number, number>;
58
58
  pristine: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
59
+ pristineRaw: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
59
60
  upStreamData: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
60
61
  action: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<any, any, any>, [undefined]>;
61
62
  dialogOpen: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.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.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/types.d.ts CHANGED
@@ -319,7 +319,7 @@ export type FunctionPropertyNames<T> = {
319
319
  export type JSONSchema = JSONSchema7 & {
320
320
  group?: string;
321
321
  typeLabel?: string;
322
- schemaType?: string;
322
+ rawType?: string;
323
323
  };
324
324
  /**
325
325
  * 事件跟踪的定义
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -187,7 +187,7 @@ var DataScope = /** @class */ (function () {
187
187
  value: schema.title === '成员' ? '' : path.value,
188
188
  path: schema.title === '成员' ? '' : path.label,
189
189
  type: schema.type,
190
- schemaType: schema.schemaType,
190
+ rawType: schema.rawType,
191
191
  tag: (_b = (_a = schema.typeLabel) !== null && _a !== void 0 ? _a : DATASCHEMA_TYPE_MAP[schema.type]) !== null && _b !== void 0 ? _b : schema.type,
192
192
  description: schema.description,
193
193
  isMember: isMember,
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/utils/api.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -582,7 +582,7 @@ function isApiOutdated(prevApi, nextApi, prevData, nextData) {
582
582
  return false;
583
583
  }
584
584
  // 通常是编辑器里加了属性,一开始没值,后来有了
585
- if (prevApi === undefined && !nextApi !== undefined) {
585
+ if (prevApi === undefined) {
586
586
  return true;
587
587
  }
588
588
  nextApi = normalizeApi(nextApi);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/utils/date.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -386,11 +386,18 @@ function debug(cat, msg, ext) {
386
386
  console.groupCollapsed('[amis debug]', msg);
387
387
  console.debug(ext);
388
388
  console.groupEnd();
389
+ var extStr = '';
390
+ try {
391
+ extStr = JSON.stringify(ext);
392
+ }
393
+ catch (e) {
394
+ console.error(e);
395
+ }
389
396
  var log = {
390
397
  cat: cat,
391
398
  level: 'debug',
392
399
  msg: msg,
393
- ext: JSON.stringify(ext)
400
+ ext: extStr
394
401
  };
395
402
  store.logs.push(log);
396
403
  }
@@ -403,11 +410,18 @@ function warning(cat, msg, ext) {
403
410
  if (!isEnabled) {
404
411
  return;
405
412
  }
413
+ var extStr = '';
414
+ try {
415
+ extStr = JSON.stringify(ext);
416
+ }
417
+ catch (e) {
418
+ console.error(e);
419
+ }
406
420
  var log = {
407
421
  cat: cat,
408
422
  level: 'warn',
409
423
  msg: msg,
410
- ext: JSON.stringify(ext)
424
+ ext: extStr
411
425
  };
412
426
  console.groupCollapsed('amis debug', msg);
413
427
  console.trace(log);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
package/esm/utils/dom.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -12,6 +12,7 @@ import 'tslib';
12
12
  import 'moment';
13
13
  import 'lodash/isPlainObject';
14
14
  import { getVariable } from './getVariable.js';
15
+ import './memoryParse.js';
15
16
  import '@rc-component/mini-decimal';
16
17
  import { resolveVariableAndFilter } from './resolveVariableAndFilter.js';
17
18
  import './filter.js';
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-core v6.6.0
2
+ * amis-core v6.8.0
3
3
  * Copyright 2018-2024 fex
4
4
  */
5
5
 
@@ -8,6 +8,7 @@ import { cloneObject, createObject, deleteVariable, extendObject, isObject, setV
8
8
  import { string2regExp } from './string2regExp';
9
9
  import { getVariable } from './getVariable';
10
10
  import { keyToPath } from './keyToPath';
11
+ import type { IStatusStore } from '../store/status';
11
12
  export { createObject, cloneObject, isObject, string2regExp, getVariable, setVariable, deleteVariable, keyToPath, extendObject };
12
13
  export declare function preventDefault(event: TouchEvent | Event): void;
13
14
  export declare function isMobile(): any;
@@ -52,11 +53,13 @@ export declare function hasVisibleExpression(schema: {
52
53
  hidden?: boolean;
53
54
  }): boolean;
54
55
  export declare function isVisible(schema: {
56
+ id?: string;
57
+ name?: string;
55
58
  visibleOn?: string;
56
59
  hiddenOn?: string;
57
60
  visible?: boolean;
58
61
  hidden?: boolean;
59
- }, data?: object): boolean;
62
+ }, data?: object, statusStore?: IStatusStore): any;
60
63
  export declare function isUnfolded(node: any, config: {
61
64
  foldedField?: string;
62
65
  unfoldedField?: string;
@@ -396,3 +399,4 @@ export declare class TestIdBuilder {
396
399
  } | undefined;
397
400
  getTestIdValue(data?: object): string | undefined;
398
401
  }
402
+ export declare function supportsMjs(): boolean;