@entur/travel 6.0.34-beta.0 → 6.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/styles.css +44 -63
- package/dist/travel.cjs.development.js +3 -39
- package/dist/travel.cjs.development.js.map +1 -1
- package/dist/travel.cjs.production.min.js +1 -1
- package/dist/travel.cjs.production.min.js.map +1 -1
- package/dist/travel.esm.js +3 -39
- package/dist/travel.esm.js.map +1 -1
- package/dist/utils.d.ts +0 -2
- package/package.json +6 -6
package/dist/styles.css
CHANGED
|
@@ -46,85 +46,42 @@
|
|
|
46
46
|
/* DO NOT CHANGE!*/
|
|
47
47
|
/* This file is automatically generated from @entur/tokens! Changes will be overwritten. */
|
|
48
48
|
.eds-travel-tag {
|
|
49
|
-
--background-color: #
|
|
50
|
-
--text-color:
|
|
51
|
-
background-color: var(--background-color);
|
|
52
|
-
color: var(--text-color);
|
|
53
|
-
border-radius: 0.25rem;
|
|
49
|
+
--background-color: #646464;
|
|
50
|
+
--text-color: #ffffff;
|
|
54
51
|
display: inline-flex;
|
|
55
|
-
|
|
56
|
-
|
|
52
|
+
position: relative;
|
|
53
|
+
padding: 0.25rem 0.5rem;
|
|
57
54
|
height: 2rem;
|
|
58
55
|
min-width: 2rem;
|
|
59
|
-
|
|
60
|
-
|
|
56
|
+
font-size: 0.875rem;
|
|
57
|
+
line-height: 1.5rem;
|
|
58
|
+
border-radius: 0.25rem;
|
|
59
|
+
background-color: var(--background-color);
|
|
60
|
+
color: var(--text-color);
|
|
61
61
|
}
|
|
62
62
|
.eds-contrast .eds-travel-tag {
|
|
63
|
-
background-color: #
|
|
63
|
+
--background-color: #d1d3d3;
|
|
64
|
+
--text-color: #181c56;
|
|
64
65
|
}
|
|
65
66
|
.eds-travel-tag--alert {
|
|
66
67
|
padding-right: 0.75rem;
|
|
67
68
|
}
|
|
68
69
|
.eds-travel-tag--alert--error {
|
|
69
|
-
box-shadow: inset 0 0 0 20px rgba(255, 255, 255, 0.
|
|
70
|
+
box-shadow: inset 0 0 0 20px rgba(255, 255, 255, 0.7);
|
|
71
|
+
--text-color: var(--background-color);
|
|
70
72
|
}
|
|
71
73
|
.eds-contrast .eds-travel-tag--alert--error.eds-travel-tag {
|
|
72
|
-
box-shadow:
|
|
73
|
-
|
|
74
|
-
border: 0.125rem dashed #54568c;
|
|
74
|
+
box-shadow: inset 0 0 0 20px rgba(24, 28, 86, 0.7);
|
|
75
|
+
--text-color: var(--background-color);
|
|
75
76
|
}
|
|
76
77
|
.eds-travel-tag--icon-and-text > .eds-icon {
|
|
77
78
|
margin-right: 0.5rem;
|
|
78
79
|
}
|
|
79
80
|
.eds-travel-tag > .eds-icon {
|
|
80
81
|
font-size: 1.5rem;
|
|
81
|
-
color:
|
|
82
|
-
}
|
|
83
|
-
.eds-contrast .eds-travel-tag > .eds-icon :where(g, path) {
|
|
84
|
-
fill: var(--background-color);
|
|
85
|
-
}
|
|
86
|
-
.eds-travel-tag__close-button {
|
|
87
|
-
-webkit-appearance: none;
|
|
88
|
-
-moz-appearance: none;
|
|
89
|
-
appearance: none;
|
|
90
|
-
background: none;
|
|
91
|
-
border: none;
|
|
92
|
-
border-radius: 50%;
|
|
93
|
-
cursor: pointer;
|
|
94
|
-
margin: 0 0 0 0.75rem;
|
|
95
|
-
padding: 0;
|
|
96
|
-
height: 1.5rem;
|
|
97
|
-
width: 1.5rem;
|
|
98
|
-
}
|
|
99
|
-
.eds-travel-tag__close-button .eds-icon {
|
|
100
|
-
color: #181c56;
|
|
101
|
-
font-size: 0.875rem;
|
|
102
|
-
}
|
|
103
|
-
.eds-contrast .eds-travel-tag__close-button .eds-icon {
|
|
104
|
-
color: #ffffff;
|
|
105
|
-
}
|
|
106
|
-
.eds-travel-tag__close-button:focus,
|
|
107
|
-
.eds-travel-tag__close-button [focus-within] {
|
|
108
|
-
outline-offset: 0.125rem;
|
|
109
|
-
outline: none;
|
|
110
|
-
box-shadow: 0 0 0 0.125rem #ffffff, 0 0 0 0.25rem #181c56;
|
|
111
|
-
}
|
|
112
|
-
.eds-travel-tag__close-button:focus,
|
|
113
|
-
.eds-travel-tag__close-button :focus-within {
|
|
114
|
-
outline-offset: 0.125rem;
|
|
115
|
-
outline: none;
|
|
116
|
-
box-shadow: 0 0 0 0.125rem #ffffff, 0 0 0 0.25rem #181c56;
|
|
117
|
-
}
|
|
118
|
-
.eds-contrast .eds-travel-tag__close-button:focus,
|
|
119
|
-
.eds-contrast .eds-travel-tag__close-button [focus-within] {
|
|
120
|
-
box-shadow: 0 0 0 0.125rem #181c56, 0 0 0 0.25rem #ffffff;
|
|
121
|
-
}
|
|
122
|
-
.eds-contrast .eds-travel-tag__close-button:focus,
|
|
123
|
-
.eds-contrast .eds-travel-tag__close-button :focus-within {
|
|
124
|
-
box-shadow: 0 0 0 0.125rem #181c56, 0 0 0 0.25rem #ffffff;
|
|
82
|
+
color: var(--text-color);
|
|
125
83
|
}
|
|
126
84
|
.eds-travel-tag__alert {
|
|
127
|
-
background: #ffffff;
|
|
128
85
|
border-radius: 50%;
|
|
129
86
|
display: flex;
|
|
130
87
|
align-items: center;
|
|
@@ -135,13 +92,11 @@
|
|
|
135
92
|
position: absolute;
|
|
136
93
|
top: 0.4375rem;
|
|
137
94
|
right: -0.6875rem;
|
|
95
|
+
background: #ffffff;
|
|
138
96
|
}
|
|
139
97
|
.eds-contrast .eds-travel-tag__alert {
|
|
140
98
|
background: #181c56;
|
|
141
99
|
}
|
|
142
|
-
.eds-contrast .eds-travel-tag__alert--error-icon {
|
|
143
|
-
top: 0.5625rem;
|
|
144
|
-
}
|
|
145
100
|
.eds-travel-tag__alert-exclamation-icon {
|
|
146
101
|
color: #ffca28;
|
|
147
102
|
}
|
|
@@ -156,7 +111,6 @@
|
|
|
156
111
|
color: #d31b1b;
|
|
157
112
|
}
|
|
158
113
|
.eds-contrast .eds-travel-tag__alert-error-icon {
|
|
159
|
-
margin-bottom: 0.25rem;
|
|
160
114
|
color: #ff9494;
|
|
161
115
|
}
|
|
162
116
|
.eds-travel-tag__alert-info-icon {
|
|
@@ -193,6 +147,33 @@
|
|
|
193
147
|
margin-top: 0.125rem;
|
|
194
148
|
font-size: 0.875rem;
|
|
195
149
|
}
|
|
150
|
+
.eds-travel-tag__close-button {
|
|
151
|
+
-webkit-appearance: none;
|
|
152
|
+
-moz-appearance: none;
|
|
153
|
+
appearance: none;
|
|
154
|
+
background: none;
|
|
155
|
+
border: none;
|
|
156
|
+
border-radius: 50%;
|
|
157
|
+
cursor: pointer;
|
|
158
|
+
margin: 0 0 0 0.75rem;
|
|
159
|
+
padding: 0;
|
|
160
|
+
height: 1.5rem;
|
|
161
|
+
width: 1.5rem;
|
|
162
|
+
}
|
|
163
|
+
.eds-travel-tag__close-button .eds-icon {
|
|
164
|
+
color: var(--text-color);
|
|
165
|
+
font-size: 0.875rem;
|
|
166
|
+
}
|
|
167
|
+
.eds-travel-tag__close-button:focus,
|
|
168
|
+
.eds-travel-tag__close-button [focus-within] {
|
|
169
|
+
outline-offset: 0.125rem;
|
|
170
|
+
outline: 2px solid #ffffff;
|
|
171
|
+
}
|
|
172
|
+
.eds-travel-tag__close-button:focus,
|
|
173
|
+
.eds-travel-tag__close-button :focus-within {
|
|
174
|
+
outline-offset: 0.125rem;
|
|
175
|
+
outline: 2px solid #ffffff;
|
|
176
|
+
}
|
|
196
177
|
.eds-leg-line {
|
|
197
178
|
flex-grow: 1;
|
|
198
179
|
mask-image: url("./pattern/line.svg");
|
|
@@ -68,9 +68,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
68
68
|
return {
|
|
69
69
|
Icon: icons.MetroIcon,
|
|
70
70
|
backgroundColor: tokens.colors.transport["default"].metro,
|
|
71
|
-
textColor: tokens.colors.brand.white,
|
|
72
71
|
contrastBackgroundColor: tokens.colors.transport.contrast.metro,
|
|
73
|
-
contrastTextColor: tokens.colors.brand.white,
|
|
74
72
|
pattern: 'line',
|
|
75
73
|
ariaLabel: 'T-bane'
|
|
76
74
|
};
|
|
@@ -78,9 +76,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
78
76
|
return {
|
|
79
77
|
Icon: icons.BusIcon,
|
|
80
78
|
backgroundColor: tokens.colors.transport["default"].bus,
|
|
81
|
-
textColor: tokens.colors.brand.white,
|
|
82
79
|
contrastBackgroundColor: tokens.colors.transport.contrast.bus,
|
|
83
|
-
contrastTextColor: tokens.colors.brand.white,
|
|
84
80
|
pattern: 'dashed',
|
|
85
81
|
ariaLabel: 'Buss'
|
|
86
82
|
};
|
|
@@ -89,9 +85,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
89
85
|
return {
|
|
90
86
|
Icon: icons.PlaneIcon,
|
|
91
87
|
backgroundColor: tokens.colors.transport["default"].plane,
|
|
92
|
-
textColor: tokens.colors.brand.white,
|
|
93
88
|
contrastBackgroundColor: tokens.colors.transport.contrast.plane,
|
|
94
|
-
contrastTextColor: tokens.colors.brand.white,
|
|
95
89
|
pattern: 'line',
|
|
96
90
|
ariaLabel: 'Fly'
|
|
97
91
|
};
|
|
@@ -99,9 +93,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
99
93
|
return {
|
|
100
94
|
Icon: icons.HelicopterIcon,
|
|
101
95
|
backgroundColor: tokens.colors.transport["default"].helicopter,
|
|
102
|
-
textColor: tokens.colors.brand.white,
|
|
103
96
|
contrastBackgroundColor: tokens.colors.transport.contrast.helicopter,
|
|
104
|
-
contrastTextColor: tokens.colors.brand.white,
|
|
105
97
|
pattern: 'line',
|
|
106
98
|
ariaLabel: 'Helikopter'
|
|
107
99
|
};
|
|
@@ -109,9 +101,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
109
101
|
return {
|
|
110
102
|
Icon: icons.TramIcon,
|
|
111
103
|
backgroundColor: tokens.colors.transport["default"].tram,
|
|
112
|
-
textColor: tokens.colors.brand.white,
|
|
113
104
|
contrastBackgroundColor: tokens.colors.transport.contrast.tram,
|
|
114
|
-
contrastTextColor: tokens.colors.brand.white,
|
|
115
105
|
pattern: 'line',
|
|
116
106
|
ariaLabel: 'Trikk'
|
|
117
107
|
};
|
|
@@ -119,9 +109,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
119
109
|
return {
|
|
120
110
|
Icon: icons.FunicularIcon,
|
|
121
111
|
backgroundColor: tokens.colors.transport["default"].funicular,
|
|
122
|
-
textColor: tokens.colors.brand.white,
|
|
123
112
|
contrastBackgroundColor: tokens.colors.transport.contrast.funicular,
|
|
124
|
-
contrastTextColor: tokens.colors.brand.white,
|
|
125
113
|
pattern: 'line',
|
|
126
114
|
ariaLabel: 'Taubane'
|
|
127
115
|
};
|
|
@@ -129,9 +117,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
129
117
|
return {
|
|
130
118
|
Icon: icons.CablewayIcon,
|
|
131
119
|
backgroundColor: tokens.colors.transport["default"].cableway,
|
|
132
|
-
textColor: tokens.colors.brand.white,
|
|
133
120
|
contrastBackgroundColor: tokens.colors.transport.contrast.cableway,
|
|
134
|
-
contrastTextColor: tokens.colors.brand.white,
|
|
135
121
|
pattern: 'line',
|
|
136
122
|
ariaLabel: 'Gondol'
|
|
137
123
|
};
|
|
@@ -139,9 +125,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
139
125
|
return {
|
|
140
126
|
Icon: icons.TaxiIcon,
|
|
141
127
|
backgroundColor: tokens.colors.transport["default"].taxi,
|
|
142
|
-
textColor: tokens.colors.brand.white,
|
|
143
128
|
contrastBackgroundColor: tokens.colors.transport.contrast.taxi,
|
|
144
|
-
contrastTextColor: tokens.colors.brand.white,
|
|
145
129
|
pattern: 'dashed',
|
|
146
130
|
ariaLabel: 'Taxi'
|
|
147
131
|
};
|
|
@@ -149,9 +133,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
149
133
|
return {
|
|
150
134
|
Icon: icons.BicycleIcon,
|
|
151
135
|
backgroundColor: tokens.colors.transport["default"].bicycle,
|
|
152
|
-
textColor: tokens.colors.brand.white,
|
|
153
136
|
contrastBackgroundColor: tokens.colors.transport.contrast.bicycle,
|
|
154
|
-
contrastTextColor: tokens.colors.brand.white,
|
|
155
137
|
pattern: 'line',
|
|
156
138
|
ariaLabel: 'Sykkel'
|
|
157
139
|
};
|
|
@@ -159,9 +141,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
159
141
|
return {
|
|
160
142
|
Icon: icons.WalkIcon,
|
|
161
143
|
backgroundColor: tokens.colors.transport["default"].walk,
|
|
162
|
-
textColor: tokens.colors.brand.white,
|
|
163
144
|
contrastBackgroundColor: tokens.colors.transport.contrast.walk,
|
|
164
|
-
contrastTextColor: tokens.colors.brand.white,
|
|
165
145
|
pattern: 'dotted',
|
|
166
146
|
ariaLabel: 'Gange'
|
|
167
147
|
};
|
|
@@ -170,9 +150,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
170
150
|
return {
|
|
171
151
|
Icon: icons.TrainIcon,
|
|
172
152
|
backgroundColor: tokens.colors.transport["default"].train,
|
|
173
|
-
textColor: tokens.colors.brand.white,
|
|
174
153
|
contrastBackgroundColor: tokens.colors.transport.contrast.train,
|
|
175
|
-
contrastTextColor: tokens.colors.brand.white,
|
|
176
154
|
pattern: 'line',
|
|
177
155
|
ariaLabel: 'Tog'
|
|
178
156
|
};
|
|
@@ -181,9 +159,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
181
159
|
return {
|
|
182
160
|
Icon: icons.FerryIcon,
|
|
183
161
|
backgroundColor: tokens.colors.transport["default"].ferry,
|
|
184
|
-
textColor: tokens.colors.brand.white,
|
|
185
162
|
contrastBackgroundColor: tokens.colors.transport.contrast.ferry,
|
|
186
|
-
contrastTextColor: tokens.colors.brand.white,
|
|
187
163
|
pattern: 'wave',
|
|
188
164
|
ariaLabel: 'Ferge'
|
|
189
165
|
};
|
|
@@ -191,9 +167,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
191
167
|
return {
|
|
192
168
|
Icon: icons.CarferryIcon,
|
|
193
169
|
backgroundColor: tokens.colors.transport["default"].carferry,
|
|
194
|
-
textColor: tokens.colors.brand.white,
|
|
195
170
|
contrastBackgroundColor: tokens.colors.transport.contrast.carferry,
|
|
196
|
-
contrastTextColor: tokens.colors.brand.white,
|
|
197
171
|
pattern: 'wave',
|
|
198
172
|
ariaLabel: 'Bilferge'
|
|
199
173
|
};
|
|
@@ -201,9 +175,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
201
175
|
return {
|
|
202
176
|
Icon: icons.MobilityIcon,
|
|
203
177
|
backgroundColor: tokens.colors.transport["default"].mobility,
|
|
204
|
-
textColor: tokens.colors.brand.white,
|
|
205
178
|
contrastBackgroundColor: tokens.colors.transport.contrast.mobility,
|
|
206
|
-
contrastTextColor: tokens.colors.brand.white,
|
|
207
179
|
pattern: 'line',
|
|
208
180
|
ariaLabel: 'El-sparkesykkel'
|
|
209
181
|
};
|
|
@@ -211,9 +183,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
211
183
|
return {
|
|
212
184
|
Icon: icons.BusIcon,
|
|
213
185
|
backgroundColor: tokens.colors.transport["default"].plane,
|
|
214
|
-
textColor: tokens.colors.brand.white,
|
|
215
186
|
contrastBackgroundColor: tokens.colors.transport.contrast.plane,
|
|
216
|
-
contrastTextColor: tokens.colors.brand.white,
|
|
217
187
|
pattern: 'dashed',
|
|
218
188
|
ariaLabel: 'Flybuss'
|
|
219
189
|
};
|
|
@@ -221,9 +191,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
221
191
|
return {
|
|
222
192
|
Icon: icons.TrainIcon,
|
|
223
193
|
backgroundColor: tokens.colors.transport["default"].plane,
|
|
224
|
-
textColor: tokens.colors.brand.white,
|
|
225
194
|
contrastBackgroundColor: tokens.colors.transport.contrast.plane,
|
|
226
|
-
contrastTextColor: tokens.colors.brand.white,
|
|
227
195
|
pattern: 'line',
|
|
228
196
|
ariaLabel: 'Flytog'
|
|
229
197
|
};
|
|
@@ -231,9 +199,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
231
199
|
return {
|
|
232
200
|
Icon: React.Fragment,
|
|
233
201
|
backgroundColor: tokens.colors.brand.blue,
|
|
234
|
-
textColor: tokens.colors.brand.white,
|
|
235
202
|
contrastBackgroundColor: tokens.colors.brand.white,
|
|
236
|
-
contrastTextColor: tokens.colors.brand.white,
|
|
237
203
|
pattern: 'line',
|
|
238
204
|
ariaLabel: ''
|
|
239
205
|
};
|
|
@@ -274,17 +240,14 @@ var TravelTag = function TravelTag(_ref) {
|
|
|
274
240
|
var _getTransportStyle = getTransportStyle(transport),
|
|
275
241
|
Icon = _getTransportStyle.Icon,
|
|
276
242
|
contrastBackgroundColor = _getTransportStyle.contrastBackgroundColor,
|
|
277
|
-
contrastTextColor = _getTransportStyle.contrastTextColor,
|
|
278
243
|
backgroundColor = _getTransportStyle.backgroundColor,
|
|
279
|
-
textColor = _getTransportStyle.textColor,
|
|
280
244
|
ariaLabel = _getTransportStyle.ariaLabel;
|
|
281
245
|
React.useEffect(function () {
|
|
282
246
|
if (transportIsSet) {
|
|
283
|
-
var _tagRef$current
|
|
247
|
+
var _tagRef$current;
|
|
284
248
|
(_tagRef$current = tagRef.current) == null ? void 0 : _tagRef$current.style.setProperty('--background-color', isContrast ? contrastBackgroundColor : backgroundColor);
|
|
285
|
-
(_tagRef$current2 = tagRef.current) == null ? void 0 : _tagRef$current2.style.setProperty('--text-color', isContrast ? contrastTextColor : textColor);
|
|
286
249
|
}
|
|
287
|
-
}, [tagRef.current, backgroundColor
|
|
250
|
+
}, [tagRef.current, backgroundColor]);
|
|
288
251
|
var TravelTagWithoutLabel = React.createElement("div", _extends({
|
|
289
252
|
className: classNames('eds-travel-tag', {
|
|
290
253
|
'eds-travel-tag--closable': isClosable,
|
|
@@ -302,6 +265,7 @@ var TravelTag = function TravelTag(_ref) {
|
|
|
302
265
|
"aria-hidden": true
|
|
303
266
|
}), children, isClosable && React.createElement("button", {
|
|
304
267
|
onClick: onClose,
|
|
268
|
+
type: "button",
|
|
305
269
|
className: "eds-travel-tag__close-button"
|
|
306
270
|
}, React.createElement(icons.CloseSmallIcon, {
|
|
307
271
|
inline: true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"travel.cjs.development.js","sources":["../src/TravelHeader.tsx","../src/utils.ts","../src/TravelTag.tsx","../src/LegLine.tsx","../src/LegBone.tsx","../src/TravelLeg.tsx","../src/TravelSwitch.tsx","../src/index.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport './TravelHeader.scss';\n\nexport type TravelHeaderProps = {\n /** HTML-elementet eller React-komponenten som lager elementet\n * @default 'div'\n */\n as?: string | React.ElementType;\n /** Destinasjonen man reiser fra */\n from: React.ReactNode;\n /** Destinasjonen man reiser til */\n to: React.ReactNode;\n /**Størrelsen på komponenten\n * @default 'large'\n */\n size?: 'large' | 'medium';\n /** Plassere til og fra på samme linje */\n noWrap?: boolean;\n /**Ekstra klassenavn */\n className?: string;\n [key: string]: any;\n};\n\nexport const TravelHeader: React.FC<TravelHeaderProps> = ({\n as: Element = 'div',\n from,\n to,\n size = 'large',\n className,\n noWrap,\n ...rest\n}) => {\n return (\n <Element\n className={classNames('eds-travel-header', className, {\n 'eds-travel-header--large': size === 'large',\n 'eds-travel-header--medium': size === 'medium',\n 'eds-travel-header--no-wrap': noWrap,\n })}\n aria-label={`Fra ${from}, til ${to}`}\n {...rest}\n >\n <span className=\"eds-travel-header__from\">{from}</span>\n <span className=\"eds-travel-header__to\">{to}</span>\n </Element>\n );\n};\n","import React from 'react';\nimport { colors } from '@entur/tokens';\nimport {\n BusIcon,\n FerryIcon,\n CarferryIcon,\n TramIcon,\n PlaneIcon,\n TrainIcon,\n BicycleIcon,\n MobilityIcon,\n MetroIcon,\n HelicopterIcon,\n FunicularIcon,\n CablewayIcon,\n TaxiIcon,\n WalkIcon,\n} from '@entur/icons';\n\nimport type { IconProps } from '@entur/icons';\n\nexport type Transport =\n | 'metro'\n | 'bus'\n | 'plane'\n | 'helicopter'\n | 'tram'\n | 'funicular'\n | 'cableway'\n | 'taxi'\n | 'bicycle'\n | 'walk'\n | 'train'\n | 'ferry'\n | 'carferry'\n | 'mobility'\n | 'airportLinkBus'\n | 'airportLinkRail'\n | 'rail'\n | 'water'\n | 'air'\n | 'none';\n\ntype transportStyleResult = {\n Icon: React.FC<IconProps>;\n backgroundColor: string;\n textColor: string;\n contrastBackgroundColor: string;\n contrastTextColor: string;\n pattern: 'line' | 'wave' | 'dashed' | 'dotted';\n ariaLabel: string;\n};\n\nexport const getTransportStyle = (mode: string): transportStyleResult => {\n switch (mode) {\n case 'metro':\n return {\n Icon: MetroIcon,\n backgroundColor: colors.transport.default.metro,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.metro,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'T-bane',\n };\n case 'bus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.bus,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.bus,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Buss',\n };\n case 'plane':\n case 'air':\n return {\n Icon: PlaneIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Fly',\n };\n case 'helicopter':\n return {\n Icon: HelicopterIcon,\n backgroundColor: colors.transport.default.helicopter,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.helicopter,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Helikopter',\n };\n case 'tram':\n return {\n Icon: TramIcon,\n backgroundColor: colors.transport.default.tram,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.tram,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Trikk',\n };\n case 'funicular':\n return {\n Icon: FunicularIcon,\n backgroundColor: colors.transport.default.funicular,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.funicular,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Taubane',\n };\n case 'cableway':\n return {\n Icon: CablewayIcon,\n backgroundColor: colors.transport.default.cableway,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.cableway,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Gondol',\n };\n case 'taxi':\n return {\n Icon: TaxiIcon,\n backgroundColor: colors.transport.default.taxi,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.taxi,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Taxi',\n };\n case 'bicycle':\n return {\n Icon: BicycleIcon,\n backgroundColor: colors.transport.default.bicycle,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.bicycle,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Sykkel',\n };\n case 'walk':\n return {\n Icon: WalkIcon,\n backgroundColor: colors.transport.default.walk,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.walk,\n contrastTextColor: colors.brand.white,\n pattern: 'dotted',\n ariaLabel: 'Gange',\n };\n case 'train':\n case 'rail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.train,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.train,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Tog',\n };\n case 'ferry':\n case 'water':\n return {\n Icon: FerryIcon,\n backgroundColor: colors.transport.default.ferry,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.ferry,\n contrastTextColor: colors.brand.white,\n pattern: 'wave',\n ariaLabel: 'Ferge',\n };\n case 'carferry':\n return {\n Icon: CarferryIcon,\n backgroundColor: colors.transport.default.carferry,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.carferry,\n contrastTextColor: colors.brand.white,\n pattern: 'wave',\n ariaLabel: 'Bilferge',\n };\n case 'mobility':\n return {\n Icon: MobilityIcon,\n backgroundColor: colors.transport.default.mobility,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.mobility,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'El-sparkesykkel',\n };\n case 'airportLinkBus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Flybuss',\n };\n case 'airportLinkRail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Flytog',\n };\n case 'none':\n return {\n Icon: React.Fragment,\n backgroundColor: colors.brand.blue,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.brand.white,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: '',\n };\n case 'scooter':\n throw Error(\n `transport type 'scooter' is deprecated: Please use 'mobility' instead.`,\n );\n case 'bike':\n throw Error(\n `transport type 'bike' is deprecated: Please use 'bicycle' instead.`,\n );\n case 'car':\n throw Error(\n `transport type 'car' is deprecated: Please use 'taxi' instead.`,\n );\n case 'foot':\n throw Error(\n `transport type 'foot' is deprecated: Please use 'walk' instead.`,\n );\n default:\n throw Error('Please select a transport for the Travel component.');\n }\n};\n","import React, { useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoIcon,\n ValidationErrorIcon,\n ValidationExclamationIcon,\n} from '@entur/icons';\nimport { useContrast } from '@entur/layout';\n\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nimport './TravelTag.scss';\n\nexport type TravelTagProps = {\n /** Callback som kalles for når man skal lukke TravelTag-en\n * @default undefined\n */\n onClose?: () => void;\n /** Innholdet inne i TravelTag-en */\n children?: React.ReactNode;\n /**Ekstra klassenavn */\n className?: string;\n /** Legger til et Valideringsikon i TravelTagen for å signalisere avvik, informasjon e.l.\n * @default \"none\"\n */\n alert?: 'none' | 'error' | 'warning' | 'info';\n /** Legger til farge og ikon tilpasset valgt transportmiddel */\n transport?: Transport;\n /** Element ved siden av eller under TravelTag. */\n label?: React.ReactNode;\n /** Posisjonen til label-en i forhold til TravelTag-en\n * @default \"right\"\n */\n labelPlacement?: 'bottom' | 'right';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelTag: React.FC<TravelTagProps> = ({\n children,\n className,\n alert = 'none',\n transport = 'none',\n label,\n labelPlacement = 'right',\n onClose = undefined,\n ...rest\n}) => {\n const isContrast = useContrast();\n const isClosable = onClose ? true : false;\n const transportIsSet = transport !== 'none';\n const alertIsSet = alert !== 'none';\n const tagRef = useRef<HTMLDivElement>(null);\n const numberOfChildren = React.Children.count(children);\n const {\n Icon,\n contrastBackgroundColor,\n contrastTextColor,\n backgroundColor,\n textColor,\n ariaLabel,\n } = getTransportStyle(transport);\n\n useEffect(() => {\n if (transportIsSet) {\n tagRef.current?.style.setProperty(\n '--background-color',\n isContrast ? contrastBackgroundColor : backgroundColor,\n );\n tagRef.current?.style.setProperty(\n '--text-color',\n isContrast ? contrastTextColor : textColor,\n );\n }\n }, [tagRef.current, backgroundColor, textColor]);\n\n const TravelTagWithoutLabel: JSX.Element = (\n <div\n className={classNames('eds-travel-tag', {\n 'eds-travel-tag--closable': isClosable,\n 'eds-travel-tag--alert': alertIsSet,\n 'eds-travel-tag--alert--error': alert === 'error',\n 'eds-travel-tag--transport': transportIsSet,\n 'eds-travel-tag--icon-and-text':\n numberOfChildren > 1 || (transportIsSet && numberOfChildren > 0),\n className,\n })}\n ref={tagRef}\n {...rest}\n aria-label={\n rest['aria-label'] ?? ariaLabel + (alertIsSet ? ` ${alert}` : '')\n }\n role=\"img\"\n >\n <Icon aria-hidden />\n {children}\n {isClosable && (\n <button onClick={onClose} className=\"eds-travel-tag__close-button\">\n <CloseSmallIcon inline />\n </button>\n )}\n {alertIsSet && (\n <span className=\"eds-travel-tag__alert\">\n {alert === 'info' && (\n <ValidationInfoIcon\n aria-hidden\n className=\"eds-travel-tag__alert-info-icon\"\n />\n )}\n {alert === 'error' && (\n <ValidationErrorIcon\n aria-hidden\n className=\"eds-travel-tag__alert-error-icon\"\n />\n )}\n {alert === 'warning' && (\n <ValidationExclamationIcon\n aria-hidden\n className=\"eds-travel-tag__alert-exclamation-icon\"\n />\n )}\n </span>\n )}\n </div>\n );\n\n const Label: JSX.Element = (\n <div\n className={classNames('eds-travel-tag__label', {\n [`eds-travel-tag__label--${labelPlacement}`]: label,\n [`eds-travel-tag__label--${labelPlacement}--with-alert`]:\n label && alertIsSet,\n })}\n >\n {label}\n </div>\n );\n\n if (label) {\n return (\n <div\n className={classNames('eds-travel-tag__wrapper', {\n [`eds-travel-tag__wrapper--label-position-${labelPlacement}`]: label,\n })}\n >\n {TravelTagWithoutLabel}\n {Label}\n </div>\n );\n }\n\n return TravelTagWithoutLabel;\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport './LegLine.scss';\n\nexport type LegLineProps = {\n /** Farge på LegLine'n */\n color: string;\n /** Retningen til LegLine */\n direction: 'horizontal' | 'vertical';\n /** Hvilket linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegLine: React.FC<LegLineProps> = ({\n color,\n direction = 'horizontal',\n pattern,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames('eds-leg-line', className, {\n [`eds-leg-line--${pattern}`]: pattern,\n [`eds-leg-line--${direction}`]: direction,\n })}\n style={{ backgroundColor: color }}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport { LegLine } from './LegLine';\nimport './LegBone.scss';\n\nexport type LegBoneProps = {\n /** Retning på komponenten */\n direction: 'horizontal' | 'vertical';\n /** Hvilke linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Farge på linja */\n color: string;\n /** Farge på startpunktet\n * @default Verdien til color\n */\n startColor?: string;\n /** Farge på endepunktet\n * @default Verdien til color\n */\n endColor?: string;\n /** Vis startpunkt\n * @default true\n */\n showStart?: boolean;\n /** Vis linke\n * @default true\n */\n showLine?: boolean;\n /** Vis endepunkt\n * @default true\n */\n showStop?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegBone: React.FC<LegBoneProps> = ({\n direction,\n pattern,\n color,\n startColor,\n endColor,\n showStart = true,\n showStop = true,\n showLine = true,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames(className, 'eds-leg-bone', [\n { 'eds-leg-bone--vertical': direction === 'vertical' },\n { 'eds-leg-bone--horizontal': direction === 'horizontal' },\n ])}\n {...rest}\n >\n {showStart && (\n <div\n className={`eds-leg-bone__start`}\n style={{ backgroundColor: startColor || color }}\n />\n )}\n\n {showLine && (\n <LegLine\n className={`eds-leg-bone__line`}\n direction={direction}\n color={color}\n pattern={pattern}\n />\n )}\n\n {showStop && (\n <div\n className={`eds-leg-bone__stop`}\n style={{ backgroundColor: endColor || color }}\n />\n )}\n </div>\n );\n};\n","import React from 'react';\nimport { useContrast } from '@entur/layout';\nimport { LegBone } from './LegBone';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelLegProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Hviklen type reise som skal vises riktig farge og linjetype */\n transport: Transport;\n /** Retningen på komponenten */\n direction: 'horizontal' | 'vertical';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelLeg: React.FC<TravelLegProps> = ({\n className,\n transport,\n direction,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, pattern } =\n getTransportStyle(transport);\n const isContrast = useContrast();\n\n return (\n <LegBone\n direction={direction}\n pattern={pattern}\n color={isContrast ? contrastBackgroundColor : backgroundColor}\n className={className}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport { Switch } from '@entur/form';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelSwitchProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Om switch-en er checked eller ikke */\n checked?: boolean;\n /** Label for TravelSwitch-en. */\n children?: React.ReactNode;\n /** Posisjonen til label for TravelSwitch-en.\n * @default \"right\"\n */\n labelPlacement?: 'right' | 'bottom';\n /** Hvilken type reise som skal vises ikon og farge for */\n transport: Transport; // When adding a new submode, check https://enturas.atlassian.net/wiki/spaces/PUBLIC/pages/825393529/Norwegian+submodes+and+their+definitions for names\n /** Callback for når verdien endres */\n onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Størrelsen på Switch-en\n * @default \"medium\"\n */\n size?: 'medium' | 'large';\n} & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'>;\n\nexport const TravelSwitch: React.FC<TravelSwitchProps> = ({\n className,\n children,\n labelPlacement = 'right',\n transport,\n size,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, Icon } =\n getTransportStyle(transport);\n return (\n <Switch\n className={className}\n labelPlacement={labelPlacement}\n color={backgroundColor}\n contrastColor={contrastBackgroundColor}\n icon={<Icon />}\n size={size}\n {...rest}\n >\n {children}\n </Switch>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('travel');\n\nexport * from './TravelHeader';\nexport * from './TravelTag';\nexport * from './LegLine';\nexport * from './LegBone';\nexport * from './TravelLeg';\nexport * from './TravelSwitch';\n"],"names":["TravelHeader","as","Element","from","to","size","className","noWrap","rest","_excluded","React","createElement","classNames","getTransportStyle","mode","Icon","MetroIcon","backgroundColor","colors","transport","metro","textColor","brand","white","contrastBackgroundColor","contrast","contrastTextColor","pattern","ariaLabel","BusIcon","bus","PlaneIcon","plane","HelicopterIcon","helicopter","TramIcon","tram","FunicularIcon","funicular","CablewayIcon","cableway","TaxiIcon","taxi","BicycleIcon","bicycle","WalkIcon","walk","TrainIcon","train","FerryIcon","ferry","CarferryIcon","carferry","MobilityIcon","mobility","Fragment","blue","Error","TravelTag","children","alert","label","labelPlacement","onClose","undefined","isContrast","useContrast","isClosable","transportIsSet","alertIsSet","tagRef","useRef","numberOfChildren","Children","count","useEffect","current","style","setProperty","TravelTagWithoutLabel","ref","role","onClick","CloseSmallIcon","inline","ValidationInfoIcon","ValidationErrorIcon","ValidationExclamationIcon","Label","LegLine","color","direction","LegBone","startColor","endColor","showStart","showStop","showLine","TravelLeg","TravelSwitch","Switch","contrastColor","icon","warnAboutMissingStyles"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"travel.cjs.development.js","sources":["../src/TravelHeader.tsx","../src/utils.ts","../src/TravelTag.tsx","../src/LegLine.tsx","../src/LegBone.tsx","../src/TravelLeg.tsx","../src/TravelSwitch.tsx","../src/index.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport './TravelHeader.scss';\n\nexport type TravelHeaderProps = {\n /** HTML-elementet eller React-komponenten som lager elementet\n * @default 'div'\n */\n as?: string | React.ElementType;\n /** Destinasjonen man reiser fra */\n from: React.ReactNode;\n /** Destinasjonen man reiser til */\n to: React.ReactNode;\n /**Størrelsen på komponenten\n * @default 'large'\n */\n size?: 'large' | 'medium';\n /** Plassere til og fra på samme linje */\n noWrap?: boolean;\n /**Ekstra klassenavn */\n className?: string;\n [key: string]: any;\n};\n\nexport const TravelHeader: React.FC<TravelHeaderProps> = ({\n as: Element = 'div',\n from,\n to,\n size = 'large',\n className,\n noWrap,\n ...rest\n}) => {\n return (\n <Element\n className={classNames('eds-travel-header', className, {\n 'eds-travel-header--large': size === 'large',\n 'eds-travel-header--medium': size === 'medium',\n 'eds-travel-header--no-wrap': noWrap,\n })}\n aria-label={`Fra ${from}, til ${to}`}\n {...rest}\n >\n <span className=\"eds-travel-header__from\">{from}</span>\n <span className=\"eds-travel-header__to\">{to}</span>\n </Element>\n );\n};\n","import React from 'react';\nimport { colors } from '@entur/tokens';\nimport {\n BusIcon,\n FerryIcon,\n CarferryIcon,\n TramIcon,\n PlaneIcon,\n TrainIcon,\n BicycleIcon,\n MobilityIcon,\n MetroIcon,\n HelicopterIcon,\n FunicularIcon,\n CablewayIcon,\n TaxiIcon,\n WalkIcon,\n} from '@entur/icons';\n\nimport type { IconProps } from '@entur/icons';\n\nexport type Transport =\n | 'metro'\n | 'bus'\n | 'plane'\n | 'helicopter'\n | 'tram'\n | 'funicular'\n | 'cableway'\n | 'taxi'\n | 'bicycle'\n | 'walk'\n | 'train'\n | 'ferry'\n | 'carferry'\n | 'mobility'\n | 'airportLinkBus'\n | 'airportLinkRail'\n | 'rail'\n | 'water'\n | 'air'\n | 'none';\n\ntype transportStyleResult = {\n Icon: React.FC<IconProps>;\n backgroundColor: string;\n contrastBackgroundColor: string;\n pattern: 'line' | 'wave' | 'dashed' | 'dotted';\n ariaLabel: string;\n};\n\nexport const getTransportStyle = (mode: string): transportStyleResult => {\n switch (mode) {\n case 'metro':\n return {\n Icon: MetroIcon,\n backgroundColor: colors.transport.default.metro,\n contrastBackgroundColor: colors.transport.contrast.metro,\n pattern: 'line',\n ariaLabel: 'T-bane',\n };\n case 'bus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.bus,\n contrastBackgroundColor: colors.transport.contrast.bus,\n pattern: 'dashed',\n ariaLabel: 'Buss',\n };\n case 'plane':\n case 'air':\n return {\n Icon: PlaneIcon,\n backgroundColor: colors.transport.default.plane,\n contrastBackgroundColor: colors.transport.contrast.plane,\n pattern: 'line',\n ariaLabel: 'Fly',\n };\n case 'helicopter':\n return {\n Icon: HelicopterIcon,\n backgroundColor: colors.transport.default.helicopter,\n contrastBackgroundColor: colors.transport.contrast.helicopter,\n pattern: 'line',\n ariaLabel: 'Helikopter',\n };\n case 'tram':\n return {\n Icon: TramIcon,\n backgroundColor: colors.transport.default.tram,\n contrastBackgroundColor: colors.transport.contrast.tram,\n pattern: 'line',\n ariaLabel: 'Trikk',\n };\n case 'funicular':\n return {\n Icon: FunicularIcon,\n backgroundColor: colors.transport.default.funicular,\n contrastBackgroundColor: colors.transport.contrast.funicular,\n pattern: 'line',\n ariaLabel: 'Taubane',\n };\n case 'cableway':\n return {\n Icon: CablewayIcon,\n backgroundColor: colors.transport.default.cableway,\n contrastBackgroundColor: colors.transport.contrast.cableway,\n pattern: 'line',\n ariaLabel: 'Gondol',\n };\n case 'taxi':\n return {\n Icon: TaxiIcon,\n backgroundColor: colors.transport.default.taxi,\n contrastBackgroundColor: colors.transport.contrast.taxi,\n pattern: 'dashed',\n ariaLabel: 'Taxi',\n };\n case 'bicycle':\n return {\n Icon: BicycleIcon,\n backgroundColor: colors.transport.default.bicycle,\n contrastBackgroundColor: colors.transport.contrast.bicycle,\n pattern: 'line',\n ariaLabel: 'Sykkel',\n };\n case 'walk':\n return {\n Icon: WalkIcon,\n backgroundColor: colors.transport.default.walk,\n contrastBackgroundColor: colors.transport.contrast.walk,\n pattern: 'dotted',\n ariaLabel: 'Gange',\n };\n case 'train':\n case 'rail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.train,\n contrastBackgroundColor: colors.transport.contrast.train,\n pattern: 'line',\n ariaLabel: 'Tog',\n };\n case 'ferry':\n case 'water':\n return {\n Icon: FerryIcon,\n backgroundColor: colors.transport.default.ferry,\n contrastBackgroundColor: colors.transport.contrast.ferry,\n pattern: 'wave',\n ariaLabel: 'Ferge',\n };\n case 'carferry':\n return {\n Icon: CarferryIcon,\n backgroundColor: colors.transport.default.carferry,\n contrastBackgroundColor: colors.transport.contrast.carferry,\n pattern: 'wave',\n ariaLabel: 'Bilferge',\n };\n case 'mobility':\n return {\n Icon: MobilityIcon,\n backgroundColor: colors.transport.default.mobility,\n contrastBackgroundColor: colors.transport.contrast.mobility,\n pattern: 'line',\n ariaLabel: 'El-sparkesykkel',\n };\n case 'airportLinkBus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.plane,\n contrastBackgroundColor: colors.transport.contrast.plane,\n pattern: 'dashed',\n ariaLabel: 'Flybuss',\n };\n case 'airportLinkRail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.plane,\n contrastBackgroundColor: colors.transport.contrast.plane,\n pattern: 'line',\n ariaLabel: 'Flytog',\n };\n case 'none':\n return {\n Icon: React.Fragment,\n backgroundColor: colors.brand.blue,\n contrastBackgroundColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: '',\n };\n case 'scooter':\n throw Error(\n `transport type 'scooter' is deprecated: Please use 'mobility' instead.`,\n );\n case 'bike':\n throw Error(\n `transport type 'bike' is deprecated: Please use 'bicycle' instead.`,\n );\n case 'car':\n throw Error(\n `transport type 'car' is deprecated: Please use 'taxi' instead.`,\n );\n case 'foot':\n throw Error(\n `transport type 'foot' is deprecated: Please use 'walk' instead.`,\n );\n default:\n throw Error('Please select a transport for the Travel component.');\n }\n};\n","import React, { useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoIcon,\n ValidationErrorIcon,\n ValidationExclamationIcon,\n} from '@entur/icons';\nimport { useContrast } from '@entur/layout';\n\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nimport './TravelTag.scss';\n\nexport type TravelTagProps = {\n /** Callback som kalles for når man skal lukke TravelTag-en\n * @default undefined\n */\n onClose?: () => void;\n /** Innholdet inne i TravelTag-en */\n children?: React.ReactNode;\n /**Ekstra klassenavn */\n className?: string;\n /** Legger til et Valideringsikon i TravelTagen for å signalisere avvik, informasjon e.l.\n * @default \"none\"\n */\n alert?: 'none' | 'error' | 'warning' | 'info';\n /** Legger til farge og ikon tilpasset valgt transportmiddel */\n transport?: Transport;\n /** Element ved siden av eller under TravelTag. */\n label?: React.ReactNode;\n /** Posisjonen til label-en i forhold til TravelTag-en\n * @default \"right\"\n */\n labelPlacement?: 'bottom' | 'right';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelTag: React.FC<TravelTagProps> = ({\n children,\n className,\n alert = 'none',\n transport = 'none',\n label,\n labelPlacement = 'right',\n onClose = undefined,\n ...rest\n}) => {\n const isContrast = useContrast();\n const isClosable = onClose ? true : false;\n const transportIsSet = transport !== 'none';\n const alertIsSet = alert !== 'none';\n const tagRef = useRef<HTMLDivElement>(null);\n const numberOfChildren = React.Children.count(children);\n const { Icon, contrastBackgroundColor, backgroundColor, ariaLabel } =\n getTransportStyle(transport);\n\n useEffect(() => {\n if (transportIsSet) {\n tagRef.current?.style.setProperty(\n '--background-color',\n isContrast ? contrastBackgroundColor : backgroundColor,\n );\n }\n }, [tagRef.current, backgroundColor]);\n\n const TravelTagWithoutLabel: JSX.Element = (\n <div\n className={classNames('eds-travel-tag', {\n 'eds-travel-tag--closable': isClosable,\n 'eds-travel-tag--alert': alertIsSet,\n 'eds-travel-tag--alert--error': alert === 'error',\n 'eds-travel-tag--transport': transportIsSet,\n 'eds-travel-tag--icon-and-text':\n numberOfChildren > 1 || (transportIsSet && numberOfChildren > 0),\n className,\n })}\n ref={tagRef}\n {...rest}\n aria-label={\n rest['aria-label'] ?? ariaLabel + (alertIsSet ? ` ${alert}` : '')\n }\n role=\"img\"\n >\n <Icon aria-hidden />\n {children}\n {isClosable && (\n <button\n onClick={onClose}\n type=\"button\"\n className=\"eds-travel-tag__close-button\"\n >\n <CloseSmallIcon inline />\n </button>\n )}\n {alertIsSet && (\n <span className=\"eds-travel-tag__alert\">\n {alert === 'info' && (\n <ValidationInfoIcon\n aria-hidden\n className=\"eds-travel-tag__alert-info-icon\"\n />\n )}\n {alert === 'error' && (\n <ValidationErrorIcon\n aria-hidden\n className=\"eds-travel-tag__alert-error-icon\"\n />\n )}\n {alert === 'warning' && (\n <ValidationExclamationIcon\n aria-hidden\n className=\"eds-travel-tag__alert-exclamation-icon\"\n />\n )}\n </span>\n )}\n </div>\n );\n\n const Label: JSX.Element = (\n <div\n className={classNames('eds-travel-tag__label', {\n [`eds-travel-tag__label--${labelPlacement}`]: label,\n [`eds-travel-tag__label--${labelPlacement}--with-alert`]:\n label && alertIsSet,\n })}\n >\n {label}\n </div>\n );\n\n if (label) {\n return (\n <div\n className={classNames('eds-travel-tag__wrapper', {\n [`eds-travel-tag__wrapper--label-position-${labelPlacement}`]: label,\n })}\n >\n {TravelTagWithoutLabel}\n {Label}\n </div>\n );\n }\n\n return TravelTagWithoutLabel;\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport './LegLine.scss';\n\nexport type LegLineProps = {\n /** Farge på LegLine'n */\n color: string;\n /** Retningen til LegLine */\n direction: 'horizontal' | 'vertical';\n /** Hvilket linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegLine: React.FC<LegLineProps> = ({\n color,\n direction = 'horizontal',\n pattern,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames('eds-leg-line', className, {\n [`eds-leg-line--${pattern}`]: pattern,\n [`eds-leg-line--${direction}`]: direction,\n })}\n style={{ backgroundColor: color }}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport { LegLine } from './LegLine';\nimport './LegBone.scss';\n\nexport type LegBoneProps = {\n /** Retning på komponenten */\n direction: 'horizontal' | 'vertical';\n /** Hvilke linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Farge på linja */\n color: string;\n /** Farge på startpunktet\n * @default Verdien til color\n */\n startColor?: string;\n /** Farge på endepunktet\n * @default Verdien til color\n */\n endColor?: string;\n /** Vis startpunkt\n * @default true\n */\n showStart?: boolean;\n /** Vis linke\n * @default true\n */\n showLine?: boolean;\n /** Vis endepunkt\n * @default true\n */\n showStop?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegBone: React.FC<LegBoneProps> = ({\n direction,\n pattern,\n color,\n startColor,\n endColor,\n showStart = true,\n showStop = true,\n showLine = true,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames(className, 'eds-leg-bone', [\n { 'eds-leg-bone--vertical': direction === 'vertical' },\n { 'eds-leg-bone--horizontal': direction === 'horizontal' },\n ])}\n {...rest}\n >\n {showStart && (\n <div\n className={`eds-leg-bone__start`}\n style={{ backgroundColor: startColor || color }}\n />\n )}\n\n {showLine && (\n <LegLine\n className={`eds-leg-bone__line`}\n direction={direction}\n color={color}\n pattern={pattern}\n />\n )}\n\n {showStop && (\n <div\n className={`eds-leg-bone__stop`}\n style={{ backgroundColor: endColor || color }}\n />\n )}\n </div>\n );\n};\n","import React from 'react';\nimport { useContrast } from '@entur/layout';\nimport { LegBone } from './LegBone';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelLegProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Hviklen type reise som skal vises riktig farge og linjetype */\n transport: Transport;\n /** Retningen på komponenten */\n direction: 'horizontal' | 'vertical';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelLeg: React.FC<TravelLegProps> = ({\n className,\n transport,\n direction,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, pattern } =\n getTransportStyle(transport);\n const isContrast = useContrast();\n\n return (\n <LegBone\n direction={direction}\n pattern={pattern}\n color={isContrast ? contrastBackgroundColor : backgroundColor}\n className={className}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport { Switch } from '@entur/form';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelSwitchProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Om switch-en er checked eller ikke */\n checked?: boolean;\n /** Label for TravelSwitch-en. */\n children?: React.ReactNode;\n /** Posisjonen til label for TravelSwitch-en.\n * @default \"right\"\n */\n labelPlacement?: 'right' | 'bottom';\n /** Hvilken type reise som skal vises ikon og farge for */\n transport: Transport; // When adding a new submode, check https://enturas.atlassian.net/wiki/spaces/PUBLIC/pages/825393529/Norwegian+submodes+and+their+definitions for names\n /** Callback for når verdien endres */\n onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Størrelsen på Switch-en\n * @default \"medium\"\n */\n size?: 'medium' | 'large';\n} & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'>;\n\nexport const TravelSwitch: React.FC<TravelSwitchProps> = ({\n className,\n children,\n labelPlacement = 'right',\n transport,\n size,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, Icon } =\n getTransportStyle(transport);\n return (\n <Switch\n className={className}\n labelPlacement={labelPlacement}\n color={backgroundColor}\n contrastColor={contrastBackgroundColor}\n icon={<Icon />}\n size={size}\n {...rest}\n >\n {children}\n </Switch>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('travel');\n\nexport * from './TravelHeader';\nexport * from './TravelTag';\nexport * from './LegLine';\nexport * from './LegBone';\nexport * from './TravelLeg';\nexport * from './TravelSwitch';\n"],"names":["TravelHeader","as","Element","from","to","size","className","noWrap","rest","_excluded","React","createElement","classNames","getTransportStyle","mode","Icon","MetroIcon","backgroundColor","colors","transport","metro","contrastBackgroundColor","contrast","pattern","ariaLabel","BusIcon","bus","PlaneIcon","plane","HelicopterIcon","helicopter","TramIcon","tram","FunicularIcon","funicular","CablewayIcon","cableway","TaxiIcon","taxi","BicycleIcon","bicycle","WalkIcon","walk","TrainIcon","train","FerryIcon","ferry","CarferryIcon","carferry","MobilityIcon","mobility","Fragment","brand","blue","white","Error","TravelTag","children","alert","label","labelPlacement","onClose","undefined","isContrast","useContrast","isClosable","transportIsSet","alertIsSet","tagRef","useRef","numberOfChildren","Children","count","useEffect","current","style","setProperty","TravelTagWithoutLabel","ref","role","onClick","type","CloseSmallIcon","inline","ValidationInfoIcon","ValidationErrorIcon","ValidationExclamationIcon","Label","LegLine","color","direction","LegBone","startColor","endColor","showStart","showStop","showLine","TravelLeg","TravelSwitch","Switch","contrastColor","icon","warnAboutMissingStyles"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwBaA,IAAAA,YAAY,GAAgC,SAA5CA,YAAY,CAQpB,IAAA,EAAA;AAAA,EAAA,IAAA,OAAA,GAAA,IAAA,CAPHC,EAAE;AAAEC,IAAAA,OAAO,wBAAG,KAAK,GAAA,OAAA;AACnBC,IAAAA,IAAI,QAAJA,IAAI;AACJC,IAAAA,EAAE,QAAFA,EAAE;AAAA,IAAA,SAAA,GAAA,IAAA,CACFC,IAAI;AAAJA,IAAAA,IAAI,0BAAG,OAAO,GAAA,SAAA;AACdC,IAAAA,SAAS,QAATA,SAAS;AACTC,IAAAA,MAAM,QAANA,MAAM;IACHC,IAAI,GAAA,6BAAA,CAAA,IAAA,EAAAC,WAAA,CAAA,CAAA;AAEP,EAAA,OACEC,KAAC,CAAAC,aAAA,CAAAT,OAAO,EAAA,QAAA,CAAA;AACNI,IAAAA,SAAS,EAAEM,UAAU,CAAC,mBAAmB,EAAEN,SAAS,EAAE;MACpD,0BAA0B,EAAED,IAAI,KAAK,OAAO;MAC5C,2BAA2B,EAAEA,IAAI,KAAK,QAAQ;AAC9C,MAAA,4BAA4B,EAAEE,MAAAA;AAC/B,KAAA,CAAC;2BACiBJ,IAAI,GAASC,QAAAA,GAAAA,EAAAA;AAAI,GAAA,EAChCI,IAAI,CAERE,EAAAA,KAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAML,IAAAA,SAAS,EAAC,yBAAA;GAAyB,EAAEH,IAAI,CAAQ,EACvDO,KAAM,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAAL,IAAAA,SAAS,EAAC,uBAAA;GAAuB,EAAEF,EAAE,CAAQ,CAC3C,CAAA;AAEd;;ACIO,IAAMS,iBAAiB,GAAG,SAApBA,iBAAiB,CAAIC,IAAY,EAA0B;AACtE,EAAA,QAAQA,IAAI;AACV,IAAA,KAAK,OAAO;MACV,OAAO;AACLC,QAAAA,IAAI,EAAEC,eAAS;AACfC,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACC,KAAK;AAC/CC,QAAAA,uBAAuB,EAAEH,aAAM,CAACC,SAAS,CAACG,QAAQ,CAACF,KAAK;AACxDG,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,QAAA;OACZ,CAAA;AACH,IAAA,KAAK,KAAK;MACR,OAAO;AACLT,QAAAA,IAAI,EAAEU,aAAO;AACbR,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACO,GAAG;AAC7CL,QAAAA,uBAAuB,EAAEH,aAAM,CAACC,SAAS,CAACG,QAAQ,CAACI,GAAG;AACtDH,QAAAA,OAAO,EAAE,QAAQ;AACjBC,QAAAA,SAAS,EAAE,MAAA;OACZ,CAAA;AACH,IAAA,KAAK,OAAO,CAAA;AACZ,IAAA,KAAK,KAAK;MACR,OAAO;AACLT,QAAAA,IAAI,EAAEY,eAAS;AACfV,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACS,KAAK;AAC/CP,QAAAA,uBAAuB,EAAEH,aAAM,CAACC,SAAS,CAACG,QAAQ,CAACM,KAAK;AACxDL,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,KAAA;OACZ,CAAA;AACH,IAAA,KAAK,YAAY;MACf,OAAO;AACLT,QAAAA,IAAI,EAAEc,oBAAc;AACpBZ,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACW,UAAU;AACpDT,QAAAA,uBAAuB,EAAEH,aAAM,CAACC,SAAS,CAACG,QAAQ,CAACQ,UAAU;AAC7DP,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,YAAA;OACZ,CAAA;AACH,IAAA,KAAK,MAAM;MACT,OAAO;AACLT,QAAAA,IAAI,EAAEgB,cAAQ;AACdd,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACa,IAAI;AAC9CX,QAAAA,uBAAuB,EAAEH,aAAM,CAACC,SAAS,CAACG,QAAQ,CAACU,IAAI;AACvDT,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,OAAA;OACZ,CAAA;AACH,IAAA,KAAK,WAAW;MACd,OAAO;AACLT,QAAAA,IAAI,EAAEkB,mBAAa;AACnBhB,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACe,SAAS;AACnDb,QAAAA,uBAAuB,EAAEH,aAAM,CAACC,SAAS,CAACG,QAAQ,CAACY,SAAS;AAC5DX,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,SAAA;OACZ,CAAA;AACH,IAAA,KAAK,UAAU;MACb,OAAO;AACLT,QAAAA,IAAI,EAAEoB,kBAAY;AAClBlB,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACiB,QAAQ;AAClDf,QAAAA,uBAAuB,EAAEH,aAAM,CAACC,SAAS,CAACG,QAAQ,CAACc,QAAQ;AAC3Db,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,QAAA;OACZ,CAAA;AACH,IAAA,KAAK,MAAM;MACT,OAAO;AACLT,QAAAA,IAAI,EAAEsB,cAAQ;AACdpB,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACmB,IAAI;AAC9CjB,QAAAA,uBAAuB,EAAEH,aAAM,CAACC,SAAS,CAACG,QAAQ,CAACgB,IAAI;AACvDf,QAAAA,OAAO,EAAE,QAAQ;AACjBC,QAAAA,SAAS,EAAE,MAAA;OACZ,CAAA;AACH,IAAA,KAAK,SAAS;MACZ,OAAO;AACLT,QAAAA,IAAI,EAAEwB,iBAAW;AACjBtB,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACqB,OAAO;AACjDnB,QAAAA,uBAAuB,EAAEH,aAAM,CAACC,SAAS,CAACG,QAAQ,CAACkB,OAAO;AAC1DjB,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,QAAA;OACZ,CAAA;AACH,IAAA,KAAK,MAAM;MACT,OAAO;AACLT,QAAAA,IAAI,EAAE0B,cAAQ;AACdxB,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACuB,IAAI;AAC9CrB,QAAAA,uBAAuB,EAAEH,aAAM,CAACC,SAAS,CAACG,QAAQ,CAACoB,IAAI;AACvDnB,QAAAA,OAAO,EAAE,QAAQ;AACjBC,QAAAA,SAAS,EAAE,OAAA;OACZ,CAAA;AACH,IAAA,KAAK,OAAO,CAAA;AACZ,IAAA,KAAK,MAAM;MACT,OAAO;AACLT,QAAAA,IAAI,EAAE4B,eAAS;AACf1B,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACyB,KAAK;AAC/CvB,QAAAA,uBAAuB,EAAEH,aAAM,CAACC,SAAS,CAACG,QAAQ,CAACsB,KAAK;AACxDrB,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,KAAA;OACZ,CAAA;AACH,IAAA,KAAK,OAAO,CAAA;AACZ,IAAA,KAAK,OAAO;MACV,OAAO;AACLT,QAAAA,IAAI,EAAE8B,eAAS;AACf5B,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAAC2B,KAAK;AAC/CzB,QAAAA,uBAAuB,EAAEH,aAAM,CAACC,SAAS,CAACG,QAAQ,CAACwB,KAAK;AACxDvB,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,OAAA;OACZ,CAAA;AACH,IAAA,KAAK,UAAU;MACb,OAAO;AACLT,QAAAA,IAAI,EAAEgC,kBAAY;AAClB9B,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAAC6B,QAAQ;AAClD3B,QAAAA,uBAAuB,EAAEH,aAAM,CAACC,SAAS,CAACG,QAAQ,CAAC0B,QAAQ;AAC3DzB,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,UAAA;OACZ,CAAA;AACH,IAAA,KAAK,UAAU;MACb,OAAO;AACLT,QAAAA,IAAI,EAAEkC,kBAAY;AAClBhC,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAAC+B,QAAQ;AAClD7B,QAAAA,uBAAuB,EAAEH,aAAM,CAACC,SAAS,CAACG,QAAQ,CAAC4B,QAAQ;AAC3D3B,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,iBAAA;OACZ,CAAA;AACH,IAAA,KAAK,gBAAgB;MACnB,OAAO;AACLT,QAAAA,IAAI,EAAEU,aAAO;AACbR,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACS,KAAK;AAC/CP,QAAAA,uBAAuB,EAAEH,aAAM,CAACC,SAAS,CAACG,QAAQ,CAACM,KAAK;AACxDL,QAAAA,OAAO,EAAE,QAAQ;AACjBC,QAAAA,SAAS,EAAE,SAAA;OACZ,CAAA;AACH,IAAA,KAAK,iBAAiB;MACpB,OAAO;AACLT,QAAAA,IAAI,EAAE4B,eAAS;AACf1B,QAAAA,eAAe,EAAEC,aAAM,CAACC,SAAS,CAAA,SAAA,CAAQ,CAACS,KAAK;AAC/CP,QAAAA,uBAAuB,EAAEH,aAAM,CAACC,SAAS,CAACG,QAAQ,CAACM,KAAK;AACxDL,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,QAAA;OACZ,CAAA;AACH,IAAA,KAAK,MAAM;MACT,OAAO;QACLT,IAAI,EAAEL,KAAK,CAACyC,QAAQ;AACpBlC,QAAAA,eAAe,EAAEC,aAAM,CAACkC,KAAK,CAACC,IAAI;AAClChC,QAAAA,uBAAuB,EAAEH,aAAM,CAACkC,KAAK,CAACE,KAAK;AAC3C/B,QAAAA,OAAO,EAAE,MAAM;AACfC,QAAAA,SAAS,EAAE,EAAA;OACZ,CAAA;AACH,IAAA,KAAK,SAAS;AACZ,MAAA,MAAM+B,KAAK,CAEV,wEAAA,CAAA,CAAA;AACH,IAAA,KAAK,MAAM;AACT,MAAA,MAAMA,KAAK,CAEV,oEAAA,CAAA,CAAA;AACH,IAAA,KAAK,KAAK;AACR,MAAA,MAAMA,KAAK,CAEV,gEAAA,CAAA,CAAA;AACH,IAAA,KAAK,MAAM;AACT,MAAA,MAAMA,KAAK,CAEV,iEAAA,CAAA,CAAA;AACH,IAAA;MACE,MAAMA,KAAK,CAAC,qDAAqD,CAAC,CAAA;AAAC,GAAA;AAEzE,CAAC;;;ACzKYC,IAAAA,SAAS,GAA6B,SAAtCA,SAAS,CASjB,IAAA,EAAA;AAAA,EAAA,IAAA,eAAA,EAAA,WAAA,CAAA;EAAA,IARHC,QAAQ,QAARA,QAAQ;AACRnD,IAAAA,SAAS,QAATA,SAAS;AAAA,IAAA,UAAA,GAAA,IAAA,CACToD,KAAK;AAALA,IAAAA,KAAK,2BAAG,MAAM,GAAA,UAAA;AAAA,IAAA,cAAA,GAAA,IAAA,CACdvC,SAAS;AAATA,IAAAA,SAAS,+BAAG,MAAM,GAAA,cAAA;AAClBwC,IAAAA,KAAK,QAALA,KAAK;AAAA,IAAA,mBAAA,GAAA,IAAA,CACLC,cAAc;AAAdA,IAAAA,cAAc,oCAAG,OAAO,GAAA,mBAAA;AAAA,IAAA,YAAA,GAAA,IAAA,CACxBC,OAAO;AAAPA,IAAAA,OAAO,6BAAGC,SAAS,GAAA,YAAA;IAChBtD,IAAI,GAAA,6BAAA,CAAA,IAAA,EAAAC,WAAA,CAAA,CAAA;EAEP,IAAMsD,UAAU,GAAGC,kBAAW,EAAE,CAAA;AAChC,EAAA,IAAMC,UAAU,GAAGJ,OAAO,GAAG,IAAI,GAAG,KAAK,CAAA;AACzC,EAAA,IAAMK,cAAc,GAAG/C,SAAS,KAAK,MAAM,CAAA;AAC3C,EAAA,IAAMgD,UAAU,GAAGT,KAAK,KAAK,MAAM,CAAA;AACnC,EAAA,IAAMU,MAAM,GAAGC,YAAM,CAAiB,IAAI,CAAC,CAAA;EAC3C,IAAMC,gBAAgB,GAAG5D,KAAK,CAAC6D,QAAQ,CAACC,KAAK,CAACf,QAAQ,CAAC,CAAA;EACvD,IACE5C,kBAAAA,GAAAA,iBAAiB,CAACM,SAAS,CAAC;AADtBJ,IAAAA,IAAI,sBAAJA,IAAI;AAAEM,IAAAA,uBAAuB,sBAAvBA,uBAAuB;AAAEJ,IAAAA,eAAe,sBAAfA,eAAe;AAAEO,IAAAA,SAAS,sBAATA,SAAS,CAAA;AAGjEiD,EAAAA,eAAS,CAAC,YAAK;AACb,IAAA,IAAIP,cAAc,EAAE;AAAA,MAAA,IAAA,eAAA,CAAA;AAClB,MAAA,CAAA,eAAA,GAAAE,MAAM,CAACM,OAAO,KAAd,IAAA,GAAA,KAAA,CAAA,GAAA,eAAA,CAAgBC,KAAK,CAACC,WAAW,CAC/B,oBAAoB,EACpBb,UAAU,GAAG1C,uBAAuB,GAAGJ,eAAe,CACvD,CAAA;AACF,KAAA;GACF,EAAE,CAACmD,MAAM,CAACM,OAAO,EAAEzD,eAAe,CAAC,CAAC,CAAA;AAErC,EAAA,IAAM4D,qBAAqB,GACzBnE,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA,QAAA,CAAA;AACEL,IAAAA,SAAS,EAAEM,UAAU,CAAC,gBAAgB,EAAE;AACtC,MAAA,0BAA0B,EAAEqD,UAAU;AACtC,MAAA,uBAAuB,EAAEE,UAAU;MACnC,8BAA8B,EAAET,KAAK,KAAK,OAAO;AACjD,MAAA,2BAA2B,EAAEQ,cAAc;MAC3C,+BAA+B,EAC7BI,gBAAgB,GAAG,CAAC,IAAKJ,cAAc,IAAII,gBAAgB,GAAG,CAAE;AAClEhE,MAAAA,SAAS,EAATA,SAAAA;AACD,KAAA,CAAC;AACFwE,IAAAA,GAAG,EAAEV,MAAAA;AAAM,GAAA,EACP5D,IAAI,EAAA;AAEN,IAAA,YAAA,EAAAA,CAAAA,eAAAA,GAAAA,IAAI,CAAC,YAAY,CAAC,KAAA,IAAA,GAAA,eAAA,GAAIgB,SAAS,IAAI2C,UAAU,GAAA,GAAA,GAAOT,KAAK,GAAK,EAAE,CAAC;AAEnEqB,IAAAA,IAAI,EAAC,KAAA;AAAK,GAAA,CAAA,EAEVrE,KAAA,CAAAC,aAAA,CAACI,IAAI,EAAe;AAAA,IAAA,aAAA,EAAA,IAAA;GAAA,CAAA,EACnB0C,QAAQ,EACRQ,UAAU,IACTvD,KACE,CAAAC,aAAA,CAAA,QAAA,EAAA;AAAAqE,IAAAA,OAAO,EAAEnB,OAAO;AAChBoB,IAAAA,IAAI,EAAC,QAAQ;AACb3E,IAAAA,SAAS,EAAC,8BAAA;AAA8B,GAAA,EAExCI,KAAA,CAAAC,aAAA,CAACuE,oBAAc,EAAA;AAACC,IAAAA,MAAM,EAAA,IAAA;GAAA,CAAG,CAE5B,EACAhB,UAAU,IACTzD,KAAM,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAAL,IAAAA,SAAS,EAAC,uBAAA;GAAuB,EACpCoD,KAAK,KAAK,MAAM,IACfhD,KAAA,CAAAC,aAAA,CAACyE,wBAAkB,EAAA;AAAA,IAAA,aAAA,EAAA,IAAA;AAEjB9E,IAAAA,SAAS,EAAC,iCAAA;GAAiC,CAE9C,EACAoD,KAAK,KAAK,OAAO,IAChBhD,KAAA,CAAAC,aAAA,CAAC0E,yBAAmB,EAAA;AAAA,IAAA,aAAA,EAAA,IAAA;AAElB/E,IAAAA,SAAS,EAAC,kCAAA;GAAkC,CAE/C,EACAoD,KAAK,KAAK,SAAS,IAClBhD,KAAA,CAAAC,aAAA,CAAC2E,+BAAyB,EAExB;AAAA,IAAA,aAAA,EAAA,IAAA;AAAAhF,IAAAA,SAAS,EAAC,wCAAA;IAEb,CAEJ,CAEJ,CAAA;AAED,EAAA,IAAMiF,KAAK,GACT7E,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEL,IAAAA,SAAS,EAAEM,UAAU,CAAC,uBAAuB,GAChBgD,WAAAA,GAAAA,EAAAA,EAAAA,WAAAA,CAAAA,yBAAAA,GAAAA,cAAc,CAAKD,GAAAA,KAAK,EACxBC,WAAAA,CAAAA,yBAAAA,GAAAA,cAAc,GACvCD,cAAAA,CAAAA,GAAAA,KAAK,IAAIQ,UAAU,EAAA,WAAA,EAAA;GAGtB,EAAAR,KAAK,CAET,CAAA;AAED,EAAA,IAAIA,KAAK,EAAE;AAAA,IAAA,IAAA,YAAA,CAAA;AACT,IAAA,OACEjD,KACE,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAAL,MAAAA,SAAS,EAAEM,UAAU,CAAC,yBAAyB,GACDgD,YAAAA,GAAAA,EAAAA,EAAAA,YAAAA,CAAAA,0CAAAA,GAAAA,cAAc,IAAKD,KAAK,EAAA,YAAA,EAAA;AACpE,KAAA,EAEDkB,qBAAqB,EACrBU,KAAK,CACF,CAAA;AAET,GAAA;AAED,EAAA,OAAOV,qBAAqB,CAAA;AAC9B;;;ACpIaW,IAAAA,OAAO,GAA2B,SAAlCA,OAAO,CAMf,IAAA,EAAA;AAAA,EAAA,IAAA,WAAA,CAAA;EAAA,IALHC,KAAK,QAALA,KAAK;AAAA,IAAA,cAAA,GAAA,IAAA,CACLC,SAAS;AAATA,IAAAA,SAAS,+BAAG,YAAY,GAAA,cAAA;AACxBnE,IAAAA,OAAO,QAAPA,OAAO;AACPjB,IAAAA,SAAS,QAATA,SAAS;IACNE,IAAI,GAAA,6BAAA,CAAA,IAAA,EAAAC,WAAA,CAAA,CAAA;AAEP,EAAA,OACEC;AACEJ,IAAAA,SAAS,EAAEM,UAAU,CAAC,cAAc,EAAEN,SAAS,GAAA,WAAA,GAAA,EAAA,EAAA,WAAA,CAAA,gBAAA,GAC3BiB,OAAO,CAAA,GAAKA,OAAO,EAAA,WAAA,CAAA,gBAAA,GACnBmE,SAAS,CAAA,GAAKA,SAAS,EACzC,WAAA,EAAA;AACFf,IAAAA,KAAK,EAAE;AAAE1D,MAAAA,eAAe,EAAEwE,KAAAA;AAAK,KAAA;AAAE,GAAA,EAC7BjF,IAAI,CACR,CAAA,CAAA;AAEN;;;ACIamF,IAAAA,OAAO,GAA2B,SAAlCA,OAAO,CAWf,IAAA,EAAA;EAAA,IAVHD,SAAS,QAATA,SAAS;AACTnE,IAAAA,OAAO,QAAPA,OAAO;AACPkE,IAAAA,KAAK,QAALA,KAAK;AACLG,IAAAA,UAAU,QAAVA,UAAU;AACVC,IAAAA,QAAQ,QAARA,QAAQ;AAAA,IAAA,cAAA,GAAA,IAAA,CACRC,SAAS;AAATA,IAAAA,SAAS,+BAAG,IAAI,GAAA,cAAA;AAAA,IAAA,aAAA,GAAA,IAAA,CAChBC,QAAQ;AAARA,IAAAA,QAAQ,8BAAG,IAAI,GAAA,aAAA;AAAA,IAAA,aAAA,GAAA,IAAA,CACfC,QAAQ;AAARA,IAAAA,QAAQ,8BAAG,IAAI,GAAA,aAAA;AACf1F,IAAAA,SAAS,QAATA,SAAS;IACNE,IAAI,GAAA,6BAAA,CAAA,IAAA,EAAAC,WAAA,CAAA,CAAA;AAEP,EAAA,OACEC;AACEJ,IAAAA,SAAS,EAAEM,UAAU,CAACN,SAAS,EAAE,cAAc,EAAE,CAC/C;MAAE,wBAAwB,EAAEoF,SAAS,KAAK,UAAA;AAAY,KAAA,EACtD;MAAE,0BAA0B,EAAEA,SAAS,KAAK,YAAA;AAAc,KAAA,CAC3D,CAAA;GACGlF,EAAAA,IAAI,GAEPsF,SAAS,IACRpF,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEL,IAAAA,SAAS,EAAuB,qBAAA;AAChCqE,IAAAA,KAAK,EAAE;MAAE1D,eAAe,EAAE2E,UAAU,IAAIH,KAAAA;AAAK,KAAA;IAEhD,EAEAO,QAAQ,IACPtF,KAAC,CAAAC,aAAA,CAAA6E,OAAO;AACNlF,IAAAA,SAAS,EAAsB,oBAAA;AAC/BoF,IAAAA,SAAS,EAAEA,SAAS;AACpBD,IAAAA,KAAK,EAAEA,KAAK;AACZlE,IAAAA,OAAO,EAAEA,OAAAA;GAAO,CAEnB,EAEAwE,QAAQ,IACPrF,KACE,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAAL,IAAAA,SAAS,EAAsB,oBAAA;AAC/BqE,IAAAA,KAAK,EAAE;MAAE1D,eAAe,EAAE4E,QAAQ,IAAIJ,KAAAA;AAAK,KAAA;IAE9C,CACG,CAAA;AAEV;;;AChEaQ,IAAAA,SAAS,GAA6B,SAAtCA,SAAS,CAKjB,IAAA,EAAA;EAAA,IAJH3F,SAAS,QAATA,SAAS;AACTa,IAAAA,SAAS,QAATA,SAAS;AACTuE,IAAAA,SAAS,QAATA,SAAS;IACNlF,IAAI,GAAA,6BAAA,CAAA,IAAA,EAAAC,WAAA,CAAA,CAAA;EAEP,IACEI,kBAAAA,GAAAA,iBAAiB,CAACM,SAAS,CAAC;AADtBF,IAAAA,eAAe,sBAAfA,eAAe;AAAEI,IAAAA,uBAAuB,sBAAvBA,uBAAuB;AAAEE,IAAAA,OAAO,sBAAPA,OAAO,CAAA;EAEzD,IAAMwC,UAAU,GAAGC,kBAAW,EAAE,CAAA;AAEhC,EAAA,OACEtD,KAAA,CAAAC,aAAA,CAACgF,OAAO,EAAA,QAAA,CAAA;AACND,IAAAA,SAAS,EAAEA,SAAS;AACpBnE,IAAAA,OAAO,EAAEA,OAAO;AAChBkE,IAAAA,KAAK,EAAE1B,UAAU,GAAG1C,uBAAuB,GAAGJ,eAAe;AAC7DX,IAAAA,SAAS,EAAEA,SAAAA;AAAS,GAAA,EAChBE,IAAI,CACR,CAAA,CAAA;AAEN;;;ACXa0F,IAAAA,YAAY,GAAgC,SAA5CA,YAAY,CAOpB,IAAA,EAAA;EAAA,IANH5F,SAAS,QAATA,SAAS;AACTmD,IAAAA,QAAQ,QAARA,QAAQ;AAAA,IAAA,mBAAA,GAAA,IAAA,CACRG,cAAc;AAAdA,IAAAA,cAAc,oCAAG,OAAO,GAAA,mBAAA;AACxBzC,IAAAA,SAAS,QAATA,SAAS;AACTd,IAAAA,IAAI,QAAJA,IAAI;IACDG,IAAI,GAAA,6BAAA,CAAA,IAAA,EAAA,SAAA,CAAA,CAAA;EAEP,IACEK,kBAAAA,GAAAA,iBAAiB,CAACM,SAAS,CAAC;AADtBF,IAAAA,eAAe,sBAAfA,eAAe;AAAEI,IAAAA,uBAAuB,sBAAvBA,uBAAuB;AAAEN,IAAAA,IAAI,sBAAJA,IAAI,CAAA;AAEtD,EAAA,OACEL,KAAA,CAAAC,aAAA,CAACwF,WAAM,EAAA,QAAA,CAAA;AACL7F,IAAAA,SAAS,EAAEA,SAAS;AACpBsD,IAAAA,cAAc,EAAEA,cAAc;AAC9B6B,IAAAA,KAAK,EAAExE,eAAe;AACtBmF,IAAAA,aAAa,EAAE/E,uBAAuB;IACtCgF,IAAI,EAAE3F,KAAC,CAAAC,aAAA,CAAAI,IAAI,OAAG;AACdV,IAAAA,IAAI,EAAEA,IAAAA;GACFG,EAAAA,IAAI,CAEPiD,EAAAA,QAAQ,CACF,CAAA;AAEb;;AC/CA6C,4BAAsB,CAAC,QAAQ,CAAC;;;;;;;;;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var r=require("@entur/utils"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var r=require("@entur/utils"),e=require("react"),a=require("classnames"),t=require("@entur/icons"),o=require("@entur/layout"),n=require("@entur/tokens"),l=require("@entur/form");function s(){return s=Object.assign?Object.assign.bind():function(r){for(var e=1;e<arguments.length;e++){var a=arguments[e];for(var t in a)Object.prototype.hasOwnProperty.call(a,t)&&(r[t]=a[t])}return r},s.apply(this,arguments)}function c(r,e){if(null==r)return{};var a,t,o={},n=Object.keys(r);for(t=0;t<n.length;t++)e.indexOf(a=n[t])>=0||(o[a]=r[a]);return o}var i=["as","from","to","size","className","noWrap"],d=function(r){switch(r){case"metro":return{Icon:t.MetroIcon,backgroundColor:n.colors.transport.default.metro,contrastBackgroundColor:n.colors.transport.contrast.metro,pattern:"line",ariaLabel:"T-bane"};case"bus":return{Icon:t.BusIcon,backgroundColor:n.colors.transport.default.bus,contrastBackgroundColor:n.colors.transport.contrast.bus,pattern:"dashed",ariaLabel:"Buss"};case"plane":case"air":return{Icon:t.PlaneIcon,backgroundColor:n.colors.transport.default.plane,contrastBackgroundColor:n.colors.transport.contrast.plane,pattern:"line",ariaLabel:"Fly"};case"helicopter":return{Icon:t.HelicopterIcon,backgroundColor:n.colors.transport.default.helicopter,contrastBackgroundColor:n.colors.transport.contrast.helicopter,pattern:"line",ariaLabel:"Helikopter"};case"tram":return{Icon:t.TramIcon,backgroundColor:n.colors.transport.default.tram,contrastBackgroundColor:n.colors.transport.contrast.tram,pattern:"line",ariaLabel:"Trikk"};case"funicular":return{Icon:t.FunicularIcon,backgroundColor:n.colors.transport.default.funicular,contrastBackgroundColor:n.colors.transport.contrast.funicular,pattern:"line",ariaLabel:"Taubane"};case"cableway":return{Icon:t.CablewayIcon,backgroundColor:n.colors.transport.default.cableway,contrastBackgroundColor:n.colors.transport.contrast.cableway,pattern:"line",ariaLabel:"Gondol"};case"taxi":return{Icon:t.TaxiIcon,backgroundColor:n.colors.transport.default.taxi,contrastBackgroundColor:n.colors.transport.contrast.taxi,pattern:"dashed",ariaLabel:"Taxi"};case"bicycle":return{Icon:t.BicycleIcon,backgroundColor:n.colors.transport.default.bicycle,contrastBackgroundColor:n.colors.transport.contrast.bicycle,pattern:"line",ariaLabel:"Sykkel"};case"walk":return{Icon:t.WalkIcon,backgroundColor:n.colors.transport.default.walk,contrastBackgroundColor:n.colors.transport.contrast.walk,pattern:"dotted",ariaLabel:"Gange"};case"train":case"rail":return{Icon:t.TrainIcon,backgroundColor:n.colors.transport.default.train,contrastBackgroundColor:n.colors.transport.contrast.train,pattern:"line",ariaLabel:"Tog"};case"ferry":case"water":return{Icon:t.FerryIcon,backgroundColor:n.colors.transport.default.ferry,contrastBackgroundColor:n.colors.transport.contrast.ferry,pattern:"wave",ariaLabel:"Ferge"};case"carferry":return{Icon:t.CarferryIcon,backgroundColor:n.colors.transport.default.carferry,contrastBackgroundColor:n.colors.transport.contrast.carferry,pattern:"wave",ariaLabel:"Bilferge"};case"mobility":return{Icon:t.MobilityIcon,backgroundColor:n.colors.transport.default.mobility,contrastBackgroundColor:n.colors.transport.contrast.mobility,pattern:"line",ariaLabel:"El-sparkesykkel"};case"airportLinkBus":return{Icon:t.BusIcon,backgroundColor:n.colors.transport.default.plane,contrastBackgroundColor:n.colors.transport.contrast.plane,pattern:"dashed",ariaLabel:"Flybuss"};case"airportLinkRail":return{Icon:t.TrainIcon,backgroundColor:n.colors.transport.default.plane,contrastBackgroundColor:n.colors.transport.contrast.plane,pattern:"line",ariaLabel:"Flytog"};case"none":return{Icon:e.Fragment,backgroundColor:n.colors.brand.blue,contrastBackgroundColor:n.colors.brand.white,pattern:"line",ariaLabel:""};case"scooter":throw Error("transport type 'scooter' is deprecated: Please use 'mobility' instead.");case"bike":throw Error("transport type 'bike' is deprecated: Please use 'bicycle' instead.");case"car":throw Error("transport type 'car' is deprecated: Please use 'taxi' instead.");case"foot":throw Error("transport type 'foot' is deprecated: Please use 'walk' instead.");default:throw Error("Please select a transport for the Travel component.")}},u=["children","className","alert","transport","label","labelPlacement","onClose"],p=["color","direction","pattern","className"],b=function(r){var t,o=r.color,n=r.direction,l=void 0===n?"horizontal":n,i=r.pattern,d=r.className,u=c(r,p);return e.createElement("div",s({className:a("eds-leg-line",d,(t={},t["eds-leg-line--"+i]=i,t["eds-leg-line--"+l]=l,t)),style:{backgroundColor:o}},u))},g=["direction","pattern","color","startColor","endColor","showStart","showStop","showLine","className"],m=function(r){var t=r.direction,o=r.pattern,n=r.color,l=r.startColor,i=r.endColor,d=r.showStart,u=void 0===d||d,p=r.showStop,m=void 0===p||p,v=r.showLine,k=void 0===v||v,f=r.className,C=c(r,g);return e.createElement("div",s({className:a(f,"eds-leg-bone",[{"eds-leg-bone--vertical":"vertical"===t},{"eds-leg-bone--horizontal":"horizontal"===t}])},C),u&&e.createElement("div",{className:"eds-leg-bone__start",style:{backgroundColor:l||n}}),k&&e.createElement(b,{className:"eds-leg-bone__line",direction:t,color:n,pattern:o}),m&&e.createElement("div",{className:"eds-leg-bone__stop",style:{backgroundColor:i||n}}))},v=["className","transport","direction"],k=["className","children","labelPlacement","transport","size"];r.warnAboutMissingStyles("travel"),exports.LegBone=m,exports.LegLine=b,exports.TravelHeader=function(r){var t=r.as,o=void 0===t?"div":t,n=r.from,l=r.to,d=r.size,u=void 0===d?"large":d,p=r.className,b=r.noWrap,g=c(r,i);return e.createElement(o,s({className:a("eds-travel-header",p,{"eds-travel-header--large":"large"===u,"eds-travel-header--medium":"medium"===u,"eds-travel-header--no-wrap":b}),"aria-label":"Fra "+n+", til "+l},g),e.createElement("span",{className:"eds-travel-header__from"},n),e.createElement("span",{className:"eds-travel-header__to"},l))},exports.TravelLeg=function(r){var a=r.className,t=r.transport,n=r.direction,l=c(r,v),i=d(t),u=i.backgroundColor,p=i.contrastBackgroundColor,b=i.pattern,g=o.useContrast();return e.createElement(m,s({direction:n,pattern:b,color:g?p:u,className:a},l))},exports.TravelSwitch=function(r){var a=r.className,t=r.children,o=r.labelPlacement,n=void 0===o?"right":o,i=r.transport,u=r.size,p=c(r,k),b=d(i);return e.createElement(l.Switch,s({className:a,labelPlacement:n,color:b.backgroundColor,contrastColor:b.contrastBackgroundColor,icon:e.createElement(b.Icon,null),size:u},p),t)},exports.TravelTag=function(r){var n,l,i=r.children,p=r.className,b=r.alert,g=void 0===b?"none":b,m=r.transport,v=void 0===m?"none":m,k=r.label,f=r.labelPlacement,C=void 0===f?"right":f,h=r.onClose,y=void 0===h?void 0:h,I=c(r,u),w=o.useContrast(),_=!!y,N="none"!==v,E="none"!==g,B=e.useRef(null),L=e.Children.count(i),x=d(v),T=x.Icon,P=x.contrastBackgroundColor,S=x.backgroundColor,z=x.ariaLabel;e.useEffect((function(){var r;N&&(null==(r=B.current)||r.style.setProperty("--background-color",w?P:S))}),[B.current,S]);var F,q=e.createElement("div",s({className:a("eds-travel-tag",{"eds-travel-tag--closable":_,"eds-travel-tag--alert":E,"eds-travel-tag--alert--error":"error"===g,"eds-travel-tag--transport":N,"eds-travel-tag--icon-and-text":L>1||N&&L>0,className:p}),ref:B},I,{"aria-label":null!=(n=I["aria-label"])?n:z+(E?" "+g:""),role:"img"}),e.createElement(T,{"aria-hidden":!0}),i,_&&e.createElement("button",{onClick:y,type:"button",className:"eds-travel-tag__close-button"},e.createElement(t.CloseSmallIcon,{inline:!0})),E&&e.createElement("span",{className:"eds-travel-tag__alert"},"info"===g&&e.createElement(t.ValidationInfoIcon,{"aria-hidden":!0,className:"eds-travel-tag__alert-info-icon"}),"error"===g&&e.createElement(t.ValidationErrorIcon,{"aria-hidden":!0,className:"eds-travel-tag__alert-error-icon"}),"warning"===g&&e.createElement(t.ValidationExclamationIcon,{"aria-hidden":!0,className:"eds-travel-tag__alert-exclamation-icon"}))),O=e.createElement("div",{className:a("eds-travel-tag__label",(l={},l["eds-travel-tag__label--"+C]=k,l["eds-travel-tag__label--"+C+"--with-alert"]=k&&E,l))},k);return k?e.createElement("div",{className:a("eds-travel-tag__wrapper",(F={},F["eds-travel-tag__wrapper--label-position-"+C]=k,F))},q,O):q};
|
|
2
2
|
//# sourceMappingURL=travel.cjs.production.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"travel.cjs.production.min.js","sources":["../src/utils.ts","../src/LegLine.tsx","../src/LegBone.tsx","../src/index.tsx","../src/TravelHeader.tsx","../src/TravelLeg.tsx","../src/TravelSwitch.tsx","../src/TravelTag.tsx"],"sourcesContent":["import React from 'react';\nimport { colors } from '@entur/tokens';\nimport {\n BusIcon,\n FerryIcon,\n CarferryIcon,\n TramIcon,\n PlaneIcon,\n TrainIcon,\n BicycleIcon,\n MobilityIcon,\n MetroIcon,\n HelicopterIcon,\n FunicularIcon,\n CablewayIcon,\n TaxiIcon,\n WalkIcon,\n} from '@entur/icons';\n\nimport type { IconProps } from '@entur/icons';\n\nexport type Transport =\n | 'metro'\n | 'bus'\n | 'plane'\n | 'helicopter'\n | 'tram'\n | 'funicular'\n | 'cableway'\n | 'taxi'\n | 'bicycle'\n | 'walk'\n | 'train'\n | 'ferry'\n | 'carferry'\n | 'mobility'\n | 'airportLinkBus'\n | 'airportLinkRail'\n | 'rail'\n | 'water'\n | 'air'\n | 'none';\n\ntype transportStyleResult = {\n Icon: React.FC<IconProps>;\n backgroundColor: string;\n textColor: string;\n contrastBackgroundColor: string;\n contrastTextColor: string;\n pattern: 'line' | 'wave' | 'dashed' | 'dotted';\n ariaLabel: string;\n};\n\nexport const getTransportStyle = (mode: string): transportStyleResult => {\n switch (mode) {\n case 'metro':\n return {\n Icon: MetroIcon,\n backgroundColor: colors.transport.default.metro,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.metro,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'T-bane',\n };\n case 'bus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.bus,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.bus,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Buss',\n };\n case 'plane':\n case 'air':\n return {\n Icon: PlaneIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Fly',\n };\n case 'helicopter':\n return {\n Icon: HelicopterIcon,\n backgroundColor: colors.transport.default.helicopter,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.helicopter,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Helikopter',\n };\n case 'tram':\n return {\n Icon: TramIcon,\n backgroundColor: colors.transport.default.tram,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.tram,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Trikk',\n };\n case 'funicular':\n return {\n Icon: FunicularIcon,\n backgroundColor: colors.transport.default.funicular,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.funicular,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Taubane',\n };\n case 'cableway':\n return {\n Icon: CablewayIcon,\n backgroundColor: colors.transport.default.cableway,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.cableway,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Gondol',\n };\n case 'taxi':\n return {\n Icon: TaxiIcon,\n backgroundColor: colors.transport.default.taxi,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.taxi,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Taxi',\n };\n case 'bicycle':\n return {\n Icon: BicycleIcon,\n backgroundColor: colors.transport.default.bicycle,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.bicycle,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Sykkel',\n };\n case 'walk':\n return {\n Icon: WalkIcon,\n backgroundColor: colors.transport.default.walk,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.walk,\n contrastTextColor: colors.brand.white,\n pattern: 'dotted',\n ariaLabel: 'Gange',\n };\n case 'train':\n case 'rail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.train,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.train,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Tog',\n };\n case 'ferry':\n case 'water':\n return {\n Icon: FerryIcon,\n backgroundColor: colors.transport.default.ferry,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.ferry,\n contrastTextColor: colors.brand.white,\n pattern: 'wave',\n ariaLabel: 'Ferge',\n };\n case 'carferry':\n return {\n Icon: CarferryIcon,\n backgroundColor: colors.transport.default.carferry,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.carferry,\n contrastTextColor: colors.brand.white,\n pattern: 'wave',\n ariaLabel: 'Bilferge',\n };\n case 'mobility':\n return {\n Icon: MobilityIcon,\n backgroundColor: colors.transport.default.mobility,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.mobility,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'El-sparkesykkel',\n };\n case 'airportLinkBus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Flybuss',\n };\n case 'airportLinkRail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Flytog',\n };\n case 'none':\n return {\n Icon: React.Fragment,\n backgroundColor: colors.brand.blue,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.brand.white,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: '',\n };\n case 'scooter':\n throw Error(\n `transport type 'scooter' is deprecated: Please use 'mobility' instead.`,\n );\n case 'bike':\n throw Error(\n `transport type 'bike' is deprecated: Please use 'bicycle' instead.`,\n );\n case 'car':\n throw Error(\n `transport type 'car' is deprecated: Please use 'taxi' instead.`,\n );\n case 'foot':\n throw Error(\n `transport type 'foot' is deprecated: Please use 'walk' instead.`,\n );\n default:\n throw Error('Please select a transport for the Travel component.');\n }\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport './LegLine.scss';\n\nexport type LegLineProps = {\n /** Farge på LegLine'n */\n color: string;\n /** Retningen til LegLine */\n direction: 'horizontal' | 'vertical';\n /** Hvilket linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegLine: React.FC<LegLineProps> = ({\n color,\n direction = 'horizontal',\n pattern,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames('eds-leg-line', className, {\n [`eds-leg-line--${pattern}`]: pattern,\n [`eds-leg-line--${direction}`]: direction,\n })}\n style={{ backgroundColor: color }}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport { LegLine } from './LegLine';\nimport './LegBone.scss';\n\nexport type LegBoneProps = {\n /** Retning på komponenten */\n direction: 'horizontal' | 'vertical';\n /** Hvilke linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Farge på linja */\n color: string;\n /** Farge på startpunktet\n * @default Verdien til color\n */\n startColor?: string;\n /** Farge på endepunktet\n * @default Verdien til color\n */\n endColor?: string;\n /** Vis startpunkt\n * @default true\n */\n showStart?: boolean;\n /** Vis linke\n * @default true\n */\n showLine?: boolean;\n /** Vis endepunkt\n * @default true\n */\n showStop?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegBone: React.FC<LegBoneProps> = ({\n direction,\n pattern,\n color,\n startColor,\n endColor,\n showStart = true,\n showStop = true,\n showLine = true,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames(className, 'eds-leg-bone', [\n { 'eds-leg-bone--vertical': direction === 'vertical' },\n { 'eds-leg-bone--horizontal': direction === 'horizontal' },\n ])}\n {...rest}\n >\n {showStart && (\n <div\n className={`eds-leg-bone__start`}\n style={{ backgroundColor: startColor || color }}\n />\n )}\n\n {showLine && (\n <LegLine\n className={`eds-leg-bone__line`}\n direction={direction}\n color={color}\n pattern={pattern}\n />\n )}\n\n {showStop && (\n <div\n className={`eds-leg-bone__stop`}\n style={{ backgroundColor: endColor || color }}\n />\n )}\n </div>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('travel');\n\nexport * from './TravelHeader';\nexport * from './TravelTag';\nexport * from './LegLine';\nexport * from './LegBone';\nexport * from './TravelLeg';\nexport * from './TravelSwitch';\n","import React from 'react';\nimport classNames from 'classnames';\nimport './TravelHeader.scss';\n\nexport type TravelHeaderProps = {\n /** HTML-elementet eller React-komponenten som lager elementet\n * @default 'div'\n */\n as?: string | React.ElementType;\n /** Destinasjonen man reiser fra */\n from: React.ReactNode;\n /** Destinasjonen man reiser til */\n to: React.ReactNode;\n /**Størrelsen på komponenten\n * @default 'large'\n */\n size?: 'large' | 'medium';\n /** Plassere til og fra på samme linje */\n noWrap?: boolean;\n /**Ekstra klassenavn */\n className?: string;\n [key: string]: any;\n};\n\nexport const TravelHeader: React.FC<TravelHeaderProps> = ({\n as: Element = 'div',\n from,\n to,\n size = 'large',\n className,\n noWrap,\n ...rest\n}) => {\n return (\n <Element\n className={classNames('eds-travel-header', className, {\n 'eds-travel-header--large': size === 'large',\n 'eds-travel-header--medium': size === 'medium',\n 'eds-travel-header--no-wrap': noWrap,\n })}\n aria-label={`Fra ${from}, til ${to}`}\n {...rest}\n >\n <span className=\"eds-travel-header__from\">{from}</span>\n <span className=\"eds-travel-header__to\">{to}</span>\n </Element>\n );\n};\n","import React from 'react';\nimport { useContrast } from '@entur/layout';\nimport { LegBone } from './LegBone';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelLegProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Hviklen type reise som skal vises riktig farge og linjetype */\n transport: Transport;\n /** Retningen på komponenten */\n direction: 'horizontal' | 'vertical';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelLeg: React.FC<TravelLegProps> = ({\n className,\n transport,\n direction,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, pattern } =\n getTransportStyle(transport);\n const isContrast = useContrast();\n\n return (\n <LegBone\n direction={direction}\n pattern={pattern}\n color={isContrast ? contrastBackgroundColor : backgroundColor}\n className={className}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport { Switch } from '@entur/form';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelSwitchProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Om switch-en er checked eller ikke */\n checked?: boolean;\n /** Label for TravelSwitch-en. */\n children?: React.ReactNode;\n /** Posisjonen til label for TravelSwitch-en.\n * @default \"right\"\n */\n labelPlacement?: 'right' | 'bottom';\n /** Hvilken type reise som skal vises ikon og farge for */\n transport: Transport; // When adding a new submode, check https://enturas.atlassian.net/wiki/spaces/PUBLIC/pages/825393529/Norwegian+submodes+and+their+definitions for names\n /** Callback for når verdien endres */\n onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Størrelsen på Switch-en\n * @default \"medium\"\n */\n size?: 'medium' | 'large';\n} & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'>;\n\nexport const TravelSwitch: React.FC<TravelSwitchProps> = ({\n className,\n children,\n labelPlacement = 'right',\n transport,\n size,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, Icon } =\n getTransportStyle(transport);\n return (\n <Switch\n className={className}\n labelPlacement={labelPlacement}\n color={backgroundColor}\n contrastColor={contrastBackgroundColor}\n icon={<Icon />}\n size={size}\n {...rest}\n >\n {children}\n </Switch>\n );\n};\n","import React, { useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoIcon,\n ValidationErrorIcon,\n ValidationExclamationIcon,\n} from '@entur/icons';\nimport { useContrast } from '@entur/layout';\n\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nimport './TravelTag.scss';\n\nexport type TravelTagProps = {\n /** Callback som kalles for når man skal lukke TravelTag-en\n * @default undefined\n */\n onClose?: () => void;\n /** Innholdet inne i TravelTag-en */\n children?: React.ReactNode;\n /**Ekstra klassenavn */\n className?: string;\n /** Legger til et Valideringsikon i TravelTagen for å signalisere avvik, informasjon e.l.\n * @default \"none\"\n */\n alert?: 'none' | 'error' | 'warning' | 'info';\n /** Legger til farge og ikon tilpasset valgt transportmiddel */\n transport?: Transport;\n /** Element ved siden av eller under TravelTag. */\n label?: React.ReactNode;\n /** Posisjonen til label-en i forhold til TravelTag-en\n * @default \"right\"\n */\n labelPlacement?: 'bottom' | 'right';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelTag: React.FC<TravelTagProps> = ({\n children,\n className,\n alert = 'none',\n transport = 'none',\n label,\n labelPlacement = 'right',\n onClose = undefined,\n ...rest\n}) => {\n const isContrast = useContrast();\n const isClosable = onClose ? true : false;\n const transportIsSet = transport !== 'none';\n const alertIsSet = alert !== 'none';\n const tagRef = useRef<HTMLDivElement>(null);\n const numberOfChildren = React.Children.count(children);\n const {\n Icon,\n contrastBackgroundColor,\n contrastTextColor,\n backgroundColor,\n textColor,\n ariaLabel,\n } = getTransportStyle(transport);\n\n useEffect(() => {\n if (transportIsSet) {\n tagRef.current?.style.setProperty(\n '--background-color',\n isContrast ? contrastBackgroundColor : backgroundColor,\n );\n tagRef.current?.style.setProperty(\n '--text-color',\n isContrast ? contrastTextColor : textColor,\n );\n }\n }, [tagRef.current, backgroundColor, textColor]);\n\n const TravelTagWithoutLabel: JSX.Element = (\n <div\n className={classNames('eds-travel-tag', {\n 'eds-travel-tag--closable': isClosable,\n 'eds-travel-tag--alert': alertIsSet,\n 'eds-travel-tag--alert--error': alert === 'error',\n 'eds-travel-tag--transport': transportIsSet,\n 'eds-travel-tag--icon-and-text':\n numberOfChildren > 1 || (transportIsSet && numberOfChildren > 0),\n className,\n })}\n ref={tagRef}\n {...rest}\n aria-label={\n rest['aria-label'] ?? ariaLabel + (alertIsSet ? ` ${alert}` : '')\n }\n role=\"img\"\n >\n <Icon aria-hidden />\n {children}\n {isClosable && (\n <button onClick={onClose} className=\"eds-travel-tag__close-button\">\n <CloseSmallIcon inline />\n </button>\n )}\n {alertIsSet && (\n <span className=\"eds-travel-tag__alert\">\n {alert === 'info' && (\n <ValidationInfoIcon\n aria-hidden\n className=\"eds-travel-tag__alert-info-icon\"\n />\n )}\n {alert === 'error' && (\n <ValidationErrorIcon\n aria-hidden\n className=\"eds-travel-tag__alert-error-icon\"\n />\n )}\n {alert === 'warning' && (\n <ValidationExclamationIcon\n aria-hidden\n className=\"eds-travel-tag__alert-exclamation-icon\"\n />\n )}\n </span>\n )}\n </div>\n );\n\n const Label: JSX.Element = (\n <div\n className={classNames('eds-travel-tag__label', {\n [`eds-travel-tag__label--${labelPlacement}`]: label,\n [`eds-travel-tag__label--${labelPlacement}--with-alert`]:\n label && alertIsSet,\n })}\n >\n {label}\n </div>\n );\n\n if (label) {\n return (\n <div\n className={classNames('eds-travel-tag__wrapper', {\n [`eds-travel-tag__wrapper--label-position-${labelPlacement}`]: label,\n })}\n >\n {TravelTagWithoutLabel}\n {Label}\n </div>\n );\n }\n\n return TravelTagWithoutLabel;\n};\n"],"names":["getTransportStyle","mode","Icon","MetroIcon","backgroundColor","colors","transport","metro","textColor","brand","white","contrastBackgroundColor","contrast","contrastTextColor","pattern","ariaLabel","BusIcon","bus","PlaneIcon","plane","HelicopterIcon","helicopter","TramIcon","tram","FunicularIcon","funicular","CablewayIcon","cableway","TaxiIcon","taxi","BicycleIcon","bicycle","WalkIcon","walk","TrainIcon","train","FerryIcon","ferry","CarferryIcon","carferry","MobilityIcon","mobility","React","Fragment","blue","Error","LegLine","_ref","_classNames","color","_ref$direction","direction","className","rest","_objectWithoutPropertiesLoose","_excluded","classNames","style","LegBone","startColor","endColor","_ref$showStart","showStart","_ref$showStop","showStop","_ref$showLine","showLine","createElement","warnAboutMissingStyles","_ref$as","as","Element","from","to","_ref$size","size","noWrap","_extends","isContrast","useContrast","children","_ref$labelPlacement","labelPlacement","Switch","contrastColor","icon","_rest$ariaLabel","_ref$alert","alert","_ref$transport","label","_ref$onClose","onClose","undefined","isClosable","transportIsSet","alertIsSet","tagRef","useRef","numberOfChildren","Children","count","useEffect","_tagRef$current","_tagRef$current2","current","setProperty","_classNames2","TravelTagWithoutLabel","ref","role","onClick","CloseSmallIcon","inline","ValidationInfoIcon","ValidationErrorIcon","ValidationExclamationIcon","Label"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"travel.cjs.production.min.js","sources":["../src/utils.ts","../src/LegLine.tsx","../src/LegBone.tsx","../src/index.tsx","../src/TravelHeader.tsx","../src/TravelLeg.tsx","../src/TravelSwitch.tsx","../src/TravelTag.tsx"],"sourcesContent":["import React from 'react';\nimport { colors } from '@entur/tokens';\nimport {\n BusIcon,\n FerryIcon,\n CarferryIcon,\n TramIcon,\n PlaneIcon,\n TrainIcon,\n BicycleIcon,\n MobilityIcon,\n MetroIcon,\n HelicopterIcon,\n FunicularIcon,\n CablewayIcon,\n TaxiIcon,\n WalkIcon,\n} from '@entur/icons';\n\nimport type { IconProps } from '@entur/icons';\n\nexport type Transport =\n | 'metro'\n | 'bus'\n | 'plane'\n | 'helicopter'\n | 'tram'\n | 'funicular'\n | 'cableway'\n | 'taxi'\n | 'bicycle'\n | 'walk'\n | 'train'\n | 'ferry'\n | 'carferry'\n | 'mobility'\n | 'airportLinkBus'\n | 'airportLinkRail'\n | 'rail'\n | 'water'\n | 'air'\n | 'none';\n\ntype transportStyleResult = {\n Icon: React.FC<IconProps>;\n backgroundColor: string;\n contrastBackgroundColor: string;\n pattern: 'line' | 'wave' | 'dashed' | 'dotted';\n ariaLabel: string;\n};\n\nexport const getTransportStyle = (mode: string): transportStyleResult => {\n switch (mode) {\n case 'metro':\n return {\n Icon: MetroIcon,\n backgroundColor: colors.transport.default.metro,\n contrastBackgroundColor: colors.transport.contrast.metro,\n pattern: 'line',\n ariaLabel: 'T-bane',\n };\n case 'bus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.bus,\n contrastBackgroundColor: colors.transport.contrast.bus,\n pattern: 'dashed',\n ariaLabel: 'Buss',\n };\n case 'plane':\n case 'air':\n return {\n Icon: PlaneIcon,\n backgroundColor: colors.transport.default.plane,\n contrastBackgroundColor: colors.transport.contrast.plane,\n pattern: 'line',\n ariaLabel: 'Fly',\n };\n case 'helicopter':\n return {\n Icon: HelicopterIcon,\n backgroundColor: colors.transport.default.helicopter,\n contrastBackgroundColor: colors.transport.contrast.helicopter,\n pattern: 'line',\n ariaLabel: 'Helikopter',\n };\n case 'tram':\n return {\n Icon: TramIcon,\n backgroundColor: colors.transport.default.tram,\n contrastBackgroundColor: colors.transport.contrast.tram,\n pattern: 'line',\n ariaLabel: 'Trikk',\n };\n case 'funicular':\n return {\n Icon: FunicularIcon,\n backgroundColor: colors.transport.default.funicular,\n contrastBackgroundColor: colors.transport.contrast.funicular,\n pattern: 'line',\n ariaLabel: 'Taubane',\n };\n case 'cableway':\n return {\n Icon: CablewayIcon,\n backgroundColor: colors.transport.default.cableway,\n contrastBackgroundColor: colors.transport.contrast.cableway,\n pattern: 'line',\n ariaLabel: 'Gondol',\n };\n case 'taxi':\n return {\n Icon: TaxiIcon,\n backgroundColor: colors.transport.default.taxi,\n contrastBackgroundColor: colors.transport.contrast.taxi,\n pattern: 'dashed',\n ariaLabel: 'Taxi',\n };\n case 'bicycle':\n return {\n Icon: BicycleIcon,\n backgroundColor: colors.transport.default.bicycle,\n contrastBackgroundColor: colors.transport.contrast.bicycle,\n pattern: 'line',\n ariaLabel: 'Sykkel',\n };\n case 'walk':\n return {\n Icon: WalkIcon,\n backgroundColor: colors.transport.default.walk,\n contrastBackgroundColor: colors.transport.contrast.walk,\n pattern: 'dotted',\n ariaLabel: 'Gange',\n };\n case 'train':\n case 'rail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.train,\n contrastBackgroundColor: colors.transport.contrast.train,\n pattern: 'line',\n ariaLabel: 'Tog',\n };\n case 'ferry':\n case 'water':\n return {\n Icon: FerryIcon,\n backgroundColor: colors.transport.default.ferry,\n contrastBackgroundColor: colors.transport.contrast.ferry,\n pattern: 'wave',\n ariaLabel: 'Ferge',\n };\n case 'carferry':\n return {\n Icon: CarferryIcon,\n backgroundColor: colors.transport.default.carferry,\n contrastBackgroundColor: colors.transport.contrast.carferry,\n pattern: 'wave',\n ariaLabel: 'Bilferge',\n };\n case 'mobility':\n return {\n Icon: MobilityIcon,\n backgroundColor: colors.transport.default.mobility,\n contrastBackgroundColor: colors.transport.contrast.mobility,\n pattern: 'line',\n ariaLabel: 'El-sparkesykkel',\n };\n case 'airportLinkBus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.plane,\n contrastBackgroundColor: colors.transport.contrast.plane,\n pattern: 'dashed',\n ariaLabel: 'Flybuss',\n };\n case 'airportLinkRail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.plane,\n contrastBackgroundColor: colors.transport.contrast.plane,\n pattern: 'line',\n ariaLabel: 'Flytog',\n };\n case 'none':\n return {\n Icon: React.Fragment,\n backgroundColor: colors.brand.blue,\n contrastBackgroundColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: '',\n };\n case 'scooter':\n throw Error(\n `transport type 'scooter' is deprecated: Please use 'mobility' instead.`,\n );\n case 'bike':\n throw Error(\n `transport type 'bike' is deprecated: Please use 'bicycle' instead.`,\n );\n case 'car':\n throw Error(\n `transport type 'car' is deprecated: Please use 'taxi' instead.`,\n );\n case 'foot':\n throw Error(\n `transport type 'foot' is deprecated: Please use 'walk' instead.`,\n );\n default:\n throw Error('Please select a transport for the Travel component.');\n }\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport './LegLine.scss';\n\nexport type LegLineProps = {\n /** Farge på LegLine'n */\n color: string;\n /** Retningen til LegLine */\n direction: 'horizontal' | 'vertical';\n /** Hvilket linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegLine: React.FC<LegLineProps> = ({\n color,\n direction = 'horizontal',\n pattern,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames('eds-leg-line', className, {\n [`eds-leg-line--${pattern}`]: pattern,\n [`eds-leg-line--${direction}`]: direction,\n })}\n style={{ backgroundColor: color }}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport { LegLine } from './LegLine';\nimport './LegBone.scss';\n\nexport type LegBoneProps = {\n /** Retning på komponenten */\n direction: 'horizontal' | 'vertical';\n /** Hvilke linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Farge på linja */\n color: string;\n /** Farge på startpunktet\n * @default Verdien til color\n */\n startColor?: string;\n /** Farge på endepunktet\n * @default Verdien til color\n */\n endColor?: string;\n /** Vis startpunkt\n * @default true\n */\n showStart?: boolean;\n /** Vis linke\n * @default true\n */\n showLine?: boolean;\n /** Vis endepunkt\n * @default true\n */\n showStop?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegBone: React.FC<LegBoneProps> = ({\n direction,\n pattern,\n color,\n startColor,\n endColor,\n showStart = true,\n showStop = true,\n showLine = true,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames(className, 'eds-leg-bone', [\n { 'eds-leg-bone--vertical': direction === 'vertical' },\n { 'eds-leg-bone--horizontal': direction === 'horizontal' },\n ])}\n {...rest}\n >\n {showStart && (\n <div\n className={`eds-leg-bone__start`}\n style={{ backgroundColor: startColor || color }}\n />\n )}\n\n {showLine && (\n <LegLine\n className={`eds-leg-bone__line`}\n direction={direction}\n color={color}\n pattern={pattern}\n />\n )}\n\n {showStop && (\n <div\n className={`eds-leg-bone__stop`}\n style={{ backgroundColor: endColor || color }}\n />\n )}\n </div>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('travel');\n\nexport * from './TravelHeader';\nexport * from './TravelTag';\nexport * from './LegLine';\nexport * from './LegBone';\nexport * from './TravelLeg';\nexport * from './TravelSwitch';\n","import React from 'react';\nimport classNames from 'classnames';\nimport './TravelHeader.scss';\n\nexport type TravelHeaderProps = {\n /** HTML-elementet eller React-komponenten som lager elementet\n * @default 'div'\n */\n as?: string | React.ElementType;\n /** Destinasjonen man reiser fra */\n from: React.ReactNode;\n /** Destinasjonen man reiser til */\n to: React.ReactNode;\n /**Størrelsen på komponenten\n * @default 'large'\n */\n size?: 'large' | 'medium';\n /** Plassere til og fra på samme linje */\n noWrap?: boolean;\n /**Ekstra klassenavn */\n className?: string;\n [key: string]: any;\n};\n\nexport const TravelHeader: React.FC<TravelHeaderProps> = ({\n as: Element = 'div',\n from,\n to,\n size = 'large',\n className,\n noWrap,\n ...rest\n}) => {\n return (\n <Element\n className={classNames('eds-travel-header', className, {\n 'eds-travel-header--large': size === 'large',\n 'eds-travel-header--medium': size === 'medium',\n 'eds-travel-header--no-wrap': noWrap,\n })}\n aria-label={`Fra ${from}, til ${to}`}\n {...rest}\n >\n <span className=\"eds-travel-header__from\">{from}</span>\n <span className=\"eds-travel-header__to\">{to}</span>\n </Element>\n );\n};\n","import React from 'react';\nimport { useContrast } from '@entur/layout';\nimport { LegBone } from './LegBone';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelLegProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Hviklen type reise som skal vises riktig farge og linjetype */\n transport: Transport;\n /** Retningen på komponenten */\n direction: 'horizontal' | 'vertical';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelLeg: React.FC<TravelLegProps> = ({\n className,\n transport,\n direction,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, pattern } =\n getTransportStyle(transport);\n const isContrast = useContrast();\n\n return (\n <LegBone\n direction={direction}\n pattern={pattern}\n color={isContrast ? contrastBackgroundColor : backgroundColor}\n className={className}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport { Switch } from '@entur/form';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelSwitchProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Om switch-en er checked eller ikke */\n checked?: boolean;\n /** Label for TravelSwitch-en. */\n children?: React.ReactNode;\n /** Posisjonen til label for TravelSwitch-en.\n * @default \"right\"\n */\n labelPlacement?: 'right' | 'bottom';\n /** Hvilken type reise som skal vises ikon og farge for */\n transport: Transport; // When adding a new submode, check https://enturas.atlassian.net/wiki/spaces/PUBLIC/pages/825393529/Norwegian+submodes+and+their+definitions for names\n /** Callback for når verdien endres */\n onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Størrelsen på Switch-en\n * @default \"medium\"\n */\n size?: 'medium' | 'large';\n} & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'>;\n\nexport const TravelSwitch: React.FC<TravelSwitchProps> = ({\n className,\n children,\n labelPlacement = 'right',\n transport,\n size,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, Icon } =\n getTransportStyle(transport);\n return (\n <Switch\n className={className}\n labelPlacement={labelPlacement}\n color={backgroundColor}\n contrastColor={contrastBackgroundColor}\n icon={<Icon />}\n size={size}\n {...rest}\n >\n {children}\n </Switch>\n );\n};\n","import React, { useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoIcon,\n ValidationErrorIcon,\n ValidationExclamationIcon,\n} from '@entur/icons';\nimport { useContrast } from '@entur/layout';\n\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nimport './TravelTag.scss';\n\nexport type TravelTagProps = {\n /** Callback som kalles for når man skal lukke TravelTag-en\n * @default undefined\n */\n onClose?: () => void;\n /** Innholdet inne i TravelTag-en */\n children?: React.ReactNode;\n /**Ekstra klassenavn */\n className?: string;\n /** Legger til et Valideringsikon i TravelTagen for å signalisere avvik, informasjon e.l.\n * @default \"none\"\n */\n alert?: 'none' | 'error' | 'warning' | 'info';\n /** Legger til farge og ikon tilpasset valgt transportmiddel */\n transport?: Transport;\n /** Element ved siden av eller under TravelTag. */\n label?: React.ReactNode;\n /** Posisjonen til label-en i forhold til TravelTag-en\n * @default \"right\"\n */\n labelPlacement?: 'bottom' | 'right';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelTag: React.FC<TravelTagProps> = ({\n children,\n className,\n alert = 'none',\n transport = 'none',\n label,\n labelPlacement = 'right',\n onClose = undefined,\n ...rest\n}) => {\n const isContrast = useContrast();\n const isClosable = onClose ? true : false;\n const transportIsSet = transport !== 'none';\n const alertIsSet = alert !== 'none';\n const tagRef = useRef<HTMLDivElement>(null);\n const numberOfChildren = React.Children.count(children);\n const { Icon, contrastBackgroundColor, backgroundColor, ariaLabel } =\n getTransportStyle(transport);\n\n useEffect(() => {\n if (transportIsSet) {\n tagRef.current?.style.setProperty(\n '--background-color',\n isContrast ? contrastBackgroundColor : backgroundColor,\n );\n }\n }, [tagRef.current, backgroundColor]);\n\n const TravelTagWithoutLabel: JSX.Element = (\n <div\n className={classNames('eds-travel-tag', {\n 'eds-travel-tag--closable': isClosable,\n 'eds-travel-tag--alert': alertIsSet,\n 'eds-travel-tag--alert--error': alert === 'error',\n 'eds-travel-tag--transport': transportIsSet,\n 'eds-travel-tag--icon-and-text':\n numberOfChildren > 1 || (transportIsSet && numberOfChildren > 0),\n className,\n })}\n ref={tagRef}\n {...rest}\n aria-label={\n rest['aria-label'] ?? ariaLabel + (alertIsSet ? ` ${alert}` : '')\n }\n role=\"img\"\n >\n <Icon aria-hidden />\n {children}\n {isClosable && (\n <button\n onClick={onClose}\n type=\"button\"\n className=\"eds-travel-tag__close-button\"\n >\n <CloseSmallIcon inline />\n </button>\n )}\n {alertIsSet && (\n <span className=\"eds-travel-tag__alert\">\n {alert === 'info' && (\n <ValidationInfoIcon\n aria-hidden\n className=\"eds-travel-tag__alert-info-icon\"\n />\n )}\n {alert === 'error' && (\n <ValidationErrorIcon\n aria-hidden\n className=\"eds-travel-tag__alert-error-icon\"\n />\n )}\n {alert === 'warning' && (\n <ValidationExclamationIcon\n aria-hidden\n className=\"eds-travel-tag__alert-exclamation-icon\"\n />\n )}\n </span>\n )}\n </div>\n );\n\n const Label: JSX.Element = (\n <div\n className={classNames('eds-travel-tag__label', {\n [`eds-travel-tag__label--${labelPlacement}`]: label,\n [`eds-travel-tag__label--${labelPlacement}--with-alert`]:\n label && alertIsSet,\n })}\n >\n {label}\n </div>\n );\n\n if (label) {\n return (\n <div\n className={classNames('eds-travel-tag__wrapper', {\n [`eds-travel-tag__wrapper--label-position-${labelPlacement}`]: label,\n })}\n >\n {TravelTagWithoutLabel}\n {Label}\n </div>\n );\n }\n\n return TravelTagWithoutLabel;\n};\n"],"names":["getTransportStyle","mode","Icon","MetroIcon","backgroundColor","colors","transport","metro","contrastBackgroundColor","contrast","pattern","ariaLabel","BusIcon","bus","PlaneIcon","plane","HelicopterIcon","helicopter","TramIcon","tram","FunicularIcon","funicular","CablewayIcon","cableway","TaxiIcon","taxi","BicycleIcon","bicycle","WalkIcon","walk","TrainIcon","train","FerryIcon","ferry","CarferryIcon","carferry","MobilityIcon","mobility","React","Fragment","brand","blue","white","Error","LegLine","_ref","_classNames","color","_ref$direction","direction","className","rest","_objectWithoutPropertiesLoose","_excluded","classNames","style","LegBone","startColor","endColor","_ref$showStart","showStart","_ref$showStop","showStop","_ref$showLine","showLine","createElement","warnAboutMissingStyles","_ref$as","as","Element","from","to","_ref$size","size","noWrap","_extends","isContrast","useContrast","children","_ref$labelPlacement","labelPlacement","Switch","contrastColor","icon","_rest$ariaLabel","_ref$alert","alert","_ref$transport","label","_ref$onClose","onClose","undefined","isClosable","transportIsSet","alertIsSet","tagRef","useRef","numberOfChildren","Children","count","useEffect","_tagRef$current","current","setProperty","_classNames2","TravelTagWithoutLabel","ref","role","onClick","type","CloseSmallIcon","inline","ValidationInfoIcon","ValidationErrorIcon","ValidationExclamationIcon","Label"],"mappings":"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"}
|
package/dist/travel.esm.js
CHANGED
|
@@ -64,9 +64,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
64
64
|
return {
|
|
65
65
|
Icon: MetroIcon,
|
|
66
66
|
backgroundColor: colors.transport["default"].metro,
|
|
67
|
-
textColor: colors.brand.white,
|
|
68
67
|
contrastBackgroundColor: colors.transport.contrast.metro,
|
|
69
|
-
contrastTextColor: colors.brand.white,
|
|
70
68
|
pattern: 'line',
|
|
71
69
|
ariaLabel: 'T-bane'
|
|
72
70
|
};
|
|
@@ -74,9 +72,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
74
72
|
return {
|
|
75
73
|
Icon: BusIcon,
|
|
76
74
|
backgroundColor: colors.transport["default"].bus,
|
|
77
|
-
textColor: colors.brand.white,
|
|
78
75
|
contrastBackgroundColor: colors.transport.contrast.bus,
|
|
79
|
-
contrastTextColor: colors.brand.white,
|
|
80
76
|
pattern: 'dashed',
|
|
81
77
|
ariaLabel: 'Buss'
|
|
82
78
|
};
|
|
@@ -85,9 +81,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
85
81
|
return {
|
|
86
82
|
Icon: PlaneIcon,
|
|
87
83
|
backgroundColor: colors.transport["default"].plane,
|
|
88
|
-
textColor: colors.brand.white,
|
|
89
84
|
contrastBackgroundColor: colors.transport.contrast.plane,
|
|
90
|
-
contrastTextColor: colors.brand.white,
|
|
91
85
|
pattern: 'line',
|
|
92
86
|
ariaLabel: 'Fly'
|
|
93
87
|
};
|
|
@@ -95,9 +89,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
95
89
|
return {
|
|
96
90
|
Icon: HelicopterIcon,
|
|
97
91
|
backgroundColor: colors.transport["default"].helicopter,
|
|
98
|
-
textColor: colors.brand.white,
|
|
99
92
|
contrastBackgroundColor: colors.transport.contrast.helicopter,
|
|
100
|
-
contrastTextColor: colors.brand.white,
|
|
101
93
|
pattern: 'line',
|
|
102
94
|
ariaLabel: 'Helikopter'
|
|
103
95
|
};
|
|
@@ -105,9 +97,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
105
97
|
return {
|
|
106
98
|
Icon: TramIcon,
|
|
107
99
|
backgroundColor: colors.transport["default"].tram,
|
|
108
|
-
textColor: colors.brand.white,
|
|
109
100
|
contrastBackgroundColor: colors.transport.contrast.tram,
|
|
110
|
-
contrastTextColor: colors.brand.white,
|
|
111
101
|
pattern: 'line',
|
|
112
102
|
ariaLabel: 'Trikk'
|
|
113
103
|
};
|
|
@@ -115,9 +105,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
115
105
|
return {
|
|
116
106
|
Icon: FunicularIcon,
|
|
117
107
|
backgroundColor: colors.transport["default"].funicular,
|
|
118
|
-
textColor: colors.brand.white,
|
|
119
108
|
contrastBackgroundColor: colors.transport.contrast.funicular,
|
|
120
|
-
contrastTextColor: colors.brand.white,
|
|
121
109
|
pattern: 'line',
|
|
122
110
|
ariaLabel: 'Taubane'
|
|
123
111
|
};
|
|
@@ -125,9 +113,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
125
113
|
return {
|
|
126
114
|
Icon: CablewayIcon,
|
|
127
115
|
backgroundColor: colors.transport["default"].cableway,
|
|
128
|
-
textColor: colors.brand.white,
|
|
129
116
|
contrastBackgroundColor: colors.transport.contrast.cableway,
|
|
130
|
-
contrastTextColor: colors.brand.white,
|
|
131
117
|
pattern: 'line',
|
|
132
118
|
ariaLabel: 'Gondol'
|
|
133
119
|
};
|
|
@@ -135,9 +121,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
135
121
|
return {
|
|
136
122
|
Icon: TaxiIcon,
|
|
137
123
|
backgroundColor: colors.transport["default"].taxi,
|
|
138
|
-
textColor: colors.brand.white,
|
|
139
124
|
contrastBackgroundColor: colors.transport.contrast.taxi,
|
|
140
|
-
contrastTextColor: colors.brand.white,
|
|
141
125
|
pattern: 'dashed',
|
|
142
126
|
ariaLabel: 'Taxi'
|
|
143
127
|
};
|
|
@@ -145,9 +129,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
145
129
|
return {
|
|
146
130
|
Icon: BicycleIcon,
|
|
147
131
|
backgroundColor: colors.transport["default"].bicycle,
|
|
148
|
-
textColor: colors.brand.white,
|
|
149
132
|
contrastBackgroundColor: colors.transport.contrast.bicycle,
|
|
150
|
-
contrastTextColor: colors.brand.white,
|
|
151
133
|
pattern: 'line',
|
|
152
134
|
ariaLabel: 'Sykkel'
|
|
153
135
|
};
|
|
@@ -155,9 +137,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
155
137
|
return {
|
|
156
138
|
Icon: WalkIcon,
|
|
157
139
|
backgroundColor: colors.transport["default"].walk,
|
|
158
|
-
textColor: colors.brand.white,
|
|
159
140
|
contrastBackgroundColor: colors.transport.contrast.walk,
|
|
160
|
-
contrastTextColor: colors.brand.white,
|
|
161
141
|
pattern: 'dotted',
|
|
162
142
|
ariaLabel: 'Gange'
|
|
163
143
|
};
|
|
@@ -166,9 +146,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
166
146
|
return {
|
|
167
147
|
Icon: TrainIcon,
|
|
168
148
|
backgroundColor: colors.transport["default"].train,
|
|
169
|
-
textColor: colors.brand.white,
|
|
170
149
|
contrastBackgroundColor: colors.transport.contrast.train,
|
|
171
|
-
contrastTextColor: colors.brand.white,
|
|
172
150
|
pattern: 'line',
|
|
173
151
|
ariaLabel: 'Tog'
|
|
174
152
|
};
|
|
@@ -177,9 +155,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
177
155
|
return {
|
|
178
156
|
Icon: FerryIcon,
|
|
179
157
|
backgroundColor: colors.transport["default"].ferry,
|
|
180
|
-
textColor: colors.brand.white,
|
|
181
158
|
contrastBackgroundColor: colors.transport.contrast.ferry,
|
|
182
|
-
contrastTextColor: colors.brand.white,
|
|
183
159
|
pattern: 'wave',
|
|
184
160
|
ariaLabel: 'Ferge'
|
|
185
161
|
};
|
|
@@ -187,9 +163,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
187
163
|
return {
|
|
188
164
|
Icon: CarferryIcon,
|
|
189
165
|
backgroundColor: colors.transport["default"].carferry,
|
|
190
|
-
textColor: colors.brand.white,
|
|
191
166
|
contrastBackgroundColor: colors.transport.contrast.carferry,
|
|
192
|
-
contrastTextColor: colors.brand.white,
|
|
193
167
|
pattern: 'wave',
|
|
194
168
|
ariaLabel: 'Bilferge'
|
|
195
169
|
};
|
|
@@ -197,9 +171,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
197
171
|
return {
|
|
198
172
|
Icon: MobilityIcon,
|
|
199
173
|
backgroundColor: colors.transport["default"].mobility,
|
|
200
|
-
textColor: colors.brand.white,
|
|
201
174
|
contrastBackgroundColor: colors.transport.contrast.mobility,
|
|
202
|
-
contrastTextColor: colors.brand.white,
|
|
203
175
|
pattern: 'line',
|
|
204
176
|
ariaLabel: 'El-sparkesykkel'
|
|
205
177
|
};
|
|
@@ -207,9 +179,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
207
179
|
return {
|
|
208
180
|
Icon: BusIcon,
|
|
209
181
|
backgroundColor: colors.transport["default"].plane,
|
|
210
|
-
textColor: colors.brand.white,
|
|
211
182
|
contrastBackgroundColor: colors.transport.contrast.plane,
|
|
212
|
-
contrastTextColor: colors.brand.white,
|
|
213
183
|
pattern: 'dashed',
|
|
214
184
|
ariaLabel: 'Flybuss'
|
|
215
185
|
};
|
|
@@ -217,9 +187,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
217
187
|
return {
|
|
218
188
|
Icon: TrainIcon,
|
|
219
189
|
backgroundColor: colors.transport["default"].plane,
|
|
220
|
-
textColor: colors.brand.white,
|
|
221
190
|
contrastBackgroundColor: colors.transport.contrast.plane,
|
|
222
|
-
contrastTextColor: colors.brand.white,
|
|
223
191
|
pattern: 'line',
|
|
224
192
|
ariaLabel: 'Flytog'
|
|
225
193
|
};
|
|
@@ -227,9 +195,7 @@ var getTransportStyle = function getTransportStyle(mode) {
|
|
|
227
195
|
return {
|
|
228
196
|
Icon: React.Fragment,
|
|
229
197
|
backgroundColor: colors.brand.blue,
|
|
230
|
-
textColor: colors.brand.white,
|
|
231
198
|
contrastBackgroundColor: colors.brand.white,
|
|
232
|
-
contrastTextColor: colors.brand.white,
|
|
233
199
|
pattern: 'line',
|
|
234
200
|
ariaLabel: ''
|
|
235
201
|
};
|
|
@@ -270,17 +236,14 @@ var TravelTag = function TravelTag(_ref) {
|
|
|
270
236
|
var _getTransportStyle = getTransportStyle(transport),
|
|
271
237
|
Icon = _getTransportStyle.Icon,
|
|
272
238
|
contrastBackgroundColor = _getTransportStyle.contrastBackgroundColor,
|
|
273
|
-
contrastTextColor = _getTransportStyle.contrastTextColor,
|
|
274
239
|
backgroundColor = _getTransportStyle.backgroundColor,
|
|
275
|
-
textColor = _getTransportStyle.textColor,
|
|
276
240
|
ariaLabel = _getTransportStyle.ariaLabel;
|
|
277
241
|
useEffect(function () {
|
|
278
242
|
if (transportIsSet) {
|
|
279
|
-
var _tagRef$current
|
|
243
|
+
var _tagRef$current;
|
|
280
244
|
(_tagRef$current = tagRef.current) == null ? void 0 : _tagRef$current.style.setProperty('--background-color', isContrast ? contrastBackgroundColor : backgroundColor);
|
|
281
|
-
(_tagRef$current2 = tagRef.current) == null ? void 0 : _tagRef$current2.style.setProperty('--text-color', isContrast ? contrastTextColor : textColor);
|
|
282
245
|
}
|
|
283
|
-
}, [tagRef.current, backgroundColor
|
|
246
|
+
}, [tagRef.current, backgroundColor]);
|
|
284
247
|
var TravelTagWithoutLabel = React.createElement("div", _extends({
|
|
285
248
|
className: classNames('eds-travel-tag', {
|
|
286
249
|
'eds-travel-tag--closable': isClosable,
|
|
@@ -298,6 +261,7 @@ var TravelTag = function TravelTag(_ref) {
|
|
|
298
261
|
"aria-hidden": true
|
|
299
262
|
}), children, isClosable && React.createElement("button", {
|
|
300
263
|
onClick: onClose,
|
|
264
|
+
type: "button",
|
|
301
265
|
className: "eds-travel-tag__close-button"
|
|
302
266
|
}, React.createElement(CloseSmallIcon, {
|
|
303
267
|
inline: true
|
package/dist/travel.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"travel.esm.js","sources":["../src/TravelHeader.tsx","../src/utils.ts","../src/TravelTag.tsx","../src/LegLine.tsx","../src/LegBone.tsx","../src/TravelLeg.tsx","../src/TravelSwitch.tsx","../src/index.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport './TravelHeader.scss';\n\nexport type TravelHeaderProps = {\n /** HTML-elementet eller React-komponenten som lager elementet\n * @default 'div'\n */\n as?: string | React.ElementType;\n /** Destinasjonen man reiser fra */\n from: React.ReactNode;\n /** Destinasjonen man reiser til */\n to: React.ReactNode;\n /**Størrelsen på komponenten\n * @default 'large'\n */\n size?: 'large' | 'medium';\n /** Plassere til og fra på samme linje */\n noWrap?: boolean;\n /**Ekstra klassenavn */\n className?: string;\n [key: string]: any;\n};\n\nexport const TravelHeader: React.FC<TravelHeaderProps> = ({\n as: Element = 'div',\n from,\n to,\n size = 'large',\n className,\n noWrap,\n ...rest\n}) => {\n return (\n <Element\n className={classNames('eds-travel-header', className, {\n 'eds-travel-header--large': size === 'large',\n 'eds-travel-header--medium': size === 'medium',\n 'eds-travel-header--no-wrap': noWrap,\n })}\n aria-label={`Fra ${from}, til ${to}`}\n {...rest}\n >\n <span className=\"eds-travel-header__from\">{from}</span>\n <span className=\"eds-travel-header__to\">{to}</span>\n </Element>\n );\n};\n","import React from 'react';\nimport { colors } from '@entur/tokens';\nimport {\n BusIcon,\n FerryIcon,\n CarferryIcon,\n TramIcon,\n PlaneIcon,\n TrainIcon,\n BicycleIcon,\n MobilityIcon,\n MetroIcon,\n HelicopterIcon,\n FunicularIcon,\n CablewayIcon,\n TaxiIcon,\n WalkIcon,\n} from '@entur/icons';\n\nimport type { IconProps } from '@entur/icons';\n\nexport type Transport =\n | 'metro'\n | 'bus'\n | 'plane'\n | 'helicopter'\n | 'tram'\n | 'funicular'\n | 'cableway'\n | 'taxi'\n | 'bicycle'\n | 'walk'\n | 'train'\n | 'ferry'\n | 'carferry'\n | 'mobility'\n | 'airportLinkBus'\n | 'airportLinkRail'\n | 'rail'\n | 'water'\n | 'air'\n | 'none';\n\ntype transportStyleResult = {\n Icon: React.FC<IconProps>;\n backgroundColor: string;\n textColor: string;\n contrastBackgroundColor: string;\n contrastTextColor: string;\n pattern: 'line' | 'wave' | 'dashed' | 'dotted';\n ariaLabel: string;\n};\n\nexport const getTransportStyle = (mode: string): transportStyleResult => {\n switch (mode) {\n case 'metro':\n return {\n Icon: MetroIcon,\n backgroundColor: colors.transport.default.metro,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.metro,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'T-bane',\n };\n case 'bus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.bus,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.bus,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Buss',\n };\n case 'plane':\n case 'air':\n return {\n Icon: PlaneIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Fly',\n };\n case 'helicopter':\n return {\n Icon: HelicopterIcon,\n backgroundColor: colors.transport.default.helicopter,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.helicopter,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Helikopter',\n };\n case 'tram':\n return {\n Icon: TramIcon,\n backgroundColor: colors.transport.default.tram,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.tram,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Trikk',\n };\n case 'funicular':\n return {\n Icon: FunicularIcon,\n backgroundColor: colors.transport.default.funicular,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.funicular,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Taubane',\n };\n case 'cableway':\n return {\n Icon: CablewayIcon,\n backgroundColor: colors.transport.default.cableway,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.cableway,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Gondol',\n };\n case 'taxi':\n return {\n Icon: TaxiIcon,\n backgroundColor: colors.transport.default.taxi,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.taxi,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Taxi',\n };\n case 'bicycle':\n return {\n Icon: BicycleIcon,\n backgroundColor: colors.transport.default.bicycle,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.bicycle,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Sykkel',\n };\n case 'walk':\n return {\n Icon: WalkIcon,\n backgroundColor: colors.transport.default.walk,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.walk,\n contrastTextColor: colors.brand.white,\n pattern: 'dotted',\n ariaLabel: 'Gange',\n };\n case 'train':\n case 'rail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.train,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.train,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Tog',\n };\n case 'ferry':\n case 'water':\n return {\n Icon: FerryIcon,\n backgroundColor: colors.transport.default.ferry,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.ferry,\n contrastTextColor: colors.brand.white,\n pattern: 'wave',\n ariaLabel: 'Ferge',\n };\n case 'carferry':\n return {\n Icon: CarferryIcon,\n backgroundColor: colors.transport.default.carferry,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.carferry,\n contrastTextColor: colors.brand.white,\n pattern: 'wave',\n ariaLabel: 'Bilferge',\n };\n case 'mobility':\n return {\n Icon: MobilityIcon,\n backgroundColor: colors.transport.default.mobility,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.mobility,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'El-sparkesykkel',\n };\n case 'airportLinkBus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'dashed',\n ariaLabel: 'Flybuss',\n };\n case 'airportLinkRail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.plane,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.transport.contrast.plane,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: 'Flytog',\n };\n case 'none':\n return {\n Icon: React.Fragment,\n backgroundColor: colors.brand.blue,\n textColor: colors.brand.white,\n contrastBackgroundColor: colors.brand.white,\n contrastTextColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: '',\n };\n case 'scooter':\n throw Error(\n `transport type 'scooter' is deprecated: Please use 'mobility' instead.`,\n );\n case 'bike':\n throw Error(\n `transport type 'bike' is deprecated: Please use 'bicycle' instead.`,\n );\n case 'car':\n throw Error(\n `transport type 'car' is deprecated: Please use 'taxi' instead.`,\n );\n case 'foot':\n throw Error(\n `transport type 'foot' is deprecated: Please use 'walk' instead.`,\n );\n default:\n throw Error('Please select a transport for the Travel component.');\n }\n};\n","import React, { useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoIcon,\n ValidationErrorIcon,\n ValidationExclamationIcon,\n} from '@entur/icons';\nimport { useContrast } from '@entur/layout';\n\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nimport './TravelTag.scss';\n\nexport type TravelTagProps = {\n /** Callback som kalles for når man skal lukke TravelTag-en\n * @default undefined\n */\n onClose?: () => void;\n /** Innholdet inne i TravelTag-en */\n children?: React.ReactNode;\n /**Ekstra klassenavn */\n className?: string;\n /** Legger til et Valideringsikon i TravelTagen for å signalisere avvik, informasjon e.l.\n * @default \"none\"\n */\n alert?: 'none' | 'error' | 'warning' | 'info';\n /** Legger til farge og ikon tilpasset valgt transportmiddel */\n transport?: Transport;\n /** Element ved siden av eller under TravelTag. */\n label?: React.ReactNode;\n /** Posisjonen til label-en i forhold til TravelTag-en\n * @default \"right\"\n */\n labelPlacement?: 'bottom' | 'right';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelTag: React.FC<TravelTagProps> = ({\n children,\n className,\n alert = 'none',\n transport = 'none',\n label,\n labelPlacement = 'right',\n onClose = undefined,\n ...rest\n}) => {\n const isContrast = useContrast();\n const isClosable = onClose ? true : false;\n const transportIsSet = transport !== 'none';\n const alertIsSet = alert !== 'none';\n const tagRef = useRef<HTMLDivElement>(null);\n const numberOfChildren = React.Children.count(children);\n const {\n Icon,\n contrastBackgroundColor,\n contrastTextColor,\n backgroundColor,\n textColor,\n ariaLabel,\n } = getTransportStyle(transport);\n\n useEffect(() => {\n if (transportIsSet) {\n tagRef.current?.style.setProperty(\n '--background-color',\n isContrast ? contrastBackgroundColor : backgroundColor,\n );\n tagRef.current?.style.setProperty(\n '--text-color',\n isContrast ? contrastTextColor : textColor,\n );\n }\n }, [tagRef.current, backgroundColor, textColor]);\n\n const TravelTagWithoutLabel: JSX.Element = (\n <div\n className={classNames('eds-travel-tag', {\n 'eds-travel-tag--closable': isClosable,\n 'eds-travel-tag--alert': alertIsSet,\n 'eds-travel-tag--alert--error': alert === 'error',\n 'eds-travel-tag--transport': transportIsSet,\n 'eds-travel-tag--icon-and-text':\n numberOfChildren > 1 || (transportIsSet && numberOfChildren > 0),\n className,\n })}\n ref={tagRef}\n {...rest}\n aria-label={\n rest['aria-label'] ?? ariaLabel + (alertIsSet ? ` ${alert}` : '')\n }\n role=\"img\"\n >\n <Icon aria-hidden />\n {children}\n {isClosable && (\n <button onClick={onClose} className=\"eds-travel-tag__close-button\">\n <CloseSmallIcon inline />\n </button>\n )}\n {alertIsSet && (\n <span className=\"eds-travel-tag__alert\">\n {alert === 'info' && (\n <ValidationInfoIcon\n aria-hidden\n className=\"eds-travel-tag__alert-info-icon\"\n />\n )}\n {alert === 'error' && (\n <ValidationErrorIcon\n aria-hidden\n className=\"eds-travel-tag__alert-error-icon\"\n />\n )}\n {alert === 'warning' && (\n <ValidationExclamationIcon\n aria-hidden\n className=\"eds-travel-tag__alert-exclamation-icon\"\n />\n )}\n </span>\n )}\n </div>\n );\n\n const Label: JSX.Element = (\n <div\n className={classNames('eds-travel-tag__label', {\n [`eds-travel-tag__label--${labelPlacement}`]: label,\n [`eds-travel-tag__label--${labelPlacement}--with-alert`]:\n label && alertIsSet,\n })}\n >\n {label}\n </div>\n );\n\n if (label) {\n return (\n <div\n className={classNames('eds-travel-tag__wrapper', {\n [`eds-travel-tag__wrapper--label-position-${labelPlacement}`]: label,\n })}\n >\n {TravelTagWithoutLabel}\n {Label}\n </div>\n );\n }\n\n return TravelTagWithoutLabel;\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport './LegLine.scss';\n\nexport type LegLineProps = {\n /** Farge på LegLine'n */\n color: string;\n /** Retningen til LegLine */\n direction: 'horizontal' | 'vertical';\n /** Hvilket linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegLine: React.FC<LegLineProps> = ({\n color,\n direction = 'horizontal',\n pattern,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames('eds-leg-line', className, {\n [`eds-leg-line--${pattern}`]: pattern,\n [`eds-leg-line--${direction}`]: direction,\n })}\n style={{ backgroundColor: color }}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport { LegLine } from './LegLine';\nimport './LegBone.scss';\n\nexport type LegBoneProps = {\n /** Retning på komponenten */\n direction: 'horizontal' | 'vertical';\n /** Hvilke linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Farge på linja */\n color: string;\n /** Farge på startpunktet\n * @default Verdien til color\n */\n startColor?: string;\n /** Farge på endepunktet\n * @default Verdien til color\n */\n endColor?: string;\n /** Vis startpunkt\n * @default true\n */\n showStart?: boolean;\n /** Vis linke\n * @default true\n */\n showLine?: boolean;\n /** Vis endepunkt\n * @default true\n */\n showStop?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegBone: React.FC<LegBoneProps> = ({\n direction,\n pattern,\n color,\n startColor,\n endColor,\n showStart = true,\n showStop = true,\n showLine = true,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames(className, 'eds-leg-bone', [\n { 'eds-leg-bone--vertical': direction === 'vertical' },\n { 'eds-leg-bone--horizontal': direction === 'horizontal' },\n ])}\n {...rest}\n >\n {showStart && (\n <div\n className={`eds-leg-bone__start`}\n style={{ backgroundColor: startColor || color }}\n />\n )}\n\n {showLine && (\n <LegLine\n className={`eds-leg-bone__line`}\n direction={direction}\n color={color}\n pattern={pattern}\n />\n )}\n\n {showStop && (\n <div\n className={`eds-leg-bone__stop`}\n style={{ backgroundColor: endColor || color }}\n />\n )}\n </div>\n );\n};\n","import React from 'react';\nimport { useContrast } from '@entur/layout';\nimport { LegBone } from './LegBone';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelLegProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Hviklen type reise som skal vises riktig farge og linjetype */\n transport: Transport;\n /** Retningen på komponenten */\n direction: 'horizontal' | 'vertical';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelLeg: React.FC<TravelLegProps> = ({\n className,\n transport,\n direction,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, pattern } =\n getTransportStyle(transport);\n const isContrast = useContrast();\n\n return (\n <LegBone\n direction={direction}\n pattern={pattern}\n color={isContrast ? contrastBackgroundColor : backgroundColor}\n className={className}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport { Switch } from '@entur/form';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelSwitchProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Om switch-en er checked eller ikke */\n checked?: boolean;\n /** Label for TravelSwitch-en. */\n children?: React.ReactNode;\n /** Posisjonen til label for TravelSwitch-en.\n * @default \"right\"\n */\n labelPlacement?: 'right' | 'bottom';\n /** Hvilken type reise som skal vises ikon og farge for */\n transport: Transport; // When adding a new submode, check https://enturas.atlassian.net/wiki/spaces/PUBLIC/pages/825393529/Norwegian+submodes+and+their+definitions for names\n /** Callback for når verdien endres */\n onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Størrelsen på Switch-en\n * @default \"medium\"\n */\n size?: 'medium' | 'large';\n} & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'>;\n\nexport const TravelSwitch: React.FC<TravelSwitchProps> = ({\n className,\n children,\n labelPlacement = 'right',\n transport,\n size,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, Icon } =\n getTransportStyle(transport);\n return (\n <Switch\n className={className}\n labelPlacement={labelPlacement}\n color={backgroundColor}\n contrastColor={contrastBackgroundColor}\n icon={<Icon />}\n size={size}\n {...rest}\n >\n {children}\n </Switch>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('travel');\n\nexport * from './TravelHeader';\nexport * from './TravelTag';\nexport * from './LegLine';\nexport * from './LegBone';\nexport * from './TravelLeg';\nexport * from './TravelSwitch';\n"],"names":["TravelHeader","as","Element","from","to","size","className","noWrap","rest","_excluded","React","createElement","classNames","getTransportStyle","mode","Icon","MetroIcon","backgroundColor","colors","transport","metro","textColor","brand","white","contrastBackgroundColor","contrast","contrastTextColor","pattern","ariaLabel","BusIcon","bus","PlaneIcon","plane","HelicopterIcon","helicopter","TramIcon","tram","FunicularIcon","funicular","CablewayIcon","cableway","TaxiIcon","taxi","BicycleIcon","bicycle","WalkIcon","walk","TrainIcon","train","FerryIcon","ferry","CarferryIcon","carferry","MobilityIcon","mobility","Fragment","blue","Error","TravelTag","children","alert","label","labelPlacement","onClose","undefined","isContrast","useContrast","isClosable","transportIsSet","alertIsSet","tagRef","useRef","numberOfChildren","Children","count","useEffect","current","style","setProperty","TravelTagWithoutLabel","ref","role","onClick","CloseSmallIcon","inline","ValidationInfoIcon","ValidationErrorIcon","ValidationExclamationIcon","Label","LegLine","color","direction","LegBone","startColor","endColor","showStart","showStop","showLine","TravelLeg","TravelSwitch","Switch","contrastColor","icon","warnAboutMissingStyles"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"travel.esm.js","sources":["../src/TravelHeader.tsx","../src/utils.ts","../src/TravelTag.tsx","../src/LegLine.tsx","../src/LegBone.tsx","../src/TravelLeg.tsx","../src/TravelSwitch.tsx","../src/index.tsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport './TravelHeader.scss';\n\nexport type TravelHeaderProps = {\n /** HTML-elementet eller React-komponenten som lager elementet\n * @default 'div'\n */\n as?: string | React.ElementType;\n /** Destinasjonen man reiser fra */\n from: React.ReactNode;\n /** Destinasjonen man reiser til */\n to: React.ReactNode;\n /**Størrelsen på komponenten\n * @default 'large'\n */\n size?: 'large' | 'medium';\n /** Plassere til og fra på samme linje */\n noWrap?: boolean;\n /**Ekstra klassenavn */\n className?: string;\n [key: string]: any;\n};\n\nexport const TravelHeader: React.FC<TravelHeaderProps> = ({\n as: Element = 'div',\n from,\n to,\n size = 'large',\n className,\n noWrap,\n ...rest\n}) => {\n return (\n <Element\n className={classNames('eds-travel-header', className, {\n 'eds-travel-header--large': size === 'large',\n 'eds-travel-header--medium': size === 'medium',\n 'eds-travel-header--no-wrap': noWrap,\n })}\n aria-label={`Fra ${from}, til ${to}`}\n {...rest}\n >\n <span className=\"eds-travel-header__from\">{from}</span>\n <span className=\"eds-travel-header__to\">{to}</span>\n </Element>\n );\n};\n","import React from 'react';\nimport { colors } from '@entur/tokens';\nimport {\n BusIcon,\n FerryIcon,\n CarferryIcon,\n TramIcon,\n PlaneIcon,\n TrainIcon,\n BicycleIcon,\n MobilityIcon,\n MetroIcon,\n HelicopterIcon,\n FunicularIcon,\n CablewayIcon,\n TaxiIcon,\n WalkIcon,\n} from '@entur/icons';\n\nimport type { IconProps } from '@entur/icons';\n\nexport type Transport =\n | 'metro'\n | 'bus'\n | 'plane'\n | 'helicopter'\n | 'tram'\n | 'funicular'\n | 'cableway'\n | 'taxi'\n | 'bicycle'\n | 'walk'\n | 'train'\n | 'ferry'\n | 'carferry'\n | 'mobility'\n | 'airportLinkBus'\n | 'airportLinkRail'\n | 'rail'\n | 'water'\n | 'air'\n | 'none';\n\ntype transportStyleResult = {\n Icon: React.FC<IconProps>;\n backgroundColor: string;\n contrastBackgroundColor: string;\n pattern: 'line' | 'wave' | 'dashed' | 'dotted';\n ariaLabel: string;\n};\n\nexport const getTransportStyle = (mode: string): transportStyleResult => {\n switch (mode) {\n case 'metro':\n return {\n Icon: MetroIcon,\n backgroundColor: colors.transport.default.metro,\n contrastBackgroundColor: colors.transport.contrast.metro,\n pattern: 'line',\n ariaLabel: 'T-bane',\n };\n case 'bus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.bus,\n contrastBackgroundColor: colors.transport.contrast.bus,\n pattern: 'dashed',\n ariaLabel: 'Buss',\n };\n case 'plane':\n case 'air':\n return {\n Icon: PlaneIcon,\n backgroundColor: colors.transport.default.plane,\n contrastBackgroundColor: colors.transport.contrast.plane,\n pattern: 'line',\n ariaLabel: 'Fly',\n };\n case 'helicopter':\n return {\n Icon: HelicopterIcon,\n backgroundColor: colors.transport.default.helicopter,\n contrastBackgroundColor: colors.transport.contrast.helicopter,\n pattern: 'line',\n ariaLabel: 'Helikopter',\n };\n case 'tram':\n return {\n Icon: TramIcon,\n backgroundColor: colors.transport.default.tram,\n contrastBackgroundColor: colors.transport.contrast.tram,\n pattern: 'line',\n ariaLabel: 'Trikk',\n };\n case 'funicular':\n return {\n Icon: FunicularIcon,\n backgroundColor: colors.transport.default.funicular,\n contrastBackgroundColor: colors.transport.contrast.funicular,\n pattern: 'line',\n ariaLabel: 'Taubane',\n };\n case 'cableway':\n return {\n Icon: CablewayIcon,\n backgroundColor: colors.transport.default.cableway,\n contrastBackgroundColor: colors.transport.contrast.cableway,\n pattern: 'line',\n ariaLabel: 'Gondol',\n };\n case 'taxi':\n return {\n Icon: TaxiIcon,\n backgroundColor: colors.transport.default.taxi,\n contrastBackgroundColor: colors.transport.contrast.taxi,\n pattern: 'dashed',\n ariaLabel: 'Taxi',\n };\n case 'bicycle':\n return {\n Icon: BicycleIcon,\n backgroundColor: colors.transport.default.bicycle,\n contrastBackgroundColor: colors.transport.contrast.bicycle,\n pattern: 'line',\n ariaLabel: 'Sykkel',\n };\n case 'walk':\n return {\n Icon: WalkIcon,\n backgroundColor: colors.transport.default.walk,\n contrastBackgroundColor: colors.transport.contrast.walk,\n pattern: 'dotted',\n ariaLabel: 'Gange',\n };\n case 'train':\n case 'rail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.train,\n contrastBackgroundColor: colors.transport.contrast.train,\n pattern: 'line',\n ariaLabel: 'Tog',\n };\n case 'ferry':\n case 'water':\n return {\n Icon: FerryIcon,\n backgroundColor: colors.transport.default.ferry,\n contrastBackgroundColor: colors.transport.contrast.ferry,\n pattern: 'wave',\n ariaLabel: 'Ferge',\n };\n case 'carferry':\n return {\n Icon: CarferryIcon,\n backgroundColor: colors.transport.default.carferry,\n contrastBackgroundColor: colors.transport.contrast.carferry,\n pattern: 'wave',\n ariaLabel: 'Bilferge',\n };\n case 'mobility':\n return {\n Icon: MobilityIcon,\n backgroundColor: colors.transport.default.mobility,\n contrastBackgroundColor: colors.transport.contrast.mobility,\n pattern: 'line',\n ariaLabel: 'El-sparkesykkel',\n };\n case 'airportLinkBus':\n return {\n Icon: BusIcon,\n backgroundColor: colors.transport.default.plane,\n contrastBackgroundColor: colors.transport.contrast.plane,\n pattern: 'dashed',\n ariaLabel: 'Flybuss',\n };\n case 'airportLinkRail':\n return {\n Icon: TrainIcon,\n backgroundColor: colors.transport.default.plane,\n contrastBackgroundColor: colors.transport.contrast.plane,\n pattern: 'line',\n ariaLabel: 'Flytog',\n };\n case 'none':\n return {\n Icon: React.Fragment,\n backgroundColor: colors.brand.blue,\n contrastBackgroundColor: colors.brand.white,\n pattern: 'line',\n ariaLabel: '',\n };\n case 'scooter':\n throw Error(\n `transport type 'scooter' is deprecated: Please use 'mobility' instead.`,\n );\n case 'bike':\n throw Error(\n `transport type 'bike' is deprecated: Please use 'bicycle' instead.`,\n );\n case 'car':\n throw Error(\n `transport type 'car' is deprecated: Please use 'taxi' instead.`,\n );\n case 'foot':\n throw Error(\n `transport type 'foot' is deprecated: Please use 'walk' instead.`,\n );\n default:\n throw Error('Please select a transport for the Travel component.');\n }\n};\n","import React, { useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoIcon,\n ValidationErrorIcon,\n ValidationExclamationIcon,\n} from '@entur/icons';\nimport { useContrast } from '@entur/layout';\n\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nimport './TravelTag.scss';\n\nexport type TravelTagProps = {\n /** Callback som kalles for når man skal lukke TravelTag-en\n * @default undefined\n */\n onClose?: () => void;\n /** Innholdet inne i TravelTag-en */\n children?: React.ReactNode;\n /**Ekstra klassenavn */\n className?: string;\n /** Legger til et Valideringsikon i TravelTagen for å signalisere avvik, informasjon e.l.\n * @default \"none\"\n */\n alert?: 'none' | 'error' | 'warning' | 'info';\n /** Legger til farge og ikon tilpasset valgt transportmiddel */\n transport?: Transport;\n /** Element ved siden av eller under TravelTag. */\n label?: React.ReactNode;\n /** Posisjonen til label-en i forhold til TravelTag-en\n * @default \"right\"\n */\n labelPlacement?: 'bottom' | 'right';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelTag: React.FC<TravelTagProps> = ({\n children,\n className,\n alert = 'none',\n transport = 'none',\n label,\n labelPlacement = 'right',\n onClose = undefined,\n ...rest\n}) => {\n const isContrast = useContrast();\n const isClosable = onClose ? true : false;\n const transportIsSet = transport !== 'none';\n const alertIsSet = alert !== 'none';\n const tagRef = useRef<HTMLDivElement>(null);\n const numberOfChildren = React.Children.count(children);\n const { Icon, contrastBackgroundColor, backgroundColor, ariaLabel } =\n getTransportStyle(transport);\n\n useEffect(() => {\n if (transportIsSet) {\n tagRef.current?.style.setProperty(\n '--background-color',\n isContrast ? contrastBackgroundColor : backgroundColor,\n );\n }\n }, [tagRef.current, backgroundColor]);\n\n const TravelTagWithoutLabel: JSX.Element = (\n <div\n className={classNames('eds-travel-tag', {\n 'eds-travel-tag--closable': isClosable,\n 'eds-travel-tag--alert': alertIsSet,\n 'eds-travel-tag--alert--error': alert === 'error',\n 'eds-travel-tag--transport': transportIsSet,\n 'eds-travel-tag--icon-and-text':\n numberOfChildren > 1 || (transportIsSet && numberOfChildren > 0),\n className,\n })}\n ref={tagRef}\n {...rest}\n aria-label={\n rest['aria-label'] ?? ariaLabel + (alertIsSet ? ` ${alert}` : '')\n }\n role=\"img\"\n >\n <Icon aria-hidden />\n {children}\n {isClosable && (\n <button\n onClick={onClose}\n type=\"button\"\n className=\"eds-travel-tag__close-button\"\n >\n <CloseSmallIcon inline />\n </button>\n )}\n {alertIsSet && (\n <span className=\"eds-travel-tag__alert\">\n {alert === 'info' && (\n <ValidationInfoIcon\n aria-hidden\n className=\"eds-travel-tag__alert-info-icon\"\n />\n )}\n {alert === 'error' && (\n <ValidationErrorIcon\n aria-hidden\n className=\"eds-travel-tag__alert-error-icon\"\n />\n )}\n {alert === 'warning' && (\n <ValidationExclamationIcon\n aria-hidden\n className=\"eds-travel-tag__alert-exclamation-icon\"\n />\n )}\n </span>\n )}\n </div>\n );\n\n const Label: JSX.Element = (\n <div\n className={classNames('eds-travel-tag__label', {\n [`eds-travel-tag__label--${labelPlacement}`]: label,\n [`eds-travel-tag__label--${labelPlacement}--with-alert`]:\n label && alertIsSet,\n })}\n >\n {label}\n </div>\n );\n\n if (label) {\n return (\n <div\n className={classNames('eds-travel-tag__wrapper', {\n [`eds-travel-tag__wrapper--label-position-${labelPlacement}`]: label,\n })}\n >\n {TravelTagWithoutLabel}\n {Label}\n </div>\n );\n }\n\n return TravelTagWithoutLabel;\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport './LegLine.scss';\n\nexport type LegLineProps = {\n /** Farge på LegLine'n */\n color: string;\n /** Retningen til LegLine */\n direction: 'horizontal' | 'vertical';\n /** Hvilket linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegLine: React.FC<LegLineProps> = ({\n color,\n direction = 'horizontal',\n pattern,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames('eds-leg-line', className, {\n [`eds-leg-line--${pattern}`]: pattern,\n [`eds-leg-line--${direction}`]: direction,\n })}\n style={{ backgroundColor: color }}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport { LegLine } from './LegLine';\nimport './LegBone.scss';\n\nexport type LegBoneProps = {\n /** Retning på komponenten */\n direction: 'horizontal' | 'vertical';\n /** Hvilke linjemønster som skal brukes */\n pattern: 'line' | 'dashed' | 'dotted' | 'wave';\n /** Farge på linja */\n color: string;\n /** Farge på startpunktet\n * @default Verdien til color\n */\n startColor?: string;\n /** Farge på endepunktet\n * @default Verdien til color\n */\n endColor?: string;\n /** Vis startpunkt\n * @default true\n */\n showStart?: boolean;\n /** Vis linke\n * @default true\n */\n showLine?: boolean;\n /** Vis endepunkt\n * @default true\n */\n showStop?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const LegBone: React.FC<LegBoneProps> = ({\n direction,\n pattern,\n color,\n startColor,\n endColor,\n showStart = true,\n showStop = true,\n showLine = true,\n className,\n ...rest\n}) => {\n return (\n <div\n className={classNames(className, 'eds-leg-bone', [\n { 'eds-leg-bone--vertical': direction === 'vertical' },\n { 'eds-leg-bone--horizontal': direction === 'horizontal' },\n ])}\n {...rest}\n >\n {showStart && (\n <div\n className={`eds-leg-bone__start`}\n style={{ backgroundColor: startColor || color }}\n />\n )}\n\n {showLine && (\n <LegLine\n className={`eds-leg-bone__line`}\n direction={direction}\n color={color}\n pattern={pattern}\n />\n )}\n\n {showStop && (\n <div\n className={`eds-leg-bone__stop`}\n style={{ backgroundColor: endColor || color }}\n />\n )}\n </div>\n );\n};\n","import React from 'react';\nimport { useContrast } from '@entur/layout';\nimport { LegBone } from './LegBone';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelLegProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Hviklen type reise som skal vises riktig farge og linjetype */\n transport: Transport;\n /** Retningen på komponenten */\n direction: 'horizontal' | 'vertical';\n} & React.DetailedHTMLProps<\n React.HTMLAttributes<HTMLDivElement>,\n HTMLDivElement\n>;\n\nexport const TravelLeg: React.FC<TravelLegProps> = ({\n className,\n transport,\n direction,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, pattern } =\n getTransportStyle(transport);\n const isContrast = useContrast();\n\n return (\n <LegBone\n direction={direction}\n pattern={pattern}\n color={isContrast ? contrastBackgroundColor : backgroundColor}\n className={className}\n {...rest}\n />\n );\n};\n","import React from 'react';\nimport { Switch } from '@entur/form';\nimport { getTransportStyle } from './utils';\n\nimport type { Transport } from './utils';\n\nexport type TravelSwitchProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Om switch-en er checked eller ikke */\n checked?: boolean;\n /** Label for TravelSwitch-en. */\n children?: React.ReactNode;\n /** Posisjonen til label for TravelSwitch-en.\n * @default \"right\"\n */\n labelPlacement?: 'right' | 'bottom';\n /** Hvilken type reise som skal vises ikon og farge for */\n transport: Transport; // When adding a new submode, check https://enturas.atlassian.net/wiki/spaces/PUBLIC/pages/825393529/Norwegian+submodes+and+their+definitions for names\n /** Callback for når verdien endres */\n onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;\n /** Størrelsen på Switch-en\n * @default \"medium\"\n */\n size?: 'medium' | 'large';\n} & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'>;\n\nexport const TravelSwitch: React.FC<TravelSwitchProps> = ({\n className,\n children,\n labelPlacement = 'right',\n transport,\n size,\n ...rest\n}) => {\n const { backgroundColor, contrastBackgroundColor, Icon } =\n getTransportStyle(transport);\n return (\n <Switch\n className={className}\n labelPlacement={labelPlacement}\n color={backgroundColor}\n contrastColor={contrastBackgroundColor}\n icon={<Icon />}\n size={size}\n {...rest}\n >\n {children}\n </Switch>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('travel');\n\nexport * from './TravelHeader';\nexport * from './TravelTag';\nexport * from './LegLine';\nexport * from './LegBone';\nexport * from './TravelLeg';\nexport * from './TravelSwitch';\n"],"names":["TravelHeader","as","Element","from","to","size","className","noWrap","rest","_excluded","React","createElement","classNames","getTransportStyle","mode","Icon","MetroIcon","backgroundColor","colors","transport","metro","contrastBackgroundColor","contrast","pattern","ariaLabel","BusIcon","bus","PlaneIcon","plane","HelicopterIcon","helicopter","TramIcon","tram","FunicularIcon","funicular","CablewayIcon","cableway","TaxiIcon","taxi","BicycleIcon","bicycle","WalkIcon","walk","TrainIcon","train","FerryIcon","ferry","CarferryIcon","carferry","MobilityIcon","mobility","Fragment","brand","blue","white","Error","TravelTag","children","alert","label","labelPlacement","onClose","undefined","isContrast","useContrast","isClosable","transportIsSet","alertIsSet","tagRef","useRef","numberOfChildren","Children","count","useEffect","current","style","setProperty","TravelTagWithoutLabel","ref","role","onClick","type","CloseSmallIcon","inline","ValidationInfoIcon","ValidationErrorIcon","ValidationExclamationIcon","Label","LegLine","color","direction","LegBone","startColor","endColor","showStart","showStop","showLine","TravelLeg","TravelSwitch","Switch","contrastColor","icon","warnAboutMissingStyles"],"mappings":"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"}
|
package/dist/utils.d.ts
CHANGED
|
@@ -4,9 +4,7 @@ export type Transport = 'metro' | 'bus' | 'plane' | 'helicopter' | 'tram' | 'fun
|
|
|
4
4
|
type transportStyleResult = {
|
|
5
5
|
Icon: React.FC<IconProps>;
|
|
6
6
|
backgroundColor: string;
|
|
7
|
-
textColor: string;
|
|
8
7
|
contrastBackgroundColor: string;
|
|
9
|
-
contrastTextColor: string;
|
|
10
8
|
pattern: 'line' | 'wave' | 'dashed' | 'dotted';
|
|
11
9
|
ariaLabel: string;
|
|
12
10
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@entur/travel",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.1.0",
|
|
4
4
|
"license": "EUPL-1.2",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/travel.esm.js",
|
|
@@ -27,12 +27,12 @@
|
|
|
27
27
|
"react-dom": ">=16.8.0"
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@entur/form": "^7.0.
|
|
31
|
-
"@entur/icons": "^6.13.
|
|
32
|
-
"@entur/layout": "^2.1.
|
|
33
|
-
"@entur/tokens": "^3.
|
|
30
|
+
"@entur/form": "^7.0.32",
|
|
31
|
+
"@entur/icons": "^6.13.2",
|
|
32
|
+
"@entur/layout": "^2.1.53",
|
|
33
|
+
"@entur/tokens": "^3.12.0",
|
|
34
34
|
"@entur/utils": "^0.9.5",
|
|
35
35
|
"classnames": "^2.3.1"
|
|
36
36
|
},
|
|
37
|
-
"gitHead": "
|
|
37
|
+
"gitHead": "85dd6dbaf86fc2488dd2152c213788f9d4a8a64f"
|
|
38
38
|
}
|