@helsenorge/designsystem-react 6.0.1 → 6.1.2

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.
Files changed (81) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/README.md +2 -1
  3. package/components/Button/Button.d.ts.map +1 -1
  4. package/components/Button/Button.js +54 -57
  5. package/components/Button/Button.js.map +1 -1
  6. package/components/Dropdown/Dropdown.js +20 -20
  7. package/components/Dropdown/Dropdown.js.map +1 -1
  8. package/components/Dropdown/styles.module.scss +5 -2
  9. package/components/Icons/IconNames.d.ts +1 -0
  10. package/components/Icons/IconNames.d.ts.map +1 -1
  11. package/components/Icons/IconNames.js.map +1 -1
  12. package/components/Illustration/Illustration.d.ts +20 -3
  13. package/components/Illustration/Illustration.d.ts.map +1 -1
  14. package/components/Illustration/Illustration.js +38 -0
  15. package/components/Illustration/Illustration.js.map +1 -0
  16. package/components/Illustration/index.d.ts +2 -0
  17. package/components/Illustration/index.d.ts.map +1 -1
  18. package/components/Illustration/index.js +6 -1
  19. package/components/Illustration/index.js.map +1 -1
  20. package/components/Illustration/utils.d.ts +9 -0
  21. package/components/Illustration/utils.d.ts.map +1 -0
  22. package/components/Illustration/utils.js +5 -0
  23. package/components/Illustration/utils.js.map +1 -0
  24. package/components/Illustrations/Doctor.d.ts +9 -0
  25. package/components/Illustrations/Doctor.d.ts.map +1 -0
  26. package/components/Illustrations/Doctor.js +9 -0
  27. package/components/Illustrations/Doctor.js.map +1 -0
  28. package/components/Illustrations/DoctorMedium.d.ts +5 -0
  29. package/components/Illustrations/DoctorMedium.d.ts.map +1 -0
  30. package/components/Illustrations/DoctorMedium.js +64 -0
  31. package/components/Illustrations/DoctorMedium.js.map +1 -0
  32. package/components/Illustrations/DoctorSmall.d.ts +5 -0
  33. package/components/Illustrations/DoctorSmall.d.ts.map +1 -0
  34. package/components/Illustrations/DoctorSmall.js +60 -0
  35. package/components/Illustrations/DoctorSmall.js.map +1 -0
  36. package/components/Illustrations/HealthcarePersonnel.d.ts +5 -0
  37. package/components/Illustrations/HealthcarePersonnel.d.ts.map +1 -0
  38. package/components/Illustrations/HealthcarePersonnel.js +9 -0
  39. package/components/Illustrations/HealthcarePersonnel.js.map +1 -0
  40. package/components/Illustrations/HealthcarePersonnelMedium.d.ts +5 -0
  41. package/components/Illustrations/HealthcarePersonnelMedium.d.ts.map +1 -0
  42. package/components/Illustrations/HealthcarePersonnelMedium.js +198 -0
  43. package/components/Illustrations/HealthcarePersonnelMedium.js.map +1 -0
  44. package/components/Illustrations/HealthcarePersonnelSmall.d.ts +5 -0
  45. package/components/Illustrations/HealthcarePersonnelSmall.d.ts.map +1 -0
  46. package/components/Illustrations/HealthcarePersonnelSmall.js +187 -0
  47. package/components/Illustrations/HealthcarePersonnelSmall.js.map +1 -0
  48. package/components/Illustrations/IllustrationNames.d.ts +10 -0
  49. package/components/Illustrations/IllustrationNames.d.ts.map +1 -0
  50. package/components/Illustrations/IllustrationNames.js +9 -0
  51. package/components/Illustrations/IllustrationNames.js.map +1 -0
  52. package/components/Input/Input.js +1 -1
  53. package/components/Input/Input.js.map +1 -1
  54. package/components/Input/styles.module.scss +8 -0
  55. package/components/LazyIcon/LazyIcon.d.ts.map +1 -1
  56. package/components/LazyIcon/LazyIcon.js +11 -10
  57. package/components/LazyIcon/LazyIcon.js.map +1 -1
  58. package/components/LazyIcon/utils.d.ts +2 -0
  59. package/components/LazyIcon/utils.d.ts.map +1 -0
  60. package/components/LazyIcon/utils.js +5 -0
  61. package/components/LazyIcon/utils.js.map +1 -0
  62. package/components/LazyIllustration/LazyIllustration.d.ts +10 -0
  63. package/components/LazyIllustration/LazyIllustration.d.ts.map +1 -0
  64. package/components/LazyIllustration/LazyIllustration.js +35 -0
  65. package/components/LazyIllustration/LazyIllustration.js.map +1 -0
  66. package/components/LazyIllustration/index.d.ts +4 -0
  67. package/components/LazyIllustration/index.d.ts.map +1 -0
  68. package/components/LazyIllustration/index.js +8 -0
  69. package/components/LazyIllustration/index.js.map +1 -0
  70. package/components/PromoPanel/PromoPanel.d.ts +1 -2
  71. package/components/PromoPanel/PromoPanel.d.ts.map +1 -1
  72. package/components/PromoPanel/PromoPanel.js +30 -21
  73. package/components/PromoPanel/PromoPanel.js.map +1 -1
  74. package/components/PromoPanel/styles.module.scss +0 -11
  75. package/components/Select/styles.module.scss +4 -3
  76. package/constants.d.ts +1 -0
  77. package/constants.d.ts.map +1 -1
  78. package/constants.js +1 -1
  79. package/constants.js.map +1 -1
  80. package/package.json +1 -1
  81. package/scss/_input.scss +8 -7
