@entur/travel 5.0.25 → 5.0.27

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,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import './LegBone.scss';
3
- export declare type LegBoneProps = {
3
+ export type LegBoneProps = {
4
4
  /** Retning på komponenten */
5
5
  direction: 'horizontal' | 'vertical';
6
6
  /** Hvilke linjemønster som skal brukes */
package/dist/LegLine.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import './LegLine.scss';
3
- export declare type LegLineProps = {
3
+ export type LegLineProps = {
4
4
  /** Farge på LegLine'n */
5
5
  color: string;
6
6
  /** Retningen til LegLine */
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import './TravelHeader.scss';
3
- export declare type TravelHeaderProps = {
3
+ export type TravelHeaderProps = {
4
4
  /** HTML-elementet eller React-komponenten som lager elementet
5
5
  * @default 'div'
6
6
  */
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- export declare type TravelLegProps = {
2
+ export type TravelLegProps = {
3
3
  /** Ekstra klassenavn */
4
4
  className?: string;
5
5
  /** Hviklen type reise som skal vises riktig farge og linjetype */
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import './TravelTag.scss';
3
- export declare type TravelTagProps = {
3
+ export type TravelTagProps = {
4
4
  /** Callback som kalles for når man skal lukke TravelTag-en
5
5
  * @default undefined
6
6
  */
package/dist/styles.css CHANGED
@@ -2,6 +2,45 @@
2
2
  --eds-travel: 1;
3
3
  }/* DO NOT CHANGE!*/
4
4
  /* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
5
+ .eds-leg-line {
6
+ flex-grow: 1;
7
+ mask-image: url("./pattern/line.svg");
8
+ mask-position: center;
9
+ -webkit-mask-image: url("./pattern/line.svg");
10
+ -webkit-mask-position: center;
11
+ }
12
+ .eds-leg-line--dotted {
13
+ mask-image: url("./pattern/dotted.svg");
14
+ -webkit-mask-image: url("./pattern/dotted.svg");
15
+ }
16
+ .eds-leg-line--vertical {
17
+ mask-repeat: repeat-y;
18
+ width: 1rem;
19
+ -webkit-mask-repeat: repeat-y;
20
+ }
21
+ .eds-leg-line--vertical.eds-leg-line--dashed {
22
+ mask-image: url("./pattern/dashed-vertical.svg");
23
+ -webkit-mask-image: url("./pattern/dashed-vertical.svg");
24
+ }
25
+ .eds-leg-line--vertical.eds-leg-line--wave {
26
+ mask-image: url("./pattern/wave-vertical.svg");
27
+ -webkit-mask-image: url("./pattern/wave-vertical.svg");
28
+ }
29
+ .eds-leg-line--horizontal {
30
+ height: 1rem;
31
+ mask-repeat: repeat-x;
32
+ min-width: 6.25rem;
33
+ -webkit-mask-repeat: repeat-x;
34
+ }
35
+ .eds-leg-line--horizontal.eds-leg-line--dashed {
36
+ mask-image: url("./pattern/dashed-horizontal.svg");
37
+ -webkit-mask-image: url("./pattern/dashed-horizontal.svg");
38
+ }
39
+ .eds-leg-line--horizontal.eds-leg-line--wave {
40
+ mask-image: url("./pattern/wave-horizontal.svg");
41
+ -webkit-mask-image: url("./pattern/wave-horizontal.svg");
42
+ }/* DO NOT CHANGE!*/
43
+ /* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
5
44
  .eds-travel-tag {
6
45
  background-color: #e9e9e9;
7
46
  border-radius: 0.25rem;
@@ -276,55 +315,16 @@
276
315
  margin-right: 0.5em;
277
316
  }
278
317
  .eds-travel-header__to {
279
- padding-left: calc(4em / 3 + 0.5em);
318
+ padding-left: 1.8333333333em;
280
319
  position: relative;
281
320
  }
282
321
  .eds-travel-header__to::before {
283
322
  background-color: #ff5959;
284
323
  content: "";
285
324
  display: block;
286
- height: calc(1em / 6);
325
+ height: 0.1666666667em;
287
326
  left: 0;
288
327
  position: absolute;
289
328
  top: 0.65em;
290
- width: calc(4em / 3);
291
- }/* DO NOT CHANGE!*/
292
- /* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
293
- .eds-leg-line {
294
- flex-grow: 1;
295
- mask-image: url("./pattern/line.svg");
296
- mask-position: center;
297
- -webkit-mask-image: url("./pattern/line.svg");
298
- -webkit-mask-position: center;
299
- }
300
- .eds-leg-line--dotted {
301
- mask-image: url("./pattern/dotted.svg");
302
- -webkit-mask-image: url("./pattern/dotted.svg");
303
- }
304
- .eds-leg-line--vertical {
305
- mask-repeat: repeat-y;
306
- width: 1rem;
307
- -webkit-mask-repeat: repeat-y;
308
- }
309
- .eds-leg-line--vertical.eds-leg-line--dashed {
310
- mask-image: url("./pattern/dashed-vertical.svg");
311
- -webkit-mask-image: url("./pattern/dashed-vertical.svg");
312
- }
313
- .eds-leg-line--vertical.eds-leg-line--wave {
314
- mask-image: url("./pattern/wave-vertical.svg");
315
- -webkit-mask-image: url("./pattern/wave-vertical.svg");
316
- }
317
- .eds-leg-line--horizontal {
318
- height: 1rem;
319
- mask-repeat: repeat-x;
320
- min-width: 6.25rem;
321
- -webkit-mask-repeat: repeat-x;
322
- }
323
- .eds-leg-line--horizontal.eds-leg-line--dashed {
324
- mask-image: url("./pattern/dashed-horizontal.svg");
325
- -webkit-mask-image: url("./pattern/dashed-horizontal.svg");
326
- }
327
- .eds-leg-line--horizontal.eds-leg-line--wave {
328
- mask-image: url("./pattern/wave-horizontal.svg");
329
- -webkit-mask-image: url("./pattern/wave-horizontal.svg");
329
+ width: 1.3333333333em;
330
330
  }
@@ -15,50 +15,43 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
15
15
  var classNames__default = /*#__PURE__*/_interopDefaultLegacy(classNames);
16
16
 
17
17
  function _extends() {
18
- _extends = Object.assign || function (target) {
18
+ _extends = Object.assign ? Object.assign.bind() : function (target) {
19
19
  for (var i = 1; i < arguments.length; i++) {
20
20
  var source = arguments[i];
21
-
22
21
  for (var key in source) {
23
22
  if (Object.prototype.hasOwnProperty.call(source, key)) {
24
23
  target[key] = source[key];
25
24
  }
26
25
  }
27
26
  }
28
-
29
27
  return target;
30
28
  };
31
-
32
29
  return _extends.apply(this, arguments);
33
30
  }
34
-
35
31
  function _objectWithoutPropertiesLoose(source, excluded) {
36
32
  if (source == null) return {};
37
33
  var target = {};
38
34
  var sourceKeys = Object.keys(source);
39
35
  var key, i;
40
-
41
36
  for (i = 0; i < sourceKeys.length; i++) {
42
37
  key = sourceKeys[i];
43
38
  if (excluded.indexOf(key) >= 0) continue;
44
39
  target[key] = source[key];
45
40
  }
46
-
47
41
  return target;
48
42
  }
49
43
 
50
44
  var _excluded$4 = ["as", "from", "to", "size", "className", "noWrap"];
51
45
  var TravelHeader = function TravelHeader(_ref) {
52
46
  var _ref$as = _ref.as,
53
- Element = _ref$as === void 0 ? 'div' : _ref$as,
54
- from = _ref.from,
55
- to = _ref.to,
56
- _ref$size = _ref.size,
57
- size = _ref$size === void 0 ? 'large' : _ref$size,
58
- className = _ref.className,
59
- noWrap = _ref.noWrap,
60
- rest = _objectWithoutPropertiesLoose(_ref, _excluded$4);
61
-
47
+ Element = _ref$as === void 0 ? 'div' : _ref$as,
48
+ from = _ref.from,
49
+ to = _ref.to,
50
+ _ref$size = _ref.size,
51
+ size = _ref$size === void 0 ? 'large' : _ref$size,
52
+ className = _ref.className,
53
+ noWrap = _ref.noWrap,
54
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$4);
62
55
  return React__default["default"].createElement(Element, _extends({
63
56
  className: classNames__default["default"]('eds-travel-header', className, {
64
57
  'eds-travel-header--large': size === 'large',
@@ -76,19 +69,17 @@ var TravelHeader = function TravelHeader(_ref) {
76
69
  var _excluded$3 = ["onClose", "children", "className", "alert", "transport", "label", "labelPlacement"];
77
70
  var TravelTag = function TravelTag(_ref) {
78
71
  var _modeCalc, _classNames, _classNames2;
79
-
80
72
  var _ref$onClose = _ref.onClose,
81
- onClose = _ref$onClose === void 0 ? undefined : _ref$onClose,
82
- children = _ref.children,
83
- className = _ref.className,
84
- _ref$alert = _ref.alert,
85
- alert = _ref$alert === void 0 ? 'none' : _ref$alert,
86
- transport = _ref.transport,
87
- label = _ref.label,
88
- _ref$labelPlacement = _ref.labelPlacement,
89
- labelPlacement = _ref$labelPlacement === void 0 ? 'right' : _ref$labelPlacement,
90
- rest = _objectWithoutPropertiesLoose(_ref, _excluded$3);
91
-
73
+ onClose = _ref$onClose === void 0 ? undefined : _ref$onClose,
74
+ children = _ref.children,
75
+ className = _ref.className,
76
+ _ref$alert = _ref.alert,
77
+ alert = _ref$alert === void 0 ? 'none' : _ref$alert,
78
+ transport = _ref.transport,
79
+ label = _ref.label,
80
+ _ref$labelPlacement = _ref.labelPlacement,
81
+ labelPlacement = _ref$labelPlacement === void 0 ? 'right' : _ref$labelPlacement,
82
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$3);
92
83
  var isClosable = onClose ? true : false;
93
84
  var numberOfChildren = React__default["default"].Children.count(children);
94
85
  var TransportIcon = (_modeCalc = modeCalc$1(transport)) != null ? _modeCalc : React__default["default"].createElement(React__default["default"].Fragment, null);
@@ -116,56 +107,40 @@ var TravelTag = function TravelTag(_ref) {
116
107
  var Label = React__default["default"].createElement("div", {
117
108
  className: classNames__default["default"]('eds-travel-tag__label', (_classNames2 = {}, _classNames2["eds-travel-tag__label--" + labelPlacement] = label, _classNames2["eds-travel-tag__label--" + labelPlacement + "--with-alert"] = label && alert !== 'none', _classNames2))
118
109
  }, label);
119
-
120
110
  if (label) {
121
111
  var _classNames3;
122
-
123
112
  return React__default["default"].createElement("div", {
124
113
  className: classNames__default["default"]('eds-travel-tag__wrapper', (_classNames3 = {}, _classNames3["eds-travel-tag__wrapper--label-position-" + labelPlacement] = label, _classNames3))
125
114
  }, TravelTagWithoutLabel, Label);
126
115
  }
127
-
128
116
  return TravelTagWithoutLabel;
129
117
  };
130
-
131
118
  var modeCalc$1 = function modeCalc(mode) {
132
119
  switch (mode) {
133
120
  case 'bus':
134
121
  return React__default["default"].createElement(icons.BusIcon, null);
135
-
136
122
  case 'metro':
137
123
  return React__default["default"].createElement(icons.SubwayIcon, null);
138
-
139
124
  case 'air':
140
125
  return React__default["default"].createElement(icons.PlaneIcon, null);
141
-
142
126
  case 'tram':
143
127
  return React__default["default"].createElement(icons.TramIcon, null);
144
-
145
128
  case 'rail':
146
129
  return React__default["default"].createElement(icons.TrainIcon, null);
147
-
148
130
  case 'water':
149
131
  return React__default["default"].createElement(icons.FerryIcon, null);
150
-
151
132
  case 'carferry':
152
133
  return React__default["default"].createElement(icons.CarferryIcon, null);
153
-
154
134
  case 'bike':
155
135
  return React__default["default"].createElement(icons.BicycleIcon, null);
156
-
157
136
  case 'scooter':
158
137
  return React__default["default"].createElement(icons.ScooterIcon, null);
159
-
160
138
  case 'foot':
161
139
  return React__default["default"].createElement(icons.WalkingIcon, null);
162
-
163
140
  case 'car':
164
141
  return React__default["default"].createElement(icons.CarIcon, null);
165
-
166
142
  case 'taxi':
167
143
  return React__default["default"].createElement(icons.TaxiIcon, null);
168
-
169
144
  default:
170
145
  return React__default["default"].createElement(React__default["default"].Fragment, null);
171
146
  }
@@ -174,14 +149,12 @@ var modeCalc$1 = function modeCalc(mode) {
174
149
  var _excluded$2 = ["color", "direction", "pattern", "className"];
175
150
  var LegLine = function LegLine(_ref) {
176
151
  var _classNames;
177
-
178
152
  var color = _ref.color,
179
- _ref$direction = _ref.direction,
180
- direction = _ref$direction === void 0 ? 'horizontal' : _ref$direction,
181
- pattern = _ref.pattern,
182
- className = _ref.className,
183
- rest = _objectWithoutPropertiesLoose(_ref, _excluded$2);
184
-
153
+ _ref$direction = _ref.direction,
154
+ direction = _ref$direction === void 0 ? 'horizontal' : _ref$direction,
155
+ pattern = _ref.pattern,
156
+ className = _ref.className,
157
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$2);
185
158
  return React__default["default"].createElement("div", _extends({
186
159
  className: classNames__default["default"]('eds-leg-line', className, (_classNames = {}, _classNames["eds-leg-line--" + pattern] = pattern, _classNames["eds-leg-line--" + direction] = direction, _classNames)),
187
160
  style: {
@@ -193,19 +166,18 @@ var LegLine = function LegLine(_ref) {
193
166
  var _excluded$1 = ["direction", "pattern", "color", "startColor", "endColor", "showStart", "showStop", "showLine", "className"];
194
167
  var LegBone = function LegBone(_ref) {
195
168
  var direction = _ref.direction,
196
- pattern = _ref.pattern,
197
- color = _ref.color,
198
- startColor = _ref.startColor,
199
- endColor = _ref.endColor,
200
- _ref$showStart = _ref.showStart,
201
- showStart = _ref$showStart === void 0 ? true : _ref$showStart,
202
- _ref$showStop = _ref.showStop,
203
- showStop = _ref$showStop === void 0 ? true : _ref$showStop,
204
- _ref$showLine = _ref.showLine,
205
- showLine = _ref$showLine === void 0 ? true : _ref$showLine,
206
- className = _ref.className,
207
- rest = _objectWithoutPropertiesLoose(_ref, _excluded$1);
208
-
169
+ pattern = _ref.pattern,
170
+ color = _ref.color,
171
+ startColor = _ref.startColor,
172
+ endColor = _ref.endColor,
173
+ _ref$showStart = _ref.showStart,
174
+ showStart = _ref$showStart === void 0 ? true : _ref$showStart,
175
+ _ref$showStop = _ref.showStop,
176
+ showStop = _ref$showStop === void 0 ? true : _ref$showStop,
177
+ _ref$showLine = _ref.showLine,
178
+ showLine = _ref$showLine === void 0 ? true : _ref$showLine,
179
+ className = _ref.className,
180
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$1);
209
181
  return React__default["default"].createElement("div", _extends({
210
182
  className: classNames__default["default"](className, 'eds-leg-bone', [{
211
183
  'eds-leg-bone--vertical': direction === 'vertical'
@@ -233,15 +205,13 @@ var LegBone = function LegBone(_ref) {
233
205
  var _excluded = ["className", "transport", "direction"];
234
206
  var TravelLeg = function TravelLeg(_ref) {
235
207
  var className = _ref.className,
236
- transport = _ref.transport,
237
- direction = _ref.direction,
238
- rest = _objectWithoutPropertiesLoose(_ref, _excluded);
239
-
208
+ transport = _ref.transport,
209
+ direction = _ref.direction,
210
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded);
240
211
  var _modeCalc = modeCalc(transport),
241
- color = _modeCalc.color,
242
- contrast = _modeCalc.contrast,
243
- pattern = _modeCalc.pattern;
244
-
212
+ color = _modeCalc.color,
213
+ contrast = _modeCalc.contrast,
214
+ pattern = _modeCalc.pattern;
245
215
  var isContrast = layout.useContrast();
246
216
  return React__default["default"].createElement(LegBone, _extends({
247
217
  direction: direction,
@@ -250,7 +220,6 @@ var TravelLeg = function TravelLeg(_ref) {
250
220
  className: className
251
221
  }, rest));
252
222
  };
253
-
254
223
  function modeCalc(mode) {
255
224
  switch (mode) {
256
225
  case 'bus':
@@ -259,70 +228,60 @@ function modeCalc(mode) {
259
228
  contrast: tokens.colors.transport.contrast.bus,
260
229
  pattern: 'dashed'
261
230
  };
262
-
263
231
  case 'metro':
264
232
  return {
265
233
  color: tokens.colors.transport["default"].metro,
266
234
  contrast: tokens.colors.transport.contrast.metro,
267
235
  pattern: 'line'
268
236
  };
269
-
270
237
  case 'air':
271
238
  return {
272
239
  color: tokens.colors.transport["default"].plane,
273
240
  contrast: tokens.colors.transport.contrast.plane,
274
241
  pattern: 'line'
275
242
  };
276
-
277
243
  case 'tram':
278
244
  return {
279
245
  color: tokens.colors.transport["default"].tram,
280
246
  contrast: tokens.colors.transport.contrast.tram,
281
247
  pattern: 'line'
282
248
  };
283
-
284
249
  case 'rail':
285
250
  return {
286
251
  color: tokens.colors.transport["default"].train,
287
252
  contrast: tokens.colors.transport.contrast.train,
288
253
  pattern: 'line'
289
254
  };
290
-
291
255
  case 'water':
292
256
  return {
293
257
  color: tokens.colors.transport["default"].ferry,
294
258
  contrast: tokens.colors.transport.contrast.ferry,
295
259
  pattern: 'wave'
296
260
  };
297
-
298
261
  case 'bike':
299
262
  return {
300
263
  color: tokens.colors.transport["default"].mobility,
301
264
  contrast: tokens.colors.transport.contrast.mobility,
302
265
  pattern: 'line'
303
266
  };
304
-
305
267
  case 'scooter':
306
268
  return {
307
269
  color: tokens.colors.transport["default"].mobility,
308
270
  contrast: tokens.colors.transport.contrast.mobility,
309
271
  pattern: 'line'
310
272
  };
311
-
312
273
  case 'foot':
313
274
  return {
314
275
  color: tokens.colors.transport["default"].walk,
315
276
  contrast: tokens.colors.transport.contrast.walk,
316
277
  pattern: 'dotted'
317
278
  };
318
-
319
279
  case 'car':
320
280
  return {
321
281
  color: tokens.colors.transport["default"].taxi,
322
282
  contrast: tokens.colors.transport.contrast.taxi,
323
283
  pattern: 'dashed'
324
284
  };
325
-
326
285
  default:
327
286
  console.error('No transport modality was chosen. There is likely an error in your usage of TravelLeg.');
328
287
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"travel.cjs.development.js","sources":["../src/TravelHeader.tsx","../src/TravelTag.tsx","../src/LegLine.tsx","../src/LegBone.tsx","../src/TravelLeg.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 classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoIcon,\n ValidationErrorIcon,\n ValidationExclamationIcon,\n BicycleIcon,\n BusIcon,\n FerryIcon,\n PlaneIcon,\n ScooterIcon,\n SubwayIcon,\n TrainIcon,\n TramIcon,\n WalkingIcon,\n CarIcon,\n TaxiIcon,\n CarferryIcon,\n} from '@entur/icons';\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?:\n | 'bus'\n | 'metro'\n | 'air'\n | 'tram'\n | 'rail'\n | 'water'\n | 'carferry'\n | 'bike'\n | 'scooter'\n | 'foot'\n | 'car'\n | 'taxi';\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 onClose = undefined,\n children,\n className,\n alert = 'none',\n transport,\n label,\n labelPlacement = 'right',\n ...rest\n}) => {\n const isClosable = onClose ? true : false;\n const numberOfChildren = React.Children.count(children);\n const TransportIcon = modeCalc(transport) ?? <></>;\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': alert !== 'none',\n 'eds-travel-tag--alert--error': alert === 'error',\n 'eds-travel-tag--icon-and-text':\n numberOfChildren > 1 || (transport && numberOfChildren > 0),\n [`eds-travel-tag--transport-${transport}`]: transport,\n className,\n })}\n {...rest}\n >\n {transport && TransportIcon}\n {children}\n {isClosable && (\n <button onClick={onClose} className=\"eds-travel-tag__close-button\">\n <CloseSmallIcon inline />\n </button>\n )}\n {alert !== 'none' && (\n <span className=\"eds-travel-tag__alert\">\n {alert === 'info' && (\n <ValidationInfoIcon className=\"eds-travel-tag__alert-info-icon\" />\n )}\n {alert === 'error' && (\n <ValidationErrorIcon className=\"eds-travel-tag__alert-error-icon\" />\n )}\n {alert === 'warning' && (\n <ValidationExclamationIcon className=\"eds-travel-tag__alert-exclamation-icon\" />\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 && alert !== 'none',\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\nconst modeCalc = (mode: string | undefined) => {\n switch (mode) {\n case 'bus':\n return <BusIcon />;\n case 'metro':\n return <SubwayIcon />;\n case 'air':\n return <PlaneIcon />;\n case 'tram':\n return <TramIcon />;\n case 'rail':\n return <TrainIcon />;\n case 'water':\n return <FerryIcon />;\n case 'carferry':\n return <CarferryIcon />;\n case 'bike':\n return <BicycleIcon />;\n case 'scooter':\n return <ScooterIcon />;\n case 'foot':\n return <WalkingIcon />;\n case 'car':\n return <CarIcon />;\n case 'taxi':\n return <TaxiIcon />;\n default:\n return <></>;\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 React from 'react';\nimport { LegBone } from './LegBone';\nimport { colors } from '@entur/tokens';\nimport { useContrast } from '@entur/layout';\n\nexport type TravelLegProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Hviklen type reise som skal vises riktig farge og linjetype */\n transport:\n | 'bus'\n | 'metro'\n | 'air'\n | 'tram'\n | 'rail'\n | 'water'\n | 'bike'\n | 'scooter'\n | 'foot'\n | 'car';\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 { color, contrast, pattern } = modeCalc(transport);\n const isContrast = useContrast();\n\n return (\n <LegBone\n direction={direction}\n pattern={pattern}\n color={isContrast ? contrast : color}\n className={className}\n {...rest}\n />\n );\n};\n\ntype modeCalcResult = {\n color: string;\n contrast: string;\n pattern: 'line' | 'wave' | 'dashed' | 'dotted';\n};\n\nfunction modeCalc(mode: string): modeCalcResult {\n switch (mode) {\n case 'bus':\n return {\n color: colors.transport.default.bus,\n contrast: colors.transport.contrast.bus,\n pattern: 'dashed',\n };\n case 'metro':\n return {\n color: colors.transport.default.metro,\n contrast: colors.transport.contrast.metro,\n pattern: 'line',\n };\n case 'air':\n return {\n color: colors.transport.default.plane,\n contrast: colors.transport.contrast.plane,\n pattern: 'line',\n };\n case 'tram':\n return {\n color: colors.transport.default.tram,\n contrast: colors.transport.contrast.tram,\n pattern: 'line',\n };\n case 'rail':\n return {\n color: colors.transport.default.train,\n contrast: colors.transport.contrast.train,\n pattern: 'line',\n };\n case 'water':\n return {\n color: colors.transport.default.ferry,\n contrast: colors.transport.contrast.ferry,\n pattern: 'wave',\n };\n case 'bike':\n return {\n color: colors.transport.default.mobility,\n contrast: colors.transport.contrast.mobility,\n pattern: 'line',\n };\n case 'scooter':\n return {\n color: colors.transport.default.mobility,\n contrast: colors.transport.contrast.mobility,\n pattern: 'line',\n };\n case 'foot':\n return {\n color: colors.transport.default.walk,\n contrast: colors.transport.contrast.walk,\n pattern: 'dotted',\n };\n case 'car':\n return {\n color: colors.transport.default.taxi,\n contrast: colors.transport.contrast.taxi,\n pattern: 'dashed',\n };\n default:\n console.error(\n 'No transport modality was chosen. There is likely an error in your usage of TravelLeg.',\n );\n return {\n color: colors.brand.blue,\n contrast: colors.brand.white,\n pattern: 'line',\n };\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';\n"],"names":["TravelHeader","as","Element","from","to","size","className","noWrap","rest","React","classNames","TravelTag","onClose","undefined","children","alert","transport","label","labelPlacement","isClosable","numberOfChildren","Children","count","TransportIcon","modeCalc","TravelTagWithoutLabel","onClick","CloseSmallIcon","inline","ValidationInfoIcon","ValidationErrorIcon","ValidationExclamationIcon","Label","mode","BusIcon","SubwayIcon","PlaneIcon","TramIcon","TrainIcon","FerryIcon","CarferryIcon","BicycleIcon","ScooterIcon","WalkingIcon","CarIcon","TaxiIcon","LegLine","color","direction","pattern","style","backgroundColor","LegBone","startColor","endColor","showStart","showStop","showLine","TravelLeg","contrast","isContrast","useContrast","colors","bus","metro","plane","tram","train","ferry","mobility","walk","taxi","console","error","brand","blue","white","warnAboutMissingStyles"],"mappings":"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"}
1
+ {"version":3,"file":"travel.cjs.development.js","sources":["../src/TravelHeader.tsx","../src/TravelTag.tsx","../src/LegLine.tsx","../src/LegBone.tsx","../src/TravelLeg.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 classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoIcon,\n ValidationErrorIcon,\n ValidationExclamationIcon,\n BicycleIcon,\n BusIcon,\n FerryIcon,\n PlaneIcon,\n ScooterIcon,\n SubwayIcon,\n TrainIcon,\n TramIcon,\n WalkingIcon,\n CarIcon,\n TaxiIcon,\n CarferryIcon,\n} from '@entur/icons';\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?:\n | 'bus'\n | 'metro'\n | 'air'\n | 'tram'\n | 'rail'\n | 'water'\n | 'carferry'\n | 'bike'\n | 'scooter'\n | 'foot'\n | 'car'\n | 'taxi';\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 onClose = undefined,\n children,\n className,\n alert = 'none',\n transport,\n label,\n labelPlacement = 'right',\n ...rest\n}) => {\n const isClosable = onClose ? true : false;\n const numberOfChildren = React.Children.count(children);\n const TransportIcon = modeCalc(transport) ?? <></>;\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': alert !== 'none',\n 'eds-travel-tag--alert--error': alert === 'error',\n 'eds-travel-tag--icon-and-text':\n numberOfChildren > 1 || (transport && numberOfChildren > 0),\n [`eds-travel-tag--transport-${transport}`]: transport,\n className,\n })}\n {...rest}\n >\n {transport && TransportIcon}\n {children}\n {isClosable && (\n <button onClick={onClose} className=\"eds-travel-tag__close-button\">\n <CloseSmallIcon inline />\n </button>\n )}\n {alert !== 'none' && (\n <span className=\"eds-travel-tag__alert\">\n {alert === 'info' && (\n <ValidationInfoIcon className=\"eds-travel-tag__alert-info-icon\" />\n )}\n {alert === 'error' && (\n <ValidationErrorIcon className=\"eds-travel-tag__alert-error-icon\" />\n )}\n {alert === 'warning' && (\n <ValidationExclamationIcon className=\"eds-travel-tag__alert-exclamation-icon\" />\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 && alert !== 'none',\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\nconst modeCalc = (mode: string | undefined) => {\n switch (mode) {\n case 'bus':\n return <BusIcon />;\n case 'metro':\n return <SubwayIcon />;\n case 'air':\n return <PlaneIcon />;\n case 'tram':\n return <TramIcon />;\n case 'rail':\n return <TrainIcon />;\n case 'water':\n return <FerryIcon />;\n case 'carferry':\n return <CarferryIcon />;\n case 'bike':\n return <BicycleIcon />;\n case 'scooter':\n return <ScooterIcon />;\n case 'foot':\n return <WalkingIcon />;\n case 'car':\n return <CarIcon />;\n case 'taxi':\n return <TaxiIcon />;\n default:\n return <></>;\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 React from 'react';\nimport { LegBone } from './LegBone';\nimport { colors } from '@entur/tokens';\nimport { useContrast } from '@entur/layout';\n\nexport type TravelLegProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Hviklen type reise som skal vises riktig farge og linjetype */\n transport:\n | 'bus'\n | 'metro'\n | 'air'\n | 'tram'\n | 'rail'\n | 'water'\n | 'bike'\n | 'scooter'\n | 'foot'\n | 'car';\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 { color, contrast, pattern } = modeCalc(transport);\n const isContrast = useContrast();\n\n return (\n <LegBone\n direction={direction}\n pattern={pattern}\n color={isContrast ? contrast : color}\n className={className}\n {...rest}\n />\n );\n};\n\ntype modeCalcResult = {\n color: string;\n contrast: string;\n pattern: 'line' | 'wave' | 'dashed' | 'dotted';\n};\n\nfunction modeCalc(mode: string): modeCalcResult {\n switch (mode) {\n case 'bus':\n return {\n color: colors.transport.default.bus,\n contrast: colors.transport.contrast.bus,\n pattern: 'dashed',\n };\n case 'metro':\n return {\n color: colors.transport.default.metro,\n contrast: colors.transport.contrast.metro,\n pattern: 'line',\n };\n case 'air':\n return {\n color: colors.transport.default.plane,\n contrast: colors.transport.contrast.plane,\n pattern: 'line',\n };\n case 'tram':\n return {\n color: colors.transport.default.tram,\n contrast: colors.transport.contrast.tram,\n pattern: 'line',\n };\n case 'rail':\n return {\n color: colors.transport.default.train,\n contrast: colors.transport.contrast.train,\n pattern: 'line',\n };\n case 'water':\n return {\n color: colors.transport.default.ferry,\n contrast: colors.transport.contrast.ferry,\n pattern: 'wave',\n };\n case 'bike':\n return {\n color: colors.transport.default.mobility,\n contrast: colors.transport.contrast.mobility,\n pattern: 'line',\n };\n case 'scooter':\n return {\n color: colors.transport.default.mobility,\n contrast: colors.transport.contrast.mobility,\n pattern: 'line',\n };\n case 'foot':\n return {\n color: colors.transport.default.walk,\n contrast: colors.transport.contrast.walk,\n pattern: 'dotted',\n };\n case 'car':\n return {\n color: colors.transport.default.taxi,\n contrast: colors.transport.contrast.taxi,\n pattern: 'dashed',\n };\n default:\n console.error(\n 'No transport modality was chosen. There is likely an error in your usage of TravelLeg.',\n );\n return {\n color: colors.brand.blue,\n contrast: colors.brand.white,\n pattern: 'line',\n };\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';\n"],"names":["TravelHeader","as","Element","from","to","size","className","noWrap","rest","_excluded","React","createElement","classNames","TravelTag","onClose","undefined","children","alert","transport","label","labelPlacement","isClosable","numberOfChildren","Children","count","TransportIcon","modeCalc","TravelTagWithoutLabel","onClick","CloseSmallIcon","inline","ValidationInfoIcon","ValidationErrorIcon","ValidationExclamationIcon","Label","mode","BusIcon","SubwayIcon","PlaneIcon","TramIcon","TrainIcon","FerryIcon","CarferryIcon","BicycleIcon","ScooterIcon","WalkingIcon","CarIcon","TaxiIcon","LegLine","color","direction","pattern","style","backgroundColor","LegBone","startColor","endColor","showStart","showStop","showLine","TravelLeg","contrast","isContrast","useContrast","colors","bus","metro","plane","tram","train","ferry","mobility","walk","taxi","console","error","brand","blue","white","warnAboutMissingStyles"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@entur/utils"),t=require("react"),r=require("classnames"),a=require("@entur/icons"),l=require("@entur/tokens"),n=require("@entur/layout");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var s=o(t),c=o(r);function u(){return u=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},u.apply(this,arguments)}function d(e,t){if(null==e)return{};var r,a,l={},n=Object.keys(e);for(a=0;a<n.length;a++)t.indexOf(r=n[a])>=0||(l[r]=e[r]);return l}var i=["as","from","to","size","className","noWrap"],m=["onClose","children","className","alert","transport","label","labelPlacement"],f=["color","direction","pattern","className"],p=function(e){var t,r=e.color,a=e.direction,l=void 0===a?"horizontal":a,n=e.pattern,o=e.className,i=d(e,f);return s.default.createElement("div",u({className:c.default("eds-leg-line",o,(t={},t["eds-leg-line--"+n]=n,t["eds-leg-line--"+l]=l,t)),style:{backgroundColor:r}},i))},v=["direction","pattern","color","startColor","endColor","showStart","showStop","showLine","className"],g=function(e){var t=e.direction,r=e.pattern,a=e.color,l=e.startColor,n=e.endColor,o=e.showStart,i=void 0===o||o,m=e.showStop,f=void 0===m||m,g=e.showLine,b=void 0===g||g,E=e.className,_=d(e,v);return s.default.createElement("div",u({className:c.default(E,"eds-leg-bone",[{"eds-leg-bone--vertical":"vertical"===t},{"eds-leg-bone--horizontal":"horizontal"===t}])},_),i&&s.default.createElement("div",{className:"eds-leg-bone__start",style:{backgroundColor:l||a}}),b&&s.default.createElement(p,{className:"eds-leg-bone__line",direction:t,color:a,pattern:r}),f&&s.default.createElement("div",{className:"eds-leg-bone__stop",style:{backgroundColor:n||a}}))},b=["className","transport","direction"];e.warnAboutMissingStyles("travel"),exports.LegBone=g,exports.LegLine=p,exports.TravelHeader=function(e){var t=e.as,r=void 0===t?"div":t,a=e.from,l=e.to,n=e.size,o=void 0===n?"large":n,m=e.className,f=e.noWrap,p=d(e,i);return s.default.createElement(r,u({className:c.default("eds-travel-header",m,{"eds-travel-header--large":"large"===o,"eds-travel-header--medium":"medium"===o,"eds-travel-header--no-wrap":f}),"aria-label":"Fra "+a+", til "+l},p),s.default.createElement("span",{className:"eds-travel-header__from"},a),s.default.createElement("span",{className:"eds-travel-header__to"},l))},exports.TravelLeg=function(e){var t=e.className,r=e.transport,a=e.direction,o=d(e,b),c=function(e){switch(e){case"bus":return{color:l.colors.transport.default.bus,contrast:l.colors.transport.contrast.bus,pattern:"dashed"};case"metro":return{color:l.colors.transport.default.metro,contrast:l.colors.transport.contrast.metro,pattern:"line"};case"air":return{color:l.colors.transport.default.plane,contrast:l.colors.transport.contrast.plane,pattern:"line"};case"tram":return{color:l.colors.transport.default.tram,contrast:l.colors.transport.contrast.tram,pattern:"line"};case"rail":return{color:l.colors.transport.default.train,contrast:l.colors.transport.contrast.train,pattern:"line"};case"water":return{color:l.colors.transport.default.ferry,contrast:l.colors.transport.contrast.ferry,pattern:"wave"};case"bike":case"scooter":return{color:l.colors.transport.default.mobility,contrast:l.colors.transport.contrast.mobility,pattern:"line"};case"foot":return{color:l.colors.transport.default.walk,contrast:l.colors.transport.contrast.walk,pattern:"dotted"};case"car":return{color:l.colors.transport.default.taxi,contrast:l.colors.transport.contrast.taxi,pattern:"dashed"};default:return console.error("No transport modality was chosen. There is likely an error in your usage of TravelLeg."),{color:l.colors.brand.blue,contrast:l.colors.brand.white,pattern:"line"}}}(r),i=c.color,m=c.contrast,f=c.pattern,p=n.useContrast();return s.default.createElement(g,u({direction:a,pattern:f,color:p?m:i,className:t},o))},exports.TravelTag=function(e){var t,r,l,n,o=e.onClose,i=void 0===o?void 0:o,f=e.children,p=e.className,v=e.alert,g=void 0===v?"none":v,b=e.transport,E=e.label,_=e.labelPlacement,h=void 0===_?"right":_,N=d(e,m),w=!!i,y=s.default.Children.count(f),I=null!=(t=function(e){switch(e){case"bus":return s.default.createElement(a.BusIcon,null);case"metro":return s.default.createElement(a.SubwayIcon,null);case"air":return s.default.createElement(a.PlaneIcon,null);case"tram":return s.default.createElement(a.TramIcon,null);case"rail":return s.default.createElement(a.TrainIcon,null);case"water":return s.default.createElement(a.FerryIcon,null);case"carferry":return s.default.createElement(a.CarferryIcon,null);case"bike":return s.default.createElement(a.BicycleIcon,null);case"scooter":return s.default.createElement(a.ScooterIcon,null);case"foot":return s.default.createElement(a.WalkingIcon,null);case"car":return s.default.createElement(a.CarIcon,null);case"taxi":return s.default.createElement(a.TaxiIcon,null);default:return s.default.createElement(s.default.Fragment,null)}}(b))?t:s.default.createElement(s.default.Fragment,null),C=s.default.createElement("div",u({className:c.default("eds-travel-tag",(r={"eds-travel-tag--closable":w,"eds-travel-tag--alert":"none"!==g,"eds-travel-tag--alert--error":"error"===g,"eds-travel-tag--icon-and-text":y>1||b&&y>0},r["eds-travel-tag--transport-"+b]=b,r.className=p,r))},N),b&&I,f,w&&s.default.createElement("button",{onClick:i,className:"eds-travel-tag__close-button"},s.default.createElement(a.CloseSmallIcon,{inline:!0})),"none"!==g&&s.default.createElement("span",{className:"eds-travel-tag__alert"},"info"===g&&s.default.createElement(a.ValidationInfoIcon,{className:"eds-travel-tag__alert-info-icon"}),"error"===g&&s.default.createElement(a.ValidationErrorIcon,{className:"eds-travel-tag__alert-error-icon"}),"warning"===g&&s.default.createElement(a.ValidationExclamationIcon,{className:"eds-travel-tag__alert-exclamation-icon"}))),x=s.default.createElement("div",{className:c.default("eds-travel-tag__label",(l={},l["eds-travel-tag__label--"+h]=E,l["eds-travel-tag__label--"+h+"--with-alert"]=E&&"none"!==g,l))},E);return E?s.default.createElement("div",{className:c.default("eds-travel-tag__wrapper",(n={},n["eds-travel-tag__wrapper--label-position-"+h]=E,n))},C,x):C};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@entur/utils"),t=require("react"),r=require("classnames"),a=require("@entur/icons"),l=require("@entur/tokens"),n=require("@entur/layout");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var s=o(t),c=o(r);function u(){return u=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},u.apply(this,arguments)}function d(e,t){if(null==e)return{};var r,a,l={},n=Object.keys(e);for(a=0;a<n.length;a++)t.indexOf(r=n[a])>=0||(l[r]=e[r]);return l}var i=["as","from","to","size","className","noWrap"],m=["onClose","children","className","alert","transport","label","labelPlacement"],f=["color","direction","pattern","className"],p=function(e){var t,r=e.color,a=e.direction,l=void 0===a?"horizontal":a,n=e.pattern,o=e.className,i=d(e,f);return s.default.createElement("div",u({className:c.default("eds-leg-line",o,(t={},t["eds-leg-line--"+n]=n,t["eds-leg-line--"+l]=l,t)),style:{backgroundColor:r}},i))},v=["direction","pattern","color","startColor","endColor","showStart","showStop","showLine","className"],g=function(e){var t=e.direction,r=e.pattern,a=e.color,l=e.startColor,n=e.endColor,o=e.showStart,i=void 0===o||o,m=e.showStop,f=void 0===m||m,g=e.showLine,b=void 0===g||g,E=e.className,_=d(e,v);return s.default.createElement("div",u({className:c.default(E,"eds-leg-bone",[{"eds-leg-bone--vertical":"vertical"===t},{"eds-leg-bone--horizontal":"horizontal"===t}])},_),i&&s.default.createElement("div",{className:"eds-leg-bone__start",style:{backgroundColor:l||a}}),b&&s.default.createElement(p,{className:"eds-leg-bone__line",direction:t,color:a,pattern:r}),f&&s.default.createElement("div",{className:"eds-leg-bone__stop",style:{backgroundColor:n||a}}))},b=["className","transport","direction"];e.warnAboutMissingStyles("travel"),exports.LegBone=g,exports.LegLine=p,exports.TravelHeader=function(e){var t=e.as,r=void 0===t?"div":t,a=e.from,l=e.to,n=e.size,o=void 0===n?"large":n,m=e.className,f=e.noWrap,p=d(e,i);return s.default.createElement(r,u({className:c.default("eds-travel-header",m,{"eds-travel-header--large":"large"===o,"eds-travel-header--medium":"medium"===o,"eds-travel-header--no-wrap":f}),"aria-label":"Fra "+a+", til "+l},p),s.default.createElement("span",{className:"eds-travel-header__from"},a),s.default.createElement("span",{className:"eds-travel-header__to"},l))},exports.TravelLeg=function(e){var t=e.className,r=e.transport,a=e.direction,o=d(e,b),c=function(e){switch(e){case"bus":return{color:l.colors.transport.default.bus,contrast:l.colors.transport.contrast.bus,pattern:"dashed"};case"metro":return{color:l.colors.transport.default.metro,contrast:l.colors.transport.contrast.metro,pattern:"line"};case"air":return{color:l.colors.transport.default.plane,contrast:l.colors.transport.contrast.plane,pattern:"line"};case"tram":return{color:l.colors.transport.default.tram,contrast:l.colors.transport.contrast.tram,pattern:"line"};case"rail":return{color:l.colors.transport.default.train,contrast:l.colors.transport.contrast.train,pattern:"line"};case"water":return{color:l.colors.transport.default.ferry,contrast:l.colors.transport.contrast.ferry,pattern:"wave"};case"bike":case"scooter":return{color:l.colors.transport.default.mobility,contrast:l.colors.transport.contrast.mobility,pattern:"line"};case"foot":return{color:l.colors.transport.default.walk,contrast:l.colors.transport.contrast.walk,pattern:"dotted"};case"car":return{color:l.colors.transport.default.taxi,contrast:l.colors.transport.contrast.taxi,pattern:"dashed"};default:return console.error("No transport modality was chosen. There is likely an error in your usage of TravelLeg."),{color:l.colors.brand.blue,contrast:l.colors.brand.white,pattern:"line"}}}(r),i=c.color,m=c.contrast,f=c.pattern,p=n.useContrast();return s.default.createElement(g,u({direction:a,pattern:f,color:p?m:i,className:t},o))},exports.TravelTag=function(e){var t,r,l,n,o=e.onClose,i=void 0===o?void 0:o,f=e.children,p=e.className,v=e.alert,g=void 0===v?"none":v,b=e.transport,E=e.label,_=e.labelPlacement,h=void 0===_?"right":_,N=d(e,m),w=!!i,y=s.default.Children.count(f),I=null!=(t=function(e){switch(e){case"bus":return s.default.createElement(a.BusIcon,null);case"metro":return s.default.createElement(a.SubwayIcon,null);case"air":return s.default.createElement(a.PlaneIcon,null);case"tram":return s.default.createElement(a.TramIcon,null);case"rail":return s.default.createElement(a.TrainIcon,null);case"water":return s.default.createElement(a.FerryIcon,null);case"carferry":return s.default.createElement(a.CarferryIcon,null);case"bike":return s.default.createElement(a.BicycleIcon,null);case"scooter":return s.default.createElement(a.ScooterIcon,null);case"foot":return s.default.createElement(a.WalkingIcon,null);case"car":return s.default.createElement(a.CarIcon,null);case"taxi":return s.default.createElement(a.TaxiIcon,null);default:return s.default.createElement(s.default.Fragment,null)}}(b))?t:s.default.createElement(s.default.Fragment,null),C=s.default.createElement("div",u({className:c.default("eds-travel-tag",(r={"eds-travel-tag--closable":w,"eds-travel-tag--alert":"none"!==g,"eds-travel-tag--alert--error":"error"===g,"eds-travel-tag--icon-and-text":y>1||b&&y>0},r["eds-travel-tag--transport-"+b]=b,r.className=p,r))},N),b&&I,f,w&&s.default.createElement("button",{onClick:i,className:"eds-travel-tag__close-button"},s.default.createElement(a.CloseSmallIcon,{inline:!0})),"none"!==g&&s.default.createElement("span",{className:"eds-travel-tag__alert"},"info"===g&&s.default.createElement(a.ValidationInfoIcon,{className:"eds-travel-tag__alert-info-icon"}),"error"===g&&s.default.createElement(a.ValidationErrorIcon,{className:"eds-travel-tag__alert-error-icon"}),"warning"===g&&s.default.createElement(a.ValidationExclamationIcon,{className:"eds-travel-tag__alert-exclamation-icon"}))),x=s.default.createElement("div",{className:c.default("eds-travel-tag__label",(l={},l["eds-travel-tag__label--"+h]=E,l["eds-travel-tag__label--"+h+"--with-alert"]=E&&"none"!==g,l))},E);return E?s.default.createElement("div",{className:c.default("eds-travel-tag__wrapper",(n={},n["eds-travel-tag__wrapper--label-position-"+h]=E,n))},C,x):C};
2
2
  //# sourceMappingURL=travel.cjs.production.min.js.map