@entur/travel 4.2.14 → 5.0.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/CHANGELOG.md CHANGED
@@ -3,6 +3,23 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [5.0.0](https://bitbucket.org/enturas/design-system/compare/@entur/travel@4.2.14...@entur/travel@5.0.0) (2022-01-05)
7
+
8
+ ### Bug Fixes
9
+
10
+ - **travel tag:** fix 'warning' and 'error' alert prop being swapped, and colors in contrast ([0a08fb3](https://bitbucket.org/enturas/design-system/commits/0a08fb37ec70b0a19cea2fd96a2a5b39295fe5e5))
11
+
12
+ ### Features
13
+
14
+ - **travel tag:** add label and labelPlacement props ([8f63a0b](https://bitbucket.org/enturas/design-system/commits/8f63a0bc23c16523fc976a1566ec3c8dec22dd48))
15
+ - **travel tag:** add transport icon automatically based on transport prop ([42a191a](https://bitbucket.org/enturas/design-system/commits/42a191a2962f34696f2cfcb42c943e60c2738f4b))
16
+
17
+ ### BREAKING CHANGES
18
+
19
+ - **travel tag:** If both an icon and transport prop is provided in previous code, you will now get two icos. Remove
20
+ the child Icon to fix
21
+ - **travel tag:** alert prop options 'warning' and 'error' has been swapped and will now display the correct icon
22
+
6
23
  ## [4.2.14](https://bitbucket.org/enturas/design-system/compare/@entur/travel@4.2.13...@entur/travel@4.2.14) (2021-11-17)
7
24
 
8
25
  **Note:** Version bump only for package @entur/travel
@@ -1,18 +1,25 @@
1
1
  import React from 'react';
2
2
  import './TravelTag.scss';
3
3
  export declare type TravelTagProps = {
4
- /** Callback som kalles for når man skal lukke TravelTagen
4
+ /** Callback som kalles for når man skal lukke TravelTag-en
5
5
  * @default undefined
6
6
  */
7
7
  onClose?: () => void;
8
- /** Innholdet til TravelTagen */
9
- children: React.ReactNode;
8
+ /** Innholdet inne i TravelTag-en */
9
+ children?: React.ReactNode;
10
10
  /**Ekstra klassenavn */
11
11
  className?: string;
12
12
  /** Legger til et Valideringsikon i TravelTagen for å signalisere avvik, informasjon e.l.
13
13
  * @default "none"
14
14
  */
15
15
  alert?: 'none' | 'error' | 'warning' | 'info';
16
- transport?: 'bus' | 'metro' | 'air' | 'tram' | 'rail' | 'water' | 'bike' | 'scooter' | 'foot' | 'car';
16
+ /** Legger til farge og ikon tilpasset valgt transportmiddel */
17
+ transport?: 'bus' | 'metro' | 'air' | 'tram' | 'rail' | 'water' | 'carferry' | 'bike' | 'scooter' | 'foot' | 'car' | 'taxi';
18
+ /** Element ved siden av eller under TravelTag. */
19
+ label?: React.ReactNode;
20
+ /** Posisjonen til label-en i forhold til TravelTag-en
21
+ * @default "right"
22
+ */
23
+ labelPlacement?: 'bottom' | 'right';
17
24
  } & React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;
18
25
  export declare const TravelTag: React.FC<TravelTagProps>;
package/dist/styles.css CHANGED
@@ -100,10 +100,19 @@
100
100
  .eds-travel-tag--alert {
101
101
  padding-right: 0.75rem;
102
102
  }
103
+ .eds-travel-tag--alert--error {
104
+ box-shadow: inset 0 0 0 20px rgba(255, 255, 255, 0.5);
105
+ }
106
+ .eds-contrast .eds-travel-tag--alert--error.eds-travel-tag {
107
+ box-shadow: none;
108
+ background-color: rgba(0, 0, 0, 0);
109
+ border: 0.125rem dashed #54568c;
110
+ }
103
111
  .eds-travel-tag--icon-and-text > .eds-icon {
104
112
  margin-right: 0.5rem;
105
113
  }
106
114
  .eds-contrast .eds-travel-tag {
115
+ align-items: center;
107
116
  background-color: #393d79;
108
117
  }
109
118
  .eds-travel-tag > .eds-icon {
@@ -141,73 +150,67 @@
141
150
  background: #c5044e;
142
151
  color: #ffffff;
143
152
  }
144
- .eds-contrast .eds-travel-tag--transport-bus {
145
- background: #ff6392;
146
- color: #181c56;
153
+ .eds-travel-tag--transport-bus > .eds-icon {
154
+ color: #ffffff;
147
155
  }
148
156
  .eds-travel-tag--transport-metro {
149
157
  background: #de8108;
150
158
  color: #ffffff;
151
159
  }
152
- .eds-contrast .eds-travel-tag--transport-metro {
153
- background: #f08901;
154
- color: #181c56;
160
+ .eds-travel-tag--transport-metro > .eds-icon {
161
+ color: #ffffff;
162
+ }
163
+ .eds-contrast .eds-travel-tag--transport-metro > .eds-icon {
164
+ color: #f08901;
155
165
  }
156
166
  .eds-travel-tag--transport-air {
157
167
  background: #800664;
158
168
  color: #ffffff;
159
169
  }
160
- .eds-contrast .eds-travel-tag--transport-air {
161
- background: #fbafea;
162
- color: #181c56;
170
+ .eds-travel-tag--transport-air > .eds-icon {
171
+ color: #ffffff;
163
172
  }
164
173
  .eds-travel-tag--transport-tram {
165
174
  background: #642e88;
166
175
  color: #ffffff;
167
176
  }
168
- .eds-contrast .eds-travel-tag--transport-tram {
169
- background: #b482fb;
170
- color: #181c56;
177
+ .eds-travel-tag--transport-tram > .eds-icon {
178
+ color: #ffffff;
171
179
  }
172
180
  .eds-travel-tag--transport-rail {
173
181
  background: #00367f;
174
182
  color: #ffffff;
175
183
  }
176
- .eds-contrast .eds-travel-tag--transport-rail {
177
- background: #42a5f5;
178
- color: #181c56;
184
+ .eds-travel-tag--transport-rail > .eds-icon {
185
+ color: #ffffff;
179
186
  }
180
187
  .eds-travel-tag--transport-water {
181
188
  background: #0497bc;
182
189
  color: #ffffff;
183
190
  }
184
- .eds-contrast .eds-travel-tag--transport-water {
185
- background: #6fdfff;
186
- color: #181c56;
191
+ .eds-travel-tag--transport-water > .eds-icon {
192
+ color: #ffffff;
187
193
  }
188
194
  .eds-travel-tag--transport-bike, .eds-travel-tag--transport-scooter {
189
195
  background: #388f76;
190
196
  color: #ffffff;
191
197
  }
192
- .eds-contrast .eds-travel-tag--transport-bike, .eds-contrast .eds-travel-tag--transport-scooter {
193
- background: #00db9b;
194
- color: #181c56;
198
+ .eds-travel-tag--transport-bike > .eds-icon, .eds-travel-tag--transport-scooter > .eds-icon {
199
+ color: #ffffff;
195
200
  }
196
201
  .eds-travel-tag--transport-foot {
197
202
  background: #181c56;
198
203
  color: #ffffff;
199
204
  }
200
- .eds-contrast .eds-travel-tag--transport-foot {
201
- background: #ffffff;
202
- color: #181c56;
205
+ .eds-travel-tag--transport-foot > .eds-icon {
206
+ color: #ffffff;
203
207
  }
204
208
  .eds-travel-tag--transport-car {
205
209
  background: #181c56;
206
210
  color: #ffffff;
207
211
  }
208
- .eds-contrast .eds-travel-tag--transport-car {
209
- background: #ffffff;
210
- color: #181c56;
212
+ .eds-travel-tag--transport-car > .eds-icon {
213
+ color: #ffffff;
211
214
  }
212
215
  .eds-travel-tag__alert {
213
216
  background: #ffffff;
@@ -220,21 +223,26 @@
220
223
  width: 1.125rem;
221
224
  position: absolute;
222
225
  top: 0.4375rem;
223
- right: -0.5625rem;
226
+ right: -0.6875rem;
224
227
  }
225
228
  .eds-contrast .eds-travel-tag__alert {
226
229
  background: #181c56;
227
230
  }
231
+ .eds-contrast .eds-travel-tag__alert--error-icon {
232
+ top: 0.5625rem;
233
+ }
228
234
  .eds-travel-tag__alert-exclamation-icon {
229
- color: #0082b9;
235
+ color: #ffca28;
230
236
  }
231
237
  .eds-contrast .eds-travel-tag__alert-exclamation-icon {
232
- color: #64b3e7;
238
+ color: #ffe082;
233
239
  }
234
240
  .eds-travel-tag__alert-error-icon {
241
+ font-size: 0.875rem;
235
242
  color: #d31b1b;
236
243
  }
237
244
  .eds-contrast .eds-travel-tag__alert-error-icon {
245
+ margin-bottom: 0.25rem;
238
246
  color: #ff9494;
239
247
  }
240
248
  .eds-travel-tag__alert-info-icon {
@@ -242,6 +250,34 @@
242
250
  }
243
251
  .eds-contrast .eds-travel-tag__alert-info-icon {
244
252
  color: #64b3e7;
253
+ }
254
+ .eds-travel-tag__wrapper {
255
+ display: inline-flex;
256
+ }
257
+ .eds-travel-tag__wrapper--label-position-right {
258
+ flex-direction: row;
259
+ align-items: center;
260
+ }
261
+ .eds-travel-tag__wrapper--label-position-bottom {
262
+ flex-direction: column;
263
+ align-items: flex-start;
264
+ }
265
+ .eds-travel-tag__label {
266
+ color: #181c56;
267
+ font-size: 1rem;
268
+ }
269
+ .eds-contrast .eds-travel-tag__label {
270
+ color: #ffffff;
271
+ }
272
+ .eds-travel-tag__label--right {
273
+ margin-left: 0.5rem;
274
+ }
275
+ .eds-travel-tag__label--right--with-alert {
276
+ margin-left: 1rem;
277
+ }
278
+ .eds-travel-tag__label--bottom {
279
+ margin-top: 0.125rem;
280
+ font-size: 0.875rem;
245
281
  }/* DO NOT CHANGE!*/
246
282
  /* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
247
283
  .eds-leg-bone {
@@ -52,7 +52,7 @@ var TravelHeader = function TravelHeader(_ref) {
52
52
  };
53
53
 
54
54
  var TravelTag = function TravelTag(_ref) {
55
- var _classNames;
55
+ var _modeCalc, _classNames, _classNames2;
56
56
 
57
57
  var _ref$onClose = _ref.onClose,
58
58
  onClose = _ref$onClose === void 0 ? undefined : _ref$onClose,
@@ -61,17 +61,22 @@ var TravelTag = function TravelTag(_ref) {
61
61
  _ref$alert = _ref.alert,
62
62
  alert = _ref$alert === void 0 ? 'none' : _ref$alert,
63
63
  transport = _ref.transport,
64
- rest = _objectWithoutPropertiesLoose(_ref, ["onClose", "children", "className", "alert", "transport"]);
64
+ label = _ref.label,
65
+ _ref$labelPlacement = _ref.labelPlacement,
66
+ labelPlacement = _ref$labelPlacement === void 0 ? 'right' : _ref$labelPlacement,
67
+ rest = _objectWithoutPropertiesLoose(_ref, ["onClose", "children", "className", "alert", "transport", "label", "labelPlacement"]);
65
68
 
66
69
  var isClosable = onClose ? true : false;
67
70
  var numberOfChildren = React.Children.count(children);
68
- return React.createElement("div", Object.assign({
71
+ var TransportIcon = (_modeCalc = modeCalc(transport)) !== null && _modeCalc !== void 0 ? _modeCalc : React.createElement(React.Fragment, null);
72
+ var TravelTagWithoutLabel = React.createElement("div", Object.assign({
69
73
  className: classNames('eds-travel-tag', (_classNames = {
70
74
  'eds-travel-tag--closable': isClosable,
71
75
  'eds-travel-tag--alert': alert !== 'none',
72
- 'eds-travel-tag--icon-and-text': numberOfChildren > 1
76
+ 'eds-travel-tag--alert--error': alert === 'error',
77
+ 'eds-travel-tag--icon-and-text': numberOfChildren > 1 || transport && numberOfChildren > 0
73
78
  }, _classNames["eds-travel-tag--transport-" + transport] = transport, _classNames.className = className, _classNames))
74
- }, rest), children, isClosable && React.createElement("button", {
79
+ }, rest), transport && TransportIcon, children, isClosable && React.createElement("button", {
75
80
  onClick: onClose,
76
81
  className: "eds-travel-tag__close-button"
77
82
  }, React.createElement(icons.CloseSmallIcon, {
@@ -80,11 +85,67 @@ var TravelTag = function TravelTag(_ref) {
80
85
  className: "eds-travel-tag__alert"
81
86
  }, alert === 'info' && React.createElement(icons.ValidationInfoIcon, {
82
87
  className: "eds-travel-tag__alert-info-icon"
83
- }), alert === 'error' && React.createElement(icons.ValidationExclamationIcon, {
84
- className: "eds-travel-tag__alert-exclamation-icon"
85
- }), alert === 'warning' && React.createElement(icons.ValidationErrorIcon, {
88
+ }), alert === 'error' && React.createElement(icons.ValidationErrorIcon, {
86
89
  className: "eds-travel-tag__alert-error-icon"
90
+ }), alert === 'warning' && React.createElement(icons.ValidationExclamationIcon, {
91
+ className: "eds-travel-tag__alert-exclamation-icon"
87
92
  })));
93
+ var Label = React.createElement("div", {
94
+ className: classNames('eds-travel-tag__label', (_classNames2 = {}, _classNames2["eds-travel-tag__label--" + labelPlacement] = label, _classNames2["eds-travel-tag__label--" + labelPlacement + "--with-alert"] = label && alert !== 'none', _classNames2))
95
+ }, label);
96
+
97
+ if (label) {
98
+ var _classNames3;
99
+
100
+ return React.createElement("div", {
101
+ className: classNames('eds-travel-tag__wrapper', (_classNames3 = {}, _classNames3["eds-travel-tag__wrapper--label-position-" + labelPlacement] = label, _classNames3))
102
+ }, TravelTagWithoutLabel, Label);
103
+ }
104
+
105
+ return TravelTagWithoutLabel;
106
+ };
107
+
108
+ var modeCalc = function modeCalc(mode) {
109
+ switch (mode) {
110
+ case 'bus':
111
+ return React.createElement(icons.BusIcon, null);
112
+
113
+ case 'metro':
114
+ return React.createElement(icons.SubwayIcon, null);
115
+
116
+ case 'air':
117
+ return React.createElement(icons.PlaneIcon, null);
118
+
119
+ case 'tram':
120
+ return React.createElement(icons.TramIcon, null);
121
+
122
+ case 'rail':
123
+ return React.createElement(icons.TrainIcon, null);
124
+
125
+ case 'water':
126
+ return React.createElement(icons.FerryIcon, null);
127
+
128
+ case 'carferry':
129
+ return React.createElement(icons.CarferryIcon, null);
130
+
131
+ case 'bike':
132
+ return React.createElement(icons.BicycleIcon, null);
133
+
134
+ case 'scooter':
135
+ return React.createElement(icons.ScooterIcon, null);
136
+
137
+ case 'foot':
138
+ return React.createElement(icons.WalkingIcon, null);
139
+
140
+ case 'car':
141
+ return React.createElement(icons.CarIcon, null);
142
+
143
+ case 'taxi':
144
+ return React.createElement(icons.TaxiIcon, null);
145
+
146
+ default:
147
+ return React.createElement(React.Fragment, null);
148
+ }
88
149
  };
89
150
 
90
151
  var LegLine = function LegLine(_ref) {
@@ -150,7 +211,7 @@ var TravelLeg = function TravelLeg(_ref) {
150
211
  direction = _ref.direction,
151
212
  rest = _objectWithoutPropertiesLoose(_ref, ["className", "transport", "direction"]);
152
213
 
153
- var _modeCalc = modeCalc(transport),
214
+ var _modeCalc = modeCalc$1(transport),
154
215
  color = _modeCalc.color,
155
216
  contrast = _modeCalc.contrast,
156
217
  pattern = _modeCalc.pattern;
@@ -164,7 +225,7 @@ var TravelLeg = function TravelLeg(_ref) {
164
225
  }, rest));
165
226
  };
166
227
 
167
- function modeCalc(mode) {
228
+ function modeCalc$1(mode) {
168
229
  switch (mode) {
169
230
  case 'bus':
170
231
  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} from '@entur/icons';\nimport './TravelTag.scss';\n\nexport type TravelTagProps = {\n /** Callback som kalles for når man skal lukke TravelTagen\n * @default undefined\n */\n onClose?: () => void;\n /** Innholdet til TravelTagen */\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 transport?:\n | 'bus'\n | 'metro'\n | 'air'\n | 'tram'\n | 'rail'\n | 'water'\n | 'bike'\n | 'scooter'\n | 'foot'\n | 'car';\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 ...rest\n}) => {\n const isClosable = onClose ? true : false;\n const numberOfChildren = React.Children.count(children);\n\n return (\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--icon-and-text': numberOfChildren > 1,\n [`eds-travel-tag--transport-${transport}`]: transport,\n className,\n })}\n {...rest}\n >\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 <ValidationExclamationIcon className=\"eds-travel-tag__alert-exclamation-icon\" />\n )}\n {alert === 'warning' && (\n <ValidationErrorIcon className=\"eds-travel-tag__alert-error-icon\" />\n )}\n </span>\n )}\n </div>\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","isClosable","numberOfChildren","Children","count","onClick","CloseSmallIcon","inline","ValidationInfoIcon","ValidationExclamationIcon","ValidationErrorIcon","LegLine","color","direction","pattern","style","backgroundColor","LegBone","startColor","endColor","showStart","showStop","showLine","TravelLeg","modeCalc","contrast","isContrast","useContrast","mode","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","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,2 +1,2 @@
1
- "use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var r=require("@entur/utils"),t=e(require("react")),a=e(require("classnames")),o=require("@entur/icons"),n=require("@entur/tokens"),s=require("@entur/layout");function l(e,r){if(null==e)return{};var t,a,o={},n=Object.keys(e);for(a=0;a<n.length;a++)r.indexOf(t=n[a])>=0||(o[t]=e[t]);return o}var c=function(e){var r,o=e.color,n=e.direction,s=void 0===n?"horizontal":n,c=e.pattern,i=e.className,d=l(e,["color","direction","pattern","className"]);return t.createElement("div",Object.assign({className:a("eds-leg-line",i,(r={},r["eds-leg-line--"+c]=c,r["eds-leg-line--"+s]=s,r)),style:{backgroundColor:o}},d))},i=function(e){var r=e.direction,o=e.pattern,n=e.color,s=e.startColor,i=e.endColor,d=e.showStart,u=void 0===d||d,m=e.showStop,p=void 0===m||m,v=e.showLine,g=void 0===v||v,f=e.className,b=l(e,["direction","pattern","color","startColor","endColor","showStart","showStop","showLine","className"]);return t.createElement("div",Object.assign({className:a(f,"eds-leg-bone",[{"eds-leg-bone--vertical":"vertical"===r},{"eds-leg-bone--horizontal":"horizontal"===r}])},b),u&&t.createElement("div",{className:"eds-leg-bone__start",style:{backgroundColor:s||n}}),g&&t.createElement(c,{className:"eds-leg-bone__line",direction:r,color:n,pattern:o}),p&&t.createElement("div",{className:"eds-leg-bone__stop",style:{backgroundColor:i||n}}))};r.warnAboutMissingStyles("travel"),exports.LegBone=i,exports.LegLine=c,exports.TravelHeader=function(e){var r=e.as,o=void 0===r?"div":r,n=e.from,s=e.to,c=e.size,i=void 0===c?"large":c,d=e.className,u=e.noWrap,m=l(e,["as","from","to","size","className","noWrap"]);return t.createElement(o,Object.assign({className:a("eds-travel-header",d,{"eds-travel-header--large":"large"===i,"eds-travel-header--medium":"medium"===i,"eds-travel-header--no-wrap":u}),"aria-label":"Fra "+n+", til "+s},m),t.createElement("span",{className:"eds-travel-header__from"},n),t.createElement("span",{className:"eds-travel-header__to"},s))},exports.TravelLeg=function(e){var r=e.className,a=e.transport,o=e.direction,c=l(e,["className","transport","direction"]),d=function(e){switch(e){case"bus":return{color:n.colors.transport.default.bus,contrast:n.colors.transport.contrast.bus,pattern:"dashed"};case"metro":return{color:n.colors.transport.default.metro,contrast:n.colors.transport.contrast.metro,pattern:"line"};case"air":return{color:n.colors.transport.default.plane,contrast:n.colors.transport.contrast.plane,pattern:"line"};case"tram":return{color:n.colors.transport.default.tram,contrast:n.colors.transport.contrast.tram,pattern:"line"};case"rail":return{color:n.colors.transport.default.train,contrast:n.colors.transport.contrast.train,pattern:"line"};case"water":return{color:n.colors.transport.default.ferry,contrast:n.colors.transport.contrast.ferry,pattern:"wave"};case"bike":case"scooter":return{color:n.colors.transport.default.mobility,contrast:n.colors.transport.contrast.mobility,pattern:"line"};case"foot":return{color:n.colors.transport.default.walk,contrast:n.colors.transport.contrast.walk,pattern:"dotted"};case"car":return{color:n.colors.transport.default.taxi,contrast:n.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:n.colors.brand.blue,contrast:n.colors.brand.white,pattern:"line"}}}(a),u=d.color,m=d.contrast,p=d.pattern,v=s.useContrast();return t.createElement(i,Object.assign({direction:o,pattern:p,color:v?m:u,className:r},c))},exports.TravelTag=function(e){var r,n=e.onClose,s=void 0===n?void 0:n,c=e.children,i=e.className,d=e.alert,u=void 0===d?"none":d,m=e.transport,p=l(e,["onClose","children","className","alert","transport"]),v=!!s,g=t.Children.count(c);return t.createElement("div",Object.assign({className:a("eds-travel-tag",(r={"eds-travel-tag--closable":v,"eds-travel-tag--alert":"none"!==u,"eds-travel-tag--icon-and-text":g>1},r["eds-travel-tag--transport-"+m]=m,r.className=i,r))},p),c,v&&t.createElement("button",{onClick:s,className:"eds-travel-tag__close-button"},t.createElement(o.CloseSmallIcon,{inline:!0})),"none"!==u&&t.createElement("span",{className:"eds-travel-tag__alert"},"info"===u&&t.createElement(o.ValidationInfoIcon,{className:"eds-travel-tag__alert-info-icon"}),"error"===u&&t.createElement(o.ValidationExclamationIcon,{className:"eds-travel-tag__alert-exclamation-icon"}),"warning"===u&&t.createElement(o.ValidationErrorIcon,{className:"eds-travel-tag__alert-error-icon"})))};
1
+ "use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var r=require("@entur/utils"),t=e(require("react")),a=e(require("classnames")),n=require("@entur/icons"),o=require("@entur/tokens"),l=require("@entur/layout");function s(e,r){if(null==e)return{};var t,a,n={},o=Object.keys(e);for(a=0;a<o.length;a++)r.indexOf(t=o[a])>=0||(n[t]=e[t]);return n}var c=function(e){var r,n=e.color,o=e.direction,l=void 0===o?"horizontal":o,c=e.pattern,i=e.className,d=s(e,["color","direction","pattern","className"]);return t.createElement("div",Object.assign({className:a("eds-leg-line",i,(r={},r["eds-leg-line--"+c]=c,r["eds-leg-line--"+l]=l,r)),style:{backgroundColor:n}},d))},i=function(e){var r=e.direction,n=e.pattern,o=e.color,l=e.startColor,i=e.endColor,d=e.showStart,u=void 0===d||d,m=e.showStop,p=void 0===m||m,v=e.showLine,g=void 0===v||v,b=e.className,f=s(e,["direction","pattern","color","startColor","endColor","showStart","showStop","showLine","className"]);return t.createElement("div",Object.assign({className:a(b,"eds-leg-bone",[{"eds-leg-bone--vertical":"vertical"===r},{"eds-leg-bone--horizontal":"horizontal"===r}])},f),u&&t.createElement("div",{className:"eds-leg-bone__start",style:{backgroundColor:l||o}}),g&&t.createElement(c,{className:"eds-leg-bone__line",direction:r,color:o,pattern:n}),p&&t.createElement("div",{className:"eds-leg-bone__stop",style:{backgroundColor:i||o}}))};r.warnAboutMissingStyles("travel"),exports.LegBone=i,exports.LegLine=c,exports.TravelHeader=function(e){var r=e.as,n=void 0===r?"div":r,o=e.from,l=e.to,c=e.size,i=void 0===c?"large":c,d=e.className,u=e.noWrap,m=s(e,["as","from","to","size","className","noWrap"]);return t.createElement(n,Object.assign({className:a("eds-travel-header",d,{"eds-travel-header--large":"large"===i,"eds-travel-header--medium":"medium"===i,"eds-travel-header--no-wrap":u}),"aria-label":"Fra "+o+", til "+l},m),t.createElement("span",{className:"eds-travel-header__from"},o),t.createElement("span",{className:"eds-travel-header__to"},l))},exports.TravelLeg=function(e){var r=e.className,a=e.transport,n=e.direction,c=s(e,["className","transport","direction"]),d=function(e){switch(e){case"bus":return{color:o.colors.transport.default.bus,contrast:o.colors.transport.contrast.bus,pattern:"dashed"};case"metro":return{color:o.colors.transport.default.metro,contrast:o.colors.transport.contrast.metro,pattern:"line"};case"air":return{color:o.colors.transport.default.plane,contrast:o.colors.transport.contrast.plane,pattern:"line"};case"tram":return{color:o.colors.transport.default.tram,contrast:o.colors.transport.contrast.tram,pattern:"line"};case"rail":return{color:o.colors.transport.default.train,contrast:o.colors.transport.contrast.train,pattern:"line"};case"water":return{color:o.colors.transport.default.ferry,contrast:o.colors.transport.contrast.ferry,pattern:"wave"};case"bike":case"scooter":return{color:o.colors.transport.default.mobility,contrast:o.colors.transport.contrast.mobility,pattern:"line"};case"foot":return{color:o.colors.transport.default.walk,contrast:o.colors.transport.contrast.walk,pattern:"dotted"};case"car":return{color:o.colors.transport.default.taxi,contrast:o.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:o.colors.brand.blue,contrast:o.colors.brand.white,pattern:"line"}}}(a),u=d.color,m=d.contrast,p=d.pattern,v=l.useContrast();return t.createElement(i,Object.assign({direction:n,pattern:p,color:v?m:u,className:r},c))},exports.TravelTag=function(e){var r,o,l,c,i=e.onClose,d=void 0===i?void 0:i,u=e.children,m=e.className,p=e.alert,v=void 0===p?"none":p,g=e.transport,b=e.label,f=e.labelPlacement,E=void 0===f?"right":f,_=s(e,["onClose","children","className","alert","transport","label","labelPlacement"]),N=!!d,h=t.Children.count(u),w=null!==(r=function(e){switch(e){case"bus":return t.createElement(n.BusIcon,null);case"metro":return t.createElement(n.SubwayIcon,null);case"air":return t.createElement(n.PlaneIcon,null);case"tram":return t.createElement(n.TramIcon,null);case"rail":return t.createElement(n.TrainIcon,null);case"water":return t.createElement(n.FerryIcon,null);case"carferry":return t.createElement(n.CarferryIcon,null);case"bike":return t.createElement(n.BicycleIcon,null);case"scooter":return t.createElement(n.ScooterIcon,null);case"foot":return t.createElement(n.WalkingIcon,null);case"car":return t.createElement(n.CarIcon,null);case"taxi":return t.createElement(n.TaxiIcon,null);default:return t.createElement(t.Fragment,null)}}(g))&&void 0!==r?r:t.createElement(t.Fragment,null),y=t.createElement("div",Object.assign({className:a("eds-travel-tag",(o={"eds-travel-tag--closable":N,"eds-travel-tag--alert":"none"!==v,"eds-travel-tag--alert--error":"error"===v,"eds-travel-tag--icon-and-text":h>1||g&&h>0},o["eds-travel-tag--transport-"+g]=g,o.className=m,o))},_),g&&w,u,N&&t.createElement("button",{onClick:d,className:"eds-travel-tag__close-button"},t.createElement(n.CloseSmallIcon,{inline:!0})),"none"!==v&&t.createElement("span",{className:"eds-travel-tag__alert"},"info"===v&&t.createElement(n.ValidationInfoIcon,{className:"eds-travel-tag__alert-info-icon"}),"error"===v&&t.createElement(n.ValidationErrorIcon,{className:"eds-travel-tag__alert-error-icon"}),"warning"===v&&t.createElement(n.ValidationExclamationIcon,{className:"eds-travel-tag__alert-exclamation-icon"}))),I=t.createElement("div",{className:a("eds-travel-tag__label",(l={},l["eds-travel-tag__label--"+E]=b,l["eds-travel-tag__label--"+E+"--with-alert"]=b&&"none"!==v,l))},b);return b?t.createElement("div",{className:a("eds-travel-tag__wrapper",(c={},c["eds-travel-tag__wrapper--label-position-"+E]=b,c))},y,I):y};
2
2
  //# sourceMappingURL=travel.cjs.production.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"travel.cjs.production.min.js","sources":["../src/LegLine.tsx","../src/LegBone.tsx","../src/index.tsx","../src/TravelHeader.tsx","../src/TravelLeg.tsx","../src/TravelTag.tsx"],"sourcesContent":["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';\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 { 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 React from 'react';\nimport classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoIcon,\n ValidationErrorIcon,\n ValidationExclamationIcon,\n} from '@entur/icons';\nimport './TravelTag.scss';\n\nexport type TravelTagProps = {\n /** Callback som kalles for når man skal lukke TravelTagen\n * @default undefined\n */\n onClose?: () => void;\n /** Innholdet til TravelTagen */\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 transport?:\n | 'bus'\n | 'metro'\n | 'air'\n | 'tram'\n | 'rail'\n | 'water'\n | 'bike'\n | 'scooter'\n | 'foot'\n | 'car';\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 ...rest\n}) => {\n const isClosable = onClose ? true : false;\n const numberOfChildren = React.Children.count(children);\n\n return (\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--icon-and-text': numberOfChildren > 1,\n [`eds-travel-tag--transport-${transport}`]: transport,\n className,\n })}\n {...rest}\n >\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 <ValidationExclamationIcon className=\"eds-travel-tag__alert-exclamation-icon\" />\n )}\n {alert === 'warning' && (\n <ValidationErrorIcon className=\"eds-travel-tag__alert-error-icon\" />\n )}\n </span>\n )}\n </div>\n );\n};\n"],"names":["LegLine","color","direction","pattern","className","rest","React","classNames","style","backgroundColor","LegBone","startColor","endColor","showStart","showStop","showLine","warnAboutMissingStyles","as","Element","from","to","size","noWrap","transport","mode","colors","bus","contrast","metro","plane","tram","train","ferry","mobility","walk","taxi","console","error","brand","blue","white","modeCalc","isContrast","useContrast","onClose","undefined","children","alert","isClosable","numberOfChildren","Children","count","onClick","CloseSmallIcon","inline","ValidationInfoIcon","ValidationExclamationIcon","ValidationErrorIcon"],"mappings":"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"}
1
+ {"version":3,"file":"travel.cjs.production.min.js","sources":["../src/LegLine.tsx","../src/LegBone.tsx","../src/index.tsx","../src/TravelHeader.tsx","../src/TravelLeg.tsx","../src/TravelTag.tsx"],"sourcesContent":["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';\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 { 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 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"],"names":["LegLine","color","direction","pattern","className","rest","React","classNames","style","backgroundColor","LegBone","startColor","endColor","showStart","showStop","showLine","warnAboutMissingStyles","as","Element","from","to","size","noWrap","transport","mode","colors","bus","contrast","metro","plane","tram","train","ferry","mobility","walk","taxi","console","error","brand","blue","white","modeCalc","isContrast","useContrast","onClose","undefined","children","alert","label","labelPlacement","isClosable","numberOfChildren","Children","count","TransportIcon","BusIcon","SubwayIcon","PlaneIcon","TramIcon","TrainIcon","FerryIcon","CarferryIcon","BicycleIcon","ScooterIcon","WalkingIcon","CarIcon","TaxiIcon","TravelTagWithoutLabel","onClick","CloseSmallIcon","inline","ValidationInfoIcon","ValidationErrorIcon","ValidationExclamationIcon","Label"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { warnAboutMissingStyles } from '@entur/utils';
2
2
  import React from 'react';
3
3
  import classNames from 'classnames';
4
- import { CloseSmallIcon, ValidationInfoIcon, ValidationExclamationIcon, ValidationErrorIcon } from '@entur/icons';
4
+ import { CloseSmallIcon, ValidationInfoIcon, ValidationErrorIcon, ValidationExclamationIcon, TaxiIcon, CarIcon, WalkingIcon, ScooterIcon, BicycleIcon, CarferryIcon, FerryIcon, TrainIcon, TramIcon, PlaneIcon, SubwayIcon, BusIcon } from '@entur/icons';
5
5
  import { colors } from '@entur/tokens';
6
6
  import { useContrast } from '@entur/layout';
7
7
 
@@ -46,7 +46,7 @@ var TravelHeader = function TravelHeader(_ref) {
46
46
  };
47
47
 
48
48
  var TravelTag = function TravelTag(_ref) {
49
- var _classNames;
49
+ var _modeCalc, _classNames, _classNames2;
50
50
 
51
51
  var _ref$onClose = _ref.onClose,
52
52
  onClose = _ref$onClose === void 0 ? undefined : _ref$onClose,
@@ -55,17 +55,22 @@ var TravelTag = function TravelTag(_ref) {
55
55
  _ref$alert = _ref.alert,
56
56
  alert = _ref$alert === void 0 ? 'none' : _ref$alert,
57
57
  transport = _ref.transport,
58
- rest = _objectWithoutPropertiesLoose(_ref, ["onClose", "children", "className", "alert", "transport"]);
58
+ label = _ref.label,
59
+ _ref$labelPlacement = _ref.labelPlacement,
60
+ labelPlacement = _ref$labelPlacement === void 0 ? 'right' : _ref$labelPlacement,
61
+ rest = _objectWithoutPropertiesLoose(_ref, ["onClose", "children", "className", "alert", "transport", "label", "labelPlacement"]);
59
62
 
60
63
  var isClosable = onClose ? true : false;
61
64
  var numberOfChildren = React.Children.count(children);
62
- return React.createElement("div", Object.assign({
65
+ var TransportIcon = (_modeCalc = modeCalc(transport)) !== null && _modeCalc !== void 0 ? _modeCalc : React.createElement(React.Fragment, null);
66
+ var TravelTagWithoutLabel = React.createElement("div", Object.assign({
63
67
  className: classNames('eds-travel-tag', (_classNames = {
64
68
  'eds-travel-tag--closable': isClosable,
65
69
  'eds-travel-tag--alert': alert !== 'none',
66
- 'eds-travel-tag--icon-and-text': numberOfChildren > 1
70
+ 'eds-travel-tag--alert--error': alert === 'error',
71
+ 'eds-travel-tag--icon-and-text': numberOfChildren > 1 || transport && numberOfChildren > 0
67
72
  }, _classNames["eds-travel-tag--transport-" + transport] = transport, _classNames.className = className, _classNames))
68
- }, rest), children, isClosable && React.createElement("button", {
73
+ }, rest), transport && TransportIcon, children, isClosable && React.createElement("button", {
69
74
  onClick: onClose,
70
75
  className: "eds-travel-tag__close-button"
71
76
  }, React.createElement(CloseSmallIcon, {
@@ -74,11 +79,67 @@ var TravelTag = function TravelTag(_ref) {
74
79
  className: "eds-travel-tag__alert"
75
80
  }, alert === 'info' && React.createElement(ValidationInfoIcon, {
76
81
  className: "eds-travel-tag__alert-info-icon"
77
- }), alert === 'error' && React.createElement(ValidationExclamationIcon, {
78
- className: "eds-travel-tag__alert-exclamation-icon"
79
- }), alert === 'warning' && React.createElement(ValidationErrorIcon, {
82
+ }), alert === 'error' && React.createElement(ValidationErrorIcon, {
80
83
  className: "eds-travel-tag__alert-error-icon"
84
+ }), alert === 'warning' && React.createElement(ValidationExclamationIcon, {
85
+ className: "eds-travel-tag__alert-exclamation-icon"
81
86
  })));
87
+ var Label = React.createElement("div", {
88
+ className: classNames('eds-travel-tag__label', (_classNames2 = {}, _classNames2["eds-travel-tag__label--" + labelPlacement] = label, _classNames2["eds-travel-tag__label--" + labelPlacement + "--with-alert"] = label && alert !== 'none', _classNames2))
89
+ }, label);
90
+
91
+ if (label) {
92
+ var _classNames3;
93
+
94
+ return React.createElement("div", {
95
+ className: classNames('eds-travel-tag__wrapper', (_classNames3 = {}, _classNames3["eds-travel-tag__wrapper--label-position-" + labelPlacement] = label, _classNames3))
96
+ }, TravelTagWithoutLabel, Label);
97
+ }
98
+
99
+ return TravelTagWithoutLabel;
100
+ };
101
+
102
+ var modeCalc = function modeCalc(mode) {
103
+ switch (mode) {
104
+ case 'bus':
105
+ return React.createElement(BusIcon, null);
106
+
107
+ case 'metro':
108
+ return React.createElement(SubwayIcon, null);
109
+
110
+ case 'air':
111
+ return React.createElement(PlaneIcon, null);
112
+
113
+ case 'tram':
114
+ return React.createElement(TramIcon, null);
115
+
116
+ case 'rail':
117
+ return React.createElement(TrainIcon, null);
118
+
119
+ case 'water':
120
+ return React.createElement(FerryIcon, null);
121
+
122
+ case 'carferry':
123
+ return React.createElement(CarferryIcon, null);
124
+
125
+ case 'bike':
126
+ return React.createElement(BicycleIcon, null);
127
+
128
+ case 'scooter':
129
+ return React.createElement(ScooterIcon, null);
130
+
131
+ case 'foot':
132
+ return React.createElement(WalkingIcon, null);
133
+
134
+ case 'car':
135
+ return React.createElement(CarIcon, null);
136
+
137
+ case 'taxi':
138
+ return React.createElement(TaxiIcon, null);
139
+
140
+ default:
141
+ return React.createElement(React.Fragment, null);
142
+ }
82
143
  };
83
144
 
84
145
  var LegLine = function LegLine(_ref) {
@@ -144,7 +205,7 @@ var TravelLeg = function TravelLeg(_ref) {
144
205
  direction = _ref.direction,
145
206
  rest = _objectWithoutPropertiesLoose(_ref, ["className", "transport", "direction"]);
146
207
 
147
- var _modeCalc = modeCalc(transport),
208
+ var _modeCalc = modeCalc$1(transport),
148
209
  color = _modeCalc.color,
149
210
  contrast = _modeCalc.contrast,
150
211
  pattern = _modeCalc.pattern;
@@ -158,7 +219,7 @@ var TravelLeg = function TravelLeg(_ref) {
158
219
  }, rest));
159
220
  };
160
221
 
161
- function modeCalc(mode) {
222
+ function modeCalc$1(mode) {
162
223
  switch (mode) {
163
224
  case 'bus':
164
225
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"travel.esm.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} from '@entur/icons';\nimport './TravelTag.scss';\n\nexport type TravelTagProps = {\n /** Callback som kalles for når man skal lukke TravelTagen\n * @default undefined\n */\n onClose?: () => void;\n /** Innholdet til TravelTagen */\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 transport?:\n | 'bus'\n | 'metro'\n | 'air'\n | 'tram'\n | 'rail'\n | 'water'\n | 'bike'\n | 'scooter'\n | 'foot'\n | 'car';\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 ...rest\n}) => {\n const isClosable = onClose ? true : false;\n const numberOfChildren = React.Children.count(children);\n\n return (\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--icon-and-text': numberOfChildren > 1,\n [`eds-travel-tag--transport-${transport}`]: transport,\n className,\n })}\n {...rest}\n >\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 <ValidationExclamationIcon className=\"eds-travel-tag__alert-exclamation-icon\" />\n )}\n {alert === 'warning' && (\n <ValidationErrorIcon className=\"eds-travel-tag__alert-error-icon\" />\n )}\n </span>\n )}\n </div>\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","isClosable","numberOfChildren","Children","count","onClick","CloseSmallIcon","inline","ValidationInfoIcon","ValidationExclamationIcon","ValidationErrorIcon","LegLine","color","direction","pattern","style","backgroundColor","LegBone","startColor","endColor","showStart","showStop","showLine","TravelLeg","modeCalc","contrast","isContrast","useContrast","mode","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.esm.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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@entur/travel",
3
- "version": "4.2.14",
3
+ "version": "5.0.0",
4
4
  "license": "EUPL-1.2",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/travel.esm.js",
@@ -36,5 +36,5 @@
36
36
  "devDependencies": {
37
37
  "rollup-plugin-sass": "^1.2.2"
38
38
  },
39
- "gitHead": "6255452bbbb124b6569095cf08f96143873a7f8e"
39
+ "gitHead": "7862498307d864c5f0265d657f49f76cd0afa8db"
40
40
  }