amis-core 3.4.2 → 3.5.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.
- package/esm/Root.js +1 -1
- package/esm/RootRenderer.js +12 -2
- package/esm/SchemaRenderer.js +1 -1
- package/esm/Scoped.js +2 -2
- package/esm/StatusScoped.js +1 -1
- package/esm/WithRootStore.js +1 -1
- package/esm/WithStore.js +8 -4
- package/esm/actions/Action.js +1 -1
- package/esm/actions/AjaxAction.js +1 -1
- package/esm/actions/BreakAction.js +1 -1
- package/esm/actions/BroadcastAction.js +1 -1
- package/esm/actions/CmptAction.d.ts +1 -0
- package/esm/actions/CmptAction.js +23 -23
- package/esm/actions/ContinueAction.js +1 -1
- package/esm/actions/CopyAction.js +1 -1
- package/esm/actions/CustomAction.js +2 -2
- package/esm/actions/DialogAction.js +1 -1
- package/esm/actions/DrawerAction.js +1 -1
- package/esm/actions/EmailAction.js +1 -1
- package/esm/actions/LinkAction.js +1 -1
- package/esm/actions/LoopAction.js +1 -1
- package/esm/actions/PageAction.js +1 -1
- package/esm/actions/ParallelAction.js +1 -1
- package/esm/actions/StatusAction.js +1 -1
- package/esm/actions/SwitchAction.js +1 -1
- package/esm/actions/ToastAction.js +1 -1
- package/esm/components/CustomStyle.js +9 -9
- package/esm/components/LazyComponent.js +1 -1
- package/esm/components/Overlay.js +2 -1
- package/esm/components/PopOver.js +2 -2
- package/esm/env.d.ts +11 -3
- package/esm/env.js +1 -1
- package/esm/envOverwrite.js +1 -1
- package/esm/factory.js +1 -3
- package/esm/index.d.ts +1 -0
- package/esm/index.js +4 -4
- package/esm/locale.js +1 -1
- package/esm/polyfills.js +1 -1
- package/esm/renderers/Form.js +10 -4
- package/esm/renderers/Item.d.ts +2 -6
- package/esm/renderers/Item.js +11 -17
- package/esm/renderers/Options.js +2 -2
- package/esm/renderers/Placeholder.js +1 -1
- package/esm/renderers/builtin.js +1 -1
- package/esm/renderers/register.js +1 -1
- package/esm/renderers/wrapControl.js +41 -22
- package/esm/store/app.js +7 -5
- package/esm/store/combo.d.ts +120 -0
- package/esm/store/combo.js +3 -2
- package/esm/store/crud.d.ts +13 -2
- package/esm/store/crud.js +88 -23
- package/esm/store/form.d.ts +50 -0
- package/esm/store/form.js +5 -2
- package/esm/store/formItem.d.ts +1 -0
- package/esm/store/formItem.js +18 -6
- package/esm/store/iRenderer.js +2 -2
- package/esm/store/index.js +1 -1
- package/esm/store/list.js +1 -1
- package/esm/store/manager.js +1 -1
- package/esm/store/modal.js +1 -1
- package/esm/store/node.js +1 -1
- package/esm/store/pagination.js +1 -1
- package/esm/store/root.js +2 -2
- package/esm/store/service.js +1 -1
- package/esm/store/status.js +1 -1
- package/esm/store/table.d.ts +454 -83
- package/esm/store/table.js +114 -74
- package/esm/store/table2.d.ts +1 -1
- package/esm/store/table2.js +5 -4
- package/esm/theme.js +1 -1
- package/esm/types.d.ts +6 -0
- package/esm/utils/Animation.js +1 -1
- package/esm/utils/ColorScale.js +1 -1
- package/esm/utils/DataSchema.js +1 -1
- package/esm/utils/DataScope.js +1 -1
- package/esm/utils/RootClose.js +1 -1
- package/esm/utils/SimpleMap.js +1 -1
- package/esm/utils/api.js +2 -1
- package/esm/utils/arraySlice.js +1 -1
- package/esm/utils/attachmentAdpator.d.ts +2 -1
- package/esm/utils/attachmentAdpator.js +17 -11
- package/esm/utils/autobind.js +1 -1
- package/esm/utils/columnsSplit.js +1 -1
- package/esm/utils/dataMapping.js +1 -1
- package/esm/utils/date.js +1 -1
- package/esm/utils/debug.d.ts +1 -1
- package/esm/utils/debug.js +5 -3
- package/esm/utils/decodeEntity.js +1 -1
- package/esm/utils/dom.js +1 -1
- package/esm/utils/errors.js +1 -1
- package/esm/utils/escapeHtml.js +1 -1
- package/esm/utils/filter-schema.d.ts +8 -0
- package/esm/utils/filter-schema.js +32 -14
- package/esm/utils/filter.js +1 -1
- package/esm/utils/formatDuration.js +1 -1
- package/esm/utils/formula.js +1 -1
- package/esm/utils/getVariable.js +1 -1
- package/esm/utils/grammar.js +1 -1
- package/esm/utils/handleAction.js +2 -1
- package/esm/utils/helper.d.ts +15 -1
- package/esm/utils/helper.js +59 -12
- package/esm/utils/highlight.js +1 -1
- package/esm/utils/icon.js +1 -1
- package/esm/utils/image.js +1 -1
- package/esm/utils/isPureVariable.js +1 -1
- package/esm/utils/json-schema-2-amis-schema.js +1 -1
- package/esm/utils/keyToPath.js +1 -1
- package/esm/utils/makeSorter.js +1 -1
- package/esm/utils/math.js +1 -1
- package/esm/utils/memoryParse.js +1 -1
- package/esm/utils/normalizeLink.js +1 -1
- package/esm/utils/normalizeOptions.js +1 -1
- package/esm/utils/object.js +1 -1
- package/esm/utils/offset.js +1 -1
- package/esm/utils/offsetParent.js +1 -1
- package/esm/utils/optionValueCompare.js +1 -1
- package/esm/utils/position.js +1 -1
- package/esm/utils/prettyBytes.js +1 -1
- package/esm/utils/renderer-event.js +1 -1
- package/esm/utils/replaceText.d.ts +1 -1
- package/esm/utils/replaceText.js +9 -4
- package/esm/utils/resize-sensor.js +1 -1
- package/esm/utils/resolveCondition.js +1 -1
- package/esm/utils/resolveVariable.js +1 -1
- package/esm/utils/resolveVariableAndFilter.js +1 -1
- package/esm/utils/resolveVariableAndFilterForAsync.js +1 -1
- package/esm/utils/scrollPosition.js +1 -1
- package/esm/utils/string2regExp.js +1 -1
- package/esm/utils/stripNumber.js +1 -1
- package/esm/utils/style-helper.js +5 -4
- package/esm/utils/style.js +1 -1
- package/esm/utils/toNumber.js +1 -1
- package/esm/utils/tokenize.js +1 -1
- package/esm/utils/tpl-builtin.js +1 -1
- package/esm/utils/tpl-lodash.js +1 -1
- package/esm/utils/tpl.js +1 -1
- package/esm/utils/uncontrollable.js +1 -1
- package/esm/utils/validations.js +1 -1
- package/lib/Root.js +1 -1
- package/lib/RootRenderer.js +12 -2
- package/lib/SchemaRenderer.js +1 -1
- package/lib/Scoped.js +2 -2
- package/lib/StatusScoped.js +1 -1
- package/lib/WithRootStore.js +1 -1
- package/lib/WithStore.js +8 -4
- package/lib/actions/Action.js +1 -1
- package/lib/actions/AjaxAction.js +1 -1
- package/lib/actions/BreakAction.js +1 -1
- package/lib/actions/BroadcastAction.js +1 -1
- package/lib/actions/CmptAction.d.ts +1 -0
- package/lib/actions/CmptAction.js +23 -23
- package/lib/actions/ContinueAction.js +1 -1
- package/lib/actions/CopyAction.js +1 -1
- package/lib/actions/CustomAction.js +2 -2
- package/lib/actions/DialogAction.js +1 -1
- package/lib/actions/DrawerAction.js +1 -1
- package/lib/actions/EmailAction.js +1 -1
- package/lib/actions/LinkAction.js +1 -1
- package/lib/actions/LoopAction.js +1 -1
- package/lib/actions/PageAction.js +1 -1
- package/lib/actions/ParallelAction.js +1 -1
- package/lib/actions/StatusAction.js +1 -1
- package/lib/actions/SwitchAction.js +1 -1
- package/lib/actions/ToastAction.js +1 -1
- package/lib/components/CustomStyle.js +9 -9
- package/lib/components/LazyComponent.js +1 -1
- package/lib/components/Overlay.js +2 -1
- package/lib/components/PopOver.js +2 -2
- package/lib/env.d.ts +11 -3
- package/lib/env.js +1 -1
- package/lib/envOverwrite.js +1 -1
- package/lib/factory.js +1 -3
- package/lib/index.d.ts +1 -0
- package/lib/index.js +7 -2
- package/lib/locale.js +1 -1
- package/lib/polyfills.js +1 -1
- package/lib/renderers/Form.js +10 -4
- package/lib/renderers/Item.d.ts +2 -6
- package/lib/renderers/Item.js +11 -17
- package/lib/renderers/Options.js +2 -2
- package/lib/renderers/Placeholder.js +1 -1
- package/lib/renderers/builtin.js +1 -1
- package/lib/renderers/register.js +1 -1
- package/lib/renderers/wrapControl.js +41 -22
- package/lib/store/app.js +6 -4
- package/lib/store/combo.d.ts +144 -25
- package/lib/store/combo.js +3 -2
- package/lib/store/crud.d.ts +13 -2
- package/lib/store/crud.js +88 -23
- package/lib/store/form.d.ts +60 -11
- package/lib/store/form.js +5 -2
- package/lib/store/formItem.d.ts +1 -0
- package/lib/store/formItem.js +16 -4
- package/lib/store/iRenderer.js +2 -2
- package/lib/store/index.js +1 -1
- package/lib/store/list.js +1 -1
- package/lib/store/manager.js +1 -1
- package/lib/store/modal.js +1 -1
- package/lib/store/node.js +1 -1
- package/lib/store/pagination.js +1 -1
- package/lib/store/root.js +2 -2
- package/lib/store/service.js +1 -1
- package/lib/store/status.js +1 -1
- package/lib/store/table.d.ts +474 -104
- package/lib/store/table.js +112 -72
- package/lib/store/table2.d.ts +1 -1
- package/lib/store/table2.js +5 -4
- package/lib/theme.js +1 -1
- package/lib/types.d.ts +6 -0
- package/lib/utils/Animation.js +1 -1
- package/lib/utils/ColorScale.js +1 -1
- package/lib/utils/DataSchema.js +1 -1
- package/lib/utils/DataScope.js +1 -1
- package/lib/utils/RootClose.js +1 -1
- package/lib/utils/SimpleMap.js +1 -1
- package/lib/utils/api.js +2 -1
- package/lib/utils/arraySlice.js +1 -1
- package/lib/utils/attachmentAdpator.d.ts +2 -1
- package/lib/utils/attachmentAdpator.js +17 -11
- package/lib/utils/autobind.js +1 -1
- package/lib/utils/columnsSplit.js +1 -1
- package/lib/utils/dataMapping.js +1 -1
- package/lib/utils/date.js +1 -1
- package/lib/utils/debug.d.ts +1 -1
- package/lib/utils/debug.js +4 -2
- package/lib/utils/decodeEntity.js +1 -1
- package/lib/utils/dom.js +1 -1
- package/lib/utils/errors.js +1 -1
- package/lib/utils/escapeHtml.js +1 -1
- package/lib/utils/filter-schema.d.ts +8 -0
- package/lib/utils/filter-schema.js +31 -13
- package/lib/utils/filter.js +1 -1
- package/lib/utils/formatDuration.js +1 -1
- package/lib/utils/formula.js +1 -1
- package/lib/utils/getVariable.js +1 -1
- package/lib/utils/grammar.js +1 -1
- package/lib/utils/handleAction.js +2 -1
- package/lib/utils/helper.d.ts +15 -1
- package/lib/utils/helper.js +62 -11
- package/lib/utils/highlight.js +1 -1
- package/lib/utils/icon.js +1 -1
- package/lib/utils/image.js +1 -1
- package/lib/utils/isPureVariable.js +1 -1
- package/lib/utils/json-schema-2-amis-schema.js +1 -1
- package/lib/utils/keyToPath.js +1 -1
- package/lib/utils/makeSorter.js +1 -1
- package/lib/utils/math.js +1 -1
- package/lib/utils/memoryParse.js +1 -1
- package/lib/utils/normalizeLink.js +1 -1
- package/lib/utils/normalizeOptions.js +1 -1
- package/lib/utils/object.js +1 -1
- package/lib/utils/offset.js +1 -1
- package/lib/utils/offsetParent.js +1 -1
- package/lib/utils/optionValueCompare.js +1 -1
- package/lib/utils/position.js +1 -1
- package/lib/utils/prettyBytes.js +1 -1
- package/lib/utils/renderer-event.js +1 -1
- package/lib/utils/replaceText.d.ts +1 -1
- package/lib/utils/replaceText.js +9 -4
- package/lib/utils/resize-sensor.js +1 -1
- package/lib/utils/resolveCondition.js +1 -1
- package/lib/utils/resolveVariable.js +1 -1
- package/lib/utils/resolveVariableAndFilter.js +1 -1
- package/lib/utils/resolveVariableAndFilterForAsync.js +1 -1
- package/lib/utils/scrollPosition.js +1 -1
- package/lib/utils/string2regExp.js +1 -1
- package/lib/utils/stripNumber.js +1 -1
- package/lib/utils/style-helper.js +6 -4
- package/lib/utils/style.js +1 -1
- package/lib/utils/toNumber.js +1 -1
- package/lib/utils/tokenize.js +1 -1
- package/lib/utils/tpl-builtin.js +1 -1
- package/lib/utils/tpl-lodash.js +1 -1
- package/lib/utils/tpl.js +1 -1
- package/lib/utils/uncontrollable.js +1 -1
- package/lib/utils/validations.js +1 -1
- package/package.json +4 -3
package/lib/store/table.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v3.
|
|
2
|
+
* amis-core v3.5.0
|
|
3
3
|
* Copyright 2018-2023 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -13,7 +13,6 @@ var iRenderer = require('./iRenderer.js');
|
|
|
13
13
|
require('amis-formula');
|
|
14
14
|
require('moment');
|
|
15
15
|
var object = require('../utils/object.js');
|
|
16
|
-
var isPureVariable = require('../utils/isPureVariable.js');
|
|
17
16
|
var resolveVariable = require('../utils/resolveVariable.js');
|
|
18
17
|
var resolveVariableAndFilter = require('../utils/resolveVariableAndFilter.js');
|
|
19
18
|
require('lodash/isPlainObject');
|
|
@@ -35,6 +34,38 @@ var sortBy__default = /*#__PURE__*/_interopDefaultLegacy(sortBy);
|
|
|
35
34
|
* 内部列的数量 '__checkme' | '__dragme' | '__expandme'
|
|
36
35
|
*/
|
|
37
36
|
var PARTITION_INDEX = 3;
|
|
37
|
+
function initChildren(children, depth, pindex, parentId, path) {
|
|
38
|
+
if (path === void 0) { path = ''; }
|
|
39
|
+
depth += 1;
|
|
40
|
+
return children.map(function (item, index) {
|
|
41
|
+
var _a;
|
|
42
|
+
item = object.isObject(item)
|
|
43
|
+
? item
|
|
44
|
+
: {
|
|
45
|
+
item: item
|
|
46
|
+
};
|
|
47
|
+
var id = (_a = item.__id) !== null && _a !== void 0 ? _a : helper.guid();
|
|
48
|
+
return {
|
|
49
|
+
// id: String(item && (item as any)[self.primaryField] || `${pindex}-${depth}-${key}`),
|
|
50
|
+
id: String(id),
|
|
51
|
+
parentId: String(parentId),
|
|
52
|
+
key: String("".concat(pindex, "-").concat(depth, "-").concat(index)),
|
|
53
|
+
path: "".concat(path).concat(index),
|
|
54
|
+
depth: depth,
|
|
55
|
+
index: index,
|
|
56
|
+
newIndex: index,
|
|
57
|
+
pristine: item,
|
|
58
|
+
data: item,
|
|
59
|
+
defer: !!item.defer,
|
|
60
|
+
loaded: false,
|
|
61
|
+
loading: false,
|
|
62
|
+
rowSpans: {},
|
|
63
|
+
children: item && Array.isArray(item.children)
|
|
64
|
+
? initChildren(item.children, depth, index, id, "".concat(path).concat(index, "."))
|
|
65
|
+
: []
|
|
66
|
+
};
|
|
67
|
+
});
|
|
68
|
+
}
|
|
38
69
|
var Column = mobxStateTree.types
|
|
39
70
|
.model('Column', {
|
|
40
71
|
label: mobxStateTree.types.optional(mobxStateTree.types.frozen(), undefined),
|
|
@@ -47,7 +78,6 @@ var Column = mobxStateTree.types
|
|
|
47
78
|
toggable: true,
|
|
48
79
|
expandable: false,
|
|
49
80
|
checkdisable: false,
|
|
50
|
-
isPrimary: false,
|
|
51
81
|
searchable: mobxStateTree.types.maybe(mobxStateTree.types.frozen()),
|
|
52
82
|
enableSearch: true,
|
|
53
83
|
sortable: false,
|
|
@@ -63,6 +93,13 @@ var Column = mobxStateTree.types
|
|
|
63
93
|
remark: mobxStateTree.types.optional(mobxStateTree.types.frozen(), undefined),
|
|
64
94
|
className: mobxStateTree.types.union(mobxStateTree.types.string, mobxStateTree.types.frozen())
|
|
65
95
|
})
|
|
96
|
+
.views(function (self) { return ({
|
|
97
|
+
get isPrimary() {
|
|
98
|
+
var _a;
|
|
99
|
+
var table = mobxStateTree.getParent(self, 2);
|
|
100
|
+
return (((_a = table.filteredColumns.find(function (column) { return !column.type.startsWith('__'); })) === null || _a === void 0 ? void 0 : _a.id) === self.id);
|
|
101
|
+
}
|
|
102
|
+
}); })
|
|
66
103
|
.actions(function (self) { return ({
|
|
67
104
|
toggleToggle: function (min) {
|
|
68
105
|
if (min === void 0) { min = 1; }
|
|
@@ -102,17 +139,27 @@ var Row = mobxStateTree.types
|
|
|
102
139
|
rowSpans: mobxStateTree.types.frozen({}),
|
|
103
140
|
index: mobxStateTree.types.number,
|
|
104
141
|
newIndex: mobxStateTree.types.number,
|
|
105
|
-
nth: 0,
|
|
106
142
|
path: '',
|
|
107
|
-
expandable: false,
|
|
108
143
|
checkdisable: false,
|
|
109
144
|
isHover: false,
|
|
110
145
|
children: mobxStateTree.types.optional(mobxStateTree.types.array(mobxStateTree.types.late(function () { return Row; })), []),
|
|
146
|
+
defer: false,
|
|
147
|
+
loaded: false,
|
|
148
|
+
loading: false,
|
|
149
|
+
error: '',
|
|
111
150
|
depth: mobxStateTree.types.number,
|
|
112
151
|
appeared: true,
|
|
113
152
|
lazyRender: false
|
|
114
153
|
})
|
|
115
154
|
.views(function (self) { return ({
|
|
155
|
+
get expandable() {
|
|
156
|
+
var table;
|
|
157
|
+
return !!((self && self.children.length) ||
|
|
158
|
+
(self && self.defer && !self.loaded) ||
|
|
159
|
+
((table = mobxStateTree.getParent(self, self.depth * 2)) &&
|
|
160
|
+
table.footable &&
|
|
161
|
+
table.footableColumns.length));
|
|
162
|
+
},
|
|
116
163
|
get checked() {
|
|
117
164
|
return mobxStateTree.getParent(self, self.depth * 2).isSelected(self);
|
|
118
165
|
},
|
|
@@ -240,30 +287,53 @@ var Row = mobxStateTree.types
|
|
|
240
287
|
}
|
|
241
288
|
});
|
|
242
289
|
if (Array.isArray(data.children)) {
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
290
|
+
this.replaceChildren(data.children);
|
|
291
|
+
}
|
|
292
|
+
},
|
|
293
|
+
replaceChildren: function (children) {
|
|
294
|
+
var arr = children;
|
|
295
|
+
var pool = arr.concat();
|
|
296
|
+
// 把多的删了先
|
|
297
|
+
if (self.children.length > arr.length) {
|
|
298
|
+
self.children.splice(arr.length, self.children.length - arr.length);
|
|
299
|
+
}
|
|
300
|
+
var index = 0;
|
|
301
|
+
var len = self.children.length;
|
|
302
|
+
while (pool.length) {
|
|
303
|
+
// 因为父级id未更新,所以需要将子级的parentId正确指向父级id
|
|
304
|
+
var item = tslib.__assign(tslib.__assign({}, pool.shift()), { parentId: self.id });
|
|
305
|
+
if (index < len) {
|
|
306
|
+
self.children[index].replaceWith(item);
|
|
248
307
|
}
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
// 因为父级id未更新,所以需要将子级的parentId正确指向父级id
|
|
253
|
-
var item = tslib.__assign(tslib.__assign({}, pool.shift()), { parentId: self.id });
|
|
254
|
-
if (index < len) {
|
|
255
|
-
self.children[index].replaceWith(item);
|
|
256
|
-
}
|
|
257
|
-
else {
|
|
258
|
-
var row = Row.create(item);
|
|
259
|
-
self.children.push(row);
|
|
260
|
-
}
|
|
261
|
-
index++;
|
|
308
|
+
else {
|
|
309
|
+
var row = Row.create(item);
|
|
310
|
+
self.children.push(row);
|
|
262
311
|
}
|
|
312
|
+
index++;
|
|
263
313
|
}
|
|
264
314
|
},
|
|
265
315
|
markAppeared: function (value) {
|
|
266
316
|
value && (self.appeared = !!value);
|
|
317
|
+
},
|
|
318
|
+
markLoading: function (value) {
|
|
319
|
+
self.loading = !!value;
|
|
320
|
+
},
|
|
321
|
+
markLoaded: function (value) {
|
|
322
|
+
self.loaded = !!value;
|
|
323
|
+
},
|
|
324
|
+
setError: function (value) {
|
|
325
|
+
self.error = String(value);
|
|
326
|
+
},
|
|
327
|
+
resetDefered: function () {
|
|
328
|
+
self.error = '';
|
|
329
|
+
self.loaded = false;
|
|
330
|
+
},
|
|
331
|
+
setDeferData: function (_a) {
|
|
332
|
+
var children = _a.children, rest = tslib.__rest(_a, ["children"]);
|
|
333
|
+
self.data = tslib.__assign(tslib.__assign({}, self.data), rest);
|
|
334
|
+
if (Array.isArray(children)) {
|
|
335
|
+
this.replaceChildren(initChildren(children, self.depth, self.index, self.id, self.path));
|
|
336
|
+
}
|
|
267
337
|
}
|
|
268
338
|
}); });
|
|
269
339
|
var TableStore = iRenderer.iRendererStore
|
|
@@ -668,7 +738,7 @@ var TableStore = iRenderer.iRendererStore
|
|
|
668
738
|
function getTable() {
|
|
669
739
|
return tableRef;
|
|
670
740
|
}
|
|
671
|
-
function update(config) {
|
|
741
|
+
function update(config, options) {
|
|
672
742
|
var _a;
|
|
673
743
|
config.primaryField !== undefined &&
|
|
674
744
|
(self.primaryField = config.primaryField);
|
|
@@ -715,8 +785,15 @@ var TableStore = iRenderer.iRendererStore
|
|
|
715
785
|
(self.tableLayout = config.tableLayout);
|
|
716
786
|
if (config.columns && Array.isArray(config.columns)) {
|
|
717
787
|
var columns = config.columns
|
|
718
|
-
.
|
|
719
|
-
.
|
|
788
|
+
.map(function (column) {
|
|
789
|
+
if ((options === null || options === void 0 ? void 0 : options.resolveDefinitions) &&
|
|
790
|
+
typeof (column === null || column === void 0 ? void 0 : column.$ref) == 'string' &&
|
|
791
|
+
column.$ref) {
|
|
792
|
+
return tslib.__assign(tslib.__assign({}, options.resolveDefinitions(column.$ref)), column);
|
|
793
|
+
}
|
|
794
|
+
return column;
|
|
795
|
+
})
|
|
796
|
+
.filter(function (column) { return column; });
|
|
720
797
|
// 更新列顺序,afterCreate生命周期中更新columns不会触发组件的render
|
|
721
798
|
var key = getPersistDataKey(columns);
|
|
722
799
|
var data = localStorage.getItem(key);
|
|
@@ -766,11 +843,7 @@ var TableStore = iRenderer.iRendererStore
|
|
|
766
843
|
var origin = item.id
|
|
767
844
|
? originColumns_1.find(function (column) { return column.pristine.id === item.id; })
|
|
768
845
|
: originColumns_1[index];
|
|
769
|
-
return tslib.__assign(tslib.__assign({}, item), { id: (origin === null || origin === void 0 ? void 0 : origin.id) || helper.guid(), index: index, width: (origin === null || origin === void 0 ? void 0 : origin.width) || 0, minWidth: (origin === null || origin === void 0 ? void 0 : origin.minWidth) || 0, rawIndex: index - PARTITION_INDEX, type: item.type || 'plain', pristine: item.pristine || item, toggled: item.toggled !== false, breakpoint: item.breakpoint, isPrimary: index === PARTITION_INDEX
|
|
770
|
-
/** 提前映射变量,方便后续view中使用 */
|
|
771
|
-
label: isPureVariable.isPureVariable(item.label)
|
|
772
|
-
? resolveVariableAndFilter.resolveVariableAndFilter(item.label, self.data)
|
|
773
|
-
: item.label });
|
|
846
|
+
return tslib.__assign(tslib.__assign({}, item), { id: (origin === null || origin === void 0 ? void 0 : origin.id) || helper.guid(), index: index, width: (origin === null || origin === void 0 ? void 0 : origin.width) || 0, minWidth: (origin === null || origin === void 0 ? void 0 : origin.minWidth) || 0, realWidth: (origin === null || origin === void 0 ? void 0 : origin.realWidth) || 0, rawIndex: index - PARTITION_INDEX, type: item.type || 'plain', pristine: item.pristine || item, toggled: item.toggled !== false, breakpoint: item.breakpoint, isPrimary: index === PARTITION_INDEX });
|
|
774
847
|
});
|
|
775
848
|
self.columns.replace(columns);
|
|
776
849
|
}
|
|
@@ -846,11 +919,11 @@ var TableStore = iRenderer.iRendererStore
|
|
|
846
919
|
if (!table) {
|
|
847
920
|
return;
|
|
848
921
|
}
|
|
849
|
-
var cols = [].slice.call(table.querySelectorAll(':scope>
|
|
922
|
+
var cols = [].slice.call(table.querySelectorAll(':scope>thead>tr>th[data-index]'));
|
|
850
923
|
cols.forEach(function (col) {
|
|
851
924
|
var index = parseInt(col.getAttribute('data-index'), 10);
|
|
852
925
|
var column = self.columns[index];
|
|
853
|
-
column.setRealWidth(col.
|
|
926
|
+
column.setRealWidth(col.offsetWidth);
|
|
854
927
|
});
|
|
855
928
|
}
|
|
856
929
|
function combineCell(arr, keys) {
|
|
@@ -916,44 +989,11 @@ var TableStore = iRenderer.iRendererStore
|
|
|
916
989
|
}
|
|
917
990
|
return combineCell(arr, keys);
|
|
918
991
|
}
|
|
919
|
-
function initChildren(children, depth, pindex, parentId, path, nThRef) {
|
|
920
|
-
if (path === void 0) { path = ''; }
|
|
921
|
-
depth += 1;
|
|
922
|
-
return children.map(function (item, index) {
|
|
923
|
-
var _a;
|
|
924
|
-
item = object.isObject(item)
|
|
925
|
-
? item
|
|
926
|
-
: {
|
|
927
|
-
item: item
|
|
928
|
-
};
|
|
929
|
-
var id = (_a = item.__id) !== null && _a !== void 0 ? _a : helper.guid();
|
|
930
|
-
return {
|
|
931
|
-
// id: String(item && (item as any)[self.primaryField] || `${pindex}-${depth}-${key}`),
|
|
932
|
-
id: String(id),
|
|
933
|
-
parentId: String(parentId),
|
|
934
|
-
key: String("".concat(pindex, "-").concat(depth, "-").concat(index)),
|
|
935
|
-
path: "".concat(path).concat(index),
|
|
936
|
-
depth: depth,
|
|
937
|
-
index: index,
|
|
938
|
-
nth: nThRef.index++,
|
|
939
|
-
newIndex: index,
|
|
940
|
-
pristine: item,
|
|
941
|
-
data: item,
|
|
942
|
-
rowSpans: {},
|
|
943
|
-
children: item && Array.isArray(item.children)
|
|
944
|
-
? initChildren(item.children, depth, index, id, "".concat(path).concat(index, "."), nThRef)
|
|
945
|
-
: [],
|
|
946
|
-
expandable: !!((item && Array.isArray(item.children) && item.children.length) ||
|
|
947
|
-
(self.footable && self.footableColumns.length))
|
|
948
|
-
};
|
|
949
|
-
});
|
|
950
|
-
}
|
|
951
992
|
function initRows(rows, getEntryId, reUseRow) {
|
|
952
993
|
self.selectedRows.clear();
|
|
953
994
|
// self.expandedRows.clear();
|
|
954
995
|
/* 避免输入内容为非数组挂掉 */
|
|
955
996
|
rows = !Array.isArray(rows) ? [] : rows;
|
|
956
|
-
var nThRef = { index: 0 };
|
|
957
997
|
var arr = rows.map(function (item, index) {
|
|
958
998
|
var _a;
|
|
959
999
|
if (!object.isObject(item)) {
|
|
@@ -968,24 +1008,24 @@ var TableStore = iRenderer.iRendererStore
|
|
|
968
1008
|
key: String("".concat(index, "-1-").concat(index)),
|
|
969
1009
|
depth: 1,
|
|
970
1010
|
index: index,
|
|
971
|
-
nth: nThRef.index++,
|
|
972
1011
|
newIndex: index,
|
|
973
1012
|
pristine: item,
|
|
974
1013
|
path: "".concat(index),
|
|
975
1014
|
data: item,
|
|
976
1015
|
rowSpans: {},
|
|
1016
|
+
defer: !!item.defer,
|
|
1017
|
+
loaded: false,
|
|
1018
|
+
loading: false,
|
|
977
1019
|
children: item && Array.isArray(item.children)
|
|
978
|
-
? initChildren(item.children, 1, index, id, "".concat(index, ".")
|
|
979
|
-
: []
|
|
980
|
-
expandable: !!((item && Array.isArray(item.children) && item.children.length) ||
|
|
981
|
-
(self.footable && self.footableColumns.length))
|
|
1020
|
+
? initChildren(item.children, 1, index, id, "".concat(index, "."))
|
|
1021
|
+
: []
|
|
982
1022
|
};
|
|
983
1023
|
});
|
|
984
1024
|
if (self.combineNum) {
|
|
985
1025
|
arr = autoCombineCell(arr, self.columns, self.combineNum, self.combineFromIndex);
|
|
986
1026
|
}
|
|
987
1027
|
replaceRow(arr, reUseRow);
|
|
988
|
-
self.isNested = self.rows.some(function (item) { return item.children.length; });
|
|
1028
|
+
self.isNested = self.rows.some(function (item) { return item.children.length || (item.defer && !item.loaded); });
|
|
989
1029
|
// 前 20 个直接渲染,后面的按需渲染
|
|
990
1030
|
if (self.lazyRenderAfter &&
|
|
991
1031
|
self.falttenedRows.length > self.lazyRenderAfter) {
|
package/lib/store/table2.d.ts
CHANGED
|
@@ -388,7 +388,7 @@ export declare const TableStore2: import("mobx-state-tree").IModelType<{
|
|
|
388
388
|
reset(): void;
|
|
389
389
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) | null;
|
|
390
390
|
isSelected: (row: IRow2) => boolean;
|
|
391
|
-
getRowByIndex: (rowIndex: number, levels?: Array<
|
|
391
|
+
getRowByIndex: (rowIndex: number, levels?: Array<number>, rows?: Array<IRow2>) => IRow2;
|
|
392
392
|
readonly moved: number;
|
|
393
393
|
readonly movedRows: (import("mobx-state-tree").ModelCreationType<import("mobx-state-tree/dist/internal").ExtractCFromProps<{
|
|
394
394
|
storeType: import("mobx-state-tree").IType<string | undefined, string, string>;
|
package/lib/store/table2.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v3.
|
|
2
|
+
* amis-core v3.5.0
|
|
3
3
|
* Copyright 2018-2023 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -204,12 +204,13 @@ var TableStore2 = service.ServiceStore.named('TableStore2')
|
|
|
204
204
|
unSelectedItems: getUnSelectedRows().map(function (item) { return item.data; })
|
|
205
205
|
});
|
|
206
206
|
}
|
|
207
|
-
function getRowByIndex(rowIndex, levels) {
|
|
207
|
+
function getRowByIndex(rowIndex, levels, rows) {
|
|
208
|
+
rows = rows || self.rows;
|
|
208
209
|
if (levels && levels.length > 0) {
|
|
209
210
|
var index = +(levels.shift() || 0);
|
|
210
|
-
return getRowByIndex(
|
|
211
|
+
return getRowByIndex(rowIndex, levels, rows[index].children);
|
|
211
212
|
}
|
|
212
|
-
return
|
|
213
|
+
return rows[rowIndex];
|
|
213
214
|
}
|
|
214
215
|
function isSelected(row) {
|
|
215
216
|
return !!~self.selectedRows.indexOf(row);
|
package/lib/theme.js
CHANGED
package/lib/types.d.ts
CHANGED
|
@@ -186,8 +186,14 @@ export interface ApiObject extends BaseApiObject {
|
|
|
186
186
|
mockResponse?: PlainObject;
|
|
187
187
|
adaptor?: (payload: object, response: fetcherResult, api: ApiObject, context: any) => any;
|
|
188
188
|
requestAdaptor?: (api: ApiObject, context: any) => ApiObject | Promise<ApiObject>;
|
|
189
|
+
/**
|
|
190
|
+
* api 发送上下文,可以用来传递一些数据给 api 的 adaptor
|
|
191
|
+
* @readonly
|
|
192
|
+
*/
|
|
193
|
+
context?: any;
|
|
189
194
|
/** 是否过滤为空字符串的 query 参数 */
|
|
190
195
|
filterEmptyQuery?: boolean;
|
|
196
|
+
downloadFileName?: string;
|
|
191
197
|
}
|
|
192
198
|
export type ApiString = string;
|
|
193
199
|
export type Api = ApiString | ApiObject;
|
package/lib/utils/Animation.js
CHANGED
package/lib/utils/ColorScale.js
CHANGED
package/lib/utils/DataSchema.js
CHANGED
package/lib/utils/DataScope.js
CHANGED
package/lib/utils/RootClose.js
CHANGED
package/lib/utils/SimpleMap.js
CHANGED
package/lib/utils/api.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v3.
|
|
2
|
+
* amis-core v3.5.0
|
|
3
3
|
* Copyright 2018-2023 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -379,6 +379,7 @@ function wrapFetcher(fn, tracker) {
|
|
|
379
379
|
switch (_d.label) {
|
|
380
380
|
case 0:
|
|
381
381
|
api = buildApi(api, data, options);
|
|
382
|
+
api.context = data;
|
|
382
383
|
if (!api.requestAdaptor) return [3 /*break*/, 2];
|
|
383
384
|
debug.debug('api', 'before requestAdaptor', api);
|
|
384
385
|
return [4 /*yield*/, api.requestAdaptor(api, data)];
|
package/lib/utils/arraySlice.js
CHANGED
|
@@ -4,5 +4,6 @@
|
|
|
4
4
|
* @param __
|
|
5
5
|
* @returns
|
|
6
6
|
*/
|
|
7
|
-
|
|
7
|
+
import { ApiObject } from '../types';
|
|
8
|
+
export declare function attachmentAdpator(response: any, __: Function, api?: ApiObject): any;
|
|
8
9
|
export default attachmentAdpator;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v3.
|
|
2
|
+
* amis-core v3.5.0
|
|
3
3
|
* Copyright 2018-2023 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -15,21 +15,27 @@ var tslib = require('tslib');
|
|
|
15
15
|
* @param __
|
|
16
16
|
* @returns
|
|
17
17
|
*/
|
|
18
|
-
function attachmentAdpator(response, __) {
|
|
18
|
+
function attachmentAdpator(response, __, api) {
|
|
19
19
|
if (response && response.headers && response.headers['content-disposition']) {
|
|
20
20
|
var disposition = response.headers['content-disposition'];
|
|
21
21
|
var filename = '';
|
|
22
22
|
if (disposition && disposition.indexOf('attachment') !== -1) {
|
|
23
|
-
//
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
var matches = disposition.match(filenameRegex);
|
|
27
|
-
if (matches && matches.length) {
|
|
28
|
-
filename = matches[1].replace("UTF-8''", '').replace(/['"]/g, '');
|
|
23
|
+
// 如果 api 中配置了,则优先用 api 中的配置
|
|
24
|
+
if (api === null || api === void 0 ? void 0 : api.downloadFileName) {
|
|
25
|
+
filename = api.downloadFileName;
|
|
29
26
|
}
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
27
|
+
else {
|
|
28
|
+
// disposition 有可能是 attachment; filename="??.xlsx"; filename*=UTF-8''%E4%B8%AD%E6%96%87.xlsx
|
|
29
|
+
// 这种情况下最后一个才是正确的文件名
|
|
30
|
+
var filenameRegex = /filename[^;=\n]*=((['"]).*?\2|[^;\n]*)/i;
|
|
31
|
+
var matches = disposition.match(filenameRegex);
|
|
32
|
+
if (matches && matches.length) {
|
|
33
|
+
filename = matches[1].replace("UTF-8''", '').replace(/['"]/g, '');
|
|
34
|
+
}
|
|
35
|
+
// 很可能是中文被 url-encode 了
|
|
36
|
+
if (filename && filename.replace(/[^%]/g, '').length > 2) {
|
|
37
|
+
filename = decodeURIComponent(filename);
|
|
38
|
+
}
|
|
33
39
|
}
|
|
34
40
|
var type = response.headers['content-type'];
|
|
35
41
|
var blob = response.data.toString() === '[object Blob]'
|
package/lib/utils/autobind.js
CHANGED
package/lib/utils/dataMapping.js
CHANGED
package/lib/utils/date.js
CHANGED
package/lib/utils/debug.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* amis 运行时调试功能,为了避免循环引用,这个组件不要依赖 amis 里的组件
|
|
3
3
|
*/
|
|
4
4
|
import React, { Component } from 'react';
|
|
5
|
-
export declare const JsonView: React.LazyExoticComponent<React.ComponentType<
|
|
5
|
+
export declare const JsonView: React.LazyExoticComponent<React.ComponentType<any>>;
|
|
6
6
|
export declare function enableDebug(): void;
|
|
7
7
|
export declare function disableDebug(): void;
|
|
8
8
|
interface DebugWrapperProps {
|
package/lib/utils/debug.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* amis-core v3.
|
|
2
|
+
* amis-core v3.5.0
|
|
3
3
|
* Copyright 2018-2023 fex
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -24,7 +24,9 @@ var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
|
|
|
24
24
|
var __react_jsx__ = require('react');
|
|
25
25
|
var _J$X_ = (__react_jsx__["default"] || __react_jsx__).createElement;
|
|
26
26
|
(__react_jsx__["default"] || __react_jsx__).Fragment;
|
|
27
|
-
var JsonView = React__default["default"].lazy(function () {
|
|
27
|
+
var JsonView = React__default["default"].lazy(function () {
|
|
28
|
+
return Promise.resolve().then(function() {return new Promise(function(fullfill) {require(['react-json-view'], function(mod) {fullfill(tslib.__importStar(mod))})})}).then(helper.importLazyComponent);
|
|
29
|
+
});
|
|
28
30
|
/** @class */ ((function () {
|
|
29
31
|
function Log() {
|
|
30
32
|
this.cat = '';
|
package/lib/utils/dom.js
CHANGED
package/lib/utils/errors.js
CHANGED
package/lib/utils/escapeHtml.js
CHANGED
|
@@ -1,4 +1,12 @@
|
|
|
1
1
|
import { PlainObject } from '../types';
|
|
2
|
+
import type { ClassValue } from '../theme';
|
|
3
|
+
/**
|
|
4
|
+
* 计算下发给子组件的className,处理对象类型的className,将其中的表达式计算出来,避免被classnames识别为true
|
|
5
|
+
*
|
|
6
|
+
* @param value - CSS类名值
|
|
7
|
+
* @param ctx - 数据域
|
|
8
|
+
*/
|
|
9
|
+
export declare function filterClassNameObject(classValue: ClassValue, ctx?: Record<string, any>): ClassValue;
|
|
2
10
|
/**
|
|
3
11
|
* 处理 Props 数据,所有带 On 结束的做一次
|
|
4
12
|
*
|