@webitel/ui-sdk 25.10.2 → 25.10.4
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/dist/ui-sdk.css +1 -1
- package/dist/ui-sdk.js +2 -2
- package/dist/ui-sdk.umd.cjs +1 -1
- package/package.json +1 -1
- package/src/api/clients/roles/roles.ts +19 -0
- package/src/components/wt-checkbox/wt-checkbox.vue +1 -1
- package/src/enums/ProcessingTableColumnType/ProcessingTableColumnType.ts +10 -0
- package/src/enums/index.ts +2 -0
- package/src/modules/Userinfo/classes/ApplicationsAccess.js +63 -31
- package/src/modules/Userinfo/store/UserinfoStoreModule.js +1 -2
- package/types/enums/ProcessingTableColumnType/ProcessingTableColumnType.d.ts +8 -0
- package/types/enums/index.d.ts +2 -1
- package/types/modules/Userinfo/classes/ApplicationsAccess.d.ts +3 -371
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webitel/ui-sdk",
|
|
3
|
-
"version": "25.10.
|
|
3
|
+
"version": "25.10.4",
|
|
4
4
|
"private": false,
|
|
5
5
|
"scripts": {
|
|
6
6
|
"make-all": "npm version patch --git-tag-version false && npm run build && (npm run build:types || true) && (npm run lint:fix || true) && npm run publish-lib",
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
import deepCopy from 'deep-copy';
|
|
1
2
|
import { RolesApiFactory } from 'webitel-sdk';
|
|
2
3
|
|
|
4
|
+
import ApplicationsAccess from '../../../modules/Userinfo/classes/ApplicationsAccess.js';
|
|
3
5
|
import {
|
|
4
6
|
getDefaultGetListResponse,
|
|
5
7
|
getDefaultGetParams,
|
|
@@ -23,6 +25,12 @@ const rolesApiFactory = RolesApiFactory(configuration, '', instance);
|
|
|
23
25
|
|
|
24
26
|
const fieldsToSend = ['name', 'description', 'permissions', 'metadata'];
|
|
25
27
|
|
|
28
|
+
const preRequestHandler = (item) => {
|
|
29
|
+
const copy = deepCopy(item);
|
|
30
|
+
copy.metadata.access = ApplicationsAccess.minify(copy.metadata.access);
|
|
31
|
+
return copy;
|
|
32
|
+
};
|
|
33
|
+
|
|
26
34
|
const getRoleList = async (params) => {
|
|
27
35
|
const fieldsToSend = ['page', 'size', 'q', 'sort', 'fields', 'id'];
|
|
28
36
|
|
|
@@ -71,11 +79,20 @@ const getRole = async ({ itemId: id }) => {
|
|
|
71
79
|
metadata: {},
|
|
72
80
|
};
|
|
73
81
|
|
|
82
|
+
const itemResponseHandler = (response) => {
|
|
83
|
+
const copy = deepCopy(response);
|
|
84
|
+
copy.metadata.access = new ApplicationsAccess({
|
|
85
|
+
access: copy.metadata.access,
|
|
86
|
+
}).getAccess();
|
|
87
|
+
return copy;
|
|
88
|
+
};
|
|
89
|
+
|
|
74
90
|
try {
|
|
75
91
|
const response = await rolesApiFactory.readRole(id, fieldsToSend);
|
|
76
92
|
return applyTransform(response.data, [
|
|
77
93
|
// snakeToCamel(), // prevent role "access" custom lookups from being converted to camelCase
|
|
78
94
|
merge(defaultObject),
|
|
95
|
+
itemResponseHandler,
|
|
79
96
|
]);
|
|
80
97
|
} catch (err) {
|
|
81
98
|
throw applyTransform(err, [notify]);
|
|
@@ -84,6 +101,7 @@ const getRole = async ({ itemId: id }) => {
|
|
|
84
101
|
|
|
85
102
|
const addRole = async ({ itemInstance }) => {
|
|
86
103
|
const item = applyTransform(itemInstance, [
|
|
104
|
+
preRequestHandler,
|
|
87
105
|
sanitize(fieldsToSend),
|
|
88
106
|
camelToSnake(),
|
|
89
107
|
]);
|
|
@@ -99,6 +117,7 @@ const addRole = async ({ itemInstance }) => {
|
|
|
99
117
|
|
|
100
118
|
const updateRole = async ({ itemInstance, itemId: id }) => {
|
|
101
119
|
const item = applyTransform(itemInstance, [
|
|
120
|
+
preRequestHandler,
|
|
102
121
|
sanitize(fieldsToSend),
|
|
103
122
|
camelToSnake(),
|
|
104
123
|
]);
|
|
@@ -58,7 +58,7 @@ const model = defineModel<boolean | string[]>('selected', {required: true});
|
|
|
58
58
|
|
|
59
59
|
const checkboxId = `checkbox-${Math.random().toString(36).slice(2, 11)}`;
|
|
60
60
|
|
|
61
|
-
const isSingle = computed(() =>
|
|
61
|
+
const isSingle = computed(() => !Array.isArray(model.value));
|
|
62
62
|
|
|
63
63
|
const isChecked = computed(() => {
|
|
64
64
|
if (isSingle.value) {
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export const ProcessingTableColumnType = {
|
|
2
|
+
TEXT: 'text',
|
|
3
|
+
NUMBER: 'number',
|
|
4
|
+
BOOL: 'bool',
|
|
5
|
+
DATETIME: 'datetime',
|
|
6
|
+
LINK: 'link',
|
|
7
|
+
} as const;
|
|
8
|
+
|
|
9
|
+
export type ProcessingTableColumnType =
|
|
10
|
+
(typeof ProcessingTableColumnType)[keyof typeof ProcessingTableColumnType];
|
package/src/enums/index.ts
CHANGED
|
@@ -7,6 +7,7 @@ import { ComponentSize } from './ComponentSize/ComponentSize';
|
|
|
7
7
|
import { CrudAction } from './CrudAction/CrudAction';
|
|
8
8
|
import IconAction from './IconAction/IconAction.enum.js';
|
|
9
9
|
import { IconColor } from './IconColor/IconColor';
|
|
10
|
+
import { ProcessingTableColumnType } from './ProcessingTableColumnType/ProcessingTableColumnType';
|
|
10
11
|
import QueueType from './QueueType/QueueType.enum.js';
|
|
11
12
|
import { RelativeDatetimeValue } from './RelativeDatetimeValue/RelativeDatetimeValue';
|
|
12
13
|
import TypesExportedSettings from './TypesExportedSettings/TypesExportedSettings.enum.js';
|
|
@@ -32,6 +33,7 @@ export {
|
|
|
32
33
|
CrudAction,
|
|
33
34
|
IconAction,
|
|
34
35
|
IconColor,
|
|
36
|
+
ProcessingTableColumnType,
|
|
35
37
|
QueueType,
|
|
36
38
|
RelativeDatetimeValue,
|
|
37
39
|
SupervisorSections,
|
|
@@ -17,182 +17,242 @@ import WebitelApplications from '../../../enums/WebitelApplications/WebitelAppli
|
|
|
17
17
|
const applicationsAccess = (value = true) => ({
|
|
18
18
|
[WebitelApplications.AGENT]: {
|
|
19
19
|
_enabled: value,
|
|
20
|
+
_locale: `WebitelApplications.${WebitelApplications.AGENT}.name`,
|
|
20
21
|
},
|
|
21
22
|
[WebitelApplications.HISTORY]: {
|
|
22
23
|
_enabled: value,
|
|
24
|
+
_locale: `WebitelApplications.${WebitelApplications.HISTORY}.name`,
|
|
23
25
|
},
|
|
24
26
|
[WebitelApplications.ANALYTICS]: {
|
|
25
27
|
_enabled: value,
|
|
28
|
+
_locale: `WebitelApplications.${WebitelApplications.ANALYTICS}.name`,
|
|
26
29
|
},
|
|
27
30
|
[WebitelApplications.SUPERVISOR]: {
|
|
28
31
|
_enabled: value,
|
|
32
|
+
_locale: `WebitelApplications.${WebitelApplications.SUPERVISOR}.name`,
|
|
29
33
|
[SupervisorSections.QUEUES]: {
|
|
30
34
|
_enabled: value,
|
|
35
|
+
_locale: `WebitelApplications.${WebitelApplications.SUPERVISOR}.sections.${SupervisorSectionsNew.Queues}`,
|
|
31
36
|
},
|
|
32
37
|
[SupervisorSections.AGENTS]: {
|
|
33
38
|
_enabled: value,
|
|
39
|
+
_locale: `WebitelApplications.${WebitelApplications.SUPERVISOR}.sections.${SupervisorSectionsNew.Agents}`,
|
|
34
40
|
},
|
|
35
41
|
[SupervisorSections.ACTIVE_CALLS]: {
|
|
36
42
|
_enabled: value,
|
|
43
|
+
_locale: `WebitelApplications.${WebitelApplications.SUPERVISOR}.sections.${SupervisorSectionsNew.ActiveCalls}`,
|
|
37
44
|
},
|
|
38
45
|
},
|
|
39
46
|
[WebitelApplications.ADMIN]: {
|
|
40
47
|
_enabled: value,
|
|
48
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.name`,
|
|
41
49
|
[AdminSections.LICENSE]: {
|
|
42
50
|
_enabled: value,
|
|
51
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.License}`,
|
|
43
52
|
},
|
|
44
53
|
[AdminSections.USERS]: {
|
|
45
54
|
_enabled: value,
|
|
55
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Users}`,
|
|
46
56
|
},
|
|
47
57
|
[AdminSections.DEVICES]: {
|
|
48
58
|
_enabled: value,
|
|
59
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Devices}`,
|
|
49
60
|
},
|
|
50
61
|
[AdminSections.FLOW]: {
|
|
51
62
|
_enabled: value,
|
|
63
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Flow}`,
|
|
52
64
|
},
|
|
53
65
|
[AdminSections.DIALPLAN]: {
|
|
54
66
|
_enabled: value,
|
|
67
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Dialplan}`,
|
|
55
68
|
},
|
|
56
69
|
[AdminSections.GATEWAYS]: {
|
|
57
70
|
_enabled: value,
|
|
71
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Gateways}`,
|
|
58
72
|
},
|
|
59
73
|
[AdminSections.CHATPLAN]: {
|
|
60
74
|
_enabled: value,
|
|
75
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Chatplan}`,
|
|
61
76
|
},
|
|
62
77
|
[AdminSections.CHAT_GATEWAYS]: {
|
|
63
78
|
_enabled: value,
|
|
79
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.ChatGateways}`,
|
|
64
80
|
},
|
|
65
81
|
[AdminSections.SKILLS]: {
|
|
66
82
|
_enabled: value,
|
|
83
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Skills}`,
|
|
67
84
|
},
|
|
68
85
|
[AdminSections.BUCKETS]: {
|
|
69
86
|
_enabled: value,
|
|
87
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Buckets}`,
|
|
70
88
|
},
|
|
71
89
|
[AdminSections.BLACKLIST]: {
|
|
72
90
|
_enabled: value,
|
|
91
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Blacklist}`,
|
|
73
92
|
},
|
|
74
93
|
[AdminSections.REGIONS]: {
|
|
75
94
|
_enabled: value,
|
|
95
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Regions}`,
|
|
76
96
|
},
|
|
77
97
|
[AdminSections.CALENDARS]: {
|
|
78
98
|
_enabled: value,
|
|
99
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Calendars}`,
|
|
79
100
|
},
|
|
80
101
|
[AdminSections.COMMUNICATIONS]: {
|
|
81
102
|
_enabled: value,
|
|
103
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Communications}`,
|
|
82
104
|
},
|
|
83
105
|
[AdminSections.PAUSE_CAUSE]: {
|
|
84
106
|
_enabled: value,
|
|
107
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.PauseCause}`,
|
|
85
108
|
},
|
|
86
109
|
[AdminSections.MEDIA]: {
|
|
87
110
|
_enabled: value,
|
|
111
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Media}`,
|
|
88
112
|
},
|
|
89
113
|
[AdminSections.SHIFT_TEMPLATES]: {
|
|
90
114
|
_enabled: value,
|
|
115
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.ShiftTemplates}`,
|
|
91
116
|
},
|
|
92
117
|
[AdminSections.PAUSE_TEMPLATES]: {
|
|
93
118
|
_enabled: value,
|
|
119
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.PauseTemplates}`,
|
|
94
120
|
},
|
|
95
121
|
[AdminSections.WORKING_CONDITIONS]: {
|
|
96
122
|
_enabled: value,
|
|
123
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.WorkingConditions}`,
|
|
97
124
|
},
|
|
98
125
|
[AdminSections.QUICK_REPLIES]: {
|
|
99
126
|
_enabled: value,
|
|
127
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.QuickReplies}`,
|
|
100
128
|
},
|
|
101
129
|
[AdminSections.AGENTS]: {
|
|
102
130
|
_enabled: value,
|
|
131
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Agents}`,
|
|
103
132
|
},
|
|
104
133
|
[AdminSections.TEAMS]: {
|
|
105
134
|
_enabled: value,
|
|
135
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Teams}`,
|
|
106
136
|
},
|
|
107
137
|
[AdminSections.RESOURCES]: {
|
|
108
138
|
_enabled: value,
|
|
139
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Resources}`,
|
|
109
140
|
},
|
|
110
141
|
[AdminSections.RESOURCE_GROUPS]: {
|
|
111
142
|
_enabled: value,
|
|
143
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.ResourceGroups}`,
|
|
112
144
|
},
|
|
113
145
|
[AdminSections.QUEUES]: {
|
|
114
146
|
_enabled: value,
|
|
147
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Queues}`,
|
|
115
148
|
},
|
|
116
149
|
[AdminSections.STORAGE]: {
|
|
117
150
|
_enabled: value,
|
|
151
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Storage}`,
|
|
118
152
|
},
|
|
119
153
|
[AdminSections.STORAGE_POLICIES]: {
|
|
120
154
|
_enabled: value,
|
|
155
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.StoragePolicies}`,
|
|
121
156
|
},
|
|
122
157
|
[AdminSections.COGNITIVE_PROFILES]: {
|
|
123
158
|
_enabled: value,
|
|
159
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.CognitiveProfiles}`,
|
|
124
160
|
},
|
|
125
161
|
[AdminSections.EMAIL_PROFILES]: {
|
|
126
162
|
_enabled: value,
|
|
163
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.EmailProfiles}`,
|
|
127
164
|
},
|
|
128
165
|
[AdminSections.SINGLE_SIGN_ON]: {
|
|
129
166
|
_enabled: value,
|
|
167
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.SingleSignOn}`,
|
|
130
168
|
},
|
|
131
169
|
[AdminSections.IMPORT_CSV]: {
|
|
132
170
|
_enabled: value,
|
|
171
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.ImportCsv}`,
|
|
133
172
|
},
|
|
134
173
|
[AdminSections.TRIGGERS]: {
|
|
135
174
|
_enabled: value,
|
|
175
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Triggers}`,
|
|
136
176
|
},
|
|
137
177
|
[AdminSections.ROLES]: {
|
|
138
178
|
_enabled: value,
|
|
179
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Roles}`,
|
|
139
180
|
},
|
|
140
181
|
[AdminSections.OBJECTS]: {
|
|
141
182
|
_enabled: value,
|
|
183
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Objects}`,
|
|
142
184
|
},
|
|
143
185
|
[AdminSections.CHANGELOGS]: {
|
|
144
186
|
_enabled: value,
|
|
187
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Changelogs}`,
|
|
145
188
|
},
|
|
146
189
|
[AdminSections.CONFIGURATION]: {
|
|
147
190
|
_enabled: value,
|
|
191
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.Configuration}`,
|
|
148
192
|
},
|
|
149
193
|
[AdminSections.GLOBAL_VARIABLES]: {
|
|
150
194
|
_enabled: value,
|
|
195
|
+
_locale: `WebitelApplications.${WebitelApplications.ADMIN}.sections.${AdminSectionsNew.GlobalVariables}`,
|
|
151
196
|
},
|
|
152
197
|
},
|
|
153
198
|
[WebitelApplications.AUDIT]: {
|
|
154
199
|
_enabled: value,
|
|
200
|
+
_locale: `WebitelApplications.${WebitelApplications.AUDIT}.name`,
|
|
155
201
|
[AuditorSections.SCORECARDS]: {
|
|
156
202
|
_enabled: value,
|
|
203
|
+
_locale: `WebitelApplications.${WebitelApplications.AUDIT}.sections.${AuditorSectionsNew.Scorecards}`,
|
|
157
204
|
},
|
|
158
205
|
},
|
|
159
206
|
[WebitelApplications.CRM]: {
|
|
160
207
|
_enabled: value,
|
|
208
|
+
_locale: `WebitelApplications.${WebitelApplications.CRM}.name`,
|
|
161
209
|
[CrmSections.CONTACTS]: {
|
|
162
210
|
_enabled: value,
|
|
211
|
+
_locale: `WebitelApplications.${WebitelApplications.CRM}.sections.${CrmSectionsNew.Contacts}`,
|
|
163
212
|
},
|
|
164
213
|
[CrmSections.CASES]: {
|
|
165
214
|
_enabled: value,
|
|
215
|
+
_locale: `WebitelApplications.${WebitelApplications.CRM}.sections.${CrmSectionsNew.Cases}`,
|
|
166
216
|
},
|
|
167
217
|
[CrmSections.SLAS]: {
|
|
168
218
|
_enabled: value,
|
|
219
|
+
_locale: `WebitelApplications.${WebitelApplications.CRM}.sections.${CrmSectionsNew.Slas}`,
|
|
169
220
|
},
|
|
170
221
|
[CrmSections.SOURCES]: {
|
|
171
222
|
_enabled: value,
|
|
223
|
+
_locale: `WebitelApplications.${WebitelApplications.CRM}.sections.${CrmSectionsNew.Sources}`,
|
|
172
224
|
},
|
|
173
225
|
[CrmSections.SERVICE_CATALOGS]: {
|
|
174
226
|
_enabled: value,
|
|
227
|
+
_locale: `WebitelApplications.${WebitelApplications.CRM}.sections.${CrmSectionsNew.ServiceCatalogs}`,
|
|
175
228
|
},
|
|
176
229
|
[CrmSections.CLOSE_REASON_GROUPS]: {
|
|
177
230
|
_enabled: value,
|
|
231
|
+
_locale: `WebitelApplications.${WebitelApplications.CRM}.sections.${CrmSectionsNew.CloseReasonGroups}`,
|
|
178
232
|
},
|
|
179
233
|
[CrmSections.CONTACT_GROUPS]: {
|
|
180
234
|
_enabled: value,
|
|
235
|
+
_locale: `WebitelApplications.${WebitelApplications.CRM}.sections.${CrmSectionsNew.ContactGroups}`,
|
|
181
236
|
},
|
|
182
237
|
[CrmSections.PRIORITIES]: {
|
|
183
238
|
_enabled: value,
|
|
239
|
+
_locale: `WebitelApplications.${WebitelApplications.CRM}.sections.${CrmSectionsNew.Priorities}`,
|
|
184
240
|
},
|
|
185
241
|
[CrmSections.STATUSES]: {
|
|
186
242
|
_enabled: value,
|
|
243
|
+
_locale: `WebitelApplications.${WebitelApplications.CRM}.sections.${CrmSectionsNew.Statuses}`,
|
|
187
244
|
},
|
|
188
245
|
[CrmSectionsNew.CasesExtensions]: {
|
|
189
246
|
_enabled: value,
|
|
247
|
+
_locale: `WebitelApplications.overrideApplicationsAccess.${WebitelApplications.CRM}.sections.${CrmSectionsNew.CasesExtensions}`,
|
|
190
248
|
},
|
|
191
249
|
[CrmSectionsNew.ContactsExtensions]: {
|
|
192
250
|
_enabled: value,
|
|
251
|
+
_locale: `WebitelApplications.overrideApplicationsAccess.${WebitelApplications.CRM}.sections.${CrmSectionsNew.ContactsExtensions}`,
|
|
193
252
|
},
|
|
194
253
|
[CrmSectionsNew.CustomLookups]: {
|
|
195
254
|
_enabled: value,
|
|
255
|
+
_locale: `WebitelApplications.overrideApplicationsAccess.${WebitelApplications.CRM}.sections.${CrmSectionsNew.CustomLookups}`,
|
|
196
256
|
},
|
|
197
257
|
},
|
|
198
258
|
});
|
|
@@ -226,37 +286,9 @@ export default class ApplicationsAccess {
|
|
|
226
286
|
}
|
|
227
287
|
|
|
228
288
|
// restore minified schema from API response
|
|
229
|
-
static
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
return fullAccess;
|
|
233
|
-
}
|
|
234
|
-
|
|
235
|
-
static async appendCustomTypesToUiSectionsVisibilityAccess(access) {
|
|
236
|
-
const targetApp = WebitelApplications.CRM;
|
|
237
|
-
const { items: customTypes } = await CustomTypesAPI.getList({ size: -1 }, { silent: true });
|
|
238
|
-
|
|
239
|
-
const customTypesAccess = customTypes
|
|
240
|
-
.filter((customType) => !access[targetApp]?.[customType.repo]) // already explicitly declared in access
|
|
241
|
-
.reduce((acc, customType) => {
|
|
242
|
-
const enabledValue = access[targetApp]?.[customType.repo]?._enabled;
|
|
243
|
-
const implicitlyEnabled = enabledValue === undefined;
|
|
244
|
-
|
|
245
|
-
acc[customType.repo] = {
|
|
246
|
-
name: customType.repo,
|
|
247
|
-
displayName: customType.name,
|
|
248
|
-
enabled: enabledValue || implicitlyEnabled,
|
|
249
|
-
};
|
|
250
|
-
|
|
251
|
-
return acc;
|
|
252
|
-
}, {});
|
|
253
|
-
|
|
254
|
-
access[targetApp] = {
|
|
255
|
-
...access[targetApp],
|
|
256
|
-
...customTypesAccess,
|
|
257
|
-
};
|
|
258
|
-
|
|
259
|
-
return access;
|
|
289
|
+
static restore(access) {
|
|
290
|
+
return deepmerge(applicationsAccess(false), access);
|
|
291
|
+
// return deepmerge(access, applicationsAccess(false));
|
|
260
292
|
}
|
|
261
293
|
|
|
262
294
|
getAccess() {
|
|
@@ -118,10 +118,9 @@ export default class UserinfoStoreModule extends BaseStoreModule {
|
|
|
118
118
|
|
|
119
119
|
await context.dispatch('SET_SESSION', session);
|
|
120
120
|
const access = await userinfo.getUiVisibilityAccess();
|
|
121
|
-
const fullAccess = await ApplicationsAccess.restore(access);
|
|
122
121
|
await context.dispatch(
|
|
123
122
|
'SET_APPLICATIONS_ACCESS',
|
|
124
|
-
|
|
123
|
+
new ApplicationsAccess({ access }).getAccess(),
|
|
125
124
|
);
|
|
126
125
|
await context.dispatch('AFTER_OPEN_SESSION_HOOK');
|
|
127
126
|
},
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const ProcessingTableColumnType: {
|
|
2
|
+
readonly TEXT: "text";
|
|
3
|
+
readonly NUMBER: "number";
|
|
4
|
+
readonly BOOL: "bool";
|
|
5
|
+
readonly DATETIME: "datetime";
|
|
6
|
+
readonly LINK: "link";
|
|
7
|
+
};
|
|
8
|
+
export type ProcessingTableColumnType = (typeof ProcessingTableColumnType)[keyof typeof ProcessingTableColumnType];
|
package/types/enums/index.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ import { ComponentSize } from './ComponentSize/ComponentSize';
|
|
|
7
7
|
import { CrudAction } from './CrudAction/CrudAction';
|
|
8
8
|
import IconAction from './IconAction/IconAction.enum.js';
|
|
9
9
|
import { IconColor } from './IconColor/IconColor';
|
|
10
|
+
import { ProcessingTableColumnType } from './ProcessingTableColumnType/ProcessingTableColumnType';
|
|
10
11
|
import QueueType from './QueueType/QueueType.enum.js';
|
|
11
12
|
import { RelativeDatetimeValue } from './RelativeDatetimeValue/RelativeDatetimeValue';
|
|
12
13
|
import TypesExportedSettings from './TypesExportedSettings/TypesExportedSettings.enum.js';
|
|
@@ -18,4 +19,4 @@ import WebitelApplications from './WebitelApplications/WebitelApplications.enum.
|
|
|
18
19
|
import { WtApplication } from './WebitelApplications/WtApplication';
|
|
19
20
|
import { WtObject } from './WtObject/WtObject';
|
|
20
21
|
import { WtTypeExtensionFieldKind } from './WtTypeExtensionFieldKind/WtTypeExtensionFieldKind';
|
|
21
|
-
export { AbstractUserStatus, AdminSections, AgentStatus, AuditorSections, ButtonColor, ChatGatewayProvider, ChipColor, ComponentSize, CrmSections, CrudAction, IconAction, IconColor, QueueType, RelativeDatetimeValue, SupervisorSections, TypesExportedSettings, WebitelApplications, WtApplication, WtObject, WtTypeExtensionFieldKind, };
|
|
22
|
+
export { AbstractUserStatus, AdminSections, AgentStatus, AuditorSections, ButtonColor, ChatGatewayProvider, ChipColor, ComponentSize, CrmSections, CrudAction, IconAction, IconColor, ProcessingTableColumnType, QueueType, RelativeDatetimeValue, SupervisorSections, TypesExportedSettings, WebitelApplications, WtApplication, WtObject, WtTypeExtensionFieldKind, };
|