@@ -1 +1 @@
1
- {"version":3,"file":"Input.js","sources":["../../../src/components/Input/Input.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\n\nimport cn from 'classnames';\n\nimport { FormMode, FormSize, AnalyticsId, AVERAGE_CHARACTER_WIDTH_PX } from '../../constants';\nimport { Breakpoint, useBreakpoint } from '../../hooks/useBreakpoint';\nimport { useUuid } from '../../hooks/useUuid';\nimport { getColor } from '../../theme/currys';\nimport ErrorWrapper from '../ErrorWrapper';\nimport Icon, { IconSize, SvgIcon } from '../Icon';\nimport { IconName } from '../Icons/IconNames';\nimport { renderLabel } from '../Label';\nimport LazyIcon from '../LazyIcon';\nimport MaxCharacters from '../MaxCharacters/MaxCharacters';\n\nimport styles from './styles.module.scss';\n\nexport interface InputProps\n extends Pick<\n React.InputHTMLAttributes<HTMLInputElement>,\n | 'disabled'\n | 'readOnly'\n | 'autoComplete'\n | 'name'\n | 'placeholder'\n | 'defaultValue'\n | 'required'\n | 'value'\n | 'min'\n | 'max'\n | 'aria-describedby'\n | 'aria-labelledby'\n | 'onBlur'\n | 'onClick'\n | 'onChange'\n | 'onFocus'\n | 'onKeyDown'\n | 'autoFocus'\n > {\n /** The number at which the input field starts when you increment or decrement it */\n baseIncrementValue?: number;\n /** Adds custom classes to the element. */\n className?: string;\n /** HMTL Input type */\n type?: keyof typeof InputTypes;\n /** input id */\n inputId?: string;\n /** Width of input field in characters (approximate) */\n width?: number;\n /** If true, the component will be transparent. */\n transparent?: boolean;\n /** Icon to be displayed next to the input field */\n icon?: SvgIcon | IconName;\n /** Places the icon to the right */\n iconRight?: boolean;\n /** Ref that is placed on the inputWrapper */\n inputWrapperRef?: React.RefObject<HTMLDivElement>;\n /** Changes the color profile of the input */\n mode?: keyof typeof FormMode;\n /** Changes the visuals of the input */\n size?: keyof typeof FormSize;\n /** Label of the input */\n label?: React.ReactNode;\n /** Activates Error style for the input */\n error?: boolean;\n /** Error text to show above the component */\n errorText?: string;\n /** Sets the data-testid attribute. */\n testId?: string;\n /** Component shown after input */\n afterInputChildren?: React.ReactNode;\n /** Component shown to the right of input */\n rightOfInput?: React.ReactNode;\n /** max character limit in input */\n maxCharacters?: number;\n /** The text is displayed in the end of the text-counter */\n maxText?: string;\n}\n\nexport enum InputTypes {\n text = 'text',\n number = 'number',\n email = 'email',\n password = 'password',\n search = 'search',\n tel = 'tel',\n url = 'url',\n date = 'date',\n time = 'time',\n}\n\nconst getInputMaxWidth = (characters: number, hasIcon: boolean, iconSize: number): string => {\n const paddingWidth = hasIcon ? '1.5rem' : '2rem';\n const iconWidth = hasIcon ? `${iconSize}px` : '0px';\n const borderWidth = '4px';\n\n return `calc(${characters * AVERAGE_CHARACTER_WIDTH_PX}px + ${paddingWidth} + ${iconWidth} + ${borderWidth})`;\n};\n\nconst Input = React.forwardRef((props: InputProps, ref: React.Ref<HTMLInputElement>) => {\n const {\n className,\n defaultValue,\n placeholder,\n type = InputTypes.text,\n name,\n transparent = false,\n icon,\n iconRight,\n inputId,\n inputWrapperRef,\n mode = FormMode.onwhite,\n size,\n baseIncrementValue,\n label,\n error,\n errorText,\n testId,\n disabled,\n readOnly,\n autoComplete,\n afterInputChildren,\n rightOfInput,\n width,\n required,\n onChange,\n onKeyDown,\n autoFocus,\n maxCharacters,\n maxText,\n ...rest\n } = props;\n const breakpoint = useBreakpoint();\n const inputContainerRef = useRef<HTMLDivElement>(null);\n const inputIdState = useUuid(inputId);\n const [input, setInput] = useState(defaultValue || '');\n const [prevValue, setPrevValue] = useState<string | number | undefined>(undefined);\n const numKeyPressed = useRef<boolean>(false);\n const numRegex = /^[0-9]$/;\n\n useEffect(() => {\n setInput(defaultValue || '');\n }, [defaultValue]);\n\n const onDark = mode === FormMode.ondark;\n const onBlueberry = mode === FormMode.onblueberry;\n const maxCharactersExceeded = !!maxCharacters && input.toString().length > maxCharacters;\n const onError = mode === FormMode.oninvalid || !!errorText || !!error || maxCharactersExceeded;\n const isLarge = size === FormSize.large;\n const isTransparent = transparent && mode !== FormMode.ondark && !onError;\n\n const inputWrapperClass = cn(styles['input-wrapper'], className);\n\n const inputContainer = cn(styles['input-container'], {\n [styles['input-container--transparent']]: isTransparent,\n [styles['input-container--on-blueberry']]: onBlueberry,\n [styles['input-container--on-dark']]: onDark,\n [styles['input-container--invalid']]: onError,\n [styles['input-container--large']]: isLarge,\n [styles['input-container--disabled']]: disabled,\n [styles['input-container--with-icon']]: icon,\n });\n\n const inputClass = cn(styles['input-container__input'], {\n [styles['input-container__input--large']]: isLarge,\n [styles['input-container__input--disabled']]: disabled,\n });\n\n const iconColor = disabled ? getColor('neutral', 500) : getColor('black');\n const iconSize = breakpoint === Breakpoint.xs || !isLarge ? IconSize.XSmall : IconSize.Small;\n\n const renderIcon = (): React.ReactNode => {\n if (!icon) {\n return;\n }\n\n if (typeof icon === 'string') {\n return <LazyIcon className={styles['input-container__input__icon']} color={iconColor} size={iconSize} iconName={icon} />;\n }\n\n return <Icon className={styles['input-container__input__icon']} color={iconColor} size={iconSize} svgIcon={icon} />;\n };\n\n // eslint-disable-next-line\n const handleClick = (e: React.MouseEvent<any>): void => {\n if (inputContainerRef && inputContainerRef.current && icon) {\n const selectedChild = iconRight ? 0 : 1;\n const input = inputContainerRef.current.children[selectedChild] as HTMLInputElement;\n input.focus();\n\n props.onClick && props.onClick(e);\n }\n };\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>): void => {\n const newValue = getIncrementValue(e);\n\n if (onChange) {\n onChange(e);\n }\n\n setInput(newValue);\n setPrevValue(newValue);\n };\n\n // Hvis bruker endrer number value med 1 og det skal startes på en annen verdi enn 0\n const getIncrementValue = (e: React.ChangeEvent<HTMLInputElement>): string => {\n if (typeof baseIncrementValue === 'undefined' || type !== 'number') return e.target.value;\n\n const valueAsNumber = Number(e.target.value);\n\n if (!prevValue && !numKeyPressed.current && (valueAsNumber === 1 || valueAsNumber === -1)) {\n e.target.value = baseIncrementValue + '';\n }\n\n return e.target.value;\n };\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>): void => {\n if (numRegex.test(e.key)) {\n numKeyPressed.current = true;\n }\n onKeyDown && onKeyDown(e);\n };\n\n const handleKeyUp = (e: React.KeyboardEvent<HTMLInputElement>): void => {\n if (numRegex.test(e.key)) {\n numKeyPressed.current = false;\n }\n };\n\n const maxWidth = width ? getInputMaxWidth(width, !!icon, iconSize) : undefined;\n\n return (\n <ErrorWrapper errorText={errorText}>\n <div data-testid={testId} data-analyticsid={AnalyticsId.Input} className={inputWrapperClass} ref={inputWrapperRef}>\n {renderLabel(label, inputIdState, mode as FormMode, disabled)}\n {/* input-elementet tillater keyboard-interaksjon */}\n <div className={styles['content-wrapper']}>\n {/* eslint-disable-next-line jsx-a11y/no-static-element-interactions, jsx-a11y/click-events-have-key-events */}\n <div onClick={handleClick} ref={inputContainerRef} className={inputContainer} style={{ maxWidth }}>\n {!iconRight && renderIcon()}\n <input\n onChange={handleChange}\n onKeyDown={handleKeyDown}\n onKeyUp={handleKeyUp}\n name={name}\n type={type}\n defaultValue={defaultValue}\n id={inputIdState}\n className={inputClass}\n ref={ref}\n aria-labelledby={props['aria-labelledby'] ?? undefined}\n aria-describedby={props['aria-describedby'] ?? undefined}\n aria-invalid={!!onError}\n disabled={disabled}\n placeholder={placeholder}\n readOnly={readOnly}\n autoComplete={autoComplete || 'off'}\n required={required}\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus}\n {...rest}\n />\n {iconRight && renderIcon()}\n </div>\n <div className={styles['content-wrapper__right-of-input']}>{rightOfInput}</div>\n </div>\n {maxCharacters && (\n <MaxCharacters maxCharacters={maxCharacters} length={input.toString().length} maxText={maxText} mode={mode} maxWidth={maxWidth} />\n )}\n {afterInputChildren}\n </div>\n </ErrorWrapper>\n );\n});\n\nInput.displayName = 'Input';\n\nexport default Input;\n"],"names":["InputTypes","getInputMaxWidth","characters","hasIcon","iconSize","paddingWidth","iconWidth","borderWidth","AVERAGE_CHARACTER_WIDTH_PX","Input","React","props","ref","className","defaultValue","placeholder","type","name","transparent","icon","iconRight","inputId","inputWrapperRef","mode","FormMode","size","baseIncrementValue","label","error","errorText","testId","disabled","readOnly","autoComplete","afterInputChildren","rightOfInput","width","required","onChange","onKeyDown","autoFocus","maxCharacters","maxText","rest","breakpoint","useBreakpoint","inputContainerRef","useRef","inputIdState","useUuid","input","setInput","useState","prevValue","setPrevValue","numKeyPressed","numRegex","useEffect","onDark","onBlueberry","maxCharactersExceeded","onError","isLarge","FormSize","isTransparent","inputWrapperClass","cn","styles","inputContainer","inputClass","iconColor","getColor","Breakpoint","IconSize","renderIcon","LazyIcon","Icon","handleClick","e","selectedChild","handleChange","newValue","getIncrementValue","valueAsNumber","handleKeyDown","handleKeyUp","maxWidth","ErrorWrapper","AnalyticsId","renderLabel","MaxCharacters","Input$1"],"mappings":"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"}
1
+ {"version":3,"file":"Input.js","sources":["../../../src/components/Input/Input.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\n\nimport cn from 'classnames';\n\nimport { FormMode, FormSize, AnalyticsId, AVERAGE_CHARACTER_WIDTH_PX } from '../../constants';\nimport { Breakpoint, useBreakpoint } from '../../hooks/useBreakpoint';\nimport { useUuid } from '../../hooks/useUuid';\nimport { getColor } from '../../theme/currys';\nimport ErrorWrapper from '../ErrorWrapper';\nimport Icon, { IconSize, SvgIcon } from '../Icon';\nimport { IconName } from '../Icons/IconNames';\nimport { renderLabel } from '../Label';\nimport LazyIcon from '../LazyIcon';\nimport MaxCharacters from '../MaxCharacters/MaxCharacters';\n\nimport styles from './styles.module.scss';\n\nexport interface InputProps\n extends Pick<\n React.InputHTMLAttributes<HTMLInputElement>,\n | 'disabled'\n | 'readOnly'\n | 'autoComplete'\n | 'name'\n | 'placeholder'\n | 'defaultValue'\n | 'required'\n | 'value'\n | 'min'\n | 'max'\n | 'aria-describedby'\n | 'aria-labelledby'\n | 'onBlur'\n | 'onClick'\n | 'onChange'\n | 'onFocus'\n | 'onKeyDown'\n | 'autoFocus'\n > {\n /** The number at which the input field starts when you increment or decrement it */\n baseIncrementValue?: number;\n /** Adds custom classes to the element. */\n className?: string;\n /** HMTL Input type */\n type?: keyof typeof InputTypes;\n /** input id */\n inputId?: string;\n /** Width of input field in characters (approximate) */\n width?: number;\n /** If true, the component will be transparent. */\n transparent?: boolean;\n /** Icon to be displayed next to the input field */\n icon?: SvgIcon | IconName;\n /** Places the icon to the right */\n iconRight?: boolean;\n /** Ref that is placed on the inputWrapper */\n inputWrapperRef?: React.RefObject<HTMLDivElement>;\n /** Changes the color profile of the input */\n mode?: keyof typeof FormMode;\n /** Changes the visuals of the input */\n size?: keyof typeof FormSize;\n /** Label of the input */\n label?: React.ReactNode;\n /** Activates Error style for the input */\n error?: boolean;\n /** Error text to show above the component */\n errorText?: string;\n /** Sets the data-testid attribute. */\n testId?: string;\n /** Component shown after input */\n afterInputChildren?: React.ReactNode;\n /** Component shown to the right of input */\n rightOfInput?: React.ReactNode;\n /** max character limit in input */\n maxCharacters?: number;\n /** The text is displayed in the end of the text-counter */\n maxText?: string;\n}\n\nexport enum InputTypes {\n text = 'text',\n number = 'number',\n email = 'email',\n password = 'password',\n search = 'search',\n tel = 'tel',\n url = 'url',\n date = 'date',\n time = 'time',\n}\n\nconst getInputMaxWidth = (characters: number, hasIcon: boolean, iconSize: number): string => {\n const paddingWidth = hasIcon ? '1.5rem' : '2rem';\n const iconWidth = hasIcon ? `${iconSize}px` : '0px';\n const borderWidth = '4px';\n\n return `calc(${characters * AVERAGE_CHARACTER_WIDTH_PX}px + ${paddingWidth} + ${iconWidth} + ${borderWidth})`;\n};\n\nconst Input = React.forwardRef((props: InputProps, ref: React.Ref<HTMLInputElement>) => {\n const {\n className,\n defaultValue,\n placeholder,\n type = InputTypes.text,\n name,\n transparent = false,\n icon,\n iconRight,\n inputId,\n inputWrapperRef,\n mode = FormMode.onwhite,\n size,\n baseIncrementValue,\n label,\n error,\n errorText,\n testId,\n disabled,\n readOnly,\n autoComplete,\n afterInputChildren,\n rightOfInput,\n width,\n required,\n onChange,\n onKeyDown,\n autoFocus,\n maxCharacters,\n maxText,\n ...rest\n } = props;\n const breakpoint = useBreakpoint();\n const inputContainerRef = useRef<HTMLDivElement>(null);\n const inputIdState = useUuid(inputId);\n const [input, setInput] = useState(defaultValue || '');\n const [prevValue, setPrevValue] = useState<string | number | undefined>(undefined);\n const numKeyPressed = useRef<boolean>(false);\n const numRegex = /^[0-9]$/;\n\n useEffect(() => {\n setInput(defaultValue || '');\n }, [defaultValue]);\n\n const onDark = mode === FormMode.ondark;\n const onBlueberry = mode === FormMode.onblueberry;\n const maxCharactersExceeded = !!maxCharacters && input.toString().length > maxCharacters;\n const onError = mode === FormMode.oninvalid || !!errorText || !!error || maxCharactersExceeded;\n const isLarge = size === FormSize.large;\n const isTransparent = transparent && mode !== FormMode.ondark && !onError;\n\n const inputWrapperClass = cn(styles['input-wrapper'], className);\n\n const inputContainer = cn(styles['input-container'], {\n [styles['input-container--transparent']]: isTransparent,\n [styles['input-container--on-blueberry']]: onBlueberry,\n [styles['input-container--on-dark']]: onDark,\n [styles['input-container--invalid']]: onError,\n [styles['input-container--large']]: isLarge,\n [styles['input-container--disabled']]: disabled,\n [styles['input-container--with-icon']]: icon,\n });\n\n const inputClass = cn(styles['input-container__input'], {\n [styles['input-container__input--large']]: isLarge,\n [styles['input-container__input--disabled']]: disabled,\n });\n\n const iconColor = disabled ? getColor('neutral', 700) : getColor('black');\n const iconSize = breakpoint === Breakpoint.xs || !isLarge ? IconSize.XSmall : IconSize.Small;\n\n const renderIcon = (): React.ReactNode => {\n if (!icon) {\n return;\n }\n\n if (typeof icon === 'string') {\n return <LazyIcon className={styles['input-container__input__icon']} color={iconColor} size={iconSize} iconName={icon} />;\n }\n\n return <Icon className={styles['input-container__input__icon']} color={iconColor} size={iconSize} svgIcon={icon} />;\n };\n\n // eslint-disable-next-line\n const handleClick = (e: React.MouseEvent<any>): void => {\n if (inputContainerRef && inputContainerRef.current && icon) {\n const selectedChild = iconRight ? 0 : 1;\n const input = inputContainerRef.current.children[selectedChild] as HTMLInputElement;\n input.focus();\n\n props.onClick && props.onClick(e);\n }\n };\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>): void => {\n const newValue = getIncrementValue(e);\n\n if (onChange) {\n onChange(e);\n }\n\n setInput(newValue);\n setPrevValue(newValue);\n };\n\n // Hvis bruker endrer number value med 1 og det skal startes på en annen verdi enn 0\n const getIncrementValue = (e: React.ChangeEvent<HTMLInputElement>): string => {\n if (typeof baseIncrementValue === 'undefined' || type !== 'number') return e.target.value;\n\n const valueAsNumber = Number(e.target.value);\n\n if (!prevValue && !numKeyPressed.current && (valueAsNumber === 1 || valueAsNumber === -1)) {\n e.target.value = baseIncrementValue + '';\n }\n\n return e.target.value;\n };\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>): void => {\n if (numRegex.test(e.key)) {\n numKeyPressed.current = true;\n }\n onKeyDown && onKeyDown(e);\n };\n\n const handleKeyUp = (e: React.KeyboardEvent<HTMLInputElement>): void => {\n if (numRegex.test(e.key)) {\n numKeyPressed.current = false;\n }\n };\n\n const maxWidth = width ? getInputMaxWidth(width, !!icon, iconSize) : undefined;\n\n return (\n <ErrorWrapper errorText={errorText}>\n <div data-testid={testId} data-analyticsid={AnalyticsId.Input} className={inputWrapperClass} ref={inputWrapperRef}>\n {renderLabel(label, inputIdState, mode as FormMode, disabled)}\n {/* input-elementet tillater keyboard-interaksjon */}\n <div className={styles['content-wrapper']}>\n {/* eslint-disable-next-line jsx-a11y/no-static-element-interactions, jsx-a11y/click-events-have-key-events */}\n <div onClick={handleClick} ref={inputContainerRef} className={inputContainer} style={{ maxWidth }}>\n {!iconRight && renderIcon()}\n <input\n onChange={handleChange}\n onKeyDown={handleKeyDown}\n onKeyUp={handleKeyUp}\n name={name}\n type={type}\n defaultValue={defaultValue}\n id={inputIdState}\n className={inputClass}\n ref={ref}\n aria-labelledby={props['aria-labelledby'] ?? undefined}\n aria-describedby={props['aria-describedby'] ?? undefined}\n aria-invalid={!!onError}\n disabled={disabled}\n placeholder={placeholder}\n readOnly={readOnly}\n autoComplete={autoComplete || 'off'}\n required={required}\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus}\n {...rest}\n />\n {iconRight && renderIcon()}\n </div>\n <div className={styles['content-wrapper__right-of-input']}>{rightOfInput}</div>\n </div>\n {maxCharacters && (\n <MaxCharacters maxCharacters={maxCharacters} length={input.toString().length} maxText={maxText} mode={mode} maxWidth={maxWidth} />\n )}\n {afterInputChildren}\n </div>\n </ErrorWrapper>\n );\n});\n\nInput.displayName = 'Input';\n\nexport default Input;\n"],"names":["InputTypes","getInputMaxWidth","characters","hasIcon","iconSize","paddingWidth","iconWidth","borderWidth","AVERAGE_CHARACTER_WIDTH_PX","Input","React","props","ref","className","defaultValue","placeholder","type","name","transparent","icon","iconRight","inputId","inputWrapperRef","mode","FormMode","size","baseIncrementValue","label","error","errorText","testId","disabled","readOnly","autoComplete","afterInputChildren","rightOfInput","width","required","onChange","onKeyDown","autoFocus","maxCharacters","maxText","rest","breakpoint","useBreakpoint","inputContainerRef","useRef","inputIdState","useUuid","input","setInput","useState","prevValue","setPrevValue","numKeyPressed","numRegex","useEffect","onDark","onBlueberry","maxCharactersExceeded","onError","isLarge","FormSize","isTransparent","inputWrapperClass","cn","styles","inputContainer","inputClass","iconColor","getColor","Breakpoint","IconSize","renderIcon","LazyIcon","Icon","handleClick","e","selectedChild","handleChange","newValue","getIncrementValue","valueAsNumber","handleKeyDown","handleKeyUp","maxWidth","ErrorWrapper","AnalyticsId","renderLabel","MaxCharacters","Input$1"],"mappings":"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"}
@@ -33,6 +33,8 @@
33
33
  .input-container {
34
34
  @include input-container;
35
35
 
36
+ $container: &;
37
+
36
38
  padding: 0.5rem 0;
37
39
  align-items: center;
38
40
 
@@ -71,4 +73,10 @@
71
73
  cursor: pointer;
72
74
  }
73
75
  }
76
+
77
+ &--disabled {
78
+ #{$container}__input__icon {
79
+ cursor: initial;
80
+ }
81
+ }
74
82
  }
