@webitel/ui-datalist 1.1.26 → 1.1.27
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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webitel/ui-datalist",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.27",
|
|
4
4
|
"description": "Toolkit for building data lists in webitel ui system",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"make-all": "npm version patch --git-tag-version false && ( npm run lint:fix || true) && (npm run build:types || true) && npm run lint:package && npm run utils:publish",
|
|
@@ -101,36 +101,48 @@ export const tableHeadersStoreBody = ({
|
|
|
101
101
|
};
|
|
102
102
|
|
|
103
103
|
const updateFields = (fields: string[]) => {
|
|
104
|
-
const
|
|
104
|
+
const fieldsSet = new Set(fields);
|
|
105
|
+
const mainFieldNames = new Set(headers.value.map((header) => header.field));
|
|
106
|
+
|
|
107
|
+
const mainHeaders = headers.value.map((header: WtTableHeader) => ({
|
|
105
108
|
...header,
|
|
106
|
-
show:
|
|
109
|
+
show: fieldsSet.has(header.field),
|
|
107
110
|
}));
|
|
108
111
|
|
|
109
|
-
const
|
|
110
|
-
(field) => !
|
|
112
|
+
const customHeaders = fields
|
|
113
|
+
.filter((field) => !mainFieldNames.has(field))
|
|
114
|
+
.map((field) => ({
|
|
115
|
+
show: true,
|
|
116
|
+
field,
|
|
117
|
+
shouldBeInitialized: true,
|
|
118
|
+
}));
|
|
119
|
+
|
|
120
|
+
const headersByField = new Map(
|
|
121
|
+
[
|
|
122
|
+
...mainHeaders,
|
|
123
|
+
...customHeaders,
|
|
124
|
+
].map((header) => [
|
|
125
|
+
header.field,
|
|
126
|
+
header,
|
|
127
|
+
]),
|
|
111
128
|
);
|
|
112
|
-
const customFieldHeaders = customFields.map((field) => ({
|
|
113
|
-
show: true,
|
|
114
|
-
field,
|
|
115
|
-
shouldBeInitialized: true,
|
|
116
|
-
}));
|
|
117
129
|
|
|
118
|
-
const
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
130
|
+
const headersInPersistedOrder = fields.flatMap((field) => {
|
|
131
|
+
const header = headersByField.get(field);
|
|
132
|
+
if (!header) return [];
|
|
133
|
+
headersByField.delete(field);
|
|
134
|
+
return [
|
|
135
|
+
header,
|
|
136
|
+
];
|
|
137
|
+
});
|
|
126
138
|
|
|
127
|
-
const
|
|
128
|
-
|
|
129
|
-
|
|
139
|
+
const hiddenHeaders = [
|
|
140
|
+
...headersByField.values(),
|
|
141
|
+
];
|
|
130
142
|
|
|
131
143
|
updateShownHeaders([
|
|
132
|
-
...
|
|
133
|
-
...
|
|
144
|
+
...headersInPersistedOrder,
|
|
145
|
+
...hiddenHeaders,
|
|
134
146
|
]);
|
|
135
147
|
};
|
|
136
148
|
|