@eui/base 22.0.0-alpha.55 → 22.0.0-alpha.56
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/docs/changelog.html +14 -0
- package/docs/js/search/search_index.js +2 -2
- package/docs/llms.txt +1 -1
- package/docs/properties.html +1 -1
- package/fesm2022/eui-base.mjs +1538 -1381
- package/fesm2022/eui-base.mjs.map +1 -1
- package/package.json +1 -1
- package/types/eui-base.d.ts +1050 -1104
- package/types/eui-base.d.ts.map +1 -1
package/fesm2022/eui-base.mjs
CHANGED
|
@@ -1,774 +1,477 @@
|
|
|
1
|
-
import { Subject } from
|
|
2
|
-
import { filter, switchMap } from
|
|
3
|
-
import { HttpClient } from
|
|
4
|
-
import { createSelector } from
|
|
5
|
-
|
|
6
|
-
const isObject = (item) => item && typeof item === 'object' && !Array.isArray(item);
|
|
1
|
+
import { Subject } from "rxjs";
|
|
2
|
+
import { filter, switchMap } from "rxjs/operators";
|
|
3
|
+
import { HttpClient } from "@angular/common/http";
|
|
4
|
+
import { createSelector } from "reselect";
|
|
5
|
+
const isObject = (item) => item && typeof item === "object" && !Array.isArray(item);
|
|
7
6
|
function merge(target, ...sources) {
|
|
8
|
-
|
|
7
|
+
return mergeDeep(target, ...sources);
|
|
9
8
|
}
|
|
10
|
-
/* eslint-enable */
|
|
11
|
-
/**
|
|
12
|
-
* deep merge of two or more objects
|
|
13
|
-
*
|
|
14
|
-
* @param target immutable target
|
|
15
|
-
* @param sources immutable sources to apply to target
|
|
16
|
-
* @returns a new merged object
|
|
17
|
-
*/
|
|
18
|
-
// TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html
|
|
19
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
20
9
|
const mergeDeep = (target, ...sources) => {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
else {
|
|
34
|
-
output[key] = mergeDeep(target[key], source[key]);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
else {
|
|
38
|
-
Object.assign(output, { [key]: source[key] });
|
|
39
|
-
}
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
return mergeDeep(output, ...sources);
|
|
10
|
+
const output = Object.assign({}, target);
|
|
11
|
+
if (!sources.length) return output;
|
|
12
|
+
const source = sources.shift();
|
|
13
|
+
if (isObject(target) && isObject(source)) Object.keys(source).forEach((key) => {
|
|
14
|
+
if (isObject(source[key])) {
|
|
15
|
+
if (!(key in target))
|
|
16
|
+
/* istanbul ignore next */
|
|
17
|
+
Object.assign(output, { [key]: source[key] });
|
|
18
|
+
else output[key] = mergeDeep(target[key], source[key]);
|
|
19
|
+
} else Object.assign(output, { [key]: source[key] });
|
|
20
|
+
});
|
|
21
|
+
return mergeDeep(output, ...sources);
|
|
43
22
|
};
|
|
44
23
|
/* istanbul ignore next */
|
|
45
24
|
const mergeAll = (array) => array.reduce((prev, next) => mergeDeep(prev, next), {});
|
|
46
|
-
|
|
47
|
-
/**
|
|
48
|
-
* Default xhr configuration
|
|
49
|
-
*/
|
|
50
25
|
const DEFAULT_XHR_CONFIG = {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
26
|
+
url: null,
|
|
27
|
+
method: "GET",
|
|
28
|
+
responseType: "json",
|
|
29
|
+
headers: {},
|
|
30
|
+
body: null,
|
|
31
|
+
withCredentials: false,
|
|
32
|
+
timeout: 0
|
|
58
33
|
};
|
|
59
34
|
async function xhr(urlOrConfig) {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
}
|
|
82
|
-
else {
|
|
83
|
-
// status error
|
|
84
|
-
reject(`Request failed with status ${request.status} (${request.statusText})`);
|
|
85
|
-
}
|
|
86
|
-
};
|
|
87
|
-
// called in case of generic error
|
|
88
|
-
request.onerror = function () {
|
|
89
|
-
reject(`Request failed`);
|
|
90
|
-
};
|
|
91
|
-
// send the request
|
|
92
|
-
request.send(config.body);
|
|
93
|
-
});
|
|
94
|
-
}
|
|
95
|
-
/* eslint-enable */
|
|
96
|
-
|
|
97
|
-
class UxErrorOutput {
|
|
98
|
-
constructor(info, errorFeedback, subErrors, errGroupMap) {
|
|
99
|
-
this.severity = UxMessageSeverity.danger;
|
|
100
|
-
if (!subErrors) {
|
|
101
|
-
Object.assign(this, { ...info }, { ...errorFeedback });
|
|
102
|
-
}
|
|
103
|
-
else {
|
|
104
|
-
Object.assign(this, { ...info }, { ...errorFeedback }, { subErrors }, { errGroupMap });
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
getFeedBacks(byKey) {
|
|
108
|
-
if (this.subErrors) {
|
|
109
|
-
return this.subErrors
|
|
110
|
-
.filter((err) => {
|
|
111
|
-
if (err instanceof UxValidationErrorClass) {
|
|
112
|
-
if (byKey && err.attributes) {
|
|
113
|
-
return this.checkAttribute(byKey, err.attributes);
|
|
114
|
-
}
|
|
115
|
-
else if (byKey && !err.attributes) {
|
|
116
|
-
return false;
|
|
117
|
-
}
|
|
118
|
-
else if (!byKey) {
|
|
119
|
-
return true;
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
return null;
|
|
123
|
-
})
|
|
124
|
-
.map((err) => ({
|
|
125
|
-
msgId: err.msgId,
|
|
126
|
-
description: err.description,
|
|
127
|
-
severity: err.severity,
|
|
128
|
-
attributes: err.attributes,
|
|
129
|
-
errGroupId: err.errGroupId,
|
|
130
|
-
br: err.br,
|
|
131
|
-
doc: err.doc,
|
|
132
|
-
}));
|
|
133
|
-
}
|
|
134
|
-
else {
|
|
135
|
-
if (!byKey) {
|
|
136
|
-
return [{ msgId: this.msgId, description: this.description, severity: this.severity, doc: this.doc }];
|
|
137
|
-
}
|
|
138
|
-
else {
|
|
139
|
-
return [];
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
checkAttribute(key, attributes) {
|
|
144
|
-
return attributes.some((attr) => key === attr.key);
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
class UxErrorGroupOnClickEvent {
|
|
148
|
-
constructor(groupId, err) {
|
|
149
|
-
this.groupId = groupId;
|
|
150
|
-
this.err = err;
|
|
151
|
-
}
|
|
35
|
+
let config = typeof urlOrConfig === "string" ? { url: urlOrConfig } : urlOrConfig;
|
|
36
|
+
config = Object.assign({}, DEFAULT_XHR_CONFIG, config);
|
|
37
|
+
return new Promise((resolve, reject) => {
|
|
38
|
+
const request = new XMLHttpRequest();
|
|
39
|
+
request.open(config.method, config.url, true);
|
|
40
|
+
request.responseType = config.responseType;
|
|
41
|
+
Object.keys(config.headers || {}).map((name) => request.setRequestHeader(name, config.headers[name]));
|
|
42
|
+
request.withCredentials = config.withCredentials;
|
|
43
|
+
request.timeout = config.timeout;
|
|
44
|
+
request.ontimeout = function() {
|
|
45
|
+
reject(`Request timeout after ${request.timeout} milliseconds`);
|
|
46
|
+
};
|
|
47
|
+
request.onload = function() {
|
|
48
|
+
if (request.status === 200) resolve(request.response);
|
|
49
|
+
else reject(`Request failed with status ${request.status} (${request.statusText})`);
|
|
50
|
+
};
|
|
51
|
+
request.onerror = function() {
|
|
52
|
+
reject(`Request failed`);
|
|
53
|
+
};
|
|
54
|
+
request.send(config.body);
|
|
55
|
+
});
|
|
152
56
|
}
|
|
57
|
+
var UxErrorOutput = class {
|
|
58
|
+
constructor(info, errorFeedback, subErrors, errGroupMap) {
|
|
59
|
+
this.severity = UxMessageSeverity.danger;
|
|
60
|
+
if (!subErrors) Object.assign(this, { ...info }, { ...errorFeedback });
|
|
61
|
+
else Object.assign(this, { ...info }, { ...errorFeedback }, { subErrors }, { errGroupMap });
|
|
62
|
+
}
|
|
63
|
+
getFeedBacks(byKey) {
|
|
64
|
+
if (this.subErrors) return this.subErrors.filter((err) => {
|
|
65
|
+
if (err instanceof UxValidationErrorClass) {
|
|
66
|
+
if (byKey && err.attributes) return this.checkAttribute(byKey, err.attributes);
|
|
67
|
+
else if (byKey && !err.attributes) return false;
|
|
68
|
+
else if (!byKey) return true;
|
|
69
|
+
}
|
|
70
|
+
return null;
|
|
71
|
+
}).map((err) => ({
|
|
72
|
+
msgId: err.msgId,
|
|
73
|
+
description: err.description,
|
|
74
|
+
severity: err.severity,
|
|
75
|
+
attributes: err.attributes,
|
|
76
|
+
errGroupId: err.errGroupId,
|
|
77
|
+
br: err.br,
|
|
78
|
+
doc: err.doc
|
|
79
|
+
}));
|
|
80
|
+
else if (!byKey) return [{
|
|
81
|
+
msgId: this.msgId,
|
|
82
|
+
description: this.description,
|
|
83
|
+
severity: this.severity,
|
|
84
|
+
doc: this.doc
|
|
85
|
+
}];
|
|
86
|
+
else return [];
|
|
87
|
+
}
|
|
88
|
+
checkAttribute(key, attributes) {
|
|
89
|
+
return attributes.some((attr) => key === attr.key);
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
var UxErrorGroupOnClickEvent = class {
|
|
93
|
+
constructor(groupId, err) {
|
|
94
|
+
this.groupId = groupId;
|
|
95
|
+
this.err = err;
|
|
96
|
+
}
|
|
97
|
+
};
|
|
153
98
|
var UxMessageSeverity;
|
|
154
|
-
(function
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
99
|
+
(function(UxMessageSeverity) {
|
|
100
|
+
UxMessageSeverity["info"] = "info";
|
|
101
|
+
UxMessageSeverity["warning"] = "warning";
|
|
102
|
+
UxMessageSeverity["danger"] = "danger";
|
|
103
|
+
UxMessageSeverity["success"] = "success";
|
|
159
104
|
})(UxMessageSeverity || (UxMessageSeverity = {}));
|
|
160
105
|
var UxMessageSeverityMetrics;
|
|
161
|
-
(function
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
106
|
+
(function(UxMessageSeverityMetrics) {
|
|
107
|
+
UxMessageSeverityMetrics[UxMessageSeverityMetrics["info"] = 0] = "info";
|
|
108
|
+
UxMessageSeverityMetrics[UxMessageSeverityMetrics["warning"] = 1] = "warning";
|
|
109
|
+
UxMessageSeverityMetrics[UxMessageSeverityMetrics["danger"] = 2] = "danger";
|
|
110
|
+
UxMessageSeverityMetrics[UxMessageSeverityMetrics["success"] = 3] = "success";
|
|
166
111
|
})(UxMessageSeverityMetrics || (UxMessageSeverityMetrics = {}));
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
}
|
|
112
|
+
var UxValidationErrorClass = class {
|
|
113
|
+
constructor(data) {
|
|
114
|
+
this.severity = UxMessageSeverity.danger;
|
|
115
|
+
Object.assign(this, data);
|
|
116
|
+
}
|
|
117
|
+
};
|
|
173
118
|
const transformToUxHttpResponse = (resp, mapper) => {
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
119
|
+
const updatedErr = resp;
|
|
120
|
+
updatedErr.uxHttpErrorOutput = mapper(resp.error);
|
|
121
|
+
return updatedErr;
|
|
122
|
+
};
|
|
123
|
+
var UxPublishErrorFeedbackEvent = class {
|
|
124
|
+
constructor(err, id, groupId, accumulate) {
|
|
125
|
+
this.err = err;
|
|
126
|
+
this.id = id;
|
|
127
|
+
this.groupId = groupId;
|
|
128
|
+
this.accumulate = accumulate;
|
|
129
|
+
}
|
|
130
|
+
};
|
|
131
|
+
var UxClearErrorFeedbackEvent = class {
|
|
132
|
+
constructor(id, groupId) {
|
|
133
|
+
this.id = id;
|
|
134
|
+
this.groupId = groupId;
|
|
135
|
+
}
|
|
136
|
+
};
|
|
137
|
+
var UxBadgeLegacy = class {
|
|
138
|
+
constructor(values = {}) {
|
|
139
|
+
this.typeClass = "secondary";
|
|
140
|
+
Object.assign(this, values);
|
|
141
|
+
}
|
|
142
|
+
};
|
|
143
|
+
var UxLinkLegacy = class {
|
|
144
|
+
constructor(values = {}) {
|
|
145
|
+
this.urlExternalTarget = "_blank";
|
|
146
|
+
this.disabled = false;
|
|
147
|
+
this.hasIconBg = false;
|
|
148
|
+
this.active = false;
|
|
149
|
+
this.visible = true;
|
|
150
|
+
this.expanded = false;
|
|
151
|
+
this.hasMarker = false;
|
|
152
|
+
this.hasTag = false;
|
|
153
|
+
this.badgeTypeClass = "secondary";
|
|
154
|
+
this.isHome = false;
|
|
155
|
+
this.isSeparator = false;
|
|
156
|
+
this.isScreenReaderClickable = false;
|
|
157
|
+
this.selected = false;
|
|
158
|
+
this.indeterminate = false;
|
|
159
|
+
Object.assign(this, values);
|
|
160
|
+
if (this.id === null || this.id === void 0) this.id = "no_id";
|
|
161
|
+
this.e2eAttr = "ux-link-e2e-" + this.id;
|
|
162
|
+
}
|
|
163
|
+
get hasChildren() {
|
|
164
|
+
return this.children != null;
|
|
165
|
+
}
|
|
166
|
+
};
|
|
167
|
+
var EuiService = class {
|
|
168
|
+
constructor(defaultState) {
|
|
169
|
+
this.onStateChange = new Subject();
|
|
170
|
+
this.stateInstance = defaultState;
|
|
171
|
+
}
|
|
172
|
+
initEuiService() {
|
|
173
|
+
this.unSubscribe();
|
|
174
|
+
this.$stateSubs = this.getState().subscribe((newState) => {
|
|
175
|
+
this.prevStateInstance = this.copy(this.stateInstance);
|
|
176
|
+
this.stateInstance = this.copy(newState);
|
|
177
|
+
this.onStateChange.next(newState);
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
unSubscribe() {
|
|
181
|
+
if (this.$stateSubs && this.$stateSubs.unsubscribe) this.$stateSubs.unsubscribe();
|
|
182
|
+
if (this.$stateLazyLoadSubs && this.$stateLazyLoadSubs.unsubscribe) this.$stateLazyLoadSubs.unsubscribe();
|
|
183
|
+
}
|
|
184
|
+
deepMerge(target, source) {
|
|
185
|
+
const output = Object.assign({}, target);
|
|
186
|
+
if (this.isObject(target) && this.isObject(source)) Object.keys(source).forEach((key) => {
|
|
187
|
+
if (this.isObject(source[key])) {
|
|
188
|
+
if (!(key in target) || target[key] === null) Object.assign(output, { [key]: structuredClone(source[key]) });
|
|
189
|
+
else output[key] = this.isObject(target[key]) ? this.deepMerge(target[key], source[key]) : structuredClone(source[key]);
|
|
190
|
+
} else Object.assign(output, { [key]: source[key] });
|
|
191
|
+
});
|
|
192
|
+
return output;
|
|
193
|
+
}
|
|
194
|
+
isObject(item) {
|
|
195
|
+
return item && typeof item === "object" && !Array.isArray(item);
|
|
196
|
+
}
|
|
197
|
+
copy(state) {
|
|
198
|
+
if (typeof state === "undefined") return;
|
|
199
|
+
return JSON.parse(JSON.stringify(state));
|
|
200
|
+
}
|
|
177
201
|
};
|
|
178
|
-
class UxPublishErrorFeedbackEvent {
|
|
179
|
-
constructor(err, id, groupId, accumulate) {
|
|
180
|
-
this.err = err;
|
|
181
|
-
this.id = id;
|
|
182
|
-
this.groupId = groupId;
|
|
183
|
-
this.accumulate = accumulate;
|
|
184
|
-
}
|
|
185
|
-
}
|
|
186
|
-
class UxClearErrorFeedbackEvent {
|
|
187
|
-
constructor(id, groupId) {
|
|
188
|
-
this.id = id;
|
|
189
|
-
this.groupId = groupId;
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
class UxBadgeLegacy {
|
|
194
|
-
constructor(values = {}) {
|
|
195
|
-
this.typeClass = 'secondary';
|
|
196
|
-
Object.assign(this, values);
|
|
197
|
-
}
|
|
198
|
-
}
|
|
199
|
-
class UxLinkLegacy {
|
|
200
|
-
constructor(values = {}) {
|
|
201
|
-
this.urlExternalTarget = '_blank';
|
|
202
|
-
this.disabled = false;
|
|
203
|
-
this.hasIconBg = false;
|
|
204
|
-
this.active = false;
|
|
205
|
-
this.visible = true;
|
|
206
|
-
this.expanded = false;
|
|
207
|
-
this.hasMarker = false;
|
|
208
|
-
this.hasTag = false;
|
|
209
|
-
this.badgeTypeClass = 'secondary';
|
|
210
|
-
this.isHome = false;
|
|
211
|
-
this.isSeparator = false;
|
|
212
|
-
this.isScreenReaderClickable = false;
|
|
213
|
-
this.selected = false;
|
|
214
|
-
this.indeterminate = false;
|
|
215
|
-
Object.assign(this, values);
|
|
216
|
-
if (this.id === null || this.id === undefined) {
|
|
217
|
-
this.id = 'no_id';
|
|
218
|
-
}
|
|
219
|
-
this.e2eAttr = 'ux-link-e2e-' + this.id;
|
|
220
|
-
}
|
|
221
|
-
get hasChildren() {
|
|
222
|
-
return this.children != null;
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
|
|
226
|
-
class EuiService {
|
|
227
|
-
constructor(defaultState) {
|
|
228
|
-
this.onStateChange = new Subject();
|
|
229
|
-
this.stateInstance = defaultState;
|
|
230
|
-
}
|
|
231
|
-
initEuiService() {
|
|
232
|
-
this.unSubscribe();
|
|
233
|
-
this.$stateSubs = this.getState().subscribe((newState) => {
|
|
234
|
-
// set previous state of service
|
|
235
|
-
this.prevStateInstance = this.copy(this.stateInstance);
|
|
236
|
-
// update state before emit event
|
|
237
|
-
this.stateInstance = this.copy(newState);
|
|
238
|
-
// inform about state change
|
|
239
|
-
this.onStateChange.next(newState);
|
|
240
|
-
});
|
|
241
|
-
}
|
|
242
|
-
unSubscribe() {
|
|
243
|
-
if (this.$stateSubs && this.$stateSubs.unsubscribe) {
|
|
244
|
-
this.$stateSubs.unsubscribe();
|
|
245
|
-
}
|
|
246
|
-
if (this.$stateLazyLoadSubs && this.$stateLazyLoadSubs.unsubscribe) {
|
|
247
|
-
this.$stateLazyLoadSubs.unsubscribe();
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
|
-
/**
|
|
251
|
-
* deep merge two objects
|
|
252
|
-
* @param target the object that will be merged into
|
|
253
|
-
* @param source the object that will be merged from
|
|
254
|
-
*/
|
|
255
|
-
deepMerge(target, source) {
|
|
256
|
-
const output = Object.assign({}, target);
|
|
257
|
-
if (this.isObject(target) && this.isObject(source)) {
|
|
258
|
-
Object.keys(source).forEach(key => {
|
|
259
|
-
// Check if source[key] is an object and target[key] is either undefined, null, or an object
|
|
260
|
-
if (this.isObject(source[key])) {
|
|
261
|
-
if (!(key in target) || target[key] === null) {
|
|
262
|
-
// If target[key] doesn't exist or is null, directly assign source[key]
|
|
263
|
-
Object.assign(output, { [key]: structuredClone(source[key]) });
|
|
264
|
-
}
|
|
265
|
-
else {
|
|
266
|
-
// Only deep merge if target[key] is also an object
|
|
267
|
-
output[key] = this.isObject(target[key])
|
|
268
|
-
? this.deepMerge(target[key], source[key])
|
|
269
|
-
: structuredClone(source[key]);
|
|
270
|
-
}
|
|
271
|
-
}
|
|
272
|
-
else {
|
|
273
|
-
Object.assign(output, { [key]: source[key] });
|
|
274
|
-
}
|
|
275
|
-
});
|
|
276
|
-
}
|
|
277
|
-
return output;
|
|
278
|
-
}
|
|
279
|
-
/**
|
|
280
|
-
* checks if the given item is an object
|
|
281
|
-
* @param item the item that will be checked
|
|
282
|
-
*/
|
|
283
|
-
isObject(item) {
|
|
284
|
-
return item && typeof item === 'object' && !Array.isArray(item);
|
|
285
|
-
}
|
|
286
|
-
/**
|
|
287
|
-
* returns a copy of the given value whether this value is object or primitive. For the arrays it will cover
|
|
288
|
-
* multidimensional arrays, but it will not cover an object that contain functions. JSON.parse and JSON.stringify
|
|
289
|
-
* might have performance issues on large scale objects but that's an edge case scenario. In case that happens in
|
|
290
|
-
* the future follow the technique of NGRX with function caching.
|
|
291
|
-
*
|
|
292
|
-
* @param state
|
|
293
|
-
*/
|
|
294
|
-
copy(state) {
|
|
295
|
-
if (typeof state === 'undefined') {
|
|
296
|
-
return undefined;
|
|
297
|
-
}
|
|
298
|
-
return JSON.parse(JSON.stringify(state));
|
|
299
|
-
}
|
|
300
|
-
}
|
|
301
202
|
const getAppLoadedConfigModules$1 = (state) => state?.app?.loadedConfigModules;
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
*/
|
|
321
|
-
class LogAppender {
|
|
322
|
-
constructor(config, injector = null) {
|
|
323
|
-
this.config = config;
|
|
324
|
-
this.injector = injector;
|
|
325
|
-
}
|
|
326
|
-
/**
|
|
327
|
-
* Gets the config
|
|
328
|
-
*
|
|
329
|
-
* @returns the config
|
|
330
|
-
*/
|
|
331
|
-
getConfig() {
|
|
332
|
-
return this.config;
|
|
333
|
-
}
|
|
334
|
-
}
|
|
335
|
-
|
|
336
|
-
/** Log level */
|
|
203
|
+
var EuiLazyService = class extends EuiService {
|
|
204
|
+
constructor(defaultState) {
|
|
205
|
+
super(defaultState);
|
|
206
|
+
}
|
|
207
|
+
initEuiService(storeForLazyLoad) {
|
|
208
|
+
super.initEuiService();
|
|
209
|
+
if (storeForLazyLoad) this.$stateLazyLoadSubs = storeForLazyLoad.select(getAppLoadedConfigModules$1).pipe(filter((loadedConfigModules) => loadedConfigModules?.modulesConfig?.[loadedConfigModules.lastAddedModule] ? true : false), switchMap((loadedConfigModules) => this.lazyLoadInit(loadedConfigModules.modulesConfig[loadedConfigModules.lastAddedModule], loadedConfigModules.lastAddedModule))).subscribe(null);
|
|
210
|
+
}
|
|
211
|
+
};
|
|
212
|
+
var LogAppender = class {
|
|
213
|
+
constructor(config, injector = null) {
|
|
214
|
+
this.config = config;
|
|
215
|
+
this.injector = injector;
|
|
216
|
+
}
|
|
217
|
+
getConfig() {
|
|
218
|
+
return this.config;
|
|
219
|
+
}
|
|
220
|
+
};
|
|
337
221
|
var LogLevel;
|
|
338
|
-
(function
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
222
|
+
(function(LogLevel) {
|
|
223
|
+
LogLevel[LogLevel["OFF"] = 0] = "OFF";
|
|
224
|
+
LogLevel[LogLevel["FATAL"] = 1] = "FATAL";
|
|
225
|
+
LogLevel[LogLevel["ERROR"] = 2] = "ERROR";
|
|
226
|
+
LogLevel[LogLevel["WARN"] = 3] = "WARN";
|
|
227
|
+
LogLevel[LogLevel["INFO"] = 4] = "INFO";
|
|
228
|
+
LogLevel[LogLevel["DEBUG"] = 5] = "DEBUG";
|
|
229
|
+
LogLevel[LogLevel["TRACE"] = 6] = "TRACE";
|
|
230
|
+
LogLevel[LogLevel["ALL"] = 7] = "ALL";
|
|
347
231
|
})(LogLevel || (LogLevel = {}));
|
|
348
|
-
/** Associated log level names */
|
|
349
232
|
var LogLevelName;
|
|
350
|
-
(function
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
233
|
+
(function(LogLevelName) {
|
|
234
|
+
LogLevelName["FATAL"] = "FATAL";
|
|
235
|
+
LogLevelName["ERROR"] = "ERROR";
|
|
236
|
+
LogLevelName["WARN"] = "WARNING";
|
|
237
|
+
LogLevelName["INFO"] = "INFO";
|
|
238
|
+
LogLevelName["DEBUG"] = "DEBUG";
|
|
239
|
+
LogLevelName["TRACE"] = "TRACE";
|
|
357
240
|
})(LogLevelName || (LogLevelName = {}));
|
|
358
|
-
|
|
359
|
-
/** Default console prefix converters */
|
|
360
241
|
const DEFAULT_CONSOLE_APPENDER_PREFIX_CONVERTERS = {
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
242
|
+
"{level}": (event) => event.levelName,
|
|
243
|
+
"{logger}": (event) => event.loggerName,
|
|
244
|
+
"{date}": (event) => event.timestamp.toLocaleDateString(),
|
|
245
|
+
"{time}": (event) => event.timestamp.toLocaleTimeString()
|
|
246
|
+
};
|
|
247
|
+
var ConsoleAppender = class extends LogAppender {
|
|
248
|
+
constructor(config = {}) {
|
|
249
|
+
super(config);
|
|
250
|
+
this.config = config;
|
|
251
|
+
config.prefixConverters = Object.assign({}, DEFAULT_CONSOLE_APPENDER_PREFIX_CONVERTERS, config.prefixConverters);
|
|
252
|
+
}
|
|
253
|
+
append(event) {
|
|
254
|
+
const prefix = this.getPrefix(event);
|
|
255
|
+
const messages = prefix ? [prefix, ...event.messages] : event.messages;
|
|
256
|
+
switch (event.level) {
|
|
257
|
+
case LogLevel.FATAL:
|
|
258
|
+
case LogLevel.ERROR:
|
|
259
|
+
console.error(...messages);
|
|
260
|
+
break;
|
|
261
|
+
case LogLevel.WARN:
|
|
262
|
+
console.warn(...messages);
|
|
263
|
+
break;
|
|
264
|
+
default: console.log(...messages);
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
getPrefix(event) {
|
|
268
|
+
if (!this.config || !this.config.prefixFormat) return null;
|
|
269
|
+
let prefix = this.config.prefixFormat;
|
|
270
|
+
Object.keys(this.config.prefixConverters).forEach((key) => {
|
|
271
|
+
prefix = this.convert(prefix, key, this.config.prefixConverters[key](event));
|
|
272
|
+
});
|
|
273
|
+
return prefix;
|
|
274
|
+
}
|
|
275
|
+
convert(str, find, replace) {
|
|
276
|
+
return str.replace(new RegExp(find, "g"), replace);
|
|
277
|
+
}
|
|
278
|
+
};
|
|
279
|
+
var Logger = class Logger {
|
|
280
|
+
constructor(name, level, appenders) {
|
|
281
|
+
this.name = name;
|
|
282
|
+
this.level = level;
|
|
283
|
+
this.appenders = appenders;
|
|
284
|
+
this.isDisabled = () => this.level === LogLevel.OFF;
|
|
285
|
+
this.isEnabledFor = (level) => Logger.isEnabledFor(this.level, level);
|
|
286
|
+
this.isFatalEnabled = () => this.isEnabledFor(LogLevel.FATAL);
|
|
287
|
+
this.isErrorEnabled = () => this.isEnabledFor(LogLevel.ERROR);
|
|
288
|
+
this.isWarnEnabled = () => this.isEnabledFor(LogLevel.WARN);
|
|
289
|
+
this.isInfoEnabled = () => this.isEnabledFor(LogLevel.INFO);
|
|
290
|
+
this.isDebugEnabled = () => this.isEnabledFor(LogLevel.DEBUG);
|
|
291
|
+
this.isTraceEnabled = () => this.isEnabledFor(LogLevel.TRACE);
|
|
292
|
+
this.isAllEnabled = () => this.isEnabledFor(LogLevel.ALL);
|
|
293
|
+
}
|
|
294
|
+
static isEnabledFor(enabledFromLevel, level) {
|
|
295
|
+
return enabledFromLevel >= level;
|
|
296
|
+
}
|
|
297
|
+
getName() {
|
|
298
|
+
return this.name;
|
|
299
|
+
}
|
|
300
|
+
getLevel() {
|
|
301
|
+
return this.level;
|
|
302
|
+
}
|
|
303
|
+
setLevel(level) {
|
|
304
|
+
this.level = level;
|
|
305
|
+
}
|
|
306
|
+
fatal(message, ...additionalMessages) {
|
|
307
|
+
return this.log({
|
|
308
|
+
level: LogLevel.FATAL,
|
|
309
|
+
levelName: LogLevelName.FATAL,
|
|
310
|
+
loggerName: this.name,
|
|
311
|
+
timestamp: /* @__PURE__ */ new Date(),
|
|
312
|
+
messages: [message, ...additionalMessages]
|
|
313
|
+
});
|
|
314
|
+
}
|
|
315
|
+
error(message, ...additionalMessages) {
|
|
316
|
+
return this.log({
|
|
317
|
+
level: LogLevel.ERROR,
|
|
318
|
+
levelName: LogLevelName.ERROR,
|
|
319
|
+
loggerName: this.name,
|
|
320
|
+
timestamp: /* @__PURE__ */ new Date(),
|
|
321
|
+
messages: [message, ...additionalMessages]
|
|
322
|
+
});
|
|
323
|
+
}
|
|
324
|
+
warn(message, ...additionalMessages) {
|
|
325
|
+
return this.log({
|
|
326
|
+
level: LogLevel.WARN,
|
|
327
|
+
levelName: LogLevelName.WARN,
|
|
328
|
+
loggerName: this.name,
|
|
329
|
+
timestamp: /* @__PURE__ */ new Date(),
|
|
330
|
+
messages: [message, ...additionalMessages]
|
|
331
|
+
});
|
|
332
|
+
}
|
|
333
|
+
info(message, ...additionalMessages) {
|
|
334
|
+
return this.log({
|
|
335
|
+
level: LogLevel.INFO,
|
|
336
|
+
levelName: LogLevelName.INFO,
|
|
337
|
+
loggerName: this.name,
|
|
338
|
+
timestamp: /* @__PURE__ */ new Date(),
|
|
339
|
+
messages: [message, ...additionalMessages]
|
|
340
|
+
});
|
|
341
|
+
}
|
|
342
|
+
debug(message, ...additionalMessages) {
|
|
343
|
+
return this.log({
|
|
344
|
+
level: LogLevel.DEBUG,
|
|
345
|
+
levelName: LogLevelName.DEBUG,
|
|
346
|
+
loggerName: this.name,
|
|
347
|
+
timestamp: /* @__PURE__ */ new Date(),
|
|
348
|
+
messages: [message, ...additionalMessages]
|
|
349
|
+
});
|
|
350
|
+
}
|
|
351
|
+
trace(message, ...additionalMessages) {
|
|
352
|
+
return this.log({
|
|
353
|
+
level: LogLevel.TRACE,
|
|
354
|
+
levelName: LogLevelName.TRACE,
|
|
355
|
+
loggerName: this.name,
|
|
356
|
+
timestamp: /* @__PURE__ */ new Date(),
|
|
357
|
+
messages: [message, ...additionalMessages]
|
|
358
|
+
});
|
|
359
|
+
}
|
|
360
|
+
log(event) {
|
|
361
|
+
this.appenders.filter((appender) => Logger.isEnabledFor(appender.getConfig().logLevel || this.level, event.level), this).forEach((appender) => appender.append(event));
|
|
362
|
+
}
|
|
363
|
+
};
|
|
364
|
+
var LoggerMock = class extends Logger {
|
|
365
|
+
constructor() {
|
|
366
|
+
super(null, null, null);
|
|
367
|
+
this.isDisabled = () => false;
|
|
368
|
+
this.isEnabledFor = () => false;
|
|
369
|
+
this.isFatalEnabled = () => false;
|
|
370
|
+
this.isErrorEnabled = () => false;
|
|
371
|
+
this.isWarnEnabled = () => false;
|
|
372
|
+
this.isInfoEnabled = () => false;
|
|
373
|
+
this.isDebugEnabled = () => false;
|
|
374
|
+
this.isTraceEnabled = () => false;
|
|
375
|
+
this.isAllEnabled = () => false;
|
|
376
|
+
}
|
|
377
|
+
getLevel() {
|
|
378
|
+
return null;
|
|
379
|
+
}
|
|
380
|
+
setLevel() {}
|
|
381
|
+
fatal() {}
|
|
382
|
+
error() {}
|
|
383
|
+
warn() {}
|
|
384
|
+
info() {}
|
|
385
|
+
debug() {}
|
|
386
|
+
trace() {}
|
|
387
|
+
};
|
|
388
|
+
var UrlAppender = class extends LogAppender {
|
|
389
|
+
constructor(config, injector) {
|
|
390
|
+
super(config, injector);
|
|
391
|
+
this.config = config;
|
|
392
|
+
this.injector = injector;
|
|
393
|
+
this.http = injector && injector.get(HttpClient, null);
|
|
394
|
+
if (!this.http) console.error("UrlAppender needs HttpClient service to be defined as a provider.");
|
|
395
|
+
}
|
|
396
|
+
append(event) {
|
|
397
|
+
if (this.http) this.http.post(this.config.url, this.toUrlEvent(event)).subscribe();
|
|
398
|
+
}
|
|
399
|
+
toUrlEvent(event) {
|
|
400
|
+
return this.config.detailedEventFromLevel && Logger.isEnabledFor(this.config.detailedEventFromLevel, event.level) ? Object.assign({}, this.filterErrorType(event), {
|
|
401
|
+
position: this.getPosition(),
|
|
402
|
+
location: this.getLocation()
|
|
403
|
+
}) : event;
|
|
404
|
+
}
|
|
405
|
+
getPosition() {
|
|
406
|
+
const error = /* @__PURE__ */ new Error();
|
|
407
|
+
try {
|
|
408
|
+
throw error;
|
|
409
|
+
} catch (e) {
|
|
410
|
+
try {
|
|
411
|
+
let stackLine = error.stack.split("\n")[3].trim();
|
|
412
|
+
if (stackLine.startsWith("at ")) stackLine = stackLine.substring(3);
|
|
413
|
+
if (stackLine.lastIndexOf("(") > 0) stackLine = stackLine.substring(stackLine.lastIndexOf("(") + 1, stackLine.indexOf(")"));
|
|
414
|
+
const data = stackLine.substring(stackLine.lastIndexOf("/") + 1).split(":");
|
|
415
|
+
if (data.length === 3) return {
|
|
416
|
+
file: data[0],
|
|
417
|
+
line: +data[1],
|
|
418
|
+
column: +data[2]
|
|
419
|
+
};
|
|
420
|
+
} catch (err) {}
|
|
421
|
+
}
|
|
422
|
+
/* istanbul ignore next */
|
|
423
|
+
return null;
|
|
424
|
+
}
|
|
425
|
+
getLocation() {
|
|
426
|
+
return window && window.location && window.location.href;
|
|
427
|
+
}
|
|
428
|
+
filterErrorType(event) {
|
|
429
|
+
event.messages = event.messages.map((m) => m instanceof Error ? Object.getOwnPropertyDescriptors(m) : m);
|
|
430
|
+
return event;
|
|
431
|
+
}
|
|
365
432
|
};
|
|
366
|
-
/**
|
|
367
|
-
* Console Appender
|
|
368
|
-
*/
|
|
369
|
-
class ConsoleAppender extends LogAppender {
|
|
370
|
-
constructor(config = {}) {
|
|
371
|
-
super(config);
|
|
372
|
-
this.config = config;
|
|
373
|
-
// apply the default prefix converters
|
|
374
|
-
config.prefixConverters = Object.assign({}, DEFAULT_CONSOLE_APPENDER_PREFIX_CONVERTERS, config.prefixConverters);
|
|
375
|
-
}
|
|
376
|
-
/**
|
|
377
|
-
* Logs an event in the console
|
|
378
|
-
*/
|
|
379
|
-
append(event) {
|
|
380
|
-
// retrieve the prefix
|
|
381
|
-
const prefix = this.getPrefix(event);
|
|
382
|
-
// append it to the message array
|
|
383
|
-
const messages = prefix ? [prefix, ...event.messages] : event.messages;
|
|
384
|
-
// log the event in the console
|
|
385
|
-
switch (event.level) {
|
|
386
|
-
case LogLevel.FATAL:
|
|
387
|
-
case LogLevel.ERROR:
|
|
388
|
-
console.error(...messages);
|
|
389
|
-
break;
|
|
390
|
-
case LogLevel.WARN:
|
|
391
|
-
console.warn(...messages);
|
|
392
|
-
break;
|
|
393
|
-
default:
|
|
394
|
-
console.log(...messages);
|
|
395
|
-
break;
|
|
396
|
-
}
|
|
397
|
-
}
|
|
398
|
-
/**
|
|
399
|
-
* Returns the prefix to be added to the messages
|
|
400
|
-
*
|
|
401
|
-
* @param event the log event
|
|
402
|
-
* @returns the formatted prefix, as string
|
|
403
|
-
*/
|
|
404
|
-
getPrefix(event) {
|
|
405
|
-
// in case of no prefixFormat, return null
|
|
406
|
-
if (!this.config || !this.config.prefixFormat) {
|
|
407
|
-
return null;
|
|
408
|
-
}
|
|
409
|
-
// start creating the prefix from the format
|
|
410
|
-
let prefix = this.config.prefixFormat;
|
|
411
|
-
// apply the prefix converters
|
|
412
|
-
Object.keys(this.config.prefixConverters).forEach((key) => {
|
|
413
|
-
prefix = this.convert(prefix, key, this.config.prefixConverters[key](event));
|
|
414
|
-
});
|
|
415
|
-
return prefix;
|
|
416
|
-
}
|
|
417
|
-
/**
|
|
418
|
-
* Utility method to replace a placeholder
|
|
419
|
-
*
|
|
420
|
-
* @param str the string with placeholders
|
|
421
|
-
* @param find the placeholder
|
|
422
|
-
* @param replace the string to replace the placeholder
|
|
423
|
-
* @returns the converted string
|
|
424
|
-
*/
|
|
425
|
-
convert(str, find, replace) {
|
|
426
|
-
return str.replace(new RegExp(find, 'g'), replace);
|
|
427
|
-
}
|
|
428
|
-
}
|
|
429
|
-
|
|
430
|
-
/**
|
|
431
|
-
* Logger
|
|
432
|
-
*/
|
|
433
|
-
class Logger {
|
|
434
|
-
constructor(name, level, appenders) {
|
|
435
|
-
this.name = name;
|
|
436
|
-
this.level = level;
|
|
437
|
-
this.appenders = appenders;
|
|
438
|
-
this.isDisabled = () => this.level === LogLevel.OFF;
|
|
439
|
-
this.isEnabledFor = (level) => Logger.isEnabledFor(this.level, level);
|
|
440
|
-
this.isFatalEnabled = () => this.isEnabledFor(LogLevel.FATAL);
|
|
441
|
-
this.isErrorEnabled = () => this.isEnabledFor(LogLevel.ERROR);
|
|
442
|
-
this.isWarnEnabled = () => this.isEnabledFor(LogLevel.WARN);
|
|
443
|
-
this.isInfoEnabled = () => this.isEnabledFor(LogLevel.INFO);
|
|
444
|
-
this.isDebugEnabled = () => this.isEnabledFor(LogLevel.DEBUG);
|
|
445
|
-
this.isTraceEnabled = () => this.isEnabledFor(LogLevel.TRACE);
|
|
446
|
-
this.isAllEnabled = () => this.isEnabledFor(LogLevel.ALL);
|
|
447
|
-
}
|
|
448
|
-
static isEnabledFor(enabledFromLevel, level) {
|
|
449
|
-
return enabledFromLevel >= level;
|
|
450
|
-
}
|
|
451
|
-
/**
|
|
452
|
-
* Gets the logger name
|
|
453
|
-
*
|
|
454
|
-
* @returns the logger name
|
|
455
|
-
*/
|
|
456
|
-
getName() {
|
|
457
|
-
return this.name;
|
|
458
|
-
}
|
|
459
|
-
/**
|
|
460
|
-
* Gets the log level
|
|
461
|
-
*
|
|
462
|
-
* @returns the log level
|
|
463
|
-
*/
|
|
464
|
-
getLevel() {
|
|
465
|
-
return this.level;
|
|
466
|
-
}
|
|
467
|
-
/**
|
|
468
|
-
* Sets the log level
|
|
469
|
-
*
|
|
470
|
-
* @param level log level
|
|
471
|
-
*/
|
|
472
|
-
setLevel(level) {
|
|
473
|
-
this.level = level;
|
|
474
|
-
}
|
|
475
|
-
/**
|
|
476
|
-
* Fatal log
|
|
477
|
-
*
|
|
478
|
-
* @param message mandatory message
|
|
479
|
-
* @param additionalMessages optional messages
|
|
480
|
-
*/
|
|
481
|
-
fatal(message, ...additionalMessages) {
|
|
482
|
-
return this.log({
|
|
483
|
-
level: LogLevel.FATAL,
|
|
484
|
-
levelName: LogLevelName.FATAL,
|
|
485
|
-
loggerName: this.name,
|
|
486
|
-
timestamp: new Date(),
|
|
487
|
-
messages: [message, ...additionalMessages],
|
|
488
|
-
});
|
|
489
|
-
}
|
|
490
|
-
/**
|
|
491
|
-
* Error log
|
|
492
|
-
*
|
|
493
|
-
* @param message mandatory message
|
|
494
|
-
* @param additionalMessages optional messages
|
|
495
|
-
*/
|
|
496
|
-
error(message, ...additionalMessages) {
|
|
497
|
-
return this.log({
|
|
498
|
-
level: LogLevel.ERROR,
|
|
499
|
-
levelName: LogLevelName.ERROR,
|
|
500
|
-
loggerName: this.name,
|
|
501
|
-
timestamp: new Date(),
|
|
502
|
-
messages: [message, ...additionalMessages],
|
|
503
|
-
});
|
|
504
|
-
}
|
|
505
|
-
/**
|
|
506
|
-
* Warning log
|
|
507
|
-
*
|
|
508
|
-
* @param message mandatory message
|
|
509
|
-
* @param additionalMessages optional messages
|
|
510
|
-
*/
|
|
511
|
-
warn(message, ...additionalMessages) {
|
|
512
|
-
return this.log({
|
|
513
|
-
level: LogLevel.WARN,
|
|
514
|
-
levelName: LogLevelName.WARN,
|
|
515
|
-
loggerName: this.name,
|
|
516
|
-
timestamp: new Date(),
|
|
517
|
-
messages: [message, ...additionalMessages],
|
|
518
|
-
});
|
|
519
|
-
}
|
|
520
|
-
/**
|
|
521
|
-
* Info log
|
|
522
|
-
*
|
|
523
|
-
* @param message mandatory message
|
|
524
|
-
* @param additionalMessages optional messages
|
|
525
|
-
*/
|
|
526
|
-
info(message, ...additionalMessages) {
|
|
527
|
-
return this.log({
|
|
528
|
-
level: LogLevel.INFO,
|
|
529
|
-
levelName: LogLevelName.INFO,
|
|
530
|
-
loggerName: this.name,
|
|
531
|
-
timestamp: new Date(),
|
|
532
|
-
messages: [message, ...additionalMessages],
|
|
533
|
-
});
|
|
534
|
-
}
|
|
535
|
-
/**
|
|
536
|
-
* Debug log
|
|
537
|
-
*
|
|
538
|
-
* @param message mandatory message
|
|
539
|
-
* @param additionalMessages optional messages
|
|
540
|
-
*/
|
|
541
|
-
debug(message, ...additionalMessages) {
|
|
542
|
-
return this.log({
|
|
543
|
-
level: LogLevel.DEBUG,
|
|
544
|
-
levelName: LogLevelName.DEBUG,
|
|
545
|
-
loggerName: this.name,
|
|
546
|
-
timestamp: new Date(),
|
|
547
|
-
messages: [message, ...additionalMessages],
|
|
548
|
-
});
|
|
549
|
-
}
|
|
550
|
-
/**
|
|
551
|
-
* Trace log
|
|
552
|
-
*
|
|
553
|
-
* @param message mandatory message
|
|
554
|
-
* @param additionalMessages optional messages
|
|
555
|
-
*/
|
|
556
|
-
trace(message, ...additionalMessages) {
|
|
557
|
-
return this.log({
|
|
558
|
-
level: LogLevel.TRACE,
|
|
559
|
-
levelName: LogLevelName.TRACE,
|
|
560
|
-
loggerName: this.name,
|
|
561
|
-
timestamp: new Date(),
|
|
562
|
-
messages: [message, ...additionalMessages],
|
|
563
|
-
});
|
|
564
|
-
}
|
|
565
|
-
/**
|
|
566
|
-
* Generic log method, checking the log level and calling the specified appenders
|
|
567
|
-
*
|
|
568
|
-
* @param event the log event
|
|
569
|
-
*/
|
|
570
|
-
log(event) {
|
|
571
|
-
this.appenders
|
|
572
|
-
// filter the appender by their custom logLevel or the logger (main) logLevel
|
|
573
|
-
.filter((appender) => Logger.isEnabledFor(appender.getConfig().logLevel || this.level, event.level), this)
|
|
574
|
-
// execute the remaining appenders
|
|
575
|
-
.forEach((appender) => appender.append(event));
|
|
576
|
-
}
|
|
577
|
-
}
|
|
578
|
-
|
|
579
|
-
class LoggerMock extends Logger {
|
|
580
|
-
constructor() {
|
|
581
|
-
super(null, null, null);
|
|
582
|
-
this.isDisabled = () => false;
|
|
583
|
-
this.isEnabledFor = () => false;
|
|
584
|
-
this.isFatalEnabled = () => false;
|
|
585
|
-
this.isErrorEnabled = () => false;
|
|
586
|
-
this.isWarnEnabled = () => false;
|
|
587
|
-
this.isInfoEnabled = () => false;
|
|
588
|
-
this.isDebugEnabled = () => false;
|
|
589
|
-
this.isTraceEnabled = () => false;
|
|
590
|
-
this.isAllEnabled = () => false;
|
|
591
|
-
}
|
|
592
|
-
getLevel() {
|
|
593
|
-
return null;
|
|
594
|
-
}
|
|
595
|
-
setLevel() {
|
|
596
|
-
/* empty */
|
|
597
|
-
}
|
|
598
|
-
fatal() {
|
|
599
|
-
/* empty */
|
|
600
|
-
}
|
|
601
|
-
error() {
|
|
602
|
-
/* empty */
|
|
603
|
-
}
|
|
604
|
-
warn() {
|
|
605
|
-
/* empty */
|
|
606
|
-
}
|
|
607
|
-
info() {
|
|
608
|
-
/* empty */
|
|
609
|
-
}
|
|
610
|
-
debug() {
|
|
611
|
-
/* empty */
|
|
612
|
-
}
|
|
613
|
-
trace() {
|
|
614
|
-
/* empty */
|
|
615
|
-
}
|
|
616
|
-
}
|
|
617
|
-
|
|
618
|
-
/**
|
|
619
|
-
* Url Appender
|
|
620
|
-
*/
|
|
621
|
-
class UrlAppender extends LogAppender {
|
|
622
|
-
constructor(config, injector) {
|
|
623
|
-
super(config, injector);
|
|
624
|
-
this.config = config;
|
|
625
|
-
this.injector = injector;
|
|
626
|
-
// set the http client
|
|
627
|
-
this.http = injector && injector.get(HttpClient, null);
|
|
628
|
-
if (!this.http) {
|
|
629
|
-
console.error('UrlAppender needs HttpClient service to be defined as a provider.');
|
|
630
|
-
}
|
|
631
|
-
}
|
|
632
|
-
/**
|
|
633
|
-
* Logs an event to a server
|
|
634
|
-
*/
|
|
635
|
-
append(event) {
|
|
636
|
-
// eventual http errors will be caught by the HttpErrorHandlerInterceptor
|
|
637
|
-
if (this.http) {
|
|
638
|
-
this.http.post(this.config.url, this.toUrlEvent(event)).subscribe();
|
|
639
|
-
}
|
|
640
|
-
}
|
|
641
|
-
/**
|
|
642
|
-
* Maps a LogEvent into a UrlLogEvent
|
|
643
|
-
*/
|
|
644
|
-
toUrlEvent(event) {
|
|
645
|
-
// check if the urlEventFromLevel allows the mapping to url log event
|
|
646
|
-
const toUrlEvent = this.config.detailedEventFromLevel && Logger.isEnabledFor(this.config.detailedEventFromLevel, event.level);
|
|
647
|
-
// returns the url event or the regular log event
|
|
648
|
-
return toUrlEvent
|
|
649
|
-
? Object.assign({}, this.filterErrorType(event), {
|
|
650
|
-
position: this.getPosition(),
|
|
651
|
-
location: this.getLocation(),
|
|
652
|
-
})
|
|
653
|
-
: event;
|
|
654
|
-
}
|
|
655
|
-
/**
|
|
656
|
-
* returns the code position from where the log has been triggered
|
|
657
|
-
*/
|
|
658
|
-
getPosition() {
|
|
659
|
-
// create a dummy error, just for the stack trace
|
|
660
|
-
const error = new Error();
|
|
661
|
-
try {
|
|
662
|
-
// throw it ...
|
|
663
|
-
throw error;
|
|
664
|
-
}
|
|
665
|
-
catch (e) {
|
|
666
|
-
// ... and catch it
|
|
667
|
-
try {
|
|
668
|
-
// extract the correct stack line
|
|
669
|
-
let stackLine = error.stack.split('\n')[3].trim();
|
|
670
|
-
if (stackLine.startsWith('at ')) {
|
|
671
|
-
stackLine = stackLine.substring('at '.length);
|
|
672
|
-
}
|
|
673
|
-
// if the path is specified in parentheses
|
|
674
|
-
if (stackLine.lastIndexOf('(') > 0) {
|
|
675
|
-
stackLine = stackLine.substring(stackLine.lastIndexOf('(') + 1, stackLine.indexOf(')'));
|
|
676
|
-
}
|
|
677
|
-
// strip base path, then parse file, line and column
|
|
678
|
-
const data = stackLine.substring(stackLine.lastIndexOf('/') + 1).split(':');
|
|
679
|
-
// if the data is parsed correctly
|
|
680
|
-
if (data.length === 3) {
|
|
681
|
-
return {
|
|
682
|
-
file: data[0],
|
|
683
|
-
line: +data[1],
|
|
684
|
-
column: +data[2],
|
|
685
|
-
};
|
|
686
|
-
}
|
|
687
|
-
}
|
|
688
|
-
catch (err) {
|
|
689
|
-
/* empty */
|
|
690
|
-
}
|
|
691
|
-
}
|
|
692
|
-
/* istanbul ignore next */
|
|
693
|
-
return null;
|
|
694
|
-
}
|
|
695
|
-
/**
|
|
696
|
-
* returns the url of the current page
|
|
697
|
-
*/
|
|
698
|
-
getLocation() {
|
|
699
|
-
return window && window.location && window.location.href;
|
|
700
|
-
}
|
|
701
|
-
/**
|
|
702
|
-
* check messages if object type is Error and make its properties enumerable
|
|
703
|
-
*/
|
|
704
|
-
filterErrorType(event) {
|
|
705
|
-
event.messages = event.messages.map((m) => (m instanceof Error ? Object.getOwnPropertyDescriptors(m) : m));
|
|
706
|
-
return event;
|
|
707
|
-
}
|
|
708
|
-
}
|
|
709
|
-
|
|
710
433
|
const getI18nServiceConfigFromBase = (baseGlobalConfig) => {
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
434
|
+
if (!baseGlobalConfig) throw new Error("baseGlobalConfig is required");
|
|
435
|
+
const i18nServiceConfig = baseGlobalConfig && baseGlobalConfig.i18n && baseGlobalConfig.i18n.i18nService;
|
|
436
|
+
const { languages, defaultLanguage } = getI18nServiceConfig(i18nServiceConfig);
|
|
437
|
+
return {
|
|
438
|
+
languages,
|
|
439
|
+
defaultLanguage
|
|
440
|
+
};
|
|
716
441
|
};
|
|
717
442
|
const getI18nServiceConfig = (config) => Object.assign({}, config);
|
|
718
443
|
const getI18nLoaderConfig = (config) => {
|
|
719
|
-
|
|
720
|
-
|
|
444
|
+
const { i18nFolders, i18nServices, i18nResources } = Object.assign({}, config);
|
|
445
|
+
return {
|
|
446
|
+
i18nFolders,
|
|
447
|
+
i18nServices,
|
|
448
|
+
i18nResources
|
|
449
|
+
};
|
|
721
450
|
};
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
* it's using the navigator.language, splits by hyphen and get the first part.
|
|
725
|
-
*/
|
|
726
|
-
const getBrowserDefaultLanguage = () => navigator.language.split('-')[0];
|
|
727
|
-
/**
|
|
728
|
-
* returns an array of DOMStrings representing the user's preferred languages. The language is described using BCP 47
|
|
729
|
-
* language tags. In the returned array they are ordered by preference with the most preferred language first.
|
|
730
|
-
* The array languages will be lower cased 2 char code.
|
|
731
|
-
*/
|
|
732
|
-
const getBrowserPreferredLanguages = () => navigator.languages.map((lang) => lang.split('-')[0]);
|
|
733
|
-
|
|
734
|
-
/**
|
|
735
|
-
* responsible to extract the attributes "available" and "id" from the locale configuration
|
|
736
|
-
*/
|
|
451
|
+
const getBrowserDefaultLanguage = () => navigator.language.split("-")[0];
|
|
452
|
+
const getBrowserPreferredLanguages = () => navigator.languages.map((lang) => lang.split("-")[0]);
|
|
737
453
|
const getLocaleServiceConfigFromBase = (baseGlobalConfig) => {
|
|
738
|
-
|
|
739
|
-
|
|
454
|
+
const { bindWithTranslate } = baseGlobalConfig.locale;
|
|
455
|
+
return { bindWithTranslate };
|
|
740
456
|
};
|
|
741
|
-
|
|
742
457
|
const initialUserPreferences = Object.assign({}, {
|
|
743
|
-
|
|
744
|
-
|
|
458
|
+
lang: null,
|
|
459
|
+
dashboard: null
|
|
745
460
|
});
|
|
746
|
-
|
|
747
461
|
const getAppState = (state) => state.app;
|
|
748
462
|
const getUserState = (state) => state.user;
|
|
749
463
|
const getNotificationsState = (state) => state.notifications;
|
|
750
464
|
const getI18nState = (state) => state.i18n;
|
|
751
465
|
const getLocaleState = (state) => state.locale;
|
|
752
|
-
|
|
753
466
|
const getAppVersion = createSelector(getAppState, (state) => state.version);
|
|
754
467
|
const getAppConnection = createSelector(getAppState, (state) => state.connected);
|
|
755
|
-
/**
|
|
756
|
-
* Returns the loaded config modules from the app state
|
|
757
|
-
* @deprecated It will be removed in the future.
|
|
758
|
-
*/
|
|
759
468
|
const getAppLoadedConfigModules = createSelector(getAppState, (state) => state.loadedConfigModules);
|
|
760
|
-
/**
|
|
761
|
-
* Returns the last added module from the app state
|
|
762
|
-
* @deprecated It will be removed in the future.
|
|
763
|
-
*/
|
|
764
469
|
const getLastAddedModule = createSelector(getAppState, (state) => state.loadedConfigModules.lastAddedModule);
|
|
765
470
|
const getAppStatus = createSelector(getAppState, (state) => state.status);
|
|
766
471
|
const getCurrentModule = createSelector(getAppState, (state) => state.currentModule);
|
|
767
472
|
const getApiQueue = createSelector(getAppState, (state) => state.apiQueue);
|
|
768
473
|
const getApiQueueItem = (itemId) => createSelector(getAppState, (state) => state.apiQueue[itemId]);
|
|
769
|
-
|
|
770
474
|
const getActiveLang = createSelector(getI18nState, (state) => state.activeLang);
|
|
771
|
-
|
|
772
475
|
const getUserDetails = createSelector(getUserState, (state) => state);
|
|
773
476
|
const getUserPreferences = createSelector(getUserState, (state) => state.preferences);
|
|
774
477
|
const getUserId = createSelector(getUserDetails, (state) => state.userId);
|
|
@@ -780,675 +483,1129 @@ const getUserRights = createSelector(getUserState, (state) => state.rights);
|
|
|
780
483
|
const getUserRight = (rightId) => createSelector(getUserRights, (state) => state.find((right) => right && right.id === rightId));
|
|
781
484
|
const getUserRightPermissions = (rightId) => createSelector(getUserRight(rightId), (state) => state && state.permissions);
|
|
782
485
|
const getUserDashboard = createSelector(getUserPreferences, (state) => state.dashboard);
|
|
783
|
-
|
|
784
486
|
const getNotificationsList = createSelector(getNotificationsState, (state) => state.list);
|
|
785
|
-
|
|
786
487
|
const initialAppState = Object.assign({}, {
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
currentModule: '',
|
|
794
|
-
apiQueue: {},
|
|
488
|
+
version: "0.0.0",
|
|
489
|
+
connected: true,
|
|
490
|
+
loadedConfigModules: { modulesConfig: {} },
|
|
491
|
+
status: "idle",
|
|
492
|
+
currentModule: "",
|
|
493
|
+
apiQueue: {}
|
|
795
494
|
});
|
|
796
|
-
|
|
797
495
|
const initialUserState = Object.assign({}, {
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
496
|
+
userId: "",
|
|
497
|
+
firstName: "",
|
|
498
|
+
lastName: "",
|
|
499
|
+
fullName: "",
|
|
500
|
+
preferences: initialUserPreferences,
|
|
501
|
+
rights: []
|
|
804
502
|
});
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
*/
|
|
809
|
-
const initialNotificationsState = {
|
|
810
|
-
list: [],
|
|
811
|
-
};
|
|
812
|
-
|
|
813
|
-
const initialI18nState = {
|
|
814
|
-
activeLang: null,
|
|
815
|
-
};
|
|
816
|
-
|
|
817
|
-
/**
|
|
818
|
-
* The initial state of the locale state. The default locale is English US ('en').
|
|
819
|
-
*/
|
|
820
|
-
const initialLocaleState = {
|
|
821
|
-
id: 'en',
|
|
822
|
-
};
|
|
823
|
-
|
|
503
|
+
const initialNotificationsState = { list: [] };
|
|
504
|
+
const initialI18nState = { activeLang: null };
|
|
505
|
+
const initialLocaleState = { id: "en" };
|
|
824
506
|
const initialCoreState = Object.assign({}, {
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
507
|
+
app: initialAppState,
|
|
508
|
+
user: initialUserState,
|
|
509
|
+
notifications: initialNotificationsState,
|
|
510
|
+
i18n: initialI18nState,
|
|
511
|
+
locale: initialLocaleState
|
|
830
512
|
});
|
|
831
|
-
|
|
832
513
|
const DefaultConfig = {
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
514
|
+
totalItems: 0,
|
|
515
|
+
pageSize: 10,
|
|
516
|
+
currentPage: 1,
|
|
517
|
+
pageWindowSize: 5
|
|
518
|
+
};
|
|
519
|
+
var EuiPagination = class EuiPagination {
|
|
520
|
+
constructor(totalItems = DefaultConfig.totalItems, pageSize = DefaultConfig.pageSize, currentPage = DefaultConfig.currentPage, pageWindowSize = DefaultConfig.pageWindowSize) {
|
|
521
|
+
this.totalItems = totalItems;
|
|
522
|
+
this.pageSize = pageSize;
|
|
523
|
+
this.currentPage = currentPage;
|
|
524
|
+
this.pageWindowSize = pageWindowSize;
|
|
525
|
+
}
|
|
526
|
+
static create(config = DefaultConfig) {
|
|
527
|
+
if (config.totalItems < 0) throw new Error("total items cannot be negative");
|
|
528
|
+
if (config.pageSize <= 0) throw new Error("page size must be bigger than zero");
|
|
529
|
+
if (config.pageWindowSize <= 0) throw new Error("page window size must be bigger than zero");
|
|
530
|
+
return new EuiPagination(config.totalItems, config.pageSize, config.currentPage, config.pageWindowSize);
|
|
531
|
+
}
|
|
532
|
+
getFirstPage() {
|
|
533
|
+
return 1;
|
|
534
|
+
}
|
|
535
|
+
getLastPage() {
|
|
536
|
+
return this.getPagesCount();
|
|
537
|
+
}
|
|
538
|
+
isFirstPageActive() {
|
|
539
|
+
return this.getCurrentPage() === 1;
|
|
540
|
+
}
|
|
541
|
+
isLastPageActive() {
|
|
542
|
+
return this.getCurrentPage() === this.getPagesCount();
|
|
543
|
+
}
|
|
544
|
+
hasItems() {
|
|
545
|
+
return this.getTotalItems() > 0;
|
|
546
|
+
}
|
|
547
|
+
getPagesCount() {
|
|
548
|
+
const pagesCount = Math.ceil(this.totalItems / this.pageSize);
|
|
549
|
+
return Math.max(pagesCount, 1);
|
|
550
|
+
}
|
|
551
|
+
getPages() {
|
|
552
|
+
const pageWindowSize = this.getPageWindowSize();
|
|
553
|
+
const pagesCount = this.getPagesCount();
|
|
554
|
+
const currentPage = this.getCurrentPage();
|
|
555
|
+
let leftPageWindowSize;
|
|
556
|
+
let rightPageWindowSize;
|
|
557
|
+
let startPage;
|
|
558
|
+
let endPage;
|
|
559
|
+
const truncatedPageWindowSize = Math.min(...[this.getPageWindowSize(), this.getPagesCount()]);
|
|
560
|
+
if (truncatedPageWindowSize % 2 === 0) {
|
|
561
|
+
leftPageWindowSize = truncatedPageWindowSize / 2 - 1;
|
|
562
|
+
rightPageWindowSize = leftPageWindowSize + 1;
|
|
563
|
+
} else leftPageWindowSize = rightPageWindowSize = Math.floor(pageWindowSize / 2);
|
|
564
|
+
if (currentPage <= leftPageWindowSize) {
|
|
565
|
+
startPage = 1;
|
|
566
|
+
endPage = truncatedPageWindowSize;
|
|
567
|
+
} else if (currentPage > pagesCount - rightPageWindowSize) {
|
|
568
|
+
startPage = pagesCount - truncatedPageWindowSize + 1;
|
|
569
|
+
endPage = pagesCount;
|
|
570
|
+
} else {
|
|
571
|
+
startPage = currentPage - leftPageWindowSize;
|
|
572
|
+
endPage = currentPage + rightPageWindowSize;
|
|
573
|
+
}
|
|
574
|
+
return range(startPage, endPage + 1);
|
|
575
|
+
}
|
|
576
|
+
goToPage(page) {
|
|
577
|
+
const pagesCount = this.getPagesCount();
|
|
578
|
+
const truncated = Math.max(...[Math.min(...[page, pagesCount]), 1]);
|
|
579
|
+
this.currentPage = truncated;
|
|
580
|
+
}
|
|
581
|
+
goToFirstPage() {
|
|
582
|
+
this.goToPage(1);
|
|
583
|
+
}
|
|
584
|
+
goToLastPage() {
|
|
585
|
+
const lastPage = this.getPagesCount();
|
|
586
|
+
this.goToPage(lastPage);
|
|
587
|
+
}
|
|
588
|
+
goToNextPage() {
|
|
589
|
+
const nextPage = this.getCurrentPage() + 1;
|
|
590
|
+
this.goToPage(nextPage);
|
|
591
|
+
}
|
|
592
|
+
goToPreviousPage() {
|
|
593
|
+
const previousPage = this.getCurrentPage() - 1;
|
|
594
|
+
this.goToPage(previousPage);
|
|
595
|
+
}
|
|
596
|
+
hasPreviousPage() {
|
|
597
|
+
return this.getCurrentPage() > 1;
|
|
598
|
+
}
|
|
599
|
+
hasNextPage() {
|
|
600
|
+
return this.getCurrentPage() < this.getPagesCount();
|
|
601
|
+
}
|
|
602
|
+
getTotalItems() {
|
|
603
|
+
return this.totalItems;
|
|
604
|
+
}
|
|
605
|
+
getPageSize() {
|
|
606
|
+
return this.pageSize;
|
|
607
|
+
}
|
|
608
|
+
setPageSize(size) {
|
|
609
|
+
const truncated = Math.max(...[size, 1]);
|
|
610
|
+
this.pageSize = truncated;
|
|
611
|
+
}
|
|
612
|
+
getCurrentPage() {
|
|
613
|
+
return this.currentPage;
|
|
614
|
+
}
|
|
615
|
+
getPageWindowSize() {
|
|
616
|
+
return this.pageWindowSize;
|
|
617
|
+
}
|
|
618
|
+
setPageWindowSize(size) {
|
|
619
|
+
const truncated = Math.max(...[size, 1]);
|
|
620
|
+
this.pageWindowSize = truncated;
|
|
621
|
+
}
|
|
622
|
+
getShowingFrom() {
|
|
623
|
+
let startingPage = (this.getCurrentPage() - 1) * this.getPageSize() + 1;
|
|
624
|
+
if (!this.hasItems()) startingPage = 0;
|
|
625
|
+
return startingPage;
|
|
626
|
+
}
|
|
627
|
+
getShowingTo() {
|
|
628
|
+
const displayStartItem = this.getShowingFrom();
|
|
629
|
+
const pageSize = this.getPageSize();
|
|
630
|
+
const totalItems = this.getTotalItems();
|
|
631
|
+
if (!this.hasItems()) return 0;
|
|
632
|
+
return Math.min(...[displayStartItem + pageSize - 1, totalItems]);
|
|
633
|
+
}
|
|
837
634
|
};
|
|
838
|
-
class EuiPagination {
|
|
839
|
-
constructor(totalItems = DefaultConfig.totalItems, pageSize = DefaultConfig.pageSize, currentPage = DefaultConfig.currentPage, pageWindowSize = DefaultConfig.pageWindowSize) {
|
|
840
|
-
this.totalItems = totalItems;
|
|
841
|
-
this.pageSize = pageSize;
|
|
842
|
-
this.currentPage = currentPage;
|
|
843
|
-
this.pageWindowSize = pageWindowSize;
|
|
844
|
-
}
|
|
845
|
-
static create(config = DefaultConfig) {
|
|
846
|
-
if (config.totalItems < 0) {
|
|
847
|
-
throw new Error('total items cannot be negative');
|
|
848
|
-
}
|
|
849
|
-
if (config.pageSize <= 0) {
|
|
850
|
-
throw new Error('page size must be bigger than zero');
|
|
851
|
-
}
|
|
852
|
-
if (config.pageWindowSize <= 0) {
|
|
853
|
-
throw new Error('page window size must be bigger than zero');
|
|
854
|
-
}
|
|
855
|
-
return new EuiPagination(config.totalItems, config.pageSize, config.currentPage, config.pageWindowSize);
|
|
856
|
-
}
|
|
857
|
-
getFirstPage() {
|
|
858
|
-
return 1;
|
|
859
|
-
}
|
|
860
|
-
getLastPage() {
|
|
861
|
-
return this.getPagesCount();
|
|
862
|
-
}
|
|
863
|
-
isFirstPageActive() {
|
|
864
|
-
return this.getCurrentPage() === 1;
|
|
865
|
-
}
|
|
866
|
-
isLastPageActive() {
|
|
867
|
-
return this.getCurrentPage() === this.getPagesCount();
|
|
868
|
-
}
|
|
869
|
-
hasItems() {
|
|
870
|
-
return this.getTotalItems() > 0;
|
|
871
|
-
}
|
|
872
|
-
getPagesCount() {
|
|
873
|
-
const pagesCount = Math.ceil(this.totalItems / this.pageSize);
|
|
874
|
-
return Math.max(pagesCount, 1);
|
|
875
|
-
}
|
|
876
|
-
getPages() {
|
|
877
|
-
const pageWindowSize = this.getPageWindowSize();
|
|
878
|
-
const pagesCount = this.getPagesCount();
|
|
879
|
-
const currentPage = this.getCurrentPage();
|
|
880
|
-
let leftPageWindowSize;
|
|
881
|
-
let rightPageWindowSize;
|
|
882
|
-
let startPage;
|
|
883
|
-
let endPage;
|
|
884
|
-
// should not be bigger than pages count
|
|
885
|
-
const truncatedPageWindowSize = Math.min(...[this.getPageWindowSize(), this.getPagesCount()]);
|
|
886
|
-
if (truncatedPageWindowSize % 2 === 0) {
|
|
887
|
-
// nonsymetrical pager (...*....)
|
|
888
|
-
leftPageWindowSize = truncatedPageWindowSize / 2 - 1;
|
|
889
|
-
rightPageWindowSize = leftPageWindowSize + 1;
|
|
890
|
-
}
|
|
891
|
-
else {
|
|
892
|
-
// symmetrical pager (...*...)
|
|
893
|
-
leftPageWindowSize = rightPageWindowSize = Math.floor(pageWindowSize / 2);
|
|
894
|
-
}
|
|
895
|
-
if (currentPage <= leftPageWindowSize) {
|
|
896
|
-
// start
|
|
897
|
-
startPage = 1;
|
|
898
|
-
endPage = truncatedPageWindowSize;
|
|
899
|
-
}
|
|
900
|
-
else if (currentPage > pagesCount - rightPageWindowSize) {
|
|
901
|
-
// end
|
|
902
|
-
startPage = pagesCount - truncatedPageWindowSize + 1;
|
|
903
|
-
endPage = pagesCount;
|
|
904
|
-
}
|
|
905
|
-
else {
|
|
906
|
-
// middle
|
|
907
|
-
startPage = currentPage - leftPageWindowSize;
|
|
908
|
-
endPage = currentPage + rightPageWindowSize;
|
|
909
|
-
}
|
|
910
|
-
return range(startPage, endPage + 1);
|
|
911
|
-
}
|
|
912
|
-
goToPage(page) {
|
|
913
|
-
const pagesCount = this.getPagesCount();
|
|
914
|
-
const upperTrunc = Math.min(...[page, pagesCount]);
|
|
915
|
-
const truncated = Math.max(...[upperTrunc, 1]);
|
|
916
|
-
this.currentPage = truncated;
|
|
917
|
-
}
|
|
918
|
-
goToFirstPage() {
|
|
919
|
-
this.goToPage(1);
|
|
920
|
-
}
|
|
921
|
-
goToLastPage() {
|
|
922
|
-
const lastPage = this.getPagesCount();
|
|
923
|
-
this.goToPage(lastPage);
|
|
924
|
-
}
|
|
925
|
-
goToNextPage() {
|
|
926
|
-
const nextPage = this.getCurrentPage() + 1;
|
|
927
|
-
this.goToPage(nextPage);
|
|
928
|
-
}
|
|
929
|
-
goToPreviousPage() {
|
|
930
|
-
const previousPage = this.getCurrentPage() - 1;
|
|
931
|
-
this.goToPage(previousPage);
|
|
932
|
-
}
|
|
933
|
-
hasPreviousPage() {
|
|
934
|
-
return this.getCurrentPage() > 1;
|
|
935
|
-
}
|
|
936
|
-
hasNextPage() {
|
|
937
|
-
return this.getCurrentPage() < this.getPagesCount();
|
|
938
|
-
}
|
|
939
|
-
getTotalItems() {
|
|
940
|
-
return this.totalItems;
|
|
941
|
-
}
|
|
942
|
-
getPageSize() {
|
|
943
|
-
return this.pageSize;
|
|
944
|
-
}
|
|
945
|
-
setPageSize(size) {
|
|
946
|
-
const truncated = Math.max(...[size, 1]);
|
|
947
|
-
this.pageSize = truncated;
|
|
948
|
-
}
|
|
949
|
-
getCurrentPage() {
|
|
950
|
-
return this.currentPage;
|
|
951
|
-
}
|
|
952
|
-
getPageWindowSize() {
|
|
953
|
-
return this.pageWindowSize;
|
|
954
|
-
}
|
|
955
|
-
setPageWindowSize(size) {
|
|
956
|
-
const truncated = Math.max(...[size, 1]);
|
|
957
|
-
this.pageWindowSize = truncated;
|
|
958
|
-
}
|
|
959
|
-
getShowingFrom() {
|
|
960
|
-
const startingIndex = (this.getCurrentPage() - 1) * this.getPageSize();
|
|
961
|
-
let startingPage = startingIndex + 1;
|
|
962
|
-
if (!this.hasItems()) {
|
|
963
|
-
startingPage = 0;
|
|
964
|
-
}
|
|
965
|
-
return startingPage;
|
|
966
|
-
}
|
|
967
|
-
getShowingTo() {
|
|
968
|
-
const displayStartItem = this.getShowingFrom();
|
|
969
|
-
const pageSize = this.getPageSize();
|
|
970
|
-
const totalItems = this.getTotalItems();
|
|
971
|
-
if (!this.hasItems()) {
|
|
972
|
-
return 0;
|
|
973
|
-
}
|
|
974
|
-
const pageEnd = Math.min(...[displayStartItem + pageSize - 1, totalItems]);
|
|
975
|
-
return pageEnd;
|
|
976
|
-
}
|
|
977
|
-
}
|
|
978
635
|
const range = (start, end, step = 1) => {
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
}
|
|
987
|
-
return output;
|
|
636
|
+
const output = [];
|
|
637
|
+
if (typeof end === "undefined") {
|
|
638
|
+
end = start;
|
|
639
|
+
start = 0;
|
|
640
|
+
}
|
|
641
|
+
for (let i = start; i < end; i += step) output.push(i);
|
|
642
|
+
return output;
|
|
988
643
|
};
|
|
989
|
-
|
|
990
644
|
const EUI_COLORS = {
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
|
|
1032
|
-
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
|
|
1065
|
-
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
|
|
645
|
+
text: "#333333",
|
|
646
|
+
default: "#333333",
|
|
647
|
+
black: "#000000",
|
|
648
|
+
white: "#ffffff",
|
|
649
|
+
primary: "#004494",
|
|
650
|
+
primaryDark: "#003e8c",
|
|
651
|
+
primaryDarker: "#003581",
|
|
652
|
+
primaryDarkest: "#002d77",
|
|
653
|
+
primaryDarkester: "#001f65",
|
|
654
|
+
primaryDarkester2: "#00174c",
|
|
655
|
+
primaryLight: "#2660a4",
|
|
656
|
+
primaryLighter: "#4d7cb4",
|
|
657
|
+
primaryLightest: "#80a2ca",
|
|
658
|
+
primaryLightester: "#b3c7df",
|
|
659
|
+
primaryLightester2: "#e0e9f2 ",
|
|
660
|
+
accent: "#ffeb3b",
|
|
661
|
+
accentDark: "#ffd114",
|
|
662
|
+
accentDarker: "#fc1",
|
|
663
|
+
accentDarkest: "#ffc60d",
|
|
664
|
+
accentDarkester: "#ffbc07",
|
|
665
|
+
accentDarkester2: "#edad00",
|
|
666
|
+
accentLight: "#ffdc3a",
|
|
667
|
+
accentLighter: "#ffe25d",
|
|
668
|
+
accentLightest: "#ffeb8b",
|
|
669
|
+
accentLightester: "#fff3b9",
|
|
670
|
+
accentLightester2: "#fffae3",
|
|
671
|
+
info: "#03a9f4",
|
|
672
|
+
infoDark: "#039be5",
|
|
673
|
+
infoDarker: "#0288d1",
|
|
674
|
+
infoDarkest: "#0277bd",
|
|
675
|
+
infoDarkester: "#01579b",
|
|
676
|
+
infoDarkester2: "#003473",
|
|
677
|
+
infoLight: "#29b6f6",
|
|
678
|
+
infoLighter: "#4fc3f7",
|
|
679
|
+
infoLightest: "#81d4fa",
|
|
680
|
+
infoLightester: "#b3e5fc",
|
|
681
|
+
infoLightester2: "#e0eef6",
|
|
682
|
+
success: "#4caf50",
|
|
683
|
+
successDark: "#3f7233",
|
|
684
|
+
successDarker: "#37672c",
|
|
685
|
+
successDarkest: "#2f5d24",
|
|
686
|
+
successDarkester: "#204a17",
|
|
687
|
+
successDarkester2: "#183711",
|
|
688
|
+
successLight: "#628e57",
|
|
689
|
+
successLighter: "#7ea274",
|
|
690
|
+
successLightest: "#a3bd9c",
|
|
691
|
+
successLightester: "#c8d7c4",
|
|
692
|
+
successLightester2: "#e9efe7",
|
|
693
|
+
warning: "#ff9800",
|
|
694
|
+
warningDark: "#f08d23",
|
|
695
|
+
warningDarker: "#ee821d",
|
|
696
|
+
warningDarkest: "#ec7817",
|
|
697
|
+
warningDarkester: "#e8670e",
|
|
698
|
+
warningDarkester2: "#d05c0d",
|
|
699
|
+
warningLight: "#f4a547",
|
|
700
|
+
warningLighter: "#f6b568",
|
|
701
|
+
warningLightest: "#f9ca93",
|
|
702
|
+
warningLightester: "#fbdfbe",
|
|
703
|
+
warningLightester2: "#fdf2e5",
|
|
704
|
+
danger: "#f44336",
|
|
705
|
+
dangerDark: "#d61d2b",
|
|
706
|
+
dangerDarker: "#d01824",
|
|
707
|
+
dangerDarkest: "#cb141e",
|
|
708
|
+
dangerDarkester: "#c20b13",
|
|
709
|
+
dangerDarkester2: "#aa0a11",
|
|
710
|
+
dangerLight: "#e0424f",
|
|
711
|
+
dangerLighter: "#e5646e",
|
|
712
|
+
dangerLightest: "#ed9098",
|
|
713
|
+
dangerLightester: "#f4bcc1",
|
|
714
|
+
dangerLightester2: "#fbe4e6",
|
|
715
|
+
grey: "#9e9e9e",
|
|
716
|
+
greyDark: "#757575",
|
|
717
|
+
greyDarker: "#616161",
|
|
718
|
+
greyDarkest: "#424242",
|
|
719
|
+
greyDarkester: "#212121",
|
|
720
|
+
greyDarkester2: "#141414",
|
|
721
|
+
greyLight: "#bdbdbd",
|
|
722
|
+
greyLighter: "#d2d2d2",
|
|
723
|
+
greyLightest: "#eeeeee",
|
|
724
|
+
greyLightester: "#f5f5f5",
|
|
725
|
+
greyLightester2: "#fafafa"
|
|
1072
726
|
};
|
|
1073
|
-
|
|
1074
727
|
const EUI_DEFAULT_AUTH_CONFIG = {
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
|
|
728
|
+
isLoggedIn: true,
|
|
729
|
+
redirectUrl: "",
|
|
730
|
+
loginPageUrl: ""
|
|
731
|
+
};
|
|
732
|
+
var EuiEuLanguages = class {
|
|
733
|
+
static {
|
|
734
|
+
this.languages = {
|
|
735
|
+
bg: {
|
|
736
|
+
code: "bg",
|
|
737
|
+
label: "български"
|
|
738
|
+
},
|
|
739
|
+
cs: {
|
|
740
|
+
code: "cs",
|
|
741
|
+
label: "čeština"
|
|
742
|
+
},
|
|
743
|
+
da: {
|
|
744
|
+
code: "da",
|
|
745
|
+
label: "dansk"
|
|
746
|
+
},
|
|
747
|
+
de: {
|
|
748
|
+
code: "de",
|
|
749
|
+
label: "Deutsch"
|
|
750
|
+
},
|
|
751
|
+
et: {
|
|
752
|
+
code: "et",
|
|
753
|
+
label: "eesti keel"
|
|
754
|
+
},
|
|
755
|
+
el: {
|
|
756
|
+
code: "el",
|
|
757
|
+
label: "ελληνικά"
|
|
758
|
+
},
|
|
759
|
+
en: {
|
|
760
|
+
code: "en",
|
|
761
|
+
label: "English"
|
|
762
|
+
},
|
|
763
|
+
es: {
|
|
764
|
+
code: "es",
|
|
765
|
+
label: "español"
|
|
766
|
+
},
|
|
767
|
+
fr: {
|
|
768
|
+
code: "fr",
|
|
769
|
+
label: "français"
|
|
770
|
+
},
|
|
771
|
+
ga: {
|
|
772
|
+
code: "ga",
|
|
773
|
+
label: "Gaeilge"
|
|
774
|
+
},
|
|
775
|
+
hr: {
|
|
776
|
+
code: "hr",
|
|
777
|
+
label: "hrvatski"
|
|
778
|
+
},
|
|
779
|
+
it: {
|
|
780
|
+
code: "it",
|
|
781
|
+
label: "italiano"
|
|
782
|
+
},
|
|
783
|
+
lv: {
|
|
784
|
+
code: "lv",
|
|
785
|
+
label: "latviešu valoda"
|
|
786
|
+
},
|
|
787
|
+
lt: {
|
|
788
|
+
code: "lt",
|
|
789
|
+
label: "lietuvių kalba"
|
|
790
|
+
},
|
|
791
|
+
hu: {
|
|
792
|
+
code: "hu",
|
|
793
|
+
label: "magyar"
|
|
794
|
+
},
|
|
795
|
+
mt: {
|
|
796
|
+
code: "mt",
|
|
797
|
+
label: "Malti"
|
|
798
|
+
},
|
|
799
|
+
nl: {
|
|
800
|
+
code: "nl",
|
|
801
|
+
label: "Nederlands"
|
|
802
|
+
},
|
|
803
|
+
pl: {
|
|
804
|
+
code: "pl",
|
|
805
|
+
label: "polski"
|
|
806
|
+
},
|
|
807
|
+
pt: {
|
|
808
|
+
code: "pt",
|
|
809
|
+
label: "português"
|
|
810
|
+
},
|
|
811
|
+
ro: {
|
|
812
|
+
code: "ro",
|
|
813
|
+
label: "română"
|
|
814
|
+
},
|
|
815
|
+
sk: {
|
|
816
|
+
code: "sk",
|
|
817
|
+
label: "slovenčina"
|
|
818
|
+
},
|
|
819
|
+
sl: {
|
|
820
|
+
code: "sl",
|
|
821
|
+
label: "slovenščina"
|
|
822
|
+
},
|
|
823
|
+
fi: {
|
|
824
|
+
code: "fi",
|
|
825
|
+
label: "suomi"
|
|
826
|
+
},
|
|
827
|
+
sv: {
|
|
828
|
+
code: "sv",
|
|
829
|
+
label: "svenska"
|
|
830
|
+
}
|
|
831
|
+
};
|
|
832
|
+
}
|
|
833
|
+
static {
|
|
834
|
+
this.allLanguages = [
|
|
835
|
+
{
|
|
836
|
+
code: "aa",
|
|
837
|
+
label: "Afaraf"
|
|
838
|
+
},
|
|
839
|
+
{
|
|
840
|
+
code: "ab",
|
|
841
|
+
label: "аҧсуа"
|
|
842
|
+
},
|
|
843
|
+
{
|
|
844
|
+
code: "ae",
|
|
845
|
+
label: "avesta"
|
|
846
|
+
},
|
|
847
|
+
{
|
|
848
|
+
code: "af",
|
|
849
|
+
label: "Afrikaans"
|
|
850
|
+
},
|
|
851
|
+
{
|
|
852
|
+
code: "ak",
|
|
853
|
+
label: "Akan"
|
|
854
|
+
},
|
|
855
|
+
{
|
|
856
|
+
code: "am",
|
|
857
|
+
label: "አማርኛ"
|
|
858
|
+
},
|
|
859
|
+
{
|
|
860
|
+
code: "an",
|
|
861
|
+
label: "Aragonés"
|
|
862
|
+
},
|
|
863
|
+
{
|
|
864
|
+
code: "ar",
|
|
865
|
+
label: "العربية",
|
|
866
|
+
isRtl: true
|
|
867
|
+
},
|
|
868
|
+
{
|
|
869
|
+
code: "as",
|
|
870
|
+
label: "অসমীয়া"
|
|
871
|
+
},
|
|
872
|
+
{
|
|
873
|
+
code: "av",
|
|
874
|
+
label: "авар мацӀ, магӀарул мацӀ"
|
|
875
|
+
},
|
|
876
|
+
{
|
|
877
|
+
code: "ay",
|
|
878
|
+
label: "aymar aru"
|
|
879
|
+
},
|
|
880
|
+
{
|
|
881
|
+
code: "az",
|
|
882
|
+
label: "azərbaycan dili"
|
|
883
|
+
},
|
|
884
|
+
{
|
|
885
|
+
code: "ba",
|
|
886
|
+
label: "башҡорт теле"
|
|
887
|
+
},
|
|
888
|
+
{
|
|
889
|
+
code: "be",
|
|
890
|
+
label: "Беларуская"
|
|
891
|
+
},
|
|
892
|
+
{
|
|
893
|
+
code: "bg",
|
|
894
|
+
label: "български"
|
|
895
|
+
},
|
|
896
|
+
{
|
|
897
|
+
code: "bh",
|
|
898
|
+
label: "भोजपुरी"
|
|
899
|
+
},
|
|
900
|
+
{
|
|
901
|
+
code: "bi",
|
|
902
|
+
label: "Bislama"
|
|
903
|
+
},
|
|
904
|
+
{
|
|
905
|
+
code: "bm",
|
|
906
|
+
label: "bamanankan"
|
|
907
|
+
},
|
|
908
|
+
{
|
|
909
|
+
code: "bn",
|
|
910
|
+
label: "বাংলা"
|
|
911
|
+
},
|
|
912
|
+
{
|
|
913
|
+
code: "bo",
|
|
914
|
+
label: "བོད་ཡིག"
|
|
915
|
+
},
|
|
916
|
+
{
|
|
917
|
+
code: "br",
|
|
918
|
+
label: "brezhoneg"
|
|
919
|
+
},
|
|
920
|
+
{
|
|
921
|
+
code: "bs",
|
|
922
|
+
label: "bosanski jezik"
|
|
923
|
+
},
|
|
924
|
+
{
|
|
925
|
+
code: "ca",
|
|
926
|
+
label: "Català"
|
|
927
|
+
},
|
|
928
|
+
{
|
|
929
|
+
code: "ce",
|
|
930
|
+
label: "нохчийн мотт"
|
|
931
|
+
},
|
|
932
|
+
{
|
|
933
|
+
code: "ch",
|
|
934
|
+
label: "Chamoru"
|
|
935
|
+
},
|
|
936
|
+
{
|
|
937
|
+
code: "co",
|
|
938
|
+
label: "corsu, lingua corsa"
|
|
939
|
+
},
|
|
940
|
+
{
|
|
941
|
+
code: "cr",
|
|
942
|
+
label: "ᓀᐦᐃᔭᐍᐏᐣ"
|
|
943
|
+
},
|
|
944
|
+
{
|
|
945
|
+
code: "cs",
|
|
946
|
+
label: "čeština"
|
|
947
|
+
},
|
|
948
|
+
{
|
|
949
|
+
code: "cu",
|
|
950
|
+
label: "ѩзыкъ словѣньскъ"
|
|
951
|
+
},
|
|
952
|
+
{
|
|
953
|
+
code: "cv",
|
|
954
|
+
label: "чӑваш чӗлхи"
|
|
955
|
+
},
|
|
956
|
+
{
|
|
957
|
+
code: "cy",
|
|
958
|
+
label: "Cymraeg"
|
|
959
|
+
},
|
|
960
|
+
{
|
|
961
|
+
code: "da",
|
|
962
|
+
label: "dansk"
|
|
963
|
+
},
|
|
964
|
+
{
|
|
965
|
+
code: "de",
|
|
966
|
+
label: "Deutsch"
|
|
967
|
+
},
|
|
968
|
+
{
|
|
969
|
+
code: "dv",
|
|
970
|
+
label: "ދިވެހި"
|
|
971
|
+
},
|
|
972
|
+
{
|
|
973
|
+
code: "ee",
|
|
974
|
+
label: "Eʋegbe"
|
|
975
|
+
},
|
|
976
|
+
{
|
|
977
|
+
code: "el",
|
|
978
|
+
label: "Ελληνικά"
|
|
979
|
+
},
|
|
980
|
+
{
|
|
981
|
+
code: "en",
|
|
982
|
+
label: "English"
|
|
983
|
+
},
|
|
984
|
+
{
|
|
985
|
+
code: "eo",
|
|
986
|
+
label: "Esperanto"
|
|
987
|
+
},
|
|
988
|
+
{
|
|
989
|
+
code: "es",
|
|
990
|
+
label: "español"
|
|
991
|
+
},
|
|
992
|
+
{
|
|
993
|
+
code: "et",
|
|
994
|
+
label: "eesti"
|
|
995
|
+
},
|
|
996
|
+
{
|
|
997
|
+
code: "eu",
|
|
998
|
+
label: "euskara, euskera"
|
|
999
|
+
},
|
|
1000
|
+
{
|
|
1001
|
+
code: "fa",
|
|
1002
|
+
label: "فارسی",
|
|
1003
|
+
isRtl: true
|
|
1004
|
+
},
|
|
1005
|
+
{
|
|
1006
|
+
code: "ff",
|
|
1007
|
+
label: "Fulfulde, Pulaar, Pular"
|
|
1008
|
+
},
|
|
1009
|
+
{
|
|
1010
|
+
code: "fi",
|
|
1011
|
+
label: "suomi"
|
|
1012
|
+
},
|
|
1013
|
+
{
|
|
1014
|
+
code: "fj",
|
|
1015
|
+
label: "vosa Vakaviti"
|
|
1016
|
+
},
|
|
1017
|
+
{
|
|
1018
|
+
code: "fo",
|
|
1019
|
+
label: "føroyskt"
|
|
1020
|
+
},
|
|
1021
|
+
{
|
|
1022
|
+
code: "fr",
|
|
1023
|
+
label: "français"
|
|
1024
|
+
},
|
|
1025
|
+
{
|
|
1026
|
+
code: "fy",
|
|
1027
|
+
label: "Frysk"
|
|
1028
|
+
},
|
|
1029
|
+
{
|
|
1030
|
+
code: "ga",
|
|
1031
|
+
label: "Gaeilge"
|
|
1032
|
+
},
|
|
1033
|
+
{
|
|
1034
|
+
code: "gd",
|
|
1035
|
+
label: "Gàidhlig"
|
|
1036
|
+
},
|
|
1037
|
+
{
|
|
1038
|
+
code: "gl",
|
|
1039
|
+
label: "Galego"
|
|
1040
|
+
},
|
|
1041
|
+
{
|
|
1042
|
+
code: "gn",
|
|
1043
|
+
label: "Avañeẽ"
|
|
1044
|
+
},
|
|
1045
|
+
{
|
|
1046
|
+
code: "gu",
|
|
1047
|
+
label: "ગુજરાતી"
|
|
1048
|
+
},
|
|
1049
|
+
{
|
|
1050
|
+
code: "gv",
|
|
1051
|
+
label: "Gaelg, Gailck"
|
|
1052
|
+
},
|
|
1053
|
+
{
|
|
1054
|
+
code: "ha",
|
|
1055
|
+
label: "Hausa, هَوُسَ"
|
|
1056
|
+
},
|
|
1057
|
+
{
|
|
1058
|
+
code: "he",
|
|
1059
|
+
label: "עברית",
|
|
1060
|
+
isRtl: true
|
|
1061
|
+
},
|
|
1062
|
+
{
|
|
1063
|
+
code: "hi",
|
|
1064
|
+
label: "हिन्दी, हिंदी"
|
|
1065
|
+
},
|
|
1066
|
+
{
|
|
1067
|
+
code: "ho",
|
|
1068
|
+
label: "Hiri Motu"
|
|
1069
|
+
},
|
|
1070
|
+
{
|
|
1071
|
+
code: "hr",
|
|
1072
|
+
label: "hrvatski"
|
|
1073
|
+
},
|
|
1074
|
+
{
|
|
1075
|
+
code: "ht",
|
|
1076
|
+
label: "Kreyòl ayisyen"
|
|
1077
|
+
},
|
|
1078
|
+
{
|
|
1079
|
+
code: "hu",
|
|
1080
|
+
label: "Magyar"
|
|
1081
|
+
},
|
|
1082
|
+
{
|
|
1083
|
+
code: "hy",
|
|
1084
|
+
label: "Հայերեն"
|
|
1085
|
+
},
|
|
1086
|
+
{
|
|
1087
|
+
code: "hz",
|
|
1088
|
+
label: "Otjiherero"
|
|
1089
|
+
},
|
|
1090
|
+
{
|
|
1091
|
+
code: "ia",
|
|
1092
|
+
label: "Interlingua"
|
|
1093
|
+
},
|
|
1094
|
+
{
|
|
1095
|
+
code: "id",
|
|
1096
|
+
label: "Bahasa Indonesia"
|
|
1097
|
+
},
|
|
1098
|
+
{
|
|
1099
|
+
code: "ie",
|
|
1100
|
+
label: "Originally called Occidental"
|
|
1101
|
+
},
|
|
1102
|
+
{
|
|
1103
|
+
code: "ig",
|
|
1104
|
+
label: "Asụsụ Igbo"
|
|
1105
|
+
},
|
|
1106
|
+
{
|
|
1107
|
+
code: "ii",
|
|
1108
|
+
label: "ꆈꌠ꒿ Nuosuhxop"
|
|
1109
|
+
},
|
|
1110
|
+
{
|
|
1111
|
+
code: "ik",
|
|
1112
|
+
label: "Iñupiaq, Iñupiatun"
|
|
1113
|
+
},
|
|
1114
|
+
{
|
|
1115
|
+
code: "io",
|
|
1116
|
+
label: "Ido"
|
|
1117
|
+
},
|
|
1118
|
+
{
|
|
1119
|
+
code: "is",
|
|
1120
|
+
label: "Íslenska"
|
|
1121
|
+
},
|
|
1122
|
+
{
|
|
1123
|
+
code: "it",
|
|
1124
|
+
label: "Italiano"
|
|
1125
|
+
},
|
|
1126
|
+
{
|
|
1127
|
+
code: "iu",
|
|
1128
|
+
label: "ᐃᓄᒃᑎᑐᑦ"
|
|
1129
|
+
},
|
|
1130
|
+
{
|
|
1131
|
+
code: "ja",
|
|
1132
|
+
label: "日本語"
|
|
1133
|
+
},
|
|
1134
|
+
{
|
|
1135
|
+
code: "jv",
|
|
1136
|
+
label: "basa Jawa"
|
|
1137
|
+
},
|
|
1138
|
+
{
|
|
1139
|
+
code: "ka",
|
|
1140
|
+
label: "ქართული"
|
|
1141
|
+
},
|
|
1142
|
+
{
|
|
1143
|
+
code: "kg",
|
|
1144
|
+
label: "KiKongo"
|
|
1145
|
+
},
|
|
1146
|
+
{
|
|
1147
|
+
code: "ki",
|
|
1148
|
+
label: "Gĩkũyũ"
|
|
1149
|
+
},
|
|
1150
|
+
{
|
|
1151
|
+
code: "kj",
|
|
1152
|
+
label: "Kuanyama"
|
|
1153
|
+
},
|
|
1154
|
+
{
|
|
1155
|
+
code: "kk",
|
|
1156
|
+
label: "Қазақ тілі"
|
|
1157
|
+
},
|
|
1158
|
+
{
|
|
1159
|
+
code: "kl",
|
|
1160
|
+
label: "kalaallisut"
|
|
1161
|
+
},
|
|
1162
|
+
{
|
|
1163
|
+
code: "km",
|
|
1164
|
+
label: "ភាសាខ្មែរ"
|
|
1165
|
+
},
|
|
1166
|
+
{
|
|
1167
|
+
code: "kn",
|
|
1168
|
+
label: "ಕನ್ನಡ"
|
|
1169
|
+
},
|
|
1170
|
+
{
|
|
1171
|
+
code: "ko",
|
|
1172
|
+
label: "한국어 (韓國語), 조선말 (朝鮮語)"
|
|
1173
|
+
},
|
|
1174
|
+
{
|
|
1175
|
+
code: "kr",
|
|
1176
|
+
label: "Kanuri"
|
|
1177
|
+
},
|
|
1178
|
+
{
|
|
1179
|
+
code: "ks",
|
|
1180
|
+
label: "कश्मीरी, كشميري"
|
|
1181
|
+
},
|
|
1182
|
+
{
|
|
1183
|
+
code: "ku",
|
|
1184
|
+
label: "Kurdî, كوردی",
|
|
1185
|
+
isRtl: true
|
|
1186
|
+
},
|
|
1187
|
+
{
|
|
1188
|
+
code: "kv",
|
|
1189
|
+
label: "коми кыв"
|
|
1190
|
+
},
|
|
1191
|
+
{
|
|
1192
|
+
code: "kw",
|
|
1193
|
+
label: "Kernewek"
|
|
1194
|
+
},
|
|
1195
|
+
{
|
|
1196
|
+
code: "ky",
|
|
1197
|
+
label: "кыргыз тили"
|
|
1198
|
+
},
|
|
1199
|
+
{
|
|
1200
|
+
code: "la",
|
|
1201
|
+
label: "latine"
|
|
1202
|
+
},
|
|
1203
|
+
{
|
|
1204
|
+
code: "lb",
|
|
1205
|
+
label: "Lëtzebuergesch"
|
|
1206
|
+
},
|
|
1207
|
+
{
|
|
1208
|
+
code: "lg",
|
|
1209
|
+
label: "Luganda"
|
|
1210
|
+
},
|
|
1211
|
+
{
|
|
1212
|
+
code: "li",
|
|
1213
|
+
label: "Limburgs"
|
|
1214
|
+
},
|
|
1215
|
+
{
|
|
1216
|
+
code: "ln",
|
|
1217
|
+
label: "Lingála"
|
|
1218
|
+
},
|
|
1219
|
+
{
|
|
1220
|
+
code: "lo",
|
|
1221
|
+
label: "ພາສາລາວ"
|
|
1222
|
+
},
|
|
1223
|
+
{
|
|
1224
|
+
code: "lt",
|
|
1225
|
+
label: "lietuvių kalba"
|
|
1226
|
+
},
|
|
1227
|
+
{
|
|
1228
|
+
code: "lu",
|
|
1229
|
+
label: "Lëtzebuergesch"
|
|
1230
|
+
},
|
|
1231
|
+
{
|
|
1232
|
+
code: "lv",
|
|
1233
|
+
label: "latviešu valoda"
|
|
1234
|
+
},
|
|
1235
|
+
{
|
|
1236
|
+
code: "me",
|
|
1237
|
+
label: "crnogorski jezik"
|
|
1238
|
+
},
|
|
1239
|
+
{
|
|
1240
|
+
code: "mg",
|
|
1241
|
+
label: "Malagasy fiteny"
|
|
1242
|
+
},
|
|
1243
|
+
{
|
|
1244
|
+
code: "mh",
|
|
1245
|
+
label: "Kajin M̧ajeļ"
|
|
1246
|
+
},
|
|
1247
|
+
{
|
|
1248
|
+
code: "mi",
|
|
1249
|
+
label: "te reo Māori"
|
|
1250
|
+
},
|
|
1251
|
+
{
|
|
1252
|
+
code: "mk",
|
|
1253
|
+
label: "македонски јазик"
|
|
1254
|
+
},
|
|
1255
|
+
{
|
|
1256
|
+
code: "ml",
|
|
1257
|
+
label: "മലയാളം"
|
|
1258
|
+
},
|
|
1259
|
+
{
|
|
1260
|
+
code: "mn",
|
|
1261
|
+
label: "монгол"
|
|
1262
|
+
},
|
|
1263
|
+
{
|
|
1264
|
+
code: "mr",
|
|
1265
|
+
label: "मराठी"
|
|
1266
|
+
},
|
|
1267
|
+
{
|
|
1268
|
+
code: "ms",
|
|
1269
|
+
label: "bahasa Melayu, بهاس ملايو"
|
|
1270
|
+
},
|
|
1271
|
+
{
|
|
1272
|
+
code: "mt",
|
|
1273
|
+
label: "Malti"
|
|
1274
|
+
},
|
|
1275
|
+
{
|
|
1276
|
+
code: "my",
|
|
1277
|
+
label: "ဗမာစာ"
|
|
1278
|
+
},
|
|
1279
|
+
{
|
|
1280
|
+
code: "na",
|
|
1281
|
+
label: "Ekakairũ Naoero"
|
|
1282
|
+
},
|
|
1283
|
+
{
|
|
1284
|
+
code: "nb",
|
|
1285
|
+
label: "Norsk bokmål"
|
|
1286
|
+
},
|
|
1287
|
+
{
|
|
1288
|
+
code: "nd",
|
|
1289
|
+
label: "isiNdebele"
|
|
1290
|
+
},
|
|
1291
|
+
{
|
|
1292
|
+
code: "ne",
|
|
1293
|
+
label: "नेपाली"
|
|
1294
|
+
},
|
|
1295
|
+
{
|
|
1296
|
+
code: "ng",
|
|
1297
|
+
label: "Owambo"
|
|
1298
|
+
},
|
|
1299
|
+
{
|
|
1300
|
+
code: "nl",
|
|
1301
|
+
label: "Nederlands"
|
|
1302
|
+
},
|
|
1303
|
+
{
|
|
1304
|
+
code: "nn",
|
|
1305
|
+
label: "Norsk nynorsk"
|
|
1306
|
+
},
|
|
1307
|
+
{
|
|
1308
|
+
code: "no",
|
|
1309
|
+
label: "Norsk"
|
|
1310
|
+
},
|
|
1311
|
+
{
|
|
1312
|
+
code: "nr",
|
|
1313
|
+
label: "isiNdebele"
|
|
1314
|
+
},
|
|
1315
|
+
{
|
|
1316
|
+
code: "nv",
|
|
1317
|
+
label: "Diné bizaad, Dinékʼehǰí"
|
|
1318
|
+
},
|
|
1319
|
+
{
|
|
1320
|
+
code: "ny",
|
|
1321
|
+
label: "chiCheŵa, chinyanja"
|
|
1322
|
+
},
|
|
1323
|
+
{
|
|
1324
|
+
code: "oc",
|
|
1325
|
+
label: "Occitan"
|
|
1326
|
+
},
|
|
1327
|
+
{
|
|
1328
|
+
code: "oj",
|
|
1329
|
+
label: "ᐊᓂᔑᓈᐯᒧᐎᓐ"
|
|
1330
|
+
},
|
|
1331
|
+
{
|
|
1332
|
+
code: "om",
|
|
1333
|
+
label: "Afaan Oromoo"
|
|
1334
|
+
},
|
|
1335
|
+
{
|
|
1336
|
+
code: "or",
|
|
1337
|
+
label: "ଓଡ଼ିଆ"
|
|
1338
|
+
},
|
|
1339
|
+
{
|
|
1340
|
+
code: "os",
|
|
1341
|
+
label: "ирон æвзаг"
|
|
1342
|
+
},
|
|
1343
|
+
{
|
|
1344
|
+
code: "pa",
|
|
1345
|
+
label: "ਪੰਜਾਬੀ, پنجابی"
|
|
1346
|
+
},
|
|
1347
|
+
{
|
|
1348
|
+
code: "pi",
|
|
1349
|
+
label: "पाऴि"
|
|
1350
|
+
},
|
|
1351
|
+
{
|
|
1352
|
+
code: "pl",
|
|
1353
|
+
label: "polski"
|
|
1354
|
+
},
|
|
1355
|
+
{
|
|
1356
|
+
code: "ps",
|
|
1357
|
+
label: "پښتو"
|
|
1358
|
+
},
|
|
1359
|
+
{
|
|
1360
|
+
code: "pt",
|
|
1361
|
+
label: "Português"
|
|
1362
|
+
},
|
|
1363
|
+
{
|
|
1364
|
+
code: "qu",
|
|
1365
|
+
label: "Runa Simi, Kichwa"
|
|
1366
|
+
},
|
|
1367
|
+
{
|
|
1368
|
+
code: "rm",
|
|
1369
|
+
label: "rumantsch grischun"
|
|
1370
|
+
},
|
|
1371
|
+
{
|
|
1372
|
+
code: "rn",
|
|
1373
|
+
label: "kiRundi"
|
|
1374
|
+
},
|
|
1375
|
+
{
|
|
1376
|
+
code: "ro",
|
|
1377
|
+
label: "română"
|
|
1378
|
+
},
|
|
1379
|
+
{
|
|
1380
|
+
code: "ru",
|
|
1381
|
+
label: "русский язык"
|
|
1382
|
+
},
|
|
1383
|
+
{
|
|
1384
|
+
code: "rw",
|
|
1385
|
+
label: "Ikinyarwanda"
|
|
1386
|
+
},
|
|
1387
|
+
{
|
|
1388
|
+
code: "sa",
|
|
1389
|
+
label: "संस्कृतम्"
|
|
1390
|
+
},
|
|
1391
|
+
{
|
|
1392
|
+
code: "sc",
|
|
1393
|
+
label: "sardu"
|
|
1394
|
+
},
|
|
1395
|
+
{
|
|
1396
|
+
code: "sd",
|
|
1397
|
+
label: "सिन्धी, سنڌي، سندھی"
|
|
1398
|
+
},
|
|
1399
|
+
{
|
|
1400
|
+
code: "se",
|
|
1401
|
+
label: "Davvisámegiella"
|
|
1402
|
+
},
|
|
1403
|
+
{
|
|
1404
|
+
code: "sg",
|
|
1405
|
+
label: "yângâ tî sängö"
|
|
1406
|
+
},
|
|
1407
|
+
{
|
|
1408
|
+
code: "si",
|
|
1409
|
+
label: "සිංහල"
|
|
1410
|
+
},
|
|
1411
|
+
{
|
|
1412
|
+
code: "sk",
|
|
1413
|
+
label: "slovenčina"
|
|
1414
|
+
},
|
|
1415
|
+
{
|
|
1416
|
+
code: "sl",
|
|
1417
|
+
label: "slovenščina"
|
|
1418
|
+
},
|
|
1419
|
+
{
|
|
1420
|
+
code: "sm",
|
|
1421
|
+
label: "gagana faa Samoa"
|
|
1422
|
+
},
|
|
1423
|
+
{
|
|
1424
|
+
code: "sn",
|
|
1425
|
+
label: "chiShona"
|
|
1426
|
+
},
|
|
1427
|
+
{
|
|
1428
|
+
code: "so",
|
|
1429
|
+
label: "Soomaaliga, af Soomaali"
|
|
1430
|
+
},
|
|
1431
|
+
{
|
|
1432
|
+
code: "sq",
|
|
1433
|
+
label: "Shqip"
|
|
1434
|
+
},
|
|
1435
|
+
{
|
|
1436
|
+
code: "sr",
|
|
1437
|
+
label: "српски језик"
|
|
1438
|
+
},
|
|
1439
|
+
{
|
|
1440
|
+
code: "ss",
|
|
1441
|
+
label: "SiSwati"
|
|
1442
|
+
},
|
|
1443
|
+
{
|
|
1444
|
+
code: "st",
|
|
1445
|
+
label: "Sesotho"
|
|
1446
|
+
},
|
|
1447
|
+
{
|
|
1448
|
+
code: "su",
|
|
1449
|
+
label: "Basa Sunda"
|
|
1450
|
+
},
|
|
1451
|
+
{
|
|
1452
|
+
code: "sv",
|
|
1453
|
+
label: "svenska"
|
|
1454
|
+
},
|
|
1455
|
+
{
|
|
1456
|
+
code: "sw",
|
|
1457
|
+
label: "Kiswahili"
|
|
1458
|
+
},
|
|
1459
|
+
{
|
|
1460
|
+
code: "ta",
|
|
1461
|
+
label: "தமிழ்"
|
|
1462
|
+
},
|
|
1463
|
+
{
|
|
1464
|
+
code: "te",
|
|
1465
|
+
label: "తెలుగు"
|
|
1466
|
+
},
|
|
1467
|
+
{
|
|
1468
|
+
code: "tg",
|
|
1469
|
+
label: "тоҷикӣ, toğikī, تاجیکی"
|
|
1470
|
+
},
|
|
1471
|
+
{
|
|
1472
|
+
code: "th",
|
|
1473
|
+
label: "ไทย"
|
|
1474
|
+
},
|
|
1475
|
+
{
|
|
1476
|
+
code: "ti",
|
|
1477
|
+
label: "ትግርኛ"
|
|
1478
|
+
},
|
|
1479
|
+
{
|
|
1480
|
+
code: "tk",
|
|
1481
|
+
label: "Türkmen, Түркмен"
|
|
1482
|
+
},
|
|
1483
|
+
{
|
|
1484
|
+
code: "tl",
|
|
1485
|
+
label: "Wikang Tagalog"
|
|
1486
|
+
},
|
|
1487
|
+
{
|
|
1488
|
+
code: "tn",
|
|
1489
|
+
label: "Setswana"
|
|
1490
|
+
},
|
|
1491
|
+
{
|
|
1492
|
+
code: "to",
|
|
1493
|
+
label: "faka Tonga"
|
|
1494
|
+
},
|
|
1495
|
+
{
|
|
1496
|
+
code: "tr",
|
|
1497
|
+
label: "Türkçe"
|
|
1498
|
+
},
|
|
1499
|
+
{
|
|
1500
|
+
code: "ts",
|
|
1501
|
+
label: "Xitsonga"
|
|
1502
|
+
},
|
|
1503
|
+
{
|
|
1504
|
+
code: "tt",
|
|
1505
|
+
label: "татарча, tatarça, تاتارچا"
|
|
1506
|
+
},
|
|
1507
|
+
{
|
|
1508
|
+
code: "tw",
|
|
1509
|
+
label: "Twi"
|
|
1510
|
+
},
|
|
1511
|
+
{
|
|
1512
|
+
code: "ty",
|
|
1513
|
+
label: "Reo Tahiti"
|
|
1514
|
+
},
|
|
1515
|
+
{
|
|
1516
|
+
code: "ug",
|
|
1517
|
+
label: "Uyƣurqə, ئۇيغۇرچە"
|
|
1518
|
+
},
|
|
1519
|
+
{
|
|
1520
|
+
code: "uk",
|
|
1521
|
+
label: "українська"
|
|
1522
|
+
},
|
|
1523
|
+
{
|
|
1524
|
+
code: "ur",
|
|
1525
|
+
label: "اردو",
|
|
1526
|
+
isRtl: true
|
|
1527
|
+
},
|
|
1528
|
+
{
|
|
1529
|
+
code: "uz",
|
|
1530
|
+
label: "zbek, Ўзбек, أۇزبېك"
|
|
1531
|
+
},
|
|
1532
|
+
{
|
|
1533
|
+
code: "ve",
|
|
1534
|
+
label: "Tshivenḓa"
|
|
1535
|
+
},
|
|
1536
|
+
{
|
|
1537
|
+
code: "vi",
|
|
1538
|
+
label: "Tiếng Việt"
|
|
1539
|
+
},
|
|
1540
|
+
{
|
|
1541
|
+
code: "vo",
|
|
1542
|
+
label: "Volapük"
|
|
1543
|
+
},
|
|
1544
|
+
{
|
|
1545
|
+
code: "wa",
|
|
1546
|
+
label: "Walon"
|
|
1547
|
+
},
|
|
1548
|
+
{
|
|
1549
|
+
code: "wo",
|
|
1550
|
+
label: "Wollof"
|
|
1551
|
+
},
|
|
1552
|
+
{
|
|
1553
|
+
code: "xh",
|
|
1554
|
+
label: "isiXhosa"
|
|
1555
|
+
},
|
|
1556
|
+
{
|
|
1557
|
+
code: "yi",
|
|
1558
|
+
label: "ייִדיש"
|
|
1559
|
+
},
|
|
1560
|
+
{
|
|
1561
|
+
code: "yo",
|
|
1562
|
+
label: "Yorùbá"
|
|
1563
|
+
},
|
|
1564
|
+
{
|
|
1565
|
+
code: "za",
|
|
1566
|
+
label: "Saɯ cueŋƅ, Saw cuengh"
|
|
1567
|
+
},
|
|
1568
|
+
{
|
|
1569
|
+
code: "zh",
|
|
1570
|
+
label: "中文 (Zhōngwén), 汉语, 漢語"
|
|
1571
|
+
}
|
|
1572
|
+
];
|
|
1573
|
+
}
|
|
1574
|
+
static getLanguages(codes = Object.keys(this.languages)) {
|
|
1575
|
+
return this.filterInvalidLanguageCodes(codes).map((c) => typeof c === "string" ? this.languages[c] : c);
|
|
1576
|
+
}
|
|
1577
|
+
static filterInvalidLanguageCodes(codes) {
|
|
1578
|
+
return codes.filter((c) => typeof c === "string" ? Object.keys(this.languages).indexOf(c) !== -1 : true);
|
|
1579
|
+
}
|
|
1580
|
+
static getOrderedLanguages(codes = Object.keys(this.languages)) {
|
|
1581
|
+
return this.getLanguages(codes).sort((a, b) => Object.keys(this.languages).findIndex((c) => c === a.code) - Object.keys(this.languages).findIndex((c) => c === b.code));
|
|
1582
|
+
}
|
|
1583
|
+
static getLanguageCodes(array) {
|
|
1584
|
+
return array.map((language) => typeof language === "string" ? language : language.code);
|
|
1585
|
+
}
|
|
1586
|
+
static filterNonEULanguages(array) {
|
|
1587
|
+
return array ? array.filter((lang) => !Object.keys(this.languages).includes(lang.code)) : [];
|
|
1588
|
+
}
|
|
1589
|
+
static filterEULanguages(array) {
|
|
1590
|
+
return array ? array.filter((lang) => Object.keys(this.languages).includes(lang.code)) : [];
|
|
1591
|
+
}
|
|
1592
|
+
static getLanguageByCode(code) {
|
|
1593
|
+
return code ? this.allLanguages.find((lang) => lang.code === code) : void 0;
|
|
1594
|
+
}
|
|
1595
|
+
static isEuLanguage(code) {
|
|
1596
|
+
return Object.keys(this.languages).includes(code);
|
|
1597
|
+
}
|
|
1598
|
+
static getAllLanguagesByCodes(codes) {
|
|
1599
|
+
return codes && codes.length > 0 ? this.allLanguages.filter((el) => codes.includes(el.code)) : this.allLanguages;
|
|
1600
|
+
}
|
|
1601
|
+
};
|
|
1602
|
+
if (typeof crypto === "object" && typeof crypto.randomUUID !== "function") crypto.randomUUID = () => {
|
|
1603
|
+
console.warn("usage of crypto.randomUUID() outside of HTTPS poses a security risk for you application and its users");
|
|
1604
|
+
return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (c) => {
|
|
1605
|
+
const r = Math.random() * 16 | 0;
|
|
1606
|
+
return (c === "x" ? r : r & 3 | 8).toString(16);
|
|
1607
|
+
});
|
|
1078
1608
|
};
|
|
1079
|
-
|
|
1080
|
-
class EuiEuLanguages {
|
|
1081
|
-
static { this.languages = {
|
|
1082
|
-
bg: {
|
|
1083
|
-
code: 'bg',
|
|
1084
|
-
label: 'български',
|
|
1085
|
-
},
|
|
1086
|
-
cs: {
|
|
1087
|
-
code: 'cs',
|
|
1088
|
-
label: 'čeština',
|
|
1089
|
-
},
|
|
1090
|
-
da: {
|
|
1091
|
-
code: 'da',
|
|
1092
|
-
label: 'dansk',
|
|
1093
|
-
},
|
|
1094
|
-
de: {
|
|
1095
|
-
code: 'de',
|
|
1096
|
-
label: 'Deutsch',
|
|
1097
|
-
},
|
|
1098
|
-
et: {
|
|
1099
|
-
code: 'et',
|
|
1100
|
-
label: 'eesti keel',
|
|
1101
|
-
},
|
|
1102
|
-
el: {
|
|
1103
|
-
code: 'el',
|
|
1104
|
-
label: 'ελληνικά',
|
|
1105
|
-
},
|
|
1106
|
-
en: {
|
|
1107
|
-
code: 'en',
|
|
1108
|
-
label: 'English',
|
|
1109
|
-
},
|
|
1110
|
-
es: {
|
|
1111
|
-
code: 'es',
|
|
1112
|
-
label: 'español',
|
|
1113
|
-
},
|
|
1114
|
-
fr: {
|
|
1115
|
-
code: 'fr',
|
|
1116
|
-
label: 'français',
|
|
1117
|
-
},
|
|
1118
|
-
ga: {
|
|
1119
|
-
code: 'ga',
|
|
1120
|
-
label: 'Gaeilge',
|
|
1121
|
-
},
|
|
1122
|
-
hr: {
|
|
1123
|
-
code: 'hr',
|
|
1124
|
-
label: 'hrvatski',
|
|
1125
|
-
},
|
|
1126
|
-
it: {
|
|
1127
|
-
code: 'it',
|
|
1128
|
-
label: 'italiano',
|
|
1129
|
-
},
|
|
1130
|
-
lv: {
|
|
1131
|
-
code: 'lv',
|
|
1132
|
-
label: 'latviešu valoda',
|
|
1133
|
-
},
|
|
1134
|
-
lt: {
|
|
1135
|
-
code: 'lt',
|
|
1136
|
-
label: 'lietuvių kalba',
|
|
1137
|
-
},
|
|
1138
|
-
hu: {
|
|
1139
|
-
code: 'hu',
|
|
1140
|
-
label: 'magyar',
|
|
1141
|
-
},
|
|
1142
|
-
mt: {
|
|
1143
|
-
code: 'mt',
|
|
1144
|
-
label: 'Malti',
|
|
1145
|
-
},
|
|
1146
|
-
nl: {
|
|
1147
|
-
code: 'nl',
|
|
1148
|
-
label: 'Nederlands',
|
|
1149
|
-
},
|
|
1150
|
-
pl: {
|
|
1151
|
-
code: 'pl',
|
|
1152
|
-
label: 'polski',
|
|
1153
|
-
},
|
|
1154
|
-
pt: {
|
|
1155
|
-
code: 'pt',
|
|
1156
|
-
label: 'português',
|
|
1157
|
-
},
|
|
1158
|
-
ro: {
|
|
1159
|
-
code: 'ro',
|
|
1160
|
-
label: 'română',
|
|
1161
|
-
},
|
|
1162
|
-
sk: {
|
|
1163
|
-
code: 'sk',
|
|
1164
|
-
label: 'slovenčina',
|
|
1165
|
-
},
|
|
1166
|
-
sl: {
|
|
1167
|
-
code: 'sl',
|
|
1168
|
-
label: 'slovenščina',
|
|
1169
|
-
},
|
|
1170
|
-
fi: {
|
|
1171
|
-
code: 'fi',
|
|
1172
|
-
label: 'suomi',
|
|
1173
|
-
},
|
|
1174
|
-
sv: {
|
|
1175
|
-
code: 'sv',
|
|
1176
|
-
label: 'svenska',
|
|
1177
|
-
},
|
|
1178
|
-
}; }
|
|
1179
|
-
static { this.allLanguages = [
|
|
1180
|
-
{ code: 'aa', label: 'Afaraf' },
|
|
1181
|
-
{ code: 'ab', label: 'аҧсуа' },
|
|
1182
|
-
{ code: 'ae', label: 'avesta' },
|
|
1183
|
-
{ code: 'af', label: 'Afrikaans' },
|
|
1184
|
-
{ code: 'ak', label: 'Akan' },
|
|
1185
|
-
{ code: 'am', label: 'አማርኛ' },
|
|
1186
|
-
{ code: 'an', label: 'Aragonés' },
|
|
1187
|
-
{ code: 'ar', label: 'العربية', isRtl: true },
|
|
1188
|
-
{ code: 'as', label: 'অসমীয়া' },
|
|
1189
|
-
{ code: 'av', label: 'авар мацӀ, магӀарул мацӀ' },
|
|
1190
|
-
{ code: 'ay', label: 'aymar aru' },
|
|
1191
|
-
{ code: 'az', label: 'azərbaycan dili' },
|
|
1192
|
-
{ code: 'ba', label: 'башҡорт теле' },
|
|
1193
|
-
{ code: 'be', label: 'Беларуская' },
|
|
1194
|
-
{ code: 'bg', label: 'български' },
|
|
1195
|
-
{ code: 'bh', label: 'भोजपुरी' },
|
|
1196
|
-
{ code: 'bi', label: 'Bislama' },
|
|
1197
|
-
{ code: 'bm', label: 'bamanankan' },
|
|
1198
|
-
{ code: 'bn', label: 'বাংলা' },
|
|
1199
|
-
{ code: 'bo', label: 'བོད་ཡིག' },
|
|
1200
|
-
{ code: 'br', label: 'brezhoneg' },
|
|
1201
|
-
{ code: 'bs', label: 'bosanski jezik' },
|
|
1202
|
-
{ code: 'ca', label: 'Català' },
|
|
1203
|
-
{ code: 'ce', label: 'нохчийн мотт' },
|
|
1204
|
-
{ code: 'ch', label: 'Chamoru' },
|
|
1205
|
-
{ code: 'co', label: 'corsu, lingua corsa' },
|
|
1206
|
-
{ code: 'cr', label: 'ᓀᐦᐃᔭᐍᐏᐣ' },
|
|
1207
|
-
{ code: 'cs', label: 'čeština' },
|
|
1208
|
-
{ code: 'cu', label: 'ѩзыкъ словѣньскъ' },
|
|
1209
|
-
{ code: 'cv', label: 'чӑваш чӗлхи' },
|
|
1210
|
-
{ code: 'cy', label: 'Cymraeg' },
|
|
1211
|
-
{ code: 'da', label: 'dansk' },
|
|
1212
|
-
{ code: 'de', label: 'Deutsch' },
|
|
1213
|
-
{ code: 'dv', label: 'ދިވެހި' },
|
|
1214
|
-
{ code: 'ee', label: 'Eʋegbe' },
|
|
1215
|
-
{ code: 'el', label: 'Ελληνικά' },
|
|
1216
|
-
{ code: 'en', label: 'English' },
|
|
1217
|
-
{ code: 'eo', label: 'Esperanto' },
|
|
1218
|
-
{ code: 'es', label: 'español' },
|
|
1219
|
-
{ code: 'et', label: 'eesti' },
|
|
1220
|
-
{ code: 'eu', label: 'euskara, euskera' },
|
|
1221
|
-
{ code: 'fa', label: 'فارسی', isRtl: true },
|
|
1222
|
-
{ code: 'ff', label: 'Fulfulde, Pulaar, Pular' },
|
|
1223
|
-
{ code: 'fi', label: 'suomi' },
|
|
1224
|
-
{ code: 'fj', label: 'vosa Vakaviti' },
|
|
1225
|
-
{ code: 'fo', label: 'føroyskt' },
|
|
1226
|
-
{ code: 'fr', label: 'français' },
|
|
1227
|
-
{ code: 'fy', label: 'Frysk' },
|
|
1228
|
-
{ code: 'ga', label: 'Gaeilge' },
|
|
1229
|
-
{ code: 'gd', label: 'Gàidhlig' },
|
|
1230
|
-
{ code: 'gl', label: 'Galego' },
|
|
1231
|
-
{ code: 'gn', label: 'Avañeẽ' },
|
|
1232
|
-
{ code: 'gu', label: 'ગુજરાતી' },
|
|
1233
|
-
{ code: 'gv', label: 'Gaelg, Gailck' },
|
|
1234
|
-
{ code: 'ha', label: 'Hausa, هَوُسَ' },
|
|
1235
|
-
{ code: 'he', label: 'עברית', isRtl: true },
|
|
1236
|
-
{ code: 'hi', label: 'हिन्दी, हिंदी' },
|
|
1237
|
-
{ code: 'ho', label: 'Hiri Motu' },
|
|
1238
|
-
{ code: 'hr', label: 'hrvatski' },
|
|
1239
|
-
{ code: 'ht', label: 'Kreyòl ayisyen' },
|
|
1240
|
-
{ code: 'hu', label: 'Magyar' },
|
|
1241
|
-
{ code: 'hy', label: 'Հայերեն' },
|
|
1242
|
-
{ code: 'hz', label: 'Otjiherero' },
|
|
1243
|
-
{ code: 'ia', label: 'Interlingua' },
|
|
1244
|
-
{ code: 'id', label: 'Bahasa Indonesia' },
|
|
1245
|
-
{ code: 'ie', label: 'Originally called Occidental' },
|
|
1246
|
-
{ code: 'ig', label: 'Asụsụ Igbo' },
|
|
1247
|
-
{ code: 'ii', label: 'ꆈꌠ꒿ Nuosuhxop' },
|
|
1248
|
-
{ code: 'ik', label: 'Iñupiaq, Iñupiatun' },
|
|
1249
|
-
{ code: 'io', label: 'Ido' },
|
|
1250
|
-
{ code: 'is', label: 'Íslenska' },
|
|
1251
|
-
{ code: 'it', label: 'Italiano' },
|
|
1252
|
-
{ code: 'iu', label: 'ᐃᓄᒃᑎᑐᑦ' },
|
|
1253
|
-
{ code: 'ja', label: '日本語' },
|
|
1254
|
-
{ code: 'jv', label: 'basa Jawa' },
|
|
1255
|
-
{ code: 'ka', label: 'ქართული' },
|
|
1256
|
-
{ code: 'kg', label: 'KiKongo' },
|
|
1257
|
-
{ code: 'ki', label: 'Gĩkũyũ' },
|
|
1258
|
-
{ code: 'kj', label: 'Kuanyama' },
|
|
1259
|
-
{ code: 'kk', label: 'Қазақ тілі' },
|
|
1260
|
-
{ code: 'kl', label: 'kalaallisut' },
|
|
1261
|
-
{ code: 'km', label: 'ភាសាខ្មែរ' },
|
|
1262
|
-
{ code: 'kn', label: 'ಕನ್ನಡ' },
|
|
1263
|
-
{ code: 'ko', label: '한국어 (韓國語), 조선말 (朝鮮語)' },
|
|
1264
|
-
{ code: 'kr', label: 'Kanuri' },
|
|
1265
|
-
{ code: 'ks', label: 'कश्मीरी, كشميري' },
|
|
1266
|
-
{ code: 'ku', label: 'Kurdî, كوردی', isRtl: true },
|
|
1267
|
-
{ code: 'kv', label: 'коми кыв' },
|
|
1268
|
-
{ code: 'kw', label: 'Kernewek' },
|
|
1269
|
-
{ code: 'ky', label: 'кыргыз тили' },
|
|
1270
|
-
{ code: 'la', label: 'latine' },
|
|
1271
|
-
{ code: 'lb', label: 'Lëtzebuergesch' },
|
|
1272
|
-
{ code: 'lg', label: 'Luganda' },
|
|
1273
|
-
{ code: 'li', label: 'Limburgs' },
|
|
1274
|
-
{ code: 'ln', label: 'Lingála' },
|
|
1275
|
-
{ code: 'lo', label: 'ພາສາລາວ' },
|
|
1276
|
-
{ code: 'lt', label: 'lietuvių kalba' },
|
|
1277
|
-
{ code: 'lu', label: 'Lëtzebuergesch' },
|
|
1278
|
-
{ code: 'lv', label: 'latviešu valoda' },
|
|
1279
|
-
{ code: 'me', label: 'crnogorski jezik' },
|
|
1280
|
-
{ code: 'mg', label: 'Malagasy fiteny' },
|
|
1281
|
-
{ code: 'mh', label: 'Kajin M̧ajeļ' },
|
|
1282
|
-
{ code: 'mi', label: 'te reo Māori' },
|
|
1283
|
-
{ code: 'mk', label: 'македонски јазик' },
|
|
1284
|
-
{ code: 'ml', label: 'മലയാളം' },
|
|
1285
|
-
{ code: 'mn', label: 'монгол' },
|
|
1286
|
-
{ code: 'mr', label: 'मराठी' },
|
|
1287
|
-
{ code: 'ms', label: 'bahasa Melayu, بهاس ملايو' },
|
|
1288
|
-
{ code: 'mt', label: 'Malti' },
|
|
1289
|
-
{ code: 'my', label: 'ဗမာစာ' },
|
|
1290
|
-
{ code: 'na', label: 'Ekakairũ Naoero' },
|
|
1291
|
-
{ code: 'nb', label: 'Norsk bokmål' },
|
|
1292
|
-
{ code: 'nd', label: 'isiNdebele' },
|
|
1293
|
-
{ code: 'ne', label: 'नेपाली' },
|
|
1294
|
-
{ code: 'ng', label: 'Owambo' },
|
|
1295
|
-
{ code: 'nl', label: 'Nederlands' },
|
|
1296
|
-
{ code: 'nn', label: 'Norsk nynorsk' },
|
|
1297
|
-
{ code: 'no', label: 'Norsk' },
|
|
1298
|
-
{ code: 'nr', label: 'isiNdebele' },
|
|
1299
|
-
{ code: 'nv', label: 'Diné bizaad, Dinékʼehǰí' },
|
|
1300
|
-
{ code: 'ny', label: 'chiCheŵa, chinyanja' },
|
|
1301
|
-
{ code: 'oc', label: 'Occitan' },
|
|
1302
|
-
{ code: 'oj', label: 'ᐊᓂᔑᓈᐯᒧᐎᓐ' },
|
|
1303
|
-
{ code: 'om', label: 'Afaan Oromoo' },
|
|
1304
|
-
{ code: 'or', label: 'ଓଡ଼ିଆ' },
|
|
1305
|
-
{ code: 'os', label: 'ирон æвзаг' },
|
|
1306
|
-
{ code: 'pa', label: 'ਪੰਜਾਬੀ, پنجابی' },
|
|
1307
|
-
{ code: 'pi', label: 'पाऴि' },
|
|
1308
|
-
{ code: 'pl', label: 'polski' },
|
|
1309
|
-
{ code: 'ps', label: 'پښتو' },
|
|
1310
|
-
{ code: 'pt', label: 'Português' },
|
|
1311
|
-
{ code: 'qu', label: 'Runa Simi, Kichwa' },
|
|
1312
|
-
{ code: 'rm', label: 'rumantsch grischun' },
|
|
1313
|
-
{ code: 'rn', label: 'kiRundi' },
|
|
1314
|
-
{ code: 'ro', label: 'română' },
|
|
1315
|
-
{ code: 'ru', label: 'русский язык' },
|
|
1316
|
-
{ code: 'rw', label: 'Ikinyarwanda' },
|
|
1317
|
-
{ code: 'sa', label: 'संस्कृतम्' },
|
|
1318
|
-
{ code: 'sc', label: 'sardu' },
|
|
1319
|
-
{ code: 'sd', label: 'सिन्धी, سنڌي، سندھی' },
|
|
1320
|
-
{ code: 'se', label: 'Davvisámegiella' },
|
|
1321
|
-
{ code: 'sg', label: 'yângâ tî sängö' },
|
|
1322
|
-
{ code: 'si', label: 'සිංහල' },
|
|
1323
|
-
{ code: 'sk', label: 'slovenčina' },
|
|
1324
|
-
{ code: 'sl', label: 'slovenščina' },
|
|
1325
|
-
{ code: 'sm', label: 'gagana faa Samoa' },
|
|
1326
|
-
{ code: 'sn', label: 'chiShona' },
|
|
1327
|
-
{ code: 'so', label: 'Soomaaliga, af Soomaali' },
|
|
1328
|
-
{ code: 'sq', label: 'Shqip' },
|
|
1329
|
-
{ code: 'sr', label: 'српски језик' },
|
|
1330
|
-
{ code: 'ss', label: 'SiSwati' },
|
|
1331
|
-
{ code: 'st', label: 'Sesotho' },
|
|
1332
|
-
{ code: 'su', label: 'Basa Sunda' },
|
|
1333
|
-
{ code: 'sv', label: 'svenska' },
|
|
1334
|
-
{ code: 'sw', label: 'Kiswahili' },
|
|
1335
|
-
{ code: 'ta', label: 'தமிழ்' },
|
|
1336
|
-
{ code: 'te', label: 'తెలుగు' },
|
|
1337
|
-
{ code: 'tg', label: 'тоҷикӣ, toğikī, تاجیکی' },
|
|
1338
|
-
{ code: 'th', label: 'ไทย' },
|
|
1339
|
-
{ code: 'ti', label: 'ትግርኛ' },
|
|
1340
|
-
{ code: 'tk', label: 'Türkmen, Түркмен' },
|
|
1341
|
-
{ code: 'tl', label: 'Wikang Tagalog' },
|
|
1342
|
-
{ code: 'tn', label: 'Setswana' },
|
|
1343
|
-
{ code: 'to', label: 'faka Tonga' },
|
|
1344
|
-
{ code: 'tr', label: 'Türkçe' },
|
|
1345
|
-
{ code: 'ts', label: 'Xitsonga' },
|
|
1346
|
-
{ code: 'tt', label: 'татарча, tatarça, تاتارچا' },
|
|
1347
|
-
{ code: 'tw', label: 'Twi' },
|
|
1348
|
-
{ code: 'ty', label: 'Reo Tahiti' },
|
|
1349
|
-
{ code: 'ug', label: 'Uyƣurqə, ئۇيغۇرچە' },
|
|
1350
|
-
{ code: 'uk', label: 'українська' },
|
|
1351
|
-
{ code: 'ur', label: 'اردو', isRtl: true },
|
|
1352
|
-
{ code: 'uz', label: 'zbek, Ўзбек, أۇزبېك' },
|
|
1353
|
-
{ code: 've', label: 'Tshivenḓa' },
|
|
1354
|
-
{ code: 'vi', label: 'Tiếng Việt' },
|
|
1355
|
-
{ code: 'vo', label: 'Volapük' },
|
|
1356
|
-
{ code: 'wa', label: 'Walon' },
|
|
1357
|
-
{ code: 'wo', label: 'Wollof' },
|
|
1358
|
-
{ code: 'xh', label: 'isiXhosa' },
|
|
1359
|
-
{ code: 'yi', label: 'ייִדיש' },
|
|
1360
|
-
{ code: 'yo', label: 'Yorùbá' },
|
|
1361
|
-
{ code: 'za', label: 'Saɯ cueŋƅ, Saw cuengh' },
|
|
1362
|
-
{ code: 'zh', label: '中文 (Zhōngwén), 汉语, 漢語' },
|
|
1363
|
-
]; }
|
|
1364
|
-
/**
|
|
1365
|
-
* Matches the given string array to the EU languages and returns a EuiLanguage array.
|
|
1366
|
-
* In case that no codes provided it returns the EU Languages array.
|
|
1367
|
-
*
|
|
1368
|
-
* @param codes A string array of 2 char codes
|
|
1369
|
-
*/
|
|
1370
|
-
static getLanguages(codes = Object.keys(this.languages)) {
|
|
1371
|
-
return this.filterInvalidLanguageCodes(codes).map((c) => (typeof c === 'string' ? this.languages[c] : c));
|
|
1372
|
-
}
|
|
1373
|
-
/**
|
|
1374
|
-
* filters and removes language codes that are not part of the EULanguage
|
|
1375
|
-
* e.g. 'ko' does not map to any EULanguage code on the array.
|
|
1376
|
-
* { code: 'ko', label: 'whatever' } is valid though
|
|
1377
|
-
*
|
|
1378
|
-
* @param codes codes A string array of 2 char codescodes A string array of 2 char codes
|
|
1379
|
-
*/
|
|
1380
|
-
static filterInvalidLanguageCodes(codes) {
|
|
1381
|
-
return codes.filter((c) => (typeof c === 'string' ? Object.keys(this.languages).indexOf(c) !== -1 : true));
|
|
1382
|
-
}
|
|
1383
|
-
/**
|
|
1384
|
-
* return the given list ordered based on the EULanguage order
|
|
1385
|
-
*
|
|
1386
|
-
* @param codes codes A string array of 2 char codes
|
|
1387
|
-
*/
|
|
1388
|
-
static getOrderedLanguages(codes = Object.keys(this.languages)) {
|
|
1389
|
-
return this.getLanguages(codes).sort((a, b) => Object.keys(this.languages).findIndex((c) => c === a.code) - Object.keys(this.languages).findIndex((c) => c === b.code));
|
|
1390
|
-
}
|
|
1391
|
-
/**
|
|
1392
|
-
* retrieve language codes (string array) from a given array of string and EuiLanguage items
|
|
1393
|
-
*
|
|
1394
|
-
* @param array It can be an mixed array of string and EuiLanguage items
|
|
1395
|
-
*/
|
|
1396
|
-
static getLanguageCodes(array) {
|
|
1397
|
-
return array.map((language) => (typeof language === 'string' ? language : language.code));
|
|
1398
|
-
}
|
|
1399
|
-
/**
|
|
1400
|
-
* filter non EU languages from given array
|
|
1401
|
-
*
|
|
1402
|
-
* @param array An array of EuiLanguage items
|
|
1403
|
-
*/
|
|
1404
|
-
static filterNonEULanguages(array) {
|
|
1405
|
-
return array ? array.filter((lang) => !Object.keys(this.languages).includes(lang.code)) : [];
|
|
1406
|
-
}
|
|
1407
|
-
/**
|
|
1408
|
-
* filter EU Languages from given array
|
|
1409
|
-
*
|
|
1410
|
-
* @param array An array of EuiLanguage items
|
|
1411
|
-
*/
|
|
1412
|
-
static filterEULanguages(array) {
|
|
1413
|
-
return array ? array.filter((lang) => Object.keys(this.languages).includes(lang.code)) : [];
|
|
1414
|
-
}
|
|
1415
|
-
/**
|
|
1416
|
-
* @param code language code, ex. 'lu'
|
|
1417
|
-
*/
|
|
1418
|
-
static getLanguageByCode(code) {
|
|
1419
|
-
return code ? this.allLanguages.find(lang => lang.code === code) : undefined;
|
|
1420
|
-
}
|
|
1421
|
-
/**
|
|
1422
|
-
* @param code language code, ex. 'lu'
|
|
1423
|
-
*/
|
|
1424
|
-
static isEuLanguage(code) {
|
|
1425
|
-
return Object.keys(this.languages).includes(code);
|
|
1426
|
-
}
|
|
1427
|
-
/**
|
|
1428
|
-
* Returns array of EuiLanguage that match the given codes. If codes array is empty, returns all languages.
|
|
1429
|
-
* @param codes A string array of 2 char codes, ex. ['en', 'de']
|
|
1430
|
-
*/
|
|
1431
|
-
static getAllLanguagesByCodes(codes) {
|
|
1432
|
-
return (codes && codes.length > 0) ? this.allLanguages.filter(el => codes.includes(el.code)) : this.allLanguages;
|
|
1433
|
-
}
|
|
1434
|
-
}
|
|
1435
|
-
|
|
1436
|
-
if (typeof crypto === 'object' && typeof crypto.randomUUID !== 'function') {
|
|
1437
|
-
crypto.randomUUID = () => {
|
|
1438
|
-
console.warn('usage of crypto.randomUUID() outside of HTTPS poses a ' +
|
|
1439
|
-
'security risk for you application and its users');
|
|
1440
|
-
const pattern = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx';
|
|
1441
|
-
return pattern.replace(/[xy]/g, (c) => {
|
|
1442
|
-
const r = (Math.random() * 16) | 0;
|
|
1443
|
-
const v = c === 'x' ? r : (r & 0x3) | 0x8;
|
|
1444
|
-
return v.toString(16);
|
|
1445
|
-
});
|
|
1446
|
-
};
|
|
1447
|
-
}
|
|
1448
|
-
|
|
1449
|
-
/**
|
|
1450
|
-
* Generated bundle index. Do not edit.
|
|
1451
|
-
*/
|
|
1452
|
-
|
|
1453
1609
|
export { ConsoleAppender, DEFAULT_CONSOLE_APPENDER_PREFIX_CONVERTERS, DEFAULT_XHR_CONFIG, DefaultConfig, EUI_COLORS, EUI_DEFAULT_AUTH_CONFIG, EuiEuLanguages, EuiLazyService, EuiPagination, EuiService, LogAppender, LogLevel, LogLevelName, Logger, LoggerMock, UrlAppender, UxBadgeLegacy, UxClearErrorFeedbackEvent, UxErrorGroupOnClickEvent, UxErrorOutput, UxLinkLegacy, UxMessageSeverity, UxMessageSeverityMetrics, UxPublishErrorFeedbackEvent, UxValidationErrorClass, getActiveLang, getApiQueue, getApiQueueItem, getAppConnection, getAppLoadedConfigModules, getAppState, getAppStatus, getAppVersion, getBrowserDefaultLanguage, getBrowserPreferredLanguages, getCurrentModule, getI18nLoaderConfig, getI18nServiceConfig, getI18nServiceConfigFromBase, getI18nState, getLastAddedModule, getLocaleServiceConfigFromBase, getLocaleState, getNotificationsList, getNotificationsState, getUserDashboard, getUserDetails, getUserFirstName, getUserFullName, getUserId, getUserLang, getUserLastName, getUserPreferences, getUserRight, getUserRightPermissions, getUserRights, getUserState, initialAppState, initialCoreState, initialI18nState, initialLocaleState, initialNotificationsState, initialUserPreferences, initialUserState, isObject, merge, mergeAll, mergeDeep, range, transformToUxHttpResponse, xhr };
|
|
1454
|
-
|
|
1610
|
+
|
|
1611
|
+
//# sourceMappingURL=eui-base.mjs.map
|