@@ -1 +1 @@
1
- {"version":3,"file":"LazyIcon.d.ts","sourceRoot":"","sources":["../../../src/components/LazyIcon/LazyIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkC,MAAM,OAAO,CAAC;AAGvD,OAAa,EAAE,aAAa,EAAY,OAAO,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,MAAM,WAAW,aAAc,SAAQ,aAAa;IAElD,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAID,eAAO,MAAM,YAAY,aAAc,QAAQ,KAAG,MAAM,mBAAmB,CAAC,OAAO,CAC1B,CAAC;AAE1D,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CA2B5C,CAAC;AAEF,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"LazyIcon.d.ts","sourceRoot":"","sources":["../../../src/components/LazyIcon/LazyIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkC,MAAM,OAAO,CAAC;AAIvD,OAAa,EAAE,aAAa,EAAY,OAAO,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,MAAM,WAAW,aAAc,SAAQ,aAAa;IAElD,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,eAAO,MAAM,YAAY,aAAc,QAAQ,KAAG,MAAM,mBAAmB,CAAC,OAAO,CAC1B,CAAC;AAE1D,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CA2B5C,CAAC;AAEF,eAAe,QAAQ,CAAC"}
@@ -1,11 +1,12 @@
1
1
  import c from "../../_virtual/dynamic-import-helper.js";
2
2
  import s, { lazy as p, useMemo as m, Suspense as e } from "react";
3
3
  import I from "./ErrorBoundary.js";
4
- import { Icon as x } from "../Icon/Icon.js";
5
- import { IconSize as a } from "../../constants.js";
6
- const l = () => typeof document > "u", d = (o) => p(() => c(/* @__PURE__ */ Object.assign({ "../Icons/ActiveMonitoring.tsx": () => import("../Icons/ActiveMonitoring.js"), "../Icons/AcupunctureBack.tsx": () => import("../Icons/AcupunctureBack.js"), "../Icons/AlarmClock.tsx": () => import("../Icons/AlarmClock.js"), "../Icons/AlertSignFill.tsx": () => import("../Icons/AlertSignFill.js"), "../Icons/AlertSignStroke.tsx": () => import("../Icons/AlertSignStroke.js"), "../Icons/Amputation.tsx": () => import("../Icons/Amputation.js"), "../Icons/Anxiety.tsx": () => import("../Icons/Anxiety.js"), "../Icons/Apple.tsx": () => import("../Icons/Apple.js"), "../Icons/Archive.tsx": () => import("../Icons/Archive.js"), "../Icons/ArmFlexing.tsx": () => import("../Icons/ArmFlexing.js"), "../Icons/ArrowDown.tsx": () => import("../Icons/ArrowDown.js"), "../Icons/ArrowLeft.tsx": () => import("../Icons/ArrowLeft.js"), "../Icons/ArrowRight.tsx": () => import("../Icons/ArrowRight.js"), "../Icons/ArrowUp.tsx": () => import("../Icons/ArrowUp.js"), "../Icons/ArrowUpRight.tsx": () => import("../Icons/ArrowUpRight.js"), "../Icons/Attachment.tsx": () => import("../Icons/Attachment.js"), "../Icons/Atv.tsx": () => import("../Icons/Atv.js"), "../Icons/Avatar.tsx": () => import("../Icons/Avatar.js"), "../Icons/AwakePersonOnPillow.tsx": () => import("../Icons/AwakePersonOnPillow.js"), "../Icons/Baby.tsx": () => import("../Icons/Baby.js"), "../Icons/BandAid.tsx": () => import("../Icons/BandAid.js"), "../Icons/BeerAndPills.tsx": () => import("../Icons/BeerAndPills.js"), "../Icons/Bell.tsx": () => import("../Icons/Bell.js"), "../Icons/Bike.tsx": () => import("../Icons/Bike.js"), "../Icons/BirthControl.tsx": () => import("../Icons/BirthControl.js"), "../Icons/BirthdayCake.tsx": () => import("../Icons/BirthdayCake.js"), "../Icons/Boat.tsx": () => import("../Icons/Boat.js"), "../Icons/Body.tsx": () => import("../Icons/Body.js"), "../Icons/Braille.tsx": () => import("../Icons/Braille.js"), "../Icons/Brain.tsx": () => import("../Icons/Brain.js"), "../Icons/BreastReconstruction.tsx": () => import("../Icons/BreastReconstruction.js"), "../Icons/BreastRemoval.tsx": () => import("../Icons/BreastRemoval.js"), "../Icons/Breasts.tsx": () => import("../Icons/Breasts.js"), "../Icons/BrokenHeart.tsx": () => import("../Icons/BrokenHeart.js"), "../Icons/BrokenPuzzle.tsx": () => import("../Icons/BrokenPuzzle.js"), "../Icons/Bus.tsx": () => import("../Icons/Bus.js"), "../Icons/Calendar.tsx": () => import("../Icons/Calendar.js"), "../Icons/CalendarChange.tsx": () => import("../Icons/CalendarChange.js"), "../Icons/CalendarCheck.tsx": () => import("../Icons/CalendarCheck.js"), "../Icons/CalendarEvent.tsx": () => import("../Icons/CalendarEvent.js"), "../Icons/CalendarSave.tsx": () => import("../Icons/CalendarSave.js"), "../Icons/Cancer.tsx": () => import("../Icons/Cancer.js"), "../Icons/Candle.tsx": () => import("../Icons/Candle.js"), "../Icons/Car.tsx": () => import("../Icons/Car.js"), "../Icons/Change.tsx": () => import("../Icons/Change.js"), "../Icons/Check.tsx": () => import("../Icons/Check.js"), "../Icons/CheckFill.tsx": () => import("../Icons/CheckFill.js"), "../Icons/CheckOutline.tsx": () => import("../Icons/CheckOutline.js"), "../Icons/Chest.tsx": () => import("../Icons/Chest.js"), "../Icons/ChevronDown.tsx": () => import("../Icons/ChevronDown.js"), "../Icons/ChevronLeft.tsx": () => import("../Icons/ChevronLeft.js"), "../Icons/ChevronRight.tsx": () => import("../Icons/ChevronRight.js"), "../Icons/ChevronUp.tsx": () => import("../Icons/ChevronUp.js"), "../Icons/ChevronsDown.tsx": () => import("../Icons/ChevronsDown.js"), "../Icons/ChevronsUp.tsx": () => import("../Icons/ChevronsUp.js"), "../Icons/ChildPlaying.tsx": () => import("../Icons/ChildPlaying.js"), "../Icons/Cigarette.tsx": () => import("../Icons/Cigarette.js"), "../Icons/Coins.tsx": () => import("../Icons/Coins.js"), "../Icons/Contacts.tsx": () => import("../Icons/Contacts.js"), "../Icons/Copy.tsx": () => import("../Icons/Copy.js"), "../Icons/CoronaCertificate.tsx": () => import("../Icons/CoronaCertificate.js"), "../Icons/Coronavirus.tsx": () => import("../Icons/Coronavirus.js"), "../Icons/Cough.tsx": () => import("../Icons/Cough.js"), "../Icons/CriticalHealthInfo.tsx": () => import("../Icons/CriticalHealthInfo.js"), "../Icons/Cross.tsx": () => import("../Icons/Cross.js"), "../Icons/DataExchange.tsx": () => import("../Icons/DataExchange.js"), "../Icons/DataReceived.tsx": () => import("../Icons/DataReceived.js"), "../Icons/DataSent.tsx": () => import("../Icons/DataSent.js"), "../Icons/Depression.tsx": () => import("../Icons/Depression.js"), "../Icons/DigestiveSystem.tsx": () => import("../Icons/DigestiveSystem.js"), "../Icons/Dizzy.tsx": () => import("../Icons/Dizzy.js"), "../Icons/Documents.tsx": () => import("../Icons/Documents.js"), "../Icons/Dog.tsx": () => import("../Icons/Dog.js"), "../Icons/DonorCard.tsx": () => import("../Icons/DonorCard.js"), "../Icons/Download.tsx": () => import("../Icons/Download.js"), "../Icons/Draft.tsx": () => import("../Icons/Draft.js"), "../Icons/EChat.tsx": () => import("../Icons/EChat.js"), "../Icons/Ear.tsx": () => import("../Icons/Ear.js"), "../Icons/EarDeaf.tsx": () => import("../Icons/EarDeaf.js"), "../Icons/EarHearingAid.tsx": () => import("../Icons/EarHearingAid.js"), "../Icons/EarNoseThroat.tsx": () => import("../Icons/EarNoseThroat.js"), "../Icons/EarVolume.tsx": () => import("../Icons/EarVolume.js"), "../Icons/ElderlyPerson.tsx": () => import("../Icons/ElderlyPerson.js"), "../Icons/Embolization.tsx": () => import("../Icons/Embolization.js"), "../Icons/EmergencyCall.tsx": () => import("../Icons/EmergencyCall.js"), "../Icons/EmoticonAnnoyed.tsx": () => import("../Icons/EmoticonAnnoyed.js"), "../Icons/EmoticonDelighted.tsx": () => import("../Icons/EmoticonDelighted.js"), "../Icons/EmoticonDisappointed.tsx": () => import("../Icons/EmoticonDisappointed.js"), "../Icons/EmoticonHappy.tsx": () => import("../Icons/EmoticonHappy.js"), "../Icons/EmoticonMeh.tsx": () => import("../Icons/EmoticonMeh.js"), "../Icons/EnterFullScreen.tsx": () => import("../Icons/EnterFullScreen.js"), "../Icons/Envelope.tsx": () => import("../Icons/Envelope.js"), "../Icons/Epilepsy.tsx": () => import("../Icons/Epilepsy.js"), "../Icons/Eraser.tsx": () => import("../Icons/Eraser.js"), "../Icons/ErrorSignFill.tsx": () => import("../Icons/ErrorSignFill.js"), "../Icons/ErrorSignStroke.tsx": () => import("../Icons/ErrorSignStroke.js"), "../Icons/EuropeanHealthCard.tsx": () => import("../Icons/EuropeanHealthCard.js"), "../Icons/ExitFullScreen.tsx": () => import("../Icons/ExitFullScreen.js"), "../Icons/Eye.tsx": () => import("../Icons/Eye.js"), "../Icons/Facebook.tsx": () => import("../Icons/Facebook.js"), "../Icons/FallingLeaf.tsx": () => import("../Icons/FallingLeaf.js"), "../Icons/Female.tsx": () => import("../Icons/Female.js"), "../Icons/FemaleDoctor.tsx": () => import("../Icons/FemaleDoctor.js"), "../Icons/Ferry.tsx": () => import("../Icons/Ferry.js"), "../Icons/File.tsx": () => import("../Icons/File.js"), "../Icons/Filter.tsx": () => import("../Icons/Filter.js"), "../Icons/FingerBleed.tsx": () => import("../Icons/FingerBleed.js"), "../Icons/FirstAidKit.tsx": () => import("../Icons/FirstAidKit.js"), "../Icons/FloppyDisk.tsx": () => import("../Icons/FloppyDisk.js"), "../Icons/Football.tsx": () => import("../Icons/Football.js"), "../Icons/Form.tsx": () => import("../Icons/Form.js"), "../Icons/Forward.tsx": () => import("../Icons/Forward.js"), "../Icons/Gallery.tsx": () => import("../Icons/Gallery.js"), "../Icons/Garden.tsx": () => import("../Icons/Garden.js"), "../Icons/GasCan.tsx": () => import("../Icons/GasCan.js"), "../Icons/GenderIdentity.tsx": () => import("../Icons/GenderIdentity.js"), "../Icons/Glasses.tsx": () => import("../Icons/Glasses.js"), "../Icons/Globe.tsx": () => import("../Icons/Globe.js"), "../Icons/Graph.tsx": () => import("../Icons/Graph.js"), "../Icons/Group.tsx": () => import("../Icons/Group.js"), "../Icons/GroupTwins.tsx": () => import("../Icons/GroupTwins.js"), "../Icons/HTMLFile.tsx": () => import("../Icons/HTMLFile.js"), "../Icons/HandWaving.tsx": () => import("../Icons/HandWaving.js"), "../Icons/HandWithDisease.tsx": () => import("../Icons/HandWithDisease.js"), "../Icons/HandsAndHeart.tsx": () => import("../Icons/HandsAndHeart.js"), "../Icons/HealthClinic.tsx": () => import("../Icons/HealthClinic.js"), "../Icons/HealthWarning.tsx": () => import("../Icons/HealthWarning.js"), "../Icons/HealthcarePerson.tsx": () => import("../Icons/HealthcarePerson.js"), "../Icons/HealthcarePersonell.tsx": () => import("../Icons/HealthcarePersonell.js"), "../Icons/HearingProtection.tsx": () => import("../Icons/HearingProtection.js"), "../Icons/Heart.tsx": () => import("../Icons/Heart.js"), "../Icons/HeartHands.tsx": () => import("../Icons/HeartHands.js"), "../Icons/HelpSign.tsx": () => import("../Icons/HelpSign.js"), "../Icons/HelpingHand.tsx": () => import("../Icons/HelpingHand.js"), "../Icons/Hemodialysis.tsx": () => import("../Icons/Hemodialysis.js"), "../Icons/Hiker.tsx": () => import("../Icons/Hiker.js"), "../Icons/Hipprosthesis.tsx": () => import("../Icons/Hipprosthesis.js"), "../Icons/History.tsx": () => import("../Icons/History.js"), "../Icons/HivAndAids.tsx": () => import("../Icons/HivAndAids.js"), "../Icons/Home.tsx": () => import("../Icons/Home.js"), "../Icons/Hormone.tsx": () => import("../Icons/Hormone.js"), "../Icons/Hospital.tsx": () => import("../Icons/Hospital.js"), "../Icons/Hourglass.tsx": () => import("../Icons/Hourglass.js"), "../Icons/ImgFile.tsx": () => import("../Icons/ImgFile.js"), "../Icons/Inbox.tsx": () => import("../Icons/Inbox.js"), "../Icons/InfoSignFill.tsx": () => import("../Icons/InfoSignFill.js"), "../Icons/InfoSignStroke.tsx": () => import("../Icons/InfoSignStroke.js"), "../Icons/Instagram.tsx": () => import("../Icons/Instagram.js"), "../Icons/Intravenous.tsx": () => import("../Icons/Intravenous.js"), "../Icons/JointPain.tsx": () => import("../Icons/JointPain.js"), "../Icons/Journal.tsx": () => import("../Icons/Journal.js"), "../Icons/JpgFile.tsx": () => import("../Icons/JpgFile.js"), "../Icons/Kidney.tsx": () => import("../Icons/Kidney.js"), "../Icons/KitchenScale.tsx": () => import("../Icons/KitchenScale.js"), "../Icons/Kjernejournal.tsx": () => import("../Icons/Kjernejournal.js"), "../Icons/Laboratory.tsx": () => import("../Icons/Laboratory.js"), "../Icons/LaptopBlog.tsx": () => import("../Icons/LaptopBlog.js"), "../Icons/LawBook.tsx": () => import("../Icons/LawBook.js"), "../Icons/LegalDocument.tsx": () => import("../Icons/LegalDocument.js"), "../Icons/LightBulb.tsx": () => import("../Icons/LightBulb.js"), "../Icons/List.tsx": () => import("../Icons/List.js"), "../Icons/Location.tsx": () => import("../Icons/Location.js"), "../Icons/Lock.tsx": () => import("../Icons/Lock.js"), "../Icons/Login.tsx": () => import("../Icons/Login.js"), "../Icons/Logout.tsx": () => import("../Icons/Logout.js"), "../Icons/Lungs.tsx": () => import("../Icons/Lungs.js"), "../Icons/Makeup.tsx": () => import("../Icons/Makeup.js"), "../Icons/MaleDoctor.tsx": () => import("../Icons/MaleDoctor.js"), "../Icons/MaleDoctorAndPerson.tsx": () => import("../Icons/MaleDoctorAndPerson.js"), "../Icons/MaleGenitalia.tsx": () => import("../Icons/MaleGenitalia.js"), "../Icons/Medicine.tsx": () => import("../Icons/Medicine.js"), "../Icons/MedicineWarning.tsx": () => import("../Icons/MedicineWarning.js"), "../Icons/MentalHealthAdult.tsx": () => import("../Icons/MentalHealthAdult.js"), "../Icons/MentalHealthChild.tsx": () => import("../Icons/MentalHealthChild.js"), "../Icons/Menu.tsx": () => import("../Icons/Menu.js"), "../Icons/Microscope.tsx": () => import("../Icons/Microscope.js"), "../Icons/Minus.tsx": () => import("../Icons/Minus.js"), "../Icons/Mirror.tsx": () => import("../Icons/Mirror.js"), "../Icons/MobilePhone.tsx": () => import("../Icons/MobilePhone.js"), "../Icons/MotherHoldingBaby.tsx": () => import("../Icons/MotherHoldingBaby.js"), "../Icons/MuscleBack.tsx": () => import("../Icons/MuscleBack.js"), "../Icons/MuscleLeg.tsx": () => import("../Icons/MuscleLeg.js"), "../Icons/Mushroom.tsx": () => import("../Icons/Mushroom.js"), "../Icons/Music.tsx": () => import("../Icons/Music.js"), "../Icons/MusselsAndSalt.tsx": () => import("../Icons/MusselsAndSalt.js"), "../Icons/NoAccess.tsx": () => import("../Icons/NoAccess.js"), "../Icons/NoEye.tsx": () => import("../Icons/NoEye.js"), "../Icons/NoFilter.tsx": () => import("../Icons/NoFilter.js"), "../Icons/Notepad.tsx": () => import("../Icons/Notepad.js"), "../Icons/Osteotomy.tsx": () => import("../Icons/Osteotomy.js"), "../Icons/PaintRoller.tsx": () => import("../Icons/PaintRoller.js"), "../Icons/PaperPlane.tsx": () => import("../Icons/PaperPlane.js"), "../Icons/PatientAndPerson.tsx": () => import("../Icons/PatientAndPerson.js"), "../Icons/Pause.tsx": () => import("../Icons/Pause.js"), "../Icons/PdfFile.tsx": () => import("../Icons/PdfFile.js"), "../Icons/Pencil.tsx": () => import("../Icons/Pencil.js"), "../Icons/PeopleTalking.tsx": () => import("../Icons/PeopleTalking.js"), "../Icons/Peritonealdialysis.tsx": () => import("../Icons/Peritonealdialysis.js"), "../Icons/Person.tsx": () => import("../Icons/Person.js"), "../Icons/PersonAndPatient.tsx": () => import("../Icons/PersonAndPatient.js"), "../Icons/PersonCancel.tsx": () => import("../Icons/PersonCancel.js"), "../Icons/PersonInXRayMachine.tsx": () => import("../Icons/PersonInXRayMachine.js"), "../Icons/PersonOverweight.tsx": () => import("../Icons/PersonOverweight.js"), "../Icons/PersonRelaxing.tsx": () => import("../Icons/PersonRelaxing.js"), "../Icons/PersonWithBrain.tsx": () => import("../Icons/PersonWithBrain.js"), "../Icons/PersonWithBrokenArm.tsx": () => import("../Icons/PersonWithBrokenArm.js"), "../Icons/PersonWithCrutches.tsx": () => import("../Icons/PersonWithCrutches.js"), "../Icons/PersonWithJaw.tsx": () => import("../Icons/PersonWithJaw.js"), "../Icons/PersonWithMagnifyingGlass.tsx": () => import("../Icons/PersonWithMagnifyingGlass.js"), "../Icons/PersonWithSenses.tsx": () => import("../Icons/PersonWithSenses.js"), "../Icons/PersonWorking.tsx": () => import("../Icons/PersonWorking.js"), "../Icons/PersonalPlan.tsx": () => import("../Icons/PersonalPlan.js"), "../Icons/PizzaSlice.tsx": () => import("../Icons/PizzaSlice.js"), "../Icons/Plane.tsx": () => import("../Icons/Plane.js"), "../Icons/Plant.tsx": () => import("../Icons/Plant.js"), "../Icons/Play.tsx": () => import("../Icons/Play.js"), "../Icons/PlusLarge.tsx": () => import("../Icons/PlusLarge.js"), "../Icons/PlusSmall.tsx": () => import("../Icons/PlusSmall.js"), "../Icons/PngFile.tsx": () => import("../Icons/PngFile.js"), "../Icons/Podcast.tsx": () => import("../Icons/Podcast.js"), "../Icons/PoisonInformation.tsx": () => import("../Icons/PoisonInformation.js"), "../Icons/Pregnant.tsx": () => import("../Icons/Pregnant.js"), "../Icons/Printer.tsx": () => import("../Icons/Printer.js"), "../Icons/Psychosis.tsx": () => import("../Icons/Psychosis.js"), "../Icons/Publication.tsx": () => import("../Icons/Publication.js"), "../Icons/Puzzle.tsx": () => import("../Icons/Puzzle.js"), "../Icons/QrCode.tsx": () => import("../Icons/QrCode.js"), "../Icons/Quarrel.tsx": () => import("../Icons/Quarrel.js"), "../Icons/RadioTherapy.tsx": () => import("../Icons/RadioTherapy.js"), "../Icons/RadioactiveTreatment.tsx": () => import("../Icons/RadioactiveTreatment.js"), "../Icons/Radioiodine.tsx": () => import("../Icons/Radioiodine.js"), "../Icons/Receipt.tsx": () => import("../Icons/Receipt.js"), "../Icons/Receptionist.tsx": () => import("../Icons/Receptionist.js"), "../Icons/Recovery.tsx": () => import("../Icons/Recovery.js"), "../Icons/Referral.tsx": () => import("../Icons/Referral.js"), "../Icons/Refresh.tsx": () => import("../Icons/Refresh.js"), "../Icons/Refund.tsx": () => import("../Icons/Refund.js"), "../Icons/Reply.tsx": () => import("../Icons/Reply.js"), "../Icons/Rocket.tsx": () => import("../Icons/Rocket.js"), "../Icons/RtfFile.tsx": () => import("../Icons/RtfFile.js"), "../Icons/STDs.tsx": () => import("../Icons/STDs.js"), "../Icons/Save.tsx": () => import("../Icons/Save.js"), "../Icons/Scale.tsx": () => import("../Icons/Scale.js"), "../Icons/ScreenReader.tsx": () => import("../Icons/ScreenReader.js"), "../Icons/Search.tsx": () => import("../Icons/Search.js"), "../Icons/SectionSign.tsx": () => import("../Icons/SectionSign.js"), "../Icons/Settings.tsx": () => import("../Icons/Settings.js"), "../Icons/Sexualorientation.tsx": () => import("../Icons/Sexualorientation.js"), "../Icons/ShakingHand.tsx": () => import("../Icons/ShakingHand.js"), "../Icons/Share.tsx": () => import("../Icons/Share.js"), "../Icons/Shield.tsx": () => import("../Icons/Shield.js"), "../Icons/ShuntOperation.tsx": () => import("../Icons/ShuntOperation.js"), "../Icons/Skeleton.tsx": () => import("../Icons/Skeleton.js"), "../Icons/Skin.tsx": () => import("../Icons/Skin.js"), "../Icons/Snake.tsx": () => import("../Icons/Snake.js"), "../Icons/Snapchat.tsx": () => import("../Icons/Snapchat.js"), "../Icons/SortDown.tsx": () => import("../Icons/SortDown.js"), "../Icons/SortUp.tsx": () => import("../Icons/SortUp.js"), "../Icons/SpeechBubble.tsx": () => import("../Icons/SpeechBubble.js"), "../Icons/Spray.tsx": () => import("../Icons/Spray.js"), "../Icons/Stopwatch.tsx": () => import("../Icons/Stopwatch.js"), "../Icons/Sun.tsx": () => import("../Icons/Sun.js"), "../Icons/SupportingPerson.tsx": () => import("../Icons/SupportingPerson.js"), "../Icons/Surgery.tsx": () => import("../Icons/Surgery.js"), "../Icons/Syringe.tsx": () => import("../Icons/Syringe.js"), "../Icons/Taxi.tsx": () => import("../Icons/Taxi.js"), "../Icons/TeddyBear.tsx": () => import("../Icons/TeddyBear.js"), "../Icons/Teenagers.tsx": () => import("../Icons/Teenagers.js"), "../Icons/ThinkingAboutBaby.tsx": () => import("../Icons/ThinkingAboutBaby.js"), "../Icons/Ticket.tsx": () => import("../Icons/Ticket.js"), "../Icons/TimePassing.tsx": () => import("../Icons/TimePassing.js"), "../Icons/Tombstone.tsx": () => import("../Icons/Tombstone.js"), "../Icons/Toolbox.tsx": () => import("../Icons/Toolbox.js"), "../Icons/Tooth.tsx": () => import("../Icons/Tooth.js"), "../Icons/TotalKneeProsthesis.tsx": () => import("../Icons/TotalKneeProsthesis.js"), "../Icons/Train.tsx": () => import("../Icons/Train.js"), "../Icons/Transplantation.tsx": () => import("../Icons/Transplantation.js"), "../Icons/TrashCan.tsx": () => import("../Icons/TrashCan.js"), "../Icons/TravelRoute.tsx": () => import("../Icons/TravelRoute.js"), "../Icons/TriangleX.tsx": () => import("../Icons/TriangleX.js"), "../Icons/Twitter.tsx": () => import("../Icons/Twitter.js"), "../Icons/Undo.tsx": () => import("../Icons/Undo.js"), "../Icons/UniProsthesis.tsx": () => import("../Icons/UniProsthesis.js"), "../Icons/Upload.tsx": () => import("../Icons/Upload.js"), "../Icons/UserOrganization.tsx": () => import("../Icons/UserOrganization.js"), "../Icons/Vaccine.tsx": () => import("../Icons/Vaccine.js"), "../Icons/VerticalDots.tsx": () => import("../Icons/VerticalDots.js"), "../Icons/VideoCamera.tsx": () => import("../Icons/VideoCamera.js"), "../Icons/VideoChat.tsx": () => import("../Icons/VideoChat.js"), "../Icons/Wallet.tsx": () => import("../Icons/Wallet.js"), "../Icons/Watch.tsx": () => import("../Icons/Watch.js"), "../Icons/Website.tsx": () => import("../Icons/Website.js"), "../Icons/Wheelchair.tsx": () => import("../Icons/Wheelchair.js"), "../Icons/WheelchairActive.tsx": () => import("../Icons/WheelchairActive.js"), "../Icons/Window.tsx": () => import("../Icons/Window.js"), "../Icons/WordDocument.tsx": () => import("../Icons/WordDocument.js"), "../Icons/WorkSuitcase.tsx": () => import("../Icons/WorkSuitcase.js"), "../Icons/X.tsx": () => import("../Icons/X.js"), "../Icons/XOutline.tsx": () => import("../Icons/XOutline.js"), "../Icons/XmlFile.tsx": () => import("../Icons/XmlFile.js"), "../Icons/YouTube.tsx": () => import("../Icons/YouTube.js"), "../Icons/Zoom.tsx": () => import("../Icons/Zoom.js") }), `../Icons/${o}.tsx`)), h = ({ iconName: o, size: t = a.Small, ...r }) => {
7
- const i = m(() => d(o), [o]);
8
- if (l())
4
+ import { isServerSide as x } from "./utils.js";
5
+ import { Icon as a } from "../Icon/Icon.js";
6
+ import { IconSize as l } from "../../constants.js";
7
+ const h = (o) => p(() => c(/* @__PURE__ */ Object.assign({ "../Icons/ActiveMonitoring.tsx": () => import("../Icons/ActiveMonitoring.js"), "../Icons/AcupunctureBack.tsx": () => import("../Icons/AcupunctureBack.js"), "../Icons/AlarmClock.tsx": () => import("../Icons/AlarmClock.js"), "../Icons/AlertSignFill.tsx": () => import("../Icons/AlertSignFill.js"), "../Icons/AlertSignStroke.tsx": () => import("../Icons/AlertSignStroke.js"), "../Icons/Amputation.tsx": () => import("../Icons/Amputation.js"), "../Icons/Anxiety.tsx": () => import("../Icons/Anxiety.js"), "../Icons/Apple.tsx": () => import("../Icons/Apple.js"), "../Icons/Archive.tsx": () => import("../Icons/Archive.js"), "../Icons/ArmFlexing.tsx": () => import("../Icons/ArmFlexing.js"), "../Icons/ArrowDown.tsx": () => import("../Icons/ArrowDown.js"), "../Icons/ArrowLeft.tsx": () => import("../Icons/ArrowLeft.js"), "../Icons/ArrowRight.tsx": () => import("../Icons/ArrowRight.js"), "../Icons/ArrowUp.tsx": () => import("../Icons/ArrowUp.js"), "../Icons/ArrowUpRight.tsx": () => import("../Icons/ArrowUpRight.js"), "../Icons/Attachment.tsx": () => import("../Icons/Attachment.js"), "../Icons/Atv.tsx": () => import("../Icons/Atv.js"), "../Icons/Avatar.tsx": () => import("../Icons/Avatar.js"), "../Icons/AwakePersonOnPillow.tsx": () => import("../Icons/AwakePersonOnPillow.js"), "../Icons/Baby.tsx": () => import("../Icons/Baby.js"), "../Icons/BandAid.tsx": () => import("../Icons/BandAid.js"), "../Icons/BeerAndPills.tsx": () => import("../Icons/BeerAndPills.js"), "../Icons/Bell.tsx": () => import("../Icons/Bell.js"), "../Icons/Bike.tsx": () => import("../Icons/Bike.js"), "../Icons/BirthControl.tsx": () => import("../Icons/BirthControl.js"), "../Icons/BirthdayCake.tsx": () => import("../Icons/BirthdayCake.js"), "../Icons/Boat.tsx": () => import("../Icons/Boat.js"), "../Icons/Body.tsx": () => import("../Icons/Body.js"), "../Icons/Braille.tsx": () => import("../Icons/Braille.js"), "../Icons/Brain.tsx": () => import("../Icons/Brain.js"), "../Icons/BreastReconstruction.tsx": () => import("../Icons/BreastReconstruction.js"), "../Icons/BreastRemoval.tsx": () => import("../Icons/BreastRemoval.js"), "../Icons/Breasts.tsx": () => import("../Icons/Breasts.js"), "../Icons/BrokenHeart.tsx": () => import("../Icons/BrokenHeart.js"), "../Icons/BrokenPuzzle.tsx": () => import("../Icons/BrokenPuzzle.js"), "../Icons/Bus.tsx": () => import("../Icons/Bus.js"), "../Icons/Calendar.tsx": () => import("../Icons/Calendar.js"), "../Icons/CalendarChange.tsx": () => import("../Icons/CalendarChange.js"), "../Icons/CalendarCheck.tsx": () => import("../Icons/CalendarCheck.js"), "../Icons/CalendarEvent.tsx": () => import("../Icons/CalendarEvent.js"), "../Icons/CalendarSave.tsx": () => import("../Icons/CalendarSave.js"), "../Icons/Cancer.tsx": () => import("../Icons/Cancer.js"), "../Icons/Candle.tsx": () => import("../Icons/Candle.js"), "../Icons/Car.tsx": () => import("../Icons/Car.js"), "../Icons/Change.tsx": () => import("../Icons/Change.js"), "../Icons/Check.tsx": () => import("../Icons/Check.js"), "../Icons/CheckFill.tsx": () => import("../Icons/CheckFill.js"), "../Icons/CheckOutline.tsx": () => import("../Icons/CheckOutline.js"), "../Icons/Chest.tsx": () => import("../Icons/Chest.js"), "../Icons/ChevronDown.tsx": () => import("../Icons/ChevronDown.js"), "../Icons/ChevronLeft.tsx": () => import("../Icons/ChevronLeft.js"), "../Icons/ChevronRight.tsx": () => import("../Icons/ChevronRight.js"), "../Icons/ChevronUp.tsx": () => import("../Icons/ChevronUp.js"), "../Icons/ChevronsDown.tsx": () => import("../Icons/ChevronsDown.js"), "../Icons/ChevronsUp.tsx": () => import("../Icons/ChevronsUp.js"), "../Icons/ChildPlaying.tsx": () => import("../Icons/ChildPlaying.js"), "../Icons/Cigarette.tsx": () => import("../Icons/Cigarette.js"), "../Icons/Coins.tsx": () => import("../Icons/Coins.js"), "../Icons/Contacts.tsx": () => import("../Icons/Contacts.js"), "../Icons/Copy.tsx": () => import("../Icons/Copy.js"), "../Icons/CoronaCertificate.tsx": () => import("../Icons/CoronaCertificate.js"), "../Icons/Coronavirus.tsx": () => import("../Icons/Coronavirus.js"), "../Icons/Cough.tsx": () => import("../Icons/Cough.js"), "../Icons/CriticalHealthInfo.tsx": () => import("../Icons/CriticalHealthInfo.js"), "../Icons/Cross.tsx": () => import("../Icons/Cross.js"), "../Icons/DataExchange.tsx": () => import("../Icons/DataExchange.js"), "../Icons/DataReceived.tsx": () => import("../Icons/DataReceived.js"), "../Icons/DataSent.tsx": () => import("../Icons/DataSent.js"), "../Icons/Depression.tsx": () => import("../Icons/Depression.js"), "../Icons/DigestiveSystem.tsx": () => import("../Icons/DigestiveSystem.js"), "../Icons/Dizzy.tsx": () => import("../Icons/Dizzy.js"), "../Icons/Documents.tsx": () => import("../Icons/Documents.js"), "../Icons/Dog.tsx": () => import("../Icons/Dog.js"), "../Icons/DonorCard.tsx": () => import("../Icons/DonorCard.js"), "../Icons/Download.tsx": () => import("../Icons/Download.js"), "../Icons/Draft.tsx": () => import("../Icons/Draft.js"), "../Icons/EChat.tsx": () => import("../Icons/EChat.js"), "../Icons/Ear.tsx": () => import("../Icons/Ear.js"), "../Icons/EarDeaf.tsx": () => import("../Icons/EarDeaf.js"), "../Icons/EarHearingAid.tsx": () => import("../Icons/EarHearingAid.js"), "../Icons/EarNoseThroat.tsx": () => import("../Icons/EarNoseThroat.js"), "../Icons/EarVolume.tsx": () => import("../Icons/EarVolume.js"), "../Icons/ElderlyPerson.tsx": () => import("../Icons/ElderlyPerson.js"), "../Icons/Embolization.tsx": () => import("../Icons/Embolization.js"), "../Icons/EmergencyCall.tsx": () => import("../Icons/EmergencyCall.js"), "../Icons/EmoticonAnnoyed.tsx": () => import("../Icons/EmoticonAnnoyed.js"), "../Icons/EmoticonDelighted.tsx": () => import("../Icons/EmoticonDelighted.js"), "../Icons/EmoticonDisappointed.tsx": () => import("../Icons/EmoticonDisappointed.js"), "../Icons/EmoticonHappy.tsx": () => import("../Icons/EmoticonHappy.js"), "../Icons/EmoticonMeh.tsx": () => import("../Icons/EmoticonMeh.js"), "../Icons/EnterFullScreen.tsx": () => import("../Icons/EnterFullScreen.js"), "../Icons/Envelope.tsx": () => import("../Icons/Envelope.js"), "../Icons/Epilepsy.tsx": () => import("../Icons/Epilepsy.js"), "../Icons/Eraser.tsx": () => import("../Icons/Eraser.js"), "../Icons/ErrorSignFill.tsx": () => import("../Icons/ErrorSignFill.js"), "../Icons/ErrorSignStroke.tsx": () => import("../Icons/ErrorSignStroke.js"), "../Icons/EuropeanHealthCard.tsx": () => import("../Icons/EuropeanHealthCard.js"), "../Icons/ExitFullScreen.tsx": () => import("../Icons/ExitFullScreen.js"), "../Icons/Eye.tsx": () => import("../Icons/Eye.js"), "../Icons/Facebook.tsx": () => import("../Icons/Facebook.js"), "../Icons/FallingLeaf.tsx": () => import("../Icons/FallingLeaf.js"), "../Icons/Female.tsx": () => import("../Icons/Female.js"), "../Icons/FemaleDoctor.tsx": () => import("../Icons/FemaleDoctor.js"), "../Icons/Ferry.tsx": () => import("../Icons/Ferry.js"), "../Icons/File.tsx": () => import("../Icons/File.js"), "../Icons/Filter.tsx": () => import("../Icons/Filter.js"), "../Icons/FingerBleed.tsx": () => import("../Icons/FingerBleed.js"), "../Icons/FirstAidKit.tsx": () => import("../Icons/FirstAidKit.js"), "../Icons/FloppyDisk.tsx": () => import("../Icons/FloppyDisk.js"), "../Icons/Football.tsx": () => import("../Icons/Football.js"), "../Icons/Form.tsx": () => import("../Icons/Form.js"), "../Icons/Forward.tsx": () => import("../Icons/Forward.js"), "../Icons/Gallery.tsx": () => import("../Icons/Gallery.js"), "../Icons/Garden.tsx": () => import("../Icons/Garden.js"), "../Icons/GasCan.tsx": () => import("../Icons/GasCan.js"), "../Icons/GenderIdentity.tsx": () => import("../Icons/GenderIdentity.js"), "../Icons/Glasses.tsx": () => import("../Icons/Glasses.js"), "../Icons/Globe.tsx": () => import("../Icons/Globe.js"), "../Icons/Graph.tsx": () => import("../Icons/Graph.js"), "../Icons/Group.tsx": () => import("../Icons/Group.js"), "../Icons/GroupTwins.tsx": () => import("../Icons/GroupTwins.js"), "../Icons/HTMLFile.tsx": () => import("../Icons/HTMLFile.js"), "../Icons/HandWaving.tsx": () => import("../Icons/HandWaving.js"), "../Icons/HandWithDisease.tsx": () => import("../Icons/HandWithDisease.js"), "../Icons/HandsAndHeart.tsx": () => import("../Icons/HandsAndHeart.js"), "../Icons/HealthClinic.tsx": () => import("../Icons/HealthClinic.js"), "../Icons/HealthWarning.tsx": () => import("../Icons/HealthWarning.js"), "../Icons/HealthcarePerson.tsx": () => import("../Icons/HealthcarePerson.js"), "../Icons/HealthcarePersonell.tsx": () => import("../Icons/HealthcarePersonell.js"), "../Icons/HearingProtection.tsx": () => import("../Icons/HearingProtection.js"), "../Icons/Heart.tsx": () => import("../Icons/Heart.js"), "../Icons/HeartHands.tsx": () => import("../Icons/HeartHands.js"), "../Icons/HelpSign.tsx": () => import("../Icons/HelpSign.js"), "../Icons/HelpingHand.tsx": () => import("../Icons/HelpingHand.js"), "../Icons/Hemodialysis.tsx": () => import("../Icons/Hemodialysis.js"), "../Icons/Hiker.tsx": () => import("../Icons/Hiker.js"), "../Icons/Hipprosthesis.tsx": () => import("../Icons/Hipprosthesis.js"), "../Icons/History.tsx": () => import("../Icons/History.js"), "../Icons/HivAndAids.tsx": () => import("../Icons/HivAndAids.js"), "../Icons/Home.tsx": () => import("../Icons/Home.js"), "../Icons/Hormone.tsx": () => import("../Icons/Hormone.js"), "../Icons/Hospital.tsx": () => import("../Icons/Hospital.js"), "../Icons/Hourglass.tsx": () => import("../Icons/Hourglass.js"), "../Icons/ImgFile.tsx": () => import("../Icons/ImgFile.js"), "../Icons/Inbox.tsx": () => import("../Icons/Inbox.js"), "../Icons/InfoSignFill.tsx": () => import("../Icons/InfoSignFill.js"), "../Icons/InfoSignStroke.tsx": () => import("../Icons/InfoSignStroke.js"), "../Icons/Instagram.tsx": () => import("../Icons/Instagram.js"), "../Icons/Intravenous.tsx": () => import("../Icons/Intravenous.js"), "../Icons/JointPain.tsx": () => import("../Icons/JointPain.js"), "../Icons/Journal.tsx": () => import("../Icons/Journal.js"), "../Icons/JpgFile.tsx": () => import("../Icons/JpgFile.js"), "../Icons/Kidney.tsx": () => import("../Icons/Kidney.js"), "../Icons/KitchenScale.tsx": () => import("../Icons/KitchenScale.js"), "../Icons/Kjernejournal.tsx": () => import("../Icons/Kjernejournal.js"), "../Icons/Laboratory.tsx": () => import("../Icons/Laboratory.js"), "../Icons/LaptopBlog.tsx": () => import("../Icons/LaptopBlog.js"), "../Icons/LawBook.tsx": () => import("../Icons/LawBook.js"), "../Icons/LegalDocument.tsx": () => import("../Icons/LegalDocument.js"), "../Icons/LightBulb.tsx": () => import("../Icons/LightBulb.js"), "../Icons/List.tsx": () => import("../Icons/List.js"), "../Icons/Location.tsx": () => import("../Icons/Location.js"), "../Icons/Lock.tsx": () => import("../Icons/Lock.js"), "../Icons/Login.tsx": () => import("../Icons/Login.js"), "../Icons/Logout.tsx": () => import("../Icons/Logout.js"), "../Icons/Lungs.tsx": () => import("../Icons/Lungs.js"), "../Icons/Makeup.tsx": () => import("../Icons/Makeup.js"), "../Icons/MaleDoctor.tsx": () => import("../Icons/MaleDoctor.js"), "../Icons/MaleDoctorAndPerson.tsx": () => import("../Icons/MaleDoctorAndPerson.js"), "../Icons/MaleGenitalia.tsx": () => import("../Icons/MaleGenitalia.js"), "../Icons/Medicine.tsx": () => import("../Icons/Medicine.js"), "../Icons/MedicineWarning.tsx": () => import("../Icons/MedicineWarning.js"), "../Icons/MentalHealthAdult.tsx": () => import("../Icons/MentalHealthAdult.js"), "../Icons/MentalHealthChild.tsx": () => import("../Icons/MentalHealthChild.js"), "../Icons/Menu.tsx": () => import("../Icons/Menu.js"), "../Icons/Microscope.tsx": () => import("../Icons/Microscope.js"), "../Icons/Minus.tsx": () => import("../Icons/Minus.js"), "../Icons/Mirror.tsx": () => import("../Icons/Mirror.js"), "../Icons/MobilePhone.tsx": () => import("../Icons/MobilePhone.js"), "../Icons/MotherHoldingBaby.tsx": () => import("../Icons/MotherHoldingBaby.js"), "../Icons/MuscleBack.tsx": () => import("../Icons/MuscleBack.js"), "../Icons/MuscleLeg.tsx": () => import("../Icons/MuscleLeg.js"), "../Icons/Mushroom.tsx": () => import("../Icons/Mushroom.js"), "../Icons/Music.tsx": () => import("../Icons/Music.js"), "../Icons/MusselsAndSalt.tsx": () => import("../Icons/MusselsAndSalt.js"), "../Icons/NoAccess.tsx": () => import("../Icons/NoAccess.js"), "../Icons/NoEye.tsx": () => import("../Icons/NoEye.js"), "../Icons/NoFilter.tsx": () => import("../Icons/NoFilter.js"), "../Icons/Notepad.tsx": () => import("../Icons/Notepad.js"), "../Icons/Osteotomy.tsx": () => import("../Icons/Osteotomy.js"), "../Icons/PaintRoller.tsx": () => import("../Icons/PaintRoller.js"), "../Icons/PaperPlane.tsx": () => import("../Icons/PaperPlane.js"), "../Icons/PatientAndPerson.tsx": () => import("../Icons/PatientAndPerson.js"), "../Icons/Pause.tsx": () => import("../Icons/Pause.js"), "../Icons/PdfFile.tsx": () => import("../Icons/PdfFile.js"), "../Icons/Pencil.tsx": () => import("../Icons/Pencil.js"), "../Icons/PeopleTalking.tsx": () => import("../Icons/PeopleTalking.js"), "../Icons/Peritonealdialysis.tsx": () => import("../Icons/Peritonealdialysis.js"), "../Icons/Person.tsx": () => import("../Icons/Person.js"), "../Icons/PersonAndPatient.tsx": () => import("../Icons/PersonAndPatient.js"), "../Icons/PersonCancel.tsx": () => import("../Icons/PersonCancel.js"), "../Icons/PersonInXRayMachine.tsx": () => import("../Icons/PersonInXRayMachine.js"), "../Icons/PersonOverweight.tsx": () => import("../Icons/PersonOverweight.js"), "../Icons/PersonRelaxing.tsx": () => import("../Icons/PersonRelaxing.js"), "../Icons/PersonWithBrain.tsx": () => import("../Icons/PersonWithBrain.js"), "../Icons/PersonWithBrokenArm.tsx": () => import("../Icons/PersonWithBrokenArm.js"), "../Icons/PersonWithCrutches.tsx": () => import("../Icons/PersonWithCrutches.js"), "../Icons/PersonWithJaw.tsx": () => import("../Icons/PersonWithJaw.js"), "../Icons/PersonWithMagnifyingGlass.tsx": () => import("../Icons/PersonWithMagnifyingGlass.js"), "../Icons/PersonWithSenses.tsx": () => import("../Icons/PersonWithSenses.js"), "../Icons/PersonWorking.tsx": () => import("../Icons/PersonWorking.js"), "../Icons/PersonalPlan.tsx": () => import("../Icons/PersonalPlan.js"), "../Icons/PizzaSlice.tsx": () => import("../Icons/PizzaSlice.js"), "../Icons/Plane.tsx": () => import("../Icons/Plane.js"), "../Icons/Plant.tsx": () => import("../Icons/Plant.js"), "../Icons/Play.tsx": () => import("../Icons/Play.js"), "../Icons/PlusLarge.tsx": () => import("../Icons/PlusLarge.js"), "../Icons/PlusSmall.tsx": () => import("../Icons/PlusSmall.js"), "../Icons/PngFile.tsx": () => import("../Icons/PngFile.js"), "../Icons/Podcast.tsx": () => import("../Icons/Podcast.js"), "../Icons/PoisonInformation.tsx": () => import("../Icons/PoisonInformation.js"), "../Icons/Pregnant.tsx": () => import("../Icons/Pregnant.js"), "../Icons/Printer.tsx": () => import("../Icons/Printer.js"), "../Icons/Psychosis.tsx": () => import("../Icons/Psychosis.js"), "../Icons/Publication.tsx": () => import("../Icons/Publication.js"), "../Icons/Puzzle.tsx": () => import("../Icons/Puzzle.js"), "../Icons/QrCode.tsx": () => import("../Icons/QrCode.js"), "../Icons/Quarrel.tsx": () => import("../Icons/Quarrel.js"), "../Icons/RadioTherapy.tsx": () => import("../Icons/RadioTherapy.js"), "../Icons/RadioactiveTreatment.tsx": () => import("../Icons/RadioactiveTreatment.js"), "../Icons/Radioiodine.tsx": () => import("../Icons/Radioiodine.js"), "../Icons/Receipt.tsx": () => import("../Icons/Receipt.js"), "../Icons/Receptionist.tsx": () => import("../Icons/Receptionist.js"), "../Icons/Recovery.tsx": () => import("../Icons/Recovery.js"), "../Icons/Referral.tsx": () => import("../Icons/Referral.js"), "../Icons/Refresh.tsx": () => import("../Icons/Refresh.js"), "../Icons/Refund.tsx": () => import("../Icons/Refund.js"), "../Icons/Reply.tsx": () => import("../Icons/Reply.js"), "../Icons/Rocket.tsx": () => import("../Icons/Rocket.js"), "../Icons/RtfFile.tsx": () => import("../Icons/RtfFile.js"), "../Icons/STDs.tsx": () => import("../Icons/STDs.js"), "../Icons/Save.tsx": () => import("../Icons/Save.js"), "../Icons/Scale.tsx": () => import("../Icons/Scale.js"), "../Icons/ScreenReader.tsx": () => import("../Icons/ScreenReader.js"), "../Icons/Search.tsx": () => import("../Icons/Search.js"), "../Icons/SectionSign.tsx": () => import("../Icons/SectionSign.js"), "../Icons/Settings.tsx": () => import("../Icons/Settings.js"), "../Icons/Sexualorientation.tsx": () => import("../Icons/Sexualorientation.js"), "../Icons/ShakingHand.tsx": () => import("../Icons/ShakingHand.js"), "../Icons/Share.tsx": () => import("../Icons/Share.js"), "../Icons/Shield.tsx": () => import("../Icons/Shield.js"), "../Icons/ShuntOperation.tsx": () => import("../Icons/ShuntOperation.js"), "../Icons/Skeleton.tsx": () => import("../Icons/Skeleton.js"), "../Icons/Skin.tsx": () => import("../Icons/Skin.js"), "../Icons/Snake.tsx": () => import("../Icons/Snake.js"), "../Icons/Snapchat.tsx": () => import("../Icons/Snapchat.js"), "../Icons/SortDown.tsx": () => import("../Icons/SortDown.js"), "../Icons/SortUp.tsx": () => import("../Icons/SortUp.js"), "../Icons/SpeechBubble.tsx": () => import("../Icons/SpeechBubble.js"), "../Icons/Spray.tsx": () => import("../Icons/Spray.js"), "../Icons/Stopwatch.tsx": () => import("../Icons/Stopwatch.js"), "../Icons/Sun.tsx": () => import("../Icons/Sun.js"), "../Icons/SupportingPerson.tsx": () => import("../Icons/SupportingPerson.js"), "../Icons/Surgery.tsx": () => import("../Icons/Surgery.js"), "../Icons/Syringe.tsx": () => import("../Icons/Syringe.js"), "../Icons/Taxi.tsx": () => import("../Icons/Taxi.js"), "../Icons/TeddyBear.tsx": () => import("../Icons/TeddyBear.js"), "../Icons/Teenagers.tsx": () => import("../Icons/Teenagers.js"), "../Icons/ThinkingAboutBaby.tsx": () => import("../Icons/ThinkingAboutBaby.js"), "../Icons/Ticket.tsx": () => import("../Icons/Ticket.js"), "../Icons/TimePassing.tsx": () => import("../Icons/TimePassing.js"), "../Icons/Tombstone.tsx": () => import("../Icons/Tombstone.js"), "../Icons/Toolbox.tsx": () => import("../Icons/Toolbox.js"), "../Icons/Tooth.tsx": () => import("../Icons/Tooth.js"), "../Icons/TotalKneeProsthesis.tsx": () => import("../Icons/TotalKneeProsthesis.js"), "../Icons/Train.tsx": () => import("../Icons/Train.js"), "../Icons/Transplantation.tsx": () => import("../Icons/Transplantation.js"), "../Icons/TrashCan.tsx": () => import("../Icons/TrashCan.js"), "../Icons/TravelRoute.tsx": () => import("../Icons/TravelRoute.js"), "../Icons/TriangleX.tsx": () => import("../Icons/TriangleX.js"), "../Icons/Twitter.tsx": () => import("../Icons/Twitter.js"), "../Icons/Undo.tsx": () => import("../Icons/Undo.js"), "../Icons/UniProsthesis.tsx": () => import("../Icons/UniProsthesis.js"), "../Icons/Upload.tsx": () => import("../Icons/Upload.js"), "../Icons/UserOrganization.tsx": () => import("../Icons/UserOrganization.js"), "../Icons/Vaccine.tsx": () => import("../Icons/Vaccine.js"), "../Icons/VerticalDots.tsx": () => import("../Icons/VerticalDots.js"), "../Icons/VideoCamera.tsx": () => import("../Icons/VideoCamera.js"), "../Icons/VideoChat.tsx": () => import("../Icons/VideoChat.js"), "../Icons/Wallet.tsx": () => import("../Icons/Wallet.js"), "../Icons/Watch.tsx": () => import("../Icons/Watch.js"), "../Icons/Website.tsx": () => import("../Icons/Website.js"), "../Icons/Wheelchair.tsx": () => import("../Icons/Wheelchair.js"), "../Icons/WheelchairActive.tsx": () => import("../Icons/WheelchairActive.js"), "../Icons/Window.tsx": () => import("../Icons/Window.js"), "../Icons/WordDocument.tsx": () => import("../Icons/WordDocument.js"), "../Icons/WorkSuitcase.tsx": () => import("../Icons/WorkSuitcase.js"), "../Icons/X.tsx": () => import("../Icons/X.js"), "../Icons/XOutline.tsx": () => import("../Icons/XOutline.js"), "../Icons/XmlFile.tsx": () => import("../Icons/XmlFile.js"), "../Icons/YouTube.tsx": () => import("../Icons/YouTube.js"), "../Icons/Zoom.tsx": () => import("../Icons/Zoom.js") }), `../Icons/${o}.tsx`)), d = ({ iconName: o, size: t = l.Small, ...r }) => {
8
+ const i = m(() => h(o), [o]);
9
+ if (x())
9
10
  return null;
10
11
  const n = /* @__PURE__ */ s.createElement(
11
12
  "svg",
@@ -20,11 +21,11 @@ const l = () => typeof document > "u", d = (o) => p(() => c(/* @__PURE__ */ Obje
20
21
  height: t
21
22
  }
22
23
  );
23
- return /* @__PURE__ */ s.createElement(I, { fallback: n, reset: o }, /* @__PURE__ */ s.createElement(e, { fallback: n }, /* @__PURE__ */ s.createElement(x, { svgIcon: i, size: t, ...r })));
24
- }, y = h;
24
+ return /* @__PURE__ */ s.createElement(I, { fallback: n, reset: o }, /* @__PURE__ */ s.createElement(e, { fallback: n }, /* @__PURE__ */ s.createElement(a, { svgIcon: i, size: t, ...r })));
25
+ }, A = d;
25
26
  export {
26
- h as LazyIcon,
27
- y as default,
28
- d as lazyLoadIcon
27
+ d as LazyIcon,
28
+ A as default,
29
+ h as lazyLoadIcon
29
30
  };
30
31
  //# sourceMappingURL=LazyIcon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LazyIcon.js","sources":["../../../src/components/LazyIcon/LazyIcon.tsx"],"sourcesContent":["import React, { lazy, Suspense, useMemo } from 'react';\n\nimport ErrorBoundary from './ErrorBoundary';\nimport Icon, { BaseIconProps, IconSize, SvgIcon } from '../Icon';\nimport { IconName } from '../Icons/IconNames';\n\nexport interface LazyIconProps extends BaseIconProps {\n // Navnet på ikonet som skal vises. Tilsvarer filnavnet til ikonet i Icons-mappen\n iconName: IconName;\n}\n\nconst isServerSide = (): boolean => typeof document === 'undefined';\n\nexport const lazyLoadIcon = (iconName: IconName): React.LazyExoticComponent<SvgIcon> =>\n lazy<SvgIcon>(() => import(`../Icons/${iconName}.tsx`));\n\nexport const LazyIcon: React.FC<LazyIconProps> = ({ iconName, size = IconSize.Small, ...rest }) => {\n const icon = useMemo(() => lazyLoadIcon(iconName), [iconName]);\n\n if (isServerSide()) {\n return null;\n }\n\n const fallback = (\n <svg\n data-testid={'fallback'}\n role={'presentation'}\n focusable={false}\n aria-hidden={true}\n viewBox=\"0 0 48 48\"\n style={{ minWidth: size, minHeight: size }}\n width={size}\n height={size}\n />\n );\n\n return (\n <ErrorBoundary fallback={fallback} reset={iconName}>\n <Suspense fallback={fallback}>\n <Icon svgIcon={icon} size={size} {...rest} />\n </Suspense>\n </ErrorBoundary>\n );\n};\n\nexport default LazyIcon;\n"],"names":["isServerSide","lazyLoadIcon","iconName","lazy","__variableDynamicImportRuntimeHelper","LazyIcon","size","IconSize","rest","icon","useMemo","fallback","React","ErrorBoundary","Suspense","Icon","LazyIcon$1"],"mappings":"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"}
1
+ {"version":3,"file":"LazyIcon.js","sources":["../../../src/components/LazyIcon/LazyIcon.tsx"],"sourcesContent":["import React, { lazy, Suspense, useMemo } from 'react';\n\nimport ErrorBoundary from './ErrorBoundary';\nimport { isServerSide } from './utils';\nimport Icon, { BaseIconProps, IconSize, SvgIcon } from '../Icon';\nimport { IconName } from '../Icons/IconNames';\n\nexport interface LazyIconProps extends BaseIconProps {\n // Navnet på ikonet som skal vises. Tilsvarer filnavnet til ikonet i Icons-mappen\n iconName: IconName;\n}\n\nexport const lazyLoadIcon = (iconName: IconName): React.LazyExoticComponent<SvgIcon> =>\n lazy<SvgIcon>(() => import(`../Icons/${iconName}.tsx`));\n\nexport const LazyIcon: React.FC<LazyIconProps> = ({ iconName, size = IconSize.Small, ...rest }) => {\n const icon = useMemo(() => lazyLoadIcon(iconName), [iconName]);\n\n if (isServerSide()) {\n return null;\n }\n\n const fallback = (\n <svg\n data-testid={'fallback'}\n role={'presentation'}\n focusable={false}\n aria-hidden={true}\n viewBox=\"0 0 48 48\"\n style={{ minWidth: size, minHeight: size }}\n width={size}\n height={size}\n />\n );\n\n return (\n <ErrorBoundary fallback={fallback} reset={iconName}>\n <Suspense fallback={fallback}>\n <Icon svgIcon={icon} size={size} {...rest} />\n </Suspense>\n </ErrorBoundary>\n );\n};\n\nexport default LazyIcon;\n"],"names":["lazyLoadIcon","iconName","lazy","__variableDynamicImportRuntimeHelper","LazyIcon","size","IconSize","rest","icon","useMemo","isServerSide","fallback","React","ErrorBoundary","Suspense","Icon","LazyIcon$1"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const isServerSide: () => boolean;
2
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/components/LazyIcon/utils.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,QAAO,OAA0C,CAAC"}
@@ -0,0 +1,5 @@
1
+ const e = () => typeof document > "u";
2
+ export {
3
+ e as isServerSide
4
+ };
5
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sources":["../../../src/components/LazyIcon/utils.ts"],"sourcesContent":["export const isServerSide = (): boolean => typeof document === 'undefined';\n"],"names":["isServerSide"],"mappings":"AAAa,MAAAA,IAAe,MAAe,OAAO,WAAa;"}
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import { BaseIllustrationProps, SvgIllustration } from '../Illustration';
3
+ import { IllustrationName } from '../Illustrations/IllustrationNames';
4
+ export interface LazyIllustrationProps extends BaseIllustrationProps {
5
+ illustrationName: IllustrationName;
6
+ }
7
+ export declare const lazyLoadIllustration: (illustrationName: IllustrationName, size: number) => React.LazyExoticComponent<SvgIllustration>;
8
+ export declare const LazyIllustration: React.FC<LazyIllustrationProps>;
9
+ export default LazyIllustration;
10
+ //# sourceMappingURL=LazyIllustration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LazyIllustration.d.ts","sourceRoot":"","sources":["../../../src/components/LazyIllustration/LazyIllustration.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkC,MAAM,OAAO,CAAC;AAEvD,OAAqB,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvF,OAAO,EAAE,gBAAgB,EAAwB,MAAM,oCAAoC,CAAC;AAI5F,MAAM,WAAW,qBAAsB,SAAQ,qBAAqB;IAElE,gBAAgB,EAAE,gBAAgB,CAAC;CACpC;AAED,eAAO,MAAM,oBAAoB,qBAAsB,gBAAgB,QAAQ,MAAM,KAAG,MAAM,mBAAmB,CAAC,eAAe,CAKhI,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CA2B5D,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
@@ -0,0 +1,35 @@
1
+ import s from "../../_virtual/dynamic-import-helper.js";
2
+ import e, { lazy as i, useMemo as n, Suspense as m } from "react";
3
+ import u from "../Illustration/Illustration.js";
4
+ import { getIllustration as c } from "../Illustration/utils.js";
5
+ import { IllustrationSizeList as p } from "../Illustrations/IllustrationNames.js";
6
+ import f from "../LazyIcon/ErrorBoundary.js";
7
+ import { isServerSide as I } from "../LazyIcon/utils.js";
8
+ const d = (r, t) => {
9
+ const o = p[r], l = c({ size: t, ...o });
10
+ return i(() => s(/* @__PURE__ */ Object.assign({ "../Illustrations/Doctor.tsx": () => import("../Illustrations/Doctor.js"), "../Illustrations/DoctorMedium.tsx": () => import("../Illustrations/DoctorMedium.js"), "../Illustrations/DoctorSmall.tsx": () => import("../Illustrations/DoctorSmall.js"), "../Illustrations/HealthcarePersonnel.tsx": () => import("../Illustrations/HealthcarePersonnel.js"), "../Illustrations/HealthcarePersonnelMedium.tsx": () => import("../Illustrations/HealthcarePersonnelMedium.js"), "../Illustrations/HealthcarePersonnelSmall.tsx": () => import("../Illustrations/HealthcarePersonnelSmall.js") }), `../Illustrations/${l}.tsx`));
11
+ }, h = ({ illustrationName: r, size: t = 512, ...o }) => {
12
+ const l = n(() => d(r, t), [r, t]);
13
+ if (I())
14
+ return null;
15
+ const a = /* @__PURE__ */ e.createElement(
16
+ "svg",
17
+ {
18
+ "data-testid": "fallback",
19
+ role: "presentation",
20
+ focusable: !1,
21
+ "aria-hidden": !0,
22
+ viewBox: "0 0 512 512",
23
+ style: { minWidth: t, minHeight: t },
24
+ width: t,
25
+ height: t
26
+ }
27
+ );
28
+ return /* @__PURE__ */ e.createElement(f, { fallback: a, reset: r }, /* @__PURE__ */ e.createElement(m, { fallback: a }, /* @__PURE__ */ e.createElement(u, { illustration: l, size: t, ...o })));
29
+ }, v = h;
30
+ export {
31
+ h as LazyIllustration,
32
+ v as default,
33
+ d as lazyLoadIllustration
34
+ };
35
+ //# sourceMappingURL=LazyIllustration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LazyIllustration.js","sources":["../../../src/components/LazyIllustration/LazyIllustration.tsx"],"sourcesContent":["import React, { lazy, Suspense, useMemo } from 'react';\n\nimport Illustration, { BaseIllustrationProps, SvgIllustration } from '../Illustration';\nimport { getIllustration } from '../Illustration/utils';\nimport { IllustrationName, IllustrationSizeList } from '../Illustrations/IllustrationNames';\nimport ErrorBoundary from '../LazyIcon/ErrorBoundary';\nimport { isServerSide } from '../LazyIcon/utils';\n\nexport interface LazyIllustrationProps extends BaseIllustrationProps {\n // Navnet på illustrasjonen som skal vises. Tilsvarer filnavnet til illustrasjonen i Icons-mappen\n illustrationName: IllustrationName;\n}\n\nexport const lazyLoadIllustration = (illustrationName: IllustrationName, size: number): React.LazyExoticComponent<SvgIllustration> => {\n const sizes = IllustrationSizeList[illustrationName];\n const illustrationFileName = getIllustration({ size, ...sizes });\n\n return lazy<SvgIllustration>(() => import(`../Illustrations/${illustrationFileName}.tsx`));\n};\n\nexport const LazyIllustration: React.FC<LazyIllustrationProps> = ({ illustrationName, size = 512, ...rest }) => {\n const illustration = useMemo(() => lazyLoadIllustration(illustrationName, size), [illustrationName, size]);\n\n if (isServerSide()) {\n return null;\n }\n\n const fallback = (\n <svg\n data-testid={'fallback'}\n role={'presentation'}\n focusable={false}\n aria-hidden={true}\n viewBox=\"0 0 512 512\"\n style={{ minWidth: size, minHeight: size }}\n width={size}\n height={size}\n />\n );\n\n return (\n <ErrorBoundary fallback={fallback} reset={illustrationName}>\n <Suspense fallback={fallback}>\n <Illustration illustration={illustration} size={size} {...rest} />\n </Suspense>\n </ErrorBoundary>\n );\n};\n\nexport default LazyIllustration;\n"],"names":["lazyLoadIllustration","illustrationName","size","sizes","IllustrationSizeList","illustrationFileName","getIllustration","lazy","__variableDynamicImportRuntimeHelper","LazyIllustration","rest","illustration","useMemo","isServerSide","fallback","React","ErrorBoundary","Suspense","Illustration","LazyIllustration$1"],"mappings":";;;;;;;AAaa,MAAAA,IAAuB,CAACC,GAAoCC,MAA6D;AAC9H,QAAAC,IAAQC,EAAqBH,CAAgB,GAC7CI,IAAuBC,EAAgB,EAAE,MAAAJ,GAAM,GAAGC,EAAO,CAAA;AAE/D,SAAOI,EAAsB,MAAMC,EAAsD,uBAAA,OAAA,EAAA,+BAAA,MAAA,OAAA,4BAAA,GAAA,qCAAA,MAAA,OAAA,kCAAA,GAAA,oCAAA,MAAA,OAAA,iCAAA,GAAA,4CAAA,MAAA,OAAA,yCAAA,GAAA,kDAAA,MAAA,OAAA,+CAAA,GAAA,iDAAA,MAAA,OAAA,8CAAA,EAAA,CAAA,GAAA,oBAAAH,CAAA,MAAA,CAAA;AAC3F,GAEaI,IAAoD,CAAC,EAAE,kBAAAR,GAAkB,MAAAC,IAAO,KAAK,GAAGQ,QAAW;AACxG,QAAAC,IAAeC,EAAQ,MAAMZ,EAAqBC,GAAkBC,CAAI,GAAG,CAACD,GAAkBC,CAAI,CAAC;AAEzG,MAAIW;AACK,WAAA;AAGT,QAAMC,IACJC,gBAAAA,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,eAAa;AAAA,MACb,MAAM;AAAA,MACN,WAAW;AAAA,MACX,eAAa;AAAA,MACb,SAAQ;AAAA,MACR,OAAO,EAAE,UAAUb,GAAM,WAAWA,EAAK;AAAA,MACzC,OAAOA;AAAA,MACP,QAAQA;AAAA,IAAA;AAAA,EAAA;AAIZ,SACGa,gBAAAA,EAAA,cAAAC,GAAA,EAAc,UAAAF,GAAoB,OAAOb,KACvCc,gBAAAA,EAAA,cAAAE,GAAA,EAAS,UAAAH,KACRC,gBAAAA,EAAA,cAACG,KAAa,cAAAP,GAA4B,MAAAT,GAAa,GAAGQ,GAAM,CAClE,CACF;AAEJ,GAEAS,IAAeV;"}
@@ -0,0 +1,4 @@
1
+ import LazyIllustration from './LazyIllustration';
2
+ export * from './LazyIllustration';
3
+ export default LazyIllustration;
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/LazyIllustration/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,cAAc,oBAAoB,CAAC;AACnC,eAAe,gBAAgB,CAAC"}
@@ -0,0 +1,8 @@
1
+ import a from "./LazyIllustration.js";
2
+ import { LazyIllustration as r, lazyLoadIllustration as i } from "./LazyIllustration.js";
3
+ export {
4
+ r as LazyIllustration,
5
+ a as default,
6
+ i as lazyLoadIllustration
7
+ };
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
@@ -1,7 +1,6 @@
1
1
  import React from 'react';
2
2
  import { PaletteNames } from '../../theme/palette';
3
3
  import { AnchorLinkTags, AnchorLinkTargets } from '../AnchorLink';
4
- import { IllustrationProps } from '../Illustration/Illustration';
5
4
  import { TitleTags } from '../Title';
6
5
  export type PromoPanelColors = Extract<PaletteNames, 'neutral' | 'blueberry' | 'cherry'>;
7
6
  interface PromoPanelProps {
@@ -10,7 +9,7 @@ interface PromoPanelProps {
10
9
  /** Used as the link text if title is not set. */
11
10
  children?: string;
12
11
  /** Illustration element */
13
- illustration?: React.FC<IllustrationProps>;
12
+ illustration?: 'Doctor' | 'HealthcarePersonnel';
14
13
  /** Changes the underlying element of the title. */
15
14
  titleHtmlMarkup?: TitleTags;
16
15
  /** Changes the background color. Default: white */
@@ -1 +1 @@
1
- {"version":3,"file":"PromoPanel.d.ts","sourceRoot":"","sources":["../../../src/components/PromoPanel/PromoPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAIlE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAc,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAI5C,MAAM,MAAM,gBAAgB,GAAG,OAAO,CAAC,YAAY,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC,CAAC;AAEzF,UAAU,eAAe;IACvB,wGAAwG;IACxG,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iDAAiD;IACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2BAA2B;IAC3B,YAAY,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC;IAC3C,mDAAmD;IACnD,eAAe,CAAC,EAAE,SAAS,CAAC;IAC5B,mDAAmD;IACnD,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,uCAAuC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wHAAwH;IACxH,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,gFAAgF;IAChF,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,8EAA8E;IAC9E,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,gFAAgF;IAChF,aAAa,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC;IACnC,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA8BD,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAgDzC,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"PromoPanel.d.ts","sourceRoot":"","sources":["../../../src/components/PromoPanel/PromoPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAKlE,OAAc,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAI5C,MAAM,MAAM,gBAAgB,GAAG,OAAO,CAAC,YAAY,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC,CAAC;AAEzF,UAAU,eAAe;IACvB,wGAAwG;IACxG,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iDAAiD;IACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2BAA2B;IAC3B,YAAY,CAAC,EAAE,QAAQ,GAAG,qBAAqB,CAAC;IAChD,mDAAmD;IACnD,eAAe,CAAC,EAAE,SAAS,CAAC;IAC5B,mDAAmD;IACnD,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,uCAAuC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wHAAwH;IACxH,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,gFAAgF;IAChF,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,8EAA8E;IAC9E,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,gFAAgF;IAChF,aAAa,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC;IACnC,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA8BD,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAiEzC,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -1,42 +1,51 @@
1
1
  import t from "react";
2
- import d from "classnames";
3
- import { AnalyticsId as s, IconSize as o } from "../../constants.js";
4
- import { useBreakpoint as h, Breakpoint as C } from "../../hooks/useBreakpoint.js";
2
+ import h from "classnames";
3
+ import { AnalyticsId as C, IconSize as a } from "../../constants.js";
4
+ import { useBreakpoint as g, Breakpoint as r } from "../../hooks/useBreakpoint.js";
5
5
  import { useHover as E } from "../../hooks/useHover.js";
6
- import { getColor as r } from "../../theme/currys/color.js";
6
+ import { getColor as m } from "../../theme/currys/color.js";
7
7
  import { Icon as P } from "../Icon/Icon.js";
8
8
  import b from "../Icons/ArrowRight.js";
9
- import g from "../Icons/ArrowUpRight.js";
10
- import _ from "../Title/Title.js";
9
+ import _ from "../Icons/ArrowUpRight.js";
10
+ import v from "../LazyIllustration/LazyIllustration.js";
11
+ import y from "../Title/Title.js";
11
12
  import n from "./styles.module.scss";
12
- const v = (e) => e.linkComponent ? t.cloneElement(e.linkComponent, { children: e.children }) : e.linkHtmlMarkup === "button" ? /* @__PURE__ */ t.createElement("button", { type: "button", onClick: e.linkOnClick }, e.children) : /* @__PURE__ */ t.createElement("a", { href: e.href, target: e.target, onClick: e.linkOnClick }, e.children), y = (e) => {
13
- const { isHovered: i, hoverRef: a } = E(), { color: m = "neutral", titleHtmlMarkup: c = "h2", linkHtmlMarkup: k = "a" } = e, u = h(), f = d(
13
+ const I = (e) => e.linkComponent ? t.cloneElement(e.linkComponent, { children: e.children }) : e.linkHtmlMarkup === "button" ? /* @__PURE__ */ t.createElement("button", { type: "button", onClick: e.linkOnClick }, e.children) : /* @__PURE__ */ t.createElement("a", { href: e.href, target: e.target, onClick: e.linkOnClick }, e.children), N = (e) => {
14
+ const { isHovered: c, hoverRef: u } = E(), { color: o = "neutral", titleHtmlMarkup: k = "h2", linkHtmlMarkup: f = "a" } = e, l = g(), s = h(
14
15
  n.promopanel,
15
- n[`promopanel--${m}`],
16
+ n[`promopanel--${o}`],
16
17
  !e.illustration && n["promopanel--no-illustration"]
17
- ), l = /* @__PURE__ */ t.createElement(
18
- v,
18
+ ), i = /* @__PURE__ */ t.createElement(
19
+ I,
19
20
  {
20
21
  href: e.href,
21
22
  target: e.target,
22
23
  linkComponent: e.linkComponent,
23
- linkHtmlMarkup: k,
24
+ linkHtmlMarkup: f,
24
25
  linkOnClick: e.linkOnClick
25
26
  },
26
27
  e.title || e.children
27
- );
28
- return /* @__PURE__ */ t.createElement("div", { className: f, "data-testid": e.testId, "data-analyticsid": s.PromoPanel, ref: a }, t.isValidElement(e.illustration) && t.cloneElement(e.illustration, { className: n.promopanel__illustration }), /* @__PURE__ */ t.createElement("div", { className: n.promopanel__content }, e.title && /* @__PURE__ */ t.createElement(_, { htmlMarkup: c, appearance: "title3" }, l), e.title ? e.children : l), /* @__PURE__ */ t.createElement("div", { className: n.promopanel__icon }, /* @__PURE__ */ t.createElement(
28
+ ), d = (() => l >= r.lg ? 180 : l >= r.md ? 156 : 120)();
29
+ return /* @__PURE__ */ t.createElement("div", { className: s, "data-testid": e.testId, "data-analyticsid": C.PromoPanel, ref: u }, e.illustration && /* @__PURE__ */ t.createElement(
30
+ v,
31
+ {
32
+ illustrationName: e.illustration,
33
+ size: d,
34
+ color: o,
35
+ className: n.promopanel__illustration
36
+ }
37
+ ), /* @__PURE__ */ t.createElement("div", { className: n.promopanel__content }, e.title && /* @__PURE__ */ t.createElement(y, { htmlMarkup: k, appearance: "title3" }, i), e.title ? e.children : i), /* @__PURE__ */ t.createElement("div", { className: n.promopanel__icon }, /* @__PURE__ */ t.createElement(
29
38
  P,
30
39
  {
31
- svgIcon: e.target === "_blank" ? g : b,
32
- size: u >= C.md ? o.Small : o.XSmall,
33
- isHovered: i,
34
- color: r("blueberry", 500),
35
- hoverColor: r("blueberry", 600)
40
+ svgIcon: e.target === "_blank" ? _ : b,
41
+ size: l >= r.md ? a.Small : a.XSmall,
42
+ isHovered: c,
43
+ color: m("blueberry", 500),
44
+ hoverColor: m("blueberry", 600)
36
45
  }
37
46
  )));
38
- }, L = y;
47
+ }, T = N;
39
48
  export {
40
- L as default
49
+ T as default
41
50
  };
42
51
  //# sourceMappingURL=PromoPanel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PromoPanel.js","sources":["../../../src/components/PromoPanel/PromoPanel.tsx"],"sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\n\nimport { AnalyticsId, IconSize } from '../../constants';\nimport { Breakpoint, useBreakpoint } from '../../hooks/useBreakpoint';\nimport { useHover } from '../../hooks/useHover';\nimport { getColor } from '../../theme/currys/color';\nimport { PaletteNames } from '../../theme/palette';\nimport { AnchorLinkTags, AnchorLinkTargets } from '../AnchorLink';\nimport Icon from '../Icon';\nimport ArrowRight from '../Icons/ArrowRight';\nimport ArrowUpRight from '../Icons/ArrowUpRight';\nimport { IllustrationProps } from '../Illustration/Illustration';\nimport Title, { TitleTags } from '../Title';\n\nimport styles from './styles.module.scss';\n\nexport type PromoPanelColors = Extract<PaletteNames, 'neutral' | 'blueberry' | 'cherry'>;\n\ninterface PromoPanelProps {\n /** Used as the link text if set. title or children must be set for the link to have accessible text. */\n title?: string;\n /** Used as the link text if title is not set. */\n children?: string;\n /** Illustration element */\n illustration?: React.FC<IllustrationProps>;\n /** Changes the underlying element of the title. */\n titleHtmlMarkup?: TitleTags;\n /** Changes the background color. Default: white */\n color?: PromoPanelColors;\n /** Not used if linkComponent is set */\n href?: string;\n /** Anchor link target. If linkComponent is set, this prop is only used to display the right icon for external links. */\n target?: AnchorLinkTargets;\n /** HTML markup for anchor link. Not used if linkComponent is set. Default: a */\n linkHtmlMarkup?: AnchorLinkTags;\n /** Function that is called when clicked. Not used if linkComponent is set. */\n linkOnClick?: () => void;\n /** Custom link component. Must be \"a\" a or \"button\" element with no styling. */\n linkComponent?: React.ReactElement;\n /** Sets the data-testid attribute. */\n testId?: string;\n}\n\ninterface PromoPanelLinkProps {\n children?: string;\n href?: string;\n target?: AnchorLinkTargets;\n linkComponent?: React.ReactElement;\n linkHtmlMarkup?: AnchorLinkTags;\n linkOnClick?: () => void;\n}\n\nconst PromoPanelLink: React.FC<PromoPanelLinkProps> = props => {\n if (props.linkComponent) {\n return React.cloneElement(props.linkComponent, { children: props.children });\n }\n\n if (props.linkHtmlMarkup === 'button') {\n return (\n <button type={'button'} onClick={props.linkOnClick}>\n {props.children}\n </button>\n );\n }\n return (\n <a href={props.href} target={props.target} onClick={props.linkOnClick}>\n {props.children}\n </a>\n );\n};\n\nconst PromoPanel: React.FC<PromoPanelProps> = props => {\n const { isHovered, hoverRef } = useHover<HTMLDivElement>();\n\n const { color = 'neutral', titleHtmlMarkup = 'h2', linkHtmlMarkup = 'a' } = props;\n\n const breakpoint = useBreakpoint();\n\n const promoPanelClasses = classNames(\n styles.promopanel,\n styles[`promopanel--${color}`],\n !props.illustration && styles['promopanel--no-illustration']\n );\n\n const promoPanelLink = (\n <PromoPanelLink\n href={props.href}\n target={props.target}\n linkComponent={props.linkComponent}\n linkHtmlMarkup={linkHtmlMarkup}\n linkOnClick={props.linkOnClick}\n >\n {props.title || props.children}\n </PromoPanelLink>\n );\n\n return (\n <div className={promoPanelClasses} data-testid={props.testId} data-analyticsid={AnalyticsId.PromoPanel} ref={hoverRef}>\n {React.isValidElement<IllustrationProps>(props.illustration) &&\n React.cloneElement(props.illustration, { className: styles.promopanel__illustration })}\n <div className={styles.promopanel__content}>\n {props.title && (\n <Title htmlMarkup={titleHtmlMarkup} appearance={'title3'}>\n {promoPanelLink}\n </Title>\n )}\n {!props.title ? promoPanelLink : props.children}\n </div>\n <div className={styles.promopanel__icon}>\n <Icon\n svgIcon={props.target === '_blank' ? ArrowUpRight : ArrowRight}\n size={breakpoint >= Breakpoint.md ? IconSize.Small : IconSize.XSmall}\n isHovered={isHovered}\n color={getColor('blueberry', 500)}\n hoverColor={getColor('blueberry', 600)}\n />\n </div>\n </div>\n );\n};\n\nexport default PromoPanel;\n"],"names":["PromoPanelLink","props","React","PromoPanel","isHovered","hoverRef","useHover","color","titleHtmlMarkup","linkHtmlMarkup","breakpoint","useBreakpoint","promoPanelClasses","classNames","styles","promoPanelLink","AnalyticsId","Title","Icon","ArrowUpRight","ArrowRight","Breakpoint","IconSize","getColor","PromoPanel$1"],"mappings":";;;;;;;;;;;AAsDA,MAAMA,IAAgD,CAASC,MACzDA,EAAM,gBACDC,EAAM,aAAaD,EAAM,eAAe,EAAE,UAAUA,EAAM,UAAU,IAGzEA,EAAM,mBAAmB,WAEzBC,gBAAAA,EAAA,cAAC,YAAO,MAAM,UAAU,SAASD,EAAM,YAAA,GACpCA,EAAM,QACT,IAIDC,gBAAAA,EAAA,cAAA,KAAA,EAAE,MAAMD,EAAM,MAAM,QAAQA,EAAM,QAAQ,SAASA,EAAM,YACvD,GAAAA,EAAM,QACT,GAIEE,IAAwC,CAASF,MAAA;AACrD,QAAM,EAAE,WAAAG,GAAW,UAAAC,EAAS,IAAIC,EAAyB,GAEnD,EAAE,OAAAC,IAAQ,WAAW,iBAAAC,IAAkB,MAAM,gBAAAC,IAAiB,IAAQ,IAAAR,GAEtES,IAAaC,KAEbC,IAAoBC;AAAA,IACxBC,EAAO;AAAA,IACPA,EAAO,eAAeP,CAAK,EAAE;AAAA,IAC7B,CAACN,EAAM,gBAAgBa,EAAO,6BAA6B;AAAA,EAAA,GAGvDC,IACJb,gBAAAA,EAAA;AAAA,IAACF;AAAA,IAAA;AAAA,MACC,MAAMC,EAAM;AAAA,MACZ,QAAQA,EAAM;AAAA,MACd,eAAeA,EAAM;AAAA,MACrB,gBAAAQ;AAAA,MACA,aAAaR,EAAM;AAAA,IAAA;AAAA,IAElBA,EAAM,SAASA,EAAM;AAAA,EAAA;AAKxB,SAAAC,gBAAAA,EAAA,cAAC,OAAI,EAAA,WAAWU,GAAmB,eAAaX,EAAM,QAAQ,oBAAkBe,EAAY,YAAY,KAAKX,EAAA,GAC1GH,EAAM,eAAkCD,EAAM,YAAY,KACzDC,EAAM,aAAaD,EAAM,cAAc,EAAE,WAAWa,EAAO,yBAA0B,CAAA,GACtFZ,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAWY,EAAO,oBACpB,GAAAb,EAAM,SACJC,gBAAAA,EAAA,cAAAe,GAAA,EAAM,YAAYT,GAAiB,YAAY,SAAA,GAC7CO,CACH,GAEAd,EAAM,QAAyBA,EAAM,WAAvBc,CAClB,GACCb,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAWY,EAAO,iBACrB,GAAAZ,gBAAAA,EAAA;AAAA,IAACgB;AAAA,IAAA;AAAA,MACC,SAASjB,EAAM,WAAW,WAAWkB,IAAeC;AAAA,MACpD,MAAMV,KAAcW,EAAW,KAAKC,EAAS,QAAQA,EAAS;AAAA,MAC9D,WAAAlB;AAAA,MACA,OAAOmB,EAAS,aAAa,GAAG;AAAA,MAChC,YAAYA,EAAS,aAAa,GAAG;AAAA,IAAA;AAAA,EAEzC,CAAA,CACF;AAEJ,GAEAC,IAAerB;"}
1
+ {"version":3,"file":"PromoPanel.js","sources":["../../../src/components/PromoPanel/PromoPanel.tsx"],"sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\n\nimport { AnalyticsId, IconSize } from '../../constants';\nimport { Breakpoint, useBreakpoint } from '../../hooks/useBreakpoint';\nimport { useHover } from '../../hooks/useHover';\nimport { getColor } from '../../theme/currys/color';\nimport { PaletteNames } from '../../theme/palette';\nimport { AnchorLinkTags, AnchorLinkTargets } from '../AnchorLink';\nimport Icon from '../Icon';\nimport ArrowRight from '../Icons/ArrowRight';\nimport ArrowUpRight from '../Icons/ArrowUpRight';\nimport LazyIllustration from '../LazyIllustration';\nimport Title, { TitleTags } from '../Title';\n\nimport styles from './styles.module.scss';\n\nexport type PromoPanelColors = Extract<PaletteNames, 'neutral' | 'blueberry' | 'cherry'>;\n\ninterface PromoPanelProps {\n /** Used as the link text if set. title or children must be set for the link to have accessible text. */\n title?: string;\n /** Used as the link text if title is not set. */\n children?: string;\n /** Illustration element */\n illustration?: 'Doctor' | 'HealthcarePersonnel';\n /** Changes the underlying element of the title. */\n titleHtmlMarkup?: TitleTags;\n /** Changes the background color. Default: white */\n color?: PromoPanelColors;\n /** Not used if linkComponent is set */\n href?: string;\n /** Anchor link target. If linkComponent is set, this prop is only used to display the right icon for external links. */\n target?: AnchorLinkTargets;\n /** HTML markup for anchor link. Not used if linkComponent is set. Default: a */\n linkHtmlMarkup?: AnchorLinkTags;\n /** Function that is called when clicked. Not used if linkComponent is set. */\n linkOnClick?: () => void;\n /** Custom link component. Must be \"a\" a or \"button\" element with no styling. */\n linkComponent?: React.ReactElement;\n /** Sets the data-testid attribute. */\n testId?: string;\n}\n\ninterface PromoPanelLinkProps {\n children?: string;\n href?: string;\n target?: AnchorLinkTargets;\n linkComponent?: React.ReactElement;\n linkHtmlMarkup?: AnchorLinkTags;\n linkOnClick?: () => void;\n}\n\nconst PromoPanelLink: React.FC<PromoPanelLinkProps> = props => {\n if (props.linkComponent) {\n return React.cloneElement(props.linkComponent, { children: props.children });\n }\n\n if (props.linkHtmlMarkup === 'button') {\n return (\n <button type={'button'} onClick={props.linkOnClick}>\n {props.children}\n </button>\n );\n }\n return (\n <a href={props.href} target={props.target} onClick={props.linkOnClick}>\n {props.children}\n </a>\n );\n};\n\nconst PromoPanel: React.FC<PromoPanelProps> = props => {\n const { isHovered, hoverRef } = useHover<HTMLDivElement>();\n\n const { color = 'neutral', titleHtmlMarkup = 'h2', linkHtmlMarkup = 'a' } = props;\n\n const breakpoint = useBreakpoint();\n\n const promoPanelClasses = classNames(\n styles.promopanel,\n styles[`promopanel--${color}`],\n !props.illustration && styles['promopanel--no-illustration']\n );\n\n const promoPanelLink = (\n <PromoPanelLink\n href={props.href}\n target={props.target}\n linkComponent={props.linkComponent}\n linkHtmlMarkup={linkHtmlMarkup}\n linkOnClick={props.linkOnClick}\n >\n {props.title || props.children}\n </PromoPanelLink>\n );\n\n const illustrationSize = ((): number => {\n if (breakpoint >= Breakpoint.lg) {\n return 180;\n }\n if (breakpoint >= Breakpoint.md) {\n return 156;\n }\n\n return 120;\n })();\n\n return (\n <div className={promoPanelClasses} data-testid={props.testId} data-analyticsid={AnalyticsId.PromoPanel} ref={hoverRef}>\n {props.illustration && (\n <LazyIllustration\n illustrationName={props.illustration}\n size={illustrationSize}\n color={color}\n className={styles.promopanel__illustration}\n />\n )}\n <div className={styles.promopanel__content}>\n {props.title && (\n <Title htmlMarkup={titleHtmlMarkup} appearance={'title3'}>\n {promoPanelLink}\n </Title>\n )}\n {!props.title ? promoPanelLink : props.children}\n </div>\n <div className={styles.promopanel__icon}>\n <Icon\n svgIcon={props.target === '_blank' ? ArrowUpRight : ArrowRight}\n size={breakpoint >= Breakpoint.md ? IconSize.Small : IconSize.XSmall}\n isHovered={isHovered}\n color={getColor('blueberry', 500)}\n hoverColor={getColor('blueberry', 600)}\n />\n </div>\n </div>\n );\n};\n\nexport default PromoPanel;\n"],"names":["PromoPanelLink","props","React","PromoPanel","isHovered","hoverRef","useHover","color","titleHtmlMarkup","linkHtmlMarkup","breakpoint","useBreakpoint","promoPanelClasses","classNames","styles","promoPanelLink","illustrationSize","Breakpoint","AnalyticsId","LazyIllustration","Title","Icon","ArrowUpRight","ArrowRight","IconSize","getColor","PromoPanel$1"],"mappings":";;;;;;;;;;;;AAsDA,MAAMA,IAAgD,CAASC,MACzDA,EAAM,gBACDC,EAAM,aAAaD,EAAM,eAAe,EAAE,UAAUA,EAAM,UAAU,IAGzEA,EAAM,mBAAmB,WAEzBC,gBAAAA,EAAA,cAAC,YAAO,MAAM,UAAU,SAASD,EAAM,YAAA,GACpCA,EAAM,QACT,IAIDC,gBAAAA,EAAA,cAAA,KAAA,EAAE,MAAMD,EAAM,MAAM,QAAQA,EAAM,QAAQ,SAASA,EAAM,YACvD,GAAAA,EAAM,QACT,GAIEE,IAAwC,CAASF,MAAA;AACrD,QAAM,EAAE,WAAAG,GAAW,UAAAC,EAAS,IAAIC,EAAyB,GAEnD,EAAE,OAAAC,IAAQ,WAAW,iBAAAC,IAAkB,MAAM,gBAAAC,IAAiB,IAAQ,IAAAR,GAEtES,IAAaC,KAEbC,IAAoBC;AAAA,IACxBC,EAAO;AAAA,IACPA,EAAO,eAAeP,CAAK,EAAE;AAAA,IAC7B,CAACN,EAAM,gBAAgBa,EAAO,6BAA6B;AAAA,EAAA,GAGvDC,IACJb,gBAAAA,EAAA;AAAA,IAACF;AAAA,IAAA;AAAA,MACC,MAAMC,EAAM;AAAA,MACZ,QAAQA,EAAM;AAAA,MACd,eAAeA,EAAM;AAAA,MACrB,gBAAAQ;AAAA,MACA,aAAaR,EAAM;AAAA,IAAA;AAAA,IAElBA,EAAM,SAASA,EAAM;AAAA,EAAA,GAIpBe,KAAoB,MACpBN,KAAcO,EAAW,KACpB,MAELP,KAAcO,EAAW,KACpB,MAGF;AAGT,SACGf,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAWU,GAAmB,eAAaX,EAAM,QAAQ,oBAAkBiB,EAAY,YAAY,KAAKb,EAAA,GAC1GJ,EAAM,gBACLC,gBAAAA,EAAA;AAAA,IAACiB;AAAA,IAAA;AAAA,MACC,kBAAkBlB,EAAM;AAAA,MACxB,MAAMe;AAAA,MACN,OAAAT;AAAA,MACA,WAAWO,EAAO;AAAA,IAAA;AAAA,EAAA,GAGrBZ,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAWY,EAAO,oBACpB,GAAAb,EAAM,SACLC,gBAAAA,EAAA,cAACkB,GAAM,EAAA,YAAYZ,GAAiB,YAAY,SAC7C,GAAAO,CACH,GAEAd,EAAM,QAAyBA,EAAM,WAAvBc,CAClB,GACCb,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAWY,EAAO,iBACrB,GAAAZ,gBAAAA,EAAA;AAAA,IAACmB;AAAA,IAAA;AAAA,MACC,SAASpB,EAAM,WAAW,WAAWqB,IAAeC;AAAA,MACpD,MAAMb,KAAcO,EAAW,KAAKO,EAAS,QAAQA,EAAS;AAAA,MAC9D,WAAApB;AAAA,MACA,OAAOqB,EAAS,aAAa,GAAG;AAAA,MAChC,YAAYA,EAAS,aAAa,GAAG;AAAA,IAAA;AAAA,EAEzC,CAAA,CACF;AAEJ,GAEAC,IAAevB;"}