@webitel/ui-datalist 1.1.26 → 1.1.28
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/Readme.md
CHANGED
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
High level package. Contains neccessary tools for building datalists in Webitel frontend projects.
|
|
4
4
|
|
|
5
|
+
## Build steps
|
|
6
|
+
|
|
7
|
+
1. `npm ci` - install dependencies
|
|
8
|
+
2. `npm version patch --git-tag-version false` - bump version
|
|
9
|
+
3. `npm run lint:fix || true` - fix lint errors
|
|
10
|
+
4. `(npm run build:types || true)` - build types
|
|
11
|
+
5. `npm run lint:package` - lint package
|
|
12
|
+
6. `npm run utils:publish` - publish library
|
|
13
|
+
|
|
5
14
|
## Deps:
|
|
6
15
|
|
|
7
16
|
* `@webitel/ui-sdk`
|
package/package.json
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webitel/ui-datalist",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.28",
|
|
4
4
|
"description": "Toolkit for building data lists in webitel ui system",
|
|
5
5
|
"scripts": {
|
|
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",
|
|
7
6
|
"build:types": "vue-tsc -p ./tsconfig.build.json",
|
|
8
7
|
"lint:fix": "npx biome check --write ./src",
|
|
9
8
|
"biome:ci:gh": "biome ci ./src --reporter=github",
|
|
@@ -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
|
|