@entur/travel 6.2.12 → 6.2.13-RC.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.
@@ -10,30 +10,22 @@ var layout = require('@entur/layout');
10
10
  var form = require('@entur/form');
11
11
 
12
12
  function _extends() {
13
- _extends = Object.assign ? Object.assign.bind() : function (target) {
14
- for (var i = 1; i < arguments.length; i++) {
15
- var source = arguments[i];
16
- for (var key in source) {
17
- if (Object.prototype.hasOwnProperty.call(source, key)) {
18
- target[key] = source[key];
19
- }
20
- }
13
+ return _extends = Object.assign ? Object.assign.bind() : function (n) {
14
+ for (var e = 1; e < arguments.length; e++) {
15
+ var t = arguments[e];
16
+ for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
21
17
  }
22
- return target;
23
- };
24
- return _extends.apply(this, arguments);
18
+ return n;
19
+ }, _extends.apply(null, arguments);
25
20
  }
26
- function _objectWithoutPropertiesLoose(source, excluded) {
27
- if (source == null) return {};
28
- var target = {};
29
- var sourceKeys = Object.keys(source);
30
- var key, i;
31
- for (i = 0; i < sourceKeys.length; i++) {
32
- key = sourceKeys[i];
33
- if (excluded.indexOf(key) >= 0) continue;
34
- target[key] = source[key];
21
+ function _objectWithoutPropertiesLoose(r, e) {
22
+ if (null == r) return {};
23
+ var t = {};
24
+ for (var n in r) if ({}.hasOwnProperty.call(r, n)) {
25
+ if (e.includes(n)) continue;
26
+ t[n] = r[n];
35
27
  }
36
- return target;
28
+ return t;
37
29
  }
38
30
 
39
31
  var _excluded$5 = ["as", "from", "to", "size", "className", "noWrap"];
@@ -228,18 +220,18 @@ var TravelTag = function TravelTag(_ref) {
228
220
  // Walk has another icon/text color then the other transports
229
221
  if (transport === 'walk') {
230
222
  var _tagRef$current;
231
- (_tagRef$current = tagRef.current) == null ? void 0 : _tagRef$current.style.setProperty('--text-color', 'var(--components-travel-traveltag-standard-icon-walk)');
223
+ (_tagRef$current = tagRef.current) == null || _tagRef$current.style.setProperty('--text-color', 'var(--components-travel-traveltag-standard-icon-walk)');
232
224
  }
233
225
  // Error
234
226
  if (alert === 'error') {
235
227
  var _tagRef$current2;
236
228
  colorToSet = isContrast ? errorContrastBackgroundColor : errorBackgroundColor;
237
229
  textColorToSet = isContrast ? errorContrastTextColor : errorTextColor;
238
- (_tagRef$current2 = tagRef.current) == null ? void 0 : _tagRef$current2.style.setProperty('--text-color', "" + textColorToSet);
230
+ (_tagRef$current2 = tagRef.current) == null || _tagRef$current2.style.setProperty('--text-color', "" + textColorToSet);
239
231
  } else {
240
232
  colorToSet = isContrast ? contrastBackgroundColor : backgroundColor;
241
233
  }
242
- (_tagRef$current3 = tagRef.current) == null ? void 0 : _tagRef$current3.style.setProperty('--background-color', "" + colorToSet);
234
+ (_tagRef$current3 = tagRef.current) == null || _tagRef$current3.style.setProperty('--background-color', "" + colorToSet);
243
235
  }
244
236
  }, [transportIsSet, isContrast, backgroundColor, contrastBackgroundColor, errorBackgroundColor, alert]);
245
237
  var TravelTagWithoutLabel = React.createElement("div", _extends({
@@ -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';\n\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 errorBackgroundColor?: string;\n errorTextColor?: string;\n errorContrastTextColor?: string;\n errorContrastBackgroundColor?: 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 pattern: 'line',\n ariaLabel: 'T-bane',\n };\n case 'bus':\n case 'neutral':\n return {\n Icon: BusIcon,\n pattern: 'dashed',\n ariaLabel: 'Buss',\n };\n case 'plane':\n case 'air':\n return {\n Icon: PlaneIcon,\n pattern: 'line',\n ariaLabel: 'Fly',\n };\n case 'helicopter':\n return {\n Icon: HelicopterIcon,\n pattern: 'line',\n ariaLabel: 'Helikopter',\n };\n case 'tram':\n return {\n Icon: TramIcon,\n pattern: 'line',\n ariaLabel: 'Trikk',\n };\n case 'funicular':\n return {\n Icon: FunicularIcon,\n pattern: 'line',\n ariaLabel: 'Taubane',\n };\n case 'cableway':\n return {\n Icon: CablewayIcon,\n pattern: 'line',\n ariaLabel: 'Gondol',\n };\n case 'taxi':\n return {\n Icon: TaxiIcon,\n pattern: 'dashed',\n ariaLabel: 'Taxi',\n };\n case 'bicycle':\n case 'citybike':\n return {\n Icon: BicycleIcon,\n pattern: 'dashed',\n ariaLabel: 'Sykkel',\n };\n case 'walk':\n return {\n Icon: WalkIcon,\n pattern: 'dotted',\n ariaLabel: 'Gange',\n };\n case 'train':\n case 'rail':\n return {\n Icon: TrainIcon,\n pattern: 'line',\n ariaLabel: 'Tog',\n };\n case 'ferry':\n case 'water':\n return {\n Icon: FerryIcon,\n pattern: 'wave',\n ariaLabel: 'Ferge',\n };\n case 'carferry':\n return {\n Icon: CarferryIcon,\n pattern: 'wave',\n ariaLabel: 'Bilferge',\n };\n case 'mobility':\n return {\n Icon: MobilityIcon,\n pattern: 'line',\n ariaLabel: 'El-sparkesykkel',\n };\n case 'airportLinkBus':\n case 'airportlinkbus':\n return {\n Icon: BusIcon,\n pattern: 'dashed',\n ariaLabel: 'Flybuss',\n };\n case 'airportLinkRail':\n case 'airportlinkrail':\n return {\n Icon: TrainIcon,\n pattern: 'line',\n ariaLabel: 'Flytog',\n };\n case 'none':\n return {\n Icon: React.Fragment,\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, { cloneElement, useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoFilledIcon,\n ValidationErrorFilledIcon,\n ValidationExclamationCircleFilledIcon,\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, ariaLabel: ariaLabelForTranportIcon } =\n getTransportStyle(transport);\n const deCapitalizeTransport = transport.toLowerCase();\n const IconWithAriaHidden = cloneElement(<Icon />, { 'aria-hidden': 'true' });\n\n const backgroundColor =\n 'var(--components-travel-traveltag-standard-tagfill-' +\n deCapitalizeTransport +\n ')';\n const contrastBackgroundColor =\n 'var(--components-travel-traveltag-contrast-tagfill-' +\n deCapitalizeTransport +\n ')';\n // Error colors\n const errorBackgroundColor =\n 'var(--components-travel-traveltag-standard-tagfill-' +\n deCapitalizeTransport +\n '-cancled)';\n const errorContrastBackgroundColor =\n 'var(--components-travel-traveltag-contrast-tagfill-' +\n deCapitalizeTransport +\n '-cancled)';\n const errorContrastTextColor =\n 'var(--components-travel-traveltag-contrast-text-line-' +\n deCapitalizeTransport +\n '-cancled)';\n const errorTextColor =\n 'var(--components-travel-traveltag-standard-text-line-' +\n deCapitalizeTransport +\n '-cancled)';\n\n useEffect(() => {\n if (transportIsSet) {\n let colorToSet;\n let textColorToSet;\n // Walk has another icon/text color then the other transports\n if (transport === 'walk') {\n tagRef.current?.style.setProperty(\n '--text-color',\n 'var(--components-travel-traveltag-standard-icon-walk)',\n );\n }\n // Error\n if (alert === 'error') {\n colorToSet = isContrast\n ? errorContrastBackgroundColor\n : errorBackgroundColor;\n textColorToSet = isContrast ? errorContrastTextColor : errorTextColor;\n tagRef.current?.style.setProperty('--text-color', `${textColorToSet}`);\n } else {\n colorToSet = isContrast ? contrastBackgroundColor : backgroundColor;\n }\n tagRef.current?.style.setProperty('--background-color', `${colorToSet}`);\n }\n }, [\n transportIsSet,\n isContrast,\n backgroundColor,\n contrastBackgroundColor,\n errorBackgroundColor,\n alert,\n ]);\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 aria-label={`${ariaLabelForTranportIcon} ${children} ${\n alertIsSet ? alert : ''\n }`}\n role=\"img\"\n {...rest}\n >\n {IconWithAriaHidden}\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 <ValidationInfoFilledIcon\n aria-hidden\n className=\"eds-travel-tag__alert-info-icon\"\n />\n )}\n {alert === 'error' && (\n <ValidationErrorFilledIcon\n aria-hidden\n className=\"eds-travel-tag__alert-error-icon\"\n />\n )}\n {alert === 'warning' && (\n <ValidationExclamationCircleFilledIcon\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 { pattern } = getTransportStyle(transport);\n const isContrast = useContrast();\n const deCapitalizeTransport = transport.toLowerCase();\n\n const backgroundColor =\n 'var(--components-travel-travelleg-standard-' + deCapitalizeTransport + ')';\n const contrastBackgroundColor =\n 'var(--components-travel-travelleg-contrast-' + deCapitalizeTransport + ')';\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 { Icon } = getTransportStyle(transport);\n const deCapitalizeTransport = transport.toLowerCase();\n\n const backgroundColor =\n 'var(--components-travel-travelswitch-standard-backgroundtrue-' +\n deCapitalizeTransport +\n ')';\n const contrastBackgroundColor =\n 'var(--components-travel-travelswitch-contrast-backgroundtrue-' +\n deCapitalizeTransport +\n ')';\n\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","pattern","ariaLabel","BusIcon","PlaneIcon","HelicopterIcon","TramIcon","FunicularIcon","CablewayIcon","TaxiIcon","BicycleIcon","WalkIcon","TrainIcon","FerryIcon","CarferryIcon","MobilityIcon","Fragment","Error","TravelTag","children","alert","transport","label","labelPlacement","onClose","undefined","isContrast","useContrast","isClosable","transportIsSet","alertIsSet","tagRef","useRef","numberOfChildren","Children","count","ariaLabelForTranportIcon","deCapitalizeTransport","toLowerCase","IconWithAriaHidden","cloneElement","backgroundColor","contrastBackgroundColor","errorBackgroundColor","errorContrastBackgroundColor","errorContrastTextColor","errorTextColor","useEffect","colorToSet","textColorToSet","current","style","setProperty","TravelTagWithoutLabel","ref","role","onClick","type","CloseSmallIcon","inline","ValidationInfoFilledIcon","ValidationErrorFilledIcon","ValidationExclamationCircleFilledIcon","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';\n\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 errorBackgroundColor?: string;\n errorTextColor?: string;\n errorContrastTextColor?: string;\n errorContrastBackgroundColor?: 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 pattern: 'line',\n ariaLabel: 'T-bane',\n };\n case 'bus':\n case 'neutral':\n return {\n Icon: BusIcon,\n pattern: 'dashed',\n ariaLabel: 'Buss',\n };\n case 'plane':\n case 'air':\n return {\n Icon: PlaneIcon,\n pattern: 'line',\n ariaLabel: 'Fly',\n };\n case 'helicopter':\n return {\n Icon: HelicopterIcon,\n pattern: 'line',\n ariaLabel: 'Helikopter',\n };\n case 'tram':\n return {\n Icon: TramIcon,\n pattern: 'line',\n ariaLabel: 'Trikk',\n };\n case 'funicular':\n return {\n Icon: FunicularIcon,\n pattern: 'line',\n ariaLabel: 'Taubane',\n };\n case 'cableway':\n return {\n Icon: CablewayIcon,\n pattern: 'line',\n ariaLabel: 'Gondol',\n };\n case 'taxi':\n return {\n Icon: TaxiIcon,\n pattern: 'dashed',\n ariaLabel: 'Taxi',\n };\n case 'bicycle':\n case 'citybike':\n return {\n Icon: BicycleIcon,\n pattern: 'dashed',\n ariaLabel: 'Sykkel',\n };\n case 'walk':\n return {\n Icon: WalkIcon,\n pattern: 'dotted',\n ariaLabel: 'Gange',\n };\n case 'train':\n case 'rail':\n return {\n Icon: TrainIcon,\n pattern: 'line',\n ariaLabel: 'Tog',\n };\n case 'ferry':\n case 'water':\n return {\n Icon: FerryIcon,\n pattern: 'wave',\n ariaLabel: 'Ferge',\n };\n case 'carferry':\n return {\n Icon: CarferryIcon,\n pattern: 'wave',\n ariaLabel: 'Bilferge',\n };\n case 'mobility':\n return {\n Icon: MobilityIcon,\n pattern: 'line',\n ariaLabel: 'El-sparkesykkel',\n };\n case 'airportLinkBus':\n case 'airportlinkbus':\n return {\n Icon: BusIcon,\n pattern: 'dashed',\n ariaLabel: 'Flybuss',\n };\n case 'airportLinkRail':\n case 'airportlinkrail':\n return {\n Icon: TrainIcon,\n pattern: 'line',\n ariaLabel: 'Flytog',\n };\n case 'none':\n return {\n Icon: React.Fragment,\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, { cloneElement, useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoFilledIcon,\n ValidationErrorFilledIcon,\n ValidationExclamationCircleFilledIcon,\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, ariaLabel: ariaLabelForTranportIcon } =\n getTransportStyle(transport);\n const deCapitalizeTransport = transport.toLowerCase();\n const IconWithAriaHidden = cloneElement(<Icon />, { 'aria-hidden': 'true' });\n\n const backgroundColor =\n 'var(--components-travel-traveltag-standard-tagfill-' +\n deCapitalizeTransport +\n ')';\n const contrastBackgroundColor =\n 'var(--components-travel-traveltag-contrast-tagfill-' +\n deCapitalizeTransport +\n ')';\n // Error colors\n const errorBackgroundColor =\n 'var(--components-travel-traveltag-standard-tagfill-' +\n deCapitalizeTransport +\n '-cancled)';\n const errorContrastBackgroundColor =\n 'var(--components-travel-traveltag-contrast-tagfill-' +\n deCapitalizeTransport +\n '-cancled)';\n const errorContrastTextColor =\n 'var(--components-travel-traveltag-contrast-text-line-' +\n deCapitalizeTransport +\n '-cancled)';\n const errorTextColor =\n 'var(--components-travel-traveltag-standard-text-line-' +\n deCapitalizeTransport +\n '-cancled)';\n\n useEffect(() => {\n if (transportIsSet) {\n let colorToSet;\n let textColorToSet;\n // Walk has another icon/text color then the other transports\n if (transport === 'walk') {\n tagRef.current?.style.setProperty(\n '--text-color',\n 'var(--components-travel-traveltag-standard-icon-walk)',\n );\n }\n // Error\n if (alert === 'error') {\n colorToSet = isContrast\n ? errorContrastBackgroundColor\n : errorBackgroundColor;\n textColorToSet = isContrast ? errorContrastTextColor : errorTextColor;\n tagRef.current?.style.setProperty('--text-color', `${textColorToSet}`);\n } else {\n colorToSet = isContrast ? contrastBackgroundColor : backgroundColor;\n }\n tagRef.current?.style.setProperty('--background-color', `${colorToSet}`);\n }\n }, [\n transportIsSet,\n isContrast,\n backgroundColor,\n contrastBackgroundColor,\n errorBackgroundColor,\n alert,\n ]);\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 aria-label={`${ariaLabelForTranportIcon} ${children} ${\n alertIsSet ? alert : ''\n }`}\n role=\"img\"\n {...rest}\n >\n {IconWithAriaHidden}\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 <ValidationInfoFilledIcon\n aria-hidden\n className=\"eds-travel-tag__alert-info-icon\"\n />\n )}\n {alert === 'error' && (\n <ValidationErrorFilledIcon\n aria-hidden\n className=\"eds-travel-tag__alert-error-icon\"\n />\n )}\n {alert === 'warning' && (\n <ValidationExclamationCircleFilledIcon\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 { pattern } = getTransportStyle(transport);\n const isContrast = useContrast();\n const deCapitalizeTransport = transport.toLowerCase();\n\n const backgroundColor =\n 'var(--components-travel-travelleg-standard-' + deCapitalizeTransport + ')';\n const contrastBackgroundColor =\n 'var(--components-travel-travelleg-contrast-' + deCapitalizeTransport + ')';\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 { Icon } = getTransportStyle(transport);\n const deCapitalizeTransport = transport.toLowerCase();\n\n const backgroundColor =\n 'var(--components-travel-travelswitch-standard-backgroundtrue-' +\n deCapitalizeTransport +\n ')';\n const contrastBackgroundColor =\n 'var(--components-travel-travelswitch-contrast-backgroundtrue-' +\n deCapitalizeTransport +\n ')';\n\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","_ref","_ref$as","as","Element","from","to","_ref$size","size","className","noWrap","rest","_objectWithoutPropertiesLoose","_excluded","React","createElement","_extends","classNames","getTransportStyle","mode","Icon","MetroIcon","pattern","ariaLabel","BusIcon","PlaneIcon","HelicopterIcon","TramIcon","FunicularIcon","CablewayIcon","TaxiIcon","BicycleIcon","WalkIcon","TrainIcon","FerryIcon","CarferryIcon","MobilityIcon","Fragment","Error","TravelTag","_classNames","children","_ref$alert","alert","_ref$transport","transport","label","_ref$labelPlacement","labelPlacement","_ref$onClose","onClose","undefined","isContrast","useContrast","isClosable","transportIsSet","alertIsSet","tagRef","useRef","numberOfChildren","Children","count","_getTransportStyle","ariaLabelForTranportIcon","deCapitalizeTransport","toLowerCase","IconWithAriaHidden","cloneElement","backgroundColor","contrastBackgroundColor","errorBackgroundColor","errorContrastBackgroundColor","errorContrastTextColor","errorTextColor","useEffect","_tagRef$current3","colorToSet","textColorToSet","_tagRef$current","current","style","setProperty","_tagRef$current2","TravelTagWithoutLabel","ref","role","onClick","type","CloseSmallIcon","inline","ValidationInfoFilledIcon","ValidationErrorFilledIcon","ValidationExclamationCircleFilledIcon","Label","_classNames2","LegLine","color","_ref$direction","direction","LegBone","startColor","endColor","_ref$showStart","showStart","_ref$showStop","showStop","_ref$showLine","showLine","TravelLeg","TravelSwitch","Switch","contrastColor","icon","warnAboutMissingStyles"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@entur/utils"),a=require("react"),r=require("classnames"),t=require("@entur/icons"),n=require("@entur/layout"),l=require("@entur/form");function o(){return o=Object.assign?Object.assign.bind():function(e){for(var a=1;a<arguments.length;a++){var r=arguments[a];for(var t in r)Object.prototype.hasOwnProperty.call(r,t)&&(e[t]=r[t])}return e},o.apply(this,arguments)}function s(e,a){if(null==e)return{};var r,t,n={},l=Object.keys(e);for(t=0;t<l.length;t++)a.indexOf(r=l[t])>=0||(n[r]=e[r]);return n}var c=["as","from","to","size","className","noWrap"],i=function(e){switch(e){case"metro":return{Icon:t.MetroIcon,pattern:"line",ariaLabel:"T-bane"};case"bus":case"neutral":return{Icon:t.BusIcon,pattern:"dashed",ariaLabel:"Buss"};case"plane":case"air":return{Icon:t.PlaneIcon,pattern:"line",ariaLabel:"Fly"};case"helicopter":return{Icon:t.HelicopterIcon,pattern:"line",ariaLabel:"Helikopter"};case"tram":return{Icon:t.TramIcon,pattern:"line",ariaLabel:"Trikk"};case"funicular":return{Icon:t.FunicularIcon,pattern:"line",ariaLabel:"Taubane"};case"cableway":return{Icon:t.CablewayIcon,pattern:"line",ariaLabel:"Gondol"};case"taxi":return{Icon:t.TaxiIcon,pattern:"dashed",ariaLabel:"Taxi"};case"bicycle":case"citybike":return{Icon:t.BicycleIcon,pattern:"dashed",ariaLabel:"Sykkel"};case"walk":return{Icon:t.WalkIcon,pattern:"dotted",ariaLabel:"Gange"};case"train":case"rail":return{Icon:t.TrainIcon,pattern:"line",ariaLabel:"Tog"};case"ferry":case"water":return{Icon:t.FerryIcon,pattern:"wave",ariaLabel:"Ferge"};case"carferry":return{Icon:t.CarferryIcon,pattern:"wave",ariaLabel:"Bilferge"};case"mobility":return{Icon:t.MobilityIcon,pattern:"line",ariaLabel:"El-sparkesykkel"};case"airportLinkBus":case"airportlinkbus":return{Icon:t.BusIcon,pattern:"dashed",ariaLabel:"Flybuss"};case"airportLinkRail":case"airportlinkrail":return{Icon:t.TrainIcon,pattern:"line",ariaLabel:"Flytog"};case"none":return{Icon:a.Fragment,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.")}},d=["children","className","alert","transport","label","labelPlacement","onClose"],u=["color","direction","pattern","className"],v=function(e){var t,n=e.color,l=e.direction,c=void 0===l?"horizontal":l,i=e.pattern,d=e.className,v=s(e,u);return a.createElement("div",o({className:r("eds-leg-line",d,(t={},t["eds-leg-line--"+i]=i,t["eds-leg-line--"+c]=c,t)),style:{backgroundColor:n}},v))},p=["direction","pattern","color","startColor","endColor","showStart","showStop","showLine","className"],m=function(e){var t=e.direction,n=e.pattern,l=e.color,c=e.startColor,i=e.endColor,d=e.showStart,u=void 0===d||d,m=e.showStop,b=void 0===m||m,g=e.showLine,h=void 0===g||g,f=e.className,I=s(e,p);return a.createElement("div",o({className:r(f,"eds-leg-bone",[{"eds-leg-bone--vertical":"vertical"===t},{"eds-leg-bone--horizontal":"horizontal"===t}])},I),u&&a.createElement("div",{className:"eds-leg-bone__start",style:{backgroundColor:c||l}}),h&&a.createElement(v,{className:"eds-leg-bone__line",direction:t,color:l,pattern:n}),b&&a.createElement("div",{className:"eds-leg-bone__stop",style:{backgroundColor:i||l}}))},b=["className","transport","direction"],g=["className","children","labelPlacement","transport","size"];e.warnAboutMissingStyles("travel"),exports.LegBone=m,exports.LegLine=v,exports.TravelHeader=function(e){var t=e.as,n=void 0===t?"div":t,l=e.from,i=e.to,d=e.size,u=void 0===d?"large":d,v=e.className,p=e.noWrap,m=s(e,c);return a.createElement(n,o({className:r("eds-travel-header",v,{"eds-travel-header--large":"large"===u,"eds-travel-header--medium":"medium"===u,"eds-travel-header--no-wrap":p}),"aria-label":"Fra "+l+", til "+i},m),a.createElement("span",{className:"eds-travel-header__from"},l),a.createElement("span",{className:"eds-travel-header__to"},i))},exports.TravelLeg=function(e){var r=e.className,t=e.transport,l=e.direction,c=s(e,b),d=i(t).pattern,u=n.useContrast(),v=t.toLowerCase();return a.createElement(m,o({direction:l,pattern:d,color:u?"var(--components-travel-travelleg-contrast-"+v+")":"var(--components-travel-travelleg-standard-"+v+")",className:r},c))},exports.TravelSwitch=function(e){var r=e.className,t=e.children,n=e.labelPlacement,c=void 0===n?"right":n,d=e.transport,u=e.size,v=s(e,g),p=i(d).Icon,m=d.toLowerCase();return a.createElement(l.Switch,o({className:r,labelPlacement:c,color:"var(--components-travel-travelswitch-standard-backgroundtrue-"+m+")",contrastColor:"var(--components-travel-travelswitch-contrast-backgroundtrue-"+m+")",icon:a.createElement(p,null),size:u},v),t)},exports.TravelTag=function(e){var l,c=e.children,u=e.className,v=e.alert,p=void 0===v?"none":v,m=e.transport,b=void 0===m?"none":m,g=e.label,h=e.labelPlacement,f=void 0===h?"right":h,I=e.onClose,y=void 0===I?void 0:I,w=s(e,d),_=n.useContrast(),E=!!y,N="none"!==b,L="none"!==p,k=a.useRef(null),C=a.Children.count(c),x=i(b),P=x.Icon,T=x.ariaLabel,F=b.toLowerCase(),S=a.cloneElement(a.createElement(P,null),{"aria-hidden":"true"}),z="var(--components-travel-traveltag-standard-tagfill-"+F+")",B="var(--components-travel-traveltag-contrast-tagfill-"+F+")",O="var(--components-travel-traveltag-standard-tagfill-"+F+"-cancled)",q="var(--components-travel-traveltag-contrast-tagfill-"+F+"-cancled)",j="var(--components-travel-traveltag-contrast-text-line-"+F+"-cancled)",M="var(--components-travel-traveltag-standard-text-line-"+F+"-cancled)";a.useEffect((function(){var e,a,r,t;N&&("walk"===b&&(null==(r=k.current)||r.style.setProperty("--text-color","var(--components-travel-traveltag-standard-icon-walk)")),"error"===p?(a=_?q:O,null==(t=k.current)||t.style.setProperty("--text-color",""+(_?j:M))):a=_?B:z,null==(e=k.current)||e.style.setProperty("--background-color",""+a))}),[N,_,z,B,O,p]);var H,V=a.createElement("div",o({className:r("eds-travel-tag",{"eds-travel-tag--closable":E,"eds-travel-tag--alert":L,"eds-travel-tag--alert--error":"error"===p,"eds-travel-tag--transport":N,"eds-travel-tag--icon-and-text":C>1||N&&C>0,className:u}),ref:k,"aria-label":T+" "+c+" "+(L?p:""),role:"img"},w),S,c,E&&a.createElement("button",{onClick:y,type:"button",className:"eds-travel-tag__close-button"},a.createElement(t.CloseSmallIcon,{inline:!0})),L&&a.createElement("span",{className:"eds-travel-tag__alert"},"info"===p&&a.createElement(t.ValidationInfoFilledIcon,{"aria-hidden":!0,className:"eds-travel-tag__alert-info-icon"}),"error"===p&&a.createElement(t.ValidationErrorFilledIcon,{"aria-hidden":!0,className:"eds-travel-tag__alert-error-icon"}),"warning"===p&&a.createElement(t.ValidationExclamationCircleFilledIcon,{"aria-hidden":!0,className:"eds-travel-tag__alert-exclamation-icon"}))),W=a.createElement("div",{className:r("eds-travel-tag__label",(l={},l["eds-travel-tag__label--"+f]=g,l["eds-travel-tag__label--"+f+"--with-alert"]=g&&L,l))},g);return g?a.createElement("div",{className:r("eds-travel-tag__wrapper",(H={},H["eds-travel-tag__wrapper--label-position-"+f]=g,H))},V,W):V};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@entur/utils"),a=require("react"),r=require("classnames"),t=require("@entur/icons"),n=require("@entur/layout"),l=require("@entur/form");function o(){return o=Object.assign?Object.assign.bind():function(e){for(var a=1;a<arguments.length;a++){var r=arguments[a];for(var t in r)({}).hasOwnProperty.call(r,t)&&(e[t]=r[t])}return e},o.apply(null,arguments)}function s(e,a){if(null==e)return{};var r={};for(var t in e)if({}.hasOwnProperty.call(e,t)){if(a.includes(t))continue;r[t]=e[t]}return r}var c=["as","from","to","size","className","noWrap"],i=function(e){switch(e){case"metro":return{Icon:t.MetroIcon,pattern:"line",ariaLabel:"T-bane"};case"bus":case"neutral":return{Icon:t.BusIcon,pattern:"dashed",ariaLabel:"Buss"};case"plane":case"air":return{Icon:t.PlaneIcon,pattern:"line",ariaLabel:"Fly"};case"helicopter":return{Icon:t.HelicopterIcon,pattern:"line",ariaLabel:"Helikopter"};case"tram":return{Icon:t.TramIcon,pattern:"line",ariaLabel:"Trikk"};case"funicular":return{Icon:t.FunicularIcon,pattern:"line",ariaLabel:"Taubane"};case"cableway":return{Icon:t.CablewayIcon,pattern:"line",ariaLabel:"Gondol"};case"taxi":return{Icon:t.TaxiIcon,pattern:"dashed",ariaLabel:"Taxi"};case"bicycle":case"citybike":return{Icon:t.BicycleIcon,pattern:"dashed",ariaLabel:"Sykkel"};case"walk":return{Icon:t.WalkIcon,pattern:"dotted",ariaLabel:"Gange"};case"train":case"rail":return{Icon:t.TrainIcon,pattern:"line",ariaLabel:"Tog"};case"ferry":case"water":return{Icon:t.FerryIcon,pattern:"wave",ariaLabel:"Ferge"};case"carferry":return{Icon:t.CarferryIcon,pattern:"wave",ariaLabel:"Bilferge"};case"mobility":return{Icon:t.MobilityIcon,pattern:"line",ariaLabel:"El-sparkesykkel"};case"airportLinkBus":case"airportlinkbus":return{Icon:t.BusIcon,pattern:"dashed",ariaLabel:"Flybuss"};case"airportLinkRail":case"airportlinkrail":return{Icon:t.TrainIcon,pattern:"line",ariaLabel:"Flytog"};case"none":return{Icon:a.Fragment,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.")}},d=["children","className","alert","transport","label","labelPlacement","onClose"],u=["color","direction","pattern","className"],v=function(e){var t,n=e.color,l=e.direction,c=void 0===l?"horizontal":l,i=e.pattern,d=e.className,v=s(e,u);return a.createElement("div",o({className:r("eds-leg-line",d,(t={},t["eds-leg-line--"+i]=i,t["eds-leg-line--"+c]=c,t)),style:{backgroundColor:n}},v))},p=["direction","pattern","color","startColor","endColor","showStart","showStop","showLine","className"],m=function(e){var t=e.direction,n=e.pattern,l=e.color,c=e.startColor,i=e.endColor,d=e.showStart,u=void 0===d||d,m=e.showStop,b=void 0===m||m,g=e.showLine,h=void 0===g||g,f=e.className,I=s(e,p);return a.createElement("div",o({className:r(f,"eds-leg-bone",[{"eds-leg-bone--vertical":"vertical"===t},{"eds-leg-bone--horizontal":"horizontal"===t}])},I),u&&a.createElement("div",{className:"eds-leg-bone__start",style:{backgroundColor:c||l}}),h&&a.createElement(v,{className:"eds-leg-bone__line",direction:t,color:l,pattern:n}),b&&a.createElement("div",{className:"eds-leg-bone__stop",style:{backgroundColor:i||l}}))},b=["className","transport","direction"],g=["className","children","labelPlacement","transport","size"];e.warnAboutMissingStyles("travel"),exports.LegBone=m,exports.LegLine=v,exports.TravelHeader=function(e){var t=e.as,n=void 0===t?"div":t,l=e.from,i=e.to,d=e.size,u=void 0===d?"large":d,v=e.className,p=e.noWrap,m=s(e,c);return a.createElement(n,o({className:r("eds-travel-header",v,{"eds-travel-header--large":"large"===u,"eds-travel-header--medium":"medium"===u,"eds-travel-header--no-wrap":p}),"aria-label":"Fra "+l+", til "+i},m),a.createElement("span",{className:"eds-travel-header__from"},l),a.createElement("span",{className:"eds-travel-header__to"},i))},exports.TravelLeg=function(e){var r=e.className,t=e.transport,l=e.direction,c=s(e,b),d=i(t).pattern,u=n.useContrast(),v=t.toLowerCase();return a.createElement(m,o({direction:l,pattern:d,color:u?"var(--components-travel-travelleg-contrast-"+v+")":"var(--components-travel-travelleg-standard-"+v+")",className:r},c))},exports.TravelSwitch=function(e){var r=e.className,t=e.children,n=e.labelPlacement,c=void 0===n?"right":n,d=e.transport,u=e.size,v=s(e,g),p=i(d).Icon,m=d.toLowerCase();return a.createElement(l.Switch,o({className:r,labelPlacement:c,color:"var(--components-travel-travelswitch-standard-backgroundtrue-"+m+")",contrastColor:"var(--components-travel-travelswitch-contrast-backgroundtrue-"+m+")",icon:a.createElement(p,null),size:u},v),t)},exports.TravelTag=function(e){var l,c=e.children,u=e.className,v=e.alert,p=void 0===v?"none":v,m=e.transport,b=void 0===m?"none":m,g=e.label,h=e.labelPlacement,f=void 0===h?"right":h,I=e.onClose,y=void 0===I?void 0:I,w=s(e,d),_=n.useContrast(),E=!!y,N="none"!==b,L="none"!==p,k=a.useRef(null),C=a.Children.count(c),x=i(b),P=x.Icon,T=x.ariaLabel,F=b.toLowerCase(),S=a.cloneElement(a.createElement(P,null),{"aria-hidden":"true"}),z="var(--components-travel-traveltag-standard-tagfill-"+F+")",B="var(--components-travel-traveltag-contrast-tagfill-"+F+")",q="var(--components-travel-traveltag-standard-tagfill-"+F+"-cancled)",O="var(--components-travel-traveltag-contrast-tagfill-"+F+"-cancled)",M="var(--components-travel-traveltag-contrast-text-line-"+F+"-cancled)",j="var(--components-travel-traveltag-standard-text-line-"+F+"-cancled)";a.useEffect((function(){var e,a,r,t;N&&("walk"===b&&(null==(r=k.current)||r.style.setProperty("--text-color","var(--components-travel-traveltag-standard-icon-walk)")),"error"===p?(a=_?O:q,null==(t=k.current)||t.style.setProperty("--text-color",""+(_?M:j))):a=_?B:z,null==(e=k.current)||e.style.setProperty("--background-color",""+a))}),[N,_,z,B,q,p]);var H,V=a.createElement("div",o({className:r("eds-travel-tag",{"eds-travel-tag--closable":E,"eds-travel-tag--alert":L,"eds-travel-tag--alert--error":"error"===p,"eds-travel-tag--transport":N,"eds-travel-tag--icon-and-text":C>1||N&&C>0,className:u}),ref:k,"aria-label":T+" "+c+" "+(L?p:""),role:"img"},w),S,c,E&&a.createElement("button",{onClick:y,type:"button",className:"eds-travel-tag__close-button"},a.createElement(t.CloseSmallIcon,{inline:!0})),L&&a.createElement("span",{className:"eds-travel-tag__alert"},"info"===p&&a.createElement(t.ValidationInfoFilledIcon,{"aria-hidden":!0,className:"eds-travel-tag__alert-info-icon"}),"error"===p&&a.createElement(t.ValidationErrorFilledIcon,{"aria-hidden":!0,className:"eds-travel-tag__alert-error-icon"}),"warning"===p&&a.createElement(t.ValidationExclamationCircleFilledIcon,{"aria-hidden":!0,className:"eds-travel-tag__alert-exclamation-icon"}))),W=a.createElement("div",{className:r("eds-travel-tag__label",(l={},l["eds-travel-tag__label--"+f]=g,l["eds-travel-tag__label--"+f+"--with-alert"]=g&&L,l))},g);return g?a.createElement("div",{className:r("eds-travel-tag__wrapper",(H={},H["eds-travel-tag__wrapper--label-position-"+f]=g,H))},V,W):V};
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';\n\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 errorBackgroundColor?: string;\n errorTextColor?: string;\n errorContrastTextColor?: string;\n errorContrastBackgroundColor?: 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 pattern: 'line',\n ariaLabel: 'T-bane',\n };\n case 'bus':\n case 'neutral':\n return {\n Icon: BusIcon,\n pattern: 'dashed',\n ariaLabel: 'Buss',\n };\n case 'plane':\n case 'air':\n return {\n Icon: PlaneIcon,\n pattern: 'line',\n ariaLabel: 'Fly',\n };\n case 'helicopter':\n return {\n Icon: HelicopterIcon,\n pattern: 'line',\n ariaLabel: 'Helikopter',\n };\n case 'tram':\n return {\n Icon: TramIcon,\n pattern: 'line',\n ariaLabel: 'Trikk',\n };\n case 'funicular':\n return {\n Icon: FunicularIcon,\n pattern: 'line',\n ariaLabel: 'Taubane',\n };\n case 'cableway':\n return {\n Icon: CablewayIcon,\n pattern: 'line',\n ariaLabel: 'Gondol',\n };\n case 'taxi':\n return {\n Icon: TaxiIcon,\n pattern: 'dashed',\n ariaLabel: 'Taxi',\n };\n case 'bicycle':\n case 'citybike':\n return {\n Icon: BicycleIcon,\n pattern: 'dashed',\n ariaLabel: 'Sykkel',\n };\n case 'walk':\n return {\n Icon: WalkIcon,\n pattern: 'dotted',\n ariaLabel: 'Gange',\n };\n case 'train':\n case 'rail':\n return {\n Icon: TrainIcon,\n pattern: 'line',\n ariaLabel: 'Tog',\n };\n case 'ferry':\n case 'water':\n return {\n Icon: FerryIcon,\n pattern: 'wave',\n ariaLabel: 'Ferge',\n };\n case 'carferry':\n return {\n Icon: CarferryIcon,\n pattern: 'wave',\n ariaLabel: 'Bilferge',\n };\n case 'mobility':\n return {\n Icon: MobilityIcon,\n pattern: 'line',\n ariaLabel: 'El-sparkesykkel',\n };\n case 'airportLinkBus':\n case 'airportlinkbus':\n return {\n Icon: BusIcon,\n pattern: 'dashed',\n ariaLabel: 'Flybuss',\n };\n case 'airportLinkRail':\n case 'airportlinkrail':\n return {\n Icon: TrainIcon,\n pattern: 'line',\n ariaLabel: 'Flytog',\n };\n case 'none':\n return {\n Icon: React.Fragment,\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 { pattern } = getTransportStyle(transport);\n const isContrast = useContrast();\n const deCapitalizeTransport = transport.toLowerCase();\n\n const backgroundColor =\n 'var(--components-travel-travelleg-standard-' + deCapitalizeTransport + ')';\n const contrastBackgroundColor =\n 'var(--components-travel-travelleg-contrast-' + deCapitalizeTransport + ')';\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 { Icon } = getTransportStyle(transport);\n const deCapitalizeTransport = transport.toLowerCase();\n\n const backgroundColor =\n 'var(--components-travel-travelswitch-standard-backgroundtrue-' +\n deCapitalizeTransport +\n ')';\n const contrastBackgroundColor =\n 'var(--components-travel-travelswitch-contrast-backgroundtrue-' +\n deCapitalizeTransport +\n ')';\n\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, { cloneElement, useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoFilledIcon,\n ValidationErrorFilledIcon,\n ValidationExclamationCircleFilledIcon,\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, ariaLabel: ariaLabelForTranportIcon } =\n getTransportStyle(transport);\n const deCapitalizeTransport = transport.toLowerCase();\n const IconWithAriaHidden = cloneElement(<Icon />, { 'aria-hidden': 'true' });\n\n const backgroundColor =\n 'var(--components-travel-traveltag-standard-tagfill-' +\n deCapitalizeTransport +\n ')';\n const contrastBackgroundColor =\n 'var(--components-travel-traveltag-contrast-tagfill-' +\n deCapitalizeTransport +\n ')';\n // Error colors\n const errorBackgroundColor =\n 'var(--components-travel-traveltag-standard-tagfill-' +\n deCapitalizeTransport +\n '-cancled)';\n const errorContrastBackgroundColor =\n 'var(--components-travel-traveltag-contrast-tagfill-' +\n deCapitalizeTransport +\n '-cancled)';\n const errorContrastTextColor =\n 'var(--components-travel-traveltag-contrast-text-line-' +\n deCapitalizeTransport +\n '-cancled)';\n const errorTextColor =\n 'var(--components-travel-traveltag-standard-text-line-' +\n deCapitalizeTransport +\n '-cancled)';\n\n useEffect(() => {\n if (transportIsSet) {\n let colorToSet;\n let textColorToSet;\n // Walk has another icon/text color then the other transports\n if (transport === 'walk') {\n tagRef.current?.style.setProperty(\n '--text-color',\n 'var(--components-travel-traveltag-standard-icon-walk)',\n );\n }\n // Error\n if (alert === 'error') {\n colorToSet = isContrast\n ? errorContrastBackgroundColor\n : errorBackgroundColor;\n textColorToSet = isContrast ? errorContrastTextColor : errorTextColor;\n tagRef.current?.style.setProperty('--text-color', `${textColorToSet}`);\n } else {\n colorToSet = isContrast ? contrastBackgroundColor : backgroundColor;\n }\n tagRef.current?.style.setProperty('--background-color', `${colorToSet}`);\n }\n }, [\n transportIsSet,\n isContrast,\n backgroundColor,\n contrastBackgroundColor,\n errorBackgroundColor,\n alert,\n ]);\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 aria-label={`${ariaLabelForTranportIcon} ${children} ${\n alertIsSet ? alert : ''\n }`}\n role=\"img\"\n {...rest}\n >\n {IconWithAriaHidden}\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 <ValidationInfoFilledIcon\n aria-hidden\n className=\"eds-travel-tag__alert-info-icon\"\n />\n )}\n {alert === 'error' && (\n <ValidationErrorFilledIcon\n aria-hidden\n className=\"eds-travel-tag__alert-error-icon\"\n />\n )}\n {alert === 'warning' && (\n <ValidationExclamationCircleFilledIcon\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","pattern","ariaLabel","BusIcon","PlaneIcon","HelicopterIcon","TramIcon","FunicularIcon","CablewayIcon","TaxiIcon","BicycleIcon","WalkIcon","TrainIcon","FerryIcon","CarferryIcon","MobilityIcon","React","Fragment","Error","LegLine","_ref","_classNames","color","_ref$direction","direction","className","rest","_objectWithoutPropertiesLoose","_excluded","classNames","style","backgroundColor","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","transport","isContrast","useContrast","deCapitalizeTransport","toLowerCase","children","_ref$labelPlacement","labelPlacement","Switch","contrastColor","icon","_ref$alert","alert","_ref$transport","label","_ref$onClose","onClose","undefined","isClosable","transportIsSet","alertIsSet","tagRef","useRef","numberOfChildren","Children","count","ariaLabelForTranportIcon","IconWithAriaHidden","cloneElement","contrastBackgroundColor","errorBackgroundColor","errorContrastBackgroundColor","errorContrastTextColor","errorTextColor","useEffect","_tagRef$current3","colorToSet","_tagRef$current","_tagRef$current2","current","setProperty","textColorToSet","_classNames2","TravelTagWithoutLabel","ref","role","onClick","type","CloseSmallIcon","inline","ValidationInfoFilledIcon","ValidationErrorFilledIcon","ValidationExclamationCircleFilledIcon","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';\n\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 errorBackgroundColor?: string;\n errorTextColor?: string;\n errorContrastTextColor?: string;\n errorContrastBackgroundColor?: 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 pattern: 'line',\n ariaLabel: 'T-bane',\n };\n case 'bus':\n case 'neutral':\n return {\n Icon: BusIcon,\n pattern: 'dashed',\n ariaLabel: 'Buss',\n };\n case 'plane':\n case 'air':\n return {\n Icon: PlaneIcon,\n pattern: 'line',\n ariaLabel: 'Fly',\n };\n case 'helicopter':\n return {\n Icon: HelicopterIcon,\n pattern: 'line',\n ariaLabel: 'Helikopter',\n };\n case 'tram':\n return {\n Icon: TramIcon,\n pattern: 'line',\n ariaLabel: 'Trikk',\n };\n case 'funicular':\n return {\n Icon: FunicularIcon,\n pattern: 'line',\n ariaLabel: 'Taubane',\n };\n case 'cableway':\n return {\n Icon: CablewayIcon,\n pattern: 'line',\n ariaLabel: 'Gondol',\n };\n case 'taxi':\n return {\n Icon: TaxiIcon,\n pattern: 'dashed',\n ariaLabel: 'Taxi',\n };\n case 'bicycle':\n case 'citybike':\n return {\n Icon: BicycleIcon,\n pattern: 'dashed',\n ariaLabel: 'Sykkel',\n };\n case 'walk':\n return {\n Icon: WalkIcon,\n pattern: 'dotted',\n ariaLabel: 'Gange',\n };\n case 'train':\n case 'rail':\n return {\n Icon: TrainIcon,\n pattern: 'line',\n ariaLabel: 'Tog',\n };\n case 'ferry':\n case 'water':\n return {\n Icon: FerryIcon,\n pattern: 'wave',\n ariaLabel: 'Ferge',\n };\n case 'carferry':\n return {\n Icon: CarferryIcon,\n pattern: 'wave',\n ariaLabel: 'Bilferge',\n };\n case 'mobility':\n return {\n Icon: MobilityIcon,\n pattern: 'line',\n ariaLabel: 'El-sparkesykkel',\n };\n case 'airportLinkBus':\n case 'airportlinkbus':\n return {\n Icon: BusIcon,\n pattern: 'dashed',\n ariaLabel: 'Flybuss',\n };\n case 'airportLinkRail':\n case 'airportlinkrail':\n return {\n Icon: TrainIcon,\n pattern: 'line',\n ariaLabel: 'Flytog',\n };\n case 'none':\n return {\n Icon: React.Fragment,\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 { pattern } = getTransportStyle(transport);\n const isContrast = useContrast();\n const deCapitalizeTransport = transport.toLowerCase();\n\n const backgroundColor =\n 'var(--components-travel-travelleg-standard-' + deCapitalizeTransport + ')';\n const contrastBackgroundColor =\n 'var(--components-travel-travelleg-contrast-' + deCapitalizeTransport + ')';\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 { Icon } = getTransportStyle(transport);\n const deCapitalizeTransport = transport.toLowerCase();\n\n const backgroundColor =\n 'var(--components-travel-travelswitch-standard-backgroundtrue-' +\n deCapitalizeTransport +\n ')';\n const contrastBackgroundColor =\n 'var(--components-travel-travelswitch-contrast-backgroundtrue-' +\n deCapitalizeTransport +\n ')';\n\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, { cloneElement, useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoFilledIcon,\n ValidationErrorFilledIcon,\n ValidationExclamationCircleFilledIcon,\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, ariaLabel: ariaLabelForTranportIcon } =\n getTransportStyle(transport);\n const deCapitalizeTransport = transport.toLowerCase();\n const IconWithAriaHidden = cloneElement(<Icon />, { 'aria-hidden': 'true' });\n\n const backgroundColor =\n 'var(--components-travel-traveltag-standard-tagfill-' +\n deCapitalizeTransport +\n ')';\n const contrastBackgroundColor =\n 'var(--components-travel-traveltag-contrast-tagfill-' +\n deCapitalizeTransport +\n ')';\n // Error colors\n const errorBackgroundColor =\n 'var(--components-travel-traveltag-standard-tagfill-' +\n deCapitalizeTransport +\n '-cancled)';\n const errorContrastBackgroundColor =\n 'var(--components-travel-traveltag-contrast-tagfill-' +\n deCapitalizeTransport +\n '-cancled)';\n const errorContrastTextColor =\n 'var(--components-travel-traveltag-contrast-text-line-' +\n deCapitalizeTransport +\n '-cancled)';\n const errorTextColor =\n 'var(--components-travel-traveltag-standard-text-line-' +\n deCapitalizeTransport +\n '-cancled)';\n\n useEffect(() => {\n if (transportIsSet) {\n let colorToSet;\n let textColorToSet;\n // Walk has another icon/text color then the other transports\n if (transport === 'walk') {\n tagRef.current?.style.setProperty(\n '--text-color',\n 'var(--components-travel-traveltag-standard-icon-walk)',\n );\n }\n // Error\n if (alert === 'error') {\n colorToSet = isContrast\n ? errorContrastBackgroundColor\n : errorBackgroundColor;\n textColorToSet = isContrast ? errorContrastTextColor : errorTextColor;\n tagRef.current?.style.setProperty('--text-color', `${textColorToSet}`);\n } else {\n colorToSet = isContrast ? contrastBackgroundColor : backgroundColor;\n }\n tagRef.current?.style.setProperty('--background-color', `${colorToSet}`);\n }\n }, [\n transportIsSet,\n isContrast,\n backgroundColor,\n contrastBackgroundColor,\n errorBackgroundColor,\n alert,\n ]);\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 aria-label={`${ariaLabelForTranportIcon} ${children} ${\n alertIsSet ? alert : ''\n }`}\n role=\"img\"\n {...rest}\n >\n {IconWithAriaHidden}\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 <ValidationInfoFilledIcon\n aria-hidden\n className=\"eds-travel-tag__alert-info-icon\"\n />\n )}\n {alert === 'error' && (\n <ValidationErrorFilledIcon\n aria-hidden\n className=\"eds-travel-tag__alert-error-icon\"\n />\n )}\n {alert === 'warning' && (\n <ValidationExclamationCircleFilledIcon\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","pattern","ariaLabel","BusIcon","PlaneIcon","HelicopterIcon","TramIcon","FunicularIcon","CablewayIcon","TaxiIcon","BicycleIcon","WalkIcon","TrainIcon","FerryIcon","CarferryIcon","MobilityIcon","React","Fragment","Error","LegLine","_ref","_classNames","color","_ref$direction","direction","className","rest","_objectWithoutPropertiesLoose","_excluded","classNames","style","backgroundColor","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","transport","isContrast","useContrast","deCapitalizeTransport","toLowerCase","children","_ref$labelPlacement","labelPlacement","Switch","contrastColor","icon","_ref$alert","alert","_ref$transport","label","_ref$onClose","onClose","undefined","isClosable","transportIsSet","alertIsSet","tagRef","useRef","numberOfChildren","Children","count","_getTransportStyle","ariaLabelForTranportIcon","IconWithAriaHidden","cloneElement","contrastBackgroundColor","errorBackgroundColor","errorContrastBackgroundColor","errorContrastTextColor","errorTextColor","useEffect","_tagRef$current3","colorToSet","_tagRef$current","_tagRef$current2","current","setProperty","_classNames2","TravelTagWithoutLabel","ref","role","onClick","type","CloseSmallIcon","inline","ValidationInfoFilledIcon","ValidationErrorFilledIcon","ValidationExclamationCircleFilledIcon","Label"],"mappings":"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"}
@@ -6,30 +6,22 @@ import { useContrast } from '@entur/layout';
6
6
  import { Switch } from '@entur/form';
7
7
 
8
8
  function _extends() {
9
- _extends = Object.assign ? Object.assign.bind() : function (target) {
10
- for (var i = 1; i < arguments.length; i++) {
11
- var source = arguments[i];
12
- for (var key in source) {
13
- if (Object.prototype.hasOwnProperty.call(source, key)) {
14
- target[key] = source[key];
15
- }
16
- }
9
+ return _extends = Object.assign ? Object.assign.bind() : function (n) {
10
+ for (var e = 1; e < arguments.length; e++) {
11
+ var t = arguments[e];
12
+ for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
17
13
  }
18
- return target;
19
- };
20
- return _extends.apply(this, arguments);
14
+ return n;
15
+ }, _extends.apply(null, arguments);
21
16
  }
22
- function _objectWithoutPropertiesLoose(source, excluded) {
23
- if (source == null) return {};
24
- var target = {};
25
- var sourceKeys = Object.keys(source);
26
- var key, i;
27
- for (i = 0; i < sourceKeys.length; i++) {
28
- key = sourceKeys[i];
29
- if (excluded.indexOf(key) >= 0) continue;
30
- target[key] = source[key];
17
+ function _objectWithoutPropertiesLoose(r, e) {
18
+ if (null == r) return {};
19
+ var t = {};
20
+ for (var n in r) if ({}.hasOwnProperty.call(r, n)) {
21
+ if (e.includes(n)) continue;
22
+ t[n] = r[n];
31
23
  }
32
- return target;
24
+ return t;
33
25
  }
34
26
 
35
27
  var _excluded$5 = ["as", "from", "to", "size", "className", "noWrap"];
@@ -224,18 +216,18 @@ var TravelTag = function TravelTag(_ref) {
224
216
  // Walk has another icon/text color then the other transports
225
217
  if (transport === 'walk') {
226
218
  var _tagRef$current;
227
- (_tagRef$current = tagRef.current) == null ? void 0 : _tagRef$current.style.setProperty('--text-color', 'var(--components-travel-traveltag-standard-icon-walk)');
219
+ (_tagRef$current = tagRef.current) == null || _tagRef$current.style.setProperty('--text-color', 'var(--components-travel-traveltag-standard-icon-walk)');
228
220
  }
229
221
  // Error
230
222
  if (alert === 'error') {
231
223
  var _tagRef$current2;
232
224
  colorToSet = isContrast ? errorContrastBackgroundColor : errorBackgroundColor;
233
225
  textColorToSet = isContrast ? errorContrastTextColor : errorTextColor;
234
- (_tagRef$current2 = tagRef.current) == null ? void 0 : _tagRef$current2.style.setProperty('--text-color', "" + textColorToSet);
226
+ (_tagRef$current2 = tagRef.current) == null || _tagRef$current2.style.setProperty('--text-color', "" + textColorToSet);
235
227
  } else {
236
228
  colorToSet = isContrast ? contrastBackgroundColor : backgroundColor;
237
229
  }
238
- (_tagRef$current3 = tagRef.current) == null ? void 0 : _tagRef$current3.style.setProperty('--background-color', "" + colorToSet);
230
+ (_tagRef$current3 = tagRef.current) == null || _tagRef$current3.style.setProperty('--background-color', "" + colorToSet);
239
231
  }
240
232
  }, [transportIsSet, isContrast, backgroundColor, contrastBackgroundColor, errorBackgroundColor, alert]);
241
233
  var TravelTagWithoutLabel = React.createElement("div", _extends({
@@ -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';\n\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 errorBackgroundColor?: string;\n errorTextColor?: string;\n errorContrastTextColor?: string;\n errorContrastBackgroundColor?: 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 pattern: 'line',\n ariaLabel: 'T-bane',\n };\n case 'bus':\n case 'neutral':\n return {\n Icon: BusIcon,\n pattern: 'dashed',\n ariaLabel: 'Buss',\n };\n case 'plane':\n case 'air':\n return {\n Icon: PlaneIcon,\n pattern: 'line',\n ariaLabel: 'Fly',\n };\n case 'helicopter':\n return {\n Icon: HelicopterIcon,\n pattern: 'line',\n ariaLabel: 'Helikopter',\n };\n case 'tram':\n return {\n Icon: TramIcon,\n pattern: 'line',\n ariaLabel: 'Trikk',\n };\n case 'funicular':\n return {\n Icon: FunicularIcon,\n pattern: 'line',\n ariaLabel: 'Taubane',\n };\n case 'cableway':\n return {\n Icon: CablewayIcon,\n pattern: 'line',\n ariaLabel: 'Gondol',\n };\n case 'taxi':\n return {\n Icon: TaxiIcon,\n pattern: 'dashed',\n ariaLabel: 'Taxi',\n };\n case 'bicycle':\n case 'citybike':\n return {\n Icon: BicycleIcon,\n pattern: 'dashed',\n ariaLabel: 'Sykkel',\n };\n case 'walk':\n return {\n Icon: WalkIcon,\n pattern: 'dotted',\n ariaLabel: 'Gange',\n };\n case 'train':\n case 'rail':\n return {\n Icon: TrainIcon,\n pattern: 'line',\n ariaLabel: 'Tog',\n };\n case 'ferry':\n case 'water':\n return {\n Icon: FerryIcon,\n pattern: 'wave',\n ariaLabel: 'Ferge',\n };\n case 'carferry':\n return {\n Icon: CarferryIcon,\n pattern: 'wave',\n ariaLabel: 'Bilferge',\n };\n case 'mobility':\n return {\n Icon: MobilityIcon,\n pattern: 'line',\n ariaLabel: 'El-sparkesykkel',\n };\n case 'airportLinkBus':\n case 'airportlinkbus':\n return {\n Icon: BusIcon,\n pattern: 'dashed',\n ariaLabel: 'Flybuss',\n };\n case 'airportLinkRail':\n case 'airportlinkrail':\n return {\n Icon: TrainIcon,\n pattern: 'line',\n ariaLabel: 'Flytog',\n };\n case 'none':\n return {\n Icon: React.Fragment,\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, { cloneElement, useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoFilledIcon,\n ValidationErrorFilledIcon,\n ValidationExclamationCircleFilledIcon,\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, ariaLabel: ariaLabelForTranportIcon } =\n getTransportStyle(transport);\n const deCapitalizeTransport = transport.toLowerCase();\n const IconWithAriaHidden = cloneElement(<Icon />, { 'aria-hidden': 'true' });\n\n const backgroundColor =\n 'var(--components-travel-traveltag-standard-tagfill-' +\n deCapitalizeTransport +\n ')';\n const contrastBackgroundColor =\n 'var(--components-travel-traveltag-contrast-tagfill-' +\n deCapitalizeTransport +\n ')';\n // Error colors\n const errorBackgroundColor =\n 'var(--components-travel-traveltag-standard-tagfill-' +\n deCapitalizeTransport +\n '-cancled)';\n const errorContrastBackgroundColor =\n 'var(--components-travel-traveltag-contrast-tagfill-' +\n deCapitalizeTransport +\n '-cancled)';\n const errorContrastTextColor =\n 'var(--components-travel-traveltag-contrast-text-line-' +\n deCapitalizeTransport +\n '-cancled)';\n const errorTextColor =\n 'var(--components-travel-traveltag-standard-text-line-' +\n deCapitalizeTransport +\n '-cancled)';\n\n useEffect(() => {\n if (transportIsSet) {\n let colorToSet;\n let textColorToSet;\n // Walk has another icon/text color then the other transports\n if (transport === 'walk') {\n tagRef.current?.style.setProperty(\n '--text-color',\n 'var(--components-travel-traveltag-standard-icon-walk)',\n );\n }\n // Error\n if (alert === 'error') {\n colorToSet = isContrast\n ? errorContrastBackgroundColor\n : errorBackgroundColor;\n textColorToSet = isContrast ? errorContrastTextColor : errorTextColor;\n tagRef.current?.style.setProperty('--text-color', `${textColorToSet}`);\n } else {\n colorToSet = isContrast ? contrastBackgroundColor : backgroundColor;\n }\n tagRef.current?.style.setProperty('--background-color', `${colorToSet}`);\n }\n }, [\n transportIsSet,\n isContrast,\n backgroundColor,\n contrastBackgroundColor,\n errorBackgroundColor,\n alert,\n ]);\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 aria-label={`${ariaLabelForTranportIcon} ${children} ${\n alertIsSet ? alert : ''\n }`}\n role=\"img\"\n {...rest}\n >\n {IconWithAriaHidden}\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 <ValidationInfoFilledIcon\n aria-hidden\n className=\"eds-travel-tag__alert-info-icon\"\n />\n )}\n {alert === 'error' && (\n <ValidationErrorFilledIcon\n aria-hidden\n className=\"eds-travel-tag__alert-error-icon\"\n />\n )}\n {alert === 'warning' && (\n <ValidationExclamationCircleFilledIcon\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 { pattern } = getTransportStyle(transport);\n const isContrast = useContrast();\n const deCapitalizeTransport = transport.toLowerCase();\n\n const backgroundColor =\n 'var(--components-travel-travelleg-standard-' + deCapitalizeTransport + ')';\n const contrastBackgroundColor =\n 'var(--components-travel-travelleg-contrast-' + deCapitalizeTransport + ')';\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 { Icon } = getTransportStyle(transport);\n const deCapitalizeTransport = transport.toLowerCase();\n\n const backgroundColor =\n 'var(--components-travel-travelswitch-standard-backgroundtrue-' +\n deCapitalizeTransport +\n ')';\n const contrastBackgroundColor =\n 'var(--components-travel-travelswitch-contrast-backgroundtrue-' +\n deCapitalizeTransport +\n ')';\n\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","pattern","ariaLabel","BusIcon","PlaneIcon","HelicopterIcon","TramIcon","FunicularIcon","CablewayIcon","TaxiIcon","BicycleIcon","WalkIcon","TrainIcon","FerryIcon","CarferryIcon","MobilityIcon","Fragment","Error","TravelTag","children","alert","transport","label","labelPlacement","onClose","undefined","isContrast","useContrast","isClosable","transportIsSet","alertIsSet","tagRef","useRef","numberOfChildren","Children","count","ariaLabelForTranportIcon","deCapitalizeTransport","toLowerCase","IconWithAriaHidden","cloneElement","backgroundColor","contrastBackgroundColor","errorBackgroundColor","errorContrastBackgroundColor","errorContrastTextColor","errorTextColor","useEffect","colorToSet","textColorToSet","current","style","setProperty","TravelTagWithoutLabel","ref","role","onClick","type","CloseSmallIcon","inline","ValidationInfoFilledIcon","ValidationErrorFilledIcon","ValidationExclamationCircleFilledIcon","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';\n\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 errorBackgroundColor?: string;\n errorTextColor?: string;\n errorContrastTextColor?: string;\n errorContrastBackgroundColor?: 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 pattern: 'line',\n ariaLabel: 'T-bane',\n };\n case 'bus':\n case 'neutral':\n return {\n Icon: BusIcon,\n pattern: 'dashed',\n ariaLabel: 'Buss',\n };\n case 'plane':\n case 'air':\n return {\n Icon: PlaneIcon,\n pattern: 'line',\n ariaLabel: 'Fly',\n };\n case 'helicopter':\n return {\n Icon: HelicopterIcon,\n pattern: 'line',\n ariaLabel: 'Helikopter',\n };\n case 'tram':\n return {\n Icon: TramIcon,\n pattern: 'line',\n ariaLabel: 'Trikk',\n };\n case 'funicular':\n return {\n Icon: FunicularIcon,\n pattern: 'line',\n ariaLabel: 'Taubane',\n };\n case 'cableway':\n return {\n Icon: CablewayIcon,\n pattern: 'line',\n ariaLabel: 'Gondol',\n };\n case 'taxi':\n return {\n Icon: TaxiIcon,\n pattern: 'dashed',\n ariaLabel: 'Taxi',\n };\n case 'bicycle':\n case 'citybike':\n return {\n Icon: BicycleIcon,\n pattern: 'dashed',\n ariaLabel: 'Sykkel',\n };\n case 'walk':\n return {\n Icon: WalkIcon,\n pattern: 'dotted',\n ariaLabel: 'Gange',\n };\n case 'train':\n case 'rail':\n return {\n Icon: TrainIcon,\n pattern: 'line',\n ariaLabel: 'Tog',\n };\n case 'ferry':\n case 'water':\n return {\n Icon: FerryIcon,\n pattern: 'wave',\n ariaLabel: 'Ferge',\n };\n case 'carferry':\n return {\n Icon: CarferryIcon,\n pattern: 'wave',\n ariaLabel: 'Bilferge',\n };\n case 'mobility':\n return {\n Icon: MobilityIcon,\n pattern: 'line',\n ariaLabel: 'El-sparkesykkel',\n };\n case 'airportLinkBus':\n case 'airportlinkbus':\n return {\n Icon: BusIcon,\n pattern: 'dashed',\n ariaLabel: 'Flybuss',\n };\n case 'airportLinkRail':\n case 'airportlinkrail':\n return {\n Icon: TrainIcon,\n pattern: 'line',\n ariaLabel: 'Flytog',\n };\n case 'none':\n return {\n Icon: React.Fragment,\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, { cloneElement, useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport {\n CloseSmallIcon,\n ValidationInfoFilledIcon,\n ValidationErrorFilledIcon,\n ValidationExclamationCircleFilledIcon,\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, ariaLabel: ariaLabelForTranportIcon } =\n getTransportStyle(transport);\n const deCapitalizeTransport = transport.toLowerCase();\n const IconWithAriaHidden = cloneElement(<Icon />, { 'aria-hidden': 'true' });\n\n const backgroundColor =\n 'var(--components-travel-traveltag-standard-tagfill-' +\n deCapitalizeTransport +\n ')';\n const contrastBackgroundColor =\n 'var(--components-travel-traveltag-contrast-tagfill-' +\n deCapitalizeTransport +\n ')';\n // Error colors\n const errorBackgroundColor =\n 'var(--components-travel-traveltag-standard-tagfill-' +\n deCapitalizeTransport +\n '-cancled)';\n const errorContrastBackgroundColor =\n 'var(--components-travel-traveltag-contrast-tagfill-' +\n deCapitalizeTransport +\n '-cancled)';\n const errorContrastTextColor =\n 'var(--components-travel-traveltag-contrast-text-line-' +\n deCapitalizeTransport +\n '-cancled)';\n const errorTextColor =\n 'var(--components-travel-traveltag-standard-text-line-' +\n deCapitalizeTransport +\n '-cancled)';\n\n useEffect(() => {\n if (transportIsSet) {\n let colorToSet;\n let textColorToSet;\n // Walk has another icon/text color then the other transports\n if (transport === 'walk') {\n tagRef.current?.style.setProperty(\n '--text-color',\n 'var(--components-travel-traveltag-standard-icon-walk)',\n );\n }\n // Error\n if (alert === 'error') {\n colorToSet = isContrast\n ? errorContrastBackgroundColor\n : errorBackgroundColor;\n textColorToSet = isContrast ? errorContrastTextColor : errorTextColor;\n tagRef.current?.style.setProperty('--text-color', `${textColorToSet}`);\n } else {\n colorToSet = isContrast ? contrastBackgroundColor : backgroundColor;\n }\n tagRef.current?.style.setProperty('--background-color', `${colorToSet}`);\n }\n }, [\n transportIsSet,\n isContrast,\n backgroundColor,\n contrastBackgroundColor,\n errorBackgroundColor,\n alert,\n ]);\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 aria-label={`${ariaLabelForTranportIcon} ${children} ${\n alertIsSet ? alert : ''\n }`}\n role=\"img\"\n {...rest}\n >\n {IconWithAriaHidden}\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 <ValidationInfoFilledIcon\n aria-hidden\n className=\"eds-travel-tag__alert-info-icon\"\n />\n )}\n {alert === 'error' && (\n <ValidationErrorFilledIcon\n aria-hidden\n className=\"eds-travel-tag__alert-error-icon\"\n />\n )}\n {alert === 'warning' && (\n <ValidationExclamationCircleFilledIcon\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 { pattern } = getTransportStyle(transport);\n const isContrast = useContrast();\n const deCapitalizeTransport = transport.toLowerCase();\n\n const backgroundColor =\n 'var(--components-travel-travelleg-standard-' + deCapitalizeTransport + ')';\n const contrastBackgroundColor =\n 'var(--components-travel-travelleg-contrast-' + deCapitalizeTransport + ')';\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 { Icon } = getTransportStyle(transport);\n const deCapitalizeTransport = transport.toLowerCase();\n\n const backgroundColor =\n 'var(--components-travel-travelswitch-standard-backgroundtrue-' +\n deCapitalizeTransport +\n ')';\n const contrastBackgroundColor =\n 'var(--components-travel-travelswitch-contrast-backgroundtrue-' +\n deCapitalizeTransport +\n ')';\n\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","_ref","_ref$as","as","Element","from","to","_ref$size","size","className","noWrap","rest","_objectWithoutPropertiesLoose","_excluded","React","createElement","_extends","classNames","getTransportStyle","mode","Icon","MetroIcon","pattern","ariaLabel","BusIcon","PlaneIcon","HelicopterIcon","TramIcon","FunicularIcon","CablewayIcon","TaxiIcon","BicycleIcon","WalkIcon","TrainIcon","FerryIcon","CarferryIcon","MobilityIcon","Fragment","Error","TravelTag","_classNames","children","_ref$alert","alert","_ref$transport","transport","label","_ref$labelPlacement","labelPlacement","_ref$onClose","onClose","undefined","isContrast","useContrast","isClosable","transportIsSet","alertIsSet","tagRef","useRef","numberOfChildren","Children","count","_getTransportStyle","ariaLabelForTranportIcon","deCapitalizeTransport","toLowerCase","IconWithAriaHidden","cloneElement","backgroundColor","contrastBackgroundColor","errorBackgroundColor","errorContrastBackgroundColor","errorContrastTextColor","errorTextColor","useEffect","_tagRef$current3","colorToSet","textColorToSet","_tagRef$current","current","style","setProperty","_tagRef$current2","TravelTagWithoutLabel","ref","role","onClick","type","CloseSmallIcon","inline","ValidationInfoFilledIcon","ValidationErrorFilledIcon","ValidationExclamationCircleFilledIcon","Label","_classNames2","LegLine","color","_ref$direction","direction","LegBone","startColor","endColor","_ref$showStart","showStart","_ref$showStop","showStop","_ref$showLine","showLine","TravelLeg","TravelSwitch","Switch","contrastColor","icon","warnAboutMissingStyles"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@entur/travel",
3
- "version": "6.2.12",
3
+ "version": "6.2.13-RC.0",
4
4
  "license": "EUPL-1.2",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/travel.esm.js",
@@ -27,12 +27,15 @@
27
27
  "react-dom": ">=16.8.0"
28
28
  },
29
29
  "dependencies": {
30
- "@entur/form": "^8.1.8",
31
- "@entur/icons": "^7.5.0",
32
- "@entur/layout": "^2.3.20",
33
- "@entur/tokens": "^3.17.3",
34
- "@entur/utils": "^0.12.1",
30
+ "@entur/form": "^8.1.9-RC.0",
31
+ "@entur/icons": "^7.5.1-RC.0",
32
+ "@entur/layout": "^2.3.21-RC.0",
33
+ "@entur/tokens": "^3.17.4-RC.0",
34
+ "@entur/utils": "^0.12.2-RC.0",
35
35
  "classnames": "^2.3.1"
36
36
  },
37
- "gitHead": "5c9836f2bcab799e31cc52b6fe72c6e198947a71"
37
+ "devDependencies": {
38
+ "dts-cli": "2.0.5"
39
+ },
40
+ "gitHead": "d7913682a41ade219cbd4dfc6e45060152c7fa0a"
38
41
  }