@entur/travel 6.0.19 → 6.0.21-beta.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/dist/LegBone.d.ts CHANGED
@@ -1,33 +1,33 @@
1
- import React from 'react';
2
- import './LegBone.scss';
3
- export type LegBoneProps = {
4
- /** Retning på komponenten */
5
- direction: 'horizontal' | 'vertical';
6
- /** Hvilke linjemønster som skal brukes */
7
- pattern: 'line' | 'dashed' | 'dotted' | 'wave';
8
- /** Farge på linja */
9
- color: string;
10
- /** Farge på startpunktet
11
- * @default Verdien til color
12
- */
13
- startColor?: string;
14
- /** Farge på endepunktet
15
- * @default Verdien til color
16
- */
17
- endColor?: string;
18
- /** Vis startpunkt
19
- * @default true
20
- */
21
- showStart?: boolean;
22
- /** Vis linke
23
- * @default true
24
- */
25
- showLine?: boolean;
26
- /** Vis endepunkt
27
- * @default true
28
- */
29
- showStop?: boolean;
30
- /** Ekstra klassenavn */
31
- className?: string;
32
- } & React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;
33
- export declare const LegBone: React.FC<LegBoneProps>;
1
+ import React from 'react';
2
+ import './LegBone.scss';
3
+ export type LegBoneProps = {
4
+ /** Retning på komponenten */
5
+ direction: 'horizontal' | 'vertical';
6
+ /** Hvilke linjemønster som skal brukes */
7
+ pattern: 'line' | 'dashed' | 'dotted' | 'wave';
8
+ /** Farge på linja */
9
+ color: string;
10
+ /** Farge på startpunktet
11
+ * @default Verdien til color
12
+ */
13
+ startColor?: string;
14
+ /** Farge på endepunktet
15
+ * @default Verdien til color
16
+ */
17
+ endColor?: string;
18
+ /** Vis startpunkt
19
+ * @default true
20
+ */
21
+ showStart?: boolean;
22
+ /** Vis linke
23
+ * @default true
24
+ */
25
+ showLine?: boolean;
26
+ /** Vis endepunkt
27
+ * @default true
28
+ */
29
+ showStop?: boolean;
30
+ /** Ekstra klassenavn */
31
+ className?: string;
32
+ } & React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;
33
+ export declare const LegBone: React.FC<LegBoneProps>;
package/dist/LegLine.d.ts CHANGED
@@ -1,13 +1,13 @@
1
- import React from 'react';
2
- import './LegLine.scss';
3
- export type LegLineProps = {
4
- /** Farge på LegLine'n */
5
- color: string;
6
- /** Retningen til LegLine */
7
- direction: 'horizontal' | 'vertical';
8
- /** Hvilket linjemønster som skal brukes */
9
- pattern: 'line' | 'dashed' | 'dotted' | 'wave';
10
- /** Ekstra klassenavn */
11
- className?: string;
12
- } & React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;
13
- export declare const LegLine: React.FC<LegLineProps>;
1
+ import React from 'react';
2
+ import './LegLine.scss';
3
+ export type LegLineProps = {
4
+ /** Farge på LegLine'n */
5
+ color: string;
6
+ /** Retningen til LegLine */
7
+ direction: 'horizontal' | 'vertical';
8
+ /** Hvilket linjemønster som skal brukes */
9
+ pattern: 'line' | 'dashed' | 'dotted' | 'wave';
10
+ /** Ekstra klassenavn */
11
+ className?: string;
12
+ } & React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;
13
+ export declare const LegLine: React.FC<LegLineProps>;
@@ -1,22 +1,22 @@
1
- import React from 'react';
2
- import './TravelHeader.scss';
3
- export type TravelHeaderProps = {
4
- /** HTML-elementet eller React-komponenten som lager elementet
5
- * @default 'div'
6
- */
7
- as?: string | React.ElementType;
8
- /** Destinasjonen man reiser fra */
9
- from: React.ReactNode;
10
- /** Destinasjonen man reiser til */
11
- to: React.ReactNode;
12
- /**Størrelsen på komponenten
13
- * @default 'large'
14
- */
15
- size?: 'large' | 'medium';
16
- /** Plassere til og fra på samme linje */
17
- noWrap?: boolean;
18
- /**Ekstra klassenavn */
19
- className?: string;
20
- [key: string]: any;
21
- };
22
- export declare const TravelHeader: React.FC<TravelHeaderProps>;
1
+ import React from 'react';
2
+ import './TravelHeader.scss';
3
+ export type TravelHeaderProps = {
4
+ /** HTML-elementet eller React-komponenten som lager elementet
5
+ * @default 'div'
6
+ */
7
+ as?: string | React.ElementType;
8
+ /** Destinasjonen man reiser fra */
9
+ from: React.ReactNode;
10
+ /** Destinasjonen man reiser til */
11
+ to: React.ReactNode;
12
+ /**Størrelsen på komponenten
13
+ * @default 'large'
14
+ */
15
+ size?: 'large' | 'medium';
16
+ /** Plassere til og fra på samme linje */
17
+ noWrap?: boolean;
18
+ /**Ekstra klassenavn */
19
+ className?: string;
20
+ [key: string]: any;
21
+ };
22
+ export declare const TravelHeader: React.FC<TravelHeaderProps>;
@@ -1,11 +1,11 @@
1
- import React from 'react';
2
- import type { Transport } from './utils';
3
- export type TravelLegProps = {
4
- /** Ekstra klassenavn */
5
- className?: string;
6
- /** Hviklen type reise som skal vises riktig farge og linjetype */
7
- transport: Transport;
8
- /** Retningen på komponenten */
9
- direction: 'horizontal' | 'vertical';
10
- } & React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;
11
- export declare const TravelLeg: React.FC<TravelLegProps>;
1
+ import React from 'react';
2
+ import type { Transport } from './utils';
3
+ export type TravelLegProps = {
4
+ /** Ekstra klassenavn */
5
+ className?: string;
6
+ /** Hviklen type reise som skal vises riktig farge og linjetype */
7
+ transport: Transport;
8
+ /** Retningen på komponenten */
9
+ direction: 'horizontal' | 'vertical';
10
+ } & React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;
11
+ export declare const TravelLeg: React.FC<TravelLegProps>;
@@ -1,24 +1,23 @@
1
- import React from 'react';
2
- import type { Transport } from './utils';
3
- import './TravelSwitch.scss';
4
- export type TravelSwitchProps = {
5
- /** Ekstra klassenavn */
6
- className?: string;
7
- /** Om switch-en er checked eller ikke */
8
- checked?: boolean;
9
- /** Label for TravelSwitch-en. */
10
- children?: React.ReactNode;
11
- /** Posisjonen til label for TravelSwitch-en.
12
- * @default "right"
13
- */
14
- labelPlacement?: 'right' | 'bottom';
15
- /** Hvilken type reise som skal vises ikon og farge for */
16
- transport: Transport;
17
- /** Callback for når verdien endres */
18
- onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
19
- /** Størrelsen på Switch-en
20
- * @default "medium"
21
- */
22
- size?: 'medium' | 'large';
23
- } & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'>;
24
- export declare const TravelSwitch: React.FC<TravelSwitchProps>;
1
+ import React from 'react';
2
+ import type { Transport } from './utils';
3
+ export type TravelSwitchProps = {
4
+ /** Ekstra klassenavn */
5
+ className?: string;
6
+ /** Om switch-en er checked eller ikke */
7
+ checked?: boolean;
8
+ /** Label for TravelSwitch-en. */
9
+ children?: React.ReactNode;
10
+ /** Posisjonen til label for TravelSwitch-en.
11
+ * @default "right"
12
+ */
13
+ labelPlacement?: 'right' | 'bottom';
14
+ /** Hvilken type reise som skal vises ikon og farge for */
15
+ transport: Transport;
16
+ /** Callback for når verdien endres */
17
+ onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
18
+ /** Størrelsen Switch-en
19
+ * @default "medium"
20
+ */
21
+ size?: 'medium' | 'large';
22
+ } & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'>;
23
+ export declare const TravelSwitch: React.FC<TravelSwitchProps>;
@@ -1,26 +1,26 @@
1
- import React from 'react';
2
- import type { Transport } from './utils';
3
- import './TravelTag.scss';
4
- export type TravelTagProps = {
5
- /** Callback som kalles for når man skal lukke TravelTag-en
6
- * @default undefined
7
- */
8
- onClose?: () => void;
9
- /** Innholdet inne i TravelTag-en */
10
- children?: React.ReactNode;
11
- /**Ekstra klassenavn */
12
- className?: string;
13
- /** Legger til et Valideringsikon i TravelTagen for å signalisere avvik, informasjon e.l.
14
- * @default "none"
15
- */
16
- alert?: 'none' | 'error' | 'warning' | 'info';
17
- /** Legger til farge og ikon tilpasset valgt transportmiddel */
18
- transport?: Transport;
19
- /** Element ved siden av eller under TravelTag. */
20
- label?: React.ReactNode;
21
- /** Posisjonen til label-en i forhold til TravelTag-en
22
- * @default "right"
23
- */
24
- labelPlacement?: 'bottom' | 'right';
25
- } & React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;
26
- export declare const TravelTag: React.FC<TravelTagProps>;
1
+ import React from 'react';
2
+ import type { Transport } from './utils';
3
+ import './TravelTag.scss';
4
+ export type TravelTagProps = {
5
+ /** Callback som kalles for når man skal lukke TravelTag-en
6
+ * @default undefined
7
+ */
8
+ onClose?: () => void;
9
+ /** Innholdet inne i TravelTag-en */
10
+ children?: React.ReactNode;
11
+ /**Ekstra klassenavn */
12
+ className?: string;
13
+ /** Legger til et Valideringsikon i TravelTagen for å signalisere avvik, informasjon e.l.
14
+ * @default "none"
15
+ */
16
+ alert?: 'none' | 'error' | 'warning' | 'info';
17
+ /** Legger til farge og ikon tilpasset valgt transportmiddel */
18
+ transport?: Transport;
19
+ /** Element ved siden av eller under TravelTag. */
20
+ label?: React.ReactNode;
21
+ /** Posisjonen til label-en i forhold til TravelTag-en
22
+ * @default "right"
23
+ */
24
+ labelPlacement?: 'bottom' | 'right';
25
+ } & React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;
26
+ export declare const TravelTag: React.FC<TravelTagProps>;
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- import './index.scss';
2
- export * from './TravelHeader';
3
- export * from './TravelTag';
4
- export * from './LegLine';
5
- export * from './LegBone';
6
- export * from './TravelLeg';
7
- export * from './TravelSwitch';
1
+ import './index.scss';
2
+ export * from './TravelHeader';
3
+ export * from './TravelTag';
4
+ export * from './LegLine';
5
+ export * from './LegBone';
6
+ export * from './TravelLeg';
7
+ export * from './TravelSwitch';
package/dist/styles.css CHANGED
@@ -1,5 +1,47 @@
1
- :root {
2
- --eds-travel: 1;
1
+ /* DO NOT CHANGE!*/
2
+ /* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
3
+ .eds-travel-header {
4
+ color: #181c56;
5
+ display: flex;
6
+ flex-direction: column;
7
+ font-weight: 600;
8
+ line-height: 1.5;
9
+ max-width: 100%;
10
+ }
11
+ .eds-contrast .eds-travel-header {
12
+ color: #ffffff;
13
+ }
14
+ .eds-travel-header--large {
15
+ font-size: 1.5rem;
16
+ }
17
+ .eds-travel-header--medium {
18
+ font-size: 1rem;
19
+ }
20
+ .eds-travel-header--no-wrap {
21
+ flex-direction: row;
22
+ }
23
+ .eds-travel-header__from, .eds-travel-header__to {
24
+ min-width: 0;
25
+ overflow: hidden;
26
+ text-overflow: ellipsis;
27
+ white-space: nowrap;
28
+ }
29
+ .eds-travel-header--no-wrap .eds-travel-header__from {
30
+ margin-right: 0.5em;
31
+ }
32
+ .eds-travel-header__to {
33
+ padding-left: 1.8333333333em;
34
+ position: relative;
35
+ }
36
+ .eds-travel-header__to::before {
37
+ background-color: #ff5959;
38
+ content: "";
39
+ display: block;
40
+ height: 0.1666666667em;
41
+ left: 0;
42
+ position: absolute;
43
+ top: 0.65em;
44
+ width: 1.3333333333em;
3
45
  }
4
46
  /* DO NOT CHANGE!*/
5
47
  /* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
@@ -151,8 +193,6 @@
151
193
  margin-top: 0.125rem;
152
194
  font-size: 0.875rem;
153
195
  }
154
- /* DO NOT CHANGE!*/
155
- /* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
156
196
  .eds-leg-line {
157
197
  flex-grow: 1;
158
198
  mask-image: url("./pattern/line.svg");
@@ -191,53 +231,6 @@
191
231
  mask-image: url("./pattern/wave-horizontal.svg");
192
232
  -webkit-mask-image: url("./pattern/wave-horizontal.svg");
193
233
  }
194
- /* DO NOT CHANGE!*/
195
- /* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
196
- .eds-travel-header {
197
- color: #181c56;
198
- display: flex;
199
- flex-direction: column;
200
- font-weight: 600;
201
- line-height: 1.5;
202
- max-width: 100%;
203
- }
204
- .eds-contrast .eds-travel-header {
205
- color: #ffffff;
206
- }
207
- .eds-travel-header--large {
208
- font-size: 1.5rem;
209
- }
210
- .eds-travel-header--medium {
211
- font-size: 1rem;
212
- }
213
- .eds-travel-header--no-wrap {
214
- flex-direction: row;
215
- }
216
- .eds-travel-header__from, .eds-travel-header__to {
217
- min-width: 0;
218
- overflow: hidden;
219
- text-overflow: ellipsis;
220
- white-space: nowrap;
221
- }
222
- .eds-travel-header--no-wrap .eds-travel-header__from {
223
- margin-right: 0.5em;
224
- }
225
- .eds-travel-header__to {
226
- padding-left: 1.8333333333em;
227
- position: relative;
228
- }
229
- .eds-travel-header__to::before {
230
- background-color: #ff5959;
231
- content: "";
232
- display: block;
233
- height: 0.1666666667em;
234
- left: 0;
235
- position: absolute;
236
- top: 0.65em;
237
- width: 1.3333333333em;
238
- }
239
- /* DO NOT CHANGE!*/
240
- /* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
241
234
  .eds-leg-bone {
242
235
  align-items: center;
243
236
  display: flex;
@@ -271,6 +264,6 @@
271
264
  .eds-leg-bone--horizontal .eds-leg-bone__stop {
272
265
  margin-left: 0.125rem;
273
266
  }
274
- /* DO NOT CHANGE!*/
275
- /* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
276
- @import '~@entur/form/dist/styles.css';
267
+ :root {
268
+ --eds-travel: 1;
269
+ }
@@ -10,11 +10,6 @@ var layout = require('@entur/layout');
10
10
  var tokens = require('@entur/tokens');
11
11
  var form = require('@entur/form');
12
12
 
13
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
14
-
15
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
16
- var classNames__default = /*#__PURE__*/_interopDefaultLegacy(classNames);
17
-
18
13
  function _extends() {
19
14
  _extends = Object.assign ? Object.assign.bind() : function (target) {
20
15
  for (var i = 1; i < arguments.length; i++) {
@@ -53,16 +48,16 @@ var TravelHeader = function TravelHeader(_ref) {
53
48
  className = _ref.className,
54
49
  noWrap = _ref.noWrap,
55
50
  rest = _objectWithoutPropertiesLoose(_ref, _excluded$5);
56
- return React__default["default"].createElement(Element, _extends({
57
- className: classNames__default["default"]('eds-travel-header', className, {
51
+ return React.createElement(Element, _extends({
52
+ className: classNames('eds-travel-header', className, {
58
53
  'eds-travel-header--large': size === 'large',
59
54
  'eds-travel-header--medium': size === 'medium',
60
55
  'eds-travel-header--no-wrap': noWrap
61
56
  }),
62
57
  "aria-label": "Fra " + from + ", til " + to
63
- }, rest), React__default["default"].createElement("span", {
58
+ }, rest), React.createElement("span", {
64
59
  className: "eds-travel-header__from"
65
- }, from), React__default["default"].createElement("span", {
60
+ }, from), React.createElement("span", {
66
61
  className: "eds-travel-header__to"
67
62
  }, to));
68
63
  };
@@ -234,7 +229,7 @@ var getTransportStyle = function getTransportStyle(mode) {
234
229
  };
235
230
  case 'none':
236
231
  return {
237
- Icon: React__default["default"].Fragment,
232
+ Icon: React.Fragment,
238
233
  backgroundColor: tokens.colors.brand.blue,
239
234
  textColor: tokens.colors.brand.white,
240
235
  contrastBackgroundColor: tokens.colors.brand.white,
@@ -275,7 +270,7 @@ var TravelTag = function TravelTag(_ref) {
275
270
  var transportIsSet = transport !== 'none';
276
271
  var alertIsSet = alert !== 'none';
277
272
  var tagRef = React.useRef(null);
278
- var numberOfChildren = React__default["default"].Children.count(children);
273
+ var numberOfChildren = React.Children.count(children);
279
274
  var _getTransportStyle = getTransportStyle(transport),
280
275
  Icon = _getTransportStyle.Icon,
281
276
  contrastBackgroundColor = _getTransportStyle.contrastBackgroundColor,
@@ -290,8 +285,8 @@ var TravelTag = function TravelTag(_ref) {
290
285
  (_tagRef$current2 = tagRef.current) == null ? void 0 : _tagRef$current2.style.setProperty('--text-color', isContrast ? contrastTextColor : textColor);
291
286
  }
292
287
  }, [tagRef.current, backgroundColor, textColor]);
293
- var TravelTagWithoutLabel = React__default["default"].createElement("div", _extends({
294
- className: classNames__default["default"]('eds-travel-tag', {
288
+ var TravelTagWithoutLabel = React.createElement("div", _extends({
289
+ className: classNames('eds-travel-tag', {
295
290
  'eds-travel-tag--closable': isClosable,
296
291
  'eds-travel-tag--alert': alertIsSet,
297
292
  'eds-travel-tag--alert--error': alert === 'error',
@@ -303,32 +298,32 @@ var TravelTag = function TravelTag(_ref) {
303
298
  }, rest, {
304
299
  "aria-label": (_rest$ariaLabel = rest['aria-label']) != null ? _rest$ariaLabel : ariaLabel + (alertIsSet ? " " + alert : ''),
305
300
  role: "img"
306
- }), React__default["default"].createElement(Icon, {
301
+ }), React.createElement(Icon, {
307
302
  "aria-hidden": true
308
- }), children, isClosable && React__default["default"].createElement("button", {
303
+ }), children, isClosable && React.createElement("button", {
309
304
  onClick: onClose,
310
305
  className: "eds-travel-tag__close-button"
311
- }, React__default["default"].createElement(icons.CloseSmallIcon, {
306
+ }, React.createElement(icons.CloseSmallIcon, {
312
307
  inline: true
313
- })), alertIsSet && React__default["default"].createElement("span", {
308
+ })), alertIsSet && React.createElement("span", {
314
309
  className: "eds-travel-tag__alert"
315
- }, alert === 'info' && React__default["default"].createElement(icons.ValidationInfoIcon, {
310
+ }, alert === 'info' && React.createElement(icons.ValidationInfoIcon, {
316
311
  "aria-hidden": true,
317
312
  className: "eds-travel-tag__alert-info-icon"
318
- }), alert === 'error' && React__default["default"].createElement(icons.ValidationErrorIcon, {
313
+ }), alert === 'error' && React.createElement(icons.ValidationErrorIcon, {
319
314
  "aria-hidden": true,
320
315
  className: "eds-travel-tag__alert-error-icon"
321
- }), alert === 'warning' && React__default["default"].createElement(icons.ValidationExclamationIcon, {
316
+ }), alert === 'warning' && React.createElement(icons.ValidationExclamationIcon, {
322
317
  "aria-hidden": true,
323
318
  className: "eds-travel-tag__alert-exclamation-icon"
324
319
  })));
325
- var Label = React__default["default"].createElement("div", {
326
- className: classNames__default["default"]('eds-travel-tag__label', (_classNames = {}, _classNames["eds-travel-tag__label--" + labelPlacement] = label, _classNames["eds-travel-tag__label--" + labelPlacement + "--with-alert"] = label && alertIsSet, _classNames))
320
+ var Label = React.createElement("div", {
321
+ className: classNames('eds-travel-tag__label', (_classNames = {}, _classNames["eds-travel-tag__label--" + labelPlacement] = label, _classNames["eds-travel-tag__label--" + labelPlacement + "--with-alert"] = label && alertIsSet, _classNames))
327
322
  }, label);
328
323
  if (label) {
329
324
  var _classNames2;
330
- return React__default["default"].createElement("div", {
331
- className: classNames__default["default"]('eds-travel-tag__wrapper', (_classNames2 = {}, _classNames2["eds-travel-tag__wrapper--label-position-" + labelPlacement] = label, _classNames2))
325
+ return React.createElement("div", {
326
+ className: classNames('eds-travel-tag__wrapper', (_classNames2 = {}, _classNames2["eds-travel-tag__wrapper--label-position-" + labelPlacement] = label, _classNames2))
332
327
  }, TravelTagWithoutLabel, Label);
333
328
  }
334
329
  return TravelTagWithoutLabel;
@@ -343,8 +338,8 @@ var LegLine = function LegLine(_ref) {
343
338
  pattern = _ref.pattern,
344
339
  className = _ref.className,
345
340
  rest = _objectWithoutPropertiesLoose(_ref, _excluded$3);
346
- return React__default["default"].createElement("div", _extends({
347
- className: classNames__default["default"]('eds-leg-line', className, (_classNames = {}, _classNames["eds-leg-line--" + pattern] = pattern, _classNames["eds-leg-line--" + direction] = direction, _classNames)),
341
+ return React.createElement("div", _extends({
342
+ className: classNames('eds-leg-line', className, (_classNames = {}, _classNames["eds-leg-line--" + pattern] = pattern, _classNames["eds-leg-line--" + direction] = direction, _classNames)),
348
343
  style: {
349
344
  backgroundColor: color
350
345
  }
@@ -366,23 +361,23 @@ var LegBone = function LegBone(_ref) {
366
361
  showLine = _ref$showLine === void 0 ? true : _ref$showLine,
367
362
  className = _ref.className,
368
363
  rest = _objectWithoutPropertiesLoose(_ref, _excluded$2);
369
- return React__default["default"].createElement("div", _extends({
370
- className: classNames__default["default"](className, 'eds-leg-bone', [{
364
+ return React.createElement("div", _extends({
365
+ className: classNames(className, 'eds-leg-bone', [{
371
366
  'eds-leg-bone--vertical': direction === 'vertical'
372
367
  }, {
373
368
  'eds-leg-bone--horizontal': direction === 'horizontal'
374
369
  }])
375
- }, rest), showStart && React__default["default"].createElement("div", {
370
+ }, rest), showStart && React.createElement("div", {
376
371
  className: "eds-leg-bone__start",
377
372
  style: {
378
373
  backgroundColor: startColor || color
379
374
  }
380
- }), showLine && React__default["default"].createElement(LegLine, {
375
+ }), showLine && React.createElement(LegLine, {
381
376
  className: "eds-leg-bone__line",
382
377
  direction: direction,
383
378
  color: color,
384
379
  pattern: pattern
385
- }), showStop && React__default["default"].createElement("div", {
380
+ }), showStop && React.createElement("div", {
386
381
  className: "eds-leg-bone__stop",
387
382
  style: {
388
383
  backgroundColor: endColor || color
@@ -401,7 +396,7 @@ var TravelLeg = function TravelLeg(_ref) {
401
396
  contrastBackgroundColor = _getTransportStyle.contrastBackgroundColor,
402
397
  pattern = _getTransportStyle.pattern;
403
398
  var isContrast = layout.useContrast();
404
- return React__default["default"].createElement(LegBone, _extends({
399
+ return React.createElement(LegBone, _extends({
405
400
  direction: direction,
406
401
  pattern: pattern,
407
402
  color: isContrast ? contrastBackgroundColor : backgroundColor,
@@ -422,12 +417,12 @@ var TravelSwitch = function TravelSwitch(_ref) {
422
417
  backgroundColor = _getTransportStyle.backgroundColor,
423
418
  contrastBackgroundColor = _getTransportStyle.contrastBackgroundColor,
424
419
  Icon = _getTransportStyle.Icon;
425
- return React__default["default"].createElement(form.Switch, _extends({
420
+ return React.createElement(form.Switch, _extends({
426
421
  className: className,
427
422
  labelPlacement: labelPlacement,
428
423
  color: backgroundColor,
429
424
  contrastColor: contrastBackgroundColor,
430
- icon: React__default["default"].createElement(Icon, null),
425
+ icon: React.createElement(Icon, null),
431
426
  size: size
432
427
  }, rest), children);
433
428
  };
@@ -1 +1 @@
1
- {"version":3,"file":"travel.cjs.development.js","sources":["../src/TravelHeader.tsx","../src/utils.ts","../src/TravelTag.tsx","../src/LegLine.tsx","../src/LegBone.tsx","../src/TravelLeg.tsx","../src/TravelSwitch.tsx","../src/index.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport './TravelHeader.scss';\n\nexport type TravelHeaderProps = {\n /** HTML-elementet eller React-komponenten som lager elementet\n * @default 'div'\n */\n as?: string | React.ElementType;\n /** Destinasjonen man reiser fra */\n from: React.ReactNode;\n /** Destinasjonen man reiser til */\n to: React.ReactNode;\n /**Størrelsen på komponenten\n * @default 'large'\n */\n size?: 'large' | 'medium';\n /** Plassere til og fra på samme linje */\n noWrap?: boolean;\n /**Ekstra klassenavn */\n className?: string;\n [key: string]: any;\n};\n\nexport const TravelHeader: React.FC<TravelHeaderProps> = ({\n as: Element = 'div',\n from,\n to,\n size = 'large',\n className,\n noWrap,\n ...rest\n}) => {\n return (\n <Element\n className={classNames('eds-travel-header', className, {\n 'eds-travel-header--large': size === 'large',\n 'eds-travel-header--medium': size === 'medium',\n 'eds-travel-header--no-wrap': noWrap,\n })}\n aria-label={`Fra ${from}, til ${to}`}\n {...rest}\n >\n <span className=\"eds-travel-header__from\">{from}</span>\n <span className=\"eds-travel-header__to\">{to}</span>\n </Element>\n );\n};\n","import React from 'react';\nimport { colors } from '@entur/tokens';\nimport {\n BusIcon,\n FerryIcon,\n CarferryIcon,\n TramIcon,\n PlaneIcon,\n TrainIcon,\n BicycleIcon,\n MobilityIcon,\n MetroIcon,\n HelicopterIcon,\n FunicularIcon,\n CablewayIcon,\n TaxiIcon,\n WalkIcon,\n} from '@entur/icons';\n\nimport type { IconProps } from '@entur/icons';\n\nexport type Transport =\n | 'metro'\n | 'bus'\n | 'plane'\n | 'helicopter'\n | 'tram'\n | 'funicular'\n | 'cableway'\n | 'taxi'\n | 'bicycle'\n | 'walk'\n | 'train'\n | 'ferry'\n | 'carferry'\n | 'mobility'\n | 'airportLinkBus'\n | 'airportLinkRail'\n | 'rail'\n | 'water'\n | 'air'\n | 'none';\n\ntype transportStyleResult = {\n Icon: React.FC<IconProps>;\n backgroundColor: string;\n textColor: string;\n contrastBackgroundColor: string;\n contrastTextColor: string;\n pattern: 'line' | 'wave' | 'dashed' | 'dotted';\n ariaLabel: string;\n};\n\nexport const getTransportStyle = (mode: string): transportStyleResult => {\n switch (mode) {\n case 'metro':\n return {\n Icon: MetroIcon,\n backgroundColor: colors.transport.default.metro,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.metro,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'T-bane',\n };\n case 'bus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.bus,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.bus,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Buss',\n };\n case 'plane':\n case 'air':\n return {\n Icon: PlaneIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Fly',\n };\n case 'helicopter':\n return {\n Icon: HelicopterIcon,\n backgroundColor: colors.transport.default.helicopter,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.helicopter,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Helikopter',\n };\n case 'tram':\n return {\n Icon: TramIcon,\n backgroundColor: colors.transport.default.tram,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.tram,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Trikk',\n };\n case 'funicular':\n return {\n Icon: FunicularIcon,\n backgroundColor: colors.transport.default.funicular,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.funicular,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Taubane',\n };\n case 'cableway':\n return {\n Icon: CablewayIcon,\n backgroundColor: colors.transport.default.cableway,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.cableway,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Gondol',\n };\n case 'taxi':\n return {\n Icon: TaxiIcon,\n backgroundColor: colors.transport.default.taxi,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.taxi,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Taxi',\n };\n case 'bicycle':\n return {\n Icon: BicycleIcon,\n backgroundColor: colors.transport.default.bicycle,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.bicycle,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Sykkel',\n };\n case 'walk':\n return {\n Icon: WalkIcon,\n backgroundColor: colors.transport.default.walk,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.walk,\n contrastTextColor: colors.brand.white,\n pattern: 'dotted',\n ariaLabel: 'Gange',\n };\n case 'train':\n case 'rail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.train,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.train,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Tog',\n };\n case 'ferry':\n case 'water':\n return {\n Icon: FerryIcon,\n backgroundColor: colors.transport.default.ferry,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.ferry,\n contrastTextColor: colors.brand.white,\n pattern: 'wave',\n ariaLabel: 'Ferge',\n };\n case 'carferry':\n return {\n Icon: CarferryIcon,\n backgroundColor: colors.transport.default.carferry,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.carferry,\n contrastTextColor: colors.brand.white,\n pattern: 'wave',\n ariaLabel: 'Bilferge',\n };\n case 'mobility':\n return {\n Icon: MobilityIcon,\n backgroundColor: colors.transport.default.mobility,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.mobility,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'El-sparkesykkel',\n };\n case 'airportLinkBus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Flybuss',\n };\n case 'airportLinkRail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Flytog',\n };\n case 'none':\n return {\n Icon: React.Fragment,\n backgroundColor: colors.brand.blue,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.brand.white,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: '',\n };\n case 'scooter':\n throw Error(\n `transport type 'scooter' is deprecated: Please use 'mobility' instead.`,\n );\n case 'bike':\n throw Error(\n `transport type 'bike' is deprecated: Please use 'bicycle' instead.`,\n );\n case 'car':\n throw Error(\n `transport type 'car' is deprecated: Please use 'taxi' instead.`,\n );\n case 'foot':\n throw Error(\n `transport type 'foot' is deprecated: Please use 'walk' instead.`,\n );\n default:\n throw Error('Please select a transport for the Travel component.');\n }\n};\n","import React, { useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoIcon,\n ValidationErrorIcon,\n ValidationExclamationIcon,\n} from '@entur/icons';\nimport { useContrast } from '@entur/layout';\n\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nimport './TravelTag.scss';\n\nexport type TravelTagProps = {\n /** Callback som kalles for når man skal lukke TravelTag-en\n * @default undefined\n */\n onClose?: () => void;\n /** Innholdet inne i TravelTag-en */\n children?: React.ReactNode;\n /**Ekstra klassenavn */\n className?: string;\n /** Legger til et Valideringsikon i TravelTagen for å signalisere avvik, informasjon e.l.\n * @default \"none\"\n */\n alert?: 'none' | 'error' | 'warning' | 'info';\n /** Legger til farge og ikon tilpasset valgt transportmiddel */\n transport?: Transport;\n /** Element ved siden av eller under TravelTag. */\n label?: React.ReactNode;\n /** Posisjonen til label-en i forhold til TravelTag-en\n * @default \"right\"\n */\n labelPlacement?: 'bottom' | 'right';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelTag: React.FC<TravelTagProps> = ({\n children,\n className,\n alert = 'none',\n transport = 'none',\n label,\n labelPlacement = 'right',\n onClose = undefined,\n ...rest\n}) => {\n const isContrast = useContrast();\n const isClosable = onClose ? true : false;\n const transportIsSet = transport !== 'none';\n const alertIsSet = alert !== 'none';\n const tagRef = useRef<HTMLDivElement>(null);\n const numberOfChildren = React.Children.count(children);\n const {\n Icon,\n contrastBackgroundColor,\n contrastTextColor,\n backgroundColor,\n textColor,\n ariaLabel,\n } = getTransportStyle(transport);\n\n useEffect(() => {\n if (transportIsSet) {\n tagRef.current?.style.setProperty(\n '--background-color',\n isContrast ? contrastBackgroundColor : backgroundColor,\n );\n tagRef.current?.style.setProperty(\n '--text-color',\n isContrast ? contrastTextColor : textColor,\n );\n }\n }, [tagRef.current, backgroundColor, textColor]);\n\n const TravelTagWithoutLabel: JSX.Element = (\n <div\n className={classNames('eds-travel-tag', {\n 'eds-travel-tag--closable': isClosable,\n 'eds-travel-tag--alert': alertIsSet,\n 'eds-travel-tag--alert--error': alert === 'error',\n 'eds-travel-tag--transport': transportIsSet,\n 'eds-travel-tag--icon-and-text':\n numberOfChildren > 1 || (transportIsSet && numberOfChildren > 0),\n className,\n })}\n ref={tagRef}\n {...rest}\n aria-label={\n rest['aria-label'] ?? ariaLabel + (alertIsSet ? ` ${alert}` : '')\n }\n role=\"img\"\n >\n <Icon aria-hidden />\n {children}\n {isClosable && (\n <button onClick={onClose} className=\"eds-travel-tag__close-button\">\n <CloseSmallIcon inline />\n </button>\n )}\n {alertIsSet && (\n <span className=\"eds-travel-tag__alert\">\n {alert === 'info' && (\n <ValidationInfoIcon\n aria-hidden\n className=\"eds-travel-tag__alert-info-icon\"\n />\n )}\n {alert === 'error' && (\n <ValidationErrorIcon\n aria-hidden\n className=\"eds-travel-tag__alert-error-icon\"\n />\n )}\n {alert === 'warning' && (\n <ValidationExclamationIcon\n aria-hidden\n className=\"eds-travel-tag__alert-exclamation-icon\"\n />\n )}\n </span>\n )}\n </div>\n );\n\n const Label: JSX.Element = (\n <div\n className={classNames('eds-travel-tag__label', {\n [`eds-travel-tag__label--${labelPlacement}`]: label,\n [`eds-travel-tag__label--${labelPlacement}--with-alert`]:\n label && alertIsSet,\n })}\n >\n {label}\n </div>\n );\n\n if (label) {\n return (\n <div\n className={classNames('eds-travel-tag__wrapper', {\n [`eds-travel-tag__wrapper--label-position-${labelPlacement}`]: label,\n })}\n >\n {TravelTagWithoutLabel}\n {Label}\n </div>\n );\n }\n\n return TravelTagWithoutLabel;\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport './LegLine.scss';\n\nexport type LegLineProps = {\n /** Farge på LegLine'n */\n color: string;\n /** Retningen til LegLine */\n direction: 'horizontal' | 'vertical';\n /** Hvilket linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegLine: React.FC<LegLineProps> = ({\n color,\n direction = 'horizontal',\n pattern,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames('eds-leg-line', className, {\n [`eds-leg-line--${pattern}`]: pattern,\n [`eds-leg-line--${direction}`]: direction,\n })}\n style={{ backgroundColor: color }}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport { LegLine } from './LegLine';\nimport './LegBone.scss';\n\nexport type LegBoneProps = {\n /** Retning på komponenten */\n direction: 'horizontal' | 'vertical';\n /** Hvilke linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Farge på linja */\n color: string;\n /** Farge på startpunktet\n * @default Verdien til color\n */\n startColor?: string;\n /** Farge på endepunktet\n * @default Verdien til color\n */\n endColor?: string;\n /** Vis startpunkt\n * @default true\n */\n showStart?: boolean;\n /** Vis linke\n * @default true\n */\n showLine?: boolean;\n /** Vis endepunkt\n * @default true\n */\n showStop?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegBone: React.FC<LegBoneProps> = ({\n direction,\n pattern,\n color,\n startColor,\n endColor,\n showStart = true,\n showStop = true,\n showLine = true,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames(className, 'eds-leg-bone', [\n { 'eds-leg-bone--vertical': direction === 'vertical' },\n { 'eds-leg-bone--horizontal': direction === 'horizontal' },\n ])}\n {...rest}\n >\n {showStart && (\n <div\n className={`eds-leg-bone__start`}\n style={{ backgroundColor: startColor || color }}\n />\n )}\n\n {showLine && (\n <LegLine\n className={`eds-leg-bone__line`}\n direction={direction}\n color={color}\n pattern={pattern}\n />\n )}\n\n {showStop && (\n <div\n className={`eds-leg-bone__stop`}\n style={{ backgroundColor: endColor || color }}\n />\n )}\n </div>\n );\n};\n","import React from 'react';\nimport { useContrast } from '@entur/layout';\nimport { LegBone } from './LegBone';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelLegProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Hviklen type reise som skal vises riktig farge og linjetype */\n transport: Transport;\n /** Retningen på komponenten */\n direction: 'horizontal' | 'vertical';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelLeg: React.FC<TravelLegProps> = ({\n className,\n transport,\n direction,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, pattern } =\n getTransportStyle(transport);\n const isContrast = useContrast();\n\n return (\n <LegBone\n direction={direction}\n pattern={pattern}\n color={isContrast ? contrastBackgroundColor : backgroundColor}\n className={className}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport { Switch } from '@entur/form';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nimport './TravelSwitch.scss';\n\nexport type TravelSwitchProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Om switch-en er checked eller ikke */\n checked?: boolean;\n /** Label for TravelSwitch-en. */\n children?: React.ReactNode;\n /** Posisjonen til label for TravelSwitch-en.\n * @default \"right\"\n */\n labelPlacement?: 'right' | 'bottom';\n /** Hvilken type reise som skal vises ikon og farge for */\n transport: Transport; // When adding a new submode, check https://enturas.atlassian.net/wiki/spaces/PUBLIC/pages/825393529/Norwegian+submodes+and+their+definitions for names\n /** Callback for når verdien endres */\n onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Størrelsen på Switch-en\n * @default \"medium\"\n */\n size?: 'medium' | 'large';\n} & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'>;\n\nexport const TravelSwitch: React.FC<TravelSwitchProps> = ({\n className,\n children,\n labelPlacement = 'right',\n transport,\n size,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, Icon } =\n getTransportStyle(transport);\n return (\n <Switch\n className={className}\n labelPlacement={labelPlacement}\n color={backgroundColor}\n contrastColor={contrastBackgroundColor}\n icon={<Icon />}\n size={size}\n {...rest}\n >\n {children}\n </Switch>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('travel');\n\nexport * from './TravelHeader';\nexport * from './TravelTag';\nexport * from './LegLine';\nexport * from './LegBone';\nexport * from './TravelLeg';\nexport * from './TravelSwitch';\n"],"names":["TravelHeader","as","Element","from","to","size","className","noWrap","rest","_excluded","React","createElement","classNames","getTransportStyle","mode","Icon","MetroIcon","backgroundColor","colors","transport","metro","textColor","brand","white","contrastBackgroundColor","contrast","contrastTextColor","pattern","ariaLabel","BusIcon","bus","PlaneIcon","plane","HelicopterIcon","helicopter","TramIcon","tram","FunicularIcon","funicular","CablewayIcon","cableway","TaxiIcon","taxi","BicycleIcon","bicycle","WalkIcon","walk","TrainIcon","train","FerryIcon","ferry","CarferryIcon","carferry","MobilityIcon","mobility","Fragment","blue","Error","TravelTag","children","alert","label","labelPlacement","onClose","undefined","isContrast","useContrast","isClosable","transportIsSet","alertIsSet","tagRef","useRef","numberOfChildren","Children","count","useEffect","current","style","setProperty","TravelTagWithoutLabel","ref","role","onClick","CloseSmallIcon","inline","ValidationInfoIcon","ValidationErrorIcon","ValidationExclamationIcon","Label","LegLine","color","direction","LegBone","startColor","endColor","showStart","showStop","showLine","TravelLeg","TravelSwitch","Switch","contrastColor","icon","warnAboutMissingStyles"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwBaA,IAAAA,YAAY,GAAgC,SAA5CA,YAAY,CAQpB,IAAA,EAAA;AAAA,EAAA,IAAA,OAAA,GAAA,IAAA,CAPHC,EAAE;AAAEC,IAAAA,OAAO,wBAAG,KAAK,GAAA,OAAA;AACnBC,IAAAA,IAAI,QAAJA,IAAI;AACJC,IAAAA,EAAE,QAAFA,EAAE;AAAA,IAAA,SAAA,GAAA,IAAA,CACFC,IAAI;AAAJA,IAAAA,IAAI,0BAAG,OAAO,GAAA,SAAA;AACdC,IAAAA,SAAS,QAATA,SAAS;AACTC,IAAAA,MAAM,QAANA,MAAM;IACHC,IAAI,GAAA,6BAAA,CAAA,IAAA,EAAAC,WAAA,CAAA,CAAA;AAEP,EAAA,OACEC,yBAAC,CAAAC,aAAA,CAAAT,OAAO,EAAA,QAAA,CAAA;AACNI,IAAAA,SAAS,EAAEM,8BAAU,CAAC,mBAAmB,EAAEN,SAAS,EAAE;MACpD,0BAA0B,EAAED,IAAI,KAAK,OAAO;MAC5C,2BAA2B,EAAEA,IAAI,KAAK,QAAQ;AAC9C,MAAA,4BAA4B,EAAEE,MAAAA;AAC/B,KAAA,CAAC;2BACiBJ,IAAI,GAASC,QAAAA,GAAAA,EAAAA;AAAI,GAAA,EAChCI,IAAI,CAERE,EAAAA,yBAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAML,IAAAA,SAAS,EAAC,yBAAA;GAAyB,EAAEH,IAAI,CAAQ,EACvDO,yBAAM,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAAL,IAAAA,SAAS,EAAC,uBAAA;GAAuB,EAAEF,EAAE,CAAQ,CAC3C,CAAA;AAEd;;ACMO,IAAMS,iBAAiB,GAAG,SAApBA,iBAAiB,CAAIC,IAAY,EAA0B;AACtE,EAAA,QAAQA,IAAI;AACV,IAAA,KAAK,OAAO;MACV,OAAO;AACLC,QAAAA,IAAI,EAAEC,eAAS;AACfC,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACC,KAAK;AAC/CC,QAAAA,SAAS,EAAEH,aAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,aAAM,CAACC,SAAS,CAACM,QAAQ,CAACL,KAAK;AACxDM,QAAAA,iBAAiB,EAAER,aAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,QAAA;OACZ,CAAA;AACH,IAAA,KAAK,KAAK;MACR,OAAO;AACLb,QAAAA,IAAI,EAAEc,aAAO;AACbZ,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACW,GAAG;AAC7CT,QAAAA,SAAS,EAAEH,aAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,aAAM,CAACC,SAAS,CAACM,QAAQ,CAACK,GAAG;AACtDJ,QAAAA,iBAAiB,EAAER,aAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,QAAQ;AACjBC,QAAAA,SAAS,EAAE,MAAA;OACZ,CAAA;AACH,IAAA,KAAK,OAAO,CAAA;AACZ,IAAA,KAAK,KAAK;MACR,OAAO;AACLb,QAAAA,IAAI,EAAEgB,eAAS;AACfd,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACa,KAAK;AAC/CX,QAAAA,SAAS,EAAEH,aAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,aAAM,CAACC,SAAS,CAACM,QAAQ,CAACO,KAAK;AACxDN,QAAAA,iBAAiB,EAAER,aAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,KAAA;OACZ,CAAA;AACH,IAAA,KAAK,YAAY;MACf,OAAO;AACLb,QAAAA,IAAI,EAAEkB,oBAAc;AACpBhB,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACe,UAAU;AACpDb,QAAAA,SAAS,EAAEH,aAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,aAAM,CAACC,SAAS,CAACM,QAAQ,CAACS,UAAU;AAC7DR,QAAAA,iBAAiB,EAAER,aAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,YAAA;OACZ,CAAA;AACH,IAAA,KAAK,MAAM;MACT,OAAO;AACLb,QAAAA,IAAI,EAAEoB,cAAQ;AACdlB,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACiB,IAAI;AAC9Cf,QAAAA,SAAS,EAAEH,aAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,aAAM,CAACC,SAAS,CAACM,QAAQ,CAACW,IAAI;AACvDV,QAAAA,iBAAiB,EAAER,aAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,OAAA;OACZ,CAAA;AACH,IAAA,KAAK,WAAW;MACd,OAAO;AACLb,QAAAA,IAAI,EAAEsB,mBAAa;AACnBpB,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACmB,SAAS;AACnDjB,QAAAA,SAAS,EAAEH,aAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,aAAM,CAACC,SAAS,CAACM,QAAQ,CAACa,SAAS;AAC5DZ,QAAAA,iBAAiB,EAAER,aAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,SAAA;OACZ,CAAA;AACH,IAAA,KAAK,UAAU;MACb,OAAO;AACLb,QAAAA,IAAI,EAAEwB,kBAAY;AAClBtB,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACqB,QAAQ;AAClDnB,QAAAA,SAAS,EAAEH,aAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,aAAM,CAACC,SAAS,CAACM,QAAQ,CAACe,QAAQ;AAC3Dd,QAAAA,iBAAiB,EAAER,aAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,QAAA;OACZ,CAAA;AACH,IAAA,KAAK,MAAM;MACT,OAAO;AACLb,QAAAA,IAAI,EAAE0B,cAAQ;AACdxB,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACuB,IAAI;AAC9CrB,QAAAA,SAAS,EAAEH,aAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,aAAM,CAACC,SAAS,CAACM,QAAQ,CAACiB,IAAI;AACvDhB,QAAAA,iBAAiB,EAAER,aAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,QAAQ;AACjBC,QAAAA,SAAS,EAAE,MAAA;OACZ,CAAA;AACH,IAAA,KAAK,SAAS;MACZ,OAAO;AACLb,QAAAA,IAAI,EAAE4B,iBAAW;AACjB1B,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACyB,OAAO;AACjDvB,QAAAA,SAAS,EAAEH,aAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,aAAM,CAACC,SAAS,CAACM,QAAQ,CAACmB,OAAO;AAC1DlB,QAAAA,iBAAiB,EAAER,aAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,QAAA;OACZ,CAAA;AACH,IAAA,KAAK,MAAM;MACT,OAAO;AACLb,QAAAA,IAAI,EAAE8B,cAAQ;AACd5B,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAAC2B,IAAI;AAC9CzB,QAAAA,SAAS,EAAEH,aAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,aAAM,CAACC,SAAS,CAACM,QAAQ,CAACqB,IAAI;AACvDpB,QAAAA,iBAAiB,EAAER,aAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,QAAQ;AACjBC,QAAAA,SAAS,EAAE,OAAA;OACZ,CAAA;AACH,IAAA,KAAK,OAAO,CAAA;AACZ,IAAA,KAAK,MAAM;MACT,OAAO;AACLb,QAAAA,IAAI,EAAEgC,eAAS;AACf9B,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAAC6B,KAAK;AAC/C3B,QAAAA,SAAS,EAAEH,aAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,aAAM,CAACC,SAAS,CAACM,QAAQ,CAACuB,KAAK;AACxDtB,QAAAA,iBAAiB,EAAER,aAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,KAAA;OACZ,CAAA;AACH,IAAA,KAAK,OAAO,CAAA;AACZ,IAAA,KAAK,OAAO;MACV,OAAO;AACLb,QAAAA,IAAI,EAAEkC,eAAS;AACfhC,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAAC+B,KAAK;AAC/C7B,QAAAA,SAAS,EAAEH,aAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,aAAM,CAACC,SAAS,CAACM,QAAQ,CAACyB,KAAK;AACxDxB,QAAAA,iBAAiB,EAAER,aAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,OAAA;OACZ,CAAA;AACH,IAAA,KAAK,UAAU;MACb,OAAO;AACLb,QAAAA,IAAI,EAAEoC,kBAAY;AAClBlC,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACiC,QAAQ;AAClD/B,QAAAA,SAAS,EAAEH,aAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,aAAM,CAACC,SAAS,CAACM,QAAQ,CAAC2B,QAAQ;AAC3D1B,QAAAA,iBAAiB,EAAER,aAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,UAAA;OACZ,CAAA;AACH,IAAA,KAAK,UAAU;MACb,OAAO;AACLb,QAAAA,IAAI,EAAEsC,kBAAY;AAClBpC,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACmC,QAAQ;AAClDjC,QAAAA,SAAS,EAAEH,aAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,aAAM,CAACC,SAAS,CAACM,QAAQ,CAAC6B,QAAQ;AAC3D5B,QAAAA,iBAAiB,EAAER,aAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,iBAAA;OACZ,CAAA;AACH,IAAA,KAAK,gBAAgB;MACnB,OAAO;AACLb,QAAAA,IAAI,EAAEc,aAAO;AACbZ,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACa,KAAK;AAC/CX,QAAAA,SAAS,EAAEH,aAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,aAAM,CAACC,SAAS,CAACM,QAAQ,CAACO,KAAK;AACxDN,QAAAA,iBAAiB,EAAER,aAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,QAAQ;AACjBC,QAAAA,SAAS,EAAE,SAAA;OACZ,CAAA;AACH,IAAA,KAAK,iBAAiB;MACpB,OAAO;AACLb,QAAAA,IAAI,EAAEgC,eAAS;AACf9B,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACa,KAAK;AAC/CX,QAAAA,SAAS,EAAEH,aAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,aAAM,CAACC,SAAS,CAACM,QAAQ,CAACO,KAAK;AACxDN,QAAAA,iBAAiB,EAAER,aAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,QAAA;OACZ,CAAA;AACH,IAAA,KAAK,MAAM;MACT,OAAO;QACLb,IAAI,EAAEL,yBAAK,CAAC6C,QAAQ;AACpBtC,QAAAA,eAAe,EAAEC,aAAM,CAACI,KAAK,CAACkC,IAAI;AAClCnC,QAAAA,SAAS,EAAEH,aAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,aAAM,CAACI,KAAK,CAACC,KAAK;AAC3CG,QAAAA,iBAAiB,EAAER,aAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,EAAA;OACZ,CAAA;AACH,IAAA,KAAK,SAAS;AACZ,MAAA,MAAM6B,KAAK,CAEV,wEAAA,CAAA,CAAA;AACH,IAAA,KAAK,MAAM;AACT,MAAA,MAAMA,KAAK,CAEV,oEAAA,CAAA,CAAA;AACH,IAAA,KAAK,KAAK;AACR,MAAA,MAAMA,KAAK,CAEV,gEAAA,CAAA,CAAA;AACH,IAAA,KAAK,MAAM;AACT,MAAA,MAAMA,KAAK,CAEV,iEAAA,CAAA,CAAA;AACH,IAAA;MACE,MAAMA,KAAK,CAAC,qDAAqD,CAAC,CAAA;AAAC,GAAA;AAEzE,CAAC;;;AC7MYC,IAAAA,SAAS,GAA6B,SAAtCA,SAAS,CASjB,IAAA,EAAA;AAAA,EAAA,IAAA,eAAA,EAAA,WAAA,CAAA;EAAA,IARHC,QAAQ,QAARA,QAAQ;AACRrD,IAAAA,SAAS,QAATA,SAAS;AAAA,IAAA,UAAA,GAAA,IAAA,CACTsD,KAAK;AAALA,IAAAA,KAAK,2BAAG,MAAM,GAAA,UAAA;AAAA,IAAA,cAAA,GAAA,IAAA,CACdzC,SAAS;AAATA,IAAAA,SAAS,+BAAG,MAAM,GAAA,cAAA;AAClB0C,IAAAA,KAAK,QAALA,KAAK;AAAA,IAAA,mBAAA,GAAA,IAAA,CACLC,cAAc;AAAdA,IAAAA,cAAc,oCAAG,OAAO,GAAA,mBAAA;AAAA,IAAA,YAAA,GAAA,IAAA,CACxBC,OAAO;AAAPA,IAAAA,OAAO,6BAAGC,SAAS,GAAA,YAAA;IAChBxD,IAAI,GAAA,6BAAA,CAAA,IAAA,EAAAC,WAAA,CAAA,CAAA;EAEP,IAAMwD,UAAU,GAAGC,kBAAW,EAAE,CAAA;AAChC,EAAA,IAAMC,UAAU,GAAGJ,OAAO,GAAG,IAAI,GAAG,KAAK,CAAA;AACzC,EAAA,IAAMK,cAAc,GAAGjD,SAAS,KAAK,MAAM,CAAA;AAC3C,EAAA,IAAMkD,UAAU,GAAGT,KAAK,KAAK,MAAM,CAAA;AACnC,EAAA,IAAMU,MAAM,GAAGC,YAAM,CAAiB,IAAI,CAAC,CAAA;EAC3C,IAAMC,gBAAgB,GAAG9D,yBAAK,CAAC+D,QAAQ,CAACC,KAAK,CAACf,QAAQ,CAAC,CAAA;EACvD,IAOI9C,kBAAAA,GAAAA,iBAAiB,CAACM,SAAS,CAAC;AAN9BJ,IAAAA,IAAI,sBAAJA,IAAI;AACJS,IAAAA,uBAAuB,sBAAvBA,uBAAuB;AACvBE,IAAAA,iBAAiB,sBAAjBA,iBAAiB;AACjBT,IAAAA,eAAe,sBAAfA,eAAe;AACfI,IAAAA,SAAS,sBAATA,SAAS;AACTO,IAAAA,SAAS,sBAATA,SAAS,CAAA;AAGX+C,EAAAA,eAAS,CAAC,YAAK;AACb,IAAA,IAAIP,cAAc,EAAE;AAAA,MAAA,IAAA,eAAA,EAAA,gBAAA,CAAA;AAClB,MAAA,CAAA,eAAA,GAAAE,MAAM,CAACM,OAAO,KAAd,IAAA,GAAA,KAAA,CAAA,GAAA,eAAA,CAAgBC,KAAK,CAACC,WAAW,CAC/B,oBAAoB,EACpBb,UAAU,GAAGzC,uBAAuB,GAAGP,eAAe,CACvD,CAAA;AACD,MAAA,CAAA,gBAAA,GAAAqD,MAAM,CAACM,OAAO,KAAd,IAAA,GAAA,KAAA,CAAA,GAAA,gBAAA,CAAgBC,KAAK,CAACC,WAAW,CAC/B,cAAc,EACdb,UAAU,GAAGvC,iBAAiB,GAAGL,SAAS,CAC3C,CAAA;AACF,KAAA;GACF,EAAE,CAACiD,MAAM,CAACM,OAAO,EAAE3D,eAAe,EAAEI,SAAS,CAAC,CAAC,CAAA;AAEhD,EAAA,IAAM0D,qBAAqB,GACzBrE,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA,QAAA,CAAA;AACEL,IAAAA,SAAS,EAAEM,8BAAU,CAAC,gBAAgB,EAAE;AACtC,MAAA,0BAA0B,EAAEuD,UAAU;AACtC,MAAA,uBAAuB,EAAEE,UAAU;MACnC,8BAA8B,EAAET,KAAK,KAAK,OAAO;AACjD,MAAA,2BAA2B,EAAEQ,cAAc;MAC3C,+BAA+B,EAC7BI,gBAAgB,GAAG,CAAC,IAAKJ,cAAc,IAAII,gBAAgB,GAAG,CAAE;AAClElE,MAAAA,SAAS,EAATA,SAAAA;AACD,KAAA,CAAC;AACF0E,IAAAA,GAAG,EAAEV,MAAAA;AAAM,GAAA,EACP9D,IAAI,EAAA;AAEN,IAAA,YAAA,EAAAA,CAAAA,eAAAA,GAAAA,IAAI,CAAC,YAAY,CAAC,KAAA,IAAA,GAAA,eAAA,GAAIoB,SAAS,IAAIyC,UAAU,GAAA,GAAA,GAAOT,KAAK,GAAK,EAAE,CAAC;AAEnEqB,IAAAA,IAAI,EAAC,KAAA;AAAK,GAAA,CAAA,EAEVvE,yBAAA,CAAAC,aAAA,CAACI,IAAI,EAAe;AAAA,IAAA,aAAA,EAAA,IAAA;GAAA,CAAA,EACnB4C,QAAQ,EACRQ,UAAU,IACTzD,yBAAQ,CAAAC,aAAA,CAAA,QAAA,EAAA;AAAAuE,IAAAA,OAAO,EAAEnB,OAAO;AAAEzD,IAAAA,SAAS,EAAC,8BAAA;AAA8B,GAAA,EAChEI,yBAAA,CAAAC,aAAA,CAACwE,oBAAc,EAAA;AAACC,IAAAA,MAAM,EAAA,IAAA;GAAA,CAAG,CAE5B,EACAf,UAAU,IACT3D,yBAAM,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAAL,IAAAA,SAAS,EAAC,uBAAA;GAAuB,EACpCsD,KAAK,KAAK,MAAM,IACflD,yBAAA,CAAAC,aAAA,CAAC0E,wBAAkB,EAAA;AAAA,IAAA,aAAA,EAAA,IAAA;AAEjB/E,IAAAA,SAAS,EAAC,iCAAA;GAAiC,CAE9C,EACAsD,KAAK,KAAK,OAAO,IAChBlD,yBAAA,CAAAC,aAAA,CAAC2E,yBAAmB,EAAA;AAAA,IAAA,aAAA,EAAA,IAAA;AAElBhF,IAAAA,SAAS,EAAC,kCAAA;GAAkC,CAE/C,EACAsD,KAAK,KAAK,SAAS,IAClBlD,yBAAA,CAAAC,aAAA,CAAC4E,+BAAyB,EAExB;AAAA,IAAA,aAAA,EAAA,IAAA;AAAAjF,IAAAA,SAAS,EAAC,wCAAA;IAEb,CAEJ,CAEJ,CAAA;AAED,EAAA,IAAMkF,KAAK,GACT9E,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEL,IAAAA,SAAS,EAAEM,8BAAU,CAAC,uBAAuB,GAChBkD,WAAAA,GAAAA,EAAAA,EAAAA,WAAAA,CAAAA,yBAAAA,GAAAA,cAAc,CAAKD,GAAAA,KAAK,EACxBC,WAAAA,CAAAA,yBAAAA,GAAAA,cAAc,GACvCD,cAAAA,CAAAA,GAAAA,KAAK,IAAIQ,UAAU,EAAA,WAAA,EAAA;GAGtB,EAAAR,KAAK,CAET,CAAA;AAED,EAAA,IAAIA,KAAK,EAAE;AAAA,IAAA,IAAA,YAAA,CAAA;AACT,IAAA,OACEnD,yBACE,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAAL,MAAAA,SAAS,EAAEM,8BAAU,CAAC,yBAAyB,GACDkD,YAAAA,GAAAA,EAAAA,EAAAA,YAAAA,CAAAA,0CAAAA,GAAAA,cAAc,IAAKD,KAAK,EAAA,YAAA,EAAA;AACpE,KAAA,EAEDkB,qBAAqB,EACrBS,KAAK,CACF,CAAA;AAET,GAAA;AAED,EAAA,OAAOT,qBAAqB,CAAA;AAC9B;;;AC1IaU,IAAAA,OAAO,GAA2B,SAAlCA,OAAO,CAMf,IAAA,EAAA;AAAA,EAAA,IAAA,WAAA,CAAA;EAAA,IALHC,KAAK,QAALA,KAAK;AAAA,IAAA,cAAA,GAAA,IAAA,CACLC,SAAS;AAATA,IAAAA,SAAS,+BAAG,YAAY,GAAA,cAAA;AACxBhE,IAAAA,OAAO,QAAPA,OAAO;AACPrB,IAAAA,SAAS,QAATA,SAAS;IACNE,IAAI,GAAA,6BAAA,CAAA,IAAA,EAAAC,WAAA,CAAA,CAAA;AAEP,EAAA,OACEC;AACEJ,IAAAA,SAAS,EAAEM,8BAAU,CAAC,cAAc,EAAEN,SAAS,GAAA,WAAA,GAAA,EAAA,EAAA,WAAA,CAAA,gBAAA,GAC3BqB,OAAO,CAAA,GAAKA,OAAO,EAAA,WAAA,CAAA,gBAAA,GACnBgE,SAAS,CAAA,GAAKA,SAAS,EACzC,WAAA,EAAA;AACFd,IAAAA,KAAK,EAAE;AAAE5D,MAAAA,eAAe,EAAEyE,KAAAA;AAAK,KAAA;AAAE,GAAA,EAC7BlF,IAAI,CACR,CAAA,CAAA;AAEN;;;ACIaoF,IAAAA,OAAO,GAA2B,SAAlCA,OAAO,CAWf,IAAA,EAAA;EAAA,IAVHD,SAAS,QAATA,SAAS;AACThE,IAAAA,OAAO,QAAPA,OAAO;AACP+D,IAAAA,KAAK,QAALA,KAAK;AACLG,IAAAA,UAAU,QAAVA,UAAU;AACVC,IAAAA,QAAQ,QAARA,QAAQ;AAAA,IAAA,cAAA,GAAA,IAAA,CACRC,SAAS;AAATA,IAAAA,SAAS,+BAAG,IAAI,GAAA,cAAA;AAAA,IAAA,aAAA,GAAA,IAAA,CAChBC,QAAQ;AAARA,IAAAA,QAAQ,8BAAG,IAAI,GAAA,aAAA;AAAA,IAAA,aAAA,GAAA,IAAA,CACfC,QAAQ;AAARA,IAAAA,QAAQ,8BAAG,IAAI,GAAA,aAAA;AACf3F,IAAAA,SAAS,QAATA,SAAS;IACNE,IAAI,GAAA,6BAAA,CAAA,IAAA,EAAAC,WAAA,CAAA,CAAA;AAEP,EAAA,OACEC;AACEJ,IAAAA,SAAS,EAAEM,8BAAU,CAACN,SAAS,EAAE,cAAc,EAAE,CAC/C;MAAE,wBAAwB,EAAEqF,SAAS,KAAK,UAAA;AAAY,KAAA,EACtD;MAAE,0BAA0B,EAAEA,SAAS,KAAK,YAAA;AAAc,KAAA,CAC3D,CAAA;GACGnF,EAAAA,IAAI,GAEPuF,SAAS,IACRrF,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEL,IAAAA,SAAS,EAAuB,qBAAA;AAChCuE,IAAAA,KAAK,EAAE;MAAE5D,eAAe,EAAE4E,UAAU,IAAIH,KAAAA;AAAK,KAAA;IAEhD,EAEAO,QAAQ,IACPvF,yBAAC,CAAAC,aAAA,CAAA8E,OAAO;AACNnF,IAAAA,SAAS,EAAsB,oBAAA;AAC/BqF,IAAAA,SAAS,EAAEA,SAAS;AACpBD,IAAAA,KAAK,EAAEA,KAAK;AACZ/D,IAAAA,OAAO,EAAEA,OAAAA;GAAO,CAEnB,EAEAqE,QAAQ,IACPtF,yBACE,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAAL,IAAAA,SAAS,EAAsB,oBAAA;AAC/BuE,IAAAA,KAAK,EAAE;MAAE5D,eAAe,EAAE6E,QAAQ,IAAIJ,KAAAA;AAAK,KAAA;IAE9C,CACG,CAAA;AAEV;;;AChEaQ,IAAAA,SAAS,GAA6B,SAAtCA,SAAS,CAKjB,IAAA,EAAA;EAAA,IAJH5F,SAAS,QAATA,SAAS;AACTa,IAAAA,SAAS,QAATA,SAAS;AACTwE,IAAAA,SAAS,QAATA,SAAS;IACNnF,IAAI,GAAA,6BAAA,CAAA,IAAA,EAAAC,WAAA,CAAA,CAAA;EAEP,IACEI,kBAAAA,GAAAA,iBAAiB,CAACM,SAAS,CAAC;AADtBF,IAAAA,eAAe,sBAAfA,eAAe;AAAEO,IAAAA,uBAAuB,sBAAvBA,uBAAuB;AAAEG,IAAAA,OAAO,sBAAPA,OAAO,CAAA;EAEzD,IAAMsC,UAAU,GAAGC,kBAAW,EAAE,CAAA;AAEhC,EAAA,OACExD,yBAAA,CAAAC,aAAA,CAACiF,OAAO,EAAA,QAAA,CAAA;AACND,IAAAA,SAAS,EAAEA,SAAS;AACpBhE,IAAAA,OAAO,EAAEA,OAAO;AAChB+D,IAAAA,KAAK,EAAEzB,UAAU,GAAGzC,uBAAuB,GAAGP,eAAe;AAC7DX,IAAAA,SAAS,EAAEA,SAAAA;AAAS,GAAA,EAChBE,IAAI,CACR,CAAA,CAAA;AAEN;;;ACTa2F,IAAAA,YAAY,GAAgC,SAA5CA,YAAY,CAOpB,IAAA,EAAA;EAAA,IANH7F,SAAS,QAATA,SAAS;AACTqD,IAAAA,QAAQ,QAARA,QAAQ;AAAA,IAAA,mBAAA,GAAA,IAAA,CACRG,cAAc;AAAdA,IAAAA,cAAc,oCAAG,OAAO,GAAA,mBAAA;AACxB3C,IAAAA,SAAS,QAATA,SAAS;AACTd,IAAAA,IAAI,QAAJA,IAAI;IACDG,IAAI,GAAA,6BAAA,CAAA,IAAA,EAAA,SAAA,CAAA,CAAA;EAEP,IACEK,kBAAAA,GAAAA,iBAAiB,CAACM,SAAS,CAAC;AADtBF,IAAAA,eAAe,sBAAfA,eAAe;AAAEO,IAAAA,uBAAuB,sBAAvBA,uBAAuB;AAAET,IAAAA,IAAI,sBAAJA,IAAI,CAAA;AAEtD,EAAA,OACEL,yBAAA,CAAAC,aAAA,CAACyF,WAAM,EAAA,QAAA,CAAA;AACL9F,IAAAA,SAAS,EAAEA,SAAS;AACpBwD,IAAAA,cAAc,EAAEA,cAAc;AAC9B4B,IAAAA,KAAK,EAAEzE,eAAe;AACtBoF,IAAAA,aAAa,EAAE7E,uBAAuB;IACtC8E,IAAI,EAAE5F,yBAAC,CAAAC,aAAA,CAAAI,IAAI,OAAG;AACdV,IAAAA,IAAI,EAAEA,IAAAA;GACFG,EAAAA,IAAI,CAEPmD,EAAAA,QAAQ,CACF,CAAA;AAEb;;ACjDA4C,4BAAsB,CAAC,QAAQ,CAAC;;;;;;;;;"}
1
+ {"version":3,"file":"travel.cjs.development.js","sources":["../src/TravelHeader.tsx","../src/utils.ts","../src/TravelTag.tsx","../src/LegLine.tsx","../src/LegBone.tsx","../src/TravelLeg.tsx","../src/TravelSwitch.tsx","../src/index.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport './TravelHeader.scss';\n\nexport type TravelHeaderProps = {\n /** HTML-elementet eller React-komponenten som lager elementet\n * @default 'div'\n */\n as?: string | React.ElementType;\n /** Destinasjonen man reiser fra */\n from: React.ReactNode;\n /** Destinasjonen man reiser til */\n to: React.ReactNode;\n /**Størrelsen på komponenten\n * @default 'large'\n */\n size?: 'large' | 'medium';\n /** Plassere til og fra på samme linje */\n noWrap?: boolean;\n /**Ekstra klassenavn */\n className?: string;\n [key: string]: any;\n};\n\nexport const TravelHeader: React.FC<TravelHeaderProps> = ({\n as: Element = 'div',\n from,\n to,\n size = 'large',\n className,\n noWrap,\n ...rest\n}) => {\n return (\n <Element\n className={classNames('eds-travel-header', className, {\n 'eds-travel-header--large': size === 'large',\n 'eds-travel-header--medium': size === 'medium',\n 'eds-travel-header--no-wrap': noWrap,\n })}\n aria-label={`Fra ${from}, til ${to}`}\n {...rest}\n >\n <span className=\"eds-travel-header__from\">{from}</span>\n <span className=\"eds-travel-header__to\">{to}</span>\n </Element>\n );\n};\n","import React from 'react';\nimport { colors } from '@entur/tokens';\nimport {\n BusIcon,\n FerryIcon,\n CarferryIcon,\n TramIcon,\n PlaneIcon,\n TrainIcon,\n BicycleIcon,\n MobilityIcon,\n MetroIcon,\n HelicopterIcon,\n FunicularIcon,\n CablewayIcon,\n TaxiIcon,\n WalkIcon,\n} from '@entur/icons';\n\nimport type { IconProps } from '@entur/icons';\n\nexport type Transport =\n | 'metro'\n | 'bus'\n | 'plane'\n | 'helicopter'\n | 'tram'\n | 'funicular'\n | 'cableway'\n | 'taxi'\n | 'bicycle'\n | 'walk'\n | 'train'\n | 'ferry'\n | 'carferry'\n | 'mobility'\n | 'airportLinkBus'\n | 'airportLinkRail'\n | 'rail'\n | 'water'\n | 'air'\n | 'none';\n\ntype transportStyleResult = {\n Icon: React.FC<IconProps>;\n backgroundColor: string;\n textColor: string;\n contrastBackgroundColor: string;\n contrastTextColor: string;\n pattern: 'line' | 'wave' | 'dashed' | 'dotted';\n ariaLabel: string;\n};\n\nexport const getTransportStyle = (mode: string): transportStyleResult => {\n switch (mode) {\n case 'metro':\n return {\n Icon: MetroIcon,\n backgroundColor: colors.transport.default.metro,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.metro,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'T-bane',\n };\n case 'bus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.bus,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.bus,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Buss',\n };\n case 'plane':\n case 'air':\n return {\n Icon: PlaneIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Fly',\n };\n case 'helicopter':\n return {\n Icon: HelicopterIcon,\n backgroundColor: colors.transport.default.helicopter,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.helicopter,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Helikopter',\n };\n case 'tram':\n return {\n Icon: TramIcon,\n backgroundColor: colors.transport.default.tram,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.tram,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Trikk',\n };\n case 'funicular':\n return {\n Icon: FunicularIcon,\n backgroundColor: colors.transport.default.funicular,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.funicular,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Taubane',\n };\n case 'cableway':\n return {\n Icon: CablewayIcon,\n backgroundColor: colors.transport.default.cableway,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.cableway,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Gondol',\n };\n case 'taxi':\n return {\n Icon: TaxiIcon,\n backgroundColor: colors.transport.default.taxi,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.taxi,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Taxi',\n };\n case 'bicycle':\n return {\n Icon: BicycleIcon,\n backgroundColor: colors.transport.default.bicycle,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.bicycle,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Sykkel',\n };\n case 'walk':\n return {\n Icon: WalkIcon,\n backgroundColor: colors.transport.default.walk,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.walk,\n contrastTextColor: colors.brand.white,\n pattern: 'dotted',\n ariaLabel: 'Gange',\n };\n case 'train':\n case 'rail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.train,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.train,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Tog',\n };\n case 'ferry':\n case 'water':\n return {\n Icon: FerryIcon,\n backgroundColor: colors.transport.default.ferry,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.ferry,\n contrastTextColor: colors.brand.white,\n pattern: 'wave',\n ariaLabel: 'Ferge',\n };\n case 'carferry':\n return {\n Icon: CarferryIcon,\n backgroundColor: colors.transport.default.carferry,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.carferry,\n contrastTextColor: colors.brand.white,\n pattern: 'wave',\n ariaLabel: 'Bilferge',\n };\n case 'mobility':\n return {\n Icon: MobilityIcon,\n backgroundColor: colors.transport.default.mobility,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.mobility,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'El-sparkesykkel',\n };\n case 'airportLinkBus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Flybuss',\n };\n case 'airportLinkRail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Flytog',\n };\n case 'none':\n return {\n Icon: React.Fragment,\n backgroundColor: colors.brand.blue,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.brand.white,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: '',\n };\n case 'scooter':\n throw Error(\n `transport type 'scooter' is deprecated: Please use 'mobility' instead.`,\n );\n case 'bike':\n throw Error(\n `transport type 'bike' is deprecated: Please use 'bicycle' instead.`,\n );\n case 'car':\n throw Error(\n `transport type 'car' is deprecated: Please use 'taxi' instead.`,\n );\n case 'foot':\n throw Error(\n `transport type 'foot' is deprecated: Please use 'walk' instead.`,\n );\n default:\n throw Error('Please select a transport for the Travel component.');\n }\n};\n","import React, { useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoIcon,\n ValidationErrorIcon,\n ValidationExclamationIcon,\n} from '@entur/icons';\nimport { useContrast } from '@entur/layout';\n\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nimport './TravelTag.scss';\n\nexport type TravelTagProps = {\n /** Callback som kalles for når man skal lukke TravelTag-en\n * @default undefined\n */\n onClose?: () => void;\n /** Innholdet inne i TravelTag-en */\n children?: React.ReactNode;\n /**Ekstra klassenavn */\n className?: string;\n /** Legger til et Valideringsikon i TravelTagen for å signalisere avvik, informasjon e.l.\n * @default \"none\"\n */\n alert?: 'none' | 'error' | 'warning' | 'info';\n /** Legger til farge og ikon tilpasset valgt transportmiddel */\n transport?: Transport;\n /** Element ved siden av eller under TravelTag. */\n label?: React.ReactNode;\n /** Posisjonen til label-en i forhold til TravelTag-en\n * @default \"right\"\n */\n labelPlacement?: 'bottom' | 'right';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelTag: React.FC<TravelTagProps> = ({\n children,\n className,\n alert = 'none',\n transport = 'none',\n label,\n labelPlacement = 'right',\n onClose = undefined,\n ...rest\n}) => {\n const isContrast = useContrast();\n const isClosable = onClose ? true : false;\n const transportIsSet = transport !== 'none';\n const alertIsSet = alert !== 'none';\n const tagRef = useRef<HTMLDivElement>(null);\n const numberOfChildren = React.Children.count(children);\n const {\n Icon,\n contrastBackgroundColor,\n contrastTextColor,\n backgroundColor,\n textColor,\n ariaLabel,\n } = getTransportStyle(transport);\n\n useEffect(() => {\n if (transportIsSet) {\n tagRef.current?.style.setProperty(\n '--background-color',\n isContrast ? contrastBackgroundColor : backgroundColor,\n );\n tagRef.current?.style.setProperty(\n '--text-color',\n isContrast ? contrastTextColor : textColor,\n );\n }\n }, [tagRef.current, backgroundColor, textColor]);\n\n const TravelTagWithoutLabel: JSX.Element = (\n <div\n className={classNames('eds-travel-tag', {\n 'eds-travel-tag--closable': isClosable,\n 'eds-travel-tag--alert': alertIsSet,\n 'eds-travel-tag--alert--error': alert === 'error',\n 'eds-travel-tag--transport': transportIsSet,\n 'eds-travel-tag--icon-and-text':\n numberOfChildren > 1 || (transportIsSet && numberOfChildren > 0),\n className,\n })}\n ref={tagRef}\n {...rest}\n aria-label={\n rest['aria-label'] ?? ariaLabel + (alertIsSet ? ` ${alert}` : '')\n }\n role=\"img\"\n >\n <Icon aria-hidden />\n {children}\n {isClosable && (\n <button onClick={onClose} className=\"eds-travel-tag__close-button\">\n <CloseSmallIcon inline />\n </button>\n )}\n {alertIsSet && (\n <span className=\"eds-travel-tag__alert\">\n {alert === 'info' && (\n <ValidationInfoIcon\n aria-hidden\n className=\"eds-travel-tag__alert-info-icon\"\n />\n )}\n {alert === 'error' && (\n <ValidationErrorIcon\n aria-hidden\n className=\"eds-travel-tag__alert-error-icon\"\n />\n )}\n {alert === 'warning' && (\n <ValidationExclamationIcon\n aria-hidden\n className=\"eds-travel-tag__alert-exclamation-icon\"\n />\n )}\n </span>\n )}\n </div>\n );\n\n const Label: JSX.Element = (\n <div\n className={classNames('eds-travel-tag__label', {\n [`eds-travel-tag__label--${labelPlacement}`]: label,\n [`eds-travel-tag__label--${labelPlacement}--with-alert`]:\n label && alertIsSet,\n })}\n >\n {label}\n </div>\n );\n\n if (label) {\n return (\n <div\n className={classNames('eds-travel-tag__wrapper', {\n [`eds-travel-tag__wrapper--label-position-${labelPlacement}`]: label,\n })}\n >\n {TravelTagWithoutLabel}\n {Label}\n </div>\n );\n }\n\n return TravelTagWithoutLabel;\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport './LegLine.scss';\n\nexport type LegLineProps = {\n /** Farge på LegLine'n */\n color: string;\n /** Retningen til LegLine */\n direction: 'horizontal' | 'vertical';\n /** Hvilket linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegLine: React.FC<LegLineProps> = ({\n color,\n direction = 'horizontal',\n pattern,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames('eds-leg-line', className, {\n [`eds-leg-line--${pattern}`]: pattern,\n [`eds-leg-line--${direction}`]: direction,\n })}\n style={{ backgroundColor: color }}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport { LegLine } from './LegLine';\nimport './LegBone.scss';\n\nexport type LegBoneProps = {\n /** Retning på komponenten */\n direction: 'horizontal' | 'vertical';\n /** Hvilke linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Farge på linja */\n color: string;\n /** Farge på startpunktet\n * @default Verdien til color\n */\n startColor?: string;\n /** Farge på endepunktet\n * @default Verdien til color\n */\n endColor?: string;\n /** Vis startpunkt\n * @default true\n */\n showStart?: boolean;\n /** Vis linke\n * @default true\n */\n showLine?: boolean;\n /** Vis endepunkt\n * @default true\n */\n showStop?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegBone: React.FC<LegBoneProps> = ({\n direction,\n pattern,\n color,\n startColor,\n endColor,\n showStart = true,\n showStop = true,\n showLine = true,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames(className, 'eds-leg-bone', [\n { 'eds-leg-bone--vertical': direction === 'vertical' },\n { 'eds-leg-bone--horizontal': direction === 'horizontal' },\n ])}\n {...rest}\n >\n {showStart && (\n <div\n className={`eds-leg-bone__start`}\n style={{ backgroundColor: startColor || color }}\n />\n )}\n\n {showLine && (\n <LegLine\n className={`eds-leg-bone__line`}\n direction={direction}\n color={color}\n pattern={pattern}\n />\n )}\n\n {showStop && (\n <div\n className={`eds-leg-bone__stop`}\n style={{ backgroundColor: endColor || color }}\n />\n )}\n </div>\n );\n};\n","import React from 'react';\nimport { useContrast } from '@entur/layout';\nimport { LegBone } from './LegBone';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelLegProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Hviklen type reise som skal vises riktig farge og linjetype */\n transport: Transport;\n /** Retningen på komponenten */\n direction: 'horizontal' | 'vertical';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelLeg: React.FC<TravelLegProps> = ({\n className,\n transport,\n direction,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, pattern } =\n getTransportStyle(transport);\n const isContrast = useContrast();\n\n return (\n <LegBone\n direction={direction}\n pattern={pattern}\n color={isContrast ? contrastBackgroundColor : backgroundColor}\n className={className}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport { Switch } from '@entur/form';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelSwitchProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Om switch-en er checked eller ikke */\n checked?: boolean;\n /** Label for TravelSwitch-en. */\n children?: React.ReactNode;\n /** Posisjonen til label for TravelSwitch-en.\n * @default \"right\"\n */\n labelPlacement?: 'right' | 'bottom';\n /** Hvilken type reise som skal vises ikon og farge for */\n transport: Transport; // When adding a new submode, check https://enturas.atlassian.net/wiki/spaces/PUBLIC/pages/825393529/Norwegian+submodes+and+their+definitions for names\n /** Callback for når verdien endres */\n onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Størrelsen på Switch-en\n * @default \"medium\"\n */\n size?: 'medium' | 'large';\n} & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'>;\n\nexport const TravelSwitch: React.FC<TravelSwitchProps> = ({\n className,\n children,\n labelPlacement = 'right',\n transport,\n size,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, Icon } =\n getTransportStyle(transport);\n return (\n <Switch\n className={className}\n labelPlacement={labelPlacement}\n color={backgroundColor}\n contrastColor={contrastBackgroundColor}\n icon={<Icon />}\n size={size}\n {...rest}\n >\n {children}\n </Switch>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('travel');\n\nexport * from './TravelHeader';\nexport * from './TravelTag';\nexport * from './LegLine';\nexport * from './LegBone';\nexport * from './TravelLeg';\nexport * from './TravelSwitch';\n"],"names":["TravelHeader","as","Element","from","to","size","className","noWrap","rest","_excluded","React","createElement","classNames","getTransportStyle","mode","Icon","MetroIcon","backgroundColor","colors","transport","metro","textColor","brand","white","contrastBackgroundColor","contrast","contrastTextColor","pattern","ariaLabel","BusIcon","bus","PlaneIcon","plane","HelicopterIcon","helicopter","TramIcon","tram","FunicularIcon","funicular","CablewayIcon","cableway","TaxiIcon","taxi","BicycleIcon","bicycle","WalkIcon","walk","TrainIcon","train","FerryIcon","ferry","CarferryIcon","carferry","MobilityIcon","mobility","Fragment","blue","Error","TravelTag","children","alert","label","labelPlacement","onClose","undefined","isContrast","useContrast","isClosable","transportIsSet","alertIsSet","tagRef","useRef","numberOfChildren","Children","count","useEffect","current","style","setProperty","TravelTagWithoutLabel","ref","role","onClick","CloseSmallIcon","inline","ValidationInfoIcon","ValidationErrorIcon","ValidationExclamationIcon","Label","LegLine","color","direction","LegBone","startColor","endColor","showStart","showStop","showLine","TravelLeg","TravelSwitch","Switch","contrastColor","icon","warnAboutMissingStyles"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var r=require("@entur/utils"),e=require("react"),t=require("classnames"),o=require("@entur/icons"),a=require("@entur/layout"),l=require("@entur/tokens"),n=require("@entur/form");function c(r){return r&&"object"==typeof r&&"default"in r?r:{default:r}}var s=c(e),i=c(t);function d(){return d=Object.assign?Object.assign.bind():function(r){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(r[o]=t[o])}return r},d.apply(this,arguments)}function u(r,e){if(null==r)return{};var t,o,a={},l=Object.keys(r);for(o=0;o<l.length;o++)e.indexOf(t=l[o])>=0||(a[t]=r[t]);return a}var b=["as","from","to","size","className","noWrap"],p=function(r){switch(r){case"metro":return{Icon:o.MetroIcon,backgroundColor:l.colors.transport.default.metro,textColor:l.colors.brand.white,contrastBackgroundColor:l.colors.transport.contrast.metro,contrastTextColor:l.colors.brand.white,pattern:"line",ariaLabel:"T-bane"};case"bus":return{Icon:o.BusIcon,backgroundColor:l.colors.transport.default.bus,textColor:l.colors.brand.white,contrastBackgroundColor:l.colors.transport.contrast.bus,contrastTextColor:l.colors.brand.white,pattern:"dashed",ariaLabel:"Buss"};case"plane":case"air":return{Icon:o.PlaneIcon,backgroundColor:l.colors.transport.default.plane,textColor:l.colors.brand.white,contrastBackgroundColor:l.colors.transport.contrast.plane,contrastTextColor:l.colors.brand.white,pattern:"line",ariaLabel:"Fly"};case"helicopter":return{Icon:o.HelicopterIcon,backgroundColor:l.colors.transport.default.helicopter,textColor:l.colors.brand.white,contrastBackgroundColor:l.colors.transport.contrast.helicopter,contrastTextColor:l.colors.brand.white,pattern:"line",ariaLabel:"Helikopter"};case"tram":return{Icon:o.TramIcon,backgroundColor:l.colors.transport.default.tram,textColor:l.colors.brand.white,contrastBackgroundColor:l.colors.transport.contrast.tram,contrastTextColor:l.colors.brand.white,pattern:"line",ariaLabel:"Trikk"};case"funicular":return{Icon:o.FunicularIcon,backgroundColor:l.colors.transport.default.funicular,textColor:l.colors.brand.white,contrastBackgroundColor:l.colors.transport.contrast.funicular,contrastTextColor:l.colors.brand.white,pattern:"line",ariaLabel:"Taubane"};case"cableway":return{Icon:o.CablewayIcon,backgroundColor:l.colors.transport.default.cableway,textColor:l.colors.brand.white,contrastBackgroundColor:l.colors.transport.contrast.cableway,contrastTextColor:l.colors.brand.white,pattern:"line",ariaLabel:"Gondol"};case"taxi":return{Icon:o.TaxiIcon,backgroundColor:l.colors.transport.default.taxi,textColor:l.colors.brand.white,contrastBackgroundColor:l.colors.transport.contrast.taxi,contrastTextColor:l.colors.brand.white,pattern:"dashed",ariaLabel:"Taxi"};case"bicycle":return{Icon:o.BicycleIcon,backgroundColor:l.colors.transport.default.bicycle,textColor:l.colors.brand.white,contrastBackgroundColor:l.colors.transport.contrast.bicycle,contrastTextColor:l.colors.brand.white,pattern:"line",ariaLabel:"Sykkel"};case"walk":return{Icon:o.WalkIcon,backgroundColor:l.colors.transport.default.walk,textColor:l.colors.brand.white,contrastBackgroundColor:l.colors.transport.contrast.walk,contrastTextColor:l.colors.brand.white,pattern:"dotted",ariaLabel:"Gange"};case"train":case"rail":return{Icon:o.TrainIcon,backgroundColor:l.colors.transport.default.train,textColor:l.colors.brand.white,contrastBackgroundColor:l.colors.transport.contrast.train,contrastTextColor:l.colors.brand.white,pattern:"line",ariaLabel:"Tog"};case"ferry":case"water":return{Icon:o.FerryIcon,backgroundColor:l.colors.transport.default.ferry,textColor:l.colors.brand.white,contrastBackgroundColor:l.colors.transport.contrast.ferry,contrastTextColor:l.colors.brand.white,pattern:"wave",ariaLabel:"Ferge"};case"carferry":return{Icon:o.CarferryIcon,backgroundColor:l.colors.transport.default.carferry,textColor:l.colors.brand.white,contrastBackgroundColor:l.colors.transport.contrast.carferry,contrastTextColor:l.colors.brand.white,pattern:"wave",ariaLabel:"Bilferge"};case"mobility":return{Icon:o.MobilityIcon,backgroundColor:l.colors.transport.default.mobility,textColor:l.colors.brand.white,contrastBackgroundColor:l.colors.transport.contrast.mobility,contrastTextColor:l.colors.brand.white,pattern:"line",ariaLabel:"El-sparkesykkel"};case"airportLinkBus":return{Icon:o.BusIcon,backgroundColor:l.colors.transport.default.plane,textColor:l.colors.brand.white,contrastBackgroundColor:l.colors.transport.contrast.plane,contrastTextColor:l.colors.brand.white,pattern:"dashed",ariaLabel:"Flybuss"};case"airportLinkRail":return{Icon:o.TrainIcon,backgroundColor:l.colors.transport.default.plane,textColor:l.colors.brand.white,contrastBackgroundColor:l.colors.transport.contrast.plane,contrastTextColor:l.colors.brand.white,pattern:"line",ariaLabel:"Flytog"};case"none":return{Icon:s.default.Fragment,backgroundColor:l.colors.brand.blue,textColor:l.colors.brand.white,contrastBackgroundColor:l.colors.brand.white,contrastTextColor:l.colors.brand.white,pattern:"line",ariaLabel:""};case"scooter":throw Error("transport type 'scooter' is deprecated: Please use 'mobility' instead.");case"bike":throw Error("transport type 'bike' is deprecated: Please use 'bicycle' instead.");case"car":throw Error("transport type 'car' is deprecated: Please use 'taxi' instead.");case"foot":throw Error("transport type 'foot' is deprecated: Please use 'walk' instead.");default:throw Error("Please select a transport for the Travel component.")}},C=["children","className","alert","transport","label","labelPlacement","onClose"],f=["color","direction","pattern","className"],g=function(r){var e,t=r.color,o=r.direction,a=void 0===o?"horizontal":o,l=r.pattern,n=r.className,c=u(r,f);return s.default.createElement("div",d({className:i.default("eds-leg-line",n,(e={},e["eds-leg-line--"+l]=l,e["eds-leg-line--"+a]=a,e)),style:{backgroundColor:t}},c))},m=["direction","pattern","color","startColor","endColor","showStart","showStop","showLine","className"],h=function(r){var e=r.direction,t=r.pattern,o=r.color,a=r.startColor,l=r.endColor,n=r.showStart,c=void 0===n||n,b=r.showStop,p=void 0===b||b,C=r.showLine,f=void 0===C||C,h=r.className,v=u(r,m);return s.default.createElement("div",d({className:i.default(h,"eds-leg-bone",[{"eds-leg-bone--vertical":"vertical"===e},{"eds-leg-bone--horizontal":"horizontal"===e}])},v),c&&s.default.createElement("div",{className:"eds-leg-bone__start",style:{backgroundColor:a||o}}),f&&s.default.createElement(g,{className:"eds-leg-bone__line",direction:e,color:o,pattern:t}),p&&s.default.createElement("div",{className:"eds-leg-bone__stop",style:{backgroundColor:l||o}}))},v=["className","transport","direction"],w=["className","children","labelPlacement","transport","size"];r.warnAboutMissingStyles("travel"),exports.LegBone=h,exports.LegLine=g,exports.TravelHeader=function(r){var e=r.as,t=void 0===e?"div":e,o=r.from,a=r.to,l=r.size,n=void 0===l?"large":l,c=r.className,p=r.noWrap,C=u(r,b);return s.default.createElement(t,d({className:i.default("eds-travel-header",c,{"eds-travel-header--large":"large"===n,"eds-travel-header--medium":"medium"===n,"eds-travel-header--no-wrap":p}),"aria-label":"Fra "+o+", til "+a},C),s.default.createElement("span",{className:"eds-travel-header__from"},o),s.default.createElement("span",{className:"eds-travel-header__to"},a))},exports.TravelLeg=function(r){var e=r.className,t=r.transport,o=r.direction,l=u(r,v),n=p(t),c=n.backgroundColor,i=n.contrastBackgroundColor,b=n.pattern,C=a.useContrast();return s.default.createElement(h,d({direction:o,pattern:b,color:C?i:c,className:e},l))},exports.TravelSwitch=function(r){var e=r.className,t=r.children,o=r.labelPlacement,a=void 0===o?"right":o,l=r.transport,c=r.size,i=u(r,w),b=p(l);return s.default.createElement(n.Switch,d({className:e,labelPlacement:a,color:b.backgroundColor,contrastColor:b.contrastBackgroundColor,icon:s.default.createElement(b.Icon,null),size:c},i),t)},exports.TravelTag=function(r){var t,l,n=r.children,c=r.className,b=r.alert,f=void 0===b?"none":b,g=r.transport,m=void 0===g?"none":g,h=r.label,v=r.labelPlacement,w=void 0===v?"right":v,k=r.onClose,x=void 0===k?void 0:k,y=u(r,C),I=a.useContrast(),T=!!x,_="none"!==m,N="none"!==f,E=e.useRef(null),B=s.default.Children.count(n),L=p(m),P=L.Icon,S=L.contrastBackgroundColor,z=L.contrastTextColor,F=L.backgroundColor,q=L.textColor,O=L.ariaLabel;e.useEffect((function(){var r,e;_&&(null==(r=E.current)||r.style.setProperty("--background-color",I?S:F),null==(e=E.current)||e.style.setProperty("--text-color",I?z:q))}),[E.current,F,q]);var j,M=s.default.createElement("div",d({className:i.default("eds-travel-tag",{"eds-travel-tag--closable":T,"eds-travel-tag--alert":N,"eds-travel-tag--alert--error":"error"===f,"eds-travel-tag--transport":_,"eds-travel-tag--icon-and-text":B>1||_&&B>0,className:c}),ref:E},y,{"aria-label":null!=(t=y["aria-label"])?t:O+(N?" "+f:""),role:"img"}),s.default.createElement(P,{"aria-hidden":!0}),n,T&&s.default.createElement("button",{onClick:x,className:"eds-travel-tag__close-button"},s.default.createElement(o.CloseSmallIcon,{inline:!0})),N&&s.default.createElement("span",{className:"eds-travel-tag__alert"},"info"===f&&s.default.createElement(o.ValidationInfoIcon,{"aria-hidden":!0,className:"eds-travel-tag__alert-info-icon"}),"error"===f&&s.default.createElement(o.ValidationErrorIcon,{"aria-hidden":!0,className:"eds-travel-tag__alert-error-icon"}),"warning"===f&&s.default.createElement(o.ValidationExclamationIcon,{"aria-hidden":!0,className:"eds-travel-tag__alert-exclamation-icon"}))),H=s.default.createElement("div",{className:i.default("eds-travel-tag__label",(l={},l["eds-travel-tag__label--"+w]=h,l["eds-travel-tag__label--"+w+"--with-alert"]=h&&N,l))},h);return h?s.default.createElement("div",{className:i.default("eds-travel-tag__wrapper",(j={},j["eds-travel-tag__wrapper--label-position-"+w]=h,j))},M,H):M};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var r=require("@entur/utils"),o=require("react"),e=require("classnames"),t=require("@entur/icons"),a=require("@entur/layout"),n=require("@entur/tokens"),l=require("@entur/form");function s(){return s=Object.assign?Object.assign.bind():function(r){for(var o=1;o<arguments.length;o++){var e=arguments[o];for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(r[t]=e[t])}return r},s.apply(this,arguments)}function c(r,o){if(null==r)return{};var e,t,a={},n=Object.keys(r);for(t=0;t<n.length;t++)o.indexOf(e=n[t])>=0||(a[e]=r[e]);return a}var i=["as","from","to","size","className","noWrap"],d=function(r){switch(r){case"metro":return{Icon:t.MetroIcon,backgroundColor:n.colors.transport.default.metro,textColor:n.colors.brand.white,contrastBackgroundColor:n.colors.transport.contrast.metro,contrastTextColor:n.colors.brand.white,pattern:"line",ariaLabel:"T-bane"};case"bus":return{Icon:t.BusIcon,backgroundColor:n.colors.transport.default.bus,textColor:n.colors.brand.white,contrastBackgroundColor:n.colors.transport.contrast.bus,contrastTextColor:n.colors.brand.white,pattern:"dashed",ariaLabel:"Buss"};case"plane":case"air":return{Icon:t.PlaneIcon,backgroundColor:n.colors.transport.default.plane,textColor:n.colors.brand.white,contrastBackgroundColor:n.colors.transport.contrast.plane,contrastTextColor:n.colors.brand.white,pattern:"line",ariaLabel:"Fly"};case"helicopter":return{Icon:t.HelicopterIcon,backgroundColor:n.colors.transport.default.helicopter,textColor:n.colors.brand.white,contrastBackgroundColor:n.colors.transport.contrast.helicopter,contrastTextColor:n.colors.brand.white,pattern:"line",ariaLabel:"Helikopter"};case"tram":return{Icon:t.TramIcon,backgroundColor:n.colors.transport.default.tram,textColor:n.colors.brand.white,contrastBackgroundColor:n.colors.transport.contrast.tram,contrastTextColor:n.colors.brand.white,pattern:"line",ariaLabel:"Trikk"};case"funicular":return{Icon:t.FunicularIcon,backgroundColor:n.colors.transport.default.funicular,textColor:n.colors.brand.white,contrastBackgroundColor:n.colors.transport.contrast.funicular,contrastTextColor:n.colors.brand.white,pattern:"line",ariaLabel:"Taubane"};case"cableway":return{Icon:t.CablewayIcon,backgroundColor:n.colors.transport.default.cableway,textColor:n.colors.brand.white,contrastBackgroundColor:n.colors.transport.contrast.cableway,contrastTextColor:n.colors.brand.white,pattern:"line",ariaLabel:"Gondol"};case"taxi":return{Icon:t.TaxiIcon,backgroundColor:n.colors.transport.default.taxi,textColor:n.colors.brand.white,contrastBackgroundColor:n.colors.transport.contrast.taxi,contrastTextColor:n.colors.brand.white,pattern:"dashed",ariaLabel:"Taxi"};case"bicycle":return{Icon:t.BicycleIcon,backgroundColor:n.colors.transport.default.bicycle,textColor:n.colors.brand.white,contrastBackgroundColor:n.colors.transport.contrast.bicycle,contrastTextColor:n.colors.brand.white,pattern:"line",ariaLabel:"Sykkel"};case"walk":return{Icon:t.WalkIcon,backgroundColor:n.colors.transport.default.walk,textColor:n.colors.brand.white,contrastBackgroundColor:n.colors.transport.contrast.walk,contrastTextColor:n.colors.brand.white,pattern:"dotted",ariaLabel:"Gange"};case"train":case"rail":return{Icon:t.TrainIcon,backgroundColor:n.colors.transport.default.train,textColor:n.colors.brand.white,contrastBackgroundColor:n.colors.transport.contrast.train,contrastTextColor:n.colors.brand.white,pattern:"line",ariaLabel:"Tog"};case"ferry":case"water":return{Icon:t.FerryIcon,backgroundColor:n.colors.transport.default.ferry,textColor:n.colors.brand.white,contrastBackgroundColor:n.colors.transport.contrast.ferry,contrastTextColor:n.colors.brand.white,pattern:"wave",ariaLabel:"Ferge"};case"carferry":return{Icon:t.CarferryIcon,backgroundColor:n.colors.transport.default.carferry,textColor:n.colors.brand.white,contrastBackgroundColor:n.colors.transport.contrast.carferry,contrastTextColor:n.colors.brand.white,pattern:"wave",ariaLabel:"Bilferge"};case"mobility":return{Icon:t.MobilityIcon,backgroundColor:n.colors.transport.default.mobility,textColor:n.colors.brand.white,contrastBackgroundColor:n.colors.transport.contrast.mobility,contrastTextColor:n.colors.brand.white,pattern:"line",ariaLabel:"El-sparkesykkel"};case"airportLinkBus":return{Icon:t.BusIcon,backgroundColor:n.colors.transport.default.plane,textColor:n.colors.brand.white,contrastBackgroundColor:n.colors.transport.contrast.plane,contrastTextColor:n.colors.brand.white,pattern:"dashed",ariaLabel:"Flybuss"};case"airportLinkRail":return{Icon:t.TrainIcon,backgroundColor:n.colors.transport.default.plane,textColor:n.colors.brand.white,contrastBackgroundColor:n.colors.transport.contrast.plane,contrastTextColor:n.colors.brand.white,pattern:"line",ariaLabel:"Flytog"};case"none":return{Icon:o.Fragment,backgroundColor:n.colors.brand.blue,textColor:n.colors.brand.white,contrastBackgroundColor:n.colors.brand.white,contrastTextColor:n.colors.brand.white,pattern:"line",ariaLabel:""};case"scooter":throw Error("transport type 'scooter' is deprecated: Please use 'mobility' instead.");case"bike":throw Error("transport type 'bike' is deprecated: Please use 'bicycle' instead.");case"car":throw Error("transport type 'car' is deprecated: Please use 'taxi' instead.");case"foot":throw Error("transport type 'foot' is deprecated: Please use 'walk' instead.");default:throw Error("Please select a transport for the Travel component.")}},u=["children","className","alert","transport","label","labelPlacement","onClose"],b=["color","direction","pattern","className"],p=function(r){var t,a=r.color,n=r.direction,l=void 0===n?"horizontal":n,i=r.pattern,d=r.className,u=c(r,b);return o.createElement("div",s({className:e("eds-leg-line",d,(t={},t["eds-leg-line--"+i]=i,t["eds-leg-line--"+l]=l,t)),style:{backgroundColor:a}},u))},C=["direction","pattern","color","startColor","endColor","showStart","showStop","showLine","className"],g=function(r){var t=r.direction,a=r.pattern,n=r.color,l=r.startColor,i=r.endColor,d=r.showStart,u=void 0===d||d,b=r.showStop,g=void 0===b||b,m=r.showLine,h=void 0===m||m,v=r.className,w=c(r,C);return o.createElement("div",s({className:e(v,"eds-leg-bone",[{"eds-leg-bone--vertical":"vertical"===t},{"eds-leg-bone--horizontal":"horizontal"===t}])},w),u&&o.createElement("div",{className:"eds-leg-bone__start",style:{backgroundColor:l||n}}),h&&o.createElement(p,{className:"eds-leg-bone__line",direction:t,color:n,pattern:a}),g&&o.createElement("div",{className:"eds-leg-bone__stop",style:{backgroundColor:i||n}}))},m=["className","transport","direction"],h=["className","children","labelPlacement","transport","size"];r.warnAboutMissingStyles("travel"),exports.LegBone=g,exports.LegLine=p,exports.TravelHeader=function(r){var t=r.as,a=void 0===t?"div":t,n=r.from,l=r.to,d=r.size,u=void 0===d?"large":d,b=r.className,p=r.noWrap,C=c(r,i);return o.createElement(a,s({className:e("eds-travel-header",b,{"eds-travel-header--large":"large"===u,"eds-travel-header--medium":"medium"===u,"eds-travel-header--no-wrap":p}),"aria-label":"Fra "+n+", til "+l},C),o.createElement("span",{className:"eds-travel-header__from"},n),o.createElement("span",{className:"eds-travel-header__to"},l))},exports.TravelLeg=function(r){var e=r.className,t=r.transport,n=r.direction,l=c(r,m),i=d(t),u=i.backgroundColor,b=i.contrastBackgroundColor,p=i.pattern,C=a.useContrast();return o.createElement(g,s({direction:n,pattern:p,color:C?b:u,className:e},l))},exports.TravelSwitch=function(r){var e=r.className,t=r.children,a=r.labelPlacement,n=void 0===a?"right":a,i=r.transport,u=r.size,b=c(r,h),p=d(i);return o.createElement(l.Switch,s({className:e,labelPlacement:n,color:p.backgroundColor,contrastColor:p.contrastBackgroundColor,icon:o.createElement(p.Icon,null),size:u},b),t)},exports.TravelTag=function(r){var n,l,i=r.children,b=r.className,p=r.alert,C=void 0===p?"none":p,g=r.transport,m=void 0===g?"none":g,h=r.label,v=r.labelPlacement,w=void 0===v?"right":v,k=r.onClose,f=void 0===k?void 0:k,x=c(r,u),y=a.useContrast(),I=!!f,T="none"!==m,_="none"!==C,N=o.useRef(null),E=o.Children.count(i),B=d(m),L=B.Icon,P=B.contrastBackgroundColor,S=B.contrastTextColor,z=B.backgroundColor,F=B.textColor,q=B.ariaLabel;o.useEffect((function(){var r,o;T&&(null==(r=N.current)||r.style.setProperty("--background-color",y?P:z),null==(o=N.current)||o.style.setProperty("--text-color",y?S:F))}),[N.current,z,F]);var O,j=o.createElement("div",s({className:e("eds-travel-tag",{"eds-travel-tag--closable":I,"eds-travel-tag--alert":_,"eds-travel-tag--alert--error":"error"===C,"eds-travel-tag--transport":T,"eds-travel-tag--icon-and-text":E>1||T&&E>0,className:b}),ref:N},x,{"aria-label":null!=(n=x["aria-label"])?n:q+(_?" "+C:""),role:"img"}),o.createElement(L,{"aria-hidden":!0}),i,I&&o.createElement("button",{onClick:f,className:"eds-travel-tag__close-button"},o.createElement(t.CloseSmallIcon,{inline:!0})),_&&o.createElement("span",{className:"eds-travel-tag__alert"},"info"===C&&o.createElement(t.ValidationInfoIcon,{"aria-hidden":!0,className:"eds-travel-tag__alert-info-icon"}),"error"===C&&o.createElement(t.ValidationErrorIcon,{"aria-hidden":!0,className:"eds-travel-tag__alert-error-icon"}),"warning"===C&&o.createElement(t.ValidationExclamationIcon,{"aria-hidden":!0,className:"eds-travel-tag__alert-exclamation-icon"}))),M=o.createElement("div",{className:e("eds-travel-tag__label",(l={},l["eds-travel-tag__label--"+w]=h,l["eds-travel-tag__label--"+w+"--with-alert"]=h&&_,l))},h);return h?o.createElement("div",{className:e("eds-travel-tag__wrapper",(O={},O["eds-travel-tag__wrapper--label-position-"+w]=h,O))},j,M):j};
2
2
  //# sourceMappingURL=travel.cjs.production.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"travel.cjs.production.min.js","sources":["../src/utils.ts","../src/LegLine.tsx","../src/LegBone.tsx","../src/index.tsx","../src/TravelHeader.tsx","../src/TravelLeg.tsx","../src/TravelSwitch.tsx","../src/TravelTag.tsx"],"sourcesContent":["import React from 'react';\nimport { colors } from '@entur/tokens';\nimport {\n BusIcon,\n FerryIcon,\n CarferryIcon,\n TramIcon,\n PlaneIcon,\n TrainIcon,\n BicycleIcon,\n MobilityIcon,\n MetroIcon,\n HelicopterIcon,\n FunicularIcon,\n CablewayIcon,\n TaxiIcon,\n WalkIcon,\n} from '@entur/icons';\n\nimport type { IconProps } from '@entur/icons';\n\nexport type Transport =\n | 'metro'\n | 'bus'\n | 'plane'\n | 'helicopter'\n | 'tram'\n | 'funicular'\n | 'cableway'\n | 'taxi'\n | 'bicycle'\n | 'walk'\n | 'train'\n | 'ferry'\n | 'carferry'\n | 'mobility'\n | 'airportLinkBus'\n | 'airportLinkRail'\n | 'rail'\n | 'water'\n | 'air'\n | 'none';\n\ntype transportStyleResult = {\n Icon: React.FC<IconProps>;\n backgroundColor: string;\n textColor: string;\n contrastBackgroundColor: string;\n contrastTextColor: string;\n pattern: 'line' | 'wave' | 'dashed' | 'dotted';\n ariaLabel: string;\n};\n\nexport const getTransportStyle = (mode: string): transportStyleResult => {\n switch (mode) {\n case 'metro':\n return {\n Icon: MetroIcon,\n backgroundColor: colors.transport.default.metro,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.metro,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'T-bane',\n };\n case 'bus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.bus,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.bus,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Buss',\n };\n case 'plane':\n case 'air':\n return {\n Icon: PlaneIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Fly',\n };\n case 'helicopter':\n return {\n Icon: HelicopterIcon,\n backgroundColor: colors.transport.default.helicopter,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.helicopter,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Helikopter',\n };\n case 'tram':\n return {\n Icon: TramIcon,\n backgroundColor: colors.transport.default.tram,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.tram,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Trikk',\n };\n case 'funicular':\n return {\n Icon: FunicularIcon,\n backgroundColor: colors.transport.default.funicular,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.funicular,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Taubane',\n };\n case 'cableway':\n return {\n Icon: CablewayIcon,\n backgroundColor: colors.transport.default.cableway,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.cableway,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Gondol',\n };\n case 'taxi':\n return {\n Icon: TaxiIcon,\n backgroundColor: colors.transport.default.taxi,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.taxi,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Taxi',\n };\n case 'bicycle':\n return {\n Icon: BicycleIcon,\n backgroundColor: colors.transport.default.bicycle,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.bicycle,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Sykkel',\n };\n case 'walk':\n return {\n Icon: WalkIcon,\n backgroundColor: colors.transport.default.walk,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.walk,\n contrastTextColor: colors.brand.white,\n pattern: 'dotted',\n ariaLabel: 'Gange',\n };\n case 'train':\n case 'rail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.train,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.train,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Tog',\n };\n case 'ferry':\n case 'water':\n return {\n Icon: FerryIcon,\n backgroundColor: colors.transport.default.ferry,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.ferry,\n contrastTextColor: colors.brand.white,\n pattern: 'wave',\n ariaLabel: 'Ferge',\n };\n case 'carferry':\n return {\n Icon: CarferryIcon,\n backgroundColor: colors.transport.default.carferry,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.carferry,\n contrastTextColor: colors.brand.white,\n pattern: 'wave',\n ariaLabel: 'Bilferge',\n };\n case 'mobility':\n return {\n Icon: MobilityIcon,\n backgroundColor: colors.transport.default.mobility,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.mobility,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'El-sparkesykkel',\n };\n case 'airportLinkBus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Flybuss',\n };\n case 'airportLinkRail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Flytog',\n };\n case 'none':\n return {\n Icon: React.Fragment,\n backgroundColor: colors.brand.blue,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.brand.white,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: '',\n };\n case 'scooter':\n throw Error(\n `transport type 'scooter' is deprecated: Please use 'mobility' instead.`,\n );\n case 'bike':\n throw Error(\n `transport type 'bike' is deprecated: Please use 'bicycle' instead.`,\n );\n case 'car':\n throw Error(\n `transport type 'car' is deprecated: Please use 'taxi' instead.`,\n );\n case 'foot':\n throw Error(\n `transport type 'foot' is deprecated: Please use 'walk' instead.`,\n );\n default:\n throw Error('Please select a transport for the Travel component.');\n }\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport './LegLine.scss';\n\nexport type LegLineProps = {\n /** Farge på LegLine'n */\n color: string;\n /** Retningen til LegLine */\n direction: 'horizontal' | 'vertical';\n /** Hvilket linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegLine: React.FC<LegLineProps> = ({\n color,\n direction = 'horizontal',\n pattern,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames('eds-leg-line', className, {\n [`eds-leg-line--${pattern}`]: pattern,\n [`eds-leg-line--${direction}`]: direction,\n })}\n style={{ backgroundColor: color }}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport { LegLine } from './LegLine';\nimport './LegBone.scss';\n\nexport type LegBoneProps = {\n /** Retning på komponenten */\n direction: 'horizontal' | 'vertical';\n /** Hvilke linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Farge på linja */\n color: string;\n /** Farge på startpunktet\n * @default Verdien til color\n */\n startColor?: string;\n /** Farge på endepunktet\n * @default Verdien til color\n */\n endColor?: string;\n /** Vis startpunkt\n * @default true\n */\n showStart?: boolean;\n /** Vis linke\n * @default true\n */\n showLine?: boolean;\n /** Vis endepunkt\n * @default true\n */\n showStop?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegBone: React.FC<LegBoneProps> = ({\n direction,\n pattern,\n color,\n startColor,\n endColor,\n showStart = true,\n showStop = true,\n showLine = true,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames(className, 'eds-leg-bone', [\n { 'eds-leg-bone--vertical': direction === 'vertical' },\n { 'eds-leg-bone--horizontal': direction === 'horizontal' },\n ])}\n {...rest}\n >\n {showStart && (\n <div\n className={`eds-leg-bone__start`}\n style={{ backgroundColor: startColor || color }}\n />\n )}\n\n {showLine && (\n <LegLine\n className={`eds-leg-bone__line`}\n direction={direction}\n color={color}\n pattern={pattern}\n />\n )}\n\n {showStop && (\n <div\n className={`eds-leg-bone__stop`}\n style={{ backgroundColor: endColor || color }}\n />\n )}\n </div>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('travel');\n\nexport * from './TravelHeader';\nexport * from './TravelTag';\nexport * from './LegLine';\nexport * from './LegBone';\nexport * from './TravelLeg';\nexport * from './TravelSwitch';\n","import React from 'react';\nimport classNames from 'classnames';\nimport './TravelHeader.scss';\n\nexport type TravelHeaderProps = {\n /** HTML-elementet eller React-komponenten som lager elementet\n * @default 'div'\n */\n as?: string | React.ElementType;\n /** Destinasjonen man reiser fra */\n from: React.ReactNode;\n /** Destinasjonen man reiser til */\n to: React.ReactNode;\n /**Størrelsen på komponenten\n * @default 'large'\n */\n size?: 'large' | 'medium';\n /** Plassere til og fra på samme linje */\n noWrap?: boolean;\n /**Ekstra klassenavn */\n className?: string;\n [key: string]: any;\n};\n\nexport const TravelHeader: React.FC<TravelHeaderProps> = ({\n as: Element = 'div',\n from,\n to,\n size = 'large',\n className,\n noWrap,\n ...rest\n}) => {\n return (\n <Element\n className={classNames('eds-travel-header', className, {\n 'eds-travel-header--large': size === 'large',\n 'eds-travel-header--medium': size === 'medium',\n 'eds-travel-header--no-wrap': noWrap,\n })}\n aria-label={`Fra ${from}, til ${to}`}\n {...rest}\n >\n <span className=\"eds-travel-header__from\">{from}</span>\n <span className=\"eds-travel-header__to\">{to}</span>\n </Element>\n );\n};\n","import React from 'react';\nimport { useContrast } from '@entur/layout';\nimport { LegBone } from './LegBone';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelLegProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Hviklen type reise som skal vises riktig farge og linjetype */\n transport: Transport;\n /** Retningen på komponenten */\n direction: 'horizontal' | 'vertical';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelLeg: React.FC<TravelLegProps> = ({\n className,\n transport,\n direction,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, pattern } =\n getTransportStyle(transport);\n const isContrast = useContrast();\n\n return (\n <LegBone\n direction={direction}\n pattern={pattern}\n color={isContrast ? contrastBackgroundColor : backgroundColor}\n className={className}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport { Switch } from '@entur/form';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nimport './TravelSwitch.scss';\n\nexport type TravelSwitchProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Om switch-en er checked eller ikke */\n checked?: boolean;\n /** Label for TravelSwitch-en. */\n children?: React.ReactNode;\n /** Posisjonen til label for TravelSwitch-en.\n * @default \"right\"\n */\n labelPlacement?: 'right' | 'bottom';\n /** Hvilken type reise som skal vises ikon og farge for */\n transport: Transport; // When adding a new submode, check https://enturas.atlassian.net/wiki/spaces/PUBLIC/pages/825393529/Norwegian+submodes+and+their+definitions for names\n /** Callback for når verdien endres */\n onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Størrelsen på Switch-en\n * @default \"medium\"\n */\n size?: 'medium' | 'large';\n} & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'>;\n\nexport const TravelSwitch: React.FC<TravelSwitchProps> = ({\n className,\n children,\n labelPlacement = 'right',\n transport,\n size,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, Icon } =\n getTransportStyle(transport);\n return (\n <Switch\n className={className}\n labelPlacement={labelPlacement}\n color={backgroundColor}\n contrastColor={contrastBackgroundColor}\n icon={<Icon />}\n size={size}\n {...rest}\n >\n {children}\n </Switch>\n );\n};\n","import React, { useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoIcon,\n ValidationErrorIcon,\n ValidationExclamationIcon,\n} from '@entur/icons';\nimport { useContrast } from '@entur/layout';\n\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nimport './TravelTag.scss';\n\nexport type TravelTagProps = {\n /** Callback som kalles for når man skal lukke TravelTag-en\n * @default undefined\n */\n onClose?: () => void;\n /** Innholdet inne i TravelTag-en */\n children?: React.ReactNode;\n /**Ekstra klassenavn */\n className?: string;\n /** Legger til et Valideringsikon i TravelTagen for å signalisere avvik, informasjon e.l.\n * @default \"none\"\n */\n alert?: 'none' | 'error' | 'warning' | 'info';\n /** Legger til farge og ikon tilpasset valgt transportmiddel */\n transport?: Transport;\n /** Element ved siden av eller under TravelTag. */\n label?: React.ReactNode;\n /** Posisjonen til label-en i forhold til TravelTag-en\n * @default \"right\"\n */\n labelPlacement?: 'bottom' | 'right';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelTag: React.FC<TravelTagProps> = ({\n children,\n className,\n alert = 'none',\n transport = 'none',\n label,\n labelPlacement = 'right',\n onClose = undefined,\n ...rest\n}) => {\n const isContrast = useContrast();\n const isClosable = onClose ? true : false;\n const transportIsSet = transport !== 'none';\n const alertIsSet = alert !== 'none';\n const tagRef = useRef<HTMLDivElement>(null);\n const numberOfChildren = React.Children.count(children);\n const {\n Icon,\n contrastBackgroundColor,\n contrastTextColor,\n backgroundColor,\n textColor,\n ariaLabel,\n } = getTransportStyle(transport);\n\n useEffect(() => {\n if (transportIsSet) {\n tagRef.current?.style.setProperty(\n '--background-color',\n isContrast ? contrastBackgroundColor : backgroundColor,\n );\n tagRef.current?.style.setProperty(\n '--text-color',\n isContrast ? contrastTextColor : textColor,\n );\n }\n }, [tagRef.current, backgroundColor, textColor]);\n\n const TravelTagWithoutLabel: JSX.Element = (\n <div\n className={classNames('eds-travel-tag', {\n 'eds-travel-tag--closable': isClosable,\n 'eds-travel-tag--alert': alertIsSet,\n 'eds-travel-tag--alert--error': alert === 'error',\n 'eds-travel-tag--transport': transportIsSet,\n 'eds-travel-tag--icon-and-text':\n numberOfChildren > 1 || (transportIsSet && numberOfChildren > 0),\n className,\n })}\n ref={tagRef}\n {...rest}\n aria-label={\n rest['aria-label'] ?? ariaLabel + (alertIsSet ? ` ${alert}` : '')\n }\n role=\"img\"\n >\n <Icon aria-hidden />\n {children}\n {isClosable && (\n <button onClick={onClose} className=\"eds-travel-tag__close-button\">\n <CloseSmallIcon inline />\n </button>\n )}\n {alertIsSet && (\n <span className=\"eds-travel-tag__alert\">\n {alert === 'info' && (\n <ValidationInfoIcon\n aria-hidden\n className=\"eds-travel-tag__alert-info-icon\"\n />\n )}\n {alert === 'error' && (\n <ValidationErrorIcon\n aria-hidden\n className=\"eds-travel-tag__alert-error-icon\"\n />\n )}\n {alert === 'warning' && (\n <ValidationExclamationIcon\n aria-hidden\n className=\"eds-travel-tag__alert-exclamation-icon\"\n />\n )}\n </span>\n )}\n </div>\n );\n\n const Label: JSX.Element = (\n <div\n className={classNames('eds-travel-tag__label', {\n [`eds-travel-tag__label--${labelPlacement}`]: label,\n [`eds-travel-tag__label--${labelPlacement}--with-alert`]:\n label && alertIsSet,\n })}\n >\n {label}\n </div>\n );\n\n if (label) {\n return (\n <div\n className={classNames('eds-travel-tag__wrapper', {\n [`eds-travel-tag__wrapper--label-position-${labelPlacement}`]: label,\n })}\n >\n {TravelTagWithoutLabel}\n {Label}\n </div>\n );\n }\n\n return TravelTagWithoutLabel;\n};\n"],"names":["getTransportStyle","mode","Icon","MetroIcon","backgroundColor","colors","transport","metro","textColor","brand","white","contrastBackgroundColor","contrast","contrastTextColor","pattern","ariaLabel","BusIcon","bus","PlaneIcon","plane","HelicopterIcon","helicopter","TramIcon","tram","FunicularIcon","funicular","CablewayIcon","cableway","TaxiIcon","taxi","BicycleIcon","bicycle","WalkIcon","walk","TrainIcon","train","FerryIcon","ferry","CarferryIcon","carferry","MobilityIcon","mobility","React","Fragment","blue","Error","LegLine","_ref","_classNames","color","_ref$direction","direction","className","rest","_objectWithoutPropertiesLoose","_excluded","classNames","style","LegBone","startColor","endColor","_ref$showStart","showStart","_ref$showStop","showStop","_ref$showLine","showLine","createElement","warnAboutMissingStyles","_ref$as","as","Element","from","to","_ref$size","size","noWrap","_extends","isContrast","useContrast","children","_ref$labelPlacement","labelPlacement","Switch","contrastColor","icon","_rest$ariaLabel","_ref$alert","alert","_ref$transport","label","_ref$onClose","onClose","undefined","isClosable","transportIsSet","alertIsSet","tagRef","useRef","numberOfChildren","Children","count","useEffect","_tagRef$current","_tagRef$current2","current","setProperty","_classNames2","TravelTagWithoutLabel","ref","role","onClick","CloseSmallIcon","inline","ValidationInfoIcon","ValidationErrorIcon","ValidationExclamationIcon","Label"],"mappings":"6uBAqDaA,EAAoB,SAACC,GAChC,OAAQA,GACN,IAAK,QACH,MAAO,CACLC,KAAMC,EAASA,UACfC,gBAAiBC,EAAMA,OAACC,UAAS,QAASC,MAC1CC,UAAWH,EAAAA,OAAOI,MAAMC,MACxBC,wBAAyBN,EAAMA,OAACC,UAAUM,SAASL,MACnDM,kBAAmBR,EAAAA,OAAOI,MAAMC,MAChCI,QAAS,OACTC,UAAW,UAEf,IAAK,MACH,MAAO,CACLb,KAAMc,EAAOA,QACbZ,gBAAiBC,EAAMA,OAACC,UAAS,QAASW,IAC1CT,UAAWH,EAAAA,OAAOI,MAAMC,MACxBC,wBAAyBN,EAAMA,OAACC,UAAUM,SAASK,IACnDJ,kBAAmBR,EAAAA,OAAOI,MAAMC,MAChCI,QAAS,SACTC,UAAW,QAEf,IAAK,QACL,IAAK,MACH,MAAO,CACLb,KAAMgB,EAASA,UACfd,gBAAiBC,EAAMA,OAACC,UAAS,QAASa,MAC1CX,UAAWH,EAAAA,OAAOI,MAAMC,MACxBC,wBAAyBN,EAAMA,OAACC,UAAUM,SAASO,MACnDN,kBAAmBR,EAAAA,OAAOI,MAAMC,MAChCI,QAAS,OACTC,UAAW,OAEf,IAAK,aACH,MAAO,CACLb,KAAMkB,EAAcA,eACpBhB,gBAAiBC,EAAMA,OAACC,UAAS,QAASe,WAC1Cb,UAAWH,EAAAA,OAAOI,MAAMC,MACxBC,wBAAyBN,EAAMA,OAACC,UAAUM,SAASS,WACnDR,kBAAmBR,EAAAA,OAAOI,MAAMC,MAChCI,QAAS,OACTC,UAAW,cAEf,IAAK,OACH,MAAO,CACLb,KAAMoB,EAAQA,SACdlB,gBAAiBC,EAAMA,OAACC,UAAS,QAASiB,KAC1Cf,UAAWH,EAAAA,OAAOI,MAAMC,MACxBC,wBAAyBN,EAAMA,OAACC,UAAUM,SAASW,KACnDV,kBAAmBR,EAAAA,OAAOI,MAAMC,MAChCI,QAAS,OACTC,UAAW,SAEf,IAAK,YACH,MAAO,CACLb,KAAMsB,EAAaA,cACnBpB,gBAAiBC,EAAMA,OAACC,UAAS,QAASmB,UAC1CjB,UAAWH,EAAAA,OAAOI,MAAMC,MACxBC,wBAAyBN,EAAMA,OAACC,UAAUM,SAASa,UACnDZ,kBAAmBR,EAAAA,OAAOI,MAAMC,MAChCI,QAAS,OACTC,UAAW,WAEf,IAAK,WACH,MAAO,CACLb,KAAMwB,EAAYA,aAClBtB,gBAAiBC,EAAMA,OAACC,UAAS,QAASqB,SAC1CnB,UAAWH,EAAAA,OAAOI,MAAMC,MACxBC,wBAAyBN,EAAMA,OAACC,UAAUM,SAASe,SACnDd,kBAAmBR,EAAAA,OAAOI,MAAMC,MAChCI,QAAS,OACTC,UAAW,UAEf,IAAK,OACH,MAAO,CACLb,KAAM0B,EAAQA,SACdxB,gBAAiBC,EAAMA,OAACC,UAAS,QAASuB,KAC1CrB,UAAWH,EAAAA,OAAOI,MAAMC,MACxBC,wBAAyBN,EAAMA,OAACC,UAAUM,SAASiB,KACnDhB,kBAAmBR,EAAAA,OAAOI,MAAMC,MAChCI,QAAS,SACTC,UAAW,QAEf,IAAK,UACH,MAAO,CACLb,KAAM4B,EAAWA,YACjB1B,gBAAiBC,EAAMA,OAACC,UAAS,QAASyB,QAC1CvB,UAAWH,EAAAA,OAAOI,MAAMC,MACxBC,wBAAyBN,EAAMA,OAACC,UAAUM,SAASmB,QACnDlB,kBAAmBR,EAAAA,OAAOI,MAAMC,MAChCI,QAAS,OACTC,UAAW,UAEf,IAAK,OACH,MAAO,CACLb,KAAM8B,EAAQA,SACd5B,gBAAiBC,EAAMA,OAACC,UAAS,QAAS2B,KAC1CzB,UAAWH,EAAAA,OAAOI,MAAMC,MACxBC,wBAAyBN,EAAMA,OAACC,UAAUM,SAASqB,KACnDpB,kBAAmBR,EAAAA,OAAOI,MAAMC,MAChCI,QAAS,SACTC,UAAW,SAEf,IAAK,QACL,IAAK,OACH,MAAO,CACLb,KAAMgC,EAASA,UACf9B,gBAAiBC,EAAMA,OAACC,UAAS,QAAS6B,MAC1C3B,UAAWH,EAAAA,OAAOI,MAAMC,MACxBC,wBAAyBN,EAAMA,OAACC,UAAUM,SAASuB,MACnDtB,kBAAmBR,EAAAA,OAAOI,MAAMC,MAChCI,QAAS,OACTC,UAAW,OAEf,IAAK,QACL,IAAK,QACH,MAAO,CACLb,KAAMkC,EAASA,UACfhC,gBAAiBC,EAAMA,OAACC,UAAS,QAAS+B,MAC1C7B,UAAWH,EAAAA,OAAOI,MAAMC,MACxBC,wBAAyBN,EAAMA,OAACC,UAAUM,SAASyB,MACnDxB,kBAAmBR,EAAAA,OAAOI,MAAMC,MAChCI,QAAS,OACTC,UAAW,SAEf,IAAK,WACH,MAAO,CACLb,KAAMoC,EAAYA,aAClBlC,gBAAiBC,EAAMA,OAACC,UAAS,QAASiC,SAC1C/B,UAAWH,EAAAA,OAAOI,MAAMC,MACxBC,wBAAyBN,EAAMA,OAACC,UAAUM,SAAS2B,SACnD1B,kBAAmBR,EAAAA,OAAOI,MAAMC,MAChCI,QAAS,OACTC,UAAW,YAEf,IAAK,WACH,MAAO,CACLb,KAAMsC,EAAYA,aAClBpC,gBAAiBC,EAAMA,OAACC,UAAS,QAASmC,SAC1CjC,UAAWH,EAAAA,OAAOI,MAAMC,MACxBC,wBAAyBN,EAAMA,OAACC,UAAUM,SAAS6B,SACnD5B,kBAAmBR,EAAAA,OAAOI,MAAMC,MAChCI,QAAS,OACTC,UAAW,mBAEf,IAAK,iBACH,MAAO,CACLb,KAAMc,EAAOA,QACbZ,gBAAiBC,EAAMA,OAACC,UAAS,QAASa,MAC1CX,UAAWH,EAAAA,OAAOI,MAAMC,MACxBC,wBAAyBN,EAAMA,OAACC,UAAUM,SAASO,MACnDN,kBAAmBR,EAAAA,OAAOI,MAAMC,MAChCI,QAAS,SACTC,UAAW,WAEf,IAAK,kBACH,MAAO,CACLb,KAAMgC,EAASA,UACf9B,gBAAiBC,EAAMA,OAACC,UAAS,QAASa,MAC1CX,UAAWH,EAAAA,OAAOI,MAAMC,MACxBC,wBAAyBN,EAAMA,OAACC,UAAUM,SAASO,MACnDN,kBAAmBR,EAAAA,OAAOI,MAAMC,MAChCI,QAAS,OACTC,UAAW,UAEf,IAAK,OACH,MAAO,CACLb,KAAMwC,EAAK,QAACC,SACZvC,gBAAiBC,EAAAA,OAAOI,MAAMmC,KAC9BpC,UAAWH,EAAAA,OAAOI,MAAMC,MACxBC,wBAAyBN,EAAAA,OAAOI,MAAMC,MACtCG,kBAAmBR,EAAAA,OAAOI,MAAMC,MAChCI,QAAS,OACTC,UAAW,IAEf,IAAK,UACH,MAAM8B,MAEL,0EACH,IAAK,OACH,MAAMA,MAEL,sEACH,IAAK,MACH,MAAMA,MAEL,kEACH,IAAK,OACH,MAAMA,MAEL,mEACH,QACE,MAAMA,MAAM,yLCnOLC,EAAkC,SAM1CC,GAAA,IAAAC,EALHC,IAAAA,MAAKC,EAAAH,EACLI,UAAAA,aAAY,aAAYD,EACxBpC,IAAAA,QACAsC,IAAAA,UACGC,EAAIC,EAAAP,EAAAQ,GAEP,OACEb,iCACEU,UAAWI,EAAU,QAAC,eAAgBJ,GAASJ,EAAA,GAAAA,EAAA,iBAC3BlC,GAAYA,EAAOkC,EAAA,iBACnBG,GAAcA,EAChCH,IACFS,MAAO,CAAErD,gBAAiB6C,IACtBI,6GCOGK,EAAkC,SAW1CX,GAAA,IAVHI,IAAAA,UACArC,IAAAA,QACAmC,IAAAA,MACAU,IAAAA,WACAC,IAAAA,SAAQC,EAAAd,EACRe,UAAAA,cAAgBD,EAAAE,EAAAhB,EAChBiB,SAAAA,cAAeD,EAAAE,EAAAlB,EACfmB,SAAAA,cAAeD,EACfb,IAAAA,UACGC,EAAIC,EAAAP,EAAAQ,GAEP,OACEb,iCACEU,UAAWI,EAAU,QAACJ,EAAW,eAAgB,CAC/C,CAAE,yBAAwC,aAAdD,GAC5B,CAAE,2BAA0C,eAAdA,MAE5BE,GAEHS,GACCpB,EAAAA,QAAAyB,cAAA,MAAA,CACEf,UAAgC,sBAChCK,MAAO,CAAErD,gBAAiBuD,GAAcV,KAI3CiB,GACCxB,UAACyB,cAAArB,GACCM,UAA+B,qBAC/BD,UAAWA,EACXF,MAAOA,EACPnC,QAASA,IAIZkD,GACCtB,UACEyB,cAAA,MAAA,CAAAf,UAA+B,qBAC/BK,MAAO,CAAErD,gBAAiBwD,GAAYX,8GC3EhDmB,EAAsBA,uBAAC,mECqBkC,SAQpDrB,GAAA,IAAAsB,EAAAtB,EAPHuB,GAAIC,aAAU,MAAKF,EACnBG,IAAAA,KACAC,IAAAA,GAAEC,EAAA3B,EACF4B,KAAAA,aAAO,QAAOD,EACdtB,IAAAA,UACAwB,IAAAA,OACGvB,EAAIC,EAAAP,EAAAQ,GAEP,OACEb,UAACyB,cAAAI,EAAOM,EAAA,CACNzB,UAAWI,EAAAA,QAAW,oBAAqBJ,EAAW,CACpD,2BAAqC,UAATuB,EAC5B,4BAAsC,WAATA,EAC7B,6BAA8BC,wBAEbJ,EAAaC,SAAAA,GAC5BpB,GAEJX,UAAAyB,cAAA,OAAA,CAAMf,UAAU,2BAA2BoB,GAC3C9B,UAAMyB,cAAA,OAAA,CAAAf,UAAU,yBAAyBqB,uBCzBI,SAK9C1B,GAAA,IAJHK,IAAAA,UACA9C,IAAAA,UACA6C,IAAAA,UACGE,EAAIC,EAAAP,EAAAQ,GAGLvD,EAAAA,EAAkBM,GADZF,IAAAA,gBAAiBO,IAAAA,wBAAyBG,IAAAA,QAE5CgE,EAAaC,EAAAA,cAEnB,OACErC,UAAAyB,cAACT,EAAOmB,EAAA,CACN1B,UAAWA,EACXrC,QAASA,EACTmC,MAAO6B,EAAanE,EAA0BP,EAC9CgD,UAAWA,GACPC,0BCN+C,SAOpDN,GAAA,IANHK,IAAAA,UACA4B,IAAAA,SAAQC,EAAAlC,EACRmC,eAAAA,aAAiB,QAAOD,EACxB3E,IAAAA,UACAqE,IAAAA,KACGtB,EAAIC,EAAAP,EAAAQ,GAGLvD,EAAAA,EAAkBM,GACpB,OACEoC,UAAAyB,cAACgB,EAAMA,OAAAN,EAAA,CACLzB,UAAWA,EACX8B,eAAgBA,EAChBjC,QANI7C,gBAOJgF,gBAPqBzE,wBAQrB0E,KAAM3C,EAAC,QAAAyB,gBARuCjE,WAS9CyE,KAAMA,GACFtB,GAEH2B,sBCP4C,SAS9CjC,GAAA,IAAAuC,EAAAtC,EARHgC,IAAAA,SACA5B,IAAAA,UAASmC,EAAAxC,EACTyC,MAAAA,aAAQ,OAAMD,EAAAE,EAAA1C,EACdzC,UAAAA,aAAY,OAAMmF,EAClBC,IAAAA,MAAKT,EAAAlC,EACLmC,eAAAA,aAAiB,QAAOD,EAAAU,EAAA5C,EACxB6C,QAAAA,kBAAUC,EAASF,EAChBtC,EAAIC,EAAAP,EAAAQ,GAEDuB,EAAaC,EAAAA,cACbe,IAAaF,EACbG,EAA+B,SAAdzF,EACjB0F,EAAuB,SAAVR,EACbS,EAASC,SAAuB,MAChCC,EAAmBzD,EAAK,QAAC0D,SAASC,MAAMrB,GAQ1ChF,EAAAA,EAAkBM,GANpBJ,IAAAA,KACAS,IAAAA,wBACAE,IAAAA,kBACAT,IAAAA,gBACAI,IAAAA,UACAO,IAAAA,UAGFuF,EAAAA,WAAU,WACY,IAAAC,EAAAC,EAAhBT,IACF,OAAAQ,EAAAN,EAAOQ,UAAPF,EAAgB9C,MAAMiD,YACpB,qBACA5B,EAAanE,EAA0BP,GAEzC,OAAAoG,EAAAP,EAAOQ,UAAPD,EAAgB/C,MAAMiD,YACpB,eACA5B,EAAajE,EAAoBL,MAGpC,CAACyF,EAAOQ,QAASrG,EAAiBI,IAErC,IA8DWmG,EA9DLC,EACJlE,EAAA,QAAAyB,cAAA,MAAAU,EAAA,CACEzB,UAAWI,EAAU,QAAC,iBAAkB,CACtC,2BAA4BsC,EAC5B,wBAAyBE,EACzB,+BAA0C,UAAVR,EAChC,4BAA6BO,EAC7B,gCACEI,EAAmB,GAAMJ,GAAkBI,EAAmB,EAChE/C,UAAAA,IAEFyD,IAAKZ,GACD5C,EAAI,CAEN,aAAkB,OAAlBA,EAAAA,EAAK,eAAaiC,EAAIvE,GAAaiF,EAAU,IAAOR,EAAU,IAEhEsB,KAAK,QAELpE,EAAAA,QAAAyB,cAACjE,EAAmB,CAAA,eAAA,IACnB8E,EACAc,GACCpD,EAAAA,QAAQyB,cAAA,SAAA,CAAA4C,QAASnB,EAASxC,UAAU,gCAClCV,EAAA,QAAAyB,cAAC6C,iBAAc,CAACC,QAAM,KAGzBjB,GACCtD,UAAMyB,cAAA,OAAA,CAAAf,UAAU,yBACH,SAAVoC,GACC9C,UAAAyB,cAAC+C,EAAAA,mBAAkB,CAAA,eAAA,EAEjB9D,UAAU,oCAGH,UAAVoC,GACC9C,EAAAA,QAAAyB,cAACgD,EAAAA,oBAAmB,CAAA,eAAA,EAElB/D,UAAU,qCAGH,YAAVoC,GACC9C,EAAAA,QAAAyB,cAACiD,EAAAA,0BAEC,CAAA,eAAA,EAAAhE,UAAU,6CAQhBiE,EACJ3E,EAAAA,QAAAyB,cAAA,MAAA,CACEf,UAAWI,EAAU,QAAC,yBACO0B,EAAAA,GAAAA,EAAAA,0BAAAA,GAAmBQ,EACnBR,EAAAA,0BAAAA,EACzBQ,gBAAAA,GAASM,EAAUhD,KAGtB0C,GAIL,OAAIA,EAEAhD,EACE,QAAAyB,cAAA,MAAA,CAAAf,UAAWI,EAAU,QAAC,2BACwB0B,EAAAA,GAAAA,EAAAA,2CAAAA,GAAmBQ,EAAKiB,KAGrEC,EACAS,GAKAT"}
1
+ {"version":3,"file":"travel.cjs.production.min.js","sources":["../src/utils.ts","../src/LegLine.tsx","../src/LegBone.tsx","../src/index.tsx","../src/TravelHeader.tsx","../src/TravelLeg.tsx","../src/TravelSwitch.tsx","../src/TravelTag.tsx"],"sourcesContent":["import React from 'react';\nimport { colors } from '@entur/tokens';\nimport {\n BusIcon,\n FerryIcon,\n CarferryIcon,\n TramIcon,\n PlaneIcon,\n TrainIcon,\n BicycleIcon,\n MobilityIcon,\n MetroIcon,\n HelicopterIcon,\n FunicularIcon,\n CablewayIcon,\n TaxiIcon,\n WalkIcon,\n} from '@entur/icons';\n\nimport type { IconProps } from '@entur/icons';\n\nexport type Transport =\n | 'metro'\n | 'bus'\n | 'plane'\n | 'helicopter'\n | 'tram'\n | 'funicular'\n | 'cableway'\n | 'taxi'\n | 'bicycle'\n | 'walk'\n | 'train'\n | 'ferry'\n | 'carferry'\n | 'mobility'\n | 'airportLinkBus'\n | 'airportLinkRail'\n | 'rail'\n | 'water'\n | 'air'\n | 'none';\n\ntype transportStyleResult = {\n Icon: React.FC<IconProps>;\n backgroundColor: string;\n textColor: string;\n contrastBackgroundColor: string;\n contrastTextColor: string;\n pattern: 'line' | 'wave' | 'dashed' | 'dotted';\n ariaLabel: string;\n};\n\nexport const getTransportStyle = (mode: string): transportStyleResult => {\n switch (mode) {\n case 'metro':\n return {\n Icon: MetroIcon,\n backgroundColor: colors.transport.default.metro,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.metro,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'T-bane',\n };\n case 'bus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.bus,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.bus,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Buss',\n };\n case 'plane':\n case 'air':\n return {\n Icon: PlaneIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Fly',\n };\n case 'helicopter':\n return {\n Icon: HelicopterIcon,\n backgroundColor: colors.transport.default.helicopter,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.helicopter,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Helikopter',\n };\n case 'tram':\n return {\n Icon: TramIcon,\n backgroundColor: colors.transport.default.tram,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.tram,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Trikk',\n };\n case 'funicular':\n return {\n Icon: FunicularIcon,\n backgroundColor: colors.transport.default.funicular,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.funicular,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Taubane',\n };\n case 'cableway':\n return {\n Icon: CablewayIcon,\n backgroundColor: colors.transport.default.cableway,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.cableway,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Gondol',\n };\n case 'taxi':\n return {\n Icon: TaxiIcon,\n backgroundColor: colors.transport.default.taxi,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.taxi,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Taxi',\n };\n case 'bicycle':\n return {\n Icon: BicycleIcon,\n backgroundColor: colors.transport.default.bicycle,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.bicycle,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Sykkel',\n };\n case 'walk':\n return {\n Icon: WalkIcon,\n backgroundColor: colors.transport.default.walk,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.walk,\n contrastTextColor: colors.brand.white,\n pattern: 'dotted',\n ariaLabel: 'Gange',\n };\n case 'train':\n case 'rail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.train,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.train,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Tog',\n };\n case 'ferry':\n case 'water':\n return {\n Icon: FerryIcon,\n backgroundColor: colors.transport.default.ferry,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.ferry,\n contrastTextColor: colors.brand.white,\n pattern: 'wave',\n ariaLabel: 'Ferge',\n };\n case 'carferry':\n return {\n Icon: CarferryIcon,\n backgroundColor: colors.transport.default.carferry,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.carferry,\n contrastTextColor: colors.brand.white,\n pattern: 'wave',\n ariaLabel: 'Bilferge',\n };\n case 'mobility':\n return {\n Icon: MobilityIcon,\n backgroundColor: colors.transport.default.mobility,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.mobility,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'El-sparkesykkel',\n };\n case 'airportLinkBus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Flybuss',\n };\n case 'airportLinkRail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Flytog',\n };\n case 'none':\n return {\n Icon: React.Fragment,\n backgroundColor: colors.brand.blue,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.brand.white,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: '',\n };\n case 'scooter':\n throw Error(\n `transport type 'scooter' is deprecated: Please use 'mobility' instead.`,\n );\n case 'bike':\n throw Error(\n `transport type 'bike' is deprecated: Please use 'bicycle' instead.`,\n );\n case 'car':\n throw Error(\n `transport type 'car' is deprecated: Please use 'taxi' instead.`,\n );\n case 'foot':\n throw Error(\n `transport type 'foot' is deprecated: Please use 'walk' instead.`,\n );\n default:\n throw Error('Please select a transport for the Travel component.');\n }\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport './LegLine.scss';\n\nexport type LegLineProps = {\n /** Farge på LegLine'n */\n color: string;\n /** Retningen til LegLine */\n direction: 'horizontal' | 'vertical';\n /** Hvilket linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegLine: React.FC<LegLineProps> = ({\n color,\n direction = 'horizontal',\n pattern,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames('eds-leg-line', className, {\n [`eds-leg-line--${pattern}`]: pattern,\n [`eds-leg-line--${direction}`]: direction,\n })}\n style={{ backgroundColor: color }}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport { LegLine } from './LegLine';\nimport './LegBone.scss';\n\nexport type LegBoneProps = {\n /** Retning på komponenten */\n direction: 'horizontal' | 'vertical';\n /** Hvilke linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Farge på linja */\n color: string;\n /** Farge på startpunktet\n * @default Verdien til color\n */\n startColor?: string;\n /** Farge på endepunktet\n * @default Verdien til color\n */\n endColor?: string;\n /** Vis startpunkt\n * @default true\n */\n showStart?: boolean;\n /** Vis linke\n * @default true\n */\n showLine?: boolean;\n /** Vis endepunkt\n * @default true\n */\n showStop?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegBone: React.FC<LegBoneProps> = ({\n direction,\n pattern,\n color,\n startColor,\n endColor,\n showStart = true,\n showStop = true,\n showLine = true,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames(className, 'eds-leg-bone', [\n { 'eds-leg-bone--vertical': direction === 'vertical' },\n { 'eds-leg-bone--horizontal': direction === 'horizontal' },\n ])}\n {...rest}\n >\n {showStart && (\n <div\n className={`eds-leg-bone__start`}\n style={{ backgroundColor: startColor || color }}\n />\n )}\n\n {showLine && (\n <LegLine\n className={`eds-leg-bone__line`}\n direction={direction}\n color={color}\n pattern={pattern}\n />\n )}\n\n {showStop && (\n <div\n className={`eds-leg-bone__stop`}\n style={{ backgroundColor: endColor || color }}\n />\n )}\n </div>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('travel');\n\nexport * from './TravelHeader';\nexport * from './TravelTag';\nexport * from './LegLine';\nexport * from './LegBone';\nexport * from './TravelLeg';\nexport * from './TravelSwitch';\n","import React from 'react';\nimport classNames from 'classnames';\nimport './TravelHeader.scss';\n\nexport type TravelHeaderProps = {\n /** HTML-elementet eller React-komponenten som lager elementet\n * @default 'div'\n */\n as?: string | React.ElementType;\n /** Destinasjonen man reiser fra */\n from: React.ReactNode;\n /** Destinasjonen man reiser til */\n to: React.ReactNode;\n /**Størrelsen på komponenten\n * @default 'large'\n */\n size?: 'large' | 'medium';\n /** Plassere til og fra på samme linje */\n noWrap?: boolean;\n /**Ekstra klassenavn */\n className?: string;\n [key: string]: any;\n};\n\nexport const TravelHeader: React.FC<TravelHeaderProps> = ({\n as: Element = 'div',\n from,\n to,\n size = 'large',\n className,\n noWrap,\n ...rest\n}) => {\n return (\n <Element\n className={classNames('eds-travel-header', className, {\n 'eds-travel-header--large': size === 'large',\n 'eds-travel-header--medium': size === 'medium',\n 'eds-travel-header--no-wrap': noWrap,\n })}\n aria-label={`Fra ${from}, til ${to}`}\n {...rest}\n >\n <span className=\"eds-travel-header__from\">{from}</span>\n <span className=\"eds-travel-header__to\">{to}</span>\n </Element>\n );\n};\n","import React from 'react';\nimport { useContrast } from '@entur/layout';\nimport { LegBone } from './LegBone';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelLegProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Hviklen type reise som skal vises riktig farge og linjetype */\n transport: Transport;\n /** Retningen på komponenten */\n direction: 'horizontal' | 'vertical';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelLeg: React.FC<TravelLegProps> = ({\n className,\n transport,\n direction,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, pattern } =\n getTransportStyle(transport);\n const isContrast = useContrast();\n\n return (\n <LegBone\n direction={direction}\n pattern={pattern}\n color={isContrast ? contrastBackgroundColor : backgroundColor}\n className={className}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport { Switch } from '@entur/form';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelSwitchProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Om switch-en er checked eller ikke */\n checked?: boolean;\n /** Label for TravelSwitch-en. */\n children?: React.ReactNode;\n /** Posisjonen til label for TravelSwitch-en.\n * @default \"right\"\n */\n labelPlacement?: 'right' | 'bottom';\n /** Hvilken type reise som skal vises ikon og farge for */\n transport: Transport; // When adding a new submode, check https://enturas.atlassian.net/wiki/spaces/PUBLIC/pages/825393529/Norwegian+submodes+and+their+definitions for names\n /** Callback for når verdien endres */\n onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Størrelsen på Switch-en\n * @default \"medium\"\n */\n size?: 'medium' | 'large';\n} & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'>;\n\nexport const TravelSwitch: React.FC<TravelSwitchProps> = ({\n className,\n children,\n labelPlacement = 'right',\n transport,\n size,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, Icon } =\n getTransportStyle(transport);\n return (\n <Switch\n className={className}\n labelPlacement={labelPlacement}\n color={backgroundColor}\n contrastColor={contrastBackgroundColor}\n icon={<Icon />}\n size={size}\n {...rest}\n >\n {children}\n </Switch>\n );\n};\n","import React, { useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoIcon,\n ValidationErrorIcon,\n ValidationExclamationIcon,\n} from '@entur/icons';\nimport { useContrast } from '@entur/layout';\n\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nimport './TravelTag.scss';\n\nexport type TravelTagProps = {\n /** Callback som kalles for når man skal lukke TravelTag-en\n * @default undefined\n */\n onClose?: () => void;\n /** Innholdet inne i TravelTag-en */\n children?: React.ReactNode;\n /**Ekstra klassenavn */\n className?: string;\n /** Legger til et Valideringsikon i TravelTagen for å signalisere avvik, informasjon e.l.\n * @default \"none\"\n */\n alert?: 'none' | 'error' | 'warning' | 'info';\n /** Legger til farge og ikon tilpasset valgt transportmiddel */\n transport?: Transport;\n /** Element ved siden av eller under TravelTag. */\n label?: React.ReactNode;\n /** Posisjonen til label-en i forhold til TravelTag-en\n * @default \"right\"\n */\n labelPlacement?: 'bottom' | 'right';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelTag: React.FC<TravelTagProps> = ({\n children,\n className,\n alert = 'none',\n transport = 'none',\n label,\n labelPlacement = 'right',\n onClose = undefined,\n ...rest\n}) => {\n const isContrast = useContrast();\n const isClosable = onClose ? true : false;\n const transportIsSet = transport !== 'none';\n const alertIsSet = alert !== 'none';\n const tagRef = useRef<HTMLDivElement>(null);\n const numberOfChildren = React.Children.count(children);\n const {\n Icon,\n contrastBackgroundColor,\n contrastTextColor,\n backgroundColor,\n textColor,\n ariaLabel,\n } = getTransportStyle(transport);\n\n useEffect(() => {\n if (transportIsSet) {\n tagRef.current?.style.setProperty(\n '--background-color',\n isContrast ? contrastBackgroundColor : backgroundColor,\n );\n tagRef.current?.style.setProperty(\n '--text-color',\n isContrast ? contrastTextColor : textColor,\n );\n }\n }, [tagRef.current, backgroundColor, textColor]);\n\n const TravelTagWithoutLabel: JSX.Element = (\n <div\n className={classNames('eds-travel-tag', {\n 'eds-travel-tag--closable': isClosable,\n 'eds-travel-tag--alert': alertIsSet,\n 'eds-travel-tag--alert--error': alert === 'error',\n 'eds-travel-tag--transport': transportIsSet,\n 'eds-travel-tag--icon-and-text':\n numberOfChildren > 1 || (transportIsSet && numberOfChildren > 0),\n className,\n })}\n ref={tagRef}\n {...rest}\n aria-label={\n rest['aria-label'] ?? ariaLabel + (alertIsSet ? ` ${alert}` : '')\n }\n role=\"img\"\n >\n <Icon aria-hidden />\n {children}\n {isClosable && (\n <button onClick={onClose} className=\"eds-travel-tag__close-button\">\n <CloseSmallIcon inline />\n </button>\n )}\n {alertIsSet && (\n <span className=\"eds-travel-tag__alert\">\n {alert === 'info' && (\n <ValidationInfoIcon\n aria-hidden\n className=\"eds-travel-tag__alert-info-icon\"\n />\n )}\n {alert === 'error' && (\n <ValidationErrorIcon\n aria-hidden\n className=\"eds-travel-tag__alert-error-icon\"\n />\n )}\n {alert === 'warning' && (\n <ValidationExclamationIcon\n aria-hidden\n className=\"eds-travel-tag__alert-exclamation-icon\"\n />\n )}\n </span>\n )}\n </div>\n );\n\n const Label: JSX.Element = (\n <div\n className={classNames('eds-travel-tag__label', {\n [`eds-travel-tag__label--${labelPlacement}`]: label,\n [`eds-travel-tag__label--${labelPlacement}--with-alert`]:\n label && alertIsSet,\n })}\n >\n {label}\n </div>\n );\n\n if (label) {\n return (\n <div\n className={classNames('eds-travel-tag__wrapper', {\n [`eds-travel-tag__wrapper--label-position-${labelPlacement}`]: label,\n })}\n >\n {TravelTagWithoutLabel}\n {Label}\n </div>\n );\n }\n\n return TravelTagWithoutLabel;\n};\n"],"names":["getTransportStyle","mode","Icon","MetroIcon","backgroundColor","colors","transport","metro","textColor","brand","white","contrastBackgroundColor","contrast","contrastTextColor","pattern","ariaLabel","BusIcon","bus","PlaneIcon","plane","HelicopterIcon","helicopter","TramIcon","tram","FunicularIcon","funicular","CablewayIcon","cableway","TaxiIcon","taxi","BicycleIcon","bicycle","WalkIcon","walk","TrainIcon","train","FerryIcon","ferry","CarferryIcon","carferry","MobilityIcon","mobility","React","Fragment","blue","Error","LegLine","_ref","_classNames","color","_ref$direction","direction","className","rest","_objectWithoutPropertiesLoose","_excluded","classNames","style","LegBone","startColor","endColor","_ref$showStart","showStart","_ref$showStop","showStop","_ref$showLine","showLine","createElement","warnAboutMissingStyles","_ref$as","as","Element","from","to","_ref$size","size","noWrap","_extends","isContrast","useContrast","children","_ref$labelPlacement","labelPlacement","Switch","contrastColor","icon","_rest$ariaLabel","_ref$alert","alert","_ref$transport","label","_ref$onClose","onClose","undefined","isClosable","transportIsSet","alertIsSet","tagRef","useRef","numberOfChildren","Children","count","useEffect","_tagRef$current","_tagRef$current2","current","setProperty","_classNames2","TravelTagWithoutLabel","ref","role","onClick","CloseSmallIcon","inline","ValidationInfoIcon","ValidationErrorIcon","ValidationExclamationIcon","Label"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"travel.esm.js","sources":["../src/TravelHeader.tsx","../src/utils.ts","../src/TravelTag.tsx","../src/LegLine.tsx","../src/LegBone.tsx","../src/TravelLeg.tsx","../src/TravelSwitch.tsx","../src/index.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport './TravelHeader.scss';\n\nexport type TravelHeaderProps = {\n /** HTML-elementet eller React-komponenten som lager elementet\n * @default 'div'\n */\n as?: string | React.ElementType;\n /** Destinasjonen man reiser fra */\n from: React.ReactNode;\n /** Destinasjonen man reiser til */\n to: React.ReactNode;\n /**Størrelsen på komponenten\n * @default 'large'\n */\n size?: 'large' | 'medium';\n /** Plassere til og fra på samme linje */\n noWrap?: boolean;\n /**Ekstra klassenavn */\n className?: string;\n [key: string]: any;\n};\n\nexport const TravelHeader: React.FC<TravelHeaderProps> = ({\n as: Element = 'div',\n from,\n to,\n size = 'large',\n className,\n noWrap,\n ...rest\n}) => {\n return (\n <Element\n className={classNames('eds-travel-header', className, {\n 'eds-travel-header--large': size === 'large',\n 'eds-travel-header--medium': size === 'medium',\n 'eds-travel-header--no-wrap': noWrap,\n })}\n aria-label={`Fra ${from}, til ${to}`}\n {...rest}\n >\n <span className=\"eds-travel-header__from\">{from}</span>\n <span className=\"eds-travel-header__to\">{to}</span>\n </Element>\n );\n};\n","import React from 'react';\nimport { colors } from '@entur/tokens';\nimport {\n BusIcon,\n FerryIcon,\n CarferryIcon,\n TramIcon,\n PlaneIcon,\n TrainIcon,\n BicycleIcon,\n MobilityIcon,\n MetroIcon,\n HelicopterIcon,\n FunicularIcon,\n CablewayIcon,\n TaxiIcon,\n WalkIcon,\n} from '@entur/icons';\n\nimport type { IconProps } from '@entur/icons';\n\nexport type Transport =\n | 'metro'\n | 'bus'\n | 'plane'\n | 'helicopter'\n | 'tram'\n | 'funicular'\n | 'cableway'\n | 'taxi'\n | 'bicycle'\n | 'walk'\n | 'train'\n | 'ferry'\n | 'carferry'\n | 'mobility'\n | 'airportLinkBus'\n | 'airportLinkRail'\n | 'rail'\n | 'water'\n | 'air'\n | 'none';\n\ntype transportStyleResult = {\n Icon: React.FC<IconProps>;\n backgroundColor: string;\n textColor: string;\n contrastBackgroundColor: string;\n contrastTextColor: string;\n pattern: 'line' | 'wave' | 'dashed' | 'dotted';\n ariaLabel: string;\n};\n\nexport const getTransportStyle = (mode: string): transportStyleResult => {\n switch (mode) {\n case 'metro':\n return {\n Icon: MetroIcon,\n backgroundColor: colors.transport.default.metro,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.metro,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'T-bane',\n };\n case 'bus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.bus,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.bus,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Buss',\n };\n case 'plane':\n case 'air':\n return {\n Icon: PlaneIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Fly',\n };\n case 'helicopter':\n return {\n Icon: HelicopterIcon,\n backgroundColor: colors.transport.default.helicopter,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.helicopter,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Helikopter',\n };\n case 'tram':\n return {\n Icon: TramIcon,\n backgroundColor: colors.transport.default.tram,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.tram,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Trikk',\n };\n case 'funicular':\n return {\n Icon: FunicularIcon,\n backgroundColor: colors.transport.default.funicular,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.funicular,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Taubane',\n };\n case 'cableway':\n return {\n Icon: CablewayIcon,\n backgroundColor: colors.transport.default.cableway,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.cableway,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Gondol',\n };\n case 'taxi':\n return {\n Icon: TaxiIcon,\n backgroundColor: colors.transport.default.taxi,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.taxi,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Taxi',\n };\n case 'bicycle':\n return {\n Icon: BicycleIcon,\n backgroundColor: colors.transport.default.bicycle,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.bicycle,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Sykkel',\n };\n case 'walk':\n return {\n Icon: WalkIcon,\n backgroundColor: colors.transport.default.walk,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.walk,\n contrastTextColor: colors.brand.white,\n pattern: 'dotted',\n ariaLabel: 'Gange',\n };\n case 'train':\n case 'rail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.train,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.train,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Tog',\n };\n case 'ferry':\n case 'water':\n return {\n Icon: FerryIcon,\n backgroundColor: colors.transport.default.ferry,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.ferry,\n contrastTextColor: colors.brand.white,\n pattern: 'wave',\n ariaLabel: 'Ferge',\n };\n case 'carferry':\n return {\n Icon: CarferryIcon,\n backgroundColor: colors.transport.default.carferry,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.carferry,\n contrastTextColor: colors.brand.white,\n pattern: 'wave',\n ariaLabel: 'Bilferge',\n };\n case 'mobility':\n return {\n Icon: MobilityIcon,\n backgroundColor: colors.transport.default.mobility,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.mobility,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'El-sparkesykkel',\n };\n case 'airportLinkBus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Flybuss',\n };\n case 'airportLinkRail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Flytog',\n };\n case 'none':\n return {\n Icon: React.Fragment,\n backgroundColor: colors.brand.blue,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.brand.white,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: '',\n };\n case 'scooter':\n throw Error(\n `transport type 'scooter' is deprecated: Please use 'mobility' instead.`,\n );\n case 'bike':\n throw Error(\n `transport type 'bike' is deprecated: Please use 'bicycle' instead.`,\n );\n case 'car':\n throw Error(\n `transport type 'car' is deprecated: Please use 'taxi' instead.`,\n );\n case 'foot':\n throw Error(\n `transport type 'foot' is deprecated: Please use 'walk' instead.`,\n );\n default:\n throw Error('Please select a transport for the Travel component.');\n }\n};\n","import React, { useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoIcon,\n ValidationErrorIcon,\n ValidationExclamationIcon,\n} from '@entur/icons';\nimport { useContrast } from '@entur/layout';\n\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nimport './TravelTag.scss';\n\nexport type TravelTagProps = {\n /** Callback som kalles for når man skal lukke TravelTag-en\n * @default undefined\n */\n onClose?: () => void;\n /** Innholdet inne i TravelTag-en */\n children?: React.ReactNode;\n /**Ekstra klassenavn */\n className?: string;\n /** Legger til et Valideringsikon i TravelTagen for å signalisere avvik, informasjon e.l.\n * @default \"none\"\n */\n alert?: 'none' | 'error' | 'warning' | 'info';\n /** Legger til farge og ikon tilpasset valgt transportmiddel */\n transport?: Transport;\n /** Element ved siden av eller under TravelTag. */\n label?: React.ReactNode;\n /** Posisjonen til label-en i forhold til TravelTag-en\n * @default \"right\"\n */\n labelPlacement?: 'bottom' | 'right';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelTag: React.FC<TravelTagProps> = ({\n children,\n className,\n alert = 'none',\n transport = 'none',\n label,\n labelPlacement = 'right',\n onClose = undefined,\n ...rest\n}) => {\n const isContrast = useContrast();\n const isClosable = onClose ? true : false;\n const transportIsSet = transport !== 'none';\n const alertIsSet = alert !== 'none';\n const tagRef = useRef<HTMLDivElement>(null);\n const numberOfChildren = React.Children.count(children);\n const {\n Icon,\n contrastBackgroundColor,\n contrastTextColor,\n backgroundColor,\n textColor,\n ariaLabel,\n } = getTransportStyle(transport);\n\n useEffect(() => {\n if (transportIsSet) {\n tagRef.current?.style.setProperty(\n '--background-color',\n isContrast ? contrastBackgroundColor : backgroundColor,\n );\n tagRef.current?.style.setProperty(\n '--text-color',\n isContrast ? contrastTextColor : textColor,\n );\n }\n }, [tagRef.current, backgroundColor, textColor]);\n\n const TravelTagWithoutLabel: JSX.Element = (\n <div\n className={classNames('eds-travel-tag', {\n 'eds-travel-tag--closable': isClosable,\n 'eds-travel-tag--alert': alertIsSet,\n 'eds-travel-tag--alert--error': alert === 'error',\n 'eds-travel-tag--transport': transportIsSet,\n 'eds-travel-tag--icon-and-text':\n numberOfChildren > 1 || (transportIsSet && numberOfChildren > 0),\n className,\n })}\n ref={tagRef}\n {...rest}\n aria-label={\n rest['aria-label'] ?? ariaLabel + (alertIsSet ? ` ${alert}` : '')\n }\n role=\"img\"\n >\n <Icon aria-hidden />\n {children}\n {isClosable && (\n <button onClick={onClose} className=\"eds-travel-tag__close-button\">\n <CloseSmallIcon inline />\n </button>\n )}\n {alertIsSet && (\n <span className=\"eds-travel-tag__alert\">\n {alert === 'info' && (\n <ValidationInfoIcon\n aria-hidden\n className=\"eds-travel-tag__alert-info-icon\"\n />\n )}\n {alert === 'error' && (\n <ValidationErrorIcon\n aria-hidden\n className=\"eds-travel-tag__alert-error-icon\"\n />\n )}\n {alert === 'warning' && (\n <ValidationExclamationIcon\n aria-hidden\n className=\"eds-travel-tag__alert-exclamation-icon\"\n />\n )}\n </span>\n )}\n </div>\n );\n\n const Label: JSX.Element = (\n <div\n className={classNames('eds-travel-tag__label', {\n [`eds-travel-tag__label--${labelPlacement}`]: label,\n [`eds-travel-tag__label--${labelPlacement}--with-alert`]:\n label && alertIsSet,\n })}\n >\n {label}\n </div>\n );\n\n if (label) {\n return (\n <div\n className={classNames('eds-travel-tag__wrapper', {\n [`eds-travel-tag__wrapper--label-position-${labelPlacement}`]: label,\n })}\n >\n {TravelTagWithoutLabel}\n {Label}\n </div>\n );\n }\n\n return TravelTagWithoutLabel;\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport './LegLine.scss';\n\nexport type LegLineProps = {\n /** Farge på LegLine'n */\n color: string;\n /** Retningen til LegLine */\n direction: 'horizontal' | 'vertical';\n /** Hvilket linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegLine: React.FC<LegLineProps> = ({\n color,\n direction = 'horizontal',\n pattern,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames('eds-leg-line', className, {\n [`eds-leg-line--${pattern}`]: pattern,\n [`eds-leg-line--${direction}`]: direction,\n })}\n style={{ backgroundColor: color }}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport { LegLine } from './LegLine';\nimport './LegBone.scss';\n\nexport type LegBoneProps = {\n /** Retning på komponenten */\n direction: 'horizontal' | 'vertical';\n /** Hvilke linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Farge på linja */\n color: string;\n /** Farge på startpunktet\n * @default Verdien til color\n */\n startColor?: string;\n /** Farge på endepunktet\n * @default Verdien til color\n */\n endColor?: string;\n /** Vis startpunkt\n * @default true\n */\n showStart?: boolean;\n /** Vis linke\n * @default true\n */\n showLine?: boolean;\n /** Vis endepunkt\n * @default true\n */\n showStop?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegBone: React.FC<LegBoneProps> = ({\n direction,\n pattern,\n color,\n startColor,\n endColor,\n showStart = true,\n showStop = true,\n showLine = true,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames(className, 'eds-leg-bone', [\n { 'eds-leg-bone--vertical': direction === 'vertical' },\n { 'eds-leg-bone--horizontal': direction === 'horizontal' },\n ])}\n {...rest}\n >\n {showStart && (\n <div\n className={`eds-leg-bone__start`}\n style={{ backgroundColor: startColor || color }}\n />\n )}\n\n {showLine && (\n <LegLine\n className={`eds-leg-bone__line`}\n direction={direction}\n color={color}\n pattern={pattern}\n />\n )}\n\n {showStop && (\n <div\n className={`eds-leg-bone__stop`}\n style={{ backgroundColor: endColor || color }}\n />\n )}\n </div>\n );\n};\n","import React from 'react';\nimport { useContrast } from '@entur/layout';\nimport { LegBone } from './LegBone';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelLegProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Hviklen type reise som skal vises riktig farge og linjetype */\n transport: Transport;\n /** Retningen på komponenten */\n direction: 'horizontal' | 'vertical';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelLeg: React.FC<TravelLegProps> = ({\n className,\n transport,\n direction,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, pattern } =\n getTransportStyle(transport);\n const isContrast = useContrast();\n\n return (\n <LegBone\n direction={direction}\n pattern={pattern}\n color={isContrast ? contrastBackgroundColor : backgroundColor}\n className={className}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport { Switch } from '@entur/form';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nimport './TravelSwitch.scss';\n\nexport type TravelSwitchProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Om switch-en er checked eller ikke */\n checked?: boolean;\n /** Label for TravelSwitch-en. */\n children?: React.ReactNode;\n /** Posisjonen til label for TravelSwitch-en.\n * @default \"right\"\n */\n labelPlacement?: 'right' | 'bottom';\n /** Hvilken type reise som skal vises ikon og farge for */\n transport: Transport; // When adding a new submode, check https://enturas.atlassian.net/wiki/spaces/PUBLIC/pages/825393529/Norwegian+submodes+and+their+definitions for names\n /** Callback for når verdien endres */\n onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Størrelsen på Switch-en\n * @default \"medium\"\n */\n size?: 'medium' | 'large';\n} & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'>;\n\nexport const TravelSwitch: React.FC<TravelSwitchProps> = ({\n className,\n children,\n labelPlacement = 'right',\n transport,\n size,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, Icon } =\n getTransportStyle(transport);\n return (\n <Switch\n className={className}\n labelPlacement={labelPlacement}\n color={backgroundColor}\n contrastColor={contrastBackgroundColor}\n icon={<Icon />}\n size={size}\n {...rest}\n >\n {children}\n </Switch>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('travel');\n\nexport * from './TravelHeader';\nexport * from './TravelTag';\nexport * from './LegLine';\nexport * from './LegBone';\nexport * from './TravelLeg';\nexport * from './TravelSwitch';\n"],"names":["TravelHeader","as","Element","from","to","size","className","noWrap","rest","_excluded","React","createElement","classNames","getTransportStyle","mode","Icon","MetroIcon","backgroundColor","colors","transport","metro","textColor","brand","white","contrastBackgroundColor","contrast","contrastTextColor","pattern","ariaLabel","BusIcon","bus","PlaneIcon","plane","HelicopterIcon","helicopter","TramIcon","tram","FunicularIcon","funicular","CablewayIcon","cableway","TaxiIcon","taxi","BicycleIcon","bicycle","WalkIcon","walk","TrainIcon","train","FerryIcon","ferry","CarferryIcon","carferry","MobilityIcon","mobility","Fragment","blue","Error","TravelTag","children","alert","label","labelPlacement","onClose","undefined","isContrast","useContrast","isClosable","transportIsSet","alertIsSet","tagRef","useRef","numberOfChildren","Children","count","useEffect","current","style","setProperty","TravelTagWithoutLabel","ref","role","onClick","CloseSmallIcon","inline","ValidationInfoIcon","ValidationErrorIcon","ValidationExclamationIcon","Label","LegLine","color","direction","LegBone","startColor","endColor","showStart","showStop","showLine","TravelLeg","TravelSwitch","Switch","contrastColor","icon","warnAboutMissingStyles"],"mappings":"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"}
1
+ {"version":3,"file":"travel.esm.js","sources":["../src/TravelHeader.tsx","../src/utils.ts","../src/TravelTag.tsx","../src/LegLine.tsx","../src/LegBone.tsx","../src/TravelLeg.tsx","../src/TravelSwitch.tsx","../src/index.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport './TravelHeader.scss';\n\nexport type TravelHeaderProps = {\n /** HTML-elementet eller React-komponenten som lager elementet\n * @default 'div'\n */\n as?: string | React.ElementType;\n /** Destinasjonen man reiser fra */\n from: React.ReactNode;\n /** Destinasjonen man reiser til */\n to: React.ReactNode;\n /**Størrelsen på komponenten\n * @default 'large'\n */\n size?: 'large' | 'medium';\n /** Plassere til og fra på samme linje */\n noWrap?: boolean;\n /**Ekstra klassenavn */\n className?: string;\n [key: string]: any;\n};\n\nexport const TravelHeader: React.FC<TravelHeaderProps> = ({\n as: Element = 'div',\n from,\n to,\n size = 'large',\n className,\n noWrap,\n ...rest\n}) => {\n return (\n <Element\n className={classNames('eds-travel-header', className, {\n 'eds-travel-header--large': size === 'large',\n 'eds-travel-header--medium': size === 'medium',\n 'eds-travel-header--no-wrap': noWrap,\n })}\n aria-label={`Fra ${from}, til ${to}`}\n {...rest}\n >\n <span className=\"eds-travel-header__from\">{from}</span>\n <span className=\"eds-travel-header__to\">{to}</span>\n </Element>\n );\n};\n","import React from 'react';\nimport { colors } from '@entur/tokens';\nimport {\n BusIcon,\n FerryIcon,\n CarferryIcon,\n TramIcon,\n PlaneIcon,\n TrainIcon,\n BicycleIcon,\n MobilityIcon,\n MetroIcon,\n HelicopterIcon,\n FunicularIcon,\n CablewayIcon,\n TaxiIcon,\n WalkIcon,\n} from '@entur/icons';\n\nimport type { IconProps } from '@entur/icons';\n\nexport type Transport =\n | 'metro'\n | 'bus'\n | 'plane'\n | 'helicopter'\n | 'tram'\n | 'funicular'\n | 'cableway'\n | 'taxi'\n | 'bicycle'\n | 'walk'\n | 'train'\n | 'ferry'\n | 'carferry'\n | 'mobility'\n | 'airportLinkBus'\n | 'airportLinkRail'\n | 'rail'\n | 'water'\n | 'air'\n | 'none';\n\ntype transportStyleResult = {\n Icon: React.FC<IconProps>;\n backgroundColor: string;\n textColor: string;\n contrastBackgroundColor: string;\n contrastTextColor: string;\n pattern: 'line' | 'wave' | 'dashed' | 'dotted';\n ariaLabel: string;\n};\n\nexport const getTransportStyle = (mode: string): transportStyleResult => {\n switch (mode) {\n case 'metro':\n return {\n Icon: MetroIcon,\n backgroundColor: colors.transport.default.metro,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.metro,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'T-bane',\n };\n case 'bus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.bus,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.bus,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Buss',\n };\n case 'plane':\n case 'air':\n return {\n Icon: PlaneIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Fly',\n };\n case 'helicopter':\n return {\n Icon: HelicopterIcon,\n backgroundColor: colors.transport.default.helicopter,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.helicopter,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Helikopter',\n };\n case 'tram':\n return {\n Icon: TramIcon,\n backgroundColor: colors.transport.default.tram,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.tram,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Trikk',\n };\n case 'funicular':\n return {\n Icon: FunicularIcon,\n backgroundColor: colors.transport.default.funicular,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.funicular,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Taubane',\n };\n case 'cableway':\n return {\n Icon: CablewayIcon,\n backgroundColor: colors.transport.default.cableway,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.cableway,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Gondol',\n };\n case 'taxi':\n return {\n Icon: TaxiIcon,\n backgroundColor: colors.transport.default.taxi,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.taxi,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Taxi',\n };\n case 'bicycle':\n return {\n Icon: BicycleIcon,\n backgroundColor: colors.transport.default.bicycle,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.bicycle,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Sykkel',\n };\n case 'walk':\n return {\n Icon: WalkIcon,\n backgroundColor: colors.transport.default.walk,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.walk,\n contrastTextColor: colors.brand.white,\n pattern: 'dotted',\n ariaLabel: 'Gange',\n };\n case 'train':\n case 'rail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.train,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.train,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Tog',\n };\n case 'ferry':\n case 'water':\n return {\n Icon: FerryIcon,\n backgroundColor: colors.transport.default.ferry,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.ferry,\n contrastTextColor: colors.brand.white,\n pattern: 'wave',\n ariaLabel: 'Ferge',\n };\n case 'carferry':\n return {\n Icon: CarferryIcon,\n backgroundColor: colors.transport.default.carferry,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.carferry,\n contrastTextColor: colors.brand.white,\n pattern: 'wave',\n ariaLabel: 'Bilferge',\n };\n case 'mobility':\n return {\n Icon: MobilityIcon,\n backgroundColor: colors.transport.default.mobility,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.mobility,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'El-sparkesykkel',\n };\n case 'airportLinkBus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Flybuss',\n };\n case 'airportLinkRail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Flytog',\n };\n case 'none':\n return {\n Icon: React.Fragment,\n backgroundColor: colors.brand.blue,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.brand.white,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: '',\n };\n case 'scooter':\n throw Error(\n `transport type 'scooter' is deprecated: Please use 'mobility' instead.`,\n );\n case 'bike':\n throw Error(\n `transport type 'bike' is deprecated: Please use 'bicycle' instead.`,\n );\n case 'car':\n throw Error(\n `transport type 'car' is deprecated: Please use 'taxi' instead.`,\n );\n case 'foot':\n throw Error(\n `transport type 'foot' is deprecated: Please use 'walk' instead.`,\n );\n default:\n throw Error('Please select a transport for the Travel component.');\n }\n};\n","import React, { useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoIcon,\n ValidationErrorIcon,\n ValidationExclamationIcon,\n} from '@entur/icons';\nimport { useContrast } from '@entur/layout';\n\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nimport './TravelTag.scss';\n\nexport type TravelTagProps = {\n /** Callback som kalles for når man skal lukke TravelTag-en\n * @default undefined\n */\n onClose?: () => void;\n /** Innholdet inne i TravelTag-en */\n children?: React.ReactNode;\n /**Ekstra klassenavn */\n className?: string;\n /** Legger til et Valideringsikon i TravelTagen for å signalisere avvik, informasjon e.l.\n * @default \"none\"\n */\n alert?: 'none' | 'error' | 'warning' | 'info';\n /** Legger til farge og ikon tilpasset valgt transportmiddel */\n transport?: Transport;\n /** Element ved siden av eller under TravelTag. */\n label?: React.ReactNode;\n /** Posisjonen til label-en i forhold til TravelTag-en\n * @default \"right\"\n */\n labelPlacement?: 'bottom' | 'right';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelTag: React.FC<TravelTagProps> = ({\n children,\n className,\n alert = 'none',\n transport = 'none',\n label,\n labelPlacement = 'right',\n onClose = undefined,\n ...rest\n}) => {\n const isContrast = useContrast();\n const isClosable = onClose ? true : false;\n const transportIsSet = transport !== 'none';\n const alertIsSet = alert !== 'none';\n const tagRef = useRef<HTMLDivElement>(null);\n const numberOfChildren = React.Children.count(children);\n const {\n Icon,\n contrastBackgroundColor,\n contrastTextColor,\n backgroundColor,\n textColor,\n ariaLabel,\n } = getTransportStyle(transport);\n\n useEffect(() => {\n if (transportIsSet) {\n tagRef.current?.style.setProperty(\n '--background-color',\n isContrast ? contrastBackgroundColor : backgroundColor,\n );\n tagRef.current?.style.setProperty(\n '--text-color',\n isContrast ? contrastTextColor : textColor,\n );\n }\n }, [tagRef.current, backgroundColor, textColor]);\n\n const TravelTagWithoutLabel: JSX.Element = (\n <div\n className={classNames('eds-travel-tag', {\n 'eds-travel-tag--closable': isClosable,\n 'eds-travel-tag--alert': alertIsSet,\n 'eds-travel-tag--alert--error': alert === 'error',\n 'eds-travel-tag--transport': transportIsSet,\n 'eds-travel-tag--icon-and-text':\n numberOfChildren > 1 || (transportIsSet && numberOfChildren > 0),\n className,\n })}\n ref={tagRef}\n {...rest}\n aria-label={\n rest['aria-label'] ?? ariaLabel + (alertIsSet ? ` ${alert}` : '')\n }\n role=\"img\"\n >\n <Icon aria-hidden />\n {children}\n {isClosable && (\n <button onClick={onClose} className=\"eds-travel-tag__close-button\">\n <CloseSmallIcon inline />\n </button>\n )}\n {alertIsSet && (\n <span className=\"eds-travel-tag__alert\">\n {alert === 'info' && (\n <ValidationInfoIcon\n aria-hidden\n className=\"eds-travel-tag__alert-info-icon\"\n />\n )}\n {alert === 'error' && (\n <ValidationErrorIcon\n aria-hidden\n className=\"eds-travel-tag__alert-error-icon\"\n />\n )}\n {alert === 'warning' && (\n <ValidationExclamationIcon\n aria-hidden\n className=\"eds-travel-tag__alert-exclamation-icon\"\n />\n )}\n </span>\n )}\n </div>\n );\n\n const Label: JSX.Element = (\n <div\n className={classNames('eds-travel-tag__label', {\n [`eds-travel-tag__label--${labelPlacement}`]: label,\n [`eds-travel-tag__label--${labelPlacement}--with-alert`]:\n label && alertIsSet,\n })}\n >\n {label}\n </div>\n );\n\n if (label) {\n return (\n <div\n className={classNames('eds-travel-tag__wrapper', {\n [`eds-travel-tag__wrapper--label-position-${labelPlacement}`]: label,\n })}\n >\n {TravelTagWithoutLabel}\n {Label}\n </div>\n );\n }\n\n return TravelTagWithoutLabel;\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport './LegLine.scss';\n\nexport type LegLineProps = {\n /** Farge på LegLine'n */\n color: string;\n /** Retningen til LegLine */\n direction: 'horizontal' | 'vertical';\n /** Hvilket linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegLine: React.FC<LegLineProps> = ({\n color,\n direction = 'horizontal',\n pattern,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames('eds-leg-line', className, {\n [`eds-leg-line--${pattern}`]: pattern,\n [`eds-leg-line--${direction}`]: direction,\n })}\n style={{ backgroundColor: color }}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport { LegLine } from './LegLine';\nimport './LegBone.scss';\n\nexport type LegBoneProps = {\n /** Retning på komponenten */\n direction: 'horizontal' | 'vertical';\n /** Hvilke linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Farge på linja */\n color: string;\n /** Farge på startpunktet\n * @default Verdien til color\n */\n startColor?: string;\n /** Farge på endepunktet\n * @default Verdien til color\n */\n endColor?: string;\n /** Vis startpunkt\n * @default true\n */\n showStart?: boolean;\n /** Vis linke\n * @default true\n */\n showLine?: boolean;\n /** Vis endepunkt\n * @default true\n */\n showStop?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegBone: React.FC<LegBoneProps> = ({\n direction,\n pattern,\n color,\n startColor,\n endColor,\n showStart = true,\n showStop = true,\n showLine = true,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames(className, 'eds-leg-bone', [\n { 'eds-leg-bone--vertical': direction === 'vertical' },\n { 'eds-leg-bone--horizontal': direction === 'horizontal' },\n ])}\n {...rest}\n >\n {showStart && (\n <div\n className={`eds-leg-bone__start`}\n style={{ backgroundColor: startColor || color }}\n />\n )}\n\n {showLine && (\n <LegLine\n className={`eds-leg-bone__line`}\n direction={direction}\n color={color}\n pattern={pattern}\n />\n )}\n\n {showStop && (\n <div\n className={`eds-leg-bone__stop`}\n style={{ backgroundColor: endColor || color }}\n />\n )}\n </div>\n );\n};\n","import React from 'react';\nimport { useContrast } from '@entur/layout';\nimport { LegBone } from './LegBone';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelLegProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Hviklen type reise som skal vises riktig farge og linjetype */\n transport: Transport;\n /** Retningen på komponenten */\n direction: 'horizontal' | 'vertical';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelLeg: React.FC<TravelLegProps> = ({\n className,\n transport,\n direction,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, pattern } =\n getTransportStyle(transport);\n const isContrast = useContrast();\n\n return (\n <LegBone\n direction={direction}\n pattern={pattern}\n color={isContrast ? contrastBackgroundColor : backgroundColor}\n className={className}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport { Switch } from '@entur/form';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelSwitchProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Om switch-en er checked eller ikke */\n checked?: boolean;\n /** Label for TravelSwitch-en. */\n children?: React.ReactNode;\n /** Posisjonen til label for TravelSwitch-en.\n * @default \"right\"\n */\n labelPlacement?: 'right' | 'bottom';\n /** Hvilken type reise som skal vises ikon og farge for */\n transport: Transport; // When adding a new submode, check https://enturas.atlassian.net/wiki/spaces/PUBLIC/pages/825393529/Norwegian+submodes+and+their+definitions for names\n /** Callback for når verdien endres */\n onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Størrelsen på Switch-en\n * @default \"medium\"\n */\n size?: 'medium' | 'large';\n} & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'>;\n\nexport const TravelSwitch: React.FC<TravelSwitchProps> = ({\n className,\n children,\n labelPlacement = 'right',\n transport,\n size,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, Icon } =\n getTransportStyle(transport);\n return (\n <Switch\n className={className}\n labelPlacement={labelPlacement}\n color={backgroundColor}\n contrastColor={contrastBackgroundColor}\n icon={<Icon />}\n size={size}\n {...rest}\n >\n {children}\n </Switch>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('travel');\n\nexport * from './TravelHeader';\nexport * from './TravelTag';\nexport * from './LegLine';\nexport * from './LegBone';\nexport * from './TravelLeg';\nexport * from './TravelSwitch';\n"],"names":["TravelHeader","as","Element","from","to","size","className","noWrap","rest","_excluded","React","createElement","classNames","getTransportStyle","mode","Icon","MetroIcon","backgroundColor","colors","transport","metro","textColor","brand","white","contrastBackgroundColor","contrast","contrastTextColor","pattern","ariaLabel","BusIcon","bus","PlaneIcon","plane","HelicopterIcon","helicopter","TramIcon","tram","FunicularIcon","funicular","CablewayIcon","cableway","TaxiIcon","taxi","BicycleIcon","bicycle","WalkIcon","walk","TrainIcon","train","FerryIcon","ferry","CarferryIcon","carferry","MobilityIcon","mobility","Fragment","blue","Error","TravelTag","children","alert","label","labelPlacement","onClose","undefined","isContrast","useContrast","isClosable","transportIsSet","alertIsSet","tagRef","useRef","numberOfChildren","Children","count","useEffect","current","style","setProperty","TravelTagWithoutLabel","ref","role","onClick","CloseSmallIcon","inline","ValidationInfoIcon","ValidationErrorIcon","ValidationExclamationIcon","Label","LegLine","color","direction","LegBone","startColor","endColor","showStart","showStop","showLine","TravelLeg","TravelSwitch","Switch","contrastColor","icon","warnAboutMissingStyles"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwBaA,IAAAA,YAAY,GAAgC,SAA5CA,YAAY,CAQpB,IAAA,EAAA;AAAA,EAAA,IAAA,OAAA,GAAA,IAAA,CAPHC,EAAE;AAAEC,IAAAA,OAAO,wBAAG,KAAK,GAAA,OAAA;AACnBC,IAAAA,IAAI,QAAJA,IAAI;AACJC,IAAAA,EAAE,QAAFA,EAAE;AAAA,IAAA,SAAA,GAAA,IAAA,CACFC,IAAI;AAAJA,IAAAA,IAAI,0BAAG,OAAO,GAAA,SAAA;AACdC,IAAAA,SAAS,QAATA,SAAS;AACTC,IAAAA,MAAM,QAANA,MAAM;IACHC,IAAI,GAAA,6BAAA,CAAA,IAAA,EAAAC,WAAA,CAAA,CAAA;AAEP,EAAA,OACEC,KAAC,CAAAC,aAAA,CAAAT,OAAO,EAAA,QAAA,CAAA;AACNI,IAAAA,SAAS,EAAEM,UAAU,CAAC,mBAAmB,EAAEN,SAAS,EAAE;MACpD,0BAA0B,EAAED,IAAI,KAAK,OAAO;MAC5C,2BAA2B,EAAEA,IAAI,KAAK,QAAQ;AAC9C,MAAA,4BAA4B,EAAEE,MAAAA;AAC/B,KAAA,CAAC;2BACiBJ,IAAI,GAASC,QAAAA,GAAAA,EAAAA;AAAI,GAAA,EAChCI,IAAI,CAERE,EAAAA,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAML,IAAAA,SAAS,EAAC,yBAAA;GAAyB,EAAEH,IAAI,CAAQ,EACvDO,KAAM,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAAL,IAAAA,SAAS,EAAC,uBAAA;GAAuB,EAAEF,EAAE,CAAQ,CAC3C,CAAA;AAEd;;ACMO,IAAMS,iBAAiB,GAAG,SAApBA,iBAAiB,CAAIC,IAAY,EAA0B;AACtE,EAAA,QAAQA,IAAI;AACV,IAAA,KAAK,OAAO;MACV,OAAO;AACLC,QAAAA,IAAI,EAAEC,SAAS;AACfC,QAAAA,eAAe,EAAEC,MAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACC,KAAK;AAC/CC,QAAAA,SAAS,EAAEH,MAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,MAAM,CAACC,SAAS,CAACM,QAAQ,CAACL,KAAK;AACxDM,QAAAA,iBAAiB,EAAER,MAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,QAAA;OACZ,CAAA;AACH,IAAA,KAAK,KAAK;MACR,OAAO;AACLb,QAAAA,IAAI,EAAEc,OAAO;AACbZ,QAAAA,eAAe,EAAEC,MAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACW,GAAG;AAC7CT,QAAAA,SAAS,EAAEH,MAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,MAAM,CAACC,SAAS,CAACM,QAAQ,CAACK,GAAG;AACtDJ,QAAAA,iBAAiB,EAAER,MAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,QAAQ;AACjBC,QAAAA,SAAS,EAAE,MAAA;OACZ,CAAA;AACH,IAAA,KAAK,OAAO,CAAA;AACZ,IAAA,KAAK,KAAK;MACR,OAAO;AACLb,QAAAA,IAAI,EAAEgB,SAAS;AACfd,QAAAA,eAAe,EAAEC,MAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACa,KAAK;AAC/CX,QAAAA,SAAS,EAAEH,MAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,MAAM,CAACC,SAAS,CAACM,QAAQ,CAACO,KAAK;AACxDN,QAAAA,iBAAiB,EAAER,MAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,KAAA;OACZ,CAAA;AACH,IAAA,KAAK,YAAY;MACf,OAAO;AACLb,QAAAA,IAAI,EAAEkB,cAAc;AACpBhB,QAAAA,eAAe,EAAEC,MAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACe,UAAU;AACpDb,QAAAA,SAAS,EAAEH,MAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,MAAM,CAACC,SAAS,CAACM,QAAQ,CAACS,UAAU;AAC7DR,QAAAA,iBAAiB,EAAER,MAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,YAAA;OACZ,CAAA;AACH,IAAA,KAAK,MAAM;MACT,OAAO;AACLb,QAAAA,IAAI,EAAEoB,QAAQ;AACdlB,QAAAA,eAAe,EAAEC,MAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACiB,IAAI;AAC9Cf,QAAAA,SAAS,EAAEH,MAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,MAAM,CAACC,SAAS,CAACM,QAAQ,CAACW,IAAI;AACvDV,QAAAA,iBAAiB,EAAER,MAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,OAAA;OACZ,CAAA;AACH,IAAA,KAAK,WAAW;MACd,OAAO;AACLb,QAAAA,IAAI,EAAEsB,aAAa;AACnBpB,QAAAA,eAAe,EAAEC,MAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACmB,SAAS;AACnDjB,QAAAA,SAAS,EAAEH,MAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,MAAM,CAACC,SAAS,CAACM,QAAQ,CAACa,SAAS;AAC5DZ,QAAAA,iBAAiB,EAAER,MAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,SAAA;OACZ,CAAA;AACH,IAAA,KAAK,UAAU;MACb,OAAO;AACLb,QAAAA,IAAI,EAAEwB,YAAY;AAClBtB,QAAAA,eAAe,EAAEC,MAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACqB,QAAQ;AAClDnB,QAAAA,SAAS,EAAEH,MAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,MAAM,CAACC,SAAS,CAACM,QAAQ,CAACe,QAAQ;AAC3Dd,QAAAA,iBAAiB,EAAER,MAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,QAAA;OACZ,CAAA;AACH,IAAA,KAAK,MAAM;MACT,OAAO;AACLb,QAAAA,IAAI,EAAE0B,QAAQ;AACdxB,QAAAA,eAAe,EAAEC,MAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACuB,IAAI;AAC9CrB,QAAAA,SAAS,EAAEH,MAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,MAAM,CAACC,SAAS,CAACM,QAAQ,CAACiB,IAAI;AACvDhB,QAAAA,iBAAiB,EAAER,MAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,QAAQ;AACjBC,QAAAA,SAAS,EAAE,MAAA;OACZ,CAAA;AACH,IAAA,KAAK,SAAS;MACZ,OAAO;AACLb,QAAAA,IAAI,EAAE4B,WAAW;AACjB1B,QAAAA,eAAe,EAAEC,MAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACyB,OAAO;AACjDvB,QAAAA,SAAS,EAAEH,MAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,MAAM,CAACC,SAAS,CAACM,QAAQ,CAACmB,OAAO;AAC1DlB,QAAAA,iBAAiB,EAAER,MAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,QAAA;OACZ,CAAA;AACH,IAAA,KAAK,MAAM;MACT,OAAO;AACLb,QAAAA,IAAI,EAAE8B,QAAQ;AACd5B,QAAAA,eAAe,EAAEC,MAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAAC2B,IAAI;AAC9CzB,QAAAA,SAAS,EAAEH,MAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,MAAM,CAACC,SAAS,CAACM,QAAQ,CAACqB,IAAI;AACvDpB,QAAAA,iBAAiB,EAAER,MAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,QAAQ;AACjBC,QAAAA,SAAS,EAAE,OAAA;OACZ,CAAA;AACH,IAAA,KAAK,OAAO,CAAA;AACZ,IAAA,KAAK,MAAM;MACT,OAAO;AACLb,QAAAA,IAAI,EAAEgC,SAAS;AACf9B,QAAAA,eAAe,EAAEC,MAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAAC6B,KAAK;AAC/C3B,QAAAA,SAAS,EAAEH,MAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,MAAM,CAACC,SAAS,CAACM,QAAQ,CAACuB,KAAK;AACxDtB,QAAAA,iBAAiB,EAAER,MAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,KAAA;OACZ,CAAA;AACH,IAAA,KAAK,OAAO,CAAA;AACZ,IAAA,KAAK,OAAO;MACV,OAAO;AACLb,QAAAA,IAAI,EAAEkC,SAAS;AACfhC,QAAAA,eAAe,EAAEC,MAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAAC+B,KAAK;AAC/C7B,QAAAA,SAAS,EAAEH,MAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,MAAM,CAACC,SAAS,CAACM,QAAQ,CAACyB,KAAK;AACxDxB,QAAAA,iBAAiB,EAAER,MAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,OAAA;OACZ,CAAA;AACH,IAAA,KAAK,UAAU;MACb,OAAO;AACLb,QAAAA,IAAI,EAAEoC,YAAY;AAClBlC,QAAAA,eAAe,EAAEC,MAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACiC,QAAQ;AAClD/B,QAAAA,SAAS,EAAEH,MAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,MAAM,CAACC,SAAS,CAACM,QAAQ,CAAC2B,QAAQ;AAC3D1B,QAAAA,iBAAiB,EAAER,MAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,UAAA;OACZ,CAAA;AACH,IAAA,KAAK,UAAU;MACb,OAAO;AACLb,QAAAA,IAAI,EAAEsC,YAAY;AAClBpC,QAAAA,eAAe,EAAEC,MAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACmC,QAAQ;AAClDjC,QAAAA,SAAS,EAAEH,MAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,MAAM,CAACC,SAAS,CAACM,QAAQ,CAAC6B,QAAQ;AAC3D5B,QAAAA,iBAAiB,EAAER,MAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,iBAAA;OACZ,CAAA;AACH,IAAA,KAAK,gBAAgB;MACnB,OAAO;AACLb,QAAAA,IAAI,EAAEc,OAAO;AACbZ,QAAAA,eAAe,EAAEC,MAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACa,KAAK;AAC/CX,QAAAA,SAAS,EAAEH,MAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,MAAM,CAACC,SAAS,CAACM,QAAQ,CAACO,KAAK;AACxDN,QAAAA,iBAAiB,EAAER,MAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,QAAQ;AACjBC,QAAAA,SAAS,EAAE,SAAA;OACZ,CAAA;AACH,IAAA,KAAK,iBAAiB;MACpB,OAAO;AACLb,QAAAA,IAAI,EAAEgC,SAAS;AACf9B,QAAAA,eAAe,EAAEC,MAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACa,KAAK;AAC/CX,QAAAA,SAAS,EAAEH,MAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,MAAM,CAACC,SAAS,CAACM,QAAQ,CAACO,KAAK;AACxDN,QAAAA,iBAAiB,EAAER,MAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,QAAA;OACZ,CAAA;AACH,IAAA,KAAK,MAAM;MACT,OAAO;QACLb,IAAI,EAAEL,KAAK,CAAC6C,QAAQ;AACpBtC,QAAAA,eAAe,EAAEC,MAAM,CAACI,KAAK,CAACkC,IAAI;AAClCnC,QAAAA,SAAS,EAAEH,MAAM,CAACI,KAAK,CAACC,KAAK;AAC7BC,QAAAA,uBAAuB,EAAEN,MAAM,CAACI,KAAK,CAACC,KAAK;AAC3CG,QAAAA,iBAAiB,EAAER,MAAM,CAACI,KAAK,CAACC,KAAK;AACrCI,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,EAAA;OACZ,CAAA;AACH,IAAA,KAAK,SAAS;AACZ,MAAA,MAAM6B,KAAK,CAEV,wEAAA,CAAA,CAAA;AACH,IAAA,KAAK,MAAM;AACT,MAAA,MAAMA,KAAK,CAEV,oEAAA,CAAA,CAAA;AACH,IAAA,KAAK,KAAK;AACR,MAAA,MAAMA,KAAK,CAEV,gEAAA,CAAA,CAAA;AACH,IAAA,KAAK,MAAM;AACT,MAAA,MAAMA,KAAK,CAEV,iEAAA,CAAA,CAAA;AACH,IAAA;MACE,MAAMA,KAAK,CAAC,qDAAqD,CAAC,CAAA;AAAC,GAAA;AAEzE,CAAC;;;AC7MYC,IAAAA,SAAS,GAA6B,SAAtCA,SAAS,CASjB,IAAA,EAAA;AAAA,EAAA,IAAA,eAAA,EAAA,WAAA,CAAA;EAAA,IARHC,QAAQ,QAARA,QAAQ;AACRrD,IAAAA,SAAS,QAATA,SAAS;AAAA,IAAA,UAAA,GAAA,IAAA,CACTsD,KAAK;AAALA,IAAAA,KAAK,2BAAG,MAAM,GAAA,UAAA;AAAA,IAAA,cAAA,GAAA,IAAA,CACdzC,SAAS;AAATA,IAAAA,SAAS,+BAAG,MAAM,GAAA,cAAA;AAClB0C,IAAAA,KAAK,QAALA,KAAK;AAAA,IAAA,mBAAA,GAAA,IAAA,CACLC,cAAc;AAAdA,IAAAA,cAAc,oCAAG,OAAO,GAAA,mBAAA;AAAA,IAAA,YAAA,GAAA,IAAA,CACxBC,OAAO;AAAPA,IAAAA,OAAO,6BAAGC,SAAS,GAAA,YAAA;IAChBxD,IAAI,GAAA,6BAAA,CAAA,IAAA,EAAAC,WAAA,CAAA,CAAA;EAEP,IAAMwD,UAAU,GAAGC,WAAW,EAAE,CAAA;AAChC,EAAA,IAAMC,UAAU,GAAGJ,OAAO,GAAG,IAAI,GAAG,KAAK,CAAA;AACzC,EAAA,IAAMK,cAAc,GAAGjD,SAAS,KAAK,MAAM,CAAA;AAC3C,EAAA,IAAMkD,UAAU,GAAGT,KAAK,KAAK,MAAM,CAAA;AACnC,EAAA,IAAMU,MAAM,GAAGC,MAAM,CAAiB,IAAI,CAAC,CAAA;EAC3C,IAAMC,gBAAgB,GAAG9D,KAAK,CAAC+D,QAAQ,CAACC,KAAK,CAACf,QAAQ,CAAC,CAAA;EACvD,IAOI9C,kBAAAA,GAAAA,iBAAiB,CAACM,SAAS,CAAC;AAN9BJ,IAAAA,IAAI,sBAAJA,IAAI;AACJS,IAAAA,uBAAuB,sBAAvBA,uBAAuB;AACvBE,IAAAA,iBAAiB,sBAAjBA,iBAAiB;AACjBT,IAAAA,eAAe,sBAAfA,eAAe;AACfI,IAAAA,SAAS,sBAATA,SAAS;AACTO,IAAAA,SAAS,sBAATA,SAAS,CAAA;AAGX+C,EAAAA,SAAS,CAAC,YAAK;AACb,IAAA,IAAIP,cAAc,EAAE;AAAA,MAAA,IAAA,eAAA,EAAA,gBAAA,CAAA;AAClB,MAAA,CAAA,eAAA,GAAAE,MAAM,CAACM,OAAO,KAAd,IAAA,GAAA,KAAA,CAAA,GAAA,eAAA,CAAgBC,KAAK,CAACC,WAAW,CAC/B,oBAAoB,EACpBb,UAAU,GAAGzC,uBAAuB,GAAGP,eAAe,CACvD,CAAA;AACD,MAAA,CAAA,gBAAA,GAAAqD,MAAM,CAACM,OAAO,KAAd,IAAA,GAAA,KAAA,CAAA,GAAA,gBAAA,CAAgBC,KAAK,CAACC,WAAW,CAC/B,cAAc,EACdb,UAAU,GAAGvC,iBAAiB,GAAGL,SAAS,CAC3C,CAAA;AACF,KAAA;GACF,EAAE,CAACiD,MAAM,CAACM,OAAO,EAAE3D,eAAe,EAAEI,SAAS,CAAC,CAAC,CAAA;AAEhD,EAAA,IAAM0D,qBAAqB,GACzBrE,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA,QAAA,CAAA;AACEL,IAAAA,SAAS,EAAEM,UAAU,CAAC,gBAAgB,EAAE;AACtC,MAAA,0BAA0B,EAAEuD,UAAU;AACtC,MAAA,uBAAuB,EAAEE,UAAU;MACnC,8BAA8B,EAAET,KAAK,KAAK,OAAO;AACjD,MAAA,2BAA2B,EAAEQ,cAAc;MAC3C,+BAA+B,EAC7BI,gBAAgB,GAAG,CAAC,IAAKJ,cAAc,IAAII,gBAAgB,GAAG,CAAE;AAClElE,MAAAA,SAAS,EAATA,SAAAA;AACD,KAAA,CAAC;AACF0E,IAAAA,GAAG,EAAEV,MAAAA;AAAM,GAAA,EACP9D,IAAI,EAAA;AAEN,IAAA,YAAA,EAAAA,CAAAA,eAAAA,GAAAA,IAAI,CAAC,YAAY,CAAC,KAAA,IAAA,GAAA,eAAA,GAAIoB,SAAS,IAAIyC,UAAU,GAAA,GAAA,GAAOT,KAAK,GAAK,EAAE,CAAC;AAEnEqB,IAAAA,IAAI,EAAC,KAAA;AAAK,GAAA,CAAA,EAEVvE,KAAA,CAAAC,aAAA,CAACI,IAAI,EAAe;AAAA,IAAA,aAAA,EAAA,IAAA;GAAA,CAAA,EACnB4C,QAAQ,EACRQ,UAAU,IACTzD,KAAQ,CAAAC,aAAA,CAAA,QAAA,EAAA;AAAAuE,IAAAA,OAAO,EAAEnB,OAAO;AAAEzD,IAAAA,SAAS,EAAC,8BAAA;AAA8B,GAAA,EAChEI,KAAA,CAAAC,aAAA,CAACwE,cAAc,EAAA;AAACC,IAAAA,MAAM,EAAA,IAAA;GAAA,CAAG,CAE5B,EACAf,UAAU,IACT3D,KAAM,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAAL,IAAAA,SAAS,EAAC,uBAAA;GAAuB,EACpCsD,KAAK,KAAK,MAAM,IACflD,KAAA,CAAAC,aAAA,CAAC0E,kBAAkB,EAAA;AAAA,IAAA,aAAA,EAAA,IAAA;AAEjB/E,IAAAA,SAAS,EAAC,iCAAA;GAAiC,CAE9C,EACAsD,KAAK,KAAK,OAAO,IAChBlD,KAAA,CAAAC,aAAA,CAAC2E,mBAAmB,EAAA;AAAA,IAAA,aAAA,EAAA,IAAA;AAElBhF,IAAAA,SAAS,EAAC,kCAAA;GAAkC,CAE/C,EACAsD,KAAK,KAAK,SAAS,IAClBlD,KAAA,CAAAC,aAAA,CAAC4E,yBAAyB,EAExB;AAAA,IAAA,aAAA,EAAA,IAAA;AAAAjF,IAAAA,SAAS,EAAC,wCAAA;IAEb,CAEJ,CAEJ,CAAA;AAED,EAAA,IAAMkF,KAAK,GACT9E,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEL,IAAAA,SAAS,EAAEM,UAAU,CAAC,uBAAuB,GAChBkD,WAAAA,GAAAA,EAAAA,EAAAA,WAAAA,CAAAA,yBAAAA,GAAAA,cAAc,CAAKD,GAAAA,KAAK,EACxBC,WAAAA,CAAAA,yBAAAA,GAAAA,cAAc,GACvCD,cAAAA,CAAAA,GAAAA,KAAK,IAAIQ,UAAU,EAAA,WAAA,EAAA;GAGtB,EAAAR,KAAK,CAET,CAAA;AAED,EAAA,IAAIA,KAAK,EAAE;AAAA,IAAA,IAAA,YAAA,CAAA;AACT,IAAA,OACEnD,KACE,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAAL,MAAAA,SAAS,EAAEM,UAAU,CAAC,yBAAyB,GACDkD,YAAAA,GAAAA,EAAAA,EAAAA,YAAAA,CAAAA,0CAAAA,GAAAA,cAAc,IAAKD,KAAK,EAAA,YAAA,EAAA;AACpE,KAAA,EAEDkB,qBAAqB,EACrBS,KAAK,CACF,CAAA;AAET,GAAA;AAED,EAAA,OAAOT,qBAAqB,CAAA;AAC9B;;;AC1IaU,IAAAA,OAAO,GAA2B,SAAlCA,OAAO,CAMf,IAAA,EAAA;AAAA,EAAA,IAAA,WAAA,CAAA;EAAA,IALHC,KAAK,QAALA,KAAK;AAAA,IAAA,cAAA,GAAA,IAAA,CACLC,SAAS;AAATA,IAAAA,SAAS,+BAAG,YAAY,GAAA,cAAA;AACxBhE,IAAAA,OAAO,QAAPA,OAAO;AACPrB,IAAAA,SAAS,QAATA,SAAS;IACNE,IAAI,GAAA,6BAAA,CAAA,IAAA,EAAAC,WAAA,CAAA,CAAA;AAEP,EAAA,OACEC;AACEJ,IAAAA,SAAS,EAAEM,UAAU,CAAC,cAAc,EAAEN,SAAS,GAAA,WAAA,GAAA,EAAA,EAAA,WAAA,CAAA,gBAAA,GAC3BqB,OAAO,CAAA,GAAKA,OAAO,EAAA,WAAA,CAAA,gBAAA,GACnBgE,SAAS,CAAA,GAAKA,SAAS,EACzC,WAAA,EAAA;AACFd,IAAAA,KAAK,EAAE;AAAE5D,MAAAA,eAAe,EAAEyE,KAAAA;AAAK,KAAA;AAAE,GAAA,EAC7BlF,IAAI,CACR,CAAA,CAAA;AAEN;;;ACIaoF,IAAAA,OAAO,GAA2B,SAAlCA,OAAO,CAWf,IAAA,EAAA;EAAA,IAVHD,SAAS,QAATA,SAAS;AACThE,IAAAA,OAAO,QAAPA,OAAO;AACP+D,IAAAA,KAAK,QAALA,KAAK;AACLG,IAAAA,UAAU,QAAVA,UAAU;AACVC,IAAAA,QAAQ,QAARA,QAAQ;AAAA,IAAA,cAAA,GAAA,IAAA,CACRC,SAAS;AAATA,IAAAA,SAAS,+BAAG,IAAI,GAAA,cAAA;AAAA,IAAA,aAAA,GAAA,IAAA,CAChBC,QAAQ;AAARA,IAAAA,QAAQ,8BAAG,IAAI,GAAA,aAAA;AAAA,IAAA,aAAA,GAAA,IAAA,CACfC,QAAQ;AAARA,IAAAA,QAAQ,8BAAG,IAAI,GAAA,aAAA;AACf3F,IAAAA,SAAS,QAATA,SAAS;IACNE,IAAI,GAAA,6BAAA,CAAA,IAAA,EAAAC,WAAA,CAAA,CAAA;AAEP,EAAA,OACEC;AACEJ,IAAAA,SAAS,EAAEM,UAAU,CAACN,SAAS,EAAE,cAAc,EAAE,CAC/C;MAAE,wBAAwB,EAAEqF,SAAS,KAAK,UAAA;AAAY,KAAA,EACtD;MAAE,0BAA0B,EAAEA,SAAS,KAAK,YAAA;AAAc,KAAA,CAC3D,CAAA;GACGnF,EAAAA,IAAI,GAEPuF,SAAS,IACRrF,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEL,IAAAA,SAAS,EAAuB,qBAAA;AAChCuE,IAAAA,KAAK,EAAE;MAAE5D,eAAe,EAAE4E,UAAU,IAAIH,KAAAA;AAAK,KAAA;IAEhD,EAEAO,QAAQ,IACPvF,KAAC,CAAAC,aAAA,CAAA8E,OAAO;AACNnF,IAAAA,SAAS,EAAsB,oBAAA;AAC/BqF,IAAAA,SAAS,EAAEA,SAAS;AACpBD,IAAAA,KAAK,EAAEA,KAAK;AACZ/D,IAAAA,OAAO,EAAEA,OAAAA;GAAO,CAEnB,EAEAqE,QAAQ,IACPtF,KACE,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAAL,IAAAA,SAAS,EAAsB,oBAAA;AAC/BuE,IAAAA,KAAK,EAAE;MAAE5D,eAAe,EAAE6E,QAAQ,IAAIJ,KAAAA;AAAK,KAAA;IAE9C,CACG,CAAA;AAEV;;;AChEaQ,IAAAA,SAAS,GAA6B,SAAtCA,SAAS,CAKjB,IAAA,EAAA;EAAA,IAJH5F,SAAS,QAATA,SAAS;AACTa,IAAAA,SAAS,QAATA,SAAS;AACTwE,IAAAA,SAAS,QAATA,SAAS;IACNnF,IAAI,GAAA,6BAAA,CAAA,IAAA,EAAAC,WAAA,CAAA,CAAA;EAEP,IACEI,kBAAAA,GAAAA,iBAAiB,CAACM,SAAS,CAAC;AADtBF,IAAAA,eAAe,sBAAfA,eAAe;AAAEO,IAAAA,uBAAuB,sBAAvBA,uBAAuB;AAAEG,IAAAA,OAAO,sBAAPA,OAAO,CAAA;EAEzD,IAAMsC,UAAU,GAAGC,WAAW,EAAE,CAAA;AAEhC,EAAA,OACExD,KAAA,CAAAC,aAAA,CAACiF,OAAO,EAAA,QAAA,CAAA;AACND,IAAAA,SAAS,EAAEA,SAAS;AACpBhE,IAAAA,OAAO,EAAEA,OAAO;AAChB+D,IAAAA,KAAK,EAAEzB,UAAU,GAAGzC,uBAAuB,GAAGP,eAAe;AAC7DX,IAAAA,SAAS,EAAEA,SAAAA;AAAS,GAAA,EAChBE,IAAI,CACR,CAAA,CAAA;AAEN;;;ACXa2F,IAAAA,YAAY,GAAgC,SAA5CA,YAAY,CAOpB,IAAA,EAAA;EAAA,IANH7F,SAAS,QAATA,SAAS;AACTqD,IAAAA,QAAQ,QAARA,QAAQ;AAAA,IAAA,mBAAA,GAAA,IAAA,CACRG,cAAc;AAAdA,IAAAA,cAAc,oCAAG,OAAO,GAAA,mBAAA;AACxB3C,IAAAA,SAAS,QAATA,SAAS;AACTd,IAAAA,IAAI,QAAJA,IAAI;IACDG,IAAI,GAAA,6BAAA,CAAA,IAAA,EAAA,SAAA,CAAA,CAAA;EAEP,IACEK,kBAAAA,GAAAA,iBAAiB,CAACM,SAAS,CAAC;AADtBF,IAAAA,eAAe,sBAAfA,eAAe;AAAEO,IAAAA,uBAAuB,sBAAvBA,uBAAuB;AAAET,IAAAA,IAAI,sBAAJA,IAAI,CAAA;AAEtD,EAAA,OACEL,KAAA,CAAAC,aAAA,CAACyF,MAAM,EAAA,QAAA,CAAA;AACL9F,IAAAA,SAAS,EAAEA,SAAS;AACpBwD,IAAAA,cAAc,EAAEA,cAAc;AAC9B4B,IAAAA,KAAK,EAAEzE,eAAe;AACtBoF,IAAAA,aAAa,EAAE7E,uBAAuB;IACtC8E,IAAI,EAAE5F,KAAC,CAAAC,aAAA,CAAAI,IAAI,OAAG;AACdV,IAAAA,IAAI,EAAEA,IAAAA;GACFG,EAAAA,IAAI,CAEPmD,EAAAA,QAAQ,CACF,CAAA;AAEb;;AC/CA4C,sBAAsB,CAAC,QAAQ,CAAC;;;;"}
package/dist/utils.d.ts CHANGED
@@ -1,14 +1,14 @@
1
- import React from 'react';
2
- import type { IconProps } from '@entur/icons';
3
- export type Transport = 'metro' | 'bus' | 'plane' | 'helicopter' | 'tram' | 'funicular' | 'cableway' | 'taxi' | 'bicycle' | 'walk' | 'train' | 'ferry' | 'carferry' | 'mobility' | 'airportLinkBus' | 'airportLinkRail' | 'rail' | 'water' | 'air' | 'none';
4
- type transportStyleResult = {
5
- Icon: React.FC<IconProps>;
6
- backgroundColor: string;
7
- textColor: string;
8
- contrastBackgroundColor: string;
9
- contrastTextColor: string;
10
- pattern: 'line' | 'wave' | 'dashed' | 'dotted';
11
- ariaLabel: string;
12
- };
13
- export declare const getTransportStyle: (mode: string) => transportStyleResult;
14
- export {};
1
+ import React from 'react';
2
+ import type { IconProps } from '@entur/icons';
3
+ export type Transport = 'metro' | 'bus' | 'plane' | 'helicopter' | 'tram' | 'funicular' | 'cableway' | 'taxi' | 'bicycle' | 'walk' | 'train' | 'ferry' | 'carferry' | 'mobility' | 'airportLinkBus' | 'airportLinkRail' | 'rail' | 'water' | 'air' | 'none';
4
+ type transportStyleResult = {
5
+ Icon: React.FC<IconProps>;
6
+ backgroundColor: string;
7
+ textColor: string;
8
+ contrastBackgroundColor: string;
9
+ contrastTextColor: string;
10
+ pattern: 'line' | 'wave' | 'dashed' | 'dotted';
11
+ ariaLabel: string;
12
+ };
13
+ export declare const getTransportStyle: (mode: string) => transportStyleResult;
14
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@entur/travel",
3
- "version": "6.0.19",
3
+ "version": "6.0.21-beta.0",
4
4
  "license": "EUPL-1.2",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/travel.esm.js",
@@ -27,12 +27,12 @@
27
27
  "react-dom": ">=16.8.0"
28
28
  },
29
29
  "dependencies": {
30
- "@entur/form": "^7.0.16",
31
- "@entur/icons": "^6.4.2",
32
- "@entur/layout": "^2.1.40",
30
+ "@entur/form": "^7.0.18-beta.0",
31
+ "@entur/icons": "^6.5.0",
32
+ "@entur/layout": "^2.1.41",
33
33
  "@entur/tokens": "^3.10.0",
34
- "@entur/utils": "^0.9.4",
34
+ "@entur/utils": "^0.9.5",
35
35
  "classnames": "^2.3.1"
36
36
  },
37
- "gitHead": "0da1a9e2532f60cc1a456a79ad3aa689514ca2c7"
37
+ "gitHead": "faeadfa30668a407f4078806d12cdda42195b4b8"
38
38
  }