@entur-partner/common 9.3.1 → 9.3.3-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +1 -0
- package/dist/ActionBar.d.ts +2 -2
- package/dist/AuditInfo.d.ts +3 -3
- package/dist/Box.d.ts +15 -14
- package/dist/Breadcrumbs.d.ts +2 -2
- package/dist/ConfirmModal.d.ts +4 -3
- package/dist/Content.d.ts +4 -3
- package/dist/EnturPartnerLogo.d.ts +6 -5
- package/dist/ErrorBoundary.d.ts +1 -1
- package/dist/ExpandableMultiLanguageInput.d.ts +4 -4
- package/dist/FeatureToggle.d.ts +1 -1
- package/dist/FormatCurrencyAmount.d.ts +4 -3
- package/dist/FormatDateTime.d.ts +1 -1
- package/dist/LanguageSelect.d.ts +4 -4
- package/dist/Link.d.ts +2 -2
- package/dist/LinkButton.d.ts +3 -3
- package/dist/Menu.d.ts +4 -3
- package/dist/MultiLanguageInput.d.ts +5 -5
- package/dist/OrganisationDropdown.d.ts +2 -2
- package/dist/PageTitle.d.ts +1 -1
- package/dist/Pager.d.ts +1 -1
- package/dist/PermissionCheck.d.ts +2 -2
- package/dist/RouteLeavingGuard.d.ts +3 -3
- package/dist/Stack.d.ts +3 -2
- package/dist/StatusLabel.d.ts +2 -2
- package/dist/Text.d.ts +7 -6
- package/dist/Unbutton.d.ts +4 -4
- package/dist/UserMenu/components/CookieSettingsMenuItem.d.ts +2 -2
- package/dist/UserMenu/components/CustomOverflowMenu.d.ts +3 -3
- package/dist/UserMenu/components/CustomOverflowMenuItem.d.ts +2 -2
- package/dist/UserMenu/components/LanguageSwitchMenuItem.d.ts +2 -2
- package/dist/UserMenu/components/LogOutMenuItem.d.ts +2 -2
- package/dist/UserMenu/components/UserMenuItem.d.ts +2 -2
- package/dist/UserMenu/components/VersionMenuItem.d.ts +1 -1
- package/dist/UserMenu/index.d.ts +3 -3
- package/dist/UserMenu/useOutsideClick.d.ts +1 -1
- package/dist/common.cjs.development.js +793 -793
- package/dist/common.cjs.development.js.map +1 -1
- package/dist/common.cjs.production.min.js +1 -1
- package/dist/common.cjs.production.min.js.map +1 -1
- package/dist/common.esm.js +789 -789
- package/dist/common.esm.js.map +1 -1
- package/dist/index.d.ts +30 -30
- package/dist/styles.css +87 -87
- package/dist/useEventListener.d.ts +1 -3
- package/package.json +62 -62
- package/dist/helpers.d.ts +0 -1
|
@@ -3,25 +3,46 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var React = require('react');
|
|
6
|
+
var util = require('@entur-partner/util');
|
|
6
7
|
var cx = require('classnames');
|
|
7
|
-
var
|
|
8
|
-
var icons = require('@entur/icons');
|
|
9
|
-
var button = require('@entur/button');
|
|
8
|
+
var menu = require('@entur/menu');
|
|
10
9
|
var reactRouterDom = require('react-router-dom');
|
|
11
|
-
var
|
|
12
|
-
var form = require('@entur/form');
|
|
13
|
-
var util = require('@entur-partner/util');
|
|
14
|
-
var expand = require('@entur/expand');
|
|
15
|
-
var alert = require('@entur/alert');
|
|
10
|
+
var button = require('@entur/button');
|
|
16
11
|
var modal = require('@entur/modal');
|
|
17
|
-
var
|
|
12
|
+
var typography = require('@entur/typography');
|
|
13
|
+
var alert = require('@entur/alert');
|
|
14
|
+
var expand = require('@entur/expand');
|
|
15
|
+
var form = require('@entur/form');
|
|
16
|
+
var dropdown = require('@entur/dropdown');
|
|
18
17
|
var reactHelmetAsync = require('react-helmet-async');
|
|
18
|
+
var icons = require('@entur/icons');
|
|
19
19
|
|
|
20
20
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
21
21
|
|
|
22
22
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
23
23
|
var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
|
|
24
24
|
|
|
25
|
+
var ActionBarLeft = function ActionBarLeft(_ref) {
|
|
26
|
+
var children = _ref.children;
|
|
27
|
+
return React__default["default"].createElement("div", {
|
|
28
|
+
className: "eps-action-bar-left"
|
|
29
|
+
}, children);
|
|
30
|
+
};
|
|
31
|
+
var ActionBarRight = function ActionBarRight(_ref2) {
|
|
32
|
+
var children = _ref2.children;
|
|
33
|
+
return React__default["default"].createElement("div", {
|
|
34
|
+
className: "eps-action-bar-right"
|
|
35
|
+
}, children);
|
|
36
|
+
};
|
|
37
|
+
var ActionBar = function ActionBar(_ref3) {
|
|
38
|
+
var children = _ref3.children;
|
|
39
|
+
return React__default["default"].createElement(React__default["default"].Fragment, null, React__default["default"].createElement("div", {
|
|
40
|
+
className: "eps-action-bar-padding"
|
|
41
|
+
}), React__default["default"].createElement("div", {
|
|
42
|
+
className: "eps-action-bar"
|
|
43
|
+
}, children));
|
|
44
|
+
};
|
|
45
|
+
|
|
25
46
|
function _extends() {
|
|
26
47
|
_extends = Object.assign ? Object.assign.bind() : function (target) {
|
|
27
48
|
for (var i = 1; i < arguments.length; i++) {
|
|
@@ -61,7 +82,18 @@ function _objectWithoutPropertiesLoose(source, excluded) {
|
|
|
61
82
|
return target;
|
|
62
83
|
}
|
|
63
84
|
|
|
64
|
-
var _excluded$e = ["
|
|
85
|
+
var _excluded$e = ["date", "locale", "as", "hideTime"];
|
|
86
|
+
var FormatDateTime = function FormatDateTime(_ref) {
|
|
87
|
+
var date = _ref.date,
|
|
88
|
+
locale = _ref.locale,
|
|
89
|
+
_ref$as = _ref.as,
|
|
90
|
+
Component = _ref$as === void 0 ? "main" : _ref$as,
|
|
91
|
+
hideTime = _ref.hideTime,
|
|
92
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$e);
|
|
93
|
+
return React__default["default"].createElement(Component, _extends({}, rest), hideTime ? util.localeDate(date, locale) : util.localeDateTime(date, locale));
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
var _excluded$d = ["as", "children", "contrast", "paddingTop", "paddingRight", "paddingBottom", "paddingLeft", "paddingX", "paddingY", "padding", "marginTop", "marginRight", "marginBottom", "marginLeft", "marginX", "marginY", "margin", "display", "justifyContent", "alignItems", "maxWidth", "width", "background", "color", "flexDirection", "flexWrap", "className"];
|
|
65
97
|
function responsiveProp(prefix, prop) {
|
|
66
98
|
if (Array.isArray(prop)) {
|
|
67
99
|
var classes = [];
|
|
@@ -74,7 +106,7 @@ function responsiveProp(prefix, prop) {
|
|
|
74
106
|
}
|
|
75
107
|
var Box = function Box(_ref) {
|
|
76
108
|
var _ref$as = _ref.as,
|
|
77
|
-
Component = _ref$as === void 0 ?
|
|
109
|
+
Component = _ref$as === void 0 ? "div" : _ref$as,
|
|
78
110
|
children = _ref.children,
|
|
79
111
|
contrast = _ref.contrast,
|
|
80
112
|
paddingTop = _ref.paddingTop,
|
|
@@ -101,7 +133,7 @@ var Box = function Box(_ref) {
|
|
|
101
133
|
flexDirection = _ref.flexDirection,
|
|
102
134
|
flexWrap = _ref.flexWrap,
|
|
103
135
|
className = _ref.className,
|
|
104
|
-
rest = _objectWithoutPropertiesLoose(_ref, _excluded$
|
|
136
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$d);
|
|
105
137
|
var classes = [];
|
|
106
138
|
var resolvedPaddingTop = paddingTop || paddingY || padding;
|
|
107
139
|
var resolvedPaddingBottom = paddingBottom || paddingY || padding;
|
|
@@ -111,32 +143,33 @@ var Box = function Box(_ref) {
|
|
|
111
143
|
var resolvedMarginBottom = marginBottom || marginY || margin;
|
|
112
144
|
var resolvedMarginLeft = marginLeft || marginX || margin;
|
|
113
145
|
var resolvedMarginRight = marginRight || marginX || margin;
|
|
114
|
-
contrast && classes.push(
|
|
115
|
-
resolvedPaddingTop && classes.push.apply(classes, responsiveProp(
|
|
116
|
-
resolvedPaddingBottom && classes.push.apply(classes, responsiveProp(
|
|
117
|
-
resolvedPaddingLeft && classes.push.apply(classes, responsiveProp(
|
|
118
|
-
resolvedPaddingRight && classes.push.apply(classes, responsiveProp(
|
|
119
|
-
resolvedMarginTop && classes.push.apply(classes, responsiveProp(
|
|
120
|
-
resolvedMarginBottom && classes.push.apply(classes, responsiveProp(
|
|
121
|
-
resolvedMarginLeft && classes.push.apply(classes, responsiveProp(
|
|
122
|
-
resolvedMarginRight && classes.push.apply(classes, responsiveProp(
|
|
123
|
-
display && classes.push.apply(classes, responsiveProp(
|
|
124
|
-
justifyContent && classes.push.apply(classes, responsiveProp(
|
|
146
|
+
contrast && classes.push("eds-contrast");
|
|
147
|
+
resolvedPaddingTop && classes.push.apply(classes, responsiveProp("eps-pt-", resolvedPaddingTop));
|
|
148
|
+
resolvedPaddingBottom && classes.push.apply(classes, responsiveProp("eps-pb-", resolvedPaddingBottom));
|
|
149
|
+
resolvedPaddingLeft && classes.push.apply(classes, responsiveProp("eps-pl-", resolvedPaddingLeft));
|
|
150
|
+
resolvedPaddingRight && classes.push.apply(classes, responsiveProp("eps-pr-", resolvedPaddingRight));
|
|
151
|
+
resolvedMarginTop && classes.push.apply(classes, responsiveProp("eps-mt-", resolvedMarginTop));
|
|
152
|
+
resolvedMarginBottom && classes.push.apply(classes, responsiveProp("eps-mb-", resolvedMarginBottom));
|
|
153
|
+
resolvedMarginLeft && classes.push.apply(classes, responsiveProp("eps-ml-", resolvedMarginLeft));
|
|
154
|
+
resolvedMarginRight && classes.push.apply(classes, responsiveProp("eps-mr-", resolvedMarginRight));
|
|
155
|
+
display && classes.push.apply(classes, responsiveProp("eps-", display));
|
|
156
|
+
justifyContent && classes.push.apply(classes, responsiveProp("eps-justify-", justifyContent));
|
|
125
157
|
if (alignItems) {
|
|
126
|
-
classes.push.apply(classes, responsiveProp(
|
|
158
|
+
classes.push.apply(classes, responsiveProp("eps-items-", alignItems));
|
|
127
159
|
}
|
|
128
|
-
maxWidth && classes.push.apply(classes, responsiveProp(
|
|
129
|
-
width && classes.push.apply(classes, responsiveProp(
|
|
160
|
+
maxWidth && classes.push.apply(classes, responsiveProp("eps-max-w-", maxWidth));
|
|
161
|
+
width && classes.push.apply(classes, responsiveProp("eps-w-", width));
|
|
130
162
|
color && classes.push("eps-color-" + color);
|
|
131
163
|
background && classes.push("eps-bg-" + background);
|
|
132
|
-
flexDirection && classes.push.apply(classes, responsiveProp(
|
|
133
|
-
flexWrap && classes.push.apply(classes, responsiveProp(
|
|
164
|
+
flexDirection && classes.push.apply(classes, responsiveProp("eps-flex-", flexDirection));
|
|
165
|
+
flexWrap && classes.push.apply(classes, responsiveProp("eps-flex-wrap-", flexWrap));
|
|
134
166
|
var classList = cx__default["default"](classes, className);
|
|
135
167
|
return React__default["default"].createElement(Component, _extends({
|
|
136
168
|
className: classList
|
|
137
169
|
}, rest), children);
|
|
138
170
|
};
|
|
139
171
|
|
|
172
|
+
/** biome-ignore-all lint/suspicious/noArrayIndexKey: Ignore for now. Should be tested properly before doing changes */
|
|
140
173
|
var Stack = function Stack(_ref) {
|
|
141
174
|
var children = _ref.children,
|
|
142
175
|
space = _ref.space,
|
|
@@ -157,68 +190,106 @@ var Stack = function Stack(_ref) {
|
|
|
157
190
|
}));
|
|
158
191
|
};
|
|
159
192
|
|
|
160
|
-
var
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
var
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
193
|
+
var _excluded$c = ["items", "locale", "className"];
|
|
194
|
+
var AuditInfo = function AuditInfo(_ref) {
|
|
195
|
+
var items = _ref.items,
|
|
196
|
+
locale = _ref.locale,
|
|
197
|
+
className = _ref.className,
|
|
198
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$c);
|
|
199
|
+
var classNames = cx__default["default"]("ep-audit-info", className);
|
|
200
|
+
return React__default["default"].createElement("div", _extends({
|
|
201
|
+
className: classNames
|
|
202
|
+
}, rest), items.map(function (_ref2) {
|
|
203
|
+
var label = _ref2.label,
|
|
204
|
+
value = _ref2.value;
|
|
205
|
+
return React__default["default"].createElement(Stack, {
|
|
206
|
+
space: "small",
|
|
207
|
+
key: value.toString()
|
|
208
|
+
}, React__default["default"].createElement("div", {
|
|
209
|
+
className: "ep-audit-info-label"
|
|
210
|
+
}, label), React__default["default"].createElement("div", null, util.isDate(value) || util.isDateString(value) ? React__default["default"].createElement(FormatDateTime, {
|
|
211
|
+
date: value,
|
|
212
|
+
locale: locale
|
|
213
|
+
}) : React__default["default"].createElement("span", null, value)));
|
|
214
|
+
}));
|
|
171
215
|
};
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
216
|
+
|
|
217
|
+
var Breadcrumbs = function Breadcrumbs(_ref) {
|
|
218
|
+
var prependBreadcrumbItem = _ref.prependBreadcrumbItem,
|
|
219
|
+
pathname = _ref.pathname,
|
|
220
|
+
onBreadcrumbLookup = _ref.onBreadcrumbLookup;
|
|
221
|
+
var paths = util.splitUrlPath(pathname);
|
|
222
|
+
var breadcrumbs = paths.map(function (path) {
|
|
223
|
+
return {
|
|
224
|
+
title: onBreadcrumbLookup(path),
|
|
225
|
+
path: path
|
|
226
|
+
};
|
|
227
|
+
}).filter(function (_ref2) {
|
|
228
|
+
var title = _ref2.title;
|
|
229
|
+
return title !== undefined;
|
|
230
|
+
});
|
|
231
|
+
var breadcrumbElements = breadcrumbs.map(function (_ref3, i) {
|
|
232
|
+
var title = _ref3.title,
|
|
233
|
+
path = _ref3.path;
|
|
234
|
+
var isLast = i === breadcrumbs.length - 1;
|
|
235
|
+
if (isLast) {
|
|
236
|
+
return React__default["default"].createElement(menu.BreadcrumbItem, {
|
|
237
|
+
key: path,
|
|
238
|
+
as: "span"
|
|
239
|
+
}, title);
|
|
240
|
+
}
|
|
241
|
+
return React__default["default"].createElement(menu.BreadcrumbItem, {
|
|
242
|
+
key: path,
|
|
243
|
+
as: reactRouterDom.Link,
|
|
244
|
+
to: path
|
|
245
|
+
}, title);
|
|
246
|
+
});
|
|
247
|
+
if (prependBreadcrumbItem) {
|
|
248
|
+
return React__default["default"].createElement(menu.BreadcrumbNavigation, null, [prependBreadcrumbItem].concat(breadcrumbElements));
|
|
249
|
+
}
|
|
250
|
+
return React__default["default"].createElement(menu.BreadcrumbNavigation, null, breadcrumbElements);
|
|
179
251
|
};
|
|
180
252
|
|
|
181
|
-
var _excluded$
|
|
182
|
-
var
|
|
183
|
-
var
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
253
|
+
var _excluded$b = ["isOpen", "children", "message", "size", "buttons", "onConfirm", "messages", "onClose", "onDismiss"];
|
|
254
|
+
var ConfirmModal = function ConfirmModal(_ref) {
|
|
255
|
+
var _ref$isOpen = _ref.isOpen,
|
|
256
|
+
isOpen = _ref$isOpen === void 0 ? false : _ref$isOpen,
|
|
257
|
+
children = _ref.children,
|
|
258
|
+
message = _ref.message,
|
|
259
|
+
_ref$size = _ref.size,
|
|
260
|
+
size = _ref$size === void 0 ? "medium" : _ref$size,
|
|
261
|
+
buttons = _ref.buttons,
|
|
262
|
+
onConfirm = _ref.onConfirm,
|
|
263
|
+
messages = _ref.messages,
|
|
264
|
+
onClose = _ref.onClose,
|
|
265
|
+
onDismiss = _ref.onDismiss,
|
|
266
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$b);
|
|
267
|
+
var childrenToRender = children ? children : message;
|
|
268
|
+
var handleDismiss = onClose ? onClose : onDismiss;
|
|
269
|
+
return React__default["default"].createElement(modal.Modal, _extends({
|
|
270
|
+
size: size,
|
|
271
|
+
open: isOpen,
|
|
272
|
+
onDismiss: handleDismiss
|
|
273
|
+
}, rest), util.isString(childrenToRender) ? React__default["default"].createElement(typography.Paragraph, null, childrenToRender) : React__default["default"].createElement(Box, {
|
|
274
|
+
paddingBottom: "medium"
|
|
275
|
+
}, childrenToRender), React__default["default"].createElement(button.ButtonGroup, null, onConfirm ? React__default["default"].createElement(React__default["default"].Fragment, null, React__default["default"].createElement(button.SecondaryButton, {
|
|
276
|
+
onClick: handleDismiss,
|
|
277
|
+
"data-testid": "cancel-modal-button"
|
|
278
|
+
}, messages.cancel), React__default["default"].createElement(button.PrimaryButton, {
|
|
279
|
+
onClick: onConfirm,
|
|
280
|
+
"data-testid": "confirm-modal-button"
|
|
281
|
+
}, messages.confirm)) : buttons));
|
|
190
282
|
};
|
|
191
283
|
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
var _window$localStorage, _window$localStorage2;
|
|
202
|
-
return undefined["VITE_APP_" + flag] === 'true' || ((_window$localStorage = window.localStorage) == null ? void 0 : _window$localStorage.getItem(flag)) === 'true' || ((_window$localStorage2 = window.localStorage) == null ? void 0 : _window$localStorage2.getItem("VITE_APP_" + flag)) === 'true';
|
|
203
|
-
}
|
|
204
|
-
/**
|
|
205
|
-
* Returns true if the provided flag exist in localStorage
|
|
206
|
-
* or is set as an environment variable.
|
|
207
|
-
*
|
|
208
|
-
* @param flag case sensitive flag. If it is an environment variable
|
|
209
|
-
* you can drop the VITE_APP_ prefix.
|
|
210
|
-
*/
|
|
211
|
-
function useFeatureToggle(flag) {
|
|
212
|
-
return featureFlag(flag);
|
|
213
|
-
}
|
|
214
|
-
var FeatureToggle = function FeatureToggle(_ref) {
|
|
215
|
-
var children = _ref.children,
|
|
216
|
-
flag = _ref.flag;
|
|
217
|
-
var feature = useFeatureToggle(flag);
|
|
218
|
-
if (feature) {
|
|
219
|
-
return React__default["default"].createElement(React__default["default"].Fragment, null, children);
|
|
220
|
-
}
|
|
221
|
-
return null;
|
|
284
|
+
var Content = function Content(_ref) {
|
|
285
|
+
var _ref$as = _ref.as,
|
|
286
|
+
Component = _ref$as === void 0 ? "main" : _ref$as,
|
|
287
|
+
className = _ref.className,
|
|
288
|
+
children = _ref.children;
|
|
289
|
+
var classList = cx__default["default"](["eps-content", className]);
|
|
290
|
+
return React__default["default"].createElement(Component, {
|
|
291
|
+
className: classList
|
|
292
|
+
}, children);
|
|
222
293
|
};
|
|
223
294
|
|
|
224
295
|
var _environmentColors, _humanReadableEnviron;
|
|
@@ -229,7 +300,7 @@ exports.Environment = void 0;
|
|
|
229
300
|
Environment["Staging"] = "staging";
|
|
230
301
|
Environment["Production"] = "prod";
|
|
231
302
|
})(exports.Environment || (exports.Environment = {}));
|
|
232
|
-
var environmentColors = (_environmentColors = {}, _environmentColors[exports.Environment.Local] =
|
|
303
|
+
var environmentColors = (_environmentColors = {}, _environmentColors[exports.Environment.Local] = "#B482FB", _environmentColors[exports.Environment.Development] = "#5AC39A", _environmentColors[exports.Environment.Staging] = "#FFCA28", _environmentColors);
|
|
233
304
|
/**
|
|
234
305
|
* Gets the color for the given environment. This is the color used for the environment
|
|
235
306
|
* indicator. There is no color for production as it should not have any special environment
|
|
@@ -238,17 +309,17 @@ var environmentColors = (_environmentColors = {}, _environmentColors[exports.Env
|
|
|
238
309
|
var getColorForEnvironment = function getColorForEnvironment(environment) {
|
|
239
310
|
return environmentColors[environment];
|
|
240
311
|
};
|
|
241
|
-
var humanReadableEnvironment = (_humanReadableEnviron = {}, _humanReadableEnviron[exports.Environment.Local] =
|
|
312
|
+
var humanReadableEnvironment = (_humanReadableEnviron = {}, _humanReadableEnviron[exports.Environment.Local] = "Local", _humanReadableEnviron[exports.Environment.Development] = "Dev", _humanReadableEnviron[exports.Environment.Staging] = "Staging", _humanReadableEnviron[exports.Environment.Production] = "Prod", _humanReadableEnviron);
|
|
242
313
|
var getHumanReadableEnvironment = function getHumanReadableEnvironment(environment) {
|
|
243
314
|
return humanReadableEnvironment[environment];
|
|
244
315
|
};
|
|
245
316
|
|
|
246
|
-
var _excluded$
|
|
317
|
+
var _excluded$a = ["title", "accentColor"];
|
|
247
318
|
var EnturPartnerLogoSvg = function EnturPartnerLogoSvg(_ref) {
|
|
248
319
|
var title = _ref.title,
|
|
249
320
|
_ref$accentColor = _ref.accentColor,
|
|
250
|
-
accentColor = _ref$accentColor === void 0 ?
|
|
251
|
-
rest = _objectWithoutPropertiesLoose(_ref, _excluded$
|
|
321
|
+
accentColor = _ref$accentColor === void 0 ? "#FF5959" : _ref$accentColor,
|
|
322
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$a);
|
|
252
323
|
return React__default["default"].createElement("svg", _extends({
|
|
253
324
|
width: 257,
|
|
254
325
|
height: 37,
|
|
@@ -273,11 +344,11 @@ var EnturPartnerLogoSvg = function EnturPartnerLogoSvg(_ref) {
|
|
|
273
344
|
};
|
|
274
345
|
var EnturPartnerLogo = function EnturPartnerLogo(_ref2) {
|
|
275
346
|
var _ref2$as = _ref2.as,
|
|
276
|
-
Component = _ref2$as === void 0 ?
|
|
347
|
+
Component = _ref2$as === void 0 ? "nav" : _ref2$as,
|
|
277
348
|
className = _ref2.className,
|
|
278
349
|
altText = _ref2.altText,
|
|
279
350
|
environment = _ref2.environment;
|
|
280
|
-
var classList = cx__default["default"]([
|
|
351
|
+
var classList = cx__default["default"](["eps-logo-wrapper", className]);
|
|
281
352
|
return React__default["default"].createElement(Component, {
|
|
282
353
|
className: classList
|
|
283
354
|
}, React__default["default"].createElement(EnturPartnerLogoSvg, {
|
|
@@ -287,423 +358,224 @@ var EnturPartnerLogo = function EnturPartnerLogo(_ref2) {
|
|
|
287
358
|
}));
|
|
288
359
|
};
|
|
289
360
|
|
|
290
|
-
var
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
className: classList
|
|
298
|
-
}, children);
|
|
299
|
-
};
|
|
300
|
-
|
|
301
|
-
var Content = function Content(_ref) {
|
|
302
|
-
var _ref$as = _ref.as,
|
|
303
|
-
Component = _ref$as === void 0 ? 'main' : _ref$as,
|
|
304
|
-
className = _ref.className,
|
|
305
|
-
children = _ref.children;
|
|
306
|
-
var classList = cx__default["default"](['eps-content', className]);
|
|
307
|
-
return React__default["default"].createElement(Component, {
|
|
308
|
-
className: classList
|
|
309
|
-
}, children);
|
|
310
|
-
};
|
|
311
|
-
|
|
312
|
-
function useOutsideClick(ref, buttonRef, handler) {
|
|
313
|
-
React__default["default"].useEffect(function () {
|
|
314
|
-
var listener = function listener(event) {
|
|
315
|
-
if (elementContainsEventTarget(ref.current, event) || elementContainsEventTarget(buttonRef.current, event)) {
|
|
316
|
-
return;
|
|
317
|
-
}
|
|
318
|
-
handler();
|
|
319
|
-
};
|
|
320
|
-
document.addEventListener('mousedown', listener);
|
|
321
|
-
document.addEventListener('touchstart', listener);
|
|
322
|
-
return function () {
|
|
323
|
-
document.removeEventListener('mousedown', listener);
|
|
324
|
-
document.removeEventListener('touchstart', listener);
|
|
361
|
+
var newAppVersionErrorMessage = "Failed to execute 'removeChild' on 'Node': The node to be removed is not a child of this node.";
|
|
362
|
+
var ErrorBoundary = /*#__PURE__*/function (_Component) {
|
|
363
|
+
function ErrorBoundary(props) {
|
|
364
|
+
var _this;
|
|
365
|
+
_this = _Component.call(this, props) || this;
|
|
366
|
+
_this.state = {
|
|
367
|
+
error: null
|
|
325
368
|
};
|
|
326
|
-
|
|
327
|
-
}
|
|
328
|
-
function elementContainsEventTarget(element, event) {
|
|
329
|
-
if (!element) {
|
|
330
|
-
return false;
|
|
331
|
-
}
|
|
332
|
-
if (element.contains(event.target)) {
|
|
333
|
-
return true;
|
|
334
|
-
}
|
|
335
|
-
// For elements inside a Shadow DOM we need to check the composedPath
|
|
336
|
-
if (event.composed && event.composedPath) {
|
|
337
|
-
var contains = event.composedPath().find(function (target) {
|
|
338
|
-
if (target === window) {
|
|
339
|
-
return false;
|
|
340
|
-
}
|
|
341
|
-
return element.contains(target);
|
|
342
|
-
});
|
|
343
|
-
return !!contains;
|
|
369
|
+
return _this;
|
|
344
370
|
}
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
371
|
+
_inheritsLoose(ErrorBoundary, _Component);
|
|
372
|
+
ErrorBoundary.getDerivedStateFromError = function getDerivedStateFromError(error) {
|
|
373
|
+
return {
|
|
374
|
+
error: error
|
|
375
|
+
};
|
|
376
|
+
};
|
|
377
|
+
var _proto = ErrorBoundary.prototype;
|
|
378
|
+
_proto.componentDidCatch = function componentDidCatch(error, errorInfo) {
|
|
379
|
+
var _this$props$handleErr, _this$props;
|
|
380
|
+
// React always logs in development
|
|
381
|
+
(_this$props$handleErr = (_this$props = this.props).handleError) == null || _this$props$handleErr.call(_this$props, error, errorInfo);
|
|
382
|
+
};
|
|
383
|
+
_proto.render = function render() {
|
|
384
|
+
var _this2 = this;
|
|
385
|
+
var error = this.state.error;
|
|
386
|
+
var _this$props2 = this.props,
|
|
387
|
+
fallback = _this$props2.fallback,
|
|
388
|
+
children = _this$props2.children;
|
|
389
|
+
if (error) {
|
|
390
|
+
if (util.isFunction(fallback)) {
|
|
391
|
+
return fallback({
|
|
392
|
+
retry: function retry() {
|
|
393
|
+
return _this2.setState({
|
|
394
|
+
error: null
|
|
395
|
+
});
|
|
396
|
+
},
|
|
397
|
+
error: error
|
|
398
|
+
});
|
|
399
|
+
} else if (error.name === "NotFoundError" && error.message === newAppVersionErrorMessage) {
|
|
400
|
+
return React__default["default"].createElement(RefreshBannerInfo, null);
|
|
401
|
+
}
|
|
402
|
+
return fallback;
|
|
403
|
+
}
|
|
404
|
+
return children;
|
|
405
|
+
};
|
|
406
|
+
return ErrorBoundary;
|
|
407
|
+
}(React.Component);
|
|
408
|
+
var LANGUAGE_STORAGE_KEY = "EP::locale";
|
|
409
|
+
function RefreshBannerInfo() {
|
|
410
|
+
// Taken from ./app-shell/src/storage.ts
|
|
411
|
+
var language = localStorage.getItem(LANGUAGE_STORAGE_KEY);
|
|
412
|
+
var isNorwegian = language === "nb" || language === "nb-NO";
|
|
413
|
+
return React__default["default"].createElement(Box, {
|
|
414
|
+
maxWidth: "large"
|
|
415
|
+
}, React__default["default"].createElement(alert.BannerAlertBox, {
|
|
416
|
+
variant: "info",
|
|
417
|
+
title: isNorwegian ? "En ny versjon av nettsiden er tilgjengelig." : "A new version of the website is available."
|
|
418
|
+
}, React__default["default"].createElement(Box, {
|
|
419
|
+
paddingBottom: "medium"
|
|
420
|
+
}, React__default["default"].createElement(typography.Paragraph, {
|
|
421
|
+
margin: "none"
|
|
422
|
+
}, isNorwegian ? "Vennligst oppdater." : "Please refresh.")), React__default["default"].createElement(button.PrimaryButton, {
|
|
367
423
|
onClick: function onClick() {
|
|
368
|
-
return
|
|
369
|
-
},
|
|
370
|
-
"aria-haspopup": true,
|
|
371
|
-
role: "button",
|
|
372
|
-
"aria-expanded": open,
|
|
373
|
-
ref: overflowMenuTriggerRef
|
|
374
|
-
}, rest), React__default["default"].createElement("div", {
|
|
375
|
-
className: "eps-overflow-menu__button-contents"
|
|
376
|
-
}, React__default["default"].createElement("span", {
|
|
377
|
-
className: "eds-overflow-menu__user-icon"
|
|
378
|
-
}, React__default["default"].createElement(icons.UserIcon, {
|
|
379
|
-
inline: true
|
|
380
|
-
})), React__default["default"].createElement(typography.Heading6, {
|
|
381
|
-
margin: "none",
|
|
382
|
-
as: "span"
|
|
383
|
-
}, userName, environment !== undefined && environment !== exports.Environment.Production && React__default["default"].createElement("span", {
|
|
384
|
-
style: {
|
|
385
|
-
color: getColorForEnvironment(environment)
|
|
424
|
+
return window.location.reload();
|
|
386
425
|
}
|
|
387
|
-
},
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
426
|
+
}, isNorwegian ? "Oppdater" : "Refresh")));
|
|
427
|
+
}
|
|
428
|
+
|
|
429
|
+
var _excluded$9 = ["title", "inputComponent", "languages", "values", "onChange", "name", "variant", "feedback"];
|
|
430
|
+
var ExpandableMultiLanguageInput = function ExpandableMultiLanguageInput(_ref) {
|
|
431
|
+
var title = _ref.title,
|
|
432
|
+
InputComponent = _ref.inputComponent,
|
|
433
|
+
languages = _ref.languages,
|
|
434
|
+
values = _ref.values,
|
|
435
|
+
onChange = _ref.onChange,
|
|
436
|
+
name = _ref.name,
|
|
437
|
+
variant = _ref.variant,
|
|
438
|
+
feedback = _ref.feedback,
|
|
439
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$9);
|
|
440
|
+
var handleOnChange = function handleOnChange(language, value) {
|
|
441
|
+
var changes = _extends({}, values);
|
|
442
|
+
if (value === "" || !value) {
|
|
443
|
+
delete changes[language];
|
|
444
|
+
} else {
|
|
445
|
+
changes[language] = value;
|
|
446
|
+
}
|
|
447
|
+
onChange(changes);
|
|
448
|
+
};
|
|
449
|
+
return React__default["default"].createElement(expand.ExpandablePanel, {
|
|
450
|
+
title: title,
|
|
451
|
+
defaultOpen: true,
|
|
452
|
+
contentStyle: {
|
|
453
|
+
padding: "4px 4px 4px 4px",
|
|
454
|
+
marginTop: "16px",
|
|
455
|
+
marginBottom: "16px"
|
|
456
|
+
}
|
|
457
|
+
}, React__default["default"].createElement(Stack, {
|
|
458
|
+
space: "medium"
|
|
459
|
+
}, languages.map(function (_ref2) {
|
|
460
|
+
var langKey = _ref2.value,
|
|
461
|
+
label = _ref2.label,
|
|
462
|
+
required = _ref2.required;
|
|
463
|
+
return React__default["default"].createElement(InputComponent, _extends({
|
|
464
|
+
"data-testid": "multi-lang-input-" + name + "-" + langKey,
|
|
465
|
+
key: title + langKey,
|
|
466
|
+
label: required ? label + "*" : label,
|
|
467
|
+
variant: variant == null ? void 0 : variant(langKey),
|
|
468
|
+
feedback: feedback == null ? void 0 : feedback(langKey),
|
|
469
|
+
name: name,
|
|
470
|
+
onChange: function onChange(e) {
|
|
471
|
+
handleOnChange(langKey, e.target.value);
|
|
472
|
+
},
|
|
473
|
+
value: values[langKey] || ""
|
|
474
|
+
}, rest));
|
|
475
|
+
})));
|
|
396
476
|
};
|
|
397
477
|
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
478
|
+
/// <reference types="vite/client" />
|
|
479
|
+
/**
|
|
480
|
+
* Returns true if the provided flag exist in localStorage
|
|
481
|
+
* or is set as an environment variable.
|
|
482
|
+
*
|
|
483
|
+
* @param flag case sensitive flag. If it is an environment variable
|
|
484
|
+
* you can drop the VITE_APP_ prefix.
|
|
485
|
+
*/
|
|
486
|
+
function featureFlag(flag) {
|
|
487
|
+
var _window$localStorage, _window$localStorage2;
|
|
488
|
+
return undefined["VITE_APP_" + flag] === "true" || ((_window$localStorage = window.localStorage) == null ? void 0 : _window$localStorage.getItem(flag)) === "true" || ((_window$localStorage2 = window.localStorage) == null ? void 0 : _window$localStorage2.getItem("VITE_APP_" + flag)) === "true";
|
|
489
|
+
}
|
|
490
|
+
/**
|
|
491
|
+
* Returns true if the provided flag exist in localStorage
|
|
492
|
+
* or is set as an environment variable.
|
|
493
|
+
*
|
|
494
|
+
* @param flag case sensitive flag. If it is an environment variable
|
|
495
|
+
* you can drop the VITE_APP_ prefix.
|
|
496
|
+
*/
|
|
497
|
+
function useFeatureToggle(flag) {
|
|
498
|
+
return featureFlag(flag);
|
|
499
|
+
}
|
|
500
|
+
var FeatureToggle = function FeatureToggle(_ref) {
|
|
501
|
+
var children = _ref.children,
|
|
502
|
+
flag = _ref.flag;
|
|
503
|
+
var feature = useFeatureToggle(flag);
|
|
504
|
+
if (feature) {
|
|
505
|
+
return React__default["default"].createElement(React__default["default"].Fragment, null, children);
|
|
506
|
+
}
|
|
507
|
+
return null;
|
|
403
508
|
};
|
|
404
509
|
|
|
405
|
-
var
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
var
|
|
412
|
-
var
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
},
|
|
418
|
-
className: "eps-overflow-menu__item"
|
|
419
|
-
}, React__default["default"].createElement("span", {
|
|
420
|
-
"aria-hidden": true,
|
|
421
|
-
className: "eps-overflow-menu__icon-margin"
|
|
422
|
-
}, React__default["default"].createElement(icons.NorwayIcon, {
|
|
423
|
-
size: "1rem",
|
|
424
|
-
inline: true
|
|
425
|
-
})), name) : React__default["default"].createElement(CustomOverflowMenuItem, {
|
|
426
|
-
onClick: function onClick() {
|
|
427
|
-
onLanguageChange(englishLanguageKey);
|
|
428
|
-
setOpen(false);
|
|
429
|
-
},
|
|
430
|
-
className: "eps-overflow-menu__item"
|
|
431
|
-
}, React__default["default"].createElement("span", {
|
|
432
|
-
"aria-hidden": true,
|
|
433
|
-
className: "eps-overflow-menu__icon-margin"
|
|
434
|
-
}, React__default["default"].createElement(icons.UKIcon, {
|
|
435
|
-
size: "1rem",
|
|
436
|
-
inline: true
|
|
437
|
-
})), name));
|
|
510
|
+
var _excluded$8 = ["amount", "as"];
|
|
511
|
+
var FormatCurrencyAmount = function FormatCurrencyAmount(_ref) {
|
|
512
|
+
var amount = _ref.amount,
|
|
513
|
+
_ref$as = _ref.as,
|
|
514
|
+
Component = _ref$as === void 0 ? "span" : _ref$as,
|
|
515
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$8);
|
|
516
|
+
var parsedAmount = Number(amount) || 0;
|
|
517
|
+
var formattedAmount = new Intl.NumberFormat("nb-NO", {
|
|
518
|
+
maximumFractionDigits: 2,
|
|
519
|
+
minimumFractionDigits: 2
|
|
520
|
+
}).format(parsedAmount);
|
|
521
|
+
return React__default["default"].createElement(Component, _extends({}, rest), formattedAmount);
|
|
438
522
|
};
|
|
439
523
|
|
|
440
|
-
var
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
524
|
+
var _excluded$7 = ["language", "options", "className", "onChange"];
|
|
525
|
+
var LanguageSelect = function LanguageSelect(_ref) {
|
|
526
|
+
var language = _ref.language,
|
|
527
|
+
options = _ref.options,
|
|
528
|
+
className = _ref.className,
|
|
529
|
+
_onChange = _ref.onChange,
|
|
530
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$7);
|
|
531
|
+
var classNames = cx__default["default"]("eps-language-select", className);
|
|
532
|
+
return React__default["default"].createElement("div", _extends({}, rest, {
|
|
533
|
+
className: classNames
|
|
534
|
+
}), React__default["default"].createElement(form.SegmentedControl, {
|
|
535
|
+
onChange: function onChange(language) {
|
|
536
|
+
util.assertIsDefined(language);
|
|
537
|
+
_onChange(language);
|
|
448
538
|
},
|
|
449
|
-
|
|
450
|
-
},
|
|
451
|
-
"
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
539
|
+
selectedValue: language
|
|
540
|
+
}, options.map(function (option) {
|
|
541
|
+
return React__default["default"].createElement(form.SegmentedChoice, {
|
|
542
|
+
key: option.value,
|
|
543
|
+
value: option.value
|
|
544
|
+
}, option.label, option.required && React__default["default"].createElement("span", {
|
|
545
|
+
className: "asterisk-margin"
|
|
546
|
+
}, "*"));
|
|
547
|
+
})));
|
|
457
548
|
};
|
|
458
549
|
|
|
459
|
-
var
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
return React__default["default"].createElement(reactRouterDom.Link, {
|
|
464
|
-
to: "/permission-admin/my-profile",
|
|
465
|
-
style: {
|
|
466
|
-
textDecoration: 'none'
|
|
467
|
-
}
|
|
468
|
-
}, React__default["default"].createElement(CustomOverflowMenuItem, {
|
|
469
|
-
onClick: function onClick() {
|
|
470
|
-
setOpen(false);
|
|
471
|
-
onNavigateToMyProfile();
|
|
472
|
-
},
|
|
473
|
-
className: "eps-overflow-menu__item"
|
|
474
|
-
}, React__default["default"].createElement("span", {
|
|
475
|
-
"aria-hidden": true
|
|
476
|
-
}, React__default["default"].createElement(icons.UserIcon, {
|
|
477
|
-
size: "1rem",
|
|
478
|
-
inline: true
|
|
479
|
-
})), name));
|
|
550
|
+
var Link = function Link(props) {
|
|
551
|
+
return React__default["default"].createElement(typography.Link, _extends({}, props, {
|
|
552
|
+
as: reactRouterDom.Link
|
|
553
|
+
}), props.children);
|
|
480
554
|
};
|
|
481
555
|
|
|
482
|
-
var
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
onLogout = _ref.onLogout;
|
|
486
|
-
return React__default["default"].createElement(CustomOverflowMenuItem, {
|
|
487
|
-
onClick: function onClick() {
|
|
488
|
-
onLogout();
|
|
489
|
-
setOpen(false);
|
|
490
|
-
},
|
|
491
|
-
"data-testid": "user-menu-logout",
|
|
492
|
-
className: "eps-overflow-menu__item"
|
|
493
|
-
}, React__default["default"].createElement("span", {
|
|
494
|
-
"aria-hidden": true
|
|
495
|
-
}, React__default["default"].createElement(icons.LogOutIcon, {
|
|
496
|
-
size: "1rem",
|
|
497
|
-
inline: true
|
|
498
|
-
})), name);
|
|
499
|
-
};
|
|
500
|
-
|
|
501
|
-
var CookieSettingsMenuItem = function CookieSettingsMenuItem(_ref) {
|
|
502
|
-
var name = _ref.name,
|
|
503
|
-
setOpen = _ref.setOpen,
|
|
504
|
-
onCookieSettingsOpen = _ref.onCookieSettingsOpen;
|
|
505
|
-
return React__default["default"].createElement(CustomOverflowMenuItem, {
|
|
506
|
-
onClick: function onClick() {
|
|
507
|
-
onCookieSettingsOpen();
|
|
508
|
-
setOpen(false);
|
|
509
|
-
},
|
|
510
|
-
className: "eps-overflow-menu__item"
|
|
511
|
-
}, React__default["default"].createElement("span", {
|
|
512
|
-
"aria-hidden": true
|
|
513
|
-
}, React__default["default"].createElement(icons.CookieIcon, {
|
|
514
|
-
size: "1rem",
|
|
515
|
-
inline: true
|
|
516
|
-
})), name);
|
|
517
|
-
};
|
|
518
|
-
|
|
519
|
-
var UserMenu = function UserMenu(_ref) {
|
|
520
|
-
var className = _ref.className,
|
|
521
|
-
messages = _ref.messages,
|
|
522
|
-
onLogout = _ref.onLogout,
|
|
523
|
-
onLanguageChange = _ref.onLanguageChange,
|
|
524
|
-
userName = _ref.userName,
|
|
525
|
-
language = _ref.language,
|
|
526
|
-
environment = _ref.environment,
|
|
527
|
-
showVersionItem = _ref.showVersionItem,
|
|
528
|
-
showMyProfileItem = _ref.showMyProfileItem,
|
|
529
|
-
showCookieSettingsItem = _ref.showCookieSettingsItem,
|
|
530
|
-
onNavigateToMyProfile = _ref.onNavigateToMyProfile,
|
|
531
|
-
_ref$onCookieSettings = _ref.onCookieSettingsOpen,
|
|
532
|
-
onCookieSettingsOpen = _ref$onCookieSettings === void 0 ? function () {} : _ref$onCookieSettings;
|
|
533
|
-
var triggerClassList = cx__default["default"](['eps-user-menu__trigger-button', className]);
|
|
534
|
-
var _useState = React.useState(false),
|
|
535
|
-
open = _useState[0],
|
|
536
|
-
setOpen = _useState[1];
|
|
537
|
-
return React__default["default"].createElement("div", {
|
|
538
|
-
id: "eps-user-menu"
|
|
539
|
-
}, React__default["default"].createElement(CustomOverflowMenu, {
|
|
540
|
-
open: open,
|
|
541
|
-
onOpenChange: setOpen,
|
|
542
|
-
className: triggerClassList,
|
|
543
|
-
userName: userName,
|
|
544
|
-
environment: environment
|
|
545
|
-
}, React__default["default"].createElement("div", {
|
|
546
|
-
id: "eps-overflow-menu"
|
|
547
|
-
}, React__default["default"].createElement(LanguageSwitchMenuItem, {
|
|
548
|
-
name: messages.switchLanguage,
|
|
549
|
-
language: language,
|
|
550
|
-
onLanguageChange: onLanguageChange,
|
|
551
|
-
setOpen: setOpen
|
|
552
|
-
}), showVersionItem && messages.appVersion && React__default["default"].createElement(VersionMenuItem, {
|
|
553
|
-
title: messages.appVersion,
|
|
554
|
-
setOpen: setOpen
|
|
555
|
-
}), showMyProfileItem && messages.myProfile && React__default["default"].createElement(UserMenuItem, {
|
|
556
|
-
name: messages.myProfile,
|
|
557
|
-
setOpen: setOpen,
|
|
558
|
-
onNavigateToMyProfile: onNavigateToMyProfile
|
|
559
|
-
}), showCookieSettingsItem && messages.cookieSettings && React__default["default"].createElement(CookieSettingsMenuItem, {
|
|
560
|
-
name: messages.cookieSettings,
|
|
561
|
-
setOpen: setOpen,
|
|
562
|
-
onCookieSettingsOpen: onCookieSettingsOpen
|
|
563
|
-
}), React__default["default"].createElement(LogOutMenuItem, {
|
|
564
|
-
name: messages.logout,
|
|
565
|
-
setOpen: setOpen,
|
|
566
|
-
onLogout: onLogout
|
|
567
|
-
}))));
|
|
568
|
-
};
|
|
569
|
-
|
|
570
|
-
var _excluded$a = ["label", "organisations", "onChange", "selectedOrganisationId"];
|
|
571
|
-
var OrganisationDropDown = function OrganisationDropDown(_ref) {
|
|
572
|
-
var label = _ref.label,
|
|
573
|
-
organisations = _ref.organisations,
|
|
574
|
-
handleChange = _ref.onChange,
|
|
575
|
-
selectedOrganisationId = _ref.selectedOrganisationId,
|
|
576
|
-
rest = _objectWithoutPropertiesLoose(_ref, _excluded$a);
|
|
577
|
-
var _useState = React.useState(),
|
|
578
|
-
selectedOrganisation = _useState[0],
|
|
579
|
-
setSelectedOrganisation = _useState[1];
|
|
580
|
-
React.useEffect(function () {
|
|
581
|
-
setSelectedOrganisation(organisations.find(function (org) {
|
|
582
|
-
return org.organisationId === selectedOrganisationId;
|
|
583
|
-
}));
|
|
584
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
585
|
-
}, [selectedOrganisationId]);
|
|
586
|
-
return React__default["default"].createElement(dropdown.SearchableDropdown, _extends({
|
|
587
|
-
label: label,
|
|
588
|
-
items: [].concat(organisations.sort(function (a, b) {
|
|
589
|
-
return a.tradingName.localeCompare(b.tradingName, 'nb');
|
|
590
|
-
}).map(function (organisation) {
|
|
591
|
-
return {
|
|
592
|
-
value: organisation.organisationId,
|
|
593
|
-
label: organisation.tradingName
|
|
594
|
-
};
|
|
595
|
-
})),
|
|
596
|
-
selectedItem: selectedOrganisation ? {
|
|
597
|
-
value: selectedOrganisation.organisationId,
|
|
598
|
-
label: selectedOrganisation.tradingName
|
|
599
|
-
} : null,
|
|
600
|
-
onChange: function onChange(selectedValue) {
|
|
601
|
-
if (selectedValue) {
|
|
602
|
-
handleChange(selectedValue.value);
|
|
603
|
-
}
|
|
604
|
-
},
|
|
605
|
-
clearable: false
|
|
606
|
-
}, rest));
|
|
607
|
-
};
|
|
608
|
-
|
|
609
|
-
/*global EventListener WindowEventHandlers*/
|
|
610
|
-
function useEventListener(eventName, handler, element) {
|
|
611
|
-
if (element === void 0) {
|
|
612
|
-
element = window;
|
|
613
|
-
}
|
|
614
|
-
var savedHandler = React.useRef();
|
|
615
|
-
React.useEffect(function () {
|
|
616
|
-
savedHandler.current = handler;
|
|
617
|
-
}, [handler]);
|
|
618
|
-
React.useEffect(function () {
|
|
619
|
-
var isSupported = element && element.addEventListener;
|
|
620
|
-
if (!isSupported) return;
|
|
621
|
-
var eventListener = function eventListener(event) {
|
|
622
|
-
return savedHandler.current == null ? void 0 : savedHandler.current(event);
|
|
623
|
-
};
|
|
624
|
-
element.addEventListener(eventName, eventListener);
|
|
625
|
-
return function () {
|
|
626
|
-
element.removeEventListener(eventName, eventListener);
|
|
627
|
-
};
|
|
628
|
-
}, [eventName, element]);
|
|
629
|
-
}
|
|
630
|
-
|
|
631
|
-
var _excluded$9 = ["language", "options", "className", "onChange"];
|
|
632
|
-
var LanguageSelect = function LanguageSelect(_ref) {
|
|
633
|
-
var language = _ref.language,
|
|
634
|
-
options = _ref.options,
|
|
556
|
+
var _excluded$6 = ["children", "className"];
|
|
557
|
+
var LinkButton = function LinkButton(_ref) {
|
|
558
|
+
var children = _ref.children,
|
|
635
559
|
className = _ref.className,
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
}), React__default["default"].createElement(form.SegmentedControl, {
|
|
642
|
-
onChange: function onChange(language) {
|
|
643
|
-
util.assertIsDefined(language);
|
|
644
|
-
_onChange(language);
|
|
645
|
-
},
|
|
646
|
-
selectedValue: language
|
|
647
|
-
}, options.map(function (option) {
|
|
648
|
-
return React__default["default"].createElement(form.SegmentedChoice, {
|
|
649
|
-
key: option.value,
|
|
650
|
-
value: option.value
|
|
651
|
-
}, option.label, option.required && React__default["default"].createElement("span", {
|
|
652
|
-
className: "asterisk-margin"
|
|
653
|
-
}, '*'));
|
|
654
|
-
})));
|
|
560
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$6);
|
|
561
|
+
return React__default["default"].createElement(typography.Link, _extends({}, rest, {
|
|
562
|
+
as: "button",
|
|
563
|
+
className: cx__default["default"]("eps-link-button", className)
|
|
564
|
+
}), children);
|
|
655
565
|
};
|
|
656
566
|
|
|
657
|
-
var
|
|
658
|
-
var
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
feedback = _ref.feedback,
|
|
667
|
-
rest = _objectWithoutPropertiesLoose(_ref, _excluded$8);
|
|
668
|
-
var handleOnChange = function handleOnChange(language, value) {
|
|
669
|
-
var changes = _extends({}, values);
|
|
670
|
-
if (value === '' || !value) {
|
|
671
|
-
delete changes[language];
|
|
672
|
-
} else {
|
|
673
|
-
changes[language] = value;
|
|
674
|
-
}
|
|
675
|
-
onChange(changes);
|
|
676
|
-
};
|
|
677
|
-
return React__default["default"].createElement(expand.ExpandablePanel, {
|
|
678
|
-
title: title,
|
|
679
|
-
defaultOpen: true,
|
|
680
|
-
contentStyle: {
|
|
681
|
-
padding: '4px 4px 4px 4px',
|
|
682
|
-
marginTop: '16px',
|
|
683
|
-
marginBottom: '16px'
|
|
684
|
-
}
|
|
685
|
-
}, React__default["default"].createElement(Stack, {
|
|
686
|
-
space: "medium"
|
|
687
|
-
}, languages.map(function (_ref2) {
|
|
688
|
-
var langKey = _ref2.value,
|
|
689
|
-
label = _ref2.label,
|
|
690
|
-
required = _ref2.required;
|
|
691
|
-
return React__default["default"].createElement(InputComponent, _extends({
|
|
692
|
-
"data-testid": "multi-lang-input-" + name + "-" + langKey,
|
|
693
|
-
key: title + langKey,
|
|
694
|
-
label: required ? label + '*' : label,
|
|
695
|
-
variant: variant && variant(langKey),
|
|
696
|
-
feedback: feedback && feedback(langKey),
|
|
697
|
-
name: name,
|
|
698
|
-
onChange: function onChange(e) {
|
|
699
|
-
handleOnChange(langKey, e.target.value);
|
|
700
|
-
},
|
|
701
|
-
value: values[langKey] || ''
|
|
702
|
-
}, rest));
|
|
703
|
-
})));
|
|
567
|
+
var Menu = function Menu(_ref) {
|
|
568
|
+
var _ref$as = _ref.as,
|
|
569
|
+
Component = _ref$as === void 0 ? "nav" : _ref$as,
|
|
570
|
+
className = _ref.className,
|
|
571
|
+
children = _ref.children;
|
|
572
|
+
var classList = cx__default["default"](["eds-contrast", "eps-menu", className]);
|
|
573
|
+
return React__default["default"].createElement(Component, {
|
|
574
|
+
className: classList
|
|
575
|
+
}, children);
|
|
704
576
|
};
|
|
705
577
|
|
|
706
|
-
var _excluded$
|
|
578
|
+
var _excluded$5 = ["className", "inputComponent", "alertLabel", "alertLevel", "name", "languages", "values", "onChange", "defaultLanguage", "label", "onBlur"];
|
|
707
579
|
/**
|
|
708
580
|
* @deprecated use ExpandableMultiLanguageInput
|
|
709
581
|
*/
|
|
@@ -717,16 +589,16 @@ var MultiLanguageInput = function MultiLanguageInput(_ref) {
|
|
|
717
589
|
values = _ref.values,
|
|
718
590
|
onChange = _ref.onChange,
|
|
719
591
|
_ref$defaultLanguage = _ref.defaultLanguage,
|
|
720
|
-
defaultLanguage = _ref$defaultLanguage === void 0 ?
|
|
592
|
+
defaultLanguage = _ref$defaultLanguage === void 0 ? "nob" : _ref$defaultLanguage,
|
|
721
593
|
_ref$label = _ref.label,
|
|
722
|
-
label = _ref$label === void 0 ?
|
|
594
|
+
label = _ref$label === void 0 ? "" : _ref$label,
|
|
723
595
|
_ref$onBlur = _ref.onBlur,
|
|
724
596
|
onBlur = _ref$onBlur === void 0 ? function () {} : _ref$onBlur,
|
|
725
|
-
rest = _objectWithoutPropertiesLoose(_ref, _excluded$
|
|
597
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$5);
|
|
726
598
|
var _useState = React.useState(defaultLanguage),
|
|
727
599
|
language = _useState[0],
|
|
728
600
|
setLanguage = _useState[1];
|
|
729
|
-
var classNames = cx__default["default"](
|
|
601
|
+
var classNames = cx__default["default"]("multi-language-input", className);
|
|
730
602
|
var currentValue = values[language];
|
|
731
603
|
var handleOnBlur = function handleOnBlur(e) {
|
|
732
604
|
e.persist();
|
|
@@ -742,208 +614,148 @@ var MultiLanguageInput = function MultiLanguageInput(_ref) {
|
|
|
742
614
|
};
|
|
743
615
|
var handleOnChange = function handleOnChange(value) {
|
|
744
616
|
var changes = Object.assign({}, values);
|
|
745
|
-
if (value ===
|
|
617
|
+
if (value === "" || !value) {
|
|
746
618
|
delete changes[language];
|
|
747
619
|
} else {
|
|
748
620
|
changes[language] = value;
|
|
749
621
|
}
|
|
750
622
|
onChange(changes);
|
|
751
623
|
};
|
|
752
|
-
return
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
624
|
+
return (
|
|
625
|
+
// biome-ignore lint/a11y/noStaticElementInteractions: Legacy component
|
|
626
|
+
React__default["default"].createElement("div", {
|
|
627
|
+
className: classNames,
|
|
628
|
+
// biome-ignore lint/a11y/noNoninteractiveTabindex: Legacy component
|
|
629
|
+
tabIndex: 0,
|
|
630
|
+
onBlur: handleOnBlur,
|
|
631
|
+
"data-testid": "multi-lang-input-" + name
|
|
632
|
+
}, React__default["default"].createElement(Stack, {
|
|
633
|
+
space: "extraSmall"
|
|
634
|
+
}, React__default["default"].createElement(LanguageSelect, {
|
|
635
|
+
language: language,
|
|
636
|
+
options: languages,
|
|
637
|
+
onChange: function onChange(lang) {
|
|
638
|
+
return handleLanguageChange(lang);
|
|
639
|
+
}
|
|
640
|
+
}), React__default["default"].createElement(InputComponent, _extends({
|
|
641
|
+
label: label,
|
|
642
|
+
variant: alertLevel,
|
|
643
|
+
feedback: alertLabel,
|
|
644
|
+
name: name,
|
|
645
|
+
className: "language-item",
|
|
646
|
+
onChange: function onChange(e) {
|
|
647
|
+
return handleOnChange(e.target.value);
|
|
648
|
+
},
|
|
649
|
+
value: currentValue || ""
|
|
650
|
+
}, rest))))
|
|
651
|
+
);
|
|
652
|
+
};
|
|
653
|
+
|
|
654
|
+
var _excluded$4 = ["label", "organisations", "onChange", "selectedOrganisationId"];
|
|
655
|
+
var OrganisationDropDown = function OrganisationDropDown(_ref) {
|
|
656
|
+
var label = _ref.label,
|
|
657
|
+
organisations = _ref.organisations,
|
|
658
|
+
handleChange = _ref.onChange,
|
|
659
|
+
selectedOrganisationId = _ref.selectedOrganisationId,
|
|
660
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$4);
|
|
661
|
+
var _useState = React.useState(),
|
|
662
|
+
selectedOrganisation = _useState[0],
|
|
663
|
+
setSelectedOrganisation = _useState[1];
|
|
664
|
+
React.useEffect(function () {
|
|
665
|
+
setSelectedOrganisation(organisations.find(function (org) {
|
|
666
|
+
return org.organisationId === selectedOrganisationId;
|
|
667
|
+
}));
|
|
668
|
+
}, [selectedOrganisationId, organisations]);
|
|
669
|
+
return React__default["default"].createElement(dropdown.SearchableDropdown, _extends({
|
|
766
670
|
label: label,
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
671
|
+
items: [].concat(organisations.sort(function (a, b) {
|
|
672
|
+
return a.tradingName.localeCompare(b.tradingName, "nb");
|
|
673
|
+
}).map(function (organisation) {
|
|
674
|
+
return {
|
|
675
|
+
value: organisation.organisationId,
|
|
676
|
+
label: organisation.tradingName
|
|
677
|
+
};
|
|
678
|
+
})),
|
|
679
|
+
selectedItem: selectedOrganisation ? {
|
|
680
|
+
value: selectedOrganisation.organisationId,
|
|
681
|
+
label: selectedOrganisation.tradingName
|
|
682
|
+
} : null,
|
|
683
|
+
onChange: function onChange(selectedValue) {
|
|
684
|
+
if (selectedValue) {
|
|
685
|
+
handleChange(selectedValue.value);
|
|
686
|
+
}
|
|
773
687
|
},
|
|
774
|
-
|
|
775
|
-
}, rest))
|
|
688
|
+
clearable: false
|
|
689
|
+
}, rest));
|
|
776
690
|
};
|
|
777
691
|
|
|
778
|
-
var
|
|
779
|
-
var
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
692
|
+
var Pager = function Pager(_ref) {
|
|
693
|
+
var collectionSize = _ref.collectionSize,
|
|
694
|
+
pageSize = _ref.pageSize,
|
|
695
|
+
_onPageChange = _ref.onPageChange,
|
|
696
|
+
currentPage = _ref.currentPage;
|
|
697
|
+
var pageCount = Math.ceil(collectionSize / pageSize);
|
|
698
|
+
return React__default["default"].createElement(menu.Pagination, {
|
|
699
|
+
pageCount: pageCount,
|
|
700
|
+
currentPage: currentPage,
|
|
701
|
+
onPageChange: function onPageChange(page) {
|
|
702
|
+
_onPageChange(page);
|
|
703
|
+
}
|
|
704
|
+
});
|
|
788
705
|
};
|
|
789
706
|
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
}
|
|
804
|
-
_inheritsLoose(ErrorBoundary, _Component);
|
|
805
|
-
ErrorBoundary.getDerivedStateFromError = function getDerivedStateFromError(error) {
|
|
707
|
+
/**
|
|
708
|
+
* This component changes page title by using helmet and current path. It will translate subpaths, join them with a dash
|
|
709
|
+
* and display it on browser tab.
|
|
710
|
+
*
|
|
711
|
+
* @param Props.pathname - The current path from react-router-dom.useLocation()
|
|
712
|
+
* @param Props.onBreadcrumbLookup - A function that takes a path and returns a i18n translated string or undefined
|
|
713
|
+
* @returns A Helmet component with updated title
|
|
714
|
+
*/
|
|
715
|
+
function PageTitle(_ref) {
|
|
716
|
+
var pathname = _ref.pathname,
|
|
717
|
+
onBreadcrumbLookup = _ref.onBreadcrumbLookup;
|
|
718
|
+
var paths = util.splitUrlPath(pathname);
|
|
719
|
+
var pageTitles = paths.map(function (path) {
|
|
806
720
|
return {
|
|
807
|
-
|
|
721
|
+
title: onBreadcrumbLookup(path),
|
|
722
|
+
path: path
|
|
808
723
|
};
|
|
809
|
-
}
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
};
|
|
816
|
-
|
|
817
|
-
var _this2 = this;
|
|
818
|
-
var error = this.state.error;
|
|
819
|
-
var _this$props2 = this.props,
|
|
820
|
-
fallback = _this$props2.fallback,
|
|
821
|
-
children = _this$props2.children;
|
|
822
|
-
if (error) {
|
|
823
|
-
if (isFunction(fallback)) {
|
|
824
|
-
return fallback({
|
|
825
|
-
retry: function retry() {
|
|
826
|
-
return _this2.setState({
|
|
827
|
-
error: null
|
|
828
|
-
});
|
|
829
|
-
},
|
|
830
|
-
error: error
|
|
831
|
-
});
|
|
832
|
-
} else if (error.name === 'NotFoundError' && error.message === newAppVersionErrorMessage) {
|
|
833
|
-
return React__default["default"].createElement(RefreshBannerInfo, null);
|
|
834
|
-
}
|
|
835
|
-
return fallback;
|
|
836
|
-
}
|
|
837
|
-
return children;
|
|
838
|
-
};
|
|
839
|
-
return ErrorBoundary;
|
|
840
|
-
}(React.Component);
|
|
841
|
-
var LANGUAGE_STORAGE_KEY = 'EP::locale';
|
|
842
|
-
function RefreshBannerInfo() {
|
|
843
|
-
// Taken from ./app-shell/src/storage.ts
|
|
844
|
-
var language = localStorage.getItem(LANGUAGE_STORAGE_KEY);
|
|
845
|
-
var isNorwegian = language === 'nb' || language === 'nb-NO';
|
|
846
|
-
return React__default["default"].createElement(Box, {
|
|
847
|
-
maxWidth: "large"
|
|
848
|
-
}, React__default["default"].createElement(alert.BannerAlertBox, {
|
|
849
|
-
variant: "info",
|
|
850
|
-
title: isNorwegian ? 'En ny versjon av nettsiden er tilgjengelig.' : 'A new version of the website is available.'
|
|
851
|
-
}, React__default["default"].createElement(Box, {
|
|
852
|
-
paddingBottom: "medium"
|
|
853
|
-
}, React__default["default"].createElement(typography.Paragraph, {
|
|
854
|
-
margin: "none"
|
|
855
|
-
}, isNorwegian ? 'Vennligst oppdater.' : 'Please refresh.')), React__default["default"].createElement(button.PrimaryButton, {
|
|
856
|
-
onClick: function onClick() {
|
|
857
|
-
return window.location.reload();
|
|
858
|
-
}
|
|
859
|
-
}, isNorwegian ? 'Oppdater' : 'Refresh')));
|
|
724
|
+
}).filter(function (_ref2) {
|
|
725
|
+
var title = _ref2.title;
|
|
726
|
+
return title !== undefined;
|
|
727
|
+
}).map(function (_ref3) {
|
|
728
|
+
var title = _ref3.title;
|
|
729
|
+
return title;
|
|
730
|
+
}).reverse().join(" | ");
|
|
731
|
+
return React__default["default"].createElement(reactHelmetAsync.Helmet, null, React__default["default"].createElement("title", null, pageTitles, " | Entur Partner"));
|
|
860
732
|
}
|
|
861
733
|
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
var formattedAmount = new Intl.NumberFormat('nb-NO', {
|
|
881
|
-
maximumFractionDigits: 2,
|
|
882
|
-
minimumFractionDigits: 2
|
|
883
|
-
}).format(parsedAmount);
|
|
884
|
-
return React__default["default"].createElement(Component, _extends({}, rest), formattedAmount);
|
|
885
|
-
};
|
|
886
|
-
|
|
887
|
-
var _excluded$3 = ["items", "locale", "className"];
|
|
888
|
-
var AuditInfo = function AuditInfo(_ref) {
|
|
889
|
-
var items = _ref.items,
|
|
890
|
-
locale = _ref.locale,
|
|
891
|
-
className = _ref.className,
|
|
892
|
-
rest = _objectWithoutPropertiesLoose(_ref, _excluded$3);
|
|
893
|
-
var classNames = cx__default["default"]('ep-audit-info', className);
|
|
894
|
-
return React__default["default"].createElement("div", _extends({
|
|
895
|
-
className: classNames
|
|
896
|
-
}, rest), items.map(function (_ref2, i) {
|
|
897
|
-
var label = _ref2.label,
|
|
898
|
-
value = _ref2.value;
|
|
899
|
-
return React__default["default"].createElement(Stack, {
|
|
900
|
-
space: "small",
|
|
901
|
-
key: i
|
|
902
|
-
}, React__default["default"].createElement("div", {
|
|
903
|
-
className: "ep-audit-info-label"
|
|
904
|
-
}, label), React__default["default"].createElement("div", null, util.isDate(value) || util.isDateString(value) ? React__default["default"].createElement(FormatDateTime, {
|
|
905
|
-
date: value,
|
|
906
|
-
locale: locale
|
|
907
|
-
}) : React__default["default"].createElement("span", null, value)));
|
|
908
|
-
}));
|
|
909
|
-
};
|
|
910
|
-
|
|
911
|
-
var _excluded$2 = ["isOpen", "children", "message", "size", "buttons", "onConfirm", "messages", "onClose", "onDismiss"];
|
|
912
|
-
var ConfirmModal = function ConfirmModal(_ref) {
|
|
913
|
-
var _ref$isOpen = _ref.isOpen,
|
|
914
|
-
isOpen = _ref$isOpen === void 0 ? false : _ref$isOpen,
|
|
915
|
-
children = _ref.children,
|
|
916
|
-
message = _ref.message,
|
|
917
|
-
_ref$size = _ref.size,
|
|
918
|
-
size = _ref$size === void 0 ? 'medium' : _ref$size,
|
|
919
|
-
buttons = _ref.buttons,
|
|
920
|
-
onConfirm = _ref.onConfirm,
|
|
921
|
-
messages = _ref.messages,
|
|
922
|
-
onClose = _ref.onClose,
|
|
923
|
-
onDismiss = _ref.onDismiss,
|
|
924
|
-
rest = _objectWithoutPropertiesLoose(_ref, _excluded$2);
|
|
925
|
-
var childrenToRender = children ? children : message;
|
|
926
|
-
var handleDismiss = onClose ? onClose : onDismiss;
|
|
927
|
-
return React__default["default"].createElement(modal.Modal, _extends({
|
|
928
|
-
size: size,
|
|
929
|
-
open: isOpen,
|
|
930
|
-
onDismiss: handleDismiss
|
|
931
|
-
}, rest), util.isString(childrenToRender) ? React__default["default"].createElement(typography.Paragraph, null, childrenToRender) : React__default["default"].createElement(Box, {
|
|
932
|
-
paddingBottom: "medium"
|
|
933
|
-
}, childrenToRender), React__default["default"].createElement(button.ButtonGroup, null, onConfirm ? React__default["default"].createElement(React__default["default"].Fragment, null, React__default["default"].createElement(button.SecondaryButton, {
|
|
934
|
-
onClick: handleDismiss,
|
|
935
|
-
"data-testid": "cancel-modal-button"
|
|
936
|
-
}, messages.cancel), React__default["default"].createElement(button.PrimaryButton, {
|
|
937
|
-
onClick: onConfirm,
|
|
938
|
-
"data-testid": "confirm-modal-button"
|
|
939
|
-
}, messages.confirm)) : buttons));
|
|
734
|
+
/**
|
|
735
|
+
* Note: This component uses BusinessCapability, not because we only want to
|
|
736
|
+
* check BusinessCapabilities but because it represents a minimal subset of
|
|
737
|
+
* what we need to check.
|
|
738
|
+
*/
|
|
739
|
+
var PermissionCheck = function PermissionCheck(_ref) {
|
|
740
|
+
var children = _ref.children,
|
|
741
|
+
_ref$fallback = _ref.fallback,
|
|
742
|
+
fallback = _ref$fallback === void 0 ? null : _ref$fallback,
|
|
743
|
+
permissions = _ref.permissions,
|
|
744
|
+
_ref$oneOf = _ref.oneOf,
|
|
745
|
+
oneOf = _ref$oneOf === void 0 ? [] : _ref$oneOf,
|
|
746
|
+
_ref$all = _ref.all,
|
|
747
|
+
all = _ref$all === void 0 ? [] : _ref$all;
|
|
748
|
+
var allIsAllowed = util.hasAllPermissions(all, permissions);
|
|
749
|
+
var oneOfIsAllowed = util.hasOneOfPermissions(oneOf, permissions);
|
|
750
|
+
var allowed = allIsAllowed && oneOfIsAllowed;
|
|
751
|
+
return React__default["default"].createElement(React__default["default"].Fragment, null, allowed ? children : fallback);
|
|
940
752
|
};
|
|
941
753
|
|
|
942
|
-
var _excluded$
|
|
754
|
+
var _excluded$3 = ["children", "shouldBlockNavigation"];
|
|
943
755
|
var RouteLeavingGuard = function RouteLeavingGuard(_ref) {
|
|
944
756
|
var children = _ref.children,
|
|
945
757
|
shouldBlockNavigation = _ref.shouldBlockNavigation,
|
|
946
|
-
rest = _objectWithoutPropertiesLoose(_ref, _excluded$
|
|
758
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$3);
|
|
947
759
|
util.assertIsDefined(reactRouterDom.useInRouterContext() ? true : undefined, "RouteLeavingGuard must be used within a data router.");
|
|
948
760
|
var blocker = reactRouterDom.useBlocker(function (_ref2) {
|
|
949
761
|
var currentLocation = _ref2.currentLocation,
|
|
@@ -952,47 +764,32 @@ var RouteLeavingGuard = function RouteLeavingGuard(_ref) {
|
|
|
952
764
|
});
|
|
953
765
|
return React__default["default"].createElement(ConfirmModal, _extends({
|
|
954
766
|
onDismiss: function onDismiss() {
|
|
955
|
-
if (blocker.state ===
|
|
767
|
+
if (blocker.state === "blocked") {
|
|
956
768
|
blocker.reset();
|
|
957
769
|
}
|
|
958
770
|
},
|
|
959
|
-
open: blocker.state ===
|
|
771
|
+
open: blocker.state === "blocked",
|
|
960
772
|
onConfirm: function onConfirm() {
|
|
961
|
-
if (blocker.state ===
|
|
773
|
+
if (blocker.state === "blocked") {
|
|
962
774
|
blocker.proceed();
|
|
963
775
|
}
|
|
964
776
|
}
|
|
965
777
|
}, rest), children);
|
|
966
778
|
};
|
|
967
779
|
|
|
968
|
-
var Pager = function Pager(_ref) {
|
|
969
|
-
var collectionSize = _ref.collectionSize,
|
|
970
|
-
pageSize = _ref.pageSize,
|
|
971
|
-
_onPageChange = _ref.onPageChange,
|
|
972
|
-
currentPage = _ref.currentPage;
|
|
973
|
-
var pageCount = Math.ceil(collectionSize / pageSize);
|
|
974
|
-
return React__default["default"].createElement(menu.Pagination, {
|
|
975
|
-
pageCount: pageCount,
|
|
976
|
-
currentPage: currentPage,
|
|
977
|
-
onPageChange: function onPageChange(page) {
|
|
978
|
-
_onPageChange(page);
|
|
979
|
-
}
|
|
980
|
-
});
|
|
981
|
-
};
|
|
982
|
-
|
|
983
780
|
var StatusLabel = function StatusLabel(_ref) {
|
|
984
781
|
var _ref$active = _ref.active,
|
|
985
782
|
active = _ref$active === void 0 ? false : _ref$active,
|
|
986
783
|
_ref$label = _ref.label,
|
|
987
|
-
label = _ref$label === void 0 ?
|
|
784
|
+
label = _ref$label === void 0 ? "" : _ref$label,
|
|
988
785
|
aggressiveInactive = _ref.aggressiveInactive,
|
|
989
786
|
showBullet = _ref.showBullet,
|
|
990
787
|
center = _ref.center;
|
|
991
|
-
var bulletClassNames = cx__default["default"](
|
|
788
|
+
var bulletClassNames = cx__default["default"]("eps-status-label__bullet", {
|
|
992
789
|
active: active,
|
|
993
790
|
aggressive: aggressiveInactive
|
|
994
791
|
});
|
|
995
|
-
var statusLabelClassNames = cx__default["default"](
|
|
792
|
+
var statusLabelClassNames = cx__default["default"]("eps-status-label", {
|
|
996
793
|
center: center
|
|
997
794
|
});
|
|
998
795
|
return React__default["default"].createElement("div", {
|
|
@@ -1002,116 +799,319 @@ var StatusLabel = function StatusLabel(_ref) {
|
|
|
1002
799
|
}), React__default["default"].createElement("div", null, label));
|
|
1003
800
|
};
|
|
1004
801
|
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
802
|
+
var _excluded$2 = ["as", "children", "fontSize", "color", "lineHeight", "fontWeight", "className"];
|
|
803
|
+
var Text = function Text(_ref) {
|
|
804
|
+
var _ref$as = _ref.as,
|
|
805
|
+
component = _ref$as === void 0 ? "span" : _ref$as,
|
|
806
|
+
children = _ref.children,
|
|
807
|
+
fontSize = _ref.fontSize,
|
|
808
|
+
color = _ref.color,
|
|
809
|
+
lineHeight = _ref.lineHeight,
|
|
810
|
+
fontWeight = _ref.fontWeight,
|
|
811
|
+
className = _ref.className,
|
|
812
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$2);
|
|
813
|
+
var classes = [];
|
|
814
|
+
fontSize && classes.push.apply(classes, responsiveProp("eps-font-size-", fontSize));
|
|
815
|
+
lineHeight && classes.push.apply(classes, responsiveProp("eps-line-height-", lineHeight));
|
|
816
|
+
fontWeight && classes.push("eps-font-weight-" + fontWeight);
|
|
817
|
+
var classList = cx__default["default"](classes, className);
|
|
818
|
+
return React__default["default"].createElement(Box, _extends({
|
|
819
|
+
as: component,
|
|
820
|
+
color: color,
|
|
821
|
+
className: classList
|
|
822
|
+
}, rest), children);
|
|
823
|
+
};
|
|
824
|
+
|
|
825
|
+
var _excluded$1 = ["children", "className"];
|
|
826
|
+
var Unbutton = function Unbutton(_ref) {
|
|
1011
827
|
var children = _ref.children,
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
var allIsAllowed = util.hasAllPermissions(all, permissions);
|
|
1020
|
-
var oneOfIsAllowed = util.hasOneOfPermissions(oneOf, permissions);
|
|
1021
|
-
var allowed = allIsAllowed && oneOfIsAllowed;
|
|
1022
|
-
return React__default["default"].createElement(React__default["default"].Fragment, null, allowed ? children : fallback);
|
|
828
|
+
className = _ref.className,
|
|
829
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$1);
|
|
830
|
+
return React__default["default"].createElement(button.Button, _extends({
|
|
831
|
+
variant: "primary"
|
|
832
|
+
}, rest, {
|
|
833
|
+
className: cx__default["default"]("eps-unbutton", className)
|
|
834
|
+
}), children);
|
|
1023
835
|
};
|
|
1024
836
|
|
|
1025
|
-
var
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
var breadcrumbs = paths.map(function (path) {
|
|
1031
|
-
return {
|
|
1032
|
-
title: onBreadcrumbLookup(path),
|
|
1033
|
-
path: path
|
|
1034
|
-
};
|
|
1035
|
-
}).filter(function (_ref2) {
|
|
1036
|
-
var title = _ref2.title;
|
|
1037
|
-
return title !== undefined;
|
|
1038
|
-
});
|
|
1039
|
-
var breadcrumbElements = breadcrumbs.map(function (_ref3, i) {
|
|
1040
|
-
var title = _ref3.title,
|
|
1041
|
-
path = _ref3.path;
|
|
1042
|
-
var isLast = i === breadcrumbs.length - 1;
|
|
1043
|
-
if (isLast) {
|
|
1044
|
-
return React__default["default"].createElement(menu.BreadcrumbItem, {
|
|
1045
|
-
key: path,
|
|
1046
|
-
as: 'span'
|
|
1047
|
-
}, title);
|
|
1048
|
-
}
|
|
1049
|
-
return React__default["default"].createElement(menu.BreadcrumbItem, {
|
|
1050
|
-
key: path,
|
|
1051
|
-
as: reactRouterDom.Link,
|
|
1052
|
-
to: path
|
|
1053
|
-
}, title);
|
|
1054
|
-
});
|
|
1055
|
-
if (prependBreadcrumbItem) {
|
|
1056
|
-
return React__default["default"].createElement(menu.BreadcrumbNavigation, null, [prependBreadcrumbItem].concat(breadcrumbElements));
|
|
1057
|
-
}
|
|
1058
|
-
return React__default["default"].createElement(menu.BreadcrumbNavigation, null, breadcrumbElements);
|
|
837
|
+
var CustomOverflowMenuItem = function CustomOverflowMenuItem(props) {
|
|
838
|
+
return React__default["default"].createElement("button", _extends({
|
|
839
|
+
className: cx__default["default"](props.className, "eps-overflow-menu__item"),
|
|
840
|
+
role: "menuitem"
|
|
841
|
+
}, props));
|
|
1059
842
|
};
|
|
1060
843
|
|
|
1061
|
-
var
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
|
|
844
|
+
var CookieSettingsMenuItem = function CookieSettingsMenuItem(_ref) {
|
|
845
|
+
var name = _ref.name,
|
|
846
|
+
setOpen = _ref.setOpen,
|
|
847
|
+
onCookieSettingsOpen = _ref.onCookieSettingsOpen;
|
|
848
|
+
return React__default["default"].createElement(CustomOverflowMenuItem, {
|
|
849
|
+
onClick: function onClick() {
|
|
850
|
+
onCookieSettingsOpen();
|
|
851
|
+
setOpen(false);
|
|
852
|
+
},
|
|
853
|
+
className: "eps-overflow-menu__item"
|
|
854
|
+
}, React__default["default"].createElement("span", {
|
|
855
|
+
"aria-hidden": true
|
|
856
|
+
}, React__default["default"].createElement(icons.CookieIcon, {
|
|
857
|
+
size: "1rem",
|
|
858
|
+
inline: true
|
|
859
|
+
})), name);
|
|
1065
860
|
};
|
|
1066
861
|
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
862
|
+
function useOutsideClick(ref, buttonRef, handler) {
|
|
863
|
+
React__default["default"].useEffect(function () {
|
|
864
|
+
var listener = function listener(event) {
|
|
865
|
+
if (elementContainsEventTarget(ref.current, event) || elementContainsEventTarget(buttonRef.current, event)) {
|
|
866
|
+
return;
|
|
867
|
+
}
|
|
868
|
+
handler();
|
|
869
|
+
};
|
|
870
|
+
document.addEventListener("mousedown", listener);
|
|
871
|
+
document.addEventListener("touchstart", listener);
|
|
872
|
+
return function () {
|
|
873
|
+
document.removeEventListener("mousedown", listener);
|
|
874
|
+
document.removeEventListener("touchstart", listener);
|
|
875
|
+
};
|
|
876
|
+
}, [ref, buttonRef, handler]);
|
|
877
|
+
}
|
|
878
|
+
function elementContainsEventTarget(element, event) {
|
|
879
|
+
if (!element) {
|
|
880
|
+
return false;
|
|
881
|
+
}
|
|
882
|
+
if (element.contains(event.target)) {
|
|
883
|
+
return true;
|
|
884
|
+
}
|
|
885
|
+
// For elements inside a Shadow DOM we need to check the composedPath
|
|
886
|
+
if (event.composed && event.composedPath) {
|
|
887
|
+
var contains = event.composedPath().find(function (target) {
|
|
888
|
+
if (target === window) {
|
|
889
|
+
return false;
|
|
890
|
+
}
|
|
891
|
+
return element.contains(target);
|
|
892
|
+
});
|
|
893
|
+
return !!contains;
|
|
894
|
+
}
|
|
895
|
+
return false;
|
|
896
|
+
}
|
|
897
|
+
|
|
898
|
+
var _excluded = ["className", "children", "userName", "open", "onOpenChange", "environment"];
|
|
899
|
+
var CustomOverflowMenu = function CustomOverflowMenu(_ref) {
|
|
900
|
+
var className = _ref.className,
|
|
1071
901
|
children = _ref.children,
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
className = _ref.className,
|
|
902
|
+
userName = _ref.userName,
|
|
903
|
+
open = _ref.open,
|
|
904
|
+
onOpenChange = _ref.onOpenChange,
|
|
905
|
+
environment = _ref.environment,
|
|
1077
906
|
rest = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
1078
|
-
var
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
var
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
907
|
+
var overflowItemsClasses = cx__default["default"]("eps-overflow-menu__group", {
|
|
908
|
+
"eps-overflow-menu__group--open": open
|
|
909
|
+
});
|
|
910
|
+
var overflowContentRef = React__default["default"].useRef(null);
|
|
911
|
+
var overflowMenuTriggerRef = React__default["default"].useRef(null);
|
|
912
|
+
useOutsideClick(overflowContentRef, overflowMenuTriggerRef, function () {
|
|
913
|
+
return onOpenChange(false);
|
|
914
|
+
});
|
|
915
|
+
return React__default["default"].createElement("div", null, React__default["default"].createElement(button.SecondaryButton, _extends({
|
|
916
|
+
className: cx__default["default"]("eps-overflow-menu__button", className),
|
|
917
|
+
onClick: function onClick() {
|
|
918
|
+
return onOpenChange(!open);
|
|
919
|
+
},
|
|
920
|
+
"aria-haspopup": true,
|
|
921
|
+
"aria-expanded": open,
|
|
922
|
+
ref: overflowMenuTriggerRef
|
|
923
|
+
}, rest), React__default["default"].createElement("div", {
|
|
924
|
+
className: "eps-overflow-menu__button-contents"
|
|
925
|
+
}, React__default["default"].createElement("span", {
|
|
926
|
+
className: "eds-overflow-menu__user-icon"
|
|
927
|
+
}, React__default["default"].createElement(icons.UserIcon, {
|
|
928
|
+
inline: true
|
|
929
|
+
})), React__default["default"].createElement(typography.Heading6, {
|
|
930
|
+
margin: "none",
|
|
931
|
+
as: "span"
|
|
932
|
+
}, userName, environment !== undefined && environment !== exports.Environment.Production && React__default["default"].createElement("span", {
|
|
933
|
+
style: {
|
|
934
|
+
color: getColorForEnvironment(environment)
|
|
935
|
+
}
|
|
936
|
+
}, " ", "(", getHumanReadableEnvironment(environment), ")")), React__default["default"].createElement("span", {
|
|
937
|
+
className: "eps-arrow-icon"
|
|
938
|
+
}, React__default["default"].createElement(icons.DownArrowIcon, {
|
|
939
|
+
inline: true
|
|
940
|
+
})))), open && React__default["default"].createElement("div", {
|
|
941
|
+
className: overflowItemsClasses,
|
|
942
|
+
role: "menu",
|
|
943
|
+
ref: overflowContentRef
|
|
944
|
+
}, children));
|
|
1088
945
|
};
|
|
1089
946
|
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
947
|
+
var LanguageSwitchMenuItem = function LanguageSwitchMenuItem(_ref) {
|
|
948
|
+
var language = _ref.language,
|
|
949
|
+
onLanguageChange = _ref.onLanguageChange,
|
|
950
|
+
setOpen = _ref.setOpen,
|
|
951
|
+
name = _ref.name;
|
|
952
|
+
var useB47LanguageKey = useFeatureToggle("USE_BCP-47_LANGUAGE_KEY");
|
|
953
|
+
var norwegianLanguageKey = useB47LanguageKey ? "nb-NO" : "nb";
|
|
954
|
+
var englishLanguageKey = useB47LanguageKey ? "en-GB" : "en";
|
|
955
|
+
return React__default["default"].createElement(React__default["default"].Fragment, null, language === englishLanguageKey ? React__default["default"].createElement(CustomOverflowMenuItem, {
|
|
956
|
+
onClick: function onClick() {
|
|
957
|
+
onLanguageChange(norwegianLanguageKey);
|
|
958
|
+
setOpen(false);
|
|
959
|
+
},
|
|
960
|
+
className: "eps-overflow-menu__item"
|
|
961
|
+
}, React__default["default"].createElement("span", {
|
|
962
|
+
"aria-hidden": true,
|
|
963
|
+
className: "eps-overflow-menu__icon-margin"
|
|
964
|
+
}, React__default["default"].createElement(icons.NorwayIcon, {
|
|
965
|
+
size: "1rem",
|
|
966
|
+
inline: true
|
|
967
|
+
})), name) : React__default["default"].createElement(CustomOverflowMenuItem, {
|
|
968
|
+
onClick: function onClick() {
|
|
969
|
+
onLanguageChange(englishLanguageKey);
|
|
970
|
+
setOpen(false);
|
|
971
|
+
},
|
|
972
|
+
className: "eps-overflow-menu__item"
|
|
973
|
+
}, React__default["default"].createElement("span", {
|
|
974
|
+
"aria-hidden": true,
|
|
975
|
+
className: "eps-overflow-menu__icon-margin"
|
|
976
|
+
}, React__default["default"].createElement(icons.UKIcon, {
|
|
977
|
+
size: "1rem",
|
|
978
|
+
inline: true
|
|
979
|
+
})), name));
|
|
980
|
+
};
|
|
981
|
+
|
|
982
|
+
var LogOutMenuItem = function LogOutMenuItem(_ref) {
|
|
983
|
+
var name = _ref.name,
|
|
984
|
+
setOpen = _ref.setOpen,
|
|
985
|
+
onLogout = _ref.onLogout;
|
|
986
|
+
return React__default["default"].createElement(CustomOverflowMenuItem, {
|
|
987
|
+
onClick: function onClick() {
|
|
988
|
+
onLogout();
|
|
989
|
+
setOpen(false);
|
|
990
|
+
},
|
|
991
|
+
"data-testid": "user-menu-logout",
|
|
992
|
+
className: "eps-overflow-menu__item"
|
|
993
|
+
}, React__default["default"].createElement("span", {
|
|
994
|
+
"aria-hidden": true
|
|
995
|
+
}, React__default["default"].createElement(icons.LogOutIcon, {
|
|
996
|
+
size: "1rem",
|
|
997
|
+
inline: true
|
|
998
|
+
})), name);
|
|
999
|
+
};
|
|
1000
|
+
|
|
1001
|
+
var UserMenuItem = function UserMenuItem(_ref) {
|
|
1002
|
+
var name = _ref.name,
|
|
1003
|
+
setOpen = _ref.setOpen,
|
|
1004
|
+
onNavigateToMyProfile = _ref.onNavigateToMyProfile;
|
|
1005
|
+
return React__default["default"].createElement(reactRouterDom.Link, {
|
|
1006
|
+
to: "/permission-admin/my-profile",
|
|
1007
|
+
style: {
|
|
1008
|
+
textDecoration: "none"
|
|
1009
|
+
}
|
|
1010
|
+
}, React__default["default"].createElement(CustomOverflowMenuItem, {
|
|
1011
|
+
onClick: function onClick() {
|
|
1012
|
+
setOpen(false);
|
|
1013
|
+
onNavigateToMyProfile();
|
|
1014
|
+
},
|
|
1015
|
+
className: "eps-overflow-menu__item"
|
|
1016
|
+
}, React__default["default"].createElement("span", {
|
|
1017
|
+
"aria-hidden": true
|
|
1018
|
+
}, React__default["default"].createElement(icons.UserIcon, {
|
|
1019
|
+
size: "1rem",
|
|
1020
|
+
inline: true
|
|
1021
|
+
})), name));
|
|
1022
|
+
};
|
|
1023
|
+
|
|
1024
|
+
var VersionMenuItem = function VersionMenuItem(_ref) {
|
|
1025
|
+
var title = _ref.title,
|
|
1026
|
+
setOpen = _ref.setOpen;
|
|
1027
|
+
var navigate = reactRouterDom.useNavigate(); // Hide useNavigate from standalone micro-frontends because it is not under RouterProvider
|
|
1028
|
+
return React__default["default"].createElement(CustomOverflowMenuItem, {
|
|
1029
|
+
onClick: function onClick() {
|
|
1030
|
+
navigate("/app-version");
|
|
1031
|
+
setOpen(false);
|
|
1032
|
+
},
|
|
1033
|
+
className: "eps-overflow-menu__item"
|
|
1034
|
+
}, React__default["default"].createElement("span", {
|
|
1035
|
+
"aria-hidden": true
|
|
1036
|
+
}, React__default["default"].createElement(icons.ChannelsIcon, {
|
|
1037
|
+
className: "eps-version-icon",
|
|
1038
|
+
size: "1rem",
|
|
1039
|
+
inline: true
|
|
1040
|
+
})), title);
|
|
1041
|
+
};
|
|
1042
|
+
|
|
1043
|
+
var UserMenu = function UserMenu(_ref) {
|
|
1044
|
+
var className = _ref.className,
|
|
1045
|
+
messages = _ref.messages,
|
|
1046
|
+
onLogout = _ref.onLogout,
|
|
1047
|
+
onLanguageChange = _ref.onLanguageChange,
|
|
1048
|
+
userName = _ref.userName,
|
|
1049
|
+
language = _ref.language,
|
|
1050
|
+
environment = _ref.environment,
|
|
1051
|
+
showVersionItem = _ref.showVersionItem,
|
|
1052
|
+
showMyProfileItem = _ref.showMyProfileItem,
|
|
1053
|
+
showCookieSettingsItem = _ref.showCookieSettingsItem,
|
|
1054
|
+
onNavigateToMyProfile = _ref.onNavigateToMyProfile,
|
|
1055
|
+
_ref$onCookieSettings = _ref.onCookieSettingsOpen,
|
|
1056
|
+
onCookieSettingsOpen = _ref$onCookieSettings === void 0 ? function () {} : _ref$onCookieSettings;
|
|
1057
|
+
var triggerClassList = cx__default["default"](["eps-user-menu__trigger-button", className]);
|
|
1058
|
+
var _useState = React.useState(false),
|
|
1059
|
+
open = _useState[0],
|
|
1060
|
+
setOpen = _useState[1];
|
|
1061
|
+
return React__default["default"].createElement("div", {
|
|
1062
|
+
id: "eps-user-menu"
|
|
1063
|
+
}, React__default["default"].createElement(CustomOverflowMenu, {
|
|
1064
|
+
open: open,
|
|
1065
|
+
onOpenChange: setOpen,
|
|
1066
|
+
className: triggerClassList,
|
|
1067
|
+
userName: userName,
|
|
1068
|
+
environment: environment
|
|
1069
|
+
}, React__default["default"].createElement("div", {
|
|
1070
|
+
id: "eps-overflow-menu"
|
|
1071
|
+
}, React__default["default"].createElement(LanguageSwitchMenuItem, {
|
|
1072
|
+
name: messages.switchLanguage,
|
|
1073
|
+
language: language,
|
|
1074
|
+
onLanguageChange: onLanguageChange,
|
|
1075
|
+
setOpen: setOpen
|
|
1076
|
+
}), showVersionItem && messages.appVersion && React__default["default"].createElement(VersionMenuItem, {
|
|
1077
|
+
title: messages.appVersion,
|
|
1078
|
+
setOpen: setOpen
|
|
1079
|
+
}), showMyProfileItem && messages.myProfile && React__default["default"].createElement(UserMenuItem, {
|
|
1080
|
+
name: messages.myProfile,
|
|
1081
|
+
setOpen: setOpen,
|
|
1082
|
+
onNavigateToMyProfile: onNavigateToMyProfile
|
|
1083
|
+
}), showCookieSettingsItem && messages.cookieSettings && React__default["default"].createElement(CookieSettingsMenuItem, {
|
|
1084
|
+
name: messages.cookieSettings,
|
|
1085
|
+
setOpen: setOpen,
|
|
1086
|
+
onCookieSettingsOpen: onCookieSettingsOpen
|
|
1087
|
+
}), React__default["default"].createElement(LogOutMenuItem, {
|
|
1088
|
+
name: messages.logout,
|
|
1089
|
+
setOpen: setOpen,
|
|
1090
|
+
onLogout: onLogout
|
|
1091
|
+
}))));
|
|
1092
|
+
};
|
|
1093
|
+
|
|
1094
|
+
/*global EventListener WindowEventHandlers*/
|
|
1095
|
+
function useEventListener(eventName, handler, element) {
|
|
1096
|
+
if (element === void 0) {
|
|
1097
|
+
element = window;
|
|
1098
|
+
}
|
|
1099
|
+
var savedHandler = React.useRef();
|
|
1100
|
+
React.useEffect(function () {
|
|
1101
|
+
savedHandler.current = handler;
|
|
1102
|
+
}, [handler]);
|
|
1103
|
+
React.useEffect(function () {
|
|
1104
|
+
var _element;
|
|
1105
|
+
var isSupported = (_element = element) == null ? void 0 : _element.addEventListener;
|
|
1106
|
+
if (!isSupported) return;
|
|
1107
|
+
var eventListener = function eventListener(event) {
|
|
1108
|
+
return savedHandler.current == null ? void 0 : savedHandler.current(event);
|
|
1106
1109
|
};
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
return title;
|
|
1113
|
-
}).reverse().join(' | ');
|
|
1114
|
-
return React__default["default"].createElement(reactHelmetAsync.Helmet, null, React__default["default"].createElement("title", null, pageTitles, " | Entur Partner"));
|
|
1110
|
+
element.addEventListener(eventName, eventListener);
|
|
1111
|
+
return function () {
|
|
1112
|
+
element.removeEventListener(eventName, eventListener);
|
|
1113
|
+
};
|
|
1114
|
+
}, [eventName, element]);
|
|
1115
1115
|
}
|
|
1116
1116
|
|
|
1117
1117
|
exports.ActionBar = ActionBar;
|