@luscii-healthtech/web-ui 0.2.1 → 0.2.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.
@@ -1 +1 @@
1
- {"version":3,"file":"web-ui.cjs.development.js","sources":["../src/components/Text/Text.tsx","../src/components/Acknowledgement/Acknowledgement.js","../src/components/Avatar/Avatar.js","../src/components/Badge/Badge.tsx","../src/components/Spinner/Spinner.tsx","../src/components/ButtonV2/ButtonV2.tsx","../src/components/ButtonV2/PrimaryButton.tsx","../src/components/ButtonV2/SecondaryButton.tsx","../src/components/ButtonV2/TertiaryButton.tsx","../src/components/Icons/AddIcon.tsx","../src/components/Icons/DeleteIcon.tsx","../src/components/Icons/EditIcon.tsx","../src/components/Icons/LeftArrowIcon.tsx","../src/components/Icons/RightArrowIcon.tsx","../src/components/Icons/ChartIcon.tsx","../src/components/Icons/PrintIcon.tsx","../src/components/Button/ButtonIcon.tsx","../src/components/Button/Button.types.ts","../src/components/Button/Button.tsx","../src/components/Carousel/GliderContainer.tsx","../src/components/Carousel/Carousel.tsx","../src/components/Title/Title.tsx","../src/components/CenteredHero/CenteredHero.js","../src/components/Checkbox/Checkbox.tsx","../src/components/Modal/Modal.tsx","../src/components/Modal/ModalWithButtons.tsx","../src/components/ConfirmationDialog/ConfirmationDialog.tsx","../src/components/Datepicker/Datepicker.js","../src/components/Dropdown/Dropdown.js","../src/components/EmptyListMessage/EmptyListMessage.tsx","../src/components/ErrorBlock/ErrorBlock.js","../src/components/InfoBlock/InfoBlock.js","../src/components/InfoField/InfoField.tsx","../src/components/Input/Input.js","../src/components/Line/Line.js","../src/components/ListItem/ListItem.tsx","../src/components/PaginationMenu/PaginationMenuSmall.tsx","../src/components/Select/Select.tsx","../src/components/PaginationMenu/PaginationMenu.utils.ts","../src/components/PaginationMenu/PaginationMenuLarge.tsx","../src/components/PaginationMenu/PaginationMenu.tsx","../src/components/LoadingIndicator/LoadingIndicator.tsx","../src/components/ListTable/ListTableCell.tsx","../src/components/ListTable/ListTableRow.tsx","../src/components/ListTable/ListTableHeader.tsx","../src/components/ListTable/ListTable.tsx","../src/components/Menu/Menu.js","../src/components/Text/LegacyText.js","../src/components/MultiSelect/MultiSelectUtils.js","../src/components/MultiSelect/MultiSelect.js","../src/components/NavMenu/NavLayout.tsx","../src/components/NavMenu/NavMenuItem.tsx","../src/components/NavMenu/NavMenuContent.tsx","../src/components/NavMenu/NavMenu.js","../src/components/TextLink/TextLink.tsx","../src/components/NotificationBanner/NotificationBanner.tsx","../src/components/Page/Page.js","../src/components/Title/LegacyTitle.js","../src/components/Steps/Step.tsx","../src/components/Steps/Steps.tsx","../src/components/Page/CRUDPage.js","../src/components/PreviewPhone/useWindowDimensions.js","../src/components/PreviewPhone/PreviewPhone.tsx","../src/components/Radio/Radio.js","../src/components/RadioGroup/RadioGroup.js","../src/components/Section/Section.tsx","../src/utils/useOutsideClick.js","../src/components/SettingsMenuButton/SettingsMenuButton.tsx","../src/components/Switcher/SwitcherItem.js","../src/components/Switcher/Switcher.js","../src/components/Tabbar/TabbarItem.tsx","../src/components/Tabbar/Tabbar.tsx","../src/components/TabLinks/TabLinks.tsx","../src/components/Tag/TagGroup.tsx","../src/components/Tag/Tag.tsx","../src/components/Textarea/Textarea.js","../src/components/TextEditor/TextEditor.js","../src/components/TextEditorV2/TextEditorV2.js","../src/components/TextListItem/TextListItem.js","../src/components/ViewItem/ViewItem.tsx","../src/components/Icons/AlertsIcon.tsx","../src/components/Icons/BellIcon.tsx","../src/components/Icons/ChatBoxIcon.tsx","../src/components/Icons/CheckIcon.tsx","../src/components/Icons/ChevronDoubleIcon.tsx","../src/components/Icons/CrossIcon.tsx","../src/components/Icons/DownArrowIcon.tsx","../src/components/Icons/DragIcon.tsx","../src/components/Icons/EmptyStateDashboardIcon.tsx","../src/components/Icons/ExclamationMarkIcon.tsx","../src/components/Icons/EyeIcon.tsx","../src/components/Icons/GearIcon.tsx","../src/components/Icons/GroupIcon.tsx","../src/components/Icons/HeartIcon.tsx","../src/components/Icons/LightBulbIcon.tsx","../src/components/Icons/LockIcon.tsx","../src/components/Icons/MessagesIcon.tsx","../src/components/Icons/NotesIcon.tsx","../src/components/Icons/PinIcon.tsx","../src/components/Icons/SmallCircleIcon.tsx","../src/components/Icons/SmallDiamondIcon.tsx","../src/components/Icons/SmallSquareIcon.tsx","../src/components/Icons/SpaceRocketIcon.tsx","../src/components/Icons/StarIcon.tsx","../src/components/Icons/HamburgerIcon.tsx","../src/components/Icons/SearchIcon.tsx","../src/components/Icons/SearchCancelIcon.tsx"],"sourcesContent":["import classNames from \"classnames\";\nimport React from \"react\";\n\nimport { RestPropped } from \"../../types/general.types\";\n\nimport \"./Text.scss\";\n\nexport type TextStyle = \"sm\" | \"sm-strong\" | \"base\" | \"strong\" | \"lg\" | \"lg-strong\" | \"xl\" | \"xl-strong\" | string;\n\n//Extend with other colors that we want to enable for text\nexport type TextColor = \"base\" | \"gray-500\" | \"gray-200\" | \"white\" | \"blue\" | \"red\" | \"green\" | \"amber\" | \"inherit\";\n\nexport interface TextProps extends RestPropped {\n text: string;\n type?: TextStyle; //defaults to \"base\"\n inline?: boolean; //defaults to false\n color?: TextColor; //defaults to \"base\"\n hoverColor?: TextColor; //defaults to \"base\"\n className?: string;\n containsDangerousHtml?: boolean; //defaults to false\n truncate?: boolean; //defaults to false\n \"data-test-id\"?: string;\n}\n\nexport const Text = (props: TextProps): JSX.Element => {\n const containerProps = {\n \"data-test-id\": props[\"data-test-id\"],\n className: classNames(\n // apply different style classes\n // for now we stick with font-size 16px on the body\n // so I am adjusting our styles accordingly (one step down)\n {\n \"text-xs font-medium\": props.type === \"sm\",\n \"text-xs font-semibold\": props.type === \"sm-strong\",\n \"text-sm\": props.type === \"base\",\n \"text-sm font-semibold\": props.type === \"strong\",\n \"\": props.type === \"lg\",\n \"font-semibold\": props.type === \"lg-strong\",\n \"text-lg\": props.type === \"xl\",\n \"font-semibold text-lg\": props.type === \"xl-strong\",\n },\n {\n inline: props.inline,\n // FIXME: this class doesn't do anything without a max-width\n truncate: props.truncate,\n },\n {\n \"text-slate-700\": props.color === \"base\",\n \"text-slate-500\": props.color === \"gray-500\",\n \"text-slate-200\": props.color === \"gray-200\",\n \"text-red-700\": props.color === \"red\",\n \"text-green-700\": props.color === \"green\",\n \"text-yellow-700\": props.color === \"amber\",\n \"text-blue-700\": props.color === \"blue\",\n \"text-white\": props.color === \"white\",\n \"text-primary-dark\": props.color === \"blue\",\n },\n {\n \"in-html-link\": props.containsDangerousHtml,\n },\n //can be used to overwrite other classes like the color\n props.className\n ),\n };\n\n return props.containsDangerousHtml ? (\n <p {...containerProps} dangerouslySetInnerHTML={{ __html: props.text }} />\n ) : (\n <p {...containerProps}>{props.text}</p>\n );\n};\n\nexport default Text;\n\nText.defaultProps = {\n type: \"base\",\n inline: false,\n color: \"base\",\n containsDangerousHtml: false,\n truncate: false,\n};\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport { Text } from \"../Text/Text\";\nimport successIcon from \"../../assets/success-icon.svg\";\nimport failureIcon from \"../../assets/error-icon.svg\";\n\nimport \"./Acknowledgement.scss\";\n\nexport const ACKNOWLEDGEMENT_TYPE_OPTIONS = {\n SUCCESS: \"success\",\n FAILURE: \"failure\",\n};\n\nAcknowledgement.propTypes = {\n message: PropTypes.string,\n type: PropTypes.oneOf([ACKNOWLEDGEMENT_TYPE_OPTIONS.SUCCESS, ACKNOWLEDGEMENT_TYPE_OPTIONS.FAILURE]),\n hasIcon: PropTypes.bool,\n isVisible: PropTypes.bool,\n className: PropTypes.string,\n};\n\nfunction Acknowledgement({\n message = \"\",\n type = ACKNOWLEDGEMENT_TYPE_OPTIONS.SUCCESS,\n isVisible = false,\n hasIcon = false,\n className = \"\",\n}) {\n const containerClassName = classNames(\"cweb-acknowledgement\", className, {\n \"type-success\": type === ACKNOWLEDGEMENT_TYPE_OPTIONS.SUCCESS,\n \"type-failure\": type === ACKNOWLEDGEMENT_TYPE_OPTIONS.FAILURE,\n \"is-visible\": isVisible,\n });\n\n const iconContainerClasses = classNames(\"acknowledgement-icon-container\", {\n hidden: !hasIcon,\n });\n\n const successIconClasses = classNames(\"icon success-icon acknowledgement-icon\", {\n hidden: type !== ACKNOWLEDGEMENT_TYPE_OPTIONS.SUCCESS,\n });\n\n const failureIconClasses = classNames(\"icon failure-icon acknowledgement-icon\", {\n hidden: type !== ACKNOWLEDGEMENT_TYPE_OPTIONS.FAILURE,\n });\n\n return (\n <div id=\"application-acknowledgement\" data-test-id={`acknowledgement-panel-${type}`} className={containerClassName}>\n <div className={iconContainerClasses}>\n <img src={successIcon} className={successIconClasses} alt=\"Success icon\" />\n <img src={failureIcon} className={failureIconClasses} alt=\"Failure icon\" />\n </div>\n\n <Text data-test-id=\"acknowledgement-message\" text={message} />\n </div>\n );\n}\n\nexport default Acknowledgement;\n","import React, { useEffect, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport \"./Avatar.scss\";\n\nfunction checkImageValidity(src) {\n return new Promise((resolve) => {\n const image = new Image();\n image.onload = () => {\n resolve(true);\n };\n image.onerror = () => {\n resolve(false);\n };\n image.src = src;\n });\n}\n\nconst AVATAR_SIZE_OPTIONS = {\n LARGE: \"large\",\n MEDIUM: \"medium\",\n SMALL: \"small\",\n};\n\nexport const Avatar = ({ size, src, defaultImage, initials, className }) => {\n const [hasValidImage, setHasValidImage] = useState(false);\n\n useEffect(() => {\n let mounted = true;\n if (!defaultImage && src) {\n checkImageValidity(src).then((res) => {\n if (mounted) {\n setHasValidImage(res);\n }\n });\n }\n return () => {\n mounted = false;\n };\n }, [defaultImage, src]);\n\n const containerClassName = classNames(\"cweb-avatar type-readonly\", className, {\n \"size-large\": size === AVATAR_SIZE_OPTIONS.LARGE,\n \"size-medium\": size === AVATAR_SIZE_OPTIONS.MEDIUM,\n \"size-small\": size === AVATAR_SIZE_OPTIONS.SMALL,\n \"display-image\": hasValidImage,\n \"display-initials\": !hasValidImage,\n });\n\n const renderAvatar = () => {\n if (defaultImage) {\n return <img className=\"avatar-image\" src={defaultImage} alt=\"User avatar image\" />;\n } else if (hasValidImage) {\n return <img className=\"avatar-image\" src={src} alt=\"User avatar image\" />;\n } else {\n return <span className=\"avatar-initials-text\">{initials}</span>;\n }\n };\n\n return (\n <div className={containerClassName}>\n <div className=\"avatar-content-container\">{renderAvatar()}</div>\n </div>\n );\n};\n\nAvatar.propTypes = {\n src: PropTypes.string,\n initials: PropTypes.string.isRequired,\n size: PropTypes.oneOf([AVATAR_SIZE_OPTIONS.LARGE, AVATAR_SIZE_OPTIONS.MEDIUM, AVATAR_SIZE_OPTIONS.SMALL]),\n defaultImage: PropTypes.string,\n className: PropTypes.string,\n};\n\nAvatar.defaultProps = {\n size: AVATAR_SIZE_OPTIONS.MEDIUM,\n defaultImage: null,\n};\n\nexport default Avatar;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\ninterface BadgeProps {\n badgeCount: number;\n className?: string;\n}\n\nconst Badge = (props: BadgeProps): JSX.Element => {\n const containerClasses = classNames(\n [\"inline-flex\", \"items-center\", \"justify-center\", \"rounded-full\", \"h-6\", \"min-w-24\", \"px-2\", \"bg-color-negative\"],\n props.className\n );\n const textClasses = classNames([\"text-xs\", \"text-white\", \"leading-none\"]);\n\n return (\n <div className={containerClasses}>\n <span className={textClasses}>{props.badgeCount}</span>\n </div>\n );\n};\n\nexport default Badge;\n","import React from \"react\";\n\ninterface SpinnerProps {\n className?: string;\n}\n\nexport const Spinner = (props: SpinnerProps): JSX.Element => {\n return (\n <svg\n className={`w-5 h-5 animate-spin ${props.className}`}\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n >\n <circle className=\"opacity-25\" cx=\"12\" cy=\"12\" r=\"10\" stroke=\"currentColor\" strokeWidth=\"4\"></circle>\n <path\n className=\"opacity-75\"\n fill=\"currentColor\"\n d=\"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z\"\n />\n </svg>\n );\n};\n","import classNames from \"classnames\";\nimport React from \"react\";\n\nimport { Spinner } from \"../Spinner/Spinner\";\n\nimport { ButtonProps } from \"./ButtonProps.type\";\n\nexport const ButtonV2 = ({\n onClick,\n text,\n icon,\n isDisabled,\n isPending,\n className,\n ...otherAttributes\n}: ButtonProps): JSX.Element => {\n if (!text && !icon) {\n console.error(\n \"A text or an icon is required to use this component, please make sure to pass at least one of them as a prop.\"\n );\n return <span>Invalid props passed to this component.</span>;\n }\n\n const buttonClassName = classNames(\n [\n \"h-11\",\n \"relative flex flex-row justify-center items-center\",\n \"border\",\n \"transition-outline transition-colors duration-300 ease-in-out\",\n \"rounded-full\",\n \"leading-none\",\n \"shadow-sm\",\n \"cursor-pointer\",\n \"focus:outline-primary\",\n ],\n {\n \"w-11\": !text && icon,\n \"pl-4 pr-6\": text && icon,\n \"px-4\": text && !icon,\n },\n {\n \"opacity-50\": isDisabled,\n \"pointer-events-none\": isDisabled || isPending,\n },\n className\n );\n\n return (\n <button\n {...otherAttributes}\n className={buttonClassName}\n type={\"button\"}\n onClick={onClick}\n disabled={isDisabled}\n aria-disabled={isDisabled}\n >\n {icon && React.createElement(icon, { className: \"w-6 h-6\" })}\n\n {isPending && (\n <span\n className=\"opacity-100\"\n // IE11 center translate fix\n style={{\n position: \"absolute\",\n left: \"50%\",\n top: \"50%\",\n transform: \"translate(-50%, -50%)\",\n }}\n >\n <Spinner className=\"text-white\" />\n </span>\n )}\n\n {text && (\n <span\n className={classNames(\"text-sm font-medium\", {\n invisible: isPending,\n \"ml-1\": icon,\n })}\n >\n {text}\n </span>\n )}\n </button>\n );\n};\n","import classNames from \"classnames\";\nimport React from \"react\";\n\nimport { ButtonV2 } from \"./ButtonV2\";\nimport { ButtonProps } from \"./ButtonProps.type\";\n\nexport const PrimaryButton = (props: ButtonProps): JSX.Element => {\n return (\n <ButtonV2\n {...props}\n className={classNames(\n [\n \"text-white\",\n \"bg-blue-800\",\n \"border-primary-transparent\",\n \"hover:bg-blue-900\",\n ],\n props.className\n )}\n />\n );\n};\n","import classNames from \"classnames\";\nimport React from \"react\";\n\nimport { ButtonV2 } from \"./ButtonV2\";\nimport { BaseButtonProps } from \"./ButtonProps.type\";\n\nexport const SecondaryButton = (props: BaseButtonProps): JSX.Element => {\n return (\n <ButtonV2\n {...props}\n className={classNames(\n [\n \"text-blue-800\",\n \"bg-white\",\n \"border-slate-300\",\n \"hover:text-blue-900\",\n \"hover:border-slate-400\",\n \"focus:border-blue-800\",\n ],\n props.className\n )}\n />\n );\n};\n","import classNames from \"classnames\";\nimport React from \"react\";\n\nimport { ButtonV2 } from \"./ButtonV2\";\nimport { BaseButtonProps } from \"./ButtonProps.type\";\n\nexport const TertiaryButton = (props: BaseButtonProps): JSX.Element => {\n return (\n <ButtonV2\n {...props}\n className={classNames(\n [\n \"text-blue-800\",\n \"bg-transparent\",\n \"border-transparent\",\n \"hover:text-blue-900\",\n \"focus:border-blue-800\",\n \"shadow-none\",\n ],\n props.className\n )}\n />\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const AddIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <rect x=\"10\" y=\"2\" width=\"4\" height=\"20\" rx=\"2\" fill=\"currentColor\" />\n <rect\n x=\"22\"\n y=\"10\"\n width=\"4\"\n height=\"20\"\n rx=\"2\"\n transform=\"rotate(90 22 10)\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const DeleteIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M6 19C6 20.1 6.9 21 8 21H16C17.1 21 18 20.1 18 19V9C18 7.9 17.1 7 16 7H8C6.9 7 6 7.9 6 9V19ZM18 4H15.5L14.79 3.29C14.61 3.11 14.35 3 14.09 3H9.91C9.65 3 9.39 3.11 9.21 3.29L8.5 4H6C5.45 4 5 4.45 5 5C5 5.55 5.45 6 6 6H18C18.55 6 19 5.55 19 5C19 4.45 18.55 4 18 4Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const EditIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M3 17.4605V20.5005C3 20.7805 3.22 21.0005 3.5 21.0005H6.54C6.67 21.0005 6.8 20.9505 6.89 20.8505L17.81 9.94055L14.06 6.19055L3.15 17.1005C3.05 17.2005 3 17.3205 3 17.4605ZM20.71 7.04055C21.1 6.65055 21.1 6.02055 20.71 5.63055L18.37 3.29055C17.98 2.90055 17.35 2.90055 16.96 3.29055L15.13 5.12055L18.88 8.87055L20.71 7.04055V7.04055Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const LeftArrowIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M13.6899 17.2902C14.0799 16.9002 14.0799 16.2702 13.6899 15.8802L9.80992 12.0002L13.6899 8.12022C14.0799 7.73022 14.0799 7.10022 13.6899 6.71022C13.2999 6.32022 12.6699 6.32022 12.2799 6.71022L7.68992 11.3002C7.29992 11.6902 7.29992 12.3202 7.68992 12.7102L12.2799 17.3002C12.6599 17.6802 13.2999 17.6802 13.6899 17.2902Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const RightArrowIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M9.31008 6.70978C8.92008 7.09978 8.92008 7.72978 9.31008 8.11978L13.1901 11.9998L9.31008 15.8798C8.92008 16.2698 8.92008 16.8998 9.31008 17.2898C9.70008 17.6798 10.3301 17.6798 10.7201 17.2898L15.3101 12.6998C15.7001 12.3098 15.7001 11.6798 15.3101 11.2898L10.7201 6.69978C10.3401 6.31978 9.70008 6.31978 9.31008 6.70978Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const ChartIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <rect x=\"2\" y=\"7\" width=\"5\" height=\"15\" rx=\"2.5\" fill=\"currentColor\" />\n <rect x=\"9\" y=\"3\" width=\"5\" height=\"19\" rx=\"2.5\" fill=\"currentColor\" />\n <rect x=\"16\" y=\"10\" width=\"5\" height=\"12\" rx=\"2.5\" fill=\"currentColor\" />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const PrintIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"19\"\n height=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M16.6 5H15V.5a.5.5 0 0 0-.5-.5h-10a.5.5 0 0 0-.5.5V5H2.4A2.4 2.4 0 0 0 0 7.4v5.2A2.4 2.4 0 0 0 2.4 15H5v2.5a.5.5 0 0 0 .5.5h8a.5.5 0 0 0 .5-.5V15h2.6a2.4 2.4 0 0 0 2.4-2.4V7.4A2.4 2.4 0 0 0 16.6 5zM5 1h9v4H5V1zm8 16H6v-5h7v5zm5-4.4a1.4 1.4 0 0 1-1.4 1.4H14v-2.5a.5.5 0 0 0-.5-.5h-8a.5.5 0 0 0-.5.5V14H2.4A1.4 1.4 0 0 1 1 12.6V7.4A1.4 1.4 0 0 1 2.4 6h14.2A1.4 1.4 0 0 1 18 7.4v5.2z\"\n fill=\"currentColor\"\n fill-rule=\"nonzero\"\n />\n </svg>\n );\n};\n","import * as React from \"react\";\n\nimport CloseIcon from \"../../assets/close.svg\";\nimport HamburgerIcon from \"../../assets/hamburger.svg\";\nimport ChevronRightBlueIcon from \"../../assets/right-arrow-blue.svg\";\nimport ChevronRightGreyIcon from \"../../assets/right-arrow-grey.svg\";\nimport ChevronLeftBlueIcon from \"../../assets/left-arrow-blue.svg\";\nimport ChevronLeftGreyIcon from \"../../assets/left-arrow-grey.svg\";\nimport SearchIcon from \"../../assets/search.svg\";\nimport SearchCancelIcon from \"../../assets/search-cancel.svg\";\nimport StarIcon from \"../../assets/starIcon.svg\";\nimport CheckIcon from \"../../assets/check-icon-primary.svg\";\n\ninterface ButtonIconProps {\n name: string;\n className?: string;\n}\n\ntype IconNames = {\n [key: string]: string;\n};\n\nconst iconSrc: IconNames = {\n // These need to be converted to svg files instead of components and added in\n // \"add\": AddIcon,\n // \"delete\": DeleteIcon,\n // \"edit\": EditIcon,\n close: CloseIcon,\n hamburger: HamburgerIcon,\n \"chevron-right-blue\": ChevronRightBlueIcon,\n \"chevron-left-blue\": ChevronLeftBlueIcon,\n \"chevron-right-grey\": ChevronRightGreyIcon,\n \"chevron-left-grey\": ChevronLeftGreyIcon,\n search: SearchIcon,\n star: StarIcon,\n check: CheckIcon,\n \"search-cancel\": SearchCancelIcon,\n};\n\nexport const ButtonIcon = (props: ButtonIconProps): JSX.Element => {\n return <img src={iconSrc[props.name]} className={props.className} />;\n};\n","// These types were added because they are used in ViewItem that is completely refactored to TS\n// Ideally they should also be used in the Button TS component, but this was outside of the scope of this task\nimport React from \"react\";\n\nimport { RestPropped } from \"../../types/general.types\";\nimport { IconProps } from \"../Icons/types/IconProps.type\";\n\nexport const BUTTON_ROLES = {\n PRIMARY: \"primary\",\n SECONDARY: \"secondary\",\n SECONDARY_DARK: \"secondaryDark\",\n TERTIARY: \"tertiary\",\n QUATERNARY: \"quaternary\",\n NEGATIVE: \"negative\",\n TEXT: \"text\",\n LINK: \"link\",\n ICON: \"icon\",\n} as const;\n\ntype BUTTON_KEYS = keyof typeof BUTTON_ROLES;\nexport type BUTTON_TYPE = typeof BUTTON_ROLES[BUTTON_KEYS];\n\nexport type ButtonType = \"button\" | \"submit\";\n\nexport interface ButtonProps extends RestPropped {\n text?: string;\n role?: BUTTON_TYPE;\n type?: ButtonType;\n title?: string;\n link?: string;\n isPending?: boolean;\n isDisabled?: boolean;\n // TODO: add specific type of ButtonEvent\n onClick?: (arg: any) => void;\n className?: string;\n // name mapping to the right svg in ButtonIcon\n iconName?: string;\n // legacy - can be removed?\n hasIcon?: boolean;\n dynamicIcon?: React.FunctionComponent<IconProps>;\n}\n","import React, { useEffect, useState } from \"react\";\nimport classNames from \"classnames\";\nimport { navigate } from \"@reach/router\";\n\nimport { Spinner } from \"../Spinner/Spinner\";\nimport { AddIcon } from \"../Icons/AddIcon\";\nimport { DeleteIcon } from \"../Icons/DeleteIcon\";\nimport { EditIcon } from \"../Icons/EditIcon\";\nimport { LeftArrowIcon } from \"../Icons/LeftArrowIcon\";\nimport { RightArrowIcon } from \"../Icons/RightArrowIcon\";\nimport { ChartIcon } from \"../Icons/ChartIcon\";\nimport { PrintIcon } from \"../Icons/PrintIcon\";\n\nimport { ButtonIcon } from \"./ButtonIcon\";\nimport { BUTTON_ROLES, ButtonProps } from \"./Button.types\";\n\n// TODO: use the Types from Button.types.ts instead of PropTypes\nfunction Button(props: ButtonProps): JSX.Element {\n const {\n text = \"\",\n role: propsRole = BUTTON_ROLES.PRIMARY,\n type = \"button\",\n title = \"\",\n link = \"\",\n isPending = false,\n isDisabled = false,\n onClick,\n className = \"\",\n iconName = \"\",\n hasIcon: hasIconProps = false,\n dynamicIcon,\n ...otherAttributes\n } = props;\n\n const hasAddIcon = className.includes(\"add-button\");\n const hasEditIcon = className.includes(\"edit-button\");\n const hasDeleteIcon = className.includes(\"delete-button\");\n const hasPrevIcon = className.includes(\"prev-button\");\n const hasNextIcon = className.includes(\"next-button\");\n const hasChartIcon = className.includes(\"chart-button\");\n const hasPrintIcon = className.includes(\"print-button\");\n const hasIcon =\n hasIconProps ||\n iconName ||\n hasAddIcon ||\n hasEditIcon ||\n hasDeleteIcon ||\n hasPrevIcon ||\n hasNextIcon ||\n hasChartIcon ||\n hasPrintIcon ||\n dynamicIcon;\n\n const isIconOnly = hasIcon && !text;\n\n const [role, setRole] = useState(propsRole);\n\n // Fix to support the all the buttons in the application\n // Ideally we want to make a better implementation of them overall, but that's beyond the\n // scope of this task.\n\n useEffect(() => {\n if ((hasAddIcon || hasEditIcon) && !text) {\n setRole(BUTTON_ROLES.SECONDARY);\n } else if (propsRole === BUTTON_ROLES.TEXT || propsRole === BUTTON_ROLES.LINK) {\n setRole(BUTTON_ROLES.TERTIARY);\n } else if (hasDeleteIcon) {\n setRole(BUTTON_ROLES.NEGATIVE);\n }\n }, []);\n\n const isButtonDisabled = (role !== BUTTON_ROLES.LINK && isDisabled) || isPending;\n const isNonPrimaryNonNegative =\n role === BUTTON_ROLES.SECONDARY || role === BUTTON_ROLES.TERTIARY || role === BUTTON_ROLES.QUATERNARY;\n\n function handleClick(event: any) {\n if (link) {\n navigate(link);\n return;\n }\n\n if (isButtonDisabled || !onClick) {\n // without this, form will be submitted, if button has type submit.\n event.preventDefault();\n return;\n }\n\n onClick(event);\n }\n\n const buttonRolesStyling = {\n primary: [\n \"bg-primary\",\n \"hover:bg-primary-dark\",\n \"text-white\",\n \"focus:outline-primary\",\n \"border\",\n \"border-solid\",\n \"border-primary-transparent\",\n ],\n secondary: [\"bg-slate-200\"],\n secondaryDark: [\"bg-slate-700\", \"hover:bg-slate-600\"],\n tertiary: [\"bg-transparent\", \"shadow-none\", \"hover:bg-slate-100\"],\n quaternary: [\"bg-white\", \"shadow-none\", \"border\", \"border-solid\", \"border-quaternary\", \"hover:border-slate-200\"],\n negative: [\n \"bg-negative\",\n \"text-negative-dark\",\n \"hover:text-negative-darker\",\n \"hover:border-negative-border\",\n \"focus:outline-negative\",\n \"border\",\n \"border-transparent\",\n ],\n link: [],\n text: [],\n icon: [],\n };\n\n const containerClassName = classNames(\n // default button classes\n [\n \"h-11\",\n \"focus:outline-none\",\n \"relative flex flex-row justify-center items-center\",\n \"shadow-sm\",\n \"transition-outline transition-colors duration-300 ease-in-out\",\n \"cursor-pointer\",\n \"rounded-full\",\n \"leading-none\",\n ],\n // ensuring the buttons are 44px high including content\n {\n \"py-2 px-2 w-11\": isIconOnly,\n \"px-4 py-3\": !isIconOnly,\n },\n className,\n {\n \"opacity-50 pointer-events-none\": isButtonDisabled,\n \"hover:text-primary-dark text-primary\": isNonPrimaryNonNegative,\n \"border border-transparent\": isNonPrimaryNonNegative,\n \"hover:border-slate-200 focus:outline-primary\": isNonPrimaryNonNegative,\n \"text-secondary-dark opacity-75\": isButtonDisabled && isNonPrimaryNonNegative,\n },\n buttonRolesStyling[role]\n );\n\n const spinnerClassNames = classNames({\n hidden: !isPending,\n \"text-white\": role === BUTTON_ROLES.PRIMARY,\n \"text-dark-gray\": isNonPrimaryNonNegative,\n \"text-negative-dark\": role === BUTTON_ROLES.TERTIARY,\n });\n\n const buttonTextClasses = classNames([\"text-sm\", \"font-medium\"], {\n invisible: isPending,\n hidden: !text,\n \"ml-3\": hasIcon,\n });\n\n return (\n <button\n {...otherAttributes}\n aria-disabled={isButtonDisabled}\n disabled={isButtonDisabled}\n className={containerClassName}\n onClick={handleClick}\n type={type}\n title={title}\n data-role={role}\n >\n {hasAddIcon && <AddIcon className=\"w-5 h-5\" />}\n {hasEditIcon && <EditIcon className=\"w-5 h-5\" />}\n {hasDeleteIcon && <DeleteIcon className=\"w-5 h-5\" />}\n {hasPrevIcon && <LeftArrowIcon className=\"w-5 h-5\" />}\n {hasNextIcon && <RightArrowIcon className=\"w-5 h-5\" />}\n {hasChartIcon && <ChartIcon className=\"w-5 h-5\" />}\n {hasPrintIcon && <PrintIcon className=\"w-5 h-5\" />}\n {iconName && <ButtonIcon name={iconName} />}\n {dynamicIcon && React.createElement(dynamicIcon, { className: \"w-5 h-5\" })}\n\n <span\n className=\"opacity-100\"\n // IE11 center translate fix\n style={{\n position: \"absolute\",\n left: \"50%\",\n top: \"50%\",\n transform: \"translate(-50%, -50%)\",\n }}\n >\n <Spinner className={spinnerClassNames} />\n </span>\n <span className={buttonTextClasses}>{text}</span>\n </button>\n );\n}\n\nexport default Button;\n\nexport { BUTTON_ROLES };\n","import React from \"react\";\n\nimport Button, { BUTTON_ROLES } from \"../Button/Button\";\n\nimport \"./GliderContainer.scss\";\n\ninterface GliderContainerProps {\n children: React.ReactNode;\n}\n\nexport const GliderContainer = (props: GliderContainerProps): JSX.Element => (\n <div className={\"relative h-full pb-6 glider-contain px-17 pb-6\"}>\n {props.children}\n <div className={\"entity-preview-left absolute top-1/2 left-0\"}>\n <Button iconName={\"chevron-left-blue\"} role={BUTTON_ROLES.QUATERNARY} />\n </div>\n <div className={\"entity-preview-right absolute top-1/2 right-0\"}>\n <Button iconName={\"chevron-right-blue\"} role={BUTTON_ROLES.QUATERNARY} />\n </div>\n <div className=\"entity-preview-dots\" />\n </div>\n);\n","import React, { useEffect, useState } from \"react\";\nimport classNames from \"classnames\";\nimport Glider from \"react-glider\";\n\nimport { GliderContainer } from \"./GliderContainer\";\n\ninterface CarouselProps {\n id: string;\n slides: React.ReactNode[];\n className?: string;\n}\n\nconst Carousel = ({ slides, className, id }: CarouselProps): JSX.Element => {\n const [isVisible, setIsVisible] = useState(false);\n useEffect(() => setIsVisible(false), [id]);\n useEffect(() => {\n // hack to force Glider to re mount when id changes\n if (!isVisible) {\n setIsVisible(true);\n }\n }, [isVisible]);\n\n return (\n isVisible ? (\n <Glider\n hasDots\n hasArrows\n skipTrack\n // draggable\n scrollLock\n rewind\n arrows={{\n prev: \".entity-preview-left\",\n next: \".entity-preview-right\",\n }}\n id={id} // this should force Glider to rebuild, but it does not\n dots={\".entity-preview-dots\"}\n className={classNames(\"h-full\", className)}\n containerElement={GliderContainer}\n >\n <div className=\"glider-track h-full\">\n {slides?.map((slide, index) => (\n <div key={index} className={\"overflow-hidden\"}>\n {slide}\n </div>\n ))}\n </div>\n </Glider>\n ) : <></>);\n};\n\nexport default Carousel;\n","import classNames from \"classnames\";\nimport React from \"react\";\n\nimport \"./Title.scss\";\n\nexport type TitleStyle = \"sm\" | \"base\" | \"lg\" | \"xl\" | \"2xl\";\n\nexport interface TextProps {\n text: string;\n type?: TitleStyle; //defaults to \"base\"\n className?: string;\n}\n\nexport const Title = (props: TextProps): JSX.Element => {\n const containerClassName = classNames(\n \"title\", //this is used to load the correct font from the css\n \"font-bold\",\n {\n \"text-slate-700\": !props.className?.match(/\\s(text-)/),\n \"text-xl\": props.type === \"sm\",\n \"text-2xl\": props.type === \"base\",\n \"text-3xl\": props.type === \"lg\",\n \"text-4xl \": props.type === \"xl\",\n \"text-6xl \": props.type === \"2xl\",\n },\n props.className\n );\n\n let ContainerElement: React.ElementType;\n\n switch (props.type) {\n case \"sm\":\n ContainerElement = \"h5\";\n break;\n case \"base\":\n ContainerElement = \"h4\";\n break;\n case \"lg\":\n ContainerElement = \"h3\";\n break;\n case \"xl\":\n ContainerElement = \"h2\";\n break;\n case \"2xl\":\n ContainerElement = \"h1\";\n break;\n default:\n ContainerElement = \"h4\";\n break;\n }\n\n return <ContainerElement className={containerClassName}>{props.text}</ContainerElement>;\n};\n\nTitle.defaultProps = {\n type: \"base\",\n};\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport Button, { BUTTON_ROLES } from \"../Button/Button\";\nimport Text from \"../Text/Text\";\nimport { Title } from \"../Title/Title\";\n\nCenteredHero.propTypes = {\n title: PropTypes.string,\n text: PropTypes.string,\n image: PropTypes.string,\n buttons: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string.isRequired,\n handleOnClick: PropTypes.func.isRequired,\n type: PropTypes.oneOf([BUTTON_ROLES.PRIMARY, BUTTON_ROLES.SECONDARY]).isRequired,\n })\n ),\n className: PropTypes.string,\n};\n\nfunction CenteredHero({ title, text, image, buttons, className }) {\n return (\n <div className={classNames(className, \"p-6 my-6 flex flex-col items-center w-200 ml-auto mr-auto\")}>\n {image && <img src={image} />}\n {title && <Title className=\"mt-8 mb-2\" text={title} type={\"base\"} />}\n {text && <Text text={text} />}\n\n {buttons?.length > 0 && (\n <div className=\"flex flex-row mt-8\">\n {buttons\n .filter((button) => button.title && button.handleOnClick && button.type)\n .map((button) => (\n <Button\n className=\"mr-4 last:mr-0\"\n key={button.title}\n role={button.type}\n title={button.title}\n text={button.title}\n onClick={button.handleOnClick}\n />\n ))}\n </div>\n )}\n </div>\n );\n}\n\nexport default CenteredHero;\n","import React, { useEffect, useState } from \"react\";\nimport classNames from \"classnames\";\n\nimport { Text } from \"../Text/Text\";\n\nimport \"./Checkbox.scss\";\n\nexport interface CheckboxProps {\n id?: string;\n // The label that will be presented as a Text\n text?: string;\n // The explanation that will be presented below it\n explanation?: string;\n type?: \"regular\" | \"switch\";\n // Set the initial value\n isChecked?: boolean;\n // Allow the user to change the input\n isDisabled?: boolean;\n name?: string;\n // This can be used to retrieve the value it is referring to through onChange\n value?: string;\n onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;\n className?: string;\n error?: boolean;\n}\n\nexport const Checkbox = ({\n id,\n text,\n explanation,\n type = \"regular\",\n isChecked = false,\n isDisabled,\n name,\n value,\n onChange,\n className,\n error,\n}: CheckboxProps): JSX.Element => {\n const [checked, setChecked] = useState(false);\n const [isFocused, setIsFocused] = useState(false);\n\n const containerClassName = classNames(\"cweb-checkbox\", className, {\n \"is-focused\": isFocused,\n \"is-checked\": checked,\n \"opacity-50 cursor-not-allowed is-disabled\": isDisabled,\n \"type-regular\": type === \"regular\",\n \"type-switch\": type === \"switch\",\n hasError: error,\n });\n\n useEffect(() => {\n setChecked(isChecked);\n }, [isChecked]);\n\n const handleChange = (event) => {\n setChecked(!checked);\n if (onChange) {\n onChange(event);\n }\n };\n\n const handleFocus = () => setIsFocused(true);\n\n const handleBlur = () => setIsFocused(false);\n\n return (\n <div className={containerClassName} data-test-id=\"checkbox\">\n <label className=\"cweb-checkbox-label\" data-test-id=\"checkbox-label\" onClick={(e) => e.stopPropagation()}>\n <input\n id={id}\n data-test-id={`checkbox-${name}`}\n className=\"cweb-checkbox-input\"\n name={name}\n type=\"checkbox\"\n checked={checked}\n disabled={isDisabled}\n value={value}\n onBlur={handleBlur}\n onFocus={handleFocus}\n onChange={handleChange}\n />\n\n <span\n className={classNames(\"cweb-checkbox-icon-container\", \"transition-colors duration-300\", {\n \"bg-primary\": checked,\n \"bg-white\": !checked,\n \"hover:bg-primary-dark\": checked,\n \"outline-primary\": isFocused,\n \"cursor-not-allowed\": isDisabled,\n \"cursor-pointer\": !isDisabled,\n })}\n data-test-id=\"checkbox-span\"\n >\n <span className=\"cweb-checkbox-icon\" />\n </span>\n\n <div className=\"flex flex-col\">\n {text && <Text className=\"ml-2 select-none text-left\" text={text} data-test-id=\"checkbox-text\" />}\n {explanation && (\n <Text\n className=\"ml-2 select-none text-left\"\n text={explanation}\n color={\"gray-500\"}\n data-test-id=\"checkbox-explanation\"\n />\n )}\n </div>\n </label>\n </div>\n );\n};\n\nexport default Checkbox;\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport ReactModal from \"react-modal\";\n\nimport \"./Modal.scss\";\nimport { Title } from \"../Title/Title\";\n\nexport const MODAL_SIZES = {\n DEFAULT: \"default\",\n WIDE: \"wide\",\n WIDER: \"wider\",\n EXTRA_SMALL: \"extra-small\",\n} as const;\n\ntype MODAL_SIZES_NAMES = keyof typeof MODAL_SIZES;\nexport type MODAL_SIZES_VALUES = typeof MODAL_SIZES[MODAL_SIZES_NAMES];\n\nexport interface ModalProps {\n children: React.ReactNode;\n type?: MODAL_SIZES_VALUES;\n isOpen?: boolean;\n shouldCloseOnOverlayClick?: boolean;\n showTitleBar?: boolean;\n title?: string;\n onCloseClick?: (event: React.MouseEvent<Element, MouseEvent> | React.KeyboardEvent<Element>) => void;\n backAltText?: string;\n closeAltText?: string;\n className?: string;\n closeButtonId?: string;\n withPadding?: boolean;\n showHeader?: boolean;\n}\n\n/**\n * Don't use this modal directly if you need to add buttons to it.\n * There's a component called <ModalWithButtons /> you can use instead.\n */\nfunction Modal({\n children,\n type = MODAL_SIZES.DEFAULT,\n isOpen = false,\n shouldCloseOnOverlayClick = true,\n showTitleBar = true,\n title,\n onCloseClick,\n closeAltText = \"Close\",\n className,\n closeButtonId,\n withPadding = false,\n showHeader = true,\n}: ModalProps): JSX.Element {\n const containerClassName = classNames(\"cweb-modal\", className, {\n \"type-default\": type === MODAL_SIZES.DEFAULT,\n \"type-wide\": type === MODAL_SIZES.WIDE,\n \"type-wider\": type === MODAL_SIZES.WIDER,\n \"type-extra-small\": type === MODAL_SIZES.EXTRA_SMALL,\n });\n\n const overlayClassName = classNames(\"cweb-modal-overlay\", {\n \"no-title-bar\": !showTitleBar,\n });\n\n ReactModal.setAppElement(\"body\");\n\n return (\n <ReactModal\n isOpen={isOpen}\n contentLabel={title}\n portalClassName=\"cweb-modal-portal\"\n overlayClassName={overlayClassName}\n bodyOpenClassName=\"cweb-modal-body-open\"\n htmlOpenClassName=\"cweb-modal-html-open\"\n onRequestClose={onCloseClick}\n shouldFocusAfterRender={false}\n shouldCloseOnOverlayClick={shouldCloseOnOverlayClick}\n className={containerClassName}\n >\n {showHeader && (\n <div\n className={classNames({\n \"cweb-modal-title-section\": showTitleBar,\n \"cweb-modal-no-title-section\": !showTitleBar,\n })}\n >\n {showTitleBar && title && <Title text={title} type=\"sm\" className=\"cweb-modal-title\" />}\n <button\n data-test-id=\"close-modal-button\"\n role=\"icon\"\n title={closeAltText}\n id={closeButtonId}\n className=\"cweb-modal-close-button\"\n onClick={onCloseClick}\n />\n </div>\n )}\n\n {children ? (\n <div className={classNames(\"cweb-modal-content\", { \"px-6 py-4\": withPadding })}>{children}</div>\n ) : null}\n </ReactModal>\n );\n}\n\nexport default Modal;\n","import classNames from \"classnames\";\nimport React from \"react\";\n\nimport Modal, { ModalProps } from \"./Modal\";\n\nexport type ButtonsAlignment = \"justify-end\" | \"justify-between\";\n\ntype ModalWithButtonProps = ModalProps & {\n buttons: [JSX.Element, JSX.Element?];\n buttonsAlignment: ButtonsAlignment;\n};\n\nexport const ModalWithButtons = (props: ModalWithButtonProps): JSX.Element => {\n const { buttons, buttonsAlignment = \"justify-between\", children, ...rest } = props;\n return (\n <Modal {...rest} withPadding={false}>\n <div className={classNames(\"cweb-modal-content\", { \"px-6 py-4\": props.withPadding })}>{children}</div>\n <div\n className={classNames(\n \"flex items-center\",\n {\n \"justify-end\": buttonsAlignment === \"justify-end\" || buttons.length === 1,\n \"justify-between\": buttonsAlignment === \"justify-between\" && buttons.length >= 2,\n },\n \"px-6 py-4\",\n \"border-t border-solid rounded-b-lg border-chrome\",\n \"bg-slate-50\"\n )}\n >\n {buttons}\n </div>\n </Modal>\n );\n};\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport Button, { BUTTON_ROLES } from \"../Button/Button\";\nimport \"./ConfirmationDialog.scss\";\nimport { ModalWithButtons } from \"../Modal/ModalWithButtons\";\nimport { MODAL_SIZES, MODAL_SIZES_VALUES } from \"../Modal/Modal\";\nimport Text from \"../Text/Text\";\nimport { BUTTON_TYPE } from \"../Button/Button.types\";\n\ninterface ConfirmationDialogTexts {\n message: string;\n confirmLabel: string;\n cancelLabel: string;\n title?: string;\n}\n\ninterface ConfirmationDialogProps {\n texts: ConfirmationDialogTexts;\n isOpen: boolean;\n onCancel: () => void;\n onConfirm: () => void;\n isProcessing: boolean;\n cancelButtonRole: BUTTON_TYPE;\n confirmButtonRole: BUTTON_TYPE;\n size: MODAL_SIZES_VALUES;\n showHeader: boolean;\n className?: string;\n}\n\nexport const ConfirmationDialog = (props: ConfirmationDialogProps): JSX.Element => {\n const calculatedClassNames = classNames(\"vitals-confirmation-dialog\", props.className);\n\n const handleOnCloseClick = () => {\n if (!props.isProcessing) {\n props.onCancel();\n }\n };\n\n const modalButtons: [JSX.Element, JSX.Element?] = [\n <Button\n key=\"confirmation-dialog-button-cancel\"\n data-test-id=\"button-cancel\"\n text={props.texts.cancelLabel}\n onClick={props.onCancel}\n isDisabled={props.isProcessing}\n role={props.cancelButtonRole}\n />,\n <Button\n key=\"confirmation-dialog-button-confirm\"\n className=\"ml-2.5\"\n data-test-id=\"button-confirm\"\n text={props.texts.confirmLabel}\n onClick={props.onConfirm}\n isPending={props.isProcessing}\n />,\n ];\n\n return (\n <ModalWithButtons\n type={props.size}\n className={calculatedClassNames}\n isOpen={props.isOpen}\n title={props.texts.title}\n onCloseClick={handleOnCloseClick}\n shouldCloseOnOverlayClick={!props.isProcessing}\n showHeader={props.showHeader}\n buttons={modalButtons}\n buttonsAlignment=\"justify-end\"\n >\n <div className=\"vitals-confirmation-dialog-content\">\n <Text text={props.texts.message} containsDangerousHtml={true} />\n </div>\n </ModalWithButtons>\n );\n};\n\nConfirmationDialog.defaultProps = {\n isProcessing: false,\n cancelButtonRole: BUTTON_ROLES.SECONDARY,\n confirmButtonRole: BUTTON_ROLES.PRIMARY,\n size: MODAL_SIZES.DEFAULT,\n showHeader: true,\n};\n","import React, { Component } from \"react\";\nimport ReactDatePicker from \"react-datepicker\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\nimport moment from \"moment\";\n\nimport Button from \"../Button/Button\";\n\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport \"./Datepicker.scss\";\n\nexport default class Datepicker extends Component {\n handleCloseButtonClick = (event) => {\n event.preventDefault();\n\n this.datepickerRef.setOpen(false);\n };\n\n getDateFormat = () => {\n const { showTimeSelect, formatDateWithTime = false } = this.props;\n\n return showTimeSelect || formatDateWithTime ? \"L LT\" : \"L\";\n };\n\n render() {\n const {\n className,\n hasCloseButton,\n closeButtonText,\n adjustDateOnChange = true,\n showMonthDropdown = true,\n showYearDropdown = true,\n shouldCloseOnSelect = false,\n allowSameDay = false,\n minDate,\n maxDate,\n isDisabled = false,\n selected,\n ...otherProps\n } = this.props;\n\n const dateFormat = this.getDateFormat();\n const pickerClassName = classNames(\"cweb-datepicker text-slate-700 text-sm\", className);\n const getCloseButtonText = () => {\n if (!closeButtonText) {\n return \"OK\";\n }\n return closeButtonText;\n };\n\n return (\n <ReactDatePicker\n {...otherProps}\n adjustDateOnChange={adjustDateOnChange}\n ref={(element) => (this.datepickerRef = element)}\n className={pickerClassName}\n calendarClassName=\"cweb-datepicker-calendar\"\n shouldCloseOnSelect={shouldCloseOnSelect}\n allowSameDay={allowSameDay}\n closeButtonText\n minDate={minDate}\n maxDate={maxDate}\n disabled={isDisabled}\n showMonthDropdown={showMonthDropdown}\n showYearDropdown={showYearDropdown}\n dateFormat={dateFormat}\n timeFormat=\"HH:mm\"\n selected={selected}\n dropdownMode=\"select\"\n >\n <div className=\"m-2\">\n {hasCloseButton ? (\n <Button\n text={getCloseButtonText()}\n className=\"w-full cweb-datepicker-close-button\"\n onClick={this.handleCloseButtonClick}\n />\n ) : null}\n </div>\n </ReactDatePicker>\n );\n }\n}\n\nDatepicker.propTypes = {\n className: PropTypes.string,\n selected: PropTypes.object,\n hasCloseButton: PropTypes.bool,\n closeButtonText: PropTypes.string,\n onChange: PropTypes.func.isRequired,\n showMonthDropdown: PropTypes.bool,\n showYearDropdown: PropTypes.bool,\n minDate: PropTypes.instanceOf(moment),\n maxDate: PropTypes.instanceOf(moment),\n isDisabled: PropTypes.bool,\n};\n","import React, { PureComponent } from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport chevronDouble from \"../../assets/chevron-double.svg\";\nimport checkmark from \"../../assets/check-icon-primary.svg\";\nimport { Text } from \"../Text/Text\";\n\nimport \"./Dropdown.scss\";\n\nconst ITEM_QUERY_FIELD_NAMES = {\n ID: \"id\",\n HIGHLIGHT_INDEX: \"highlightIndex\",\n};\n\nconst keyCodes = {\n ARROW_DOWN: 40,\n ARROW_UP: 38,\n ENTER: 13,\n TAB: 9,\n SHIFT: 16,\n ESC: 27,\n};\n\nclass Dropdown extends PureComponent {\n static addHighlightIndexToItems = (items) => {\n let index = 0;\n\n return items.map((item) => {\n if (!item.subItems) {\n const currentIndex = index;\n index = index + 1;\n\n return {\n ...item,\n highlightIndex: currentIndex,\n };\n } else {\n return {\n ...item,\n subItems: item.subItems.map((subItem) => {\n const currentIndex = index;\n index = index + 1;\n\n return {\n ...subItem,\n highlightIndex: currentIndex,\n };\n }),\n };\n }\n });\n };\n\n static getTotalItemCount = (items) => {\n return items.reduce((acc, item) => {\n if (!item.subItems) {\n return acc + 1;\n } else {\n return acc + item.subItems.length;\n }\n }, 0);\n };\n\n constructor(props) {\n super(props);\n\n const items = Dropdown.addHighlightIndexToItems(props.items);\n const selectedItem = props.initialSelectedItemId\n ? this.findItem(items, ITEM_QUERY_FIELD_NAMES.ID, props.initialSelectedItemId)\n : null;\n\n this.state = {\n totalItemCount: Dropdown.getTotalItemCount(items),\n isDropdownOpen: false,\n highlightIndex: null,\n selectedItem,\n items,\n };\n }\n\n static getDerivedStateFromProps(nextProps, prevState) {\n const items = Dropdown.addHighlightIndexToItems(nextProps.items);\n\n return {\n ...prevState,\n items: items,\n totalItemCount: Dropdown.getTotalItemCount(items),\n };\n }\n\n componentDidMount() {\n document.addEventListener(\"mousedown\", this.handleClickOutside);\n }\n\n componentWillUnmount() {\n document.removeEventListener(\"mousedown\", this.handleClickOutside);\n }\n\n handleClickOutside = (event) => {\n if (this.rootRef && !this.rootRef.contains(event.target)) {\n this.closeDropdown();\n }\n };\n\n handleKeyDown = (event) => {\n const { items, isDropdownOpen, highlightIndex } = this.state;\n\n if (event.keyCode === keyCodes.ENTER) {\n event.preventDefault();\n\n if (isDropdownOpen) {\n this.closeDropdown();\n this.setSelectedItem(this.findItem(items, ITEM_QUERY_FIELD_NAMES.HIGHLIGHT_INDEX, highlightIndex));\n this.rootRef.blur();\n } else {\n this.openDropdown();\n }\n } else if (event.keyCode === keyCodes.TAB) {\n if (event.shiftKey) {\n this.decreaseHighlightIndexIfPossible();\n } else {\n this.increaseHighlightIndexIfPossible();\n }\n } else if (event.keyCode === keyCodes.ARROW_UP) {\n event.preventDefault();\n\n this.decreaseHighlightIndexIfPossible();\n } else if (event.keyCode === keyCodes.ARROW_DOWN) {\n event.preventDefault();\n\n if (isDropdownOpen) {\n this.increaseHighlightIndexIfPossible();\n } else {\n this.openDropdown();\n }\n } else if (event.keyCode === keyCodes.ESC) {\n this.closeDropdown();\n this.rootRef.blur();\n }\n };\n\n findItem = (items, fieldName, fieldValue) => {\n let selectedItem;\n\n for (let i = 0; i < items.length; i++) {\n const item = items[i];\n\n if (item[fieldName] === fieldValue) {\n selectedItem = item;\n } else if (item.subItems) {\n for (let j = 0; j < item.subItems.length; j++) {\n const subItem = item.subItems[j];\n\n if (\n (fieldName === ITEM_QUERY_FIELD_NAMES.ID && subItem.key === fieldValue) ||\n subItem[fieldName] === fieldValue\n ) {\n selectedItem = subItem;\n break;\n }\n }\n }\n\n if (selectedItem) {\n break;\n }\n }\n\n return selectedItem;\n };\n\n openDropdown = () => {\n this.setState((prevState) => {\n return {\n isDropdownOpen: true,\n highlightIndex: prevState.selectedItem ? prevState.selectedItem.highlightIndex : 0,\n };\n });\n };\n\n closeDropdown = () => {\n this.setState({\n isDropdownOpen: false,\n highlightIndex: null,\n });\n };\n\n setSelectedItem = (item) => {\n this.setState({\n selectedItem: item,\n });\n };\n\n findSelectedItem = (selectedIndex) => {\n return this.rootRef.querySelectorAll(\".dropdown-list-item\")[selectedIndex];\n };\n\n scrollToHighlightedItem = (selectedIndex) => {\n const selectedItem = this.findSelectedItem(selectedIndex);\n if (this.dropdownListRef.scrollTo) {\n this.dropdownListRef.scrollTo(0, selectedItem.offsetTop);\n }\n };\n\n increaseHighlightIndexIfPossible = () => {\n this.setState((prevState) => {\n const newHighlightIndex =\n prevState.highlightIndex < prevState.totalItemCount - 1\n ? prevState.highlightIndex + 1\n : prevState.highlightIndex;\n\n if (newHighlightIndex !== prevState.highlightIndex) {\n this.scrollToHighlightedItem(newHighlightIndex);\n }\n\n return {\n highlightIndex: newHighlightIndex,\n };\n });\n };\n\n decreaseHighlightIndexIfPossible = () => {\n this.setState((prevState) => {\n const newHighlightIndex = prevState.highlightIndex > 0 ? prevState.highlightIndex - 1 : prevState.highlightIndex;\n\n if (newHighlightIndex !== prevState.highlightIndex) {\n this.scrollToHighlightedItem(newHighlightIndex);\n }\n\n return {\n highlightIndex: newHighlightIndex,\n };\n });\n };\n\n selectItem = (item) => {\n const { onItemSelect } = this.props;\n\n this.closeDropdown();\n this.setSelectedItem(item);\n\n onItemSelect(item);\n };\n\n renderIndividualItem = (item) => {\n const { highlightIndex } = this.state;\n const isItemSelected = item.highlightIndex === highlightIndex;\n\n const itemClassName = classNames(\"dropdown-list-item p-3\", {\n \"is-selected\": isItemSelected,\n \"flex flex-row justify-between space-x-2\": isItemSelected,\n });\n const textType = isItemSelected ? \"strong\" : \"base\";\n\n return (\n <div className={itemClassName} key={item.id} tabIndex=\"0\" onClick={() => this.selectItem(item)}>\n <Text data-test-id={item.text} text={item.text} type={textType} truncate />\n <img className={classNames({ hidden: !isItemSelected })} src={checkmark} alt=\"checked\" />\n </div>\n );\n };\n\n renderGroupedItems = (item) => {\n return (\n <div className=\"dropdown-list-item-group\" key={item.groupKey}>\n {item.title && (\n <div className=\"p-3 bg-main-background\" tabIndex=\"-1\">\n <Text\n className=\"uppercase\"\n data-test-id={item.text}\n text={item.title}\n type=\"sm\"\n color=\"gray-500\"\n truncate\n />\n </div>\n )}\n {item.subItems.map((subItem) => this.renderIndividualItem(subItem))}\n </div>\n );\n };\n\n renderItems = () => {\n const { items } = this.state;\n\n return (\n <div\n className={classNames(\"dropdown-list\", { wider: this.props.wider })}\n ref={(element) => (this.dropdownListRef = element)}\n >\n {items.map((item) => (item.subItems ? this.renderGroupedItems(item) : this.renderIndividualItem(item)))}\n </div>\n );\n };\n\n render() {\n // eslint-disable-next-line no-unused-vars\n const {\n placeholder = \"\",\n className,\n initialSelectedItemId,\n onItemSelect,\n items,\n wider,\n ...otherProps\n } = this.props;\n const { selectedItem, isDropdownOpen } = this.state;\n const containerClassName = classNames(\"cweb-dropdown\", className, { \"is-open\": isDropdownOpen });\n const onDropdownClick = isDropdownOpen ? this.closeDropdown : this.openDropdown;\n\n return (\n <div\n className={classNames(containerClassName)}\n tabIndex=\"0\"\n ref={(element) => (this.rootRef = element)}\n onKeyDown={this.handleKeyDown}\n >\n <div\n {...otherProps}\n className={classNames(\"dropdown-header space-x-2 border border-solid p-3 cursor-pointer\", {\n \"border-primary-dark\": isDropdownOpen,\n \"border-input-border hover:border-input-border-dark\": !isDropdownOpen,\n })}\n onClick={onDropdownClick}\n >\n <Text className=\"dropdown-header-title\" text={selectedItem ? selectedItem.text : placeholder} truncate />\n <img className=\"dropdown-header-icon\" src={chevronDouble} alt=\"browse icon\" />\n </div>\n {this.renderItems()}\n </div>\n );\n }\n}\n\nDropdown.propTypes = {\n items: PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n text: PropTypes.string.isRequired,\n key: PropTypes.string.isRequired,\n }),\n PropTypes.shape({\n subItems: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n text: PropTypes.string.isRequired,\n key: PropTypes.string.isRequired,\n })\n ).isRequired,\n title: PropTypes.string,\n groupKey: PropTypes.string.isRequired,\n }),\n ])\n ).isRequired,\n initialSelectedItemId: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n placeholder: PropTypes.string,\n className: PropTypes.string,\n onItemSelect: PropTypes.func.isRequired,\n wider: PropTypes.bool,\n};\n\nexport default Dropdown;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport NoOpenAlertsImage from \"../../assets/no-open-alerts.svg\";\nimport SearchNotFoundImage from \"../../assets/search-not-found.svg\";\nimport HappyStarImage from \"../../assets/happy-star.svg\";\nimport { Text } from \"../Text/Text\";\n\nconst imageSrc = {\n \"no-open-alerts\": NoOpenAlertsImage,\n \"search-not-found\": SearchNotFoundImage,\n \"no-notes-found\": HappyStarImage,\n};\n\ninterface EmptyListMessageProps {\n text: string;\n imageName?: keyof typeof imageSrc;\n dataTestId?: string;\n className?: string;\n}\n\nexport const EmptyListMessage = ({\n text,\n imageName,\n dataTestId = \"empty-list-message\",\n className,\n}: EmptyListMessageProps): JSX.Element => {\n return (\n <div className={classNames(\"flex flex-col items-center\", className)} data-test-id={dataTestId}>\n {imageName && <img className=\"mb-2.5\" alt=\"\" src={imageSrc[imageName]} />}\n <Text className=\"text-center\" text={text} />\n </div>\n );\n};\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport Text from \"../Text/Text\";\n\nimport \"./ErrorBlock.scss\";\n\nErrorBlock.propTypes = {\n message: PropTypes.string.isRequired,\n className: PropTypes.string,\n};\n\nfunction ErrorBlock({ message, className = \"\", ...otherProps }) {\n const containerClassName = classNames(\"cweb-error-block\", className);\n\n return (\n <div className={containerClassName}>\n <Text {...otherProps} className=\"cweb-error-block-message\" text={message} />\n </div>\n );\n}\n\nexport default ErrorBlock;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport \"./InfoBlock.scss\";\nimport { Text } from \"../Text/Text\";\n\nInfoBlock.propTypes = {\n message: PropTypes.string.isRequired,\n containsDangerousHtml: PropTypes.bool,\n className: PropTypes.string,\n};\n\nfunction InfoBlock({ message, className, containsDangerousHtml = false }) {\n const containerClassName = classNames(\"cweb-info-block\", className);\n\n return (\n <div className={containerClassName}>\n <Text text={message} containsDangerousHtml={containsDangerousHtml} />\n </div>\n );\n}\n\nexport default InfoBlock;\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport ClipboardJS from \"clipboard\";\n\nimport { Text } from \"../Text/Text\";\n\ntype InfoFieldLinkType = \"none\" | \"link\" | \"clipboard\" | \"tel\";\n\ninterface InfoFieldProps {\n label: string;\n value: string;\n linkType: InfoFieldLinkType;\n supportsMultiline?: boolean;\n onCopyToClipboard?: () => void;\n icon?: JSX.Element;\n className?: string;\n}\n\nexport const InfoField = (props: InfoFieldProps): JSX.Element => {\n const clipboard = new ClipboardJS(\"button\");\n\n clipboard.on(\"success\", function (e) {\n props.onCopyToClipboard && props.onCopyToClipboard();\n e.clearSelection();\n });\n\n let ContainerElement: React.ElementType;\n let containerProps: any;\n\n switch (props.linkType) {\n case \"link\":\n ContainerElement = \"a\";\n containerProps = {\n href: props.value,\n target: \"_blank\",\n rel: \"noopener noreferrer\",\n };\n break;\n case \"tel\":\n ContainerElement = \"a\";\n containerProps = { href: `tel:${props.value}` };\n break;\n\n case \"clipboard\":\n ContainerElement = \"button\";\n containerProps = {\n type: \"button\",\n \"data-clipboard-text\": props.value,\n };\n break;\n\n case \"none\":\n default:\n ContainerElement = \"div\";\n break;\n }\n\n return (\n <div className={classNames(\"flex flex-row align-center items-center\", props.className)}>\n {props.icon}\n <ContainerElement className={\"flex flex-col overflow-hidden ml-3 first:ml-0\"} {...containerProps}>\n <Text\n text={props.label}\n type={\"sm\"}\n color={\"gray-500\"}\n className={classNames(\n { \"break-words\": props.supportsMultiline },\n { \"whitespace-no-wrap\": !props.supportsMultiline }\n )}\n />\n <Text\n className={classNames(\n { \"break-words\": props.supportsMultiline },\n { \"whitespace-no-wrap\": !props.supportsMultiline }\n )}\n text={props.value}\n truncate={!props.supportsMultiline}\n />\n </ContainerElement>\n </div>\n );\n};\n\nInfoField.defaultProps = {\n linkType: \"none\",\n};\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport cross from \"../../assets/color-variant-cross.svg\";\n\nconst INPUT_TYPES = {\n EMAIL: \"email\",\n NUMBER: \"number\",\n PASSWORD: \"password\",\n TEXT: \"text\",\n};\n\nInput.propTypes = {\n className: PropTypes.string,\n type: PropTypes.oneOf([INPUT_TYPES.EMAIL, INPUT_TYPES.NUMBER, INPUT_TYPES.PASSWORD, INPUT_TYPES.TEXT]),\n value: PropTypes.any,\n name: PropTypes.string.isRequired,\n placeholder: PropTypes.string,\n clearable: PropTypes.bool,\n maxLength: PropTypes.number,\n isDisabled: PropTypes.bool,\n withPrefix: PropTypes.string,\n withSuffix: PropTypes.string,\n icon: PropTypes.string,\n onChange: PropTypes.func.isRequired,\n onBlur: PropTypes.func,\n onFocus: PropTypes.func,\n onKeyPress: PropTypes.func,\n onKeyDown: PropTypes.func,\n id: PropTypes.string,\n setRef: PropTypes.any,\n};\n\nfunction Input({\n withSuffix = \"\",\n withPrefix = \"\",\n className = \"\",\n clearable = false,\n type = INPUT_TYPES.TEXT,\n isDisabled = false,\n icon,\n setRef = () => undefined,\n onChange,\n name,\n value,\n ...otherProps\n}) {\n const hasNoExtraContent = withPrefix === \"\" && withSuffix === \"\";\n\n let style;\n if (icon) {\n style = {\n backgroundSize: \"1.125rem\",\n backgroundPosition: \"1rem\",\n backgroundImage: `url(${icon})`,\n backgroundRepeat: \"no-repeat\",\n };\n }\n\n return (\n <div className=\"relative flex flex-row\">\n <span\n className={classNames(\n \"h-11\",\n {\n hidden: hasNoExtraContent,\n \"order-1\": withPrefix !== \"\",\n \"order-2\": withSuffix !== \"\",\n \"rounded-l border-l\": withPrefix !== \"\",\n \"rounded-r border-r\": withSuffix !== \"\",\n },\n \"border-t border-b border-solid border-input-border\",\n \"flex flex-col items-center p-3\",\n \"text-sm\",\n \"text-slate-500\",\n \"bg-main-background\"\n )}\n >\n {withSuffix || withPrefix}\n </span>\n <input\n {...otherProps}\n name={name}\n value={value}\n onChange={onChange}\n ref={setRef}\n size={otherProps.maxLength}\n type={type}\n disabled={isDisabled}\n className={classNames(\n \"cweb-input\",\n \"block\",\n { \"pl-10\": icon, \"pr-11\": clearable },\n \"h-11\",\n \"p-2\",\n \"border\",\n \"text-sm\",\n \"text-slate-700\",\n \"bg-white\",\n \"placeholder-slate-500\",\n \"border-solid\",\n \"border-input-border\",\n \"hover:border-input-border-dark\",\n \"focus:outline-primary\",\n \"transition-colors\",\n \"duration-300\",\n \"focus:border-primary\",\n {\n \"z-10\": withSuffix !== \"\" || withPrefix !== \"\", // to make sure the outline is displayed completely\n rounded: hasNoExtraContent,\n \"rounded-l\": withSuffix !== \"\",\n \"rounded-r\": withPrefix !== \"\",\n \"order-2\": withPrefix !== \"\",\n \"order-1\": withSuffix !== \"\",\n },\n \"shadow-default\",\n className\n )}\n style={style}\n />\n <span\n style={{\n background: `url(${cross}) center no-repeat`,\n backgroundSize: \"1.5rem\",\n }}\n className={classNames(\n \"absolute right-0 transform top-1/2\",\n \"-translate-y-1/2 block w-6 h-6 mr-3 cursor-pointer text-input-icon\",\n { hidden: !clearable }\n )}\n onClick={() => {\n onChange && onChange({ target: { name: name, value: \"\" }, currentTarget: { name: name, value: \"\" } });\n }}\n />\n </div>\n );\n}\n\nexport default Input;\nexport { INPUT_TYPES };\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nconst Line = ({ left, right, className }) => (\n <div className={classNames(className, \"cweb-line\", \"flex flex-row flex-no-wrap\")}>\n <div className={\"flex\"}>\n {left?.map(\n (item) =>\n item && (\n <div key={item.key ?? item.props.id} className={\"mr-3 flex items-center\"}>\n {item}\n </div>\n )\n )}\n </div>\n <div className={\"flex-grow\"} />\n <div className={\"flex\"}>\n {right?.map((item) => {\n return (\n item && (\n <div key={item.key ?? item.props.id} className={\"ml-3 first:ml-0\"}>\n {item}\n </div>\n )\n );\n })}\n </div>\n </div>\n);\n\nLine.propTypes = {\n left: PropTypes.array,\n right: PropTypes.array,\n className: PropTypes.string,\n};\n\nexport default Line;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport \"./ListItem.scss\";\n\nexport interface ListItemProps {\n className?: string;\n onClick?: any; // func\n children?: any;\n}\n\nexport const ListItem: React.FC<ListItemProps> = (props) => {\n const { children, className, onClick, ...rest } = props;\n\n const classes = classNames(\"cweb-list-item\", className, {\n \"cweb-list-item-clickable\": !!onClick,\n });\n\n return (\n <div className={classes} onClick={onClick} {...rest}>\n {children}\n </div>\n );\n};\n\nexport default ListItem;\n","import React from \"react\";\n\nimport { TertiaryButton } from \"../ButtonV2/TertiaryButton\";\nimport { LeftArrowIcon } from \"../Icons/LeftArrowIcon\";\nimport { RightArrowIcon } from \"../Icons/RightArrowIcon\";\nimport { Text } from \"../Text/Text\";\n\nimport { PaginationMenuSmallProps } from \"./PaginationMenu.types\";\n\nexport const PaginationMenuSmall = (\n props: PaginationMenuSmallProps\n): JSX.Element => {\n const handleOnChange = (event: React.MouseEvent<HTMLButtonElement>) => {\n const pageNumber = event.currentTarget.dataset.page;\n pageNumber && props.onChange(parseInt(pageNumber, 10), props.pageSize);\n };\n\n return (\n <>\n <TertiaryButton\n data-test-id=\"prev-button\"\n icon={LeftArrowIcon}\n data-page={props.currentPageNumber - 1}\n onClick={handleOnChange}\n isDisabled={props.currentPageNumber === 1}\n />\n <Text\n className=\"ml-4\"\n text={`${props.currentPageNumber} / ${props.pageCount}`}\n type=\"sm\"\n color=\"gray-500\"\n />\n <TertiaryButton\n className=\"ml-4\"\n data-test-id=\"next-button\"\n icon={RightArrowIcon}\n isDisabled={props.currentPageNumber === props.pageCount}\n data-page={props.currentPageNumber + 1}\n onClick={handleOnChange}\n />\n </>\n );\n};\n","import type { Props, StylesConfig, GroupBase } from \"react-select\";\nimport ReactSelect, { mergeStyles, SelectInstance } from \"react-select\";\nimport React from \"react\";\n\nimport checkmark from \"../../assets/check-icon-primary.svg\";\nimport doubleChevron from \"../../assets/chevron-double.svg\";\n\nfunction generateCustomStyles<Option, IsMulti extends boolean, Group extends GroupBase<Option>>(\n hasError: boolean,\n isIE11: boolean\n): StylesConfig<Option, IsMulti, Group> {\n return {\n option: (baseStyles, state) => {\n return {\n ...baseStyles,\n fontWeight: state.isSelected ? \"bold\" : \"normal\",\n fontSize: \"14px\",\n backgroundColor: \"none\",\n color: \"inherit\",\n position: \"relative\",\n padding: \"0.75rem\",\n opacity: state.isDisabled ? \"0.5\" : 1,\n \"&:after\": {\n position: \"absolute\",\n content: '\"\"',\n background: `url(${checkmark}) no-repeat center`,\n // This needs to match the proportional\n // padding in this element.\n // 0.75rem -> 12px\n right: 12,\n height: \"1rem\",\n width: \"1rem\",\n visibility: state.isSelected ? \"visible\" : \"hidden\",\n },\n transition: \"background-color 0.3s ease-in-out\",\n \"&:hover\": {\n // tailwind blue-50\n backgroundColor: state.isSelected ? \"transparent\" : \"#F2FAFD\",\n },\n pointerEvents: state.isDisabled ? \"none\" : \"auto\",\n };\n },\n container: (baseStyles) => {\n return { ...baseStyles, flexGrow: isIE11 ? 0.5 : \"initial\" };\n },\n control: (baseStyles, state) => {\n const defaultBorderColor = state.isFocused ? \"#045baa\" : \"#D1D5DB\";\n const validatedBorderColor = hasError ? \"#c53030\" : defaultBorderColor;\n\n const defaultOutline = hasError ? \"rgba(255, 98, 102, 0.3)\" : \"rgba(0, 159, 227, 0.3)\";\n const validatedOutline = `4px solid ${state.isFocused ? defaultOutline : \"transparent\"}`;\n\n return {\n ...baseStyles,\n fontSize: \"14px\",\n transition: \"border 0.3s ease-in-out\",\n height: isIE11 ? \"50px\" : \"2.75rem\",\n\n // primary outline\n outline: validatedOutline,\n\n borderColor: validatedBorderColor,\n borderWidth: \"1px !important\",\n borderStyle: \"solid\",\n borderRadius: \"4px\",\n\n boxShadow: \"0px 1px 2px rgba(0, 0, 0, 0.05)\",\n\n \"&:hover\": {\n borderColor: \"#9CA3AF\",\n // selector for the chevron\n '> [class*=\"IndicatorsContainer\"]': {\n opacity: 1,\n },\n },\n };\n },\n // The placeholder has the following css prop: grid-area: 1/1/2/3;\n // And grid-area doesn't work on IE11, so we need to style it slightly different.\n placeholder: (baseStyles) => ({\n ...baseStyles,\n fontWeight: 100,\n color: \"#6B7280\",\n paddingTop: isIE11 ? \"1.2rem\" : undefined,\n }),\n singleValue: (baseStyles) => {\n return {\n ...baseStyles,\n paddingTop: isIE11 ? \"1.2rem\" : undefined,\n fontSize: \"14px\",\n };\n },\n indicatorSeparator: () => ({\n display: \"none\",\n }),\n\n indicatorsContainer: (baseStyles) => ({\n ...baseStyles,\n opacity: 0.5,\n transition: \"opacity 0.3s ease-in-out\",\n background: `url(${doubleChevron}) no-repeat center`,\n // hiding the default indicator\n svg: {\n display: \"none\",\n },\n marginRight: \"0.75rem\",\n }),\n menu: (baseStyles) => ({\n ...baseStyles,\n zIndex: 20,\n }),\n };\n}\n\ntype CustomSelect = <Option, IsMulti extends boolean, Group extends GroupBase<Option>>(\n props: Props<Option, IsMulti, Group>,\n ref: React.RefAttributes<SelectInstance<Option, IsMulti, Group>>\n) => React.ReactElement;\n\nconst CustomSelect = React.forwardRef(\n <Option, IsMulti extends boolean, Group extends GroupBase<Option>>(\n props: Props<Option, IsMulti, Group>,\n _ref: any\n ) => {\n const { className, styles } = props;\n\n const hasError = className?.includes(\"has-error\") || false;\n const isIE11 = \"MSInputMethodContext\" in window && \"documentMode\" in document;\n const customStyles = generateCustomStyles<Option, IsMulti, Group>(hasError, isIE11);\n const mergedStyles = mergeStyles<Option, IsMulti, Group>(customStyles, styles);\n\n return <ReactSelect<Option, IsMulti, Group> {...props} styles={mergedStyles} />;\n }\n) as CustomSelect;\n\nexport default CustomSelect;\n","import { Localization, Option, PageSize } from \"./PaginationMenu.types\";\n\nconst PAGE_SIZES: PageSize[] = [50, 100, 150, 200];\n\nexport const PAGE_SIZE_OPTIONS = PAGE_SIZES.map(pageSize => {\n return {\n label: pageSize.toString(),\n value: pageSize,\n };\n});\n\nexport const getPageNumberOptions = (pageCount: number): Option[] => {\n const items: Option[] = [];\n for (let i = 1; i <= pageCount; i++) {\n items.push({\n label: i.toString(),\n value: i,\n });\n }\n return items;\n};\n\n/**\n *\n * @returns When the pageSize and resultCount params are present,\n * this function returns a text indicating the range of elements that are being displayed,\n * otherwise it returns a text indicating the current page and the page count.\n * @example 1-50 of 100\n *\n */\nexport const getSummaryText = (\n pageCount: number,\n currentPageNumber: number,\n localization: Localization,\n pageSize?: number,\n resultCount?: number\n): string => {\n if (pageSize && resultCount) {\n const lowestElement = (currentPageNumber - 1) * pageSize + 1;\n const highestElement =\n currentPageNumber === pageCount\n ? resultCount\n : currentPageNumber * pageSize;\n\n return `${lowestElement}-${highestElement} ${localization.of} ${resultCount}`;\n } else {\n return `${localization.page} ${currentPageNumber} / ${pageCount}`;\n }\n};\n","import React from \"react\";\nimport { GroupBase, SingleValue } from \"react-select\";\n\nimport { SecondaryButton } from \"../ButtonV2/SecondaryButton\";\nimport Select from \"../Select/Select\";\nimport { Text } from \"../Text/Text\";\n\nimport { Option, PaginationMenuLargeProps } from \"./PaginationMenu.types\";\nimport {\n getPageNumberOptions,\n getSummaryText,\n PAGE_SIZE_OPTIONS,\n} from \"./PaginationMenu.utils\";\n\nexport const PaginationMenuLarge = (\n props: PaginationMenuLargeProps\n): JSX.Element => {\n const handleOnPageNumberSelect = (optionSelected: SingleValue<Option>) => {\n optionSelected && props.onChange(optionSelected.value, props.pageSize);\n };\n const handleOnPageSizeSelect = (optionSelected: SingleValue<Option>) => {\n const pageSize = PAGE_SIZE_OPTIONS.find(\n option => option === optionSelected\n );\n pageSize && props.onChange(1, pageSize.value);\n };\n const handleOnPrevNextButtonClick = (\n event: React.MouseEvent<HTMLButtonElement>\n ) => {\n const newPage = event.currentTarget.dataset.page;\n newPage && props.onChange(parseInt(newPage, 10), props.pageSize);\n };\n\n return (\n <>\n <div className={\"flex flex-row items-center\"}>\n {props.pageSize && props.resultCount && (\n <>\n <Text text={props.localization.display} />\n <Select<Option, false, GroupBase<Option>>\n className={\"w-24 ml-2 mr-4\"}\n options={PAGE_SIZE_OPTIONS}\n onChange={handleOnPageSizeSelect}\n value={{\n label: props.pageSize.toString(),\n value: props.pageSize,\n }}\n menuPlacement=\"auto\"\n />\n </>\n )}\n <Text text={props.localization.page} />\n <Select<Option, false, GroupBase<Option>>\n className={\"w-24 ml-2\"}\n options={getPageNumberOptions(props.pageCount)}\n onChange={handleOnPageNumberSelect}\n value={{\n label: props.currentPageNumber.toString(),\n value: props.currentPageNumber,\n }}\n isDisabled={props.pageCount < 2}\n menuPlacement=\"auto\"\n />\n </div>\n\n <div className={\"ml-4 flex flex-row items-center\"}>\n <Text\n text={getSummaryText(\n props.pageCount,\n props.currentPageNumber,\n props.localization,\n props.pageSize,\n props.resultCount\n )}\n color=\"gray-500\"\n />\n <SecondaryButton\n data-test-id=\"prev-button\"\n text={props.localization.previous}\n data-page={props.currentPageNumber - 1}\n onClick={handleOnPrevNextButtonClick}\n isDisabled={props.currentPageNumber === 1}\n className=\"ml-4\"\n />\n <SecondaryButton\n data-test-id=\"next-button\"\n text={props.localization.next}\n isDisabled={props.currentPageNumber === props.pageCount}\n data-page={props.currentPageNumber + 1}\n onClick={handleOnPrevNextButtonClick}\n className=\"ml-4\"\n />\n </div>\n </>\n );\n};\n","import React from \"react\";\n\nimport { PaginationMenuSmall } from \"./PaginationMenuSmall\";\nimport { PaginationMenuLarge } from \"./PaginationMenuLarge\";\nimport { PaginationMenuProps } from \"./PaginationMenu.types\";\n\nexport const PaginationMenu = (props: PaginationMenuProps): JSX.Element => {\n const buildPaginationLarge = (): JSX.Element => {\n if (!props.localization) {\n console.error(\n \"Localization is required to use the non small Pagination component, please make sure to pass it as a prop.\"\n );\n return <span>Invalid props passed to this component.</span>;\n }\n return (\n <PaginationMenuLarge\n pageCount={props.pageCount}\n currentPageNumber={props.currentPageNumber}\n onChange={props.onChange}\n pageSize={props.pageSize}\n localization={props.localization}\n resultCount={props.resultCount}\n />\n );\n };\n\n return (\n <div className=\"flex flex-row w-full items-center justify-between\">\n {props.small ? (\n <PaginationMenuSmall\n pageCount={props.pageCount}\n currentPageNumber={props.currentPageNumber}\n pageSize={props.pageSize}\n onChange={props.onChange}\n />\n ) : (\n buildPaginationLarge()\n )}\n </div>\n );\n};\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport loadingImage from \"../../assets/loading.svg\";\nimport spinner from \"../../assets/spinner.svg\";\nimport graySpinner from \"../../assets/spinner-gray.svg\";\nimport { RestPropped } from \"../../types/general.types\";\n\nimport \"./LoadingIndicator.scss\";\n\nexport interface LoadingIndicatorProps extends RestPropped {\n asModal?: boolean;\n asSpinner?: boolean;\n className?: string;\n spinnerColor?: \"blue\" | \"gray\";\n}\n\nexport function LoadingIndicator({\n asModal = false,\n asSpinner = false,\n className = \"\",\n spinnerColor = \"blue\",\n ...restProps\n}: LoadingIndicatorProps): JSX.Element {\n const spinnerToRender = spinnerColor === \"blue\" ? spinner : graySpinner;\n\n const containerClassName = classNames(\"cweb-loading\", className, {\n \"as-modal\": asModal,\n });\n\n return (\n <div {...restProps} className={containerClassName}>\n <img\n src={asSpinner ? spinnerToRender : loadingImage}\n className={classNames(\"text-gray-600 fill-current stroke-current\", {\n \"h-4 w-4\": asSpinner,\n \"h-8 w-8\": !asSpinner,\n })}\n />\n </div>\n );\n}\n\nexport default LoadingIndicator;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport { Text } from \"../Text/Text\";\n\nimport { ListTablePropsConfigurationField } from \"./ListTable\";\n\nfunction isEmpty(str: string) {\n return str === null || str === undefined || (isString(str) && str.trim() === \"\");\n}\n\nfunction isString(obj?: string | any): obj is string {\n return Object.prototype.toString.call(obj) === \"[object String]\";\n}\n\nexport interface ListTableCellProps<ItemType, CellType> {\n isHeader?: boolean;\n value: string | CellType;\n configuration: ListTablePropsConfigurationField<ItemType, CellType>;\n emptyValue?: string;\n}\n\nexport function ListTableCell<ItemType, CellType>({\n isHeader = false,\n value,\n configuration,\n emptyValue,\n}: ListTableCellProps<ItemType, CellType>): JSX.Element {\n const { name, className, textProps } = configuration;\n\n const textClassName = classNames(\"text-left\", textProps?.className);\n const cellClassName = classNames(\"cweb-list-table-content-cell\", \"py-0 px-3\", className);\n\n const hasValue = (isString(value) && isEmpty(value) || value !== undefined);\n\n const returnChildren = () => {\n return (\n <>\n {!hasValue && isString(emptyValue) && (\n <Text text={emptyValue} {...textProps} className={textClassName} color={\"gray-500\"} />\n )}\n {hasValue && isString(value) && (\n <Text\n text={value}\n {...textProps}\n className={classNames(textClassName, {\n truncate: !isHeader,\n capitalize: isHeader,\n \"w-40\": !isHeader,\n })}\n />\n )}\n {hasValue && !isString(value) && value}\n </>\n );\n };\n\n return isHeader ? (\n <th className={cellClassName} key={name}>\n {returnChildren()}\n </th>\n ) : (\n <td className={classNames(cellClassName, \"max-w-40\")} key={name}>\n {returnChildren()}\n </td>\n );\n}\n\nexport default ListTableCell;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport { ListTableItem, ListTablePropsConfiguration } from \"./ListTable\";\nimport ListTableCell from \"./ListTableCell\";\n\nexport interface ListTableRowProps<ItemType extends ListTableItem, CellType> {\n item: ItemType;\n onClick?: (arg: ItemType) => void;\n configuration: ListTablePropsConfiguration<ItemType, CellType>;\n}\n\nexport function ListTableRow<ItemType extends ListTableItem, CellType>({\n item,\n onClick,\n configuration,\n}: ListTableRowProps<ItemType, CellType>): JSX.Element {\n function handleRowClick(event: React.MouseEvent) {\n event.stopPropagation();\n if (onClick) {\n onClick(item);\n }\n }\n\n return (\n <tr\n className={classNames(\"cweb-list-table-content-section\", \"h-13\", {\n \"hover:bg-slate-100 transition-colors ease-in-out duration-300 cursor-pointer\": onClick,\n \"hover:bg-white cursor-default\": !onClick,\n })}\n onClick={handleRowClick}\n key={item[configuration.idField]}\n >\n {configuration.fields.map((field) => (\n <ListTableCell\n key={field.name}\n value={field.field(item)}\n configuration={{ ...field, className: `${field.className ?? \"\"} border-b border-slate-100` }}\n emptyValue={configuration.emptyValue}\n />\n ))}\n </tr>\n );\n}\n\nexport default ListTableRow;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport { ListTableItem, ListTablePropsConfigurationField } from \"./ListTable\";\nimport ListTableCell from \"./ListTableCell\";\n\nexport interface ListTableHeaderProps<ItemType extends ListTableItem, CellType> {\n className?: string;\n configurationFields: ListTablePropsConfigurationField<ItemType, CellType>[];\n}\n\nexport function ListTableHeader<ItemType extends ListTableItem, CellType>({\n className,\n configurationFields,\n}: ListTableHeaderProps<ItemType, CellType>): JSX.Element {\n return (\n <thead className={classNames(\"cweb-list-table-header-section\", className)}>\n <tr className=\"border-b h-13 border-slate-100\">\n {configurationFields.map((field) => (\n <ListTableCell\n isHeader={true}\n key={field.name}\n value={field.title}\n configuration={{\n ...field,\n textProps: { ...field.textProps, type: \"strong\", className: \"py-4 leading-none\" },\n }}\n />\n ))}\n </tr>\n </thead>\n );\n}\n","import React, { useEffect, useState } from \"react\";\nimport classNames from \"classnames\";\n\nimport { TextProps, Text } from \"../Text/Text\";\nimport { PaginationMenu } from \"../PaginationMenu/PaginationMenu\";\nimport LoadingIndicator from \"../LoadingIndicator/LoadingIndicator\";\nimport SearchNotFoundImage from \"../../assets/search-not-found.svg\";\nimport { RestPropped } from \"../../types/general.types\";\nimport {\n Localization,\n OnPaginationChange,\n} from \"../PaginationMenu/PaginationMenu.types\";\n\nimport ListTableRow from \"./ListTableRow\";\nimport { ListTableHeader } from \"./ListTableHeader\";\n\nexport type ListTableItem = RestPropped;\n\nexport interface ListTableProps<ItemType extends ListTableItem, CellType>\n extends RestPropped {\n items?: ItemType[];\n configuration: ListTablePropsConfiguration<ItemType, CellType>;\n pageCount?: number;\n currentPage?: number;\n onRowClick?: (arg: ItemType) => void;\n onPaginationChange?: OnPaginationChange;\n isLoading?: boolean;\n showHeader?: boolean;\n className?: string;\n localization: Localization;\n}\n\nexport interface ListTablePropsConfiguration<\n ItemType extends ListTableItem,\n CellType\n> {\n // this value is used if the field function is returning nothing\n emptyValue?: string;\n fields: ListTablePropsConfigurationField<ItemType, CellType>[];\n idField: keyof ItemType;\n emptyListText: string;\n}\n\nexport interface ListTablePropsConfigurationField<\n ItemType extends ListTableItem,\n CellType\n> {\n // this is used as a key and is expected to be unique. It doesn't do anything else other than guiding the developer\n name: string;\n // this sets the column title in the header\n title?: string;\n className?: string;\n // this function can return any item that will be displayed directly in the table cell\n // if this function returns a string, it will be wrapped in Text\n field: (arg: ItemType) => string | CellType;\n // if field results in a string, then these props will be spread into the Text component\n textProps?: Omit<TextProps, \"text\">;\n}\n\nexport function ListTable<ItemType extends ListTableItem, CellType>({\n items = [],\n configuration,\n pageCount = 0,\n currentPage = 1,\n onPaginationChange,\n onRowClick,\n isLoading = false,\n showHeader = true,\n className,\n localization,\n ...restProps\n}: ListTableProps<ItemType, CellType>): JSX.Element {\n // For not displaying empty view at creation\n const [isPristine, setIsPristine] = useState(true);\n\n useEffect(() => {\n setIsPristine(false);\n }, [items, isLoading]);\n\n const showEmptyView =\n !isPristine && !isLoading && !(items && items.length > 0);\n\n return (\n <div\n className={classNames(\n \"cweb-list-table\",\n \"relative w-full max-w-full rounded-lg overflow-hidden bg-white\",\n className\n )}\n {...restProps}\n >\n <table className=\"w-full border-collapse cweb-list-table-table\">\n {showHeader && (\n <ListTableHeader configurationFields={configuration.fields} />\n )}\n\n <tbody>\n {!isLoading &&\n items &&\n items.map(item => (\n <ListTableRow\n key={item[configuration.idField]}\n onClick={onRowClick}\n item={item}\n configuration={configuration}\n />\n ))}\n\n {isLoading && (\n <tr>\n <td colSpan={configuration.fields.length}>\n <LoadingIndicator\n className={classNames(\n \"cweb-list-table-content-loader\",\n \"relative h-16\",\n \"flex justify-center flex-row items-center\",\n \"py-0 px-3\"\n )}\n asModal={false}\n />\n </td>\n </tr>\n )}\n\n {showEmptyView && (\n <tr>\n <td colSpan={configuration.fields.length}>\n <div\n className={classNames(\n \"cweb-list-table-no-items\",\n \"flex justify-center flex-col items-center\",\n \"py-4 px-3\"\n )}\n >\n <img\n className=\"mb-4 no-item-found-image\"\n src={SearchNotFoundImage}\n alt=\"no-image-found\"\n />\n <Text\n className={classNames(\n \"no-item-found-text\",\n \"w-56 text-base text-gray-600 text-center whitespace-pre-wrap\"\n )}\n text={configuration.emptyListText}\n />\n </div>\n </td>\n </tr>\n )}\n </tbody>\n\n {!showEmptyView && pageCount > 0 && onPaginationChange && (\n <tfoot>\n <tr>\n <td colSpan={configuration.fields.length}>\n <div\n className={classNames(\n \"cweb-list-table-footer\",\n \"flex justify-center flex-row items-center\",\n \"h-20 py-4 px-4\"\n )}\n >\n <PaginationMenu\n onChange={onPaginationChange}\n pageCount={pageCount}\n currentPageNumber={currentPage}\n localization={localization}\n />\n </div>\n </td>\n </tr>\n </tfoot>\n )}\n </table>\n </div>\n );\n}\n\nexport default ListTable;\n","import React, { PureComponent } from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport Button from \"../Button/Button\";\n\nimport \"./Menu.scss\";\n\nclass Menu extends PureComponent {\n static propTypes = {\n children: PropTypes.node.isRequired,\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n isOpen: false,\n };\n }\n\n componentDidMount() {\n document.addEventListener(\"mousedown\", this.handleClickOutside);\n }\n\n componentWillUnmount() {\n document.removeEventListener(\"mousedown\", this.handleClickOutside);\n }\n\n handleClickOutside = (event) => {\n if (this.rootRef && !this.rootRef.contains(event.target)) {\n this.closeMenu();\n }\n };\n\n handleIconClick = (event) => {\n event.preventDefault();\n event.stopPropagation();\n this.openMenu();\n };\n\n openMenu = () => {\n this.setState({\n isOpen: true,\n });\n };\n\n closeMenu = () => {\n this.setState({\n isOpen: false,\n });\n };\n\n render() {\n const { children, className } = this.props;\n const { isOpen } = this.state;\n\n const containerClassName = classNames(\"cweb-menu\", className, {\n \"is-open\": isOpen,\n });\n\n return (\n <div className={containerClassName} ref={(element) => (this.rootRef = element)}>\n {isOpen ? (\n <div className=\"p-6 border shadow-md cweb-menu-content border-slate-300\">{children}</div>\n ) : (\n <Button role=\"tertiary\" onClick={this.handleIconClick} className=\"chart-button\" />\n )}\n </div>\n );\n }\n}\n\nexport default Menu;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport \"./Text.scss\";\n\nconst TEXT_TYPE_OPTIONS = {\n DEFAULT: \"default\",\n STRONG: \"strong\",\n EMPHASIZED: \"emphasized\",\n FINEPRINT: \"fineprint\",\n SMALL: \"small\",\n SMALL_DARK: \"small-dark\",\n SMALL_FINEPRINT: \"small-fineprint\",\n MICRO: \"micro\",\n ERROR: \"error\",\n};\n\nconst TEXT_LEVEL_OPTIONS = {\n INLINE: \"inline\",\n BLOCK: \"block\",\n};\n\nLegacyText.propTypes = {\n text: PropTypes.string.isRequired,\n level: PropTypes.oneOf([TEXT_LEVEL_OPTIONS.INLINE, TEXT_LEVEL_OPTIONS.BLOCK]),\n type: PropTypes.oneOf([\n TEXT_TYPE_OPTIONS.DEFAULT,\n TEXT_TYPE_OPTIONS.STRONG,\n TEXT_TYPE_OPTIONS.EMPHASIZED,\n TEXT_TYPE_OPTIONS.FINEPRINT,\n TEXT_TYPE_OPTIONS.SMALL,\n TEXT_TYPE_OPTIONS.SMALL_DARK,\n TEXT_TYPE_OPTIONS.SMALL_FINEPRINT,\n TEXT_TYPE_OPTIONS.MICRO,\n TEXT_TYPE_OPTIONS.ERROR,\n ]),\n className: PropTypes.string,\n containsDangerousHtml: PropTypes.bool,\n};\n\n/**\n * @deprecated use TextV2\n */\nfunction LegacyText({\n text,\n type = TEXT_TYPE_OPTIONS.DEFAULT,\n level = TEXT_LEVEL_OPTIONS.BLOCK,\n className = \"\",\n containsDangerousHtml = false,\n ...otherProps\n}) {\n const containerClassName = classNames(\"cweb-text\", className, {\n \"type-default\": type === TEXT_TYPE_OPTIONS.DEFAULT,\n \"type-strong\": type === TEXT_TYPE_OPTIONS.STRONG,\n \"type-emphasized\": type === TEXT_TYPE_OPTIONS.EMPHASIZED,\n \"type-small\": type === TEXT_TYPE_OPTIONS.SMALL,\n \"type-fineprint\": type === TEXT_TYPE_OPTIONS.FINEPRINT,\n \"type-small-fineprint\": type === TEXT_TYPE_OPTIONS.SMALL_FINEPRINT,\n \"level-inline\": level === TEXT_LEVEL_OPTIONS.INLINE,\n \"level-block\": level === TEXT_LEVEL_OPTIONS.BLOCK,\n \"type-small-dark\": type === TEXT_LEVEL_OPTIONS.SMALL_DARK,\n \"type-error\": type === TEXT_TYPE_OPTIONS.ERROR,\n \"text-xs\": type === TEXT_TYPE_OPTIONS.MICRO,\n });\n\n return containsDangerousHtml ? (\n <p className={containerClassName} dangerouslySetInnerHTML={{ __html: text }} {...otherProps} />\n ) : (\n <p className={containerClassName} {...otherProps}>\n {text}\n </p>\n );\n}\n\nexport default LegacyText;\n\nexport { TEXT_TYPE_OPTIONS, TEXT_LEVEL_OPTIONS };\n","export function handleImplicitSelect(implicitSelected, event, list, property) {\n /*For certain values, if one checkbox is selected\n other checkboxes have to be selected/unselected automatically */\n const newList = [...list];\n const selectCheckboxName = event.target.name;\n const isChecked = event.target.checked;\n const implicitSelectedValues = implicitSelected[selectCheckboxName];\n\n if (implicitSelectedValues) {\n implicitSelectedValues.forEach((value) => {\n const selectedIndex = newList.findIndex((checkbox) => value === checkbox.identifier);\n let upadteCheckbox;\n if (property === \"isChecked\") {\n //if normal checkbox is false the switcher must be set to false as well\n upadteCheckbox = { ...newList[selectedIndex], isChecked: isChecked, isOn: false };\n } else {\n upadteCheckbox = { ...newList[selectedIndex], [property]: isChecked };\n }\n newList.splice(selectedIndex, 1, upadteCheckbox);\n });\n }\n return newList;\n}\n","import React, { useEffect, useState } from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport Checkbox from \"../Checkbox/Checkbox\";\nimport { TEXT_TYPE_OPTIONS } from \"../Text/LegacyText\";\n\nimport { handleImplicitSelect } from \"./MultiSelectUtils\";\n\nimport \"./MultiSelect.scss\";\n\nexport function MultiSelect({\n checkboxList,\n radioLabel,\n onChange,\n validationError,\n name,\n implicitSelect,\n radioOnDemand,\n}) {\n const [list, setList] = useState(checkboxList);\n\n useEffect(() => {\n onChange({\n target: {\n name,\n value: list,\n },\n });\n }, [list]);\n\n function handleChange(event, indexSelected) {\n let newList = [...list];\n\n const isChecked = event.target.checked;\n const updateCheckbox = { ...list[indexSelected], isChecked: isChecked, isOn: false };\n newList.splice(indexSelected, 1, updateCheckbox);\n\n if (implicitSelect) {\n newList = handleImplicitSelect(implicitSelect, event, newList, \"isChecked\");\n }\n setList(newList);\n }\n\n function handleRadioChange(event, indexSelected) {\n let newList = [...list];\n\n const isChecked = event.target.checked;\n const updateCheckbox = { ...list[indexSelected], isOn: isChecked };\n newList.splice(indexSelected, 1, updateCheckbox);\n\n if (implicitSelect) {\n newList = handleImplicitSelect(implicitSelect, event, newList, \"isOn\");\n }\n\n setList(newList);\n }\n\n return (\n <ul>\n {list.map((checkbox, index) => {\n const text = [checkbox.name];\n\n if (checkbox.description && checkbox.description !== checkbox.name) {\n text.push(checkbox.description);\n }\n\n return (\n <div className=\"cweb-multiselect\" key={checkbox.identifier}>\n <Checkbox\n text={text.join(\" - \")}\n name={checkbox.identifier}\n isChecked={checkbox.isChecked || false}\n onChange={(event) => handleChange(event, index)}\n className=\"cweb-multiselect-checkbox\"\n textType={TEXT_TYPE_OPTIONS.SMALL_DARK}\n error={validationError}\n key={checkbox.identifier}\n />\n\n {radioOnDemand && (\n <div className=\"cweb-switch-wrapper\">\n <p className=\"cweb-switch-title\">{radioLabel}</p>\n <Checkbox\n type=\"switch\"\n name={`${checkbox.identifier}-toggle`}\n isChecked={checkbox.isOn}\n onChange={(event) => handleRadioChange(event, index)}\n textType={TEXT_TYPE_OPTIONS.SMALL_DARK}\n error={validationError}\n className=\"cweb-multiselect-switch\"\n isDisabled={!checkbox.isChecked}\n key={checkbox.identifier}\n />\n </div>\n )}\n </div>\n );\n })}\n </ul>\n );\n}\n\nMultiSelect.propTypes = {\n name: PropTypes.string,\n checkboxList: PropTypes.arrayOf(\n PropTypes.shape({\n isChecked: PropTypes.bool,\n name: PropTypes.string.isRequired,\n description: PropTypes.string,\n identifier: PropTypes.string.isRequired,\n })\n ),\n onChange: PropTypes.func,\n validationError: PropTypes.string,\n implicitSelect: PropTypes.object,\n radioOnDemand: PropTypes.bool,\n};\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nexport interface NavMenuLayoutProps {\n menu: JSX.Element;\n children: JSX.Element | JSX.Element[]; //rendered as the page\n patientSidebar?: JSX.Element; //if passed will show the patients sidebar\n isNavDisabled?: boolean; //don't show any navigation, for instance when constrained to a single patient\n disableScrolling?: boolean;\n}\n\n/**\n *\n * @param props {NavMenuLayoutProps} - explaining specifically the `disableScrolling` prop:\n *\n * The patient overview page has some challenges we want to overcome in regards to the multiple scrollable\n * content (the charts and the action bar with alerts, etc).\n *\n * In order to have the setup working on the patient overview page and the rest of the application, we have to\n * progamatically disable/enable if that location will have a normal scrolling mechanism with specific margin/padding,\n * or we will need to let the components take care of that.\n */\nexport const NavLayout = (props: NavMenuLayoutProps): JSX.Element => {\n return (\n <div className={\"flex flex-col mb-3 lg:mb-0 lg:flex-row h-full w-full\"}>\n {!props.isNavDisabled && (\n <>\n {props.menu}\n {props.patientSidebar && props.patientSidebar}\n </>\n )}\n <div\n data-test-id=\"page-main-content\"\n className={classNames([\"w-full\", { \"max-h-screen overflow-y-auto px-4 lg:px-8\": !props.disableScrolling }])}\n >\n {props.children}\n </div>\n </div>\n );\n};\n","import * as React from \"react\";\nimport { useState } from \"react\";\nimport { navigate } from \"@reach/router\";\nimport classNames from \"classnames\";\n\nimport { TextColor, Text } from \"../Text/Text\";\n\nexport interface NavMenuItemProps {\n href?: string;\n linkTo?: string;\n title: string;\n isSelected: boolean;\n img: string;\n imgOnHover: string;\n dataTestId: string;\n gtmEvent?: string;\n isExternal?: boolean;\n type?: \"separator\" | \"spacer\" | \"base\" | void;\n track?: (event: string) => void;\n}\n\nexport const NavMenuItem = (props: NavMenuItemProps): JSX.Element => {\n const [currentImg, setCurrentImg] = useState(props.isSelected ? props.imgOnHover : props.img);\n const [textColor, setTextColor] = useState<TextColor>(props.isSelected ? \"white\" : \"gray-200\");\n\n const classes = classNames(\n [\n \"flex\",\n \"flex-row\",\n \"items-center\",\n \"w-auto\",\n \"rounded\",\n \"px-2\",\n \"py-1\",\n \"my-2\",\n \"mx-2\",\n \"hover:bg-gray-600\",\n \"transition\",\n \"ease-in\",\n \"duration-150\",\n \"lg:last:pb-2\",\n \"focus:outline-primary\",\n ],\n {\n \"bg-nav-menu\": !props.isSelected,\n \"bg-gray-600\": props.isSelected,\n }\n );\n\n const handleOnMouseOver = () => {\n if (!props.isSelected) {\n setCurrentImg(props.imgOnHover);\n setTextColor(\"white\");\n }\n };\n\n const handleOnMouseOut = () => {\n if (!props.isSelected) {\n setCurrentImg(props.img);\n setTextColor(\"gray-200\");\n }\n };\n\n return (\n <a\n href={props.href ?? props.linkTo ?? \"#\"}\n data-test-id={props.dataTestId}\n className={classes}\n onMouseOver={handleOnMouseOver}\n onMouseOut={handleOnMouseOut}\n onClick={handleMenuClick}\n >\n <img src={currentImg} className={\"mr-4 ml-0\"} />\n <Text type={\"strong\"} text={props.title} color={textColor} />\n </a>\n );\n\n function handleMenuClick(event: React.MouseEvent<HTMLElement>) {\n if (event.metaKey || event.ctrlKey) {\n // if ctrl or meta key are held on click, allow default behavior of opening link in new tab\n return;\n }\n\n event.preventDefault();\n\n props.track && props.gtmEvent && props.track(props.gtmEvent);\n\n if (props.isExternal) {\n window.open(props.href, \"_blank\");\n } else if (props.href) {\n window.location.assign(props.href);\n } else if (props.linkTo) {\n navigate(props.linkTo);\n }\n }\n};\n","import * as React from \"react\";\n\nimport { NavMenuItem, NavMenuItemProps } from \"./NavMenuItem\";\n\ninterface NavMenuContentProps {\n items: Array<NavMenuItemProps>;\n}\n\nexport const NavMenuContent = (props: NavMenuContentProps): JSX.Element => {\n return (\n <div className={\"flex flex-col bg-nav-menu w-46 pl-1 py-2 lg:relative shadow-lg\"}>\n {props.items.map((item, index) => {\n if (item.type === \"separator\") {\n return <div key={`${item.type}-${index}`} className={\"border-b ml-3 border-slate-600\"} />;\n } else if (item.type === \"spacer\") {\n return <div key={`${item.type}-${index}`} className={\"mt-auto\"} />;\n } else {\n return <NavMenuItem {...item} key={item.title} />;\n }\n })}\n </div>\n );\n};\n","import * as React from \"react\";\nimport { useState } from \"react\";\n\nimport Button from \"../Button/Button\";\n\nimport { NavMenuContent } from \"./NavMenuContent\";\n\nexport function NavMenu(props) {\n const [isOpen, setIsOpen] = useState(false);\n\n const handleToggleOpen = () => {\n setIsOpen(!isOpen);\n };\n\n return (\n <>\n <div className={\"hidden h-screen lg:flex\"}>\n <NavMenuContent items={props.items} />\n </div>\n <div className={\"lg:hidden relative bg-nav-header w-screen flex items-center p-2 shadow-lg\"}>\n <Button\n hasIcon={true}\n role=\"secondaryDark\"\n iconName={isOpen ? \"close\" : \"hamburger\"}\n onClick={handleToggleOpen}\n />\n </div>\n {isOpen && (\n <div className=\"absolute z-20\">\n <NavMenuContent items={props.items} />\n </div>\n )}\n </>\n );\n}\n","import classNames from \"classnames\";\nimport React from \"react\";\n\nexport interface TextLinkProps {\n text: string;\n enabled?: boolean;\n href?: string;\n rel?: string;\n target?: string;\n onClick?: () => void;\n className?: string;\n}\n\nexport const TextLink = (props: TextLinkProps): JSX.Element => {\n const className = classNames(\n \"text-sm hover:underline\",\n {\n \"cursor-pointer\": props.enabled,\n \"cursor-default\": !props.enabled,\n },\n {\n \"text-blue-800\": props.enabled,\n \"text-slate-800\": !props.enabled,\n },\n {\n \"hover:text-blue-900\": props.enabled,\n \"hover:text-slate-900\": !props.enabled,\n }\n );\n\n return (\n <a\n href={props.href}\n rel={props.rel}\n target={props.target}\n onClick={props.onClick}\n className={classNames(className, props.className)}\n >\n {props.text}\n </a>\n );\n};\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport { Text } from \"../Text/Text\";\nimport { TextLink } from \"../TextLink/TextLink\";\n\nexport type NotificationBannerColor = \"base\" | \"blue\" | \"red\" | \"green\" | \"amber\";\n\nexport interface NotificationBannerLinkProps {\n text: string;\n enabled: boolean;\n handleClick?: () => void;\n}\n\ninterface NotificationBannerProps {\n text: string;\n color?: NotificationBannerColor;\n icon?: JSX.Element;\n linkProps?: NotificationBannerLinkProps;\n className?: string;\n}\n\nexport const NotificationBanner = (props: NotificationBannerProps): JSX.Element => {\n const classes = classNames(\n \"w-full px-6 py-2 flex flex-row items-center border border-solid rounded\",\n props.className,\n {\n \"bg-slate-100 border-slate-700\": props.color === \"base\",\n \"bg-blue-100 border-blue-700\": props.color === \"blue\",\n \"bg-red-100 border-red-700\": props.color === \"red\",\n \"bg-green-100 border-green-700\": props.color === \"green\",\n \"bg-yellow-100 border-yellow-700\": props.color === \"amber\",\n }\n );\n\n return (\n <div className={classes}>\n {props.icon}\n <Text className=\"first:ml-0 ml-4\" text={props.text} color={props.color} />\n {props.linkProps && (\n <TextLink\n className=\"ml-4\"\n text={props.linkProps.text}\n enabled={props.linkProps.enabled}\n rel=\"noopener\"\n target=\"_blank\"\n onClick={props.linkProps.handleClick}\n />\n )}\n </div>\n );\n};\n\nNotificationBanner.defaultProps = {\n color: \"base\",\n onButtonClick: undefined,\n};\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\n//import Breadcrumbs from \"../Breadcrumbs/Breadcrumbs\";\nimport LoadingIndicator from \"../LoadingIndicator/LoadingIndicator\";\n//import { SmartNavMenu } from \"../../components/NavMenu/SmartNavMenu\";\nimport { NavLayout } from \"../NavMenu/NavLayout\";\nimport { Title } from \"../Title/Title\";\n//import { shouldPageShowFeedbackBlock } from \"../../common/utils/locationUtils\";\n//import { FeedbackBlock } from \"../FeedbackBlock/FeedbackBlock\";\n//import { ERROR_PAGE_ID } from \"../../components/ErrorPages/ErrorPage\";\n\nimport \"./Page.scss\";\n\n//TODO this page needs to be refactored\n\n/**\n * Renders page's content, if `isLoading` is false otherwise shows loading indicator.\n *\n * `breadcrumbs`, `title` and `content` can be lazy properties, that is parameterless functions which return actual value.\n * `children` property has priority over `content` property.\n *\n * @typedef {{ name?: string, icon?: string|Object, link?: string}} Breadcrumb\n *\n */\nfunction Page({\n dataTestId = \"page\",\n breadcrumbs,\n title,\n accessories,\n accessoryPosition = \"right\",\n className,\n children,\n content,\n isLoading = false,\n isPolling = false,\n spinnerColor = \"blue\",\n navLayoutProps = {},\n showFeedbackBlock = false,\n feedbackBlock = <></>,\n navMenu,\n id,\n}) {\n const mergedPageClasses = classNames(\"cweb-page\", className);\n const containerClassnames = classNames(\"cweb-page-container\");\n\n if (isLoading) {\n return (\n <div className={mergedPageClasses}>\n <LoadingIndicator asModal={false} />\n </div>\n );\n }\n\n const maybeTitle = title instanceof Function ? title() : title;\n\n const accessoryClasses = classNames(\"cweb-page-header mb-4\", {\n [`accessory-${accessoryPosition}`]: true,\n });\n\n const accessoriesContent = accessories instanceof Function ? accessories() : accessories;\n const childrenOrContentProp = children || (content instanceof Function ? content() : content);\n\n return (\n <div id={id} className={containerClassnames}>\n <NavLayout menu={navMenu} {...navLayoutProps}>\n <div className={mergedPageClasses} data-test-id={dataTestId}>\n <div className={accessoryClasses}>\n <Title data-test-id={`${dataTestId}-title`} text={maybeTitle} />\n {isPolling && <LoadingIndicator asSpinner={true} className={\"page-spinner\"} spinnerColor={spinnerColor} />}\n {accessoriesContent}\n </div>\n {childrenOrContentProp}\n </div>\n\n {!isLoading && feedbackBlock}\n </NavLayout>\n </div>\n );\n}\n\nconst breadcrumbItemShape = PropTypes.shape({\n name: PropTypes.string,\n icon: PropTypes.string,\n link: PropTypes.string,\n});\n\nPage.propTypes = {\n breadcrumbs: PropTypes.oneOfType([PropTypes.arrayOf(breadcrumbItemShape), PropTypes.func]),\n isLoading: PropTypes.bool,\n isFetching: PropTypes.bool,\n spinnerColor: PropTypes.oneOf([\"blue\", \"gray\"]),\n title: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),\n accessories: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n accessoryPosition: PropTypes.oneOf([\"right\", \"bottom\", \"left\"]),\n content: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.element), PropTypes.element, PropTypes.func]),\n id: PropTypes.string,\n navLayoutProps: PropTypes.object,\n};\n\nexport default Page;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport \"./Title.scss\";\n\nconst TITLE_TYPE_OPTIONS = {\n DEFAULT: \"default\",\n BIG: \"big\",\n SMALL: \"small\",\n TINY: \"tiny\",\n BOLD: \"bold\",\n};\n\nLegacyTitle.propTypes = {\n text: PropTypes.string.isRequired,\n type: PropTypes.oneOf([\n TITLE_TYPE_OPTIONS.DEFAULT,\n TITLE_TYPE_OPTIONS.BIG,\n TITLE_TYPE_OPTIONS.SMALL,\n TITLE_TYPE_OPTIONS.TINY,\n TITLE_TYPE_OPTIONS.BOLD,\n ]),\n className: PropTypes.string,\n};\n\nfunction LegacyTitle({ text, type, className = \"\", ...otherProps }) {\n let ContainerElement;\n\n const containerClassName = classNames(\"cweb-title\", className, {\n \"type-default\": !type || type === TITLE_TYPE_OPTIONS.DEFAULT,\n \"type-big\": type === TITLE_TYPE_OPTIONS.BIG,\n \"type-small\": type === TITLE_TYPE_OPTIONS.SMALL,\n \"type-tiny\": type === TITLE_TYPE_OPTIONS.TINY,\n \"type-bold\": type === TITLE_TYPE_OPTIONS.BOLD,\n });\n\n switch (type) {\n case TITLE_TYPE_OPTIONS.DEFAULT:\n case TITLE_TYPE_OPTIONS.BOLD:\n case TITLE_TYPE_OPTIONS.BIG:\n ContainerElement = \"h1\";\n break;\n\n case TITLE_TYPE_OPTIONS.SMALL:\n case TITLE_TYPE_OPTIONS.TINY:\n ContainerElement = \"h3\";\n break;\n\n default:\n ContainerElement = \"h1\";\n break;\n }\n\n return (\n <ContainerElement {...otherProps} className={containerClassName}>\n {text}\n </ContainerElement>\n );\n}\n\nexport default LegacyTitle;\n\nexport { TITLE_TYPE_OPTIONS };\n","import React from \"react\";\n\nimport { Text } from \"../Text/Text\";\n\nexport interface StepProps {\n title: string;\n stepNumber: number;\n active: boolean;\n localization: {step: string};\n}\n\nexport const Step = ({ title, stepNumber, active, localization }: StepProps): JSX.Element => {\n const barColor = active ? \"bg-blue-800\" : \"bg-slate-200\";\n\n return (\n <div className={\"w-full\"}>\n <div className={`w-full h-1 mb-2 rounded ${barColor}`}></div>\n <Text text={`${localization.step} ${stepNumber}`} type={\"strong\"} color={active ? \"blue\" : \"gray-500\"} />\n <Text text={title} type={\"strong\"} />\n </div>\n );\n};\n","import React from \"react\";\n\nimport { Step } from \"./Step\";\n\ninterface StepsProps {\n orderedStepTitles: Array<string>;\n currentStep: number; //start count from 1\n className?: string;\n localization: {step: string};\n}\n\nexport const Steps = ({ orderedStepTitles, currentStep, className, localization }: StepsProps): JSX.Element => {\n const renderedSteps = orderedStepTitles.map((stepTitle, index) => (\n <Step\n key={`step-${index}-${stepTitle.split(\" \")[0]}`}\n title={stepTitle}\n stepNumber={index + 1}\n active={index + 1 <= currentStep}\n localization={localization}\n />\n ));\n\n return <div className={`flex flex-row justify-items-stretch space-x-6 ${className}`}>{renderedSteps}</div>;\n};\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport LoadingIndicator from \"../LoadingIndicator/LoadingIndicator\";\nimport LegacyTitle, { TITLE_TYPE_OPTIONS } from \"../Title/LegacyTitle\";\nimport Button, { BUTTON_ROLES } from \"../Button/Button\";\nimport Line from \"../Line/Line\";\nimport { NavLayout } from \"../NavMenu/NavLayout\";\nimport { Steps } from \"../Steps/Steps\";\n\nimport \"./CRUDPage.scss\";\n\nfunction CRUDPage({\n dataTestId = \"page\",\n title,\n stepTitles,\n currentStep = 1,\n submitButtonProps,\n deleteButtonProps,\n cancelButtonProps,\n icon,\n className,\n children,\n isLoading,\n isSubmitting,\n navMenuComponent,\n localization,\n}) {\n const mergedClasses = classNames(\"cweb-crud-page max-w-3xl\", className);\n const containerClassnames = classNames(\"cweb-crud-page-container mb-20\");\n\n const submitButton = submitButtonProps && (\n <Button\n data-test-id=\"submit-button\"\n key=\"submit-button\"\n /* eslint-disable-next-line */\n onClick={submitButtonProps.handler}\n role={BUTTON_ROLES.PRIMARY}\n text={submitButtonProps.name}\n isPending={isSubmitting}\n />\n );\n const deleteButton = deleteButtonProps && (\n <Button\n data-test-id=\"delete-button\"\n key=\"delete-button\"\n /* eslint-disable-next-line */\n onClick={deleteButtonProps.handler}\n role={BUTTON_ROLES.NEGATIVE}\n text={deleteButtonProps.name}\n />\n );\n const cancelButton = cancelButtonProps && (\n <Button\n data-test-id=\"cancel-button\"\n key=\"cancel-button\"\n /* eslint-disable-next-line */\n onClick={cancelButtonProps.handler}\n role={BUTTON_ROLES.SECONDARY}\n text={cancelButtonProps.name}\n />\n );\n\n const renderHeader = () => {\n return (\n <div className=\"flex flex-row justify-start align-center\">\n <img id=\"title-icon\" src={icon} className=\"mr-4 w-11 h-11\" alt={\"title icon\"} />\n <LegacyTitle id=\"title-text\" text={title} type={TITLE_TYPE_OPTIONS.BOLD} />\n </div>\n );\n };\n\n return (\n <div className={containerClassnames}>\n <NavLayout menu={navMenuComponent}>\n <>\n {isLoading && (\n <div className={classNames(mergedClasses, \"cweb-crud-page-loading-container\")}>\n <div className=\"flex flex-row justify-start align-center\">{renderHeader()}</div>\n <LoadingIndicator className=\"crud-page-loader\" asModal={false} />\n </div>\n )}\n\n {!isLoading && (\n <div className={mergedClasses} data-test-id={dataTestId}>\n <div className=\"flex flex-row justify-start align-center\">{renderHeader()}</div>\n\n <div className={\"cweb-crud-page-form-container\"}>\n {stepTitles && stepTitles.length > 0 && (\n <Steps orderedStepTitles={stepTitles} currentStep={currentStep} className={\"mb-4\"} localization={localization}/>\n )}\n {children}\n <Line\n left={[cancelButton, deleteButton]}\n right={[submitButton]}\n className={\"cweb-crud-page-button-line\"}\n />\n </div>\n </div>\n )}\n </>\n </NavLayout>\n </div>\n );\n}\n\nCRUDPage.propTypes = {\n isLoading: PropTypes.bool,\n title: PropTypes.string.isRequired,\n stepTitles: PropTypes.array,\n currentStep: PropTypes.number,\n submitButtonProps: PropTypes.shape({ name: PropTypes.string, handler: PropTypes.func }),\n deleteButtonProps: PropTypes.shape({ name: PropTypes.string, handler: PropTypes.func }),\n cancelButtonProps: PropTypes.shape({ name: PropTypes.string, handler: PropTypes.func }),\n className: PropTypes.string,\n icon: PropTypes.string,\n isSubmitting: PropTypes.bool,\n navMenuComponent: PropTypes.elementType,\n localization: PropTypes.object,\n};\n\nexport default CRUDPage;\n","import { useState, useEffect } from \"react\";\nimport debounce from \"lodash.debounce\";\n\nexport const useWindowDimensions = () => {\n const [height, setHeight] = useState(window.innerHeight);\n const [width, setWidth] = useState(window.innerWidth);\n\n useEffect(() => {\n const handleResize = debounce(() => {\n if (height !== window.innerHeight) {\n setHeight(window.innerHeight);\n }\n if (width !== window.innerWidth) {\n setWidth(window.innerWidth);\n }\n }, 500);\n\n window.addEventListener(\"resize\", handleResize);\n\n return () => {\n window.removeEventListener(\"resize\", handleResize);\n };\n }, []);\n\n return { height, width };\n};\n","import React, { useCallback, useEffect, useState } from \"react\";\nimport classNames from \"classnames\";\n\nimport phoneMockup from \"../../assets/phone-mockup.svg\";\n\nimport { useWindowDimensions } from \"./useWindowDimensions\";\n\ninterface PreviewPhoneProps {\n className?: string;\n children: React.ReactNode;\n}\n\nconst PreviewPhone = ({ className, children }: PreviewPhoneProps): JSX.Element => {\n const phoneHeight = 637;\n const phoneWidth = 340;\n const [scale, setScale] = useState(1);\n const [showPhone, setShowPhone] = useState(false);\n const { height: windowHeight, width: windowWidth } = useWindowDimensions();\n\n useEffect(() => {\n // hack to offset rendering the phone after the first render\n // this way the scale calculation works without fixed width\n setShowPhone(true);\n }, []);\n\n const containerCallbak = useCallback(\n (containerElement) => {\n if (!containerElement) {\n return;\n }\n const { clientWidth: containerWidth, clientHeight: containerHeight } = containerElement;\n const heightScale = containerHeight < phoneHeight ? containerHeight / phoneHeight : 1;\n const widthScale = containerWidth < phoneWidth ? containerWidth / phoneWidth : 1;\n setScale(heightScale < widthScale ? heightScale : widthScale);\n },\n [windowHeight, windowWidth]\n );\n\n return (\n showPhone ? (\n <div ref={containerCallbak} className={classNames(\"relative h-full flex items-center justify-center\", className)}>\n <div className={\"absolute\"} style={{ width: phoneWidth, height: phoneHeight, transform: `scale(${scale})` }}>\n <div className={\"h-full px-5 pt-11 pb-20\"}>\n <div className={\"h-full overflow-y-auto bg-white\"}>{children}</div>\n </div>\n <img className=\"absolute top-0 pointer-events-none\" src={phoneMockup} alt=\"phone mockup\" />\n </div>\n </div>) : <></>\n );\n};\n\nexport default PreviewPhone;\n","import React, { PureComponent } from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport \"./Radio.scss\";\nimport { Text } from \"../Text/Text\";\n\nclass Radio extends PureComponent {\n static propTypes = {\n className: PropTypes.string,\n text: PropTypes.string,\n isChecked: PropTypes.bool.isRequired,\n isDisabled: PropTypes.bool,\n name: PropTypes.string.isRequired,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n onChange: PropTypes.func,\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n isFocused: false,\n };\n }\n\n handleChange = (event) => {\n const { onChange } = this.props;\n\n if (onChange) {\n onChange(event);\n }\n };\n\n handleFocus = () => {\n this.setState({\n isFocused: true,\n });\n };\n\n handleBlur = () => {\n this.setState({\n isFocused: false,\n });\n };\n\n render() {\n const { className, isChecked, isDisabled, name, value, text } = this.props;\n\n const { isFocused } = this.state;\n\n const containerClassName = classNames(\"cweb-radio mr-4\", className, {\n \"is-focused\": isFocused,\n \"is-checked\": isChecked,\n \"opacity-50\": isDisabled,\n });\n\n return (\n <div className={containerClassName} ref={this.containerRef}>\n <label className=\"cweb-radio-label\">\n <input\n className=\"cweb-radio-input\"\n name={name}\n type=\"radio\"\n checked={isChecked}\n disabled={isDisabled}\n value={value}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onChange={this.handleChange}\n />\n\n <span\n className={classNames(\"cweb-radio-icon-container\", {\n \"bg-primary\": isChecked,\n \"hover:bg-primary-dark\": isChecked,\n \"outline-primary\": isFocused,\n \"cursor-not-allowed\": isDisabled,\n \"cursor-pointer\": !isDisabled,\n })}\n >\n <span className=\"cweb-radio-icon\" />\n </span>\n\n {text && (\n <Text\n className={classNames(\"cweb-radio-label-text\", {\n \"cursor-not-allowed\": isDisabled,\n })}\n text={text}\n />\n )}\n </label>\n </div>\n );\n }\n}\n\nexport default Radio;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport Radio from \"../Radio/Radio\";\n\nimport \"./RadioGroup.scss\";\n\nfunction RadioGroup({\n className,\n radioClassName,\n name,\n selectedOption,\n isVertical,\n radioOptions,\n onChange,\n error,\n isDisabled,\n ...otherOptions\n}) {\n const containerClassName = classNames(\"cweb-radio-group\", { vertical: isVertical }, { hasError: error }, className);\n\n function handleChange(event) {\n if (!isDisabled && onChange) {\n onChange(event);\n }\n }\n\n return (\n <div className={containerClassName} {...otherOptions}>\n {radioOptions.map((option) => (\n <Radio\n {...option}\n key={option.value}\n className={radioClassName}\n name={name}\n isChecked={selectedOption === option.value}\n onChange={handleChange}\n isDisabled={isDisabled}\n />\n ))}\n </div>\n );\n}\n\nRadioGroup.propTypes = {\n className: PropTypes.string,\n radioClassName: PropTypes.string,\n name: PropTypes.string,\n selectedOption: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n isVertical: PropTypes.bool,\n radioOptions: PropTypes.arrayOf(\n PropTypes.shape({\n text: PropTypes.string,\n info: PropTypes.string,\n isDisabled: PropTypes.bool,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n })\n ).isRequired,\n onChange: PropTypes.func,\n};\n\nexport default RadioGroup;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport { ButtonProps } from \"../Button/Button.types\";\nimport Button from \"../Button/Button\";\nimport { Title } from \"../Title/Title\";\nimport { LoadingIndicator, LoadingIndicatorProps } from \"../LoadingIndicator/LoadingIndicator\";\nimport { RestPropped } from \"../../types/general.types\";\n\nimport \"./Section.scss\";\n\nexport interface SectionProps extends RestPropped {\n title?: string;\n buttons?: ButtonProps[];\n className?: string;\n isLoading?: boolean;\n loadingIndicatorProps?: LoadingIndicatorProps;\n}\n\nexport function Section({\n title,\n buttons,\n children,\n className,\n isLoading = false,\n loadingIndicatorProps,\n ...restProps\n}: React.PropsWithChildren<SectionProps>): JSX.Element {\n return (\n <div\n {...restProps}\n className={classNames(\n \"cweb-section\",\n \"flex justify-start flex-col items-start\",\n \"rounded-lg\",\n \"mx-0 my-4\",\n \"bg-white\",\n \"w-full\",\n className\n )}\n >\n {(title || buttons) && (\n <div className=\"cweb-section-header\" data-test-id=\"section-header\">\n {title && (\n <div className=\"flex flex-row items-center\">\n <Title text={title} className=\"mr-3 cweb-section-title\" type=\"sm\" />\n {isLoading && <LoadingIndicator asSpinner={true} {...loadingIndicatorProps} />}\n </div>\n )}\n <div className={classNames(\"cweb-section-header-buttons-container\", \"flex flex-row space-x-3\")}>\n {buttons &&\n buttons.length > 0 &&\n buttons.map((button) => <Button {...button} key={button.key || button.id || button.text} />)}\n </div>\n </div>\n )}\n\n <div className=\"cweb-section-content w-full\">{!isLoading && children}</div>\n </div>\n );\n}\n\nexport default Section;\n","import { useEffect } from \"react\";\n\nconst useOutsideClick = (ref, callback) => {\n const handleClick = (e) => {\n if (ref.current && !ref.current.contains(e.target)) {\n callback();\n }\n };\n\n useEffect(() => {\n document.addEventListener(\"click\", handleClick);\n\n return () => {\n document.removeEventListener(\"click\", handleClick);\n };\n });\n};\n\nexport default useOutsideClick;\n","import classNames from \"classnames\";\nimport React, { useEffect, useRef, useState } from \"react\";\n\nimport useOutsideClick from \"../../utils/useOutsideClick\";\nimport Button from \"../Button/Button\";\nimport Checkbox from \"../Checkbox/Checkbox\";\nimport { IconProps } from \"../Icons/types/IconProps.type\";\nimport Text from \"../Text/Text\";\n\nexport interface ConfigurationItem {\n itemId: string;\n itemName: string;\n on: boolean;\n}\n\nexport interface SettingsMenuButtonProps {\n configuration: ConfigurationItem[];\n onConfigurationChange: (newConfig: ConfigurationItem) => void;\n shiftMenuTo?: \"right\" | \"right-md\" | \"left\" | \"left-md\";\n buttonTitle?: string;\n menuTitle?: string;\n iconComponent: React.FunctionComponent<IconProps>;\n}\n\nexport const SettingsMenuButton = (props: SettingsMenuButtonProps): JSX.Element => {\n const {\n configuration: configFromProps = [],\n onConfigurationChange,\n shiftMenuTo,\n buttonTitle,\n iconComponent,\n menuTitle,\n } = props;\n const [innerConfiguration, setInnerConfiguration] = useState(configFromProps);\n const [showMenu, setShowMenu] = useState(false);\n\n const menuRef = useRef<HTMLDivElement | null>(null);\n\n useOutsideClick(menuRef, () => {\n if (showMenu) {\n setShowMenu(false);\n }\n });\n\n useEffect(() => {\n setInnerConfiguration(configFromProps);\n }, [configFromProps]);\n\n const handleShowMenu = () => {\n setShowMenu(true);\n };\n\n const handleOnVibilitySwitchChanged = (event: React.ChangeEvent<HTMLInputElement>) => {\n const { id, name, checked } = event.currentTarget;\n\n const newConfig = innerConfiguration.find((config) => config.itemId === id && config.itemName === name) as ConfigurationItem;\n\n onConfigurationChange({ ...newConfig, on: checked });\n };\n\n if (!iconComponent) {\n console.error(\"A an icon component is required to use this component, please make sure to pass it as a prop. \");\n return <span>Invalid props passed to this component.</span>;\n }\n\n return (\n <div onClick={handleShowMenu} className=\"relative\">\n <Button dynamicIcon={iconComponent} onClick={handleShowMenu} text={buttonTitle} role=\"tertiary\" />\n\n <div\n ref={menuRef}\n className={classNames(\n \"cursor-default transition-all transform duration-300\",\n \"absolute -top-1 z-30\",\n \"rounded w-80 max-h-78 overflow-y-auto\",\n \"bg-white shadow-md\",\n \"border border-slate-300\",\n {\n \"-left-54\": shiftMenuTo === \"left\",\n \"-right-54\": shiftMenuTo === \"right\",\n \"-left-68\": shiftMenuTo === \"left-md\",\n \"-right-68\": shiftMenuTo === \"right-md\",\n \"transform -translate-x-1/2 left-1/2\": !shiftMenuTo, // centering the menu in the Y axis of the button\n },\n {\n \"opacity-0 pointer-events-none\": !showMenu,\n \"opacity-100\": showMenu,\n }\n )}\n >\n {menuTitle && (\n <div className=\"w-full p-3 h-11 bg-slate-50\">\n <Text type=\"sm\" className=\"uppercase\" text={menuTitle} />\n </div>\n )}\n {innerConfiguration.map((innerConfig) => (\n <div key={innerConfig.itemId} className=\"flex items-center justify-between w-full p-3 h-11\">\n <Text text={innerConfig.itemName} />\n <Checkbox\n name={innerConfig.itemName}\n id={innerConfig.itemId}\n type=\"switch\"\n isChecked={innerConfig.on}\n onChange={handleOnVibilitySwitchChanged}\n />\n </div>\n ))}\n </div>\n </div>\n );\n};\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport \"./SwitcherItem.scss\";\nimport { Text } from \"../Text/Text\";\n\nSwitcherItem.propTypes = {\n name: PropTypes.string,\n icon: PropTypes.shape({\n default: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n active: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n showBadge: PropTypes.bool,\n }),\n index: PropTypes.number.isRequired,\n isSelected: PropTypes.bool,\n onSelect: PropTypes.func.isRequired,\n className: PropTypes.string,\n};\n\nfunction SwitcherItem({ className, icon, index, isSelected = false, name, onSelect }) {\n const handleItemClick = () => onSelect(index);\n const itemClassName = classNames(\n \"\",\n className,\n \"flex flex-row h-11 p-2 items-center border-solid border-t border-b border-l border-slate-200 transition duration-300 cursor-pointer \",\n \"first:rounded-l-xl last:rounded-r-xl last:border-r\",\n {\n \"bg-slate-100 text-slate-500\": isSelected,\n \"bg-slate-50 hover:bg-slate-100 hover:text-slate-500 text-slate-300\": !isSelected,\n }\n );\n\n let calculatedIcon;\n if (icon && typeof icon.default === \"string\") {\n calculatedIcon = isSelected ? (\n <img alt=\"\" className=\"\" src={icon.active} />\n ) : (\n <img alt=\"\" className=\"\" src={icon.default} />\n );\n } else if (icon) {\n calculatedIcon = isSelected ? icon.active : icon.default;\n }\n\n return (\n <li className={itemClassName} onClick={handleItemClick}>\n {\n <span className=\"relative block\">\n {icon?.showBadge && (\n <div className={\"absolute top-0 right-0 w-2.5 h-2.5 bg-red-400 rounded-xl border-slate-50 border-2 \"} />\n )}\n {calculatedIcon}\n </span>\n }\n\n {name && <Text text={name} color={isSelected ? \"base\" : \"gray-500\"} />}\n </li>\n );\n}\n\nexport default SwitcherItem;\n","import React, { useEffect, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport SwitcherItem from \"./SwitcherItem\";\n\nfunction Switcher({ selectedIndex = -1, onChange, className, itemClassName, items }) {\n const [currentSelection, setCurrentSelection] = useState(selectedIndex);\n\n useEffect(() => {\n setCurrentSelection(selectedIndex);\n }, [selectedIndex]);\n\n const handleItemSelect = (index) => {\n onChange(index);\n };\n\n return (\n <ul\n className={classNames(\"cweb-switcher\", className, \"flex list-none p-0 m-0\")}\n data-test-id={\"switcher-container\"}\n >\n {items.map((item, index) => {\n return (\n <SwitcherItem\n key={JSON.stringify(item)}\n name={item.name}\n icon={item.icon}\n index={index}\n isSelected={currentSelection === index}\n onSelect={handleItemSelect}\n className={itemClassName}\n />\n );\n })}\n </ul>\n );\n}\n\nSwitcher.propTypes = {\n items: PropTypes.arrayOf(\n PropTypes.shape({\n name: PropTypes.string,\n icon: PropTypes.shape({\n default: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n active: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n showBadge: PropTypes.bool,\n }),\n key: PropTypes.string,\n })\n ).isRequired,\n onChange: PropTypes.func.isRequired,\n selectedIndex: PropTypes.number,\n className: PropTypes.string,\n itemClassName: PropTypes.string,\n};\n\nexport default Switcher;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport { Text } from \"../Text/Text\";\nimport Badge from \"../Badge/Badge\";\nimport LoadingIndicator from \"../LoadingIndicator/LoadingIndicator\";\n\nexport interface TabItemDetails {\n title: string | JSX.Element;\n badgeCount?: number;\n isLoading?: boolean;\n dataTestId?: string;\n}\n\ninterface TabbarItemProps extends TabItemDetails {\n index: number;\n isSelected?: boolean;\n onSelect?: (index: number) => void;\n className?: string;\n}\n\nconst TabbarItem = ({\n title,\n index,\n isSelected,\n onSelect,\n className,\n badgeCount = 0,\n isLoading = false,\n dataTestId = \"\",\n}: TabbarItemProps): JSX.Element => {\n const handleTabClick = () => onSelect && onSelect(index);\n\n const itemClassName = classNames(\n \"flex first:ml-0 ml-2 flex-row cursor-pointer py-2 px-3 rounded-lg focus:outline-primary transition ease-in duration-150\",\n className,\n {\n \"bg-slate-100 text-slate-700 hover:text-slate-700 focus:text-slate-700\": isSelected,\n \"bg-slate-50 text-slate-500 hover:bg-slate-100 hover:text-slate-500 focus:text-slate-500 opacity-75\": !isSelected,\n }\n );\n\n return (\n <div className={itemClassName} onClick={handleTabClick} data-test-id={dataTestId}>\n {typeof title === \"string\" && <Text text={title} type={isSelected ? \"strong\" : \"base\"} inline />}\n {typeof title !== \"string\" && title}\n {badgeCount > 0 && <Badge className=\"ml-1\" badgeCount={badgeCount} />}\n {isLoading && <LoadingIndicator asSpinner={true} spinnerColor={\"gray\"} className={\"w-6\"} />}\n </div>\n );\n};\n\nexport default TabbarItem;\n","import React from \"react\";\n\nimport TabbarItem, { TabItemDetails } from \"./TabbarItem\";\n\ninterface TabbarProps {\n tabs?: TabItemDetails[];\n selectedIndex?: number;\n onSelect?: (index: number) => void;\n className?: string;\n}\n\nexport const Tabbar = ({ tabs, selectedIndex, onSelect, className = \"\" }: TabbarProps): JSX.Element => {\n return (\n <div className={`flex flex-row w-full bg-white rounded-xl ${className}`}>\n {tabs?.map((tabItemProps, index) => {\n const itemProps = {\n index,\n onSelect,\n isSelected: selectedIndex === index,\n ...tabItemProps,\n };\n\n return <TabbarItem key={tabItemProps.dataTestId ?? index} {...itemProps} />;\n })}\n </div>\n );\n};\n\nexport default Tabbar;\n","import React from \"react\";\nimport {Link, LinkGetProps, NavigateFn, WindowLocation} from \"@reach/router\";\n\nimport Select from \"../Select/Select\";\n\ninterface TabLinkItem {\n url: URL;\n text: string;\n}\n\ninterface TabLinksProps {\n patientUuid: string;\n items: Array<TabLinkItem>;\n navigate: NavigateFn;\n location: WindowLocation;\n}\n\nconst TabLinksSelect = ({ items, navigate, location }: { items: Array<TabLinkItem>, navigate: NavigateFn, location: WindowLocation }): JSX.Element => {\n const options = items.map(({ url, text }) => ({ value: url, label: text }));\n\n const handleChange = (selected: any) => {\n navigate(selected?.value?.href);\n };\n\n return (\n <Select\n value={options.filter(({ value }) => location?.href === value?.href)}\n options={options}\n onChange={handleChange}\n />\n );\n};\n\nconst TabLinks = ({ patientUuid, items, navigate, location }: TabLinksProps): JSX.Element => {\n const linkProps = ({ isCurrent }: LinkGetProps) => {\n return isCurrent\n ? {\n className:\n \"mr-2 bg-slate-100 is-selected py-3 px-4 rounded-lg text-sm font-semibold transition ease-in duration-150 text-slate-700 hover:text-slate-700 focus:text-slate-700 focus:outline-primary\",\n }\n : {\n className:\n \"mr-2 text-slate-500 py-3 px-4 text-sm hover:bg-slate-100 hover:text-slate-500 focus:text-slate-500 rounded-lg transition ease-in duration-150 focus:outline-primary\",\n };\n };\n\n return (\n <>\n <div className={\"w-full block xl:hidden bg-white p-2\"}>\n <TabLinksSelect items={items} navigate={navigate} location={location}/>\n </div>\n <div className={\"w-full hidden xl:flex bg-white p-2 rounded-xl\"}>\n {items.map(({ text, url }) => (\n <Link key={`${patientUuid}_${text}`} to={url.pathname} getProps={linkProps}>\n {text}\n </Link>\n ))}\n </div>\n </>\n );\n};\n\nexport default TabLinks;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport Tag, { TagProps } from \"./Tag\";\n\nexport enum TagSize {\n \"small\" = \"small\",\n \"base\" = \"base\",\n}\n\ninterface TagGroupProps {\n tags: TagProps[];\n tagSize?: TagSize;\n className?: string;\n}\n\nconst TagGroup = ({ tags, tagSize = TagSize.base, className }: TagGroupProps): JSX.Element => (\n <div className={classNames(\"flex flex-row flex-wrap\", className)}>\n {tags.map((tag) => (\n <Tag size={tagSize} {...tag} className={classNames(\"mr-2 last:mr-0 mb-2\")} />\n ))}\n </div>\n);\n\nexport default TagGroup;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport { Text } from \"../Text/Text\";\n\nimport { TagSize } from \"./TagGroup\";\n\nexport enum TagColorTheme {\n Red = \"red\",\n Amber = \"amber\",\n Green = \"green\",\n Gray = \"gray\",\n Blue = \"blue\",\n}\n\nexport interface TagProps {\n text: string;\n colorTheme?: TagColorTheme;\n size?: TagSize;\n className?: string;\n}\n\nconst Tag = ({ text, colorTheme = TagColorTheme.Gray, className, size = TagSize.base }: TagProps): JSX.Element => {\n const containerClassName = classNames(\"inline py-1 px-2 rounded-lg\", className, {\n \"bg-red-100 text-red-700\": colorTheme === TagColorTheme.Red,\n \"bg-orange-100 text-amber-700\": colorTheme === TagColorTheme.Amber,\n \"bg-green-100 text-green-800\": colorTheme === TagColorTheme.Green,\n \"bg-slate-100 text-slate-600\": colorTheme === TagColorTheme.Gray,\n \"bg-blue-50 text-blue-800\": colorTheme === TagColorTheme.Blue,\n });\n\n return (\n <div className={containerClassName}>\n <Text inline color={\"inherit\"} text={text} type={size === TagSize.small ? \"sm\" : \"base\"} />\n </div>\n );\n};\n\nexport default Tag;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport \"./Textarea.scss\";\n\nconst RESIZE_TYPES = {\n NONE: \"none\",\n BOTH: \"both\",\n HORIZONTAL: \"horizontal\",\n VERTICAL: \"vertical\",\n};\n\nTextarea.propTypes = {\n className: PropTypes.string,\n value: PropTypes.string,\n name: PropTypes.string.isRequired,\n placeholder: PropTypes.string,\n maxLength: PropTypes.number,\n rows: PropTypes.number,\n resizable: PropTypes.oneOf([RESIZE_TYPES.BOTH, RESIZE_TYPES.HORIZONTAL, RESIZE_TYPES.VERTICAL, RESIZE_TYPES.NONE]),\n isDisabled: PropTypes.bool,\n icon: PropTypes.string,\n onChange: PropTypes.func.isRequired,\n onBlur: PropTypes.func,\n onFocus: PropTypes.func,\n onKeyPress: PropTypes.func,\n onKeyDown: PropTypes.func,\n onCtrlEnter: PropTypes.func,\n};\n\nfunction Textarea(props) {\n const {\n className,\n value,\n name,\n placeholder,\n maxLength,\n rows = 4,\n resizable = RESIZE_TYPES.VERTICAL,\n isDisabled = false,\n icon,\n onChange,\n onBlur,\n onFocus,\n onKeyPress,\n onKeyDown,\n onCtrlEnter,\n ...otherProps\n } = props;\n\n let style;\n\n if (icon) {\n style = {\n backgroundImage: `url(${icon})`,\n };\n }\n\n return (\n <textarea\n {...otherProps}\n name={name}\n value={value}\n placeholder={placeholder}\n onChange={onChange}\n onBlur={onBlur}\n onFocus={onFocus}\n onKeyPress={onKeyPress}\n onKeyDown={(event) => {\n onKeyDown?.();\n const { ctrlKey, metaKey, key } = event;\n\n if ((ctrlKey || metaKey) && key === \"Enter\") {\n onCtrlEnter?.();\n }\n }}\n maxLength={maxLength}\n rows={rows}\n disabled={isDisabled}\n className={classNames(\n \"cweb-textarea\",\n className,\n \"p-2\",\n \"border\",\n \"placeholder-gray-500\",\n \"text-sm\",\n \"border-solid\",\n \"border-input-border\",\n \"hover:border-input-border-dark\",\n \"focus:outline-primary\",\n \"transition-colors\",\n \"duration-300\",\n \"w-full\",\n \"focus:border-primary\",\n {\n \"has-icon\": !!icon,\n resizable: resizable === RESIZE_TYPES.BOTH,\n \"resizable-x\": resizable === RESIZE_TYPES.HORIZONTAL,\n \"resizable-y\": resizable === RESIZE_TYPES.VERTICAL,\n }\n )}\n style={style}\n />\n );\n}\n\nexport default Textarea;\n","import React, { useEffect, useMemo, useRef } from \"react\";\nimport PropTypes from \"prop-types\";\nimport ReactQuill from \"react-quill\";\n\nimport \"react-quill/dist/quill.snow.css\";\nimport \"./TextEditor.scss\";\n\nexport default function TextEditor({ defaultValue, onValueChange, placeholder }) {\n const formats = [\"bold\", \"italic\", \"underline\", \"strike\", \"list\", \"bullet\", \"link\"];\n const toolbarLastGroup = [\"link\", \"video\"];\n const quillRef = useRef();\n\n\n useEffect(() => {\n if (quillRef.current) {\n const quillInstance = quillRef.current;\n const tooltipSave = quillInstance.editor.theme.tooltip.save;\n\n quillInstance.editor.theme.tooltip.save = function () {\n // overwrite save link functionality\n let url = this.textbox.value;\n\n if (url.indexOf(\"http\") === -1 || url.indexOf(\"https\") === -1) {\n url = `https://${url}`;\n this.textbox.value = url;\n }\n tooltipSave.call(this);\n };\n }\n }, []);\n\n const modules = useMemo(() => {\n return {\n toolbar: {\n container: [\n [\"bold\", \"italic\", \"underline\", \"strike\"],\n [{ list: \"ordered\" }, { list: \"bullet\" }],\n toolbarLastGroup,\n ],\n },\n };\n }, []);\n\n return (\n <ReactQuill\n ref={quillRef}\n theme=\"snow\"\n modules={modules}\n placeholder={placeholder}\n formats={formats}\n value={defaultValue}\n onChange={onValueChange}\n />\n );\n}\n\nTextEditor.propTypes = {\n defaultValue: PropTypes.string,\n placeholder: PropTypes.string,\n onValueChange: PropTypes.func.isRequired,\n};\n","import React, { useEffect, useState } from \"react\";\nimport { EditorState, convertToRaw, ContentState } from \"draft-js\";\nimport { Editor } from \"react-draft-wysiwyg\";\nimport draftToHtml from \"draftjs-to-html\";\nimport htmlToDraft from \"html-to-draftjs\";\n\nimport \"react-draft-wysiwyg/dist/react-draft-wysiwyg.css\";\nimport \"./TextEditorV2.scss\";\n\nexport const TextEditorV2 = ({ defaultValue, onValueChange, locale }) => {\n const [editorState, setEditorState] = useState(EditorState.createEmpty());\n\n useEffect(() => {\n const { contentBlocks, entityMap } = htmlToDraft(defaultValue);\n setEditorState(EditorState.createWithContent(ContentState.createFromBlockArray(contentBlocks, entityMap)));\n }, []);\n\n const onEditorStateChange = (state) => {\n setEditorState(state);\n onValueChange(draftToHtml(convertToRaw(state.getCurrentContent())));\n };\n\n return (\n <div className=\"editor\">\n <Editor\n toolbar={{\n options: [\"inline\", \"list\", \"link\", \"textAlign\", \"history\"],\n inline: {\n options: [\"bold\", \"italic\", \"underline\"],\n },\n list: {\n options: [\"unordered\", \"ordered\"],\n },\n link: {\n showOpenOptionOnHover: false,\n defaultTargetOption: \"_blank\",\n },\n }}\n editorState={editorState}\n onEditorStateChange={onEditorStateChange}\n wrapperClassName=\"mb-6\"\n toolbarClassName=\"border border-solid border-color-border-primary\"\n editorClassName=\"border border-solid border-color-border-primary h-56\"\n localization={{\n locale: locale,\n }}\n />\n </div>\n );\n};\n\nexport default TextEditorV2;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport LegacyText from \"../Text/LegacyText\";\nimport \"./TextListItem.scss\";\nimport ListItem from \"../ListItem/ListItem\";\n\nfunction TextListItem(props) {\n const { text, icon, className, iconClass, onClick, ...rest } = props;\n\n const mergedClasses = classNames(\"cweb-text-list-item\", className);\n const iconClasses = classNames(\"cweb-text-list-item-icon\", iconClass);\n\n return (\n <ListItem className={mergedClasses} onClick={onClick} {...rest}>\n {icon && <img className={iconClasses} src={icon} alt=\"\" />}\n <LegacyText text={text} />\n </ListItem>\n );\n}\n\nTextListItem.propTypes = {\n text: PropTypes.string.isRequired,\n icon: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n className: PropTypes.string,\n iconClass: PropTypes.string,\n onClick: PropTypes.func,\n};\n\nexport default TextListItem;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport Text, { TextProps } from \"../Text/Text\";\nimport Button from \"../Button/Button\";\nimport { RestPropped } from \"../../types/general.types\";\nimport { ButtonProps } from \"../Button/Button.types\";\n\nexport interface ViewItemProps<AccessoryType extends JSX.Element> extends RestPropped {\n titleProps?: TextProps;\n // deprecated: use titleProps instead\n title?: string;\n titleAccessory?: AccessoryType;\n // these props are injected in a Text component, allowing for customisation\n contentProps?: TextProps[];\n // these strings are injected in a default Text component\n // deprecated: use contentProps instead\n content?: string[];\n // if contentProps and content are both empty or null, this value will be presented instead\n defaultContent?: string;\n className?: string;\n buttons?: ButtonProps[];\n}\n\nexport function ViewItem<AccessoryType extends JSX.Element> ({\n titleProps,\n title,\n titleAccessory,\n contentProps,\n content,\n defaultContent = \"-\",\n className,\n buttons,\n ...restProps\n}: ViewItemProps<AccessoryType>): JSX.Element {\n const titlePropsMerged = titleProps ?? { text: title ?? defaultContent };\n const contentPropsMerged =\n contentProps ??\n content?.map((line) => {\n return { text: line, className: \"cweb-view-content-text\" } as TextProps;\n });\n\n return (\n <div className={classNames(\"vitals-view-item\", className)} {...restProps}>\n <div className={\"vitals-view-item-title-line flex justify-start flex-row items-start\"}>\n {titlePropsMerged && (\n <Text\n className={classNames(titlePropsMerged.className, \"vitals-view-item-title mb-1 mr-2\")}\n color=\"gray-500\"\n {...titlePropsMerged}\n />\n )}\n {titleAccessory}\n </div>\n {contentPropsMerged &&\n contentPropsMerged?.map((textProps) => <Text {...textProps} key={textProps.key || textProps.text} />)}\n {(!contentPropsMerged || contentPropsMerged?.length === 0) && <Text text={defaultContent} key=\"empty-text\" />}\n\n <div className=\"flex flex-row cweb-view-buttons\" key=\"cweb-view-buttons\">\n {buttons &&\n buttons.map((button) => (\n <Button\n {...button}\n className={classNames(\"cweb-view-button ml-3\", button.className)}\n key={button.key || button.text}\n />\n ))}\n </div>\n </div>\n );\n}\n\nexport default ViewItem;\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const AlertsIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M14 19.5C14 20.163 13.7893 20.7989 13.4142 21.2678C13.0391 21.7366 12.5304 22 12 22C11.4696 22 10.9609 21.7366 10.5858 21.2678C10.2107 20.7989 10 20.163 10 19.5L14 19.5Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M10 4C10 2.89543 10.8954 2 12 2C13.1046 2 14 2.89543 14 4V5H10V4Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M5 11C5 7.13401 8.13401 4 12 4C15.866 4 19 7.13401 19 11V17H5V11Z\"\n fill=\"currentColor\"\n />\n <rect\n x=\"3\"\n y=\"15.5\"\n width=\"18\"\n height=\"2.5\"\n rx=\"1.25\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const BellIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M14 19.5C14 20.163 13.7893 20.7989 13.4142 21.2678C13.0391 21.7366 12.5304 22 12 22C11.4696 22 10.9609 21.7366 10.5858 21.2678C10.2107 20.7989 10 20.163 10 19.5L14 19.5Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M10 4C10 2.89543 10.8954 2 12 2C13.1046 2 14 2.89543 14 4V5H10V4Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M5 11C5 7.13401 8.13401 4 12 4C15.866 4 19 7.13401 19 11V17H5V11Z\"\n fill=\"currentColor\"\n />\n <rect\n x=\"3\"\n y=\"15.5\"\n width=\"18\"\n height=\"2.5\"\n rx=\"1.25\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const ChatBoxIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n width=\"20\"\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n height=\"19\"\n viewBox=\"0 0 20 19\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M18 0H2C0.9 0 0 0.9 0 2V17.59C0 18.48 1.08 18.93 1.71 18.3L4 16H18C19.1 16 20 15.1 20 14V2C20 0.9 19.1 0 18 0ZM11.57 9.57L10.45 12.01C10.27 12.4 9.72 12.4 9.54 12.01L8.42 9.57L5.98 8.45C5.59 8.27 5.59 7.72 5.98 7.54L8.42 6.42L9.54 3.98C9.72 3.59 10.27 3.59 10.45 3.98L11.57 6.42L14.01 7.54C14.4 7.72 14.4 8.27 14.01 8.45L11.57 9.57Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const CheckIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M18.7071 7.29289C19.0976 7.68342 19.0976 8.31658 18.7071 8.70711L10.7071 16.7071C10.3166 17.0976 9.68342 17.0976 9.29289 16.7071L5.29289 12.7071C4.90237 12.3166 4.90237 11.6834 5.29289 11.2929C5.68342 10.9024 6.31658 10.9024 6.70711 11.2929L10 14.5858L17.2929 7.29289C17.6834 6.90237 18.3166 6.90237 18.7071 7.29289Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const ChevronDoubleIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"8\"\n height=\"14\"\n viewBox=\"0 0 8 14\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M4 0C4.26522 5.96046e-08 4.51957 0.105357 4.70711 0.292893L7.70711 3.29289C8.09763 3.68342 8.09763 4.31658 7.70711 4.70711C7.31658 5.09763 6.68342 5.09763 6.29289 4.70711L4 2.41421L1.70711 4.70711C1.31658 5.09763 0.683417 5.09763 0.292893 4.70711C-0.0976311 4.31658 -0.097631 3.68342 0.292893 3.29289L3.29289 0.292893C3.48043 0.105357 3.73478 0 4 0ZM0.292893 9.29289C0.683417 8.90237 1.31658 8.90237 1.70711 9.29289L4 11.5858L6.29289 9.29289C6.68342 8.90237 7.31658 8.90237 7.70711 9.29289C8.09763 9.68342 8.09763 10.3166 7.70711 10.7071L4.70711 13.7071C4.31658 14.0976 3.68342 14.0976 3.29289 13.7071L0.292893 10.7071C-0.0976311 10.3166 -0.0976311 9.68342 0.292893 9.29289Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const CrossIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M7.05037 5.63664C6.65984 5.24612 6.02668 5.24612 5.63615 5.63664C5.24563 6.02717 5.24563 6.66033 5.63616 7.05086L10.5862 12.0009L5.63618 16.9509C5.24566 17.3415 5.24566 17.9746 5.63618 18.3652C6.02671 18.7557 6.65987 18.7557 7.0504 18.3652L12.0004 13.4151L16.9499 18.3646C17.3404 18.7551 17.9736 18.7551 18.3641 18.3646C18.7546 17.974 18.7546 17.3409 18.3641 16.9504L13.4146 12.0009L18.3641 7.05145C18.7546 6.66093 18.7546 6.02776 18.3641 5.63724C17.9736 5.24671 17.3404 5.24671 16.9499 5.63724L12.0004 10.5867L7.05037 5.63664Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const DownArrowIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n >\n <path\n fill=\"currentColor\"\n fill-rule=\"nonzero\"\n d=\"M12.762 6.57l-.48-.382A.944.944 0 0 0 11.696 6a.9.9 0 0 0-.578.188L8 8.663 4.88 6.188A.9.9 0 0 0 4.304 6a.944.944 0 0 0-.584.188l-.475.382C3.08 6.7 3 6.854 3 7.034c0 .183.081.336.244.458l4.178 3.315A.87.87 0 0 0 8 11a.91.91 0 0 0 .584-.193l4.178-3.315A.567.567 0 0 0 13 7.034c0-.177-.08-.331-.238-.464z\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const DragIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M8 4C7.44772 4 7 4.44772 7 5V7C7 7.55228 7.44772 8 8 8H10C10.5523 8 11 7.55228 11 7V5C11 4.44772 10.5523 4 10 4H8ZM14 4C13.4477 4 13 4.44772 13 5V7C13 7.55228 13.4477 8 14 8H16C16.5523 8 17 7.55228 17 7V5C17 4.44772 16.5523 4 16 4H14ZM7 11C7 10.4477 7.44772 10 8 10H10C10.5523 10 11 10.4477 11 11V13C11 13.5523 10.5523 14 10 14H8C7.44772 14 7 13.5523 7 13V11ZM14 10C13.4477 10 13 10.4477 13 11V13C13 13.5523 13.4477 14 14 14H16C16.5523 14 17 13.5523 17 13V11C17 10.4477 16.5523 10 16 10H14ZM7 17C7 16.4477 7.44772 16 8 16H10C10.5523 16 11 16.4477 11 17V19C11 19.5523 10.5523 20 10 20H8C7.44772 20 7 19.5523 7 19V17ZM14 16C13.4477 16 13 16.4477 13 17V19C13 19.5523 13.4477 20 14 20H16C16.5523 20 17 19.5523 17 19V17C17 16.4477 16.5523 16 16 16H14Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nexport const EmptyStateDashboardIcon = (): JSX.Element => {\n return (\n <svg width=\"450\" height=\"300\" viewBox=\"0 0 450 300\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M450 291C450 264.079 444.18 237.422 432.873 212.55C421.566 187.678 404.992 165.079 384.099 146.043C363.206 127.007 338.402 111.907 311.104 101.605C283.806 91.3025 254.547 86 225 86C195.453 86 166.194 91.3025 138.896 101.605C111.598 111.907 86.7941 127.007 65.901 146.043C45.0078 165.079 28.4344 187.678 17.1271 212.55C5.81979 237.422 -2.58312e-06 264.079 0 291L225 291H450Z\"\n fill=\"#82D6F8\"\n />\n <path\n d=\"M95 73.0081C95 65.8239 100.824 60 108.008 60H342.154C349.338 60 355.162 65.8239 355.162 73.0081V223.252C355.162 230.436 349.338 236.26 342.154 236.26H108.008C100.824 236.26 95 230.436 95 223.252V73.0081Z\"\n fill=\"#1F2937\"\n />\n <path\n d=\"M167.846 70.4062H340.756C342.965 70.4062 344.756 72.1971 344.756 74.4062V221.853C344.756 224.062 342.965 225.853 340.756 225.853H167.846V70.4062Z\"\n fill=\"#F9FAFB\"\n />\n <path\n d=\"M173.049 99.772C173.049 97.5628 174.84 95.772 177.049 95.772H249.699C251.908 95.772 253.699 97.5628 253.699 99.772V151.609C253.699 153.818 251.908 155.609 249.699 155.609H177.049C174.84 155.609 173.049 153.818 173.049 151.609V99.772Z\"\n fill=\"white\"\n />\n <path\n d=\"M226.988 139.305C227.242 139.559 227.243 139.972 226.981 140.217C224.8 142.257 222.178 143.772 219.315 144.64C216.244 145.572 212.991 145.731 209.844 145.105C206.697 144.479 203.753 143.087 201.272 141.051C198.792 139.016 196.852 136.4 195.624 133.435C194.396 130.47 193.918 127.249 194.233 124.056C194.547 120.862 195.644 117.796 197.427 115.128C199.21 112.46 201.623 110.272 204.453 108.76C207.091 107.35 210.016 106.566 213.001 106.467C213.36 106.455 213.651 106.747 213.651 107.106V125.699C213.651 125.871 213.719 126.037 213.841 126.159L226.988 139.305Z\"\n fill=\"#FF83B4\"\n />\n <path\n d=\"M233.813 124.667C234.172 124.667 234.465 124.376 234.453 124.017C234.288 119.078 232.254 114.376 228.748 110.87C225.243 107.364 220.541 105.33 215.602 105.166C215.243 105.154 214.951 105.446 214.951 105.805L214.951 124.017C214.951 124.376 215.242 124.667 215.602 124.667H233.813Z\"\n fill=\"#52C6F4\"\n />\n <path\n d=\"M228.937 139.306C229.191 139.56 229.603 139.56 229.849 139.298C231.448 137.588 232.729 135.602 233.626 133.435C234.524 131.269 235.023 128.959 235.101 126.619C235.113 126.26 234.82 125.968 234.461 125.968H217.169C216.59 125.968 216.3 126.669 216.71 127.079L228.937 139.306Z\"\n fill=\"#6ABFA5\"\n />\n <path\n d=\"M258.902 99.772C258.902 97.5628 260.693 95.772 262.902 95.772H335.553C337.762 95.772 339.553 97.5628 339.553 99.772V151.609C339.553 153.818 337.762 155.609 335.553 155.609H262.902C260.693 155.609 258.902 153.818 258.902 151.609V99.772Z\"\n fill=\"white\"\n />\n <path\n d=\"M278.414 126.991C278.414 125.554 279.579 124.39 281.016 124.39H286.219C287.656 124.39 288.821 125.554 288.821 126.991V142.601C288.821 144.038 287.656 145.203 286.219 145.203H281.016C279.579 145.203 278.414 144.038 278.414 142.601V126.991Z\"\n fill=\"#52C6F4\"\n />\n <path\n d=\"M294.024 110.731C294.024 109.294 295.189 108.129 296.625 108.129H301.829C303.266 108.129 304.43 109.294 304.43 110.731V142.601C304.43 144.038 303.266 145.203 301.829 145.203H296.625C295.189 145.203 294.024 144.038 294.024 142.601V110.731Z\"\n fill=\"#52C6F4\"\n />\n <path\n d=\"M309.634 119.837C309.634 118.4 310.798 117.235 312.235 117.235H317.438C318.875 117.235 320.04 118.4 320.04 119.837V142.601C320.04 144.038 318.875 145.203 317.438 145.203H312.235C310.798 145.203 309.634 144.038 309.634 142.601V119.837Z\"\n fill=\"#6ABFA5\"\n />\n <path\n d=\"M258.902 164.812C258.902 162.603 260.693 160.812 262.902 160.812H335.553C337.762 160.812 339.553 162.603 339.553 164.813V216.65C339.553 218.859 337.762 220.65 335.553 220.65H262.902C260.693 220.65 258.902 218.859 258.902 216.65V164.812Z\"\n fill=\"white\"\n />\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M280.096 191.874C280.096 191.874 271.487 183.28 280.774 174.655C280.774 174.655 284.175 171.052 291.053 172.041C294.952 172.603 296.482 174.453 299.075 178.366C299.075 178.366 302.291 172.16 310.8 172.137C318.05 172.118 323.604 180.223 321.565 186.881C321.565 186.881 320.884 188.957 318.05 191.874L299.122 210.243L280.096 191.874Z\"\n fill=\"#6ABFA5\"\n />\n <path\n d=\"M173.049 164.812C173.049 162.603 174.84 160.812 177.049 160.812H249.699C251.908 160.812 253.699 162.603 253.699 164.813V216.65C253.699 218.859 251.908 220.65 249.699 220.65H177.049C174.84 220.65 173.049 218.859 173.049 216.65V164.812Z\"\n fill=\"white\"\n />\n <rect x=\"173.049\" y=\"178.374\" width=\"80.6503\" height=\"1.30081\" fill=\"#F4F4F4\" />\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M228.738 169.616C229.132 169.54 229.539 169.651 229.84 169.915L245.45 183.573C245.991 184.046 246.046 184.868 245.573 185.409C245.1 185.949 244.278 186.004 243.737 185.531L229.383 172.972L214.533 202.054C214.362 202.388 214.057 202.632 213.694 202.724C213.331 202.816 212.946 202.747 212.637 202.535L197.149 191.886L181.676 185.762C181.008 185.497 180.681 184.741 180.945 184.073C181.21 183.405 181.965 183.078 182.633 183.343L198.243 189.521C198.334 189.557 198.421 189.604 198.501 189.659L212.89 199.551L227.825 170.302C228.008 169.945 228.345 169.692 228.738 169.616Z\"\n fill=\"#52C6F4\"\n />\n <circle cx=\"182.805\" cy=\"184.878\" r=\"2.60162\" fill=\"#3FABD6\" />\n <circle cx=\"197.764\" cy=\"190.731\" r=\"2.60162\" fill=\"#3FABD6\" />\n <circle cx=\"213.373\" cy=\"201.137\" r=\"2.60162\" fill=\"#3FABD6\" />\n <circle cx=\"229.635\" cy=\"171.219\" r=\"3.90244\" fill=\"#6ABFA5\" />\n <circle cx=\"245.244\" cy=\"184.878\" r=\"2.60162\" fill=\"#3FABD6\" />\n <path\n d=\"M173.049 80.2603C173.049 78.0511 174.84 76.2603 177.049 76.2603H335.553C337.762 76.2603 339.553 78.0511 339.553 80.2603V86.5692C339.553 88.7783 337.762 90.5692 335.553 90.5692H177.049C174.84 90.5692 173.049 88.7783 173.049 86.5692V80.2603Z\"\n fill=\"white\"\n />\n <rect x=\"178.252\" y=\"81.4634\" width=\"26.0162\" height=\"3.90244\" rx=\"1.95122\" fill=\"#D1D5DB\" />\n <rect x=\"282.316\" y=\"81.4634\" width=\"52.0325\" height=\"3.90244\" rx=\"1.95122\" fill=\"#D1D5DB\" />\n <rect x=\"209.471\" y=\"81.4634\" width=\"67.6422\" height=\"3.90244\" rx=\"1.95122\" fill=\"#9CA3AF\" />\n <path\n d=\"M160.041 289.594C160.041 283.846 164.7 279.187 170.448 279.187H279.716C285.463 279.187 290.122 283.846 290.122 289.594C290.122 295.341 285.463 300 279.716 300H170.448C164.7 300 160.041 295.341 160.041 289.594Z\"\n fill=\"#1F2937\"\n />\n <path d=\"M203.617 236.26H246.544L251.747 279.187H198.414L203.617 236.26Z\" fill=\"#4B5563\" />\n <path\n d=\"M105.406 74.4062C105.406 72.1971 107.197 70.4062 109.406 70.4062H167.845V225.853H109.406C107.197 225.853 105.406 224.062 105.406 221.853V74.4062Z\"\n fill=\"#F3F4F6\"\n />\n <rect x=\"108.658\" y=\"73.6587\" width=\"55.9349\" height=\"15.6097\" rx=\"4\" fill=\"white\" />\n <rect x=\"123.617\" y=\"76.2607\" width=\"37.7235\" height=\"5.20325\" rx=\"2.60162\" fill=\"#9CA3AF\" />\n <rect x=\"123.617\" y=\"82.7642\" width=\"26.0162\" height=\"3.90244\" rx=\"1.95122\" fill=\"#D1D5DB\" />\n <ellipse cx=\"115.813\" cy=\"81.464\" rx=\"5.20325\" ry=\"5.20325\" fill=\"#D1D5DB\" />\n <rect x=\"108.658\" y=\"94.4712\" width=\"55.9349\" height=\"15.6097\" rx=\"4\" fill=\"white\" />\n <rect x=\"123.617\" y=\"97.0732\" width=\"33.8211\" height=\"5.20325\" rx=\"2.60162\" fill=\"#9CA3AF\" />\n <rect x=\"123.617\" y=\"103.577\" width=\"35.7723\" height=\"3.90244\" rx=\"1.95122\" fill=\"#D1D5DB\" />\n <ellipse cx=\"115.813\" cy=\"102.276\" rx=\"5.20325\" ry=\"5.20325\" fill=\"#D1D5DB\" />\n <rect x=\"108.658\" y=\"115.285\" width=\"55.9349\" height=\"15.6097\" rx=\"4\" fill=\"white\" />\n <rect x=\"123.617\" y=\"117.887\" width=\"37.7235\" height=\"5.20325\" rx=\"2.60163\" fill=\"#9CA3AF\" />\n <rect x=\"123.617\" y=\"124.391\" width=\"26.0162\" height=\"3.90244\" rx=\"1.95122\" fill=\"#D1D5DB\" />\n <ellipse cx=\"115.813\" cy=\"123.09\" rx=\"5.20325\" ry=\"5.20325\" fill=\"#D1D5DB\" />\n <rect x=\"108.658\" y=\"136.098\" width=\"55.9349\" height=\"15.6097\" rx=\"4\" fill=\"white\" />\n <rect x=\"123.617\" y=\"138.7\" width=\"33.8211\" height=\"5.20325\" rx=\"2.60163\" fill=\"#9CA3AF\" />\n <rect x=\"123.617\" y=\"145.203\" width=\"31.8699\" height=\"3.90243\" rx=\"1.95122\" fill=\"#D1D5DB\" />\n <ellipse cx=\"115.813\" cy=\"143.903\" rx=\"5.20325\" ry=\"5.20325\" fill=\"#D1D5DB\" />\n <rect x=\"108.658\" y=\"156.91\" width=\"55.9349\" height=\"15.6098\" rx=\"4\" fill=\"white\" />\n <rect x=\"123.617\" y=\"159.512\" width=\"37.7235\" height=\"5.20325\" rx=\"2.60163\" fill=\"#9CA3AF\" />\n <rect x=\"123.617\" y=\"166.016\" width=\"26.0162\" height=\"3.90244\" rx=\"1.95122\" fill=\"#D1D5DB\" />\n <ellipse cx=\"115.813\" cy=\"164.715\" rx=\"5.20325\" ry=\"5.20325\" fill=\"#D1D5DB\" />\n <rect x=\"108.658\" y=\"177.723\" width=\"55.9349\" height=\"15.6097\" rx=\"4\" fill=\"white\" />\n <rect x=\"123.617\" y=\"180.325\" width=\"31.8699\" height=\"5.20325\" rx=\"2.60163\" fill=\"#9CA3AF\" />\n <rect x=\"123.617\" y=\"186.829\" width=\"31.8699\" height=\"3.90243\" rx=\"1.95122\" fill=\"#D1D5DB\" />\n <ellipse cx=\"115.813\" cy=\"185.528\" rx=\"5.20325\" ry=\"5.20325\" fill=\"#D1D5DB\" />\n <rect x=\"108.658\" y=\"198.537\" width=\"55.9349\" height=\"15.6098\" rx=\"4\" fill=\"white\" />\n <rect x=\"123.617\" y=\"201.138\" width=\"37.7235\" height=\"5.20324\" rx=\"2.60162\" fill=\"#9CA3AF\" />\n <rect x=\"123.617\" y=\"207.642\" width=\"26.0162\" height=\"3.90243\" rx=\"1.95122\" fill=\"#D1D5DB\" />\n <ellipse cx=\"115.813\" cy=\"206.341\" rx=\"5.20325\" ry=\"5.20325\" fill=\"#D1D5DB\" />\n <path\n d=\"M204.538 57.2204C206.044 55.1505 208.448 53.9258 211.008 53.9258H239.809C242.368 53.9258 244.773 55.1505 246.278 57.2204L248.979 60.9332H201.838L204.538 57.2204Z\"\n fill=\"#374151\"\n />\n <circle cx=\"225.408\" cy=\"52.6519\" r=\"14.6519\" fill=\"#374151\" />\n <circle cx=\"225.408\" cy=\"52.6521\" r=\"8.28148\" fill=\"#1F2937\" />\n <circle cx=\"225.409\" cy=\"52.6518\" r=\"5.73333\" fill=\"#86DDFF\" />\n <circle cx=\"223.497\" cy=\"50.1035\" r=\"1.91111\" fill=\"white\" fill-opacity=\"0.5\" />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const ExclamationMarkIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M12 2C6.48 2 2 6.48 2 12C2 17.52 6.48 22 12 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 12 2ZM12 13C11.45 13 11 12.55 11 12V8C11 7.45 11.45 7 12 7C12.55 7 13 7.45 13 8V12C13 12.55 12.55 13 12 13ZM13 17H11V15H13V17Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const EyeIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"22\"\n height=\"15\"\n viewBox=\"0 0 22 15\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M11 0C6 0 1.73 3.11 0 7.5C1.73 11.89 6 15 11 15C16 15 20.27 11.89 22 7.5C20.27 3.11 16 0 11 0ZM11 12.5C8.24 12.5 6 10.26 6 7.5C6 4.74 8.24 2.5 11 2.5C13.76 2.5 16 4.74 16 7.5C16 10.26 13.76 12.5 11 12.5ZM11 4.5C9.34 4.5 8 5.84 8 7.5C8 9.16 9.34 10.5 11 10.5C12.66 10.5 14 9.16 14 7.5C14 5.84 12.66 4.5 11 4.5Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const GearIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M17.5002 10C17.5002 9.77 17.4902 9.55 17.4702 9.32L19.3302 7.91C19.7302 7.61 19.8402 7.05 19.5902 6.61L17.7202 3.38C17.4702 2.94 16.9302 2.76 16.4702 2.96L14.3202 3.87C13.9502 3.61 13.5602 3.38 13.1502 3.19L12.8602 0.88C12.8002 0.38 12.3702 0 11.8702 0H8.14015C7.63015 0 7.20015 0.38 7.14015 0.88L6.85015 3.19C6.44015 3.38 6.05015 3.61 5.68015 3.87L3.53015 2.96C3.07015 2.76 2.53015 2.94 2.28015 3.38L0.410153 6.62C0.160153 7.06 0.270153 7.61 0.670153 7.92L2.53015 9.33C2.51015 9.55 2.50015 9.77 2.50015 10C2.50015 10.23 2.51015 10.45 2.53015 10.68L0.670153 12.09C0.270153 12.39 0.160153 12.95 0.410153 13.39L2.28015 16.62C2.53015 17.06 3.07015 17.24 3.53015 17.04L5.68015 16.13C6.05015 16.39 6.44015 16.62 6.85015 16.81L7.14015 19.12C7.20015 19.62 7.63015 20 8.13015 20H11.8602C12.3602 20 12.7902 19.62 12.8502 19.12L13.1402 16.81C13.5502 16.62 13.9402 16.39 14.3102 16.13L16.4602 17.04C16.9202 17.24 17.4602 17.06 17.7102 16.62L19.5802 13.39C19.8302 12.95 19.7202 12.4 19.3202 12.09L17.4602 10.68C17.4902 10.45 17.5002 10.23 17.5002 10ZM10.0402 13.5C8.11015 13.5 6.54015 11.93 6.54015 10C6.54015 8.07 8.11015 6.5 10.0402 6.5C11.9702 6.5 13.5402 8.07 13.5402 10C13.5402 11.93 11.9702 13.5 10.0402 13.5Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const GroupIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M12 12.75C13.63 12.75 15.07 13.14 16.24 13.65C17.32 14.13 18 15.21 18 16.38V17C18 17.55 17.55 18 17 18H7C6.45 18 6 17.55 6 17V16.39C6 15.21 6.68 14.13 7.76 13.66C8.93 13.14 10.37 12.75 12 12.75ZM4 13C5.1 13 6 12.1 6 11C6 9.9 5.1 9 4 9C2.9 9 2 9.9 2 11C2 12.1 2.9 13 4 13ZM5.13 14.1C4.76 14.04 4.39 14 4 14C3.01 14 2.07 14.21 1.22 14.58C0.48 14.9 0 15.62 0 16.43V17C0 17.55 0.45 18 1 18H4.5V16.39C4.5 15.56 4.73 14.78 5.13 14.1ZM20 13C21.1 13 22 12.1 22 11C22 9.9 21.1 9 20 9C18.9 9 18 9.9 18 11C18 12.1 18.9 13 20 13ZM24 16.43C24 15.62 23.52 14.9 22.78 14.58C21.93 14.21 20.99 14 20 14C19.61 14 19.24 14.04 18.87 14.1C19.27 14.78 19.5 15.56 19.5 16.39V18H23C23.55 18 24 17.55 24 17V16.43ZM12 6C13.66 6 15 7.34 15 9C15 10.66 13.66 12 12 12C10.34 12 9 10.66 9 9C9 7.34 10.34 6 12 6Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const HeartIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M13.3502 20.1307C12.5902 20.8207 11.4202 20.8207 10.6602 20.1207L10.5502 20.0207C5.30015 15.2707 1.87015 12.1607 2.00015 8.28065C2.06015 6.58065 2.93015 4.95065 4.34015 3.99065C6.98015 2.19065 10.2402 3.03065 12.0002 5.09065C13.7602 3.03065 17.0202 2.18065 19.6602 3.99065C21.0702 4.95065 21.9402 6.58065 22.0002 8.28065C22.1402 12.1607 18.7002 15.2707 13.4502 20.0407L13.3502 20.1307Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const LightBulbIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M12 22C13.1 22 14 21.1 14 20H10C10 21.1 10.9 22 12 22Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M9 19H15C15.55 19 16 18.55 16 18C16 17.45 15.55 17 15 17H9C8.45 17 8 17.45 8 18C8 18.55 8.45 19 9 19Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M12 2C7.86 2 4.5 5.36 4.5 9.5C4.5 13.32 7.16 15.36 8.27 16H15.73C16.84 15.36 19.5 13.32 19.5 9.5C19.5 5.36 16.14 2 12 2Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const LockIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M18 8H17V6C17 3.24 14.76 1 12 1C9.24 1 7 3.24 7 6V8H6C4.9 8 4 8.9 4 10V20C4 21.1 4.9 22 6 22H18C19.1 22 20 21.1 20 20V10C20 8.9 19.1 8 18 8ZM12 17C10.9 17 10 16.1 10 15C10 13.9 10.9 13 12 13C13.1 13 14 13.9 14 15C14 16.1 13.1 17 12 17ZM9 8V6C9 4.34 10.34 3 12 3C13.66 3 15 4.34 15 6V8H9Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const MessagesIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M20 2H4C2.9 2 2.01 2.9 2.01 4L2 22L6 18H20C21.1 18 22 17.1 22 16V4C22 2.9 21.1 2 20 2ZM17 14H7C6.45 14 6 13.55 6 13C6 12.45 6.45 12 7 12H17C17.55 12 18 12.45 18 13C18 13.55 17.55 14 17 14ZM17 11H7C6.45 11 6 10.55 6 10C6 9.45 6.45 9 7 9H17C17.55 9 18 9.45 18 10C18 10.55 17.55 11 17 11ZM17 8H7C6.45 8 6 7.55 6 7C6 6.45 6.45 6 7 6H17C17.55 6 18 6.45 18 7C18 7.55 17.55 8 17 8Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const NotesIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M19 3H4.99C3.89 3 3 3.9 3 5L3.01 19C3.01 20.1 3.9 21 5 21H15L21 15V5C21 3.9 20.1 3 19 3ZM8 8H16C16.55 8 17 8.45 17 9C17 9.55 16.55 10 16 10H8C7.45 10 7 9.55 7 9C7 8.45 7.45 8 8 8ZM11 14H8C7.45 14 7 13.55 7 13C7 12.45 7.45 12 8 12H11C11.55 12 12 12.45 12 13C12 13.55 11.55 14 11 14ZM14 19.5V15C14 14.45 14.45 14 15 14H19.5L14 19.5Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const PinIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"14\"\n height=\"20\"\n viewBox=\"0 0 14 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M14 10.87C14 10.4 13.66 10.02 13.2 9.89C11.93 9.54 11 8.38 11 7V2H12C12.55 2 13 1.55 13 1C13 0.45 12.55 0 12 0L2 0C1.45 0 1 0.45 1 1C1 1.55 1.45 2 2 2H3V7C3 8.38 2.07 9.54 0.8 9.89C0.34 10.02 0 10.4 0 10.87L0 11C0 11.55 0.45 12 1 12H5.98L6 19C6 19.55 6.45 20 7 20C7.55 20 8 19.55 8 19L7.98 12H13C13.55 12 14 11.55 14 11V10.87Z\"\n fill=\"#64748b\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const SmallCircleIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle cx=\"12\" cy=\"12\" r=\"6\" fill=\"currentColor\" />\n <circle cx=\"14.5\" cy=\"9.5\" r=\"1.5\" fill=\"white\" fillOpacity=\"0.1\" />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const SmallDiamondIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M4.92984 13.4142C4.14879 12.6332 4.14879 11.3668 4.92984 10.5858L10.5867 4.92893C11.3677 4.14788 12.6341 4.14788 13.4151 4.92893L19.072 10.5858C19.853 11.3668 19.853 12.6332 19.072 13.4142L13.4151 19.0711C12.6341 19.8521 11.3677 19.8521 10.5867 19.0711L4.92984 13.4142Z\"\n fill=\"currentColor\"\n />\n <circle\n cx=\"12.0002\"\n cy=\"7.05078\"\n r=\"1.5\"\n transform=\"rotate(-45 12.0002 7.05078)\"\n fill=\"white\"\n fillOpacity=\"0.1\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const SmallSquareIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <rect x=\"6\" y=\"6\" width=\"12\" height=\"12\" rx=\"2\" fill=\"currentColor\" />\n <circle cx=\"15.5\" cy=\"8.5\" r=\"1.5\" fill=\"white\" fillOpacity=\"0.1\" />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const SpaceRocketIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M9.18977 6.34976C7.14977 8.63976 5.74977 11.9298 5.61977 12.2398L3.35977 11.2698C2.70977 10.9898 2.54977 10.1398 3.04977 9.63976L6.05977 6.62976C6.52977 6.15976 7.20977 5.94976 7.86977 6.07976L9.18977 6.34976ZM10.6798 16.5098C10.9798 16.8098 11.4198 16.8898 11.7998 16.7098C12.9598 16.1698 15.4498 14.8998 17.0598 13.2898C21.6498 8.69976 21.6898 4.95976 21.4198 3.35976C21.3498 2.95976 21.0298 2.63976 20.6298 2.56976C19.0298 2.29976 15.2898 2.33976 10.6998 6.92976C9.08977 8.53976 7.82977 11.0298 7.27977 12.1898C7.09977 12.5698 7.18977 13.0198 7.47977 13.3098L10.6798 16.5098ZM17.6498 14.8098C15.3598 16.8498 12.0698 18.2498 11.7598 18.3798L12.7298 20.6398C13.0098 21.2898 13.8598 21.4498 14.3598 20.9498L17.3698 17.9398C17.8398 17.4698 18.0498 16.7898 17.9198 16.1298L17.6498 14.8098ZM8.93977 17.4098C9.13977 18.4698 8.78977 19.4498 8.11977 20.1198C7.34977 20.8898 4.95977 21.4598 3.40977 21.7598C2.71977 21.8898 2.10977 21.2798 2.23977 20.5898C2.53977 19.0398 3.09977 16.6498 3.87977 15.8798C4.54977 15.2098 5.52977 14.8598 6.58977 15.0598C7.75977 15.2798 8.71977 16.2398 8.93977 17.4098ZM12.9998 8.99976C12.9998 7.89976 13.8998 6.99976 14.9998 6.99976C16.0998 6.99976 16.9998 7.89976 16.9998 8.99976C16.9998 10.0998 16.0998 10.9998 14.9998 10.9998C13.8998 10.9998 12.9998 10.0998 12.9998 8.99976Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const StarIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"19\"\n height=\"18\"\n viewBox=\"0 0 19 18\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M8.58663 1.04906C8.93899 0.258571 10.061 0.258571 10.4134 1.04906L12.1659 4.9807C12.3112 5.30673 12.6193 5.53057 12.9743 5.56804L17.2551 6.01985C18.1158 6.11069 18.4625 7.17779 17.8196 7.75718L14.6219 10.6389C14.3568 10.8778 14.2391 11.24 14.3131 11.5892L15.2063 15.8001C15.3858 16.6467 14.4781 17.3062 13.7284 16.8738L9.99962 14.7232C9.69041 14.5448 9.30959 14.5448 9.00038 14.7232L5.27159 16.8738C4.52189 17.3062 3.61416 16.6467 3.79373 15.8001L4.68686 11.5892C4.76093 11.24 4.64325 10.8778 4.37808 10.6389L1.18043 7.75718C0.537518 7.17779 0.88424 6.11069 1.74492 6.01985L6.0257 5.56804C6.38068 5.53057 6.68877 5.30673 6.8341 4.9807L8.58663 1.04906Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const HamburgerIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M3 6C3 5.44772 3.44772 5 4 5H20C20.5523 5 21 5.44772 21 6C21 6.55228 20.5523 7 20 7H4C3.44772 7 3 6.55228 3 6Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M3 12C3 11.4477 3.44772 11 4 11H20C20.5523 11 21 11.4477 21 12C21 12.5523 20.5523 13 20 13H4C3.44772 13 3 12.5523 3 12Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M4 17C3.44772 17 3 17.4477 3 18C3 18.5523 3.44772 19 4 19H20C20.5523 19 21 18.5523 21 18C21 17.4477 20.5523 17 20 17H4Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const SearchIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M15.5 13.9996H14.71L14.43 13.7296C15.63 12.3296 16.25 10.4196 15.91 8.38965C15.44 5.60965 13.12 3.38965 10.32 3.04965C6.09001 2.52965 2.53002 6.08965 3.05002 10.3196C3.39002 13.1196 5.61002 15.4396 8.39002 15.9096C10.42 16.2496 12.33 15.6296 13.73 14.4296L14 14.7096V15.4996L18.25 19.7496C18.66 20.1596 19.33 20.1596 19.74 19.7496C20.15 19.3396 20.15 18.6696 19.74 18.2596L15.5 13.9996ZM9.50002 13.9996C7.01002 13.9996 5.00002 11.9896 5.00002 9.49965C5.00002 7.00965 7.01002 4.99965 9.50002 4.99965C11.99 4.99965 14 7.00965 14 9.49965C14 11.9896 11.99 13.9996 9.50002 13.9996Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const SearchCancelIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"14\"\n height=\"14\"\n viewBox=\"0 0 14 14\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M2.05086 0.636643C1.66033 0.246119 1.02717 0.246119 0.636643 0.636643C0.246119 1.02717 0.246119 1.66033 0.636643 2.05086L5.5867 7.00092L0.636672 11.9509C0.246148 12.3415 0.246148 12.9746 0.636672 13.3652C1.0272 13.7557 1.66036 13.7557 2.05089 13.3652L7.00091 8.41513L11.9503 13.3646C12.3409 13.7551 12.974 13.7551 13.3646 13.3646C13.7551 12.974 13.7551 12.3409 13.3646 11.9504L8.41513 7.00092L13.3646 2.05145C13.7551 1.66093 13.7551 1.02776 13.3646 0.637237C12.9741 0.246712 12.3409 0.246713 11.9504 0.637237L7.00092 5.5867L2.05086 0.636643Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n"],"names":["Text","props","containerProps","className","classNames","type","inline","truncate","color","containsDangerousHtml","React","dangerouslySetInnerHTML","__html","text","defaultProps","ACKNOWLEDGEMENT_TYPE_OPTIONS","SUCCESS","FAILURE","Acknowledgement","propTypes","message","PropTypes","string","oneOf","hasIcon","bool","isVisible","containerClassName","iconContainerClasses","hidden","successIconClasses","failureIconClasses","successIcon","failureIcon","checkImageValidity","src","Promise","resolve","image","Image","onload","onerror","AVATAR_SIZE_OPTIONS","LARGE","MEDIUM","SMALL","Avatar","size","defaultImage","initials","useState","hasValidImage","setHasValidImage","useEffect","mounted","then","res","renderAvatar","isRequired","Badge","containerClasses","textClasses","badgeCount","Spinner","xmlns","fill","viewBox","cx","cy","r","stroke","strokeWidth","d","ButtonV2","onClick","icon","isDisabled","isPending","otherAttributes","console","error","buttonClassName","disabled","createElement","style","position","left","top","transform","invisible","PrimaryButton","SecondaryButton","TertiaryButton","AddIcon","role","undefined","width","height","x","y","rx","DeleteIcon","EditIcon","LeftArrowIcon","RightArrowIcon","ChartIcon","PrintIcon","iconSrc","close","CloseIcon","hamburger","HamburgerIcon","ChevronRightBlueIcon","ChevronLeftBlueIcon","ChevronRightGreyIcon","ChevronLeftGreyIcon","search","SearchIcon","star","StarIcon","check","CheckIcon","SearchCancelIcon","ButtonIcon","name","BUTTON_ROLES","PRIMARY","SECONDARY","SECONDARY_DARK","TERTIARY","QUATERNARY","NEGATIVE","TEXT","LINK","ICON","Button","propsRole","title","link","iconName","hasIconProps","dynamicIcon","hasAddIcon","includes","hasEditIcon","hasDeleteIcon","hasPrevIcon","hasNextIcon","hasChartIcon","hasPrintIcon","isIconOnly","setRole","isButtonDisabled","isNonPrimaryNonNegative","handleClick","event","navigate","preventDefault","buttonRolesStyling","primary","secondary","secondaryDark","tertiary","quaternary","negative","spinnerClassNames","buttonTextClasses","GliderContainer","children","Carousel","slides","id","setIsVisible","Glider","hasDots","hasArrows","skipTrack","scrollLock","rewind","arrows","prev","next","dots","containerElement","map","slide","index","key","Title","match","ContainerElement","CenteredHero","buttons","arrayOf","shape","handleOnClick","func","length","filter","button","Checkbox","explanation","isChecked","value","onChange","checked","setChecked","isFocused","setIsFocused","hasError","handleChange","handleFocus","handleBlur","e","stopPropagation","onBlur","onFocus","MODAL_SIZES","DEFAULT","WIDE","WIDER","EXTRA_SMALL","Modal","isOpen","shouldCloseOnOverlayClick","showTitleBar","onCloseClick","closeAltText","closeButtonId","withPadding","showHeader","overlayClassName","ReactModal","setAppElement","contentLabel","portalClassName","bodyOpenClassName","htmlOpenClassName","onRequestClose","shouldFocusAfterRender","ModalWithButtons","buttonsAlignment","rest","ConfirmationDialog","calculatedClassNames","handleOnCloseClick","isProcessing","onCancel","modalButtons","texts","cancelLabel","cancelButtonRole","confirmLabel","onConfirm","confirmButtonRole","Datepicker","handleCloseButtonClick","datepickerRef","setOpen","getDateFormat","showTimeSelect","formatDateWithTime","render","hasCloseButton","closeButtonText","adjustDateOnChange","showMonthDropdown","showYearDropdown","shouldCloseOnSelect","allowSameDay","minDate","maxDate","selected","otherProps","dateFormat","pickerClassName","getCloseButtonText","element","Component","object","instanceOf","moment","ITEM_QUERY_FIELD_NAMES","ID","HIGHLIGHT_INDEX","keyCodes","ARROW_DOWN","ARROW_UP","ENTER","TAB","SHIFT","ESC","Dropdown","handleClickOutside","rootRef","contains","target","closeDropdown","handleKeyDown","state","items","isDropdownOpen","highlightIndex","keyCode","setSelectedItem","findItem","blur","openDropdown","shiftKey","decreaseHighlightIndexIfPossible","increaseHighlightIndexIfPossible","fieldName","fieldValue","selectedItem","i","item","subItems","j","subItem","setState","prevState","findSelectedItem","selectedIndex","querySelectorAll","scrollToHighlightedItem","dropdownListRef","scrollTo","offsetTop","newHighlightIndex","totalItemCount","selectItem","onItemSelect","renderIndividualItem","isItemSelected","itemClassName","textType","checkmark","renderGroupedItems","groupKey","renderItems","wider","addHighlightIndexToItems","initialSelectedItemId","getTotalItemCount","getDerivedStateFromProps","nextProps","componentDidMount","document","addEventListener","componentWillUnmount","removeEventListener","placeholder","onDropdownClick","chevronDouble","PureComponent","currentIndex","reduce","acc","oneOfType","number","imageSrc","NoOpenAlertsImage","SearchNotFoundImage","HappyStarImage","EmptyListMessage","imageName","dataTestId","alt","ErrorBlock","InfoBlock","InfoField","clipboard","ClipboardJS","on","onCopyToClipboard","clearSelection","linkType","href","rel","label","supportsMultiline","INPUT_TYPES","EMAIL","NUMBER","PASSWORD","Input","any","clearable","maxLength","withPrefix","withSuffix","onKeyPress","onKeyDown","setRef","hasNoExtraContent","backgroundSize","backgroundPosition","backgroundImage","backgroundRepeat","rounded","background","cross","currentTarget","Line","right","array","ListItem","classes","PaginationMenuSmall","handleOnChange","pageNumber","dataset","page","parseInt","pageSize","currentPageNumber","pageCount","generateCustomStyles","isIE11","option","baseStyles","fontWeight","isSelected","fontSize","backgroundColor","padding","opacity","content","visibility","transition","pointerEvents","container","flexGrow","control","defaultBorderColor","validatedBorderColor","defaultOutline","validatedOutline","outline","borderColor","borderWidth","borderStyle","borderRadius","boxShadow","paddingTop","singleValue","indicatorSeparator","display","indicatorsContainer","doubleChevron","svg","marginRight","menu","zIndex","CustomSelect","forwardRef","_ref","styles","window","customStyles","mergedStyles","mergeStyles","ReactSelect","PAGE_SIZES","PAGE_SIZE_OPTIONS","toString","getPageNumberOptions","push","getSummaryText","localization","resultCount","lowestElement","highestElement","of","PaginationMenuLarge","handleOnPageNumberSelect","optionSelected","handleOnPageSizeSelect","find","handleOnPrevNextButtonClick","newPage","Select","options","menuPlacement","previous","PaginationMenu","buildPaginationLarge","small","LoadingIndicator","asModal","asSpinner","spinnerColor","restProps","spinnerToRender","spinner","graySpinner","loadingImage","isEmpty","str","isString","trim","obj","Object","prototype","call","ListTableCell","isHeader","configuration","emptyValue","textProps","textClassName","cellClassName","hasValue","returnChildren","capitalize","ListTableRow","handleRowClick","idField","fields","field","ListTableHeader","configurationFields","ListTable","currentPage","onPaginationChange","onRowClick","isLoading","isPristine","setIsPristine","showEmptyView","colSpan","emptyListText","Menu","closeMenu","handleIconClick","openMenu","node","TEXT_TYPE_OPTIONS","STRONG","EMPHASIZED","FINEPRINT","SMALL_DARK","SMALL_FINEPRINT","MICRO","ERROR","TEXT_LEVEL_OPTIONS","INLINE","BLOCK","LegacyText","level","handleImplicitSelect","implicitSelected","list","property","newList","selectCheckboxName","implicitSelectedValues","forEach","findIndex","checkbox","identifier","upadteCheckbox","isOn","splice","MultiSelect","checkboxList","radioLabel","validationError","implicitSelect","radioOnDemand","setList","indexSelected","updateCheckbox","handleRadioChange","description","join","NavLayout","isNavDisabled","patientSidebar","disableScrolling","NavMenuItem","imgOnHover","img","currentImg","setCurrentImg","textColor","setTextColor","handleOnMouseOver","handleOnMouseOut","linkTo","onMouseOver","onMouseOut","handleMenuClick","metaKey","ctrlKey","track","gtmEvent","isExternal","open","location","assign","NavMenuContent","NavMenu","setIsOpen","handleToggleOpen","React.createElement","TextLink","enabled","NotificationBanner","linkProps","onButtonClick","Page","breadcrumbs","accessories","accessoryPosition","isPolling","navLayoutProps","feedbackBlock","navMenu","mergedPageClasses","containerClassnames","maybeTitle","Function","accessoryClasses","accessoriesContent","childrenOrContentProp","breadcrumbItemShape","isFetching","TITLE_TYPE_OPTIONS","BIG","TINY","BOLD","LegacyTitle","Step","stepNumber","active","barColor","step","Steps","orderedStepTitles","currentStep","renderedSteps","stepTitle","split","CRUDPage","stepTitles","submitButtonProps","deleteButtonProps","cancelButtonProps","isSubmitting","navMenuComponent","mergedClasses","submitButton","handler","deleteButton","cancelButton","renderHeader","elementType","useWindowDimensions","innerHeight","setHeight","innerWidth","setWidth","handleResize","debounce","PreviewPhone","phoneHeight","phoneWidth","scale","setScale","showPhone","setShowPhone","windowHeight","windowWidth","containerCallbak","useCallback","containerWidth","clientWidth","containerHeight","clientHeight","heightScale","widthScale","ref","phoneMockup","Radio","containerRef","RadioGroup","radioClassName","selectedOption","isVertical","radioOptions","otherOptions","vertical","info","Section","loadingIndicatorProps","useOutsideClick","callback","current","SettingsMenuButton","configFromProps","onConfigurationChange","shiftMenuTo","buttonTitle","iconComponent","menuTitle","innerConfiguration","setInnerConfiguration","showMenu","setShowMenu","menuRef","useRef","handleShowMenu","handleOnVibilitySwitchChanged","newConfig","config","itemId","itemName","innerConfig","SwitcherItem","showBadge","onSelect","handleItemClick","calculatedIcon","Switcher","currentSelection","setCurrentSelection","handleItemSelect","JSON","stringify","TabbarItem","handleTabClick","Tabbar","tabs","tabItemProps","itemProps","TabLinksSelect","url","TabLinks","patientUuid","isCurrent","Link","to","pathname","getProps","TagSize","TagGroup","tags","tagSize","base","tag","Tag","TagColorTheme","colorTheme","Gray","Red","Amber","Green","Blue","RESIZE_TYPES","NONE","BOTH","HORIZONTAL","VERTICAL","Textarea","rows","resizable","onCtrlEnter","TextEditor","defaultValue","onValueChange","formats","toolbarLastGroup","quillRef","quillInstance","tooltipSave","editor","theme","tooltip","save","textbox","indexOf","modules","useMemo","toolbar","TextEditorV2","locale","EditorState","createEmpty","editorState","setEditorState","htmlToDraft","contentBlocks","entityMap","createWithContent","ContentState","createFromBlockArray","onEditorStateChange","draftToHtml","convertToRaw","getCurrentContent","Editor","showOpenOptionOnHover","defaultTargetOption","TextListItem","iconClass","iconClasses","ViewItem","titleProps","titleAccessory","contentProps","defaultContent","titlePropsMerged","contentPropsMerged","line","AlertsIcon","BellIcon","ChatBoxIcon","fillRule","clipRule","ChevronDoubleIcon","CrossIcon","DownArrowIcon","DragIcon","EmptyStateDashboardIcon","ry","ExclamationMarkIcon","EyeIcon","GearIcon","GroupIcon","HeartIcon","LightBulbIcon","LockIcon","MessagesIcon","NotesIcon","PinIcon","SmallCircleIcon","fillOpacity","SmallDiamondIcon","SmallSquareIcon","SpaceRocketIcon"],"mappings":"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"}
1
+ {"version":3,"file":"web-ui.cjs.development.js","sources":["../src/components/Text/Text.tsx","../src/components/Acknowledgement/Acknowledgement.js","../src/components/Avatar/Avatar.js","../src/components/Badge/Badge.tsx","../src/components/Spinner/Spinner.tsx","../src/components/ButtonV2/ButtonV2.tsx","../src/components/ButtonV2/PrimaryButton.tsx","../src/components/ButtonV2/SecondaryButton.tsx","../src/components/ButtonV2/TertiaryButton.tsx","../src/components/Icons/AddIcon.tsx","../src/components/Icons/DeleteIcon.tsx","../src/components/Icons/EditIcon.tsx","../src/components/Icons/LeftArrowIcon.tsx","../src/components/Icons/RightArrowIcon.tsx","../src/components/Icons/ChartIcon.tsx","../src/components/Icons/PrintIcon.tsx","../src/components/Button/ButtonIcon.tsx","../src/components/Button/Button.types.ts","../src/components/Button/Button.tsx","../src/components/Carousel/GliderContainer.tsx","../src/components/Carousel/Carousel.tsx","../src/components/Title/Title.tsx","../src/components/CenteredHero/CenteredHero.js","../src/components/Checkbox/Checkbox.tsx","../src/components/Modal/Modal.tsx","../src/components/Modal/ModalWithButtons.tsx","../src/components/ConfirmationDialog/ConfirmationDialog.tsx","../src/components/Datepicker/Datepicker.js","../src/components/Dropdown/Dropdown.js","../src/components/EmptyListMessage/EmptyListMessage.tsx","../src/components/ErrorBlock/ErrorBlock.js","../src/components/InfoBlock/InfoBlock.js","../src/components/InfoField/InfoField.tsx","../src/components/Input/Input.js","../src/components/Line/Line.js","../src/components/ListItem/ListItem.tsx","../src/components/PaginationMenu/PaginationMenuSmall.tsx","../src/components/Select/Select.tsx","../src/components/PaginationMenu/PaginationMenu.utils.ts","../src/components/PaginationMenu/PaginationMenuLarge.tsx","../src/components/PaginationMenu/PaginationMenu.tsx","../src/components/LoadingIndicator/LoadingIndicator.tsx","../src/components/ListTable/ListTableCell.tsx","../src/components/ListTable/ListTableRow.tsx","../src/components/ListTable/ListTableHeader.tsx","../src/components/ListTable/ListTable.tsx","../src/components/Menu/Menu.js","../src/components/Text/LegacyText.js","../src/components/MultiSelect/MultiSelectUtils.js","../src/components/MultiSelect/MultiSelect.js","../src/components/NavMenu/NavLayout.tsx","../src/components/NavMenu/NavMenuItem.tsx","../src/components/NavMenu/NavMenuContent.tsx","../src/components/NavMenu/NavMenu.js","../src/components/TextLink/TextLink.tsx","../src/components/NotificationBanner/NotificationBanner.tsx","../src/components/Page/Page.js","../src/components/Title/LegacyTitle.js","../src/components/Steps/Step.tsx","../src/components/Steps/Steps.tsx","../src/components/Page/CRUDPage.js","../src/components/PreviewPhone/useWindowDimensions.js","../src/components/PreviewPhone/PreviewPhone.tsx","../src/components/Radio/Radio.js","../src/components/RadioGroup/RadioGroup.js","../src/components/Section/Section.tsx","../src/utils/useOutsideClick.js","../src/components/SettingsMenuButton/SettingsMenuButton.tsx","../src/components/Switcher/SwitcherItem.js","../src/components/Switcher/Switcher.js","../src/components/Tabbar/TabbarItem.tsx","../src/components/Tabbar/Tabbar.tsx","../src/components/TabLinks/TabLinks.tsx","../src/components/Tag/TagGroup.tsx","../src/components/Tag/Tag.tsx","../src/components/Textarea/Textarea.js","../src/components/TextEditor/TextEditor.js","../src/components/TextEditorV2/TextEditorV2.js","../src/components/TextListItem/TextListItem.js","../src/components/ViewItem/ViewItem.tsx","../src/components/Icons/AlertsIcon.tsx","../src/components/Icons/BellIcon.tsx","../src/components/Icons/ChatBoxIcon.tsx","../src/components/Icons/CheckIcon.tsx","../src/components/Icons/ChevronDoubleIcon.tsx","../src/components/Icons/CrossIcon.tsx","../src/components/Icons/DownArrowIcon.tsx","../src/components/Icons/DragIcon.tsx","../src/components/Icons/EmptyStateDashboardIcon.tsx","../src/components/Icons/ExclamationMarkIcon.tsx","../src/components/Icons/EyeIcon.tsx","../src/components/Icons/GearIcon.tsx","../src/components/Icons/GroupIcon.tsx","../src/components/Icons/HeartIcon.tsx","../src/components/Icons/LightBulbIcon.tsx","../src/components/Icons/LockIcon.tsx","../src/components/Icons/MessagesIcon.tsx","../src/components/Icons/NotesIcon.tsx","../src/components/Icons/PinIcon.tsx","../src/components/Icons/SmallCircleIcon.tsx","../src/components/Icons/SmallDiamondIcon.tsx","../src/components/Icons/SmallSquareIcon.tsx","../src/components/Icons/SpaceRocketIcon.tsx","../src/components/Icons/StarIcon.tsx","../src/components/Icons/HamburgerIcon.tsx","../src/components/Icons/SearchIcon.tsx","../src/components/Icons/SearchCancelIcon.tsx"],"sourcesContent":["import classNames from \"classnames\";\nimport React from \"react\";\n\nimport { RestPropped } from \"../../types/general.types\";\n\nimport \"./Text.scss\";\n\nexport type TextStyle = \"sm\" | \"sm-strong\" | \"base\" | \"strong\" | \"lg\" | \"lg-strong\" | \"xl\" | \"xl-strong\" | string;\n\n//Extend with other colors that we want to enable for text\nexport type TextColor = \"base\" | \"gray-500\" | \"gray-200\" | \"white\" | \"blue\" | \"red\" | \"green\" | \"amber\" | \"inherit\";\n\nexport interface TextProps extends RestPropped {\n text: string;\n type?: TextStyle; //defaults to \"base\"\n inline?: boolean; //defaults to false\n color?: TextColor; //defaults to \"base\"\n hoverColor?: TextColor; //defaults to \"base\"\n className?: string;\n containsDangerousHtml?: boolean; //defaults to false\n truncate?: boolean; //defaults to false\n \"data-test-id\"?: string;\n}\n\nexport const Text = (props: TextProps): JSX.Element => {\n const containerProps = {\n \"data-test-id\": props[\"data-test-id\"],\n className: classNames(\n // apply different style classes\n // for now we stick with font-size 16px on the body\n // so I am adjusting our styles accordingly (one step down)\n {\n \"text-xs font-medium\": props.type === \"sm\",\n \"text-xs font-semibold\": props.type === \"sm-strong\",\n \"text-sm\": props.type === \"base\",\n \"text-sm font-semibold\": props.type === \"strong\",\n \"\": props.type === \"lg\",\n \"font-semibold\": props.type === \"lg-strong\",\n \"text-lg\": props.type === \"xl\",\n \"font-semibold text-lg\": props.type === \"xl-strong\",\n },\n {\n inline: props.inline,\n // FIXME: this class doesn't do anything without a max-width\n truncate: props.truncate,\n },\n {\n \"text-slate-700\": props.color === \"base\",\n \"text-slate-500\": props.color === \"gray-500\",\n \"text-slate-200\": props.color === \"gray-200\",\n \"text-red-700\": props.color === \"red\",\n \"text-green-700\": props.color === \"green\",\n \"text-yellow-700\": props.color === \"amber\",\n \"text-blue-700\": props.color === \"blue\",\n \"text-white\": props.color === \"white\",\n \"text-primary-dark\": props.color === \"blue\",\n },\n {\n \"in-html-link\": props.containsDangerousHtml,\n },\n //can be used to overwrite other classes like the color\n props.className\n ),\n };\n\n return props.containsDangerousHtml ? (\n <p {...containerProps} dangerouslySetInnerHTML={{ __html: props.text }} />\n ) : (\n <p {...containerProps}>{props.text}</p>\n );\n};\n\nexport default Text;\n\nText.defaultProps = {\n type: \"base\",\n inline: false,\n color: \"base\",\n containsDangerousHtml: false,\n truncate: false,\n};\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport { Text } from \"../Text/Text\";\nimport successIcon from \"../../assets/success-icon.svg\";\nimport failureIcon from \"../../assets/error-icon.svg\";\n\nimport \"./Acknowledgement.scss\";\n\nexport const ACKNOWLEDGEMENT_TYPE_OPTIONS = {\n SUCCESS: \"success\",\n FAILURE: \"failure\",\n};\n\nAcknowledgement.propTypes = {\n message: PropTypes.string,\n type: PropTypes.oneOf([ACKNOWLEDGEMENT_TYPE_OPTIONS.SUCCESS, ACKNOWLEDGEMENT_TYPE_OPTIONS.FAILURE]),\n hasIcon: PropTypes.bool,\n isVisible: PropTypes.bool,\n className: PropTypes.string,\n};\n\nfunction Acknowledgement({\n message = \"\",\n type = ACKNOWLEDGEMENT_TYPE_OPTIONS.SUCCESS,\n isVisible = false,\n hasIcon = false,\n className = \"\",\n}) {\n const containerClassName = classNames(\"cweb-acknowledgement\", className, {\n \"type-success\": type === ACKNOWLEDGEMENT_TYPE_OPTIONS.SUCCESS,\n \"type-failure\": type === ACKNOWLEDGEMENT_TYPE_OPTIONS.FAILURE,\n \"is-visible\": isVisible,\n });\n\n const iconContainerClasses = classNames(\"acknowledgement-icon-container\", {\n hidden: !hasIcon,\n });\n\n const successIconClasses = classNames(\"icon success-icon acknowledgement-icon\", {\n hidden: type !== ACKNOWLEDGEMENT_TYPE_OPTIONS.SUCCESS,\n });\n\n const failureIconClasses = classNames(\"icon failure-icon acknowledgement-icon\", {\n hidden: type !== ACKNOWLEDGEMENT_TYPE_OPTIONS.FAILURE,\n });\n\n return (\n <div id=\"application-acknowledgement\" data-test-id={`acknowledgement-panel-${type}`} className={containerClassName}>\n <div className={iconContainerClasses}>\n <img src={successIcon} className={successIconClasses} alt=\"Success icon\" />\n <img src={failureIcon} className={failureIconClasses} alt=\"Failure icon\" />\n </div>\n\n <Text data-test-id=\"acknowledgement-message\" text={message} />\n </div>\n );\n}\n\nexport default Acknowledgement;\n","import React, { useEffect, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport \"./Avatar.scss\";\n\nfunction checkImageValidity(src) {\n return new Promise((resolve) => {\n const image = new Image();\n image.onload = () => {\n resolve(true);\n };\n image.onerror = () => {\n resolve(false);\n };\n image.src = src;\n });\n}\n\nconst AVATAR_SIZE_OPTIONS = {\n LARGE: \"large\",\n MEDIUM: \"medium\",\n SMALL: \"small\",\n};\n\nexport const Avatar = ({ size, src, defaultImage, initials, className }) => {\n const [hasValidImage, setHasValidImage] = useState(false);\n\n useEffect(() => {\n let mounted = true;\n if (!defaultImage && src) {\n checkImageValidity(src).then((res) => {\n if (mounted) {\n setHasValidImage(res);\n }\n });\n }\n return () => {\n mounted = false;\n };\n }, [defaultImage, src]);\n\n const containerClassName = classNames(\"cweb-avatar type-readonly\", className, {\n \"size-large\": size === AVATAR_SIZE_OPTIONS.LARGE,\n \"size-medium\": size === AVATAR_SIZE_OPTIONS.MEDIUM,\n \"size-small\": size === AVATAR_SIZE_OPTIONS.SMALL,\n \"display-image\": hasValidImage,\n \"display-initials\": !hasValidImage,\n });\n\n const renderAvatar = () => {\n if (defaultImage) {\n return <img className=\"avatar-image\" src={defaultImage} alt=\"User avatar image\" />;\n } else if (hasValidImage) {\n return <img className=\"avatar-image\" src={src} alt=\"User avatar image\" />;\n } else {\n return <span className=\"avatar-initials-text\">{initials}</span>;\n }\n };\n\n return (\n <div className={containerClassName}>\n <div className=\"avatar-content-container\">{renderAvatar()}</div>\n </div>\n );\n};\n\nAvatar.propTypes = {\n src: PropTypes.string,\n initials: PropTypes.string.isRequired,\n size: PropTypes.oneOf([AVATAR_SIZE_OPTIONS.LARGE, AVATAR_SIZE_OPTIONS.MEDIUM, AVATAR_SIZE_OPTIONS.SMALL]),\n defaultImage: PropTypes.string,\n className: PropTypes.string,\n};\n\nAvatar.defaultProps = {\n size: AVATAR_SIZE_OPTIONS.MEDIUM,\n defaultImage: null,\n};\n\nexport default Avatar;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\ninterface BadgeProps {\n badgeCount: number;\n className?: string;\n}\n\nconst Badge = (props: BadgeProps): JSX.Element => {\n const containerClasses = classNames(\n [\"inline-flex\", \"items-center\", \"justify-center\", \"rounded-full\", \"h-6\", \"min-w-24\", \"px-2\", \"bg-color-negative\"],\n props.className\n );\n const textClasses = classNames([\"text-xs\", \"text-white\", \"leading-none\"]);\n\n return (\n <div className={containerClasses}>\n <span className={textClasses}>{props.badgeCount}</span>\n </div>\n );\n};\n\nexport default Badge;\n","import React from \"react\";\n\ninterface SpinnerProps {\n className?: string;\n}\n\nexport const Spinner = (props: SpinnerProps): JSX.Element => {\n return (\n <svg\n className={`w-5 h-5 animate-spin ${props.className}`}\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n >\n <circle className=\"opacity-25\" cx=\"12\" cy=\"12\" r=\"10\" stroke=\"currentColor\" strokeWidth=\"4\"></circle>\n <path\n className=\"opacity-75\"\n fill=\"currentColor\"\n d=\"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z\"\n />\n </svg>\n );\n};\n","import classNames from \"classnames\";\nimport React from \"react\";\n\nimport { Spinner } from \"../Spinner/Spinner\";\n\nimport { ButtonProps } from \"./ButtonProps.type\";\n\nexport const ButtonV2 = ({\n onClick,\n text,\n icon,\n isDisabled,\n isPending,\n className,\n ...otherAttributes\n}: ButtonProps): JSX.Element => {\n if (!text && !icon) {\n console.error(\n \"A text or an icon is required to use this component, please make sure to pass at least one of them as a prop.\"\n );\n return <span>Invalid props passed to this component.</span>;\n }\n\n const buttonClassName = classNames(\n [\n \"h-11\",\n \"relative flex flex-row justify-center items-center\",\n \"border\",\n \"transition-outline transition-colors duration-300 ease-in-out\",\n \"rounded-full\",\n \"leading-none\",\n \"shadow-sm\",\n \"cursor-pointer\",\n \"focus:outline-primary\",\n ],\n {\n \"w-11\": !text && icon,\n \"pl-4 pr-6\": text && icon,\n \"px-4\": text && !icon,\n },\n {\n \"opacity-50\": isDisabled,\n \"pointer-events-none\": isDisabled || isPending,\n },\n className\n );\n\n return (\n <button\n {...otherAttributes}\n className={buttonClassName}\n type={\"button\"}\n onClick={onClick}\n disabled={isDisabled}\n aria-disabled={isDisabled}\n >\n {icon && React.createElement(icon, { className: \"w-6 h-6\" })}\n\n {isPending && (\n <span\n className=\"opacity-100\"\n // IE11 center translate fix\n style={{\n position: \"absolute\",\n left: \"50%\",\n top: \"50%\",\n transform: \"translate(-50%, -50%)\",\n }}\n >\n <Spinner className=\"text-white\" />\n </span>\n )}\n\n {text && (\n <span\n className={classNames(\"text-sm font-medium\", {\n invisible: isPending,\n \"ml-1\": icon,\n })}\n >\n {text}\n </span>\n )}\n </button>\n );\n};\n","import classNames from \"classnames\";\nimport React from \"react\";\n\nimport { ButtonV2 } from \"./ButtonV2\";\nimport { ButtonProps } from \"./ButtonProps.type\";\n\nexport const PrimaryButton = (props: ButtonProps): JSX.Element => {\n return (\n <ButtonV2\n {...props}\n className={classNames(\n [\n \"text-white\",\n \"bg-blue-800\",\n \"border-primary-transparent\",\n \"hover:bg-blue-900\",\n ],\n props.className\n )}\n />\n );\n};\n","import classNames from \"classnames\";\nimport React from \"react\";\n\nimport { ButtonV2 } from \"./ButtonV2\";\nimport { BaseButtonProps } from \"./ButtonProps.type\";\n\nexport const SecondaryButton = (props: BaseButtonProps): JSX.Element => {\n return (\n <ButtonV2\n {...props}\n className={classNames(\n [\n \"text-blue-800\",\n \"bg-white\",\n \"border-slate-300\",\n \"hover:text-blue-900\",\n \"hover:border-slate-400\",\n \"focus:border-blue-800\",\n ],\n props.className\n )}\n />\n );\n};\n","import classNames from \"classnames\";\nimport React from \"react\";\n\nimport { ButtonV2 } from \"./ButtonV2\";\nimport { BaseButtonProps } from \"./ButtonProps.type\";\n\nexport const TertiaryButton = (props: BaseButtonProps): JSX.Element => {\n return (\n <ButtonV2\n {...props}\n className={classNames(\n [\n \"text-blue-800\",\n \"bg-transparent\",\n \"border-transparent\",\n \"hover:text-blue-900\",\n \"focus:border-blue-800\",\n \"shadow-none\",\n ],\n props.className\n )}\n />\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const AddIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <rect x=\"10\" y=\"2\" width=\"4\" height=\"20\" rx=\"2\" fill=\"currentColor\" />\n <rect\n x=\"22\"\n y=\"10\"\n width=\"4\"\n height=\"20\"\n rx=\"2\"\n transform=\"rotate(90 22 10)\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const DeleteIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M6 19C6 20.1 6.9 21 8 21H16C17.1 21 18 20.1 18 19V9C18 7.9 17.1 7 16 7H8C6.9 7 6 7.9 6 9V19ZM18 4H15.5L14.79 3.29C14.61 3.11 14.35 3 14.09 3H9.91C9.65 3 9.39 3.11 9.21 3.29L8.5 4H6C5.45 4 5 4.45 5 5C5 5.55 5.45 6 6 6H18C18.55 6 19 5.55 19 5C19 4.45 18.55 4 18 4Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const EditIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M3 17.4605V20.5005C3 20.7805 3.22 21.0005 3.5 21.0005H6.54C6.67 21.0005 6.8 20.9505 6.89 20.8505L17.81 9.94055L14.06 6.19055L3.15 17.1005C3.05 17.2005 3 17.3205 3 17.4605ZM20.71 7.04055C21.1 6.65055 21.1 6.02055 20.71 5.63055L18.37 3.29055C17.98 2.90055 17.35 2.90055 16.96 3.29055L15.13 5.12055L18.88 8.87055L20.71 7.04055V7.04055Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const LeftArrowIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M13.6899 17.2902C14.0799 16.9002 14.0799 16.2702 13.6899 15.8802L9.80992 12.0002L13.6899 8.12022C14.0799 7.73022 14.0799 7.10022 13.6899 6.71022C13.2999 6.32022 12.6699 6.32022 12.2799 6.71022L7.68992 11.3002C7.29992 11.6902 7.29992 12.3202 7.68992 12.7102L12.2799 17.3002C12.6599 17.6802 13.2999 17.6802 13.6899 17.2902Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const RightArrowIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M9.31008 6.70978C8.92008 7.09978 8.92008 7.72978 9.31008 8.11978L13.1901 11.9998L9.31008 15.8798C8.92008 16.2698 8.92008 16.8998 9.31008 17.2898C9.70008 17.6798 10.3301 17.6798 10.7201 17.2898L15.3101 12.6998C15.7001 12.3098 15.7001 11.6798 15.3101 11.2898L10.7201 6.69978C10.3401 6.31978 9.70008 6.31978 9.31008 6.70978Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const ChartIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <rect x=\"2\" y=\"7\" width=\"5\" height=\"15\" rx=\"2.5\" fill=\"currentColor\" />\n <rect x=\"9\" y=\"3\" width=\"5\" height=\"19\" rx=\"2.5\" fill=\"currentColor\" />\n <rect x=\"16\" y=\"10\" width=\"5\" height=\"12\" rx=\"2.5\" fill=\"currentColor\" />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const PrintIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"19\"\n height=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M16.6 5H15V.5a.5.5 0 0 0-.5-.5h-10a.5.5 0 0 0-.5.5V5H2.4A2.4 2.4 0 0 0 0 7.4v5.2A2.4 2.4 0 0 0 2.4 15H5v2.5a.5.5 0 0 0 .5.5h8a.5.5 0 0 0 .5-.5V15h2.6a2.4 2.4 0 0 0 2.4-2.4V7.4A2.4 2.4 0 0 0 16.6 5zM5 1h9v4H5V1zm8 16H6v-5h7v5zm5-4.4a1.4 1.4 0 0 1-1.4 1.4H14v-2.5a.5.5 0 0 0-.5-.5h-8a.5.5 0 0 0-.5.5V14H2.4A1.4 1.4 0 0 1 1 12.6V7.4A1.4 1.4 0 0 1 2.4 6h14.2A1.4 1.4 0 0 1 18 7.4v5.2z\"\n fill=\"currentColor\"\n fill-rule=\"nonzero\"\n />\n </svg>\n );\n};\n","import * as React from \"react\";\n\nimport CloseIcon from \"../../assets/close.svg\";\nimport HamburgerIcon from \"../../assets/hamburger.svg\";\nimport ChevronRightBlueIcon from \"../../assets/right-arrow-blue.svg\";\nimport ChevronRightGreyIcon from \"../../assets/right-arrow-grey.svg\";\nimport ChevronLeftBlueIcon from \"../../assets/left-arrow-blue.svg\";\nimport ChevronLeftGreyIcon from \"../../assets/left-arrow-grey.svg\";\nimport SearchIcon from \"../../assets/search.svg\";\nimport SearchCancelIcon from \"../../assets/search-cancel.svg\";\nimport StarIcon from \"../../assets/starIcon.svg\";\nimport CheckIcon from \"../../assets/check-icon-primary.svg\";\n\ninterface ButtonIconProps {\n name: string;\n className?: string;\n}\n\ntype IconNames = {\n [key: string]: string;\n};\n\nconst iconSrc: IconNames = {\n // These need to be converted to svg files instead of components and added in\n // \"add\": AddIcon,\n // \"delete\": DeleteIcon,\n // \"edit\": EditIcon,\n close: CloseIcon,\n hamburger: HamburgerIcon,\n \"chevron-right-blue\": ChevronRightBlueIcon,\n \"chevron-left-blue\": ChevronLeftBlueIcon,\n \"chevron-right-grey\": ChevronRightGreyIcon,\n \"chevron-left-grey\": ChevronLeftGreyIcon,\n search: SearchIcon,\n star: StarIcon,\n check: CheckIcon,\n \"search-cancel\": SearchCancelIcon,\n};\n\nexport const ButtonIcon = (props: ButtonIconProps): JSX.Element => {\n return <img src={iconSrc[props.name]} className={props.className} />;\n};\n","// These types were added because they are used in ViewItem that is completely refactored to TS\n// Ideally they should also be used in the Button TS component, but this was outside of the scope of this task\nimport React from \"react\";\n\nimport { RestPropped } from \"../../types/general.types\";\nimport { IconProps } from \"../Icons/types/IconProps.type\";\n\nexport const BUTTON_ROLES = {\n PRIMARY: \"primary\",\n SECONDARY: \"secondary\",\n SECONDARY_DARK: \"secondaryDark\",\n TERTIARY: \"tertiary\",\n QUATERNARY: \"quaternary\",\n NEGATIVE: \"negative\",\n TEXT: \"text\",\n LINK: \"link\",\n ICON: \"icon\",\n} as const;\n\ntype BUTTON_KEYS = keyof typeof BUTTON_ROLES;\nexport type BUTTON_TYPE = typeof BUTTON_ROLES[BUTTON_KEYS];\n\nexport type ButtonType = \"button\" | \"submit\";\n\nexport interface ButtonProps extends RestPropped {\n text?: string;\n role?: BUTTON_TYPE;\n type?: ButtonType;\n title?: string;\n link?: string;\n isPending?: boolean;\n isDisabled?: boolean;\n // TODO: add specific type of ButtonEvent\n onClick?: (arg: any) => void;\n className?: string;\n // name mapping to the right svg in ButtonIcon\n iconName?: string;\n // legacy - can be removed?\n hasIcon?: boolean;\n dynamicIcon?: React.FunctionComponent<IconProps>;\n}\n","import React, { useEffect, useState } from \"react\";\nimport classNames from \"classnames\";\nimport { navigate } from \"@reach/router\";\n\nimport { Spinner } from \"../Spinner/Spinner\";\nimport { AddIcon } from \"../Icons/AddIcon\";\nimport { DeleteIcon } from \"../Icons/DeleteIcon\";\nimport { EditIcon } from \"../Icons/EditIcon\";\nimport { LeftArrowIcon } from \"../Icons/LeftArrowIcon\";\nimport { RightArrowIcon } from \"../Icons/RightArrowIcon\";\nimport { ChartIcon } from \"../Icons/ChartIcon\";\nimport { PrintIcon } from \"../Icons/PrintIcon\";\n\nimport { ButtonIcon } from \"./ButtonIcon\";\nimport { BUTTON_ROLES, ButtonProps } from \"./Button.types\";\n\n// TODO: use the Types from Button.types.ts instead of PropTypes\nfunction Button(props: ButtonProps): JSX.Element {\n const {\n text = \"\",\n role: propsRole = BUTTON_ROLES.PRIMARY,\n type = \"button\",\n title = \"\",\n link = \"\",\n isPending = false,\n isDisabled = false,\n onClick,\n className = \"\",\n iconName = \"\",\n hasIcon: hasIconProps = false,\n dynamicIcon,\n ...otherAttributes\n } = props;\n\n const hasAddIcon = className.includes(\"add-button\");\n const hasEditIcon = className.includes(\"edit-button\");\n const hasDeleteIcon = className.includes(\"delete-button\");\n const hasPrevIcon = className.includes(\"prev-button\");\n const hasNextIcon = className.includes(\"next-button\");\n const hasChartIcon = className.includes(\"chart-button\");\n const hasPrintIcon = className.includes(\"print-button\");\n const hasIcon =\n hasIconProps ||\n iconName ||\n hasAddIcon ||\n hasEditIcon ||\n hasDeleteIcon ||\n hasPrevIcon ||\n hasNextIcon ||\n hasChartIcon ||\n hasPrintIcon ||\n dynamicIcon;\n\n const isIconOnly = hasIcon && !text;\n\n const [role, setRole] = useState(propsRole);\n\n // Fix to support the all the buttons in the application\n // Ideally we want to make a better implementation of them overall, but that's beyond the\n // scope of this task.\n\n useEffect(() => {\n if ((hasAddIcon || hasEditIcon) && !text) {\n setRole(BUTTON_ROLES.SECONDARY);\n } else if (propsRole === BUTTON_ROLES.TEXT || propsRole === BUTTON_ROLES.LINK) {\n setRole(BUTTON_ROLES.TERTIARY);\n } else if (hasDeleteIcon) {\n setRole(BUTTON_ROLES.NEGATIVE);\n }\n }, []);\n\n const isButtonDisabled = (role !== BUTTON_ROLES.LINK && isDisabled) || isPending;\n const isNonPrimaryNonNegative =\n role === BUTTON_ROLES.SECONDARY || role === BUTTON_ROLES.TERTIARY || role === BUTTON_ROLES.QUATERNARY;\n\n function handleClick(event: any) {\n if (link) {\n navigate(link);\n return;\n }\n\n if (isButtonDisabled || !onClick) {\n // without this, form will be submitted, if button has type submit.\n event.preventDefault();\n return;\n }\n\n onClick(event);\n }\n\n const buttonRolesStyling = {\n primary: [\n \"bg-primary\",\n \"hover:bg-primary-dark\",\n \"text-white\",\n \"focus:outline-primary\",\n \"border\",\n \"border-solid\",\n \"border-primary-transparent\",\n ],\n secondary: [\"bg-slate-200\"],\n secondaryDark: [\"bg-slate-700\", \"hover:bg-slate-600\"],\n tertiary: [\"bg-transparent\", \"shadow-none\", \"hover:bg-slate-100\"],\n quaternary: [\"bg-white\", \"shadow-none\", \"border\", \"border-solid\", \"border-quaternary\", \"hover:border-slate-200\"],\n negative: [\n \"bg-negative\",\n \"text-negative-dark\",\n \"hover:text-negative-darker\",\n \"hover:border-negative-border\",\n \"focus:outline-negative\",\n \"border\",\n \"border-transparent\",\n ],\n link: [],\n text: [],\n icon: [],\n };\n\n const containerClassName = classNames(\n // default button classes\n [\n \"h-11\",\n \"focus:outline-none\",\n \"relative flex flex-row justify-center items-center\",\n \"shadow-sm\",\n \"transition-outline transition-colors duration-300 ease-in-out\",\n \"cursor-pointer\",\n \"rounded-full\",\n \"leading-none\",\n ],\n // ensuring the buttons are 44px high including content\n {\n \"py-2 px-2 w-11\": isIconOnly,\n \"px-4 py-3\": !isIconOnly,\n },\n className,\n {\n \"opacity-50 pointer-events-none\": isButtonDisabled,\n \"hover:text-primary-dark text-primary\": isNonPrimaryNonNegative,\n \"border border-transparent\": isNonPrimaryNonNegative,\n \"hover:border-slate-200 focus:outline-primary\": isNonPrimaryNonNegative,\n \"text-secondary-dark opacity-75\": isButtonDisabled && isNonPrimaryNonNegative,\n },\n buttonRolesStyling[role]\n );\n\n const spinnerClassNames = classNames({\n hidden: !isPending,\n \"text-white\": role === BUTTON_ROLES.PRIMARY,\n \"text-dark-gray\": isNonPrimaryNonNegative,\n \"text-negative-dark\": role === BUTTON_ROLES.TERTIARY,\n });\n\n const buttonTextClasses = classNames([\"text-sm\", \"font-medium\"], {\n invisible: isPending,\n hidden: !text,\n \"ml-3\": hasIcon,\n });\n\n return (\n <button\n {...otherAttributes}\n aria-disabled={isButtonDisabled}\n disabled={isButtonDisabled}\n className={containerClassName}\n onClick={handleClick}\n type={type}\n title={title}\n data-role={role}\n >\n {hasAddIcon && <AddIcon className=\"w-5 h-5\" />}\n {hasEditIcon && <EditIcon className=\"w-5 h-5\" />}\n {hasDeleteIcon && <DeleteIcon className=\"w-5 h-5\" />}\n {hasPrevIcon && <LeftArrowIcon className=\"w-5 h-5\" />}\n {hasNextIcon && <RightArrowIcon className=\"w-5 h-5\" />}\n {hasChartIcon && <ChartIcon className=\"w-5 h-5\" />}\n {hasPrintIcon && <PrintIcon className=\"w-5 h-5\" />}\n {iconName && <ButtonIcon name={iconName} />}\n {dynamicIcon && React.createElement(dynamicIcon, { className: \"w-5 h-5\" })}\n\n <span\n className=\"opacity-100\"\n // IE11 center translate fix\n style={{\n position: \"absolute\",\n left: \"50%\",\n top: \"50%\",\n transform: \"translate(-50%, -50%)\",\n }}\n >\n <Spinner className={spinnerClassNames} />\n </span>\n <span className={buttonTextClasses}>{text}</span>\n </button>\n );\n}\n\nexport default Button;\n\nexport { BUTTON_ROLES };\n","import React from \"react\";\n\nimport Button, { BUTTON_ROLES } from \"../Button/Button\";\n\nimport \"./GliderContainer.scss\";\n\ninterface GliderContainerProps {\n children: React.ReactNode;\n}\n\nexport const GliderContainer = (props: GliderContainerProps): JSX.Element => (\n <div className={\"relative h-full pb-6 glider-contain px-17 pb-6\"}>\n {props.children}\n <div className={\"entity-preview-left absolute top-1/2 left-0\"}>\n <Button iconName={\"chevron-left-blue\"} role={BUTTON_ROLES.QUATERNARY} />\n </div>\n <div className={\"entity-preview-right absolute top-1/2 right-0\"}>\n <Button iconName={\"chevron-right-blue\"} role={BUTTON_ROLES.QUATERNARY} />\n </div>\n <div className=\"entity-preview-dots\" />\n </div>\n);\n","import React, { useEffect, useState } from \"react\";\nimport classNames from \"classnames\";\nimport Glider from \"react-glider\";\n\nimport { GliderContainer } from \"./GliderContainer\";\n\ninterface CarouselProps {\n id: string;\n slides: React.ReactNode[];\n className?: string;\n}\n\nconst Carousel = ({ slides, className, id }: CarouselProps): JSX.Element => {\n const [isVisible, setIsVisible] = useState(false);\n useEffect(() => setIsVisible(false), [id]);\n useEffect(() => {\n // hack to force Glider to re mount when id changes\n if (!isVisible) {\n setIsVisible(true);\n }\n }, [isVisible]);\n\n return (\n isVisible ? (\n <Glider\n hasDots\n hasArrows\n skipTrack\n // draggable\n scrollLock\n rewind\n arrows={{\n prev: \".entity-preview-left\",\n next: \".entity-preview-right\",\n }}\n id={id} // this should force Glider to rebuild, but it does not\n dots={\".entity-preview-dots\"}\n className={classNames(\"h-full\", className)}\n containerElement={GliderContainer}\n >\n <div className=\"glider-track h-full\">\n {slides?.map((slide, index) => (\n <div key={index} className={\"overflow-hidden\"}>\n {slide}\n </div>\n ))}\n </div>\n </Glider>\n ) : <></>);\n};\n\nexport default Carousel;\n","import classNames from \"classnames\";\nimport React from \"react\";\n\nimport \"./Title.scss\";\n\nexport type TitleStyle = \"sm\" | \"base\" | \"lg\" | \"xl\" | \"2xl\";\n\nexport interface TextProps {\n text: string;\n type?: TitleStyle; //defaults to \"base\"\n className?: string;\n}\n\nexport const Title = (props: TextProps): JSX.Element => {\n const containerClassName = classNames(\n \"title\", //this is used to load the correct font from the css\n \"font-bold\",\n {\n \"text-slate-700\": !props.className?.match(/\\s(text-)/),\n \"text-xl\": props.type === \"sm\",\n \"text-2xl\": props.type === \"base\",\n \"text-3xl\": props.type === \"lg\",\n \"text-4xl \": props.type === \"xl\",\n \"text-6xl \": props.type === \"2xl\",\n },\n props.className\n );\n\n let ContainerElement: React.ElementType;\n\n switch (props.type) {\n case \"sm\":\n ContainerElement = \"h5\";\n break;\n case \"base\":\n ContainerElement = \"h4\";\n break;\n case \"lg\":\n ContainerElement = \"h3\";\n break;\n case \"xl\":\n ContainerElement = \"h2\";\n break;\n case \"2xl\":\n ContainerElement = \"h1\";\n break;\n default:\n ContainerElement = \"h4\";\n break;\n }\n\n return <ContainerElement className={containerClassName}>{props.text}</ContainerElement>;\n};\n\nTitle.defaultProps = {\n type: \"base\",\n};\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport Button, { BUTTON_ROLES } from \"../Button/Button\";\nimport Text from \"../Text/Text\";\nimport { Title } from \"../Title/Title\";\n\nCenteredHero.propTypes = {\n title: PropTypes.string,\n text: PropTypes.string,\n image: PropTypes.string,\n buttons: PropTypes.arrayOf(\n PropTypes.shape({\n title: PropTypes.string.isRequired,\n handleOnClick: PropTypes.func.isRequired,\n type: PropTypes.oneOf([BUTTON_ROLES.PRIMARY, BUTTON_ROLES.SECONDARY]).isRequired,\n })\n ),\n className: PropTypes.string,\n};\n\nfunction CenteredHero({ title, text, image, buttons, className }) {\n return (\n <div className={classNames(className, \"p-6 my-6 flex flex-col items-center w-200 ml-auto mr-auto\")}>\n {image && <img src={image} />}\n {title && <Title className=\"mt-8 mb-2\" text={title} type={\"base\"} />}\n {text && <Text text={text} />}\n\n {buttons?.length > 0 && (\n <div className=\"flex flex-row mt-8\">\n {buttons\n .filter((button) => button.title && button.handleOnClick && button.type)\n .map((button) => (\n <Button\n className=\"mr-4 last:mr-0\"\n key={button.title}\n role={button.type}\n title={button.title}\n text={button.title}\n onClick={button.handleOnClick}\n />\n ))}\n </div>\n )}\n </div>\n );\n}\n\nexport default CenteredHero;\n","import React, { useEffect, useState } from \"react\";\nimport classNames from \"classnames\";\n\nimport { Text } from \"../Text/Text\";\n\nimport \"./Checkbox.scss\";\n\nexport interface CheckboxProps {\n id?: string;\n // The label that will be presented as a Text\n text?: string;\n // The explanation that will be presented below it\n explanation?: string;\n type?: \"regular\" | \"switch\";\n // Set the initial value\n isChecked?: boolean;\n // Allow the user to change the input\n isDisabled?: boolean;\n name?: string;\n // This can be used to retrieve the value it is referring to through onChange\n value?: string;\n onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;\n className?: string;\n error?: boolean;\n}\n\nexport const Checkbox = ({\n id,\n text,\n explanation,\n type = \"regular\",\n isChecked = false,\n isDisabled,\n name,\n value,\n onChange,\n className,\n error,\n}: CheckboxProps): JSX.Element => {\n const [checked, setChecked] = useState(false);\n const [isFocused, setIsFocused] = useState(false);\n\n const containerClassName = classNames(\"cweb-checkbox\", className, {\n \"is-focused\": isFocused,\n \"is-checked\": checked,\n \"opacity-50 cursor-not-allowed is-disabled\": isDisabled,\n \"type-regular\": type === \"regular\",\n \"type-switch\": type === \"switch\",\n hasError: error,\n });\n\n useEffect(() => {\n setChecked(isChecked);\n }, [isChecked]);\n\n const handleChange = (event) => {\n setChecked(!checked);\n if (onChange) {\n onChange(event);\n }\n };\n\n const handleFocus = () => setIsFocused(true);\n\n const handleBlur = () => setIsFocused(false);\n\n return (\n <div className={containerClassName} data-test-id=\"checkbox\">\n <label className=\"cweb-checkbox-label\" data-test-id=\"checkbox-label\" onClick={(e) => e.stopPropagation()}>\n <input\n id={id}\n data-test-id={`checkbox-${name}`}\n className=\"cweb-checkbox-input\"\n name={name}\n type=\"checkbox\"\n checked={checked}\n disabled={isDisabled}\n value={value}\n onBlur={handleBlur}\n onFocus={handleFocus}\n onChange={handleChange}\n />\n\n <span\n className={classNames(\"cweb-checkbox-icon-container\", \"transition-colors duration-300\", {\n \"bg-primary\": checked,\n \"bg-white\": !checked,\n \"hover:bg-primary-dark\": checked,\n \"outline-primary\": isFocused,\n \"cursor-not-allowed\": isDisabled,\n \"cursor-pointer\": !isDisabled,\n })}\n data-test-id=\"checkbox-span\"\n >\n <span className=\"cweb-checkbox-icon\" />\n </span>\n\n <div className=\"flex flex-col\">\n {text && <Text className=\"ml-2 select-none text-left\" text={text} data-test-id=\"checkbox-text\" />}\n {explanation && (\n <Text\n className=\"ml-2 select-none text-left\"\n text={explanation}\n color={\"gray-500\"}\n data-test-id=\"checkbox-explanation\"\n />\n )}\n </div>\n </label>\n </div>\n );\n};\n\nexport default Checkbox;\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport ReactModal from \"react-modal\";\n\nimport \"./Modal.scss\";\nimport { Title } from \"../Title/Title\";\n\nexport const MODAL_SIZES = {\n DEFAULT: \"default\",\n WIDE: \"wide\",\n WIDER: \"wider\",\n EXTRA_SMALL: \"extra-small\",\n} as const;\n\ntype MODAL_SIZES_NAMES = keyof typeof MODAL_SIZES;\nexport type MODAL_SIZES_VALUES = typeof MODAL_SIZES[MODAL_SIZES_NAMES];\n\nexport interface ModalProps {\n children: React.ReactNode;\n type?: MODAL_SIZES_VALUES;\n isOpen?: boolean;\n shouldCloseOnOverlayClick?: boolean;\n showTitleBar?: boolean;\n title?: string;\n onCloseClick?: (event: React.MouseEvent<Element, MouseEvent> | React.KeyboardEvent<Element>) => void;\n backAltText?: string;\n closeAltText?: string;\n className?: string;\n closeButtonId?: string;\n withPadding?: boolean;\n showHeader?: boolean;\n}\n\n/**\n * Don't use this modal directly if you need to add buttons to it.\n * There's a component called <ModalWithButtons /> you can use instead.\n */\nfunction Modal({\n children,\n type = MODAL_SIZES.DEFAULT,\n isOpen = false,\n shouldCloseOnOverlayClick = true,\n showTitleBar = true,\n title,\n onCloseClick,\n closeAltText = \"Close\",\n className,\n closeButtonId,\n withPadding = false,\n showHeader = true,\n}: ModalProps): JSX.Element {\n const containerClassName = classNames(\"cweb-modal\", className, {\n \"type-default\": type === MODAL_SIZES.DEFAULT,\n \"type-wide\": type === MODAL_SIZES.WIDE,\n \"type-wider\": type === MODAL_SIZES.WIDER,\n \"type-extra-small\": type === MODAL_SIZES.EXTRA_SMALL,\n });\n\n const overlayClassName = classNames(\"cweb-modal-overlay\", {\n \"no-title-bar\": !showTitleBar,\n });\n\n ReactModal.setAppElement(\"body\");\n\n return (\n <ReactModal\n isOpen={isOpen}\n contentLabel={title}\n portalClassName=\"cweb-modal-portal\"\n overlayClassName={overlayClassName}\n bodyOpenClassName=\"cweb-modal-body-open\"\n htmlOpenClassName=\"cweb-modal-html-open\"\n onRequestClose={onCloseClick}\n shouldFocusAfterRender={false}\n shouldCloseOnOverlayClick={shouldCloseOnOverlayClick}\n className={containerClassName}\n >\n {showHeader && (\n <div\n className={classNames({\n \"cweb-modal-title-section\": showTitleBar,\n \"cweb-modal-no-title-section\": !showTitleBar,\n })}\n >\n {showTitleBar && title && <Title text={title} type=\"sm\" className=\"cweb-modal-title\" />}\n <button\n data-test-id=\"close-modal-button\"\n role=\"icon\"\n title={closeAltText}\n id={closeButtonId}\n className=\"cweb-modal-close-button\"\n onClick={onCloseClick}\n />\n </div>\n )}\n\n {children ? (\n <div className={classNames(\"cweb-modal-content\", { \"px-6 py-4\": withPadding })}>{children}</div>\n ) : null}\n </ReactModal>\n );\n}\n\nexport default Modal;\n","import classNames from \"classnames\";\nimport React from \"react\";\n\nimport Modal, { ModalProps } from \"./Modal\";\n\nexport type ButtonsAlignment = \"justify-end\" | \"justify-between\";\n\ntype ModalWithButtonProps = ModalProps & {\n buttons: [JSX.Element, JSX.Element?];\n buttonsAlignment: ButtonsAlignment;\n};\n\nexport const ModalWithButtons = (props: ModalWithButtonProps): JSX.Element => {\n const { buttons, buttonsAlignment = \"justify-between\", children, ...rest } = props;\n return (\n <Modal {...rest} withPadding={false}>\n <div className={classNames(\"cweb-modal-content\", { \"px-6 py-4\": props.withPadding })}>{children}</div>\n <div\n className={classNames(\n \"flex items-center\",\n {\n \"justify-end\": buttonsAlignment === \"justify-end\" || buttons.length === 1,\n \"justify-between\": buttonsAlignment === \"justify-between\" && buttons.length >= 2,\n },\n \"px-6 py-4\",\n \"border-t border-solid rounded-b-lg border-chrome\",\n \"bg-slate-50\"\n )}\n >\n {buttons}\n </div>\n </Modal>\n );\n};\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport Button, { BUTTON_ROLES } from \"../Button/Button\";\nimport \"./ConfirmationDialog.scss\";\nimport { ModalWithButtons } from \"../Modal/ModalWithButtons\";\nimport { MODAL_SIZES, MODAL_SIZES_VALUES } from \"../Modal/Modal\";\nimport Text from \"../Text/Text\";\nimport { BUTTON_TYPE } from \"../Button/Button.types\";\n\ninterface ConfirmationDialogTexts {\n message: string;\n confirmLabel: string;\n cancelLabel: string;\n title?: string;\n}\n\ninterface ConfirmationDialogProps {\n texts: ConfirmationDialogTexts;\n isOpen: boolean;\n onCancel: () => void;\n onConfirm: () => void;\n isProcessing: boolean;\n cancelButtonRole: BUTTON_TYPE;\n confirmButtonRole: BUTTON_TYPE;\n size: MODAL_SIZES_VALUES;\n showHeader: boolean;\n className?: string;\n}\n\nexport const ConfirmationDialog = (props: ConfirmationDialogProps): JSX.Element => {\n const calculatedClassNames = classNames(\"vitals-confirmation-dialog\", props.className);\n\n const handleOnCloseClick = () => {\n if (!props.isProcessing) {\n props.onCancel();\n }\n };\n\n const modalButtons: [JSX.Element, JSX.Element?] = [\n <Button\n key=\"confirmation-dialog-button-cancel\"\n data-test-id=\"button-cancel\"\n text={props.texts.cancelLabel}\n onClick={props.onCancel}\n isDisabled={props.isProcessing}\n role={props.cancelButtonRole}\n />,\n <Button\n key=\"confirmation-dialog-button-confirm\"\n className=\"ml-2.5\"\n data-test-id=\"button-confirm\"\n text={props.texts.confirmLabel}\n onClick={props.onConfirm}\n isPending={props.isProcessing}\n />,\n ];\n\n return (\n <ModalWithButtons\n type={props.size}\n className={calculatedClassNames}\n isOpen={props.isOpen}\n title={props.texts.title}\n onCloseClick={handleOnCloseClick}\n shouldCloseOnOverlayClick={!props.isProcessing}\n showHeader={props.showHeader}\n buttons={modalButtons}\n buttonsAlignment=\"justify-end\"\n >\n <div className=\"vitals-confirmation-dialog-content\">\n <Text text={props.texts.message} containsDangerousHtml={true} />\n </div>\n </ModalWithButtons>\n );\n};\n\nConfirmationDialog.defaultProps = {\n isProcessing: false,\n cancelButtonRole: BUTTON_ROLES.SECONDARY,\n confirmButtonRole: BUTTON_ROLES.PRIMARY,\n size: MODAL_SIZES.DEFAULT,\n showHeader: true,\n};\n","import React, { Component } from \"react\";\nimport ReactDatePicker from \"react-datepicker\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\nimport moment from \"moment\";\n\nimport Button from \"../Button/Button\";\n\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport \"./Datepicker.scss\";\n\nexport default class Datepicker extends Component {\n handleCloseButtonClick = (event) => {\n event.preventDefault();\n\n this.datepickerRef.setOpen(false);\n };\n\n getDateFormat = () => {\n const { showTimeSelect, formatDateWithTime = false } = this.props;\n\n return showTimeSelect || formatDateWithTime ? \"L LT\" : \"L\";\n };\n\n render() {\n const {\n className,\n hasCloseButton,\n closeButtonText,\n adjustDateOnChange = true,\n showMonthDropdown = true,\n showYearDropdown = true,\n shouldCloseOnSelect = false,\n allowSameDay = false,\n minDate,\n maxDate,\n isDisabled = false,\n selected,\n ...otherProps\n } = this.props;\n\n const dateFormat = this.getDateFormat();\n const pickerClassName = classNames(\"cweb-datepicker text-slate-700 text-sm\", className);\n const getCloseButtonText = () => {\n if (!closeButtonText) {\n return \"OK\";\n }\n return closeButtonText;\n };\n\n return (\n <ReactDatePicker\n {...otherProps}\n adjustDateOnChange={adjustDateOnChange}\n ref={(element) => (this.datepickerRef = element)}\n className={pickerClassName}\n calendarClassName=\"cweb-datepicker-calendar\"\n shouldCloseOnSelect={shouldCloseOnSelect}\n allowSameDay={allowSameDay}\n closeButtonText\n minDate={minDate}\n maxDate={maxDate}\n disabled={isDisabled}\n showMonthDropdown={showMonthDropdown}\n showYearDropdown={showYearDropdown}\n dateFormat={dateFormat}\n timeFormat=\"HH:mm\"\n selected={selected}\n dropdownMode=\"select\"\n >\n <div className=\"m-2\">\n {hasCloseButton ? (\n <Button\n text={getCloseButtonText()}\n className=\"w-full cweb-datepicker-close-button\"\n onClick={this.handleCloseButtonClick}\n />\n ) : null}\n </div>\n </ReactDatePicker>\n );\n }\n}\n\nDatepicker.propTypes = {\n className: PropTypes.string,\n selected: PropTypes.object,\n hasCloseButton: PropTypes.bool,\n closeButtonText: PropTypes.string,\n onChange: PropTypes.func.isRequired,\n showMonthDropdown: PropTypes.bool,\n showYearDropdown: PropTypes.bool,\n minDate: PropTypes.instanceOf(moment),\n maxDate: PropTypes.instanceOf(moment),\n isDisabled: PropTypes.bool,\n};\n","import React, { PureComponent } from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport chevronDouble from \"../../assets/chevron-double.svg\";\nimport checkmark from \"../../assets/check-icon-primary.svg\";\nimport { Text } from \"../Text/Text\";\n\nimport \"./Dropdown.scss\";\n\nconst ITEM_QUERY_FIELD_NAMES = {\n ID: \"id\",\n HIGHLIGHT_INDEX: \"highlightIndex\",\n};\n\nconst keyCodes = {\n ARROW_DOWN: 40,\n ARROW_UP: 38,\n ENTER: 13,\n TAB: 9,\n SHIFT: 16,\n ESC: 27,\n};\n\nclass Dropdown extends PureComponent {\n static addHighlightIndexToItems = (items) => {\n let index = 0;\n\n return items.map((item) => {\n if (!item.subItems) {\n const currentIndex = index;\n index = index + 1;\n\n return {\n ...item,\n highlightIndex: currentIndex,\n };\n } else {\n return {\n ...item,\n subItems: item.subItems.map((subItem) => {\n const currentIndex = index;\n index = index + 1;\n\n return {\n ...subItem,\n highlightIndex: currentIndex,\n };\n }),\n };\n }\n });\n };\n\n static getTotalItemCount = (items) => {\n return items.reduce((acc, item) => {\n if (!item.subItems) {\n return acc + 1;\n } else {\n return acc + item.subItems.length;\n }\n }, 0);\n };\n\n constructor(props) {\n super(props);\n\n const items = Dropdown.addHighlightIndexToItems(props.items);\n const selectedItem = props.initialSelectedItemId\n ? this.findItem(items, ITEM_QUERY_FIELD_NAMES.ID, props.initialSelectedItemId)\n : null;\n\n this.state = {\n totalItemCount: Dropdown.getTotalItemCount(items),\n isDropdownOpen: false,\n highlightIndex: null,\n selectedItem,\n items,\n };\n }\n\n static getDerivedStateFromProps(nextProps, prevState) {\n const items = Dropdown.addHighlightIndexToItems(nextProps.items);\n\n return {\n ...prevState,\n items: items,\n totalItemCount: Dropdown.getTotalItemCount(items),\n };\n }\n\n componentDidMount() {\n document.addEventListener(\"mousedown\", this.handleClickOutside);\n }\n\n componentWillUnmount() {\n document.removeEventListener(\"mousedown\", this.handleClickOutside);\n }\n\n handleClickOutside = (event) => {\n if (this.rootRef && !this.rootRef.contains(event.target)) {\n this.closeDropdown();\n }\n };\n\n handleKeyDown = (event) => {\n const { items, isDropdownOpen, highlightIndex } = this.state;\n\n if (event.keyCode === keyCodes.ENTER) {\n event.preventDefault();\n\n if (isDropdownOpen) {\n this.closeDropdown();\n this.setSelectedItem(this.findItem(items, ITEM_QUERY_FIELD_NAMES.HIGHLIGHT_INDEX, highlightIndex));\n this.rootRef.blur();\n } else {\n this.openDropdown();\n }\n } else if (event.keyCode === keyCodes.TAB) {\n if (event.shiftKey) {\n this.decreaseHighlightIndexIfPossible();\n } else {\n this.increaseHighlightIndexIfPossible();\n }\n } else if (event.keyCode === keyCodes.ARROW_UP) {\n event.preventDefault();\n\n this.decreaseHighlightIndexIfPossible();\n } else if (event.keyCode === keyCodes.ARROW_DOWN) {\n event.preventDefault();\n\n if (isDropdownOpen) {\n this.increaseHighlightIndexIfPossible();\n } else {\n this.openDropdown();\n }\n } else if (event.keyCode === keyCodes.ESC) {\n this.closeDropdown();\n this.rootRef.blur();\n }\n };\n\n findItem = (items, fieldName, fieldValue) => {\n let selectedItem;\n\n for (let i = 0; i < items.length; i++) {\n const item = items[i];\n\n if (item[fieldName] === fieldValue) {\n selectedItem = item;\n } else if (item.subItems) {\n for (let j = 0; j < item.subItems.length; j++) {\n const subItem = item.subItems[j];\n\n if (\n (fieldName === ITEM_QUERY_FIELD_NAMES.ID && subItem.key === fieldValue) ||\n subItem[fieldName] === fieldValue\n ) {\n selectedItem = subItem;\n break;\n }\n }\n }\n\n if (selectedItem) {\n break;\n }\n }\n\n return selectedItem;\n };\n\n openDropdown = () => {\n this.setState((prevState) => {\n return {\n isDropdownOpen: true,\n highlightIndex: prevState.selectedItem ? prevState.selectedItem.highlightIndex : 0,\n };\n });\n };\n\n closeDropdown = () => {\n this.setState({\n isDropdownOpen: false,\n highlightIndex: null,\n });\n };\n\n setSelectedItem = (item) => {\n this.setState({\n selectedItem: item,\n });\n };\n\n findSelectedItem = (selectedIndex) => {\n return this.rootRef.querySelectorAll(\".dropdown-list-item\")[selectedIndex];\n };\n\n scrollToHighlightedItem = (selectedIndex) => {\n const selectedItem = this.findSelectedItem(selectedIndex);\n if (this.dropdownListRef.scrollTo) {\n this.dropdownListRef.scrollTo(0, selectedItem.offsetTop);\n }\n };\n\n increaseHighlightIndexIfPossible = () => {\n this.setState((prevState) => {\n const newHighlightIndex =\n prevState.highlightIndex < prevState.totalItemCount - 1\n ? prevState.highlightIndex + 1\n : prevState.highlightIndex;\n\n if (newHighlightIndex !== prevState.highlightIndex) {\n this.scrollToHighlightedItem(newHighlightIndex);\n }\n\n return {\n highlightIndex: newHighlightIndex,\n };\n });\n };\n\n decreaseHighlightIndexIfPossible = () => {\n this.setState((prevState) => {\n const newHighlightIndex = prevState.highlightIndex > 0 ? prevState.highlightIndex - 1 : prevState.highlightIndex;\n\n if (newHighlightIndex !== prevState.highlightIndex) {\n this.scrollToHighlightedItem(newHighlightIndex);\n }\n\n return {\n highlightIndex: newHighlightIndex,\n };\n });\n };\n\n selectItem = (item) => {\n const { onItemSelect } = this.props;\n\n this.closeDropdown();\n this.setSelectedItem(item);\n\n onItemSelect(item);\n };\n\n renderIndividualItem = (item) => {\n const { highlightIndex } = this.state;\n const isItemSelected = item.highlightIndex === highlightIndex;\n\n const itemClassName = classNames(\"dropdown-list-item p-3\", {\n \"is-selected\": isItemSelected,\n \"flex flex-row justify-between space-x-2\": isItemSelected,\n });\n const textType = isItemSelected ? \"strong\" : \"base\";\n\n return (\n <div className={itemClassName} key={item.id} tabIndex=\"0\" onClick={() => this.selectItem(item)}>\n <Text data-test-id={item.text} text={item.text} type={textType} truncate />\n <img className={classNames({ hidden: !isItemSelected })} src={checkmark} alt=\"checked\" />\n </div>\n );\n };\n\n renderGroupedItems = (item) => {\n return (\n <div className=\"dropdown-list-item-group\" key={item.groupKey}>\n {item.title && (\n <div className=\"p-3 bg-main-background\" tabIndex=\"-1\">\n <Text\n className=\"uppercase\"\n data-test-id={item.text}\n text={item.title}\n type=\"sm\"\n color=\"gray-500\"\n truncate\n />\n </div>\n )}\n {item.subItems.map((subItem) => this.renderIndividualItem(subItem))}\n </div>\n );\n };\n\n renderItems = () => {\n const { items } = this.state;\n\n return (\n <div\n className={classNames(\"dropdown-list\", { wider: this.props.wider })}\n ref={(element) => (this.dropdownListRef = element)}\n >\n {items.map((item) => (item.subItems ? this.renderGroupedItems(item) : this.renderIndividualItem(item)))}\n </div>\n );\n };\n\n render() {\n // eslint-disable-next-line no-unused-vars\n const {\n placeholder = \"\",\n className,\n initialSelectedItemId,\n onItemSelect,\n items,\n wider,\n ...otherProps\n } = this.props;\n const { selectedItem, isDropdownOpen } = this.state;\n const containerClassName = classNames(\"cweb-dropdown\", className, { \"is-open\": isDropdownOpen });\n const onDropdownClick = isDropdownOpen ? this.closeDropdown : this.openDropdown;\n\n return (\n <div\n className={classNames(containerClassName)}\n tabIndex=\"0\"\n ref={(element) => (this.rootRef = element)}\n onKeyDown={this.handleKeyDown}\n >\n <div\n {...otherProps}\n className={classNames(\"dropdown-header space-x-2 border border-solid p-3 cursor-pointer\", {\n \"border-primary-dark\": isDropdownOpen,\n \"border-input-border hover:border-input-border-dark\": !isDropdownOpen,\n })}\n onClick={onDropdownClick}\n >\n <Text className=\"dropdown-header-title\" text={selectedItem ? selectedItem.text : placeholder} truncate />\n <img className=\"dropdown-header-icon\" src={chevronDouble} alt=\"browse icon\" />\n </div>\n {this.renderItems()}\n </div>\n );\n }\n}\n\nDropdown.propTypes = {\n items: PropTypes.arrayOf(\n PropTypes.oneOfType([\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n text: PropTypes.string.isRequired,\n key: PropTypes.string.isRequired,\n }),\n PropTypes.shape({\n subItems: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n text: PropTypes.string.isRequired,\n key: PropTypes.string.isRequired,\n })\n ).isRequired,\n title: PropTypes.string,\n groupKey: PropTypes.string.isRequired,\n }),\n ])\n ).isRequired,\n initialSelectedItemId: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n placeholder: PropTypes.string,\n className: PropTypes.string,\n onItemSelect: PropTypes.func.isRequired,\n wider: PropTypes.bool,\n};\n\nexport default Dropdown;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport NoOpenAlertsImage from \"../../assets/no-open-alerts.svg\";\nimport SearchNotFoundImage from \"../../assets/search-not-found.svg\";\nimport HappyStarImage from \"../../assets/happy-star.svg\";\nimport { Text } from \"../Text/Text\";\n\nconst imageSrc = {\n \"no-open-alerts\": NoOpenAlertsImage,\n \"search-not-found\": SearchNotFoundImage,\n \"no-notes-found\": HappyStarImage,\n};\n\ninterface EmptyListMessageProps {\n text: string;\n imageName?: keyof typeof imageSrc;\n dataTestId?: string;\n className?: string;\n}\n\nexport const EmptyListMessage = ({\n text,\n imageName,\n dataTestId = \"empty-list-message\",\n className,\n}: EmptyListMessageProps): JSX.Element => {\n return (\n <div className={classNames(\"flex flex-col items-center\", className)} data-test-id={dataTestId}>\n {imageName && <img className=\"mb-2.5\" alt=\"\" src={imageSrc[imageName]} />}\n <Text className=\"text-center\" text={text} />\n </div>\n );\n};\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport Text from \"../Text/Text\";\n\nimport \"./ErrorBlock.scss\";\n\nErrorBlock.propTypes = {\n message: PropTypes.string.isRequired,\n className: PropTypes.string,\n};\n\nfunction ErrorBlock({ message, className = \"\", ...otherProps }) {\n const containerClassName = classNames(\"cweb-error-block\", className);\n\n return (\n <div className={containerClassName}>\n <Text {...otherProps} className=\"cweb-error-block-message\" text={message} />\n </div>\n );\n}\n\nexport default ErrorBlock;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport \"./InfoBlock.scss\";\nimport { Text } from \"../Text/Text\";\n\nInfoBlock.propTypes = {\n message: PropTypes.string.isRequired,\n containsDangerousHtml: PropTypes.bool,\n className: PropTypes.string,\n};\n\nfunction InfoBlock({ message, className, containsDangerousHtml = false }) {\n const containerClassName = classNames(\"cweb-info-block\", className);\n\n return (\n <div className={containerClassName}>\n <Text text={message} containsDangerousHtml={containsDangerousHtml} />\n </div>\n );\n}\n\nexport default InfoBlock;\n","import React from \"react\";\nimport classNames from \"classnames\";\nimport ClipboardJS from \"clipboard\";\n\nimport { Text } from \"../Text/Text\";\n\ntype InfoFieldLinkType = \"none\" | \"link\" | \"clipboard\" | \"tel\";\n\ninterface InfoFieldProps {\n label: string;\n value: string;\n linkType: InfoFieldLinkType;\n supportsMultiline?: boolean;\n onCopyToClipboard?: () => void;\n icon?: JSX.Element;\n className?: string;\n}\n\nexport const InfoField = (props: InfoFieldProps): JSX.Element => {\n const clipboard = new ClipboardJS(\"button\");\n\n clipboard.on(\"success\", function (e) {\n props.onCopyToClipboard && props.onCopyToClipboard();\n e.clearSelection();\n });\n\n let ContainerElement: React.ElementType;\n let containerProps: any;\n\n switch (props.linkType) {\n case \"link\":\n ContainerElement = \"a\";\n containerProps = {\n href: props.value,\n target: \"_blank\",\n rel: \"noopener noreferrer\",\n };\n break;\n case \"tel\":\n ContainerElement = \"a\";\n containerProps = { href: `tel:${props.value}` };\n break;\n\n case \"clipboard\":\n ContainerElement = \"button\";\n containerProps = {\n type: \"button\",\n \"data-clipboard-text\": props.value,\n };\n break;\n\n case \"none\":\n default:\n ContainerElement = \"div\";\n break;\n }\n\n return (\n <div className={classNames(\"flex flex-row align-center items-center\", props.className)}>\n {props.icon}\n <ContainerElement className={\"flex flex-col overflow-hidden ml-3 first:ml-0\"} {...containerProps}>\n <Text\n text={props.label}\n type={\"sm\"}\n color={\"gray-500\"}\n className={classNames(\n { \"break-words\": props.supportsMultiline },\n { \"whitespace-no-wrap\": !props.supportsMultiline }\n )}\n />\n <Text\n className={classNames(\n { \"break-words\": props.supportsMultiline },\n { \"whitespace-no-wrap\": !props.supportsMultiline }\n )}\n text={props.value}\n truncate={!props.supportsMultiline}\n />\n </ContainerElement>\n </div>\n );\n};\n\nInfoField.defaultProps = {\n linkType: \"none\",\n};\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport cross from \"../../assets/color-variant-cross.svg\";\n\nconst INPUT_TYPES = {\n EMAIL: \"email\",\n NUMBER: \"number\",\n PASSWORD: \"password\",\n TEXT: \"text\",\n};\n\nInput.propTypes = {\n className: PropTypes.string,\n type: PropTypes.oneOf([INPUT_TYPES.EMAIL, INPUT_TYPES.NUMBER, INPUT_TYPES.PASSWORD, INPUT_TYPES.TEXT]),\n value: PropTypes.any,\n name: PropTypes.string.isRequired,\n placeholder: PropTypes.string,\n clearable: PropTypes.bool,\n maxLength: PropTypes.number,\n isDisabled: PropTypes.bool,\n withPrefix: PropTypes.string,\n withSuffix: PropTypes.string,\n icon: PropTypes.string,\n onChange: PropTypes.func.isRequired,\n onBlur: PropTypes.func,\n onFocus: PropTypes.func,\n onKeyPress: PropTypes.func,\n onKeyDown: PropTypes.func,\n id: PropTypes.string,\n setRef: PropTypes.any,\n};\n\nfunction Input({\n withSuffix = \"\",\n withPrefix = \"\",\n className = \"\",\n clearable = false,\n type = INPUT_TYPES.TEXT,\n isDisabled = false,\n icon,\n setRef = () => undefined,\n onChange,\n name,\n value,\n ...otherProps\n}) {\n const hasNoExtraContent = withPrefix === \"\" && withSuffix === \"\";\n\n let style;\n if (icon) {\n style = {\n backgroundSize: \"1.125rem\",\n backgroundPosition: \"1rem\",\n backgroundImage: `url(${icon})`,\n backgroundRepeat: \"no-repeat\",\n };\n }\n\n return (\n <div className=\"relative flex flex-row\">\n <span\n className={classNames(\n \"h-11\",\n {\n hidden: hasNoExtraContent,\n \"order-1\": withPrefix !== \"\",\n \"order-2\": withSuffix !== \"\",\n \"rounded-l border-l\": withPrefix !== \"\",\n \"rounded-r border-r\": withSuffix !== \"\",\n },\n \"border-t border-b border-solid border-input-border\",\n \"flex flex-col items-center p-3\",\n \"text-sm\",\n \"text-slate-500\",\n \"bg-main-background\"\n )}\n >\n {withSuffix || withPrefix}\n </span>\n <input\n {...otherProps}\n name={name}\n value={value}\n onChange={onChange}\n ref={setRef}\n size={otherProps.maxLength}\n type={type}\n disabled={isDisabled}\n className={classNames(\n \"cweb-input\",\n \"block\",\n { \"pl-10\": icon, \"pr-11\": clearable },\n \"h-11\",\n \"p-2\",\n \"border\",\n \"text-sm\",\n \"text-slate-700\",\n \"bg-white\",\n \"placeholder-slate-500\",\n \"border-solid\",\n \"border-input-border\",\n \"hover:border-input-border-dark\",\n \"focus:outline-primary\",\n \"transition-colors\",\n \"duration-300\",\n \"focus:border-primary\",\n {\n \"z-10\": withSuffix !== \"\" || withPrefix !== \"\", // to make sure the outline is displayed completely\n rounded: hasNoExtraContent,\n \"rounded-l\": withSuffix !== \"\",\n \"rounded-r\": withPrefix !== \"\",\n \"order-2\": withPrefix !== \"\",\n \"order-1\": withSuffix !== \"\",\n },\n \"shadow-default\",\n className\n )}\n style={style}\n />\n <span\n style={{\n background: `url(${cross}) center no-repeat`,\n backgroundSize: \"1.5rem\",\n }}\n className={classNames(\n \"absolute right-0 transform top-1/2\",\n \"-translate-y-1/2 block w-6 h-6 mr-3 cursor-pointer text-input-icon\",\n { hidden: !clearable }\n )}\n onClick={() => {\n onChange && onChange({ target: { name: name, value: \"\" }, currentTarget: { name: name, value: \"\" } });\n }}\n />\n </div>\n );\n}\n\nexport default Input;\nexport { INPUT_TYPES };\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nconst Line = ({ left, right, className }) => (\n <div className={classNames(className, \"cweb-line\", \"flex flex-row flex-no-wrap\")}>\n <div className={\"flex\"}>\n {left?.map(\n (item) =>\n item && (\n <div key={item.key ?? item.props.id} className={\"mr-3 flex items-center\"}>\n {item}\n </div>\n )\n )}\n </div>\n <div className={\"flex-grow\"} />\n <div className={\"flex\"}>\n {right?.map((item) => {\n return (\n item && (\n <div key={item.key ?? item.props.id} className={\"ml-3 first:ml-0\"}>\n {item}\n </div>\n )\n );\n })}\n </div>\n </div>\n);\n\nLine.propTypes = {\n left: PropTypes.array,\n right: PropTypes.array,\n className: PropTypes.string,\n};\n\nexport default Line;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport \"./ListItem.scss\";\n\nexport interface ListItemProps {\n className?: string;\n onClick?: any; // func\n children?: any;\n}\n\nexport const ListItem: React.FC<ListItemProps> = (props) => {\n const { children, className, onClick, ...rest } = props;\n\n const classes = classNames(\"cweb-list-item\", className, {\n \"cweb-list-item-clickable\": !!onClick,\n });\n\n return (\n <div className={classes} onClick={onClick} {...rest}>\n {children}\n </div>\n );\n};\n\nexport default ListItem;\n","import React from \"react\";\n\nimport { TertiaryButton } from \"../ButtonV2/TertiaryButton\";\nimport { LeftArrowIcon } from \"../Icons/LeftArrowIcon\";\nimport { RightArrowIcon } from \"../Icons/RightArrowIcon\";\nimport { Text } from \"../Text/Text\";\n\nimport { PaginationMenuSmallProps } from \"./PaginationMenu.types\";\n\nexport const PaginationMenuSmall = (\n props: PaginationMenuSmallProps\n): JSX.Element => {\n const handleOnChange = (event: React.MouseEvent<HTMLButtonElement>) => {\n const pageNumber = event.currentTarget.dataset.page;\n pageNumber && props.onChange(parseInt(pageNumber, 10), props.pageSize);\n };\n\n return (\n <>\n <TertiaryButton\n data-test-id=\"prev-button\"\n icon={LeftArrowIcon}\n data-page={props.currentPageNumber - 1}\n onClick={handleOnChange}\n isDisabled={props.currentPageNumber === 1}\n />\n <Text\n className=\"ml-4\"\n text={`${props.currentPageNumber} / ${props.pageCount}`}\n type=\"sm\"\n color=\"gray-500\"\n />\n <TertiaryButton\n className=\"ml-4\"\n data-test-id=\"next-button\"\n icon={RightArrowIcon}\n isDisabled={props.currentPageNumber === props.pageCount}\n data-page={props.currentPageNumber + 1}\n onClick={handleOnChange}\n />\n </>\n );\n};\n","import type { Props, StylesConfig, GroupBase } from \"react-select\";\nimport ReactSelect, { mergeStyles, SelectInstance } from \"react-select\";\nimport React from \"react\";\n\nimport checkmark from \"../../assets/check-icon-primary.svg\";\nimport doubleChevron from \"../../assets/chevron-double.svg\";\n\nfunction generateCustomStyles<Option, IsMulti extends boolean, Group extends GroupBase<Option>>(\n hasError: boolean,\n isIE11: boolean\n): StylesConfig<Option, IsMulti, Group> {\n return {\n option: (baseStyles, state) => {\n return {\n ...baseStyles,\n fontWeight: state.isSelected ? \"bold\" : \"normal\",\n fontSize: \"14px\",\n backgroundColor: \"none\",\n color: \"inherit\",\n position: \"relative\",\n padding: \"0.75rem\",\n opacity: state.isDisabled ? \"0.5\" : 1,\n \"&:after\": {\n position: \"absolute\",\n content: '\"\"',\n background: `url(${checkmark}) no-repeat center`,\n // This needs to match the proportional\n // padding in this element.\n // 0.75rem -> 12px\n right: 12,\n height: \"1rem\",\n width: \"1rem\",\n visibility: state.isSelected ? \"visible\" : \"hidden\",\n },\n transition: \"background-color 0.3s ease-in-out\",\n \"&:hover\": {\n // tailwind blue-50\n backgroundColor: state.isSelected ? \"transparent\" : \"#F2FAFD\",\n },\n pointerEvents: state.isDisabled ? \"none\" : \"auto\",\n };\n },\n container: (baseStyles) => {\n return { ...baseStyles, flexGrow: isIE11 ? 0.5 : \"initial\" };\n },\n control: (baseStyles, state) => {\n const defaultBorderColor = state.isFocused ? \"#045baa\" : \"#D1D5DB\";\n const validatedBorderColor = hasError ? \"#c53030\" : defaultBorderColor;\n\n const defaultOutline = hasError ? \"rgba(255, 98, 102, 0.3)\" : \"rgba(0, 159, 227, 0.3)\";\n const validatedOutline = `4px solid ${state.isFocused ? defaultOutline : \"transparent\"}`;\n\n return {\n ...baseStyles,\n fontSize: \"14px\",\n transition: \"border 0.3s ease-in-out\",\n height: isIE11 ? \"50px\" : \"2.75rem\",\n\n // primary outline\n outline: validatedOutline,\n\n borderColor: validatedBorderColor,\n borderWidth: \"1px !important\",\n borderStyle: \"solid\",\n borderRadius: \"4px\",\n\n boxShadow: \"0px 1px 2px rgba(0, 0, 0, 0.05)\",\n\n \"&:hover\": {\n borderColor: \"#9CA3AF\",\n // selector for the chevron\n '> [class*=\"IndicatorsContainer\"]': {\n opacity: 1,\n },\n },\n };\n },\n // The placeholder has the following css prop: grid-area: 1/1/2/3;\n // And grid-area doesn't work on IE11, so we need to style it slightly different.\n placeholder: (baseStyles) => ({\n ...baseStyles,\n fontWeight: 100,\n color: \"#6B7280\",\n paddingTop: isIE11 ? \"1.2rem\" : undefined,\n }),\n singleValue: (baseStyles) => {\n return {\n ...baseStyles,\n paddingTop: isIE11 ? \"1.2rem\" : undefined,\n fontSize: \"14px\",\n };\n },\n indicatorSeparator: () => ({\n display: \"none\",\n }),\n\n indicatorsContainer: (baseStyles) => ({\n ...baseStyles,\n opacity: 0.5,\n transition: \"opacity 0.3s ease-in-out\",\n background: `url(${doubleChevron}) no-repeat center`,\n // hiding the default indicator\n svg: {\n display: \"none\",\n },\n marginRight: \"0.75rem\",\n }),\n menu: (baseStyles) => ({\n ...baseStyles,\n zIndex: 20,\n }),\n };\n}\n\ntype CustomSelect = <Option, IsMulti extends boolean, Group extends GroupBase<Option>>(\n props: Props<Option, IsMulti, Group>,\n ref: React.RefAttributes<SelectInstance<Option, IsMulti, Group>>\n) => React.ReactElement;\n\nconst CustomSelect = React.forwardRef(\n <Option, IsMulti extends boolean, Group extends GroupBase<Option>>(\n props: Props<Option, IsMulti, Group>,\n _ref: any\n ) => {\n const { className, styles } = props;\n\n const hasError = className?.includes(\"has-error\") || false;\n const isIE11 = \"MSInputMethodContext\" in window && \"documentMode\" in document;\n const customStyles = generateCustomStyles<Option, IsMulti, Group>(hasError, isIE11);\n const mergedStyles = mergeStyles<Option, IsMulti, Group>(customStyles, styles);\n\n return <ReactSelect<Option, IsMulti, Group> {...props} styles={mergedStyles} />;\n }\n) as CustomSelect;\n\nexport default CustomSelect;\n","import { Localization, Option, PageSize } from \"./PaginationMenu.types\";\n\nconst PAGE_SIZES: PageSize[] = [50, 100, 150, 200];\n\nexport const PAGE_SIZE_OPTIONS = PAGE_SIZES.map(pageSize => {\n return {\n label: pageSize.toString(),\n value: pageSize,\n };\n});\n\nexport const getPageNumberOptions = (pageCount: number): Option[] => {\n const items: Option[] = [];\n for (let i = 1; i <= pageCount; i++) {\n items.push({\n label: i.toString(),\n value: i,\n });\n }\n return items;\n};\n\n/**\n *\n * @returns When the pageSize and resultCount params are present,\n * this function returns a text indicating the range of elements that are being displayed,\n * otherwise it returns a text indicating the current page and the page count.\n * @example 1-50 of 100\n *\n */\nexport const getSummaryText = (\n pageCount: number,\n currentPageNumber: number,\n localization: Localization,\n pageSize?: number,\n resultCount?: number\n): string => {\n if (pageSize && resultCount) {\n const lowestElement = (currentPageNumber - 1) * pageSize + 1;\n const highestElement =\n currentPageNumber === pageCount\n ? resultCount\n : currentPageNumber * pageSize;\n\n return `${lowestElement}-${highestElement} ${localization.of} ${resultCount}`;\n } else {\n return `${localization.page} ${currentPageNumber} / ${pageCount}`;\n }\n};\n","import React from \"react\";\nimport { GroupBase, SingleValue } from \"react-select\";\n\nimport { SecondaryButton } from \"../ButtonV2/SecondaryButton\";\nimport Select from \"../Select/Select\";\nimport { Text } from \"../Text/Text\";\n\nimport { Option, PaginationMenuLargeProps } from \"./PaginationMenu.types\";\nimport {\n getPageNumberOptions,\n getSummaryText,\n PAGE_SIZE_OPTIONS,\n} from \"./PaginationMenu.utils\";\n\nexport const PaginationMenuLarge = (\n props: PaginationMenuLargeProps\n): JSX.Element => {\n const handleOnPageNumberSelect = (optionSelected: SingleValue<Option>) => {\n optionSelected && props.onChange(optionSelected.value, props.pageSize);\n };\n const handleOnPageSizeSelect = (optionSelected: SingleValue<Option>) => {\n const pageSize = PAGE_SIZE_OPTIONS.find(\n option => option === optionSelected\n );\n pageSize && props.onChange(1, pageSize.value);\n };\n const handleOnPrevNextButtonClick = (\n event: React.MouseEvent<HTMLButtonElement>\n ) => {\n const newPage = event.currentTarget.dataset.page;\n newPage && props.onChange(parseInt(newPage, 10), props.pageSize);\n };\n\n return (\n <>\n <div className={\"flex flex-row items-center\"}>\n {props.pageSize && props.resultCount && (\n <>\n <Text text={props.localization.display} />\n <Select<Option, false, GroupBase<Option>>\n className={\"w-24 ml-2 mr-4\"}\n options={PAGE_SIZE_OPTIONS}\n onChange={handleOnPageSizeSelect}\n value={{\n label: props.pageSize.toString(),\n value: props.pageSize,\n }}\n menuPlacement=\"auto\"\n />\n </>\n )}\n <Text text={props.localization.page} />\n <Select<Option, false, GroupBase<Option>>\n className={\"w-24 ml-2\"}\n options={getPageNumberOptions(props.pageCount)}\n onChange={handleOnPageNumberSelect}\n value={{\n label: props.currentPageNumber.toString(),\n value: props.currentPageNumber,\n }}\n isDisabled={props.pageCount < 2}\n menuPlacement=\"auto\"\n />\n </div>\n\n <div className={\"ml-4 flex flex-row items-center\"}>\n <Text\n text={getSummaryText(\n props.pageCount,\n props.currentPageNumber,\n props.localization,\n props.pageSize,\n props.resultCount\n )}\n color=\"gray-500\"\n />\n <SecondaryButton\n data-test-id=\"prev-button\"\n text={props.localization.previous}\n data-page={props.currentPageNumber - 1}\n onClick={handleOnPrevNextButtonClick}\n isDisabled={props.currentPageNumber === 1}\n className=\"ml-4\"\n />\n <SecondaryButton\n data-test-id=\"next-button\"\n text={props.localization.next}\n isDisabled={props.currentPageNumber === props.pageCount}\n data-page={props.currentPageNumber + 1}\n onClick={handleOnPrevNextButtonClick}\n className=\"ml-4\"\n />\n </div>\n </>\n );\n};\n","import React from \"react\";\n\nimport { PaginationMenuSmall } from \"./PaginationMenuSmall\";\nimport { PaginationMenuLarge } from \"./PaginationMenuLarge\";\nimport { PaginationMenuProps } from \"./PaginationMenu.types\";\n\nexport const PaginationMenu = (props: PaginationMenuProps): JSX.Element => {\n const buildPaginationLarge = (): JSX.Element => {\n if (!props.localization) {\n console.error(\n \"Localization is required to use the non small Pagination component, please make sure to pass it as a prop.\"\n );\n return <span>Invalid props passed to this component.</span>;\n }\n return (\n <PaginationMenuLarge\n pageCount={props.pageCount}\n currentPageNumber={props.currentPageNumber}\n onChange={props.onChange}\n pageSize={props.pageSize}\n localization={props.localization}\n resultCount={props.resultCount}\n />\n );\n };\n\n return (\n <div className=\"flex flex-row w-full items-center justify-between\">\n {props.small ? (\n <PaginationMenuSmall\n pageCount={props.pageCount}\n currentPageNumber={props.currentPageNumber}\n pageSize={props.pageSize}\n onChange={props.onChange}\n />\n ) : (\n buildPaginationLarge()\n )}\n </div>\n );\n};\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport loadingImage from \"../../assets/loading.svg\";\nimport spinner from \"../../assets/spinner.svg\";\nimport graySpinner from \"../../assets/spinner-gray.svg\";\nimport { RestPropped } from \"../../types/general.types\";\n\nimport \"./LoadingIndicator.scss\";\n\nexport interface LoadingIndicatorProps extends RestPropped {\n asModal?: boolean;\n asSpinner?: boolean;\n className?: string;\n spinnerColor?: \"blue\" | \"gray\";\n}\n\nexport function LoadingIndicator({\n asModal = false,\n asSpinner = false,\n className = \"\",\n spinnerColor = \"blue\",\n ...restProps\n}: LoadingIndicatorProps): JSX.Element {\n const spinnerToRender = spinnerColor === \"blue\" ? spinner : graySpinner;\n\n const containerClassName = classNames(\"cweb-loading\", className, {\n \"as-modal\": asModal,\n });\n\n return (\n <div {...restProps} className={containerClassName}>\n <img\n src={asSpinner ? spinnerToRender : loadingImage}\n className={classNames(\"text-gray-600 fill-current stroke-current\", {\n \"h-4 w-4\": asSpinner,\n \"h-8 w-8\": !asSpinner,\n })}\n />\n </div>\n );\n}\n\nexport default LoadingIndicator;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport { Text } from \"../Text/Text\";\n\nimport { ListTablePropsConfigurationField } from \"./ListTable\";\n\nfunction isEmpty(str: string) {\n return str === null || str === undefined || (isString(str) && str.trim() === \"\");\n}\n\nfunction isString(obj?: string | any): obj is string {\n return Object.prototype.toString.call(obj) === \"[object String]\";\n}\n\nexport interface ListTableCellProps<ItemType, CellType> {\n isHeader?: boolean;\n value: string | CellType;\n configuration: ListTablePropsConfigurationField<ItemType, CellType>;\n emptyValue?: string;\n}\n\nexport function ListTableCell<ItemType, CellType>({\n isHeader = false,\n value,\n configuration,\n emptyValue,\n}: ListTableCellProps<ItemType, CellType>): JSX.Element {\n const { name, className, textProps } = configuration;\n\n const textClassName = classNames(\"text-left\", textProps?.className);\n const cellClassName = classNames(\"cweb-list-table-content-cell\", \"py-0 px-3\", className);\n\n const hasValue = (isString(value) && isEmpty(value) || value !== undefined);\n\n const returnChildren = () => {\n return (\n <>\n {!hasValue && isString(emptyValue) && (\n <Text text={emptyValue} {...textProps} className={textClassName} color={\"gray-500\"} />\n )}\n {hasValue && isString(value) && (\n <Text\n text={value}\n {...textProps}\n className={classNames(textClassName, {\n truncate: !isHeader,\n capitalize: isHeader,\n \"w-40\": !isHeader,\n })}\n />\n )}\n {hasValue && !isString(value) && value}\n </>\n );\n };\n\n return isHeader ? (\n <th className={cellClassName} key={name}>\n {returnChildren()}\n </th>\n ) : (\n <td className={classNames(cellClassName, \"max-w-40\")} key={name}>\n {returnChildren()}\n </td>\n );\n}\n\nexport default ListTableCell;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport { ListTableItem, ListTablePropsConfiguration } from \"./ListTable\";\nimport ListTableCell from \"./ListTableCell\";\n\nexport interface ListTableRowProps<ItemType extends ListTableItem, CellType> {\n item: ItemType;\n onClick?: (arg: ItemType) => void;\n configuration: ListTablePropsConfiguration<ItemType, CellType>;\n}\n\nexport function ListTableRow<ItemType extends ListTableItem, CellType>({\n item,\n onClick,\n configuration,\n}: ListTableRowProps<ItemType, CellType>): JSX.Element {\n function handleRowClick(event: React.MouseEvent) {\n event.stopPropagation();\n if (onClick) {\n onClick(item);\n }\n }\n\n return (\n <tr\n className={classNames(\"cweb-list-table-content-section\", \"h-13\", {\n \"hover:bg-slate-100 transition-colors ease-in-out duration-300 cursor-pointer\": onClick,\n \"hover:bg-white cursor-default\": !onClick,\n })}\n onClick={handleRowClick}\n key={item[configuration.idField]}\n >\n {configuration.fields.map((field) => (\n <ListTableCell\n key={field.name}\n value={field.field(item)}\n configuration={{ ...field, className: `${field.className ?? \"\"} border-b border-slate-100` }}\n emptyValue={configuration.emptyValue}\n />\n ))}\n </tr>\n );\n}\n\nexport default ListTableRow;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport { ListTableItem, ListTablePropsConfigurationField } from \"./ListTable\";\nimport ListTableCell from \"./ListTableCell\";\n\nexport interface ListTableHeaderProps<ItemType extends ListTableItem, CellType> {\n className?: string;\n configurationFields: ListTablePropsConfigurationField<ItemType, CellType>[];\n}\n\nexport function ListTableHeader<ItemType extends ListTableItem, CellType>({\n className,\n configurationFields,\n}: ListTableHeaderProps<ItemType, CellType>): JSX.Element {\n return (\n <thead className={classNames(\"cweb-list-table-header-section\", className)}>\n <tr className=\"border-b h-13 border-slate-100\">\n {configurationFields.map((field) => (\n <ListTableCell\n isHeader={true}\n key={field.name}\n value={field.title}\n configuration={{\n ...field,\n textProps: { ...field.textProps, type: \"strong\", className: \"py-4 leading-none\" },\n }}\n />\n ))}\n </tr>\n </thead>\n );\n}\n","import React, { useEffect, useState } from \"react\";\nimport classNames from \"classnames\";\n\nimport { TextProps, Text } from \"../Text/Text\";\nimport { PaginationMenu } from \"../PaginationMenu/PaginationMenu\";\nimport LoadingIndicator from \"../LoadingIndicator/LoadingIndicator\";\nimport SearchNotFoundImage from \"../../assets/search-not-found.svg\";\nimport { RestPropped } from \"../../types/general.types\";\nimport {\n Localization,\n OnPaginationChange,\n PageSize,\n} from \"../PaginationMenu/PaginationMenu.types\";\n\nimport ListTableRow from \"./ListTableRow\";\nimport { ListTableHeader } from \"./ListTableHeader\";\n\nexport type ListTableItem = RestPropped;\n\nexport interface ListTableProps<ItemType extends ListTableItem, CellType>\n extends RestPropped {\n items?: ItemType[];\n configuration: ListTablePropsConfiguration<ItemType, CellType>;\n pageCount?: number;\n currentPage?: number;\n onPaginationChange?: OnPaginationChange;\n pageSize?: PageSize;\n localization?: Localization;\n resultCount?: number;\n onRowClick?: (arg: ItemType) => void;\n isLoading?: boolean;\n showHeader?: boolean;\n className?: string;\n}\n\nexport interface ListTablePropsConfiguration<\n ItemType extends ListTableItem,\n CellType\n> {\n // this value is used if the field function is returning nothing\n emptyValue?: string;\n fields: ListTablePropsConfigurationField<ItemType, CellType>[];\n idField: keyof ItemType;\n emptyListText: string;\n}\n\nexport interface ListTablePropsConfigurationField<\n ItemType extends ListTableItem,\n CellType\n> {\n // this is used as a key and is expected to be unique. It doesn't do anything else other than guiding the developer\n name: string;\n // this sets the column title in the header\n title?: string;\n className?: string;\n // this function can return any item that will be displayed directly in the table cell\n // if this function returns a string, it will be wrapped in Text\n field: (arg: ItemType) => string | CellType;\n // if field results in a string, then these props will be spread into the Text component\n textProps?: Omit<TextProps, \"text\">;\n}\n\nexport function ListTable<ItemType extends ListTableItem, CellType>({\n items = [],\n configuration,\n pageCount = 0,\n currentPage = 1,\n onPaginationChange,\n pageSize,\n localization,\n resultCount,\n onRowClick,\n isLoading = false,\n showHeader = true,\n className,\n ...restProps\n}: ListTableProps<ItemType, CellType>): JSX.Element {\n // For not displaying empty view at creation\n const [isPristine, setIsPristine] = useState(true);\n\n useEffect(() => {\n setIsPristine(false);\n }, [items, isLoading]);\n\n const showEmptyView =\n !isPristine && !isLoading && !(items && items.length > 0);\n\n return (\n <div\n className={classNames(\n \"cweb-list-table\",\n \"relative w-full max-w-full rounded-lg overflow-hidden bg-white\",\n className\n )}\n {...restProps}\n >\n <table className=\"w-full border-collapse cweb-list-table-table\">\n {showHeader && (\n <ListTableHeader configurationFields={configuration.fields} />\n )}\n\n <tbody>\n {!isLoading &&\n items &&\n items.map(item => (\n <ListTableRow\n key={item[configuration.idField]}\n onClick={onRowClick}\n item={item}\n configuration={configuration}\n />\n ))}\n\n {isLoading && (\n <tr>\n <td colSpan={configuration.fields.length}>\n <LoadingIndicator\n className={classNames(\n \"cweb-list-table-content-loader\",\n \"relative h-16\",\n \"flex justify-center flex-row items-center\",\n \"py-0 px-3\"\n )}\n asModal={false}\n />\n </td>\n </tr>\n )}\n\n {showEmptyView && (\n <tr>\n <td colSpan={configuration.fields.length}>\n <div\n className={classNames(\n \"cweb-list-table-no-items\",\n \"flex justify-center flex-col items-center\",\n \"py-4 px-3\"\n )}\n >\n <img\n className=\"mb-4 no-item-found-image\"\n src={SearchNotFoundImage}\n alt=\"no-image-found\"\n />\n <Text\n className={classNames(\n \"no-item-found-text\",\n \"w-56 text-base text-gray-600 text-center whitespace-pre-wrap\"\n )}\n text={configuration.emptyListText}\n />\n </div>\n </td>\n </tr>\n )}\n </tbody>\n\n {!showEmptyView && pageCount > 0 && onPaginationChange && (\n <tfoot>\n <tr>\n <td colSpan={configuration.fields.length}>\n <div\n className={classNames(\n \"cweb-list-table-footer\",\n \"flex justify-center flex-row items-center\",\n \"h-20 py-4 px-4\"\n )}\n >\n <PaginationMenu\n pageCount={pageCount}\n currentPageNumber={currentPage}\n onChange={onPaginationChange}\n pageSize={pageSize}\n localization={localization}\n resultCount={resultCount}\n />\n </div>\n </td>\n </tr>\n </tfoot>\n )}\n </table>\n </div>\n );\n}\n\nexport default ListTable;\n","import React, { PureComponent } from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport Button from \"../Button/Button\";\n\nimport \"./Menu.scss\";\n\nclass Menu extends PureComponent {\n static propTypes = {\n children: PropTypes.node.isRequired,\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n isOpen: false,\n };\n }\n\n componentDidMount() {\n document.addEventListener(\"mousedown\", this.handleClickOutside);\n }\n\n componentWillUnmount() {\n document.removeEventListener(\"mousedown\", this.handleClickOutside);\n }\n\n handleClickOutside = (event) => {\n if (this.rootRef && !this.rootRef.contains(event.target)) {\n this.closeMenu();\n }\n };\n\n handleIconClick = (event) => {\n event.preventDefault();\n event.stopPropagation();\n this.openMenu();\n };\n\n openMenu = () => {\n this.setState({\n isOpen: true,\n });\n };\n\n closeMenu = () => {\n this.setState({\n isOpen: false,\n });\n };\n\n render() {\n const { children, className } = this.props;\n const { isOpen } = this.state;\n\n const containerClassName = classNames(\"cweb-menu\", className, {\n \"is-open\": isOpen,\n });\n\n return (\n <div className={containerClassName} ref={(element) => (this.rootRef = element)}>\n {isOpen ? (\n <div className=\"p-6 border shadow-md cweb-menu-content border-slate-300\">{children}</div>\n ) : (\n <Button role=\"tertiary\" onClick={this.handleIconClick} className=\"chart-button\" />\n )}\n </div>\n );\n }\n}\n\nexport default Menu;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport \"./Text.scss\";\n\nconst TEXT_TYPE_OPTIONS = {\n DEFAULT: \"default\",\n STRONG: \"strong\",\n EMPHASIZED: \"emphasized\",\n FINEPRINT: \"fineprint\",\n SMALL: \"small\",\n SMALL_DARK: \"small-dark\",\n SMALL_FINEPRINT: \"small-fineprint\",\n MICRO: \"micro\",\n ERROR: \"error\",\n};\n\nconst TEXT_LEVEL_OPTIONS = {\n INLINE: \"inline\",\n BLOCK: \"block\",\n};\n\nLegacyText.propTypes = {\n text: PropTypes.string.isRequired,\n level: PropTypes.oneOf([TEXT_LEVEL_OPTIONS.INLINE, TEXT_LEVEL_OPTIONS.BLOCK]),\n type: PropTypes.oneOf([\n TEXT_TYPE_OPTIONS.DEFAULT,\n TEXT_TYPE_OPTIONS.STRONG,\n TEXT_TYPE_OPTIONS.EMPHASIZED,\n TEXT_TYPE_OPTIONS.FINEPRINT,\n TEXT_TYPE_OPTIONS.SMALL,\n TEXT_TYPE_OPTIONS.SMALL_DARK,\n TEXT_TYPE_OPTIONS.SMALL_FINEPRINT,\n TEXT_TYPE_OPTIONS.MICRO,\n TEXT_TYPE_OPTIONS.ERROR,\n ]),\n className: PropTypes.string,\n containsDangerousHtml: PropTypes.bool,\n};\n\n/**\n * @deprecated use TextV2\n */\nfunction LegacyText({\n text,\n type = TEXT_TYPE_OPTIONS.DEFAULT,\n level = TEXT_LEVEL_OPTIONS.BLOCK,\n className = \"\",\n containsDangerousHtml = false,\n ...otherProps\n}) {\n const containerClassName = classNames(\"cweb-text\", className, {\n \"type-default\": type === TEXT_TYPE_OPTIONS.DEFAULT,\n \"type-strong\": type === TEXT_TYPE_OPTIONS.STRONG,\n \"type-emphasized\": type === TEXT_TYPE_OPTIONS.EMPHASIZED,\n \"type-small\": type === TEXT_TYPE_OPTIONS.SMALL,\n \"type-fineprint\": type === TEXT_TYPE_OPTIONS.FINEPRINT,\n \"type-small-fineprint\": type === TEXT_TYPE_OPTIONS.SMALL_FINEPRINT,\n \"level-inline\": level === TEXT_LEVEL_OPTIONS.INLINE,\n \"level-block\": level === TEXT_LEVEL_OPTIONS.BLOCK,\n \"type-small-dark\": type === TEXT_LEVEL_OPTIONS.SMALL_DARK,\n \"type-error\": type === TEXT_TYPE_OPTIONS.ERROR,\n \"text-xs\": type === TEXT_TYPE_OPTIONS.MICRO,\n });\n\n return containsDangerousHtml ? (\n <p className={containerClassName} dangerouslySetInnerHTML={{ __html: text }} {...otherProps} />\n ) : (\n <p className={containerClassName} {...otherProps}>\n {text}\n </p>\n );\n}\n\nexport default LegacyText;\n\nexport { TEXT_TYPE_OPTIONS, TEXT_LEVEL_OPTIONS };\n","export function handleImplicitSelect(implicitSelected, event, list, property) {\n /*For certain values, if one checkbox is selected\n other checkboxes have to be selected/unselected automatically */\n const newList = [...list];\n const selectCheckboxName = event.target.name;\n const isChecked = event.target.checked;\n const implicitSelectedValues = implicitSelected[selectCheckboxName];\n\n if (implicitSelectedValues) {\n implicitSelectedValues.forEach((value) => {\n const selectedIndex = newList.findIndex((checkbox) => value === checkbox.identifier);\n let upadteCheckbox;\n if (property === \"isChecked\") {\n //if normal checkbox is false the switcher must be set to false as well\n upadteCheckbox = { ...newList[selectedIndex], isChecked: isChecked, isOn: false };\n } else {\n upadteCheckbox = { ...newList[selectedIndex], [property]: isChecked };\n }\n newList.splice(selectedIndex, 1, upadteCheckbox);\n });\n }\n return newList;\n}\n","import React, { useEffect, useState } from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport Checkbox from \"../Checkbox/Checkbox\";\nimport { TEXT_TYPE_OPTIONS } from \"../Text/LegacyText\";\n\nimport { handleImplicitSelect } from \"./MultiSelectUtils\";\n\nimport \"./MultiSelect.scss\";\n\nexport function MultiSelect({\n checkboxList,\n radioLabel,\n onChange,\n validationError,\n name,\n implicitSelect,\n radioOnDemand,\n}) {\n const [list, setList] = useState(checkboxList);\n\n useEffect(() => {\n onChange({\n target: {\n name,\n value: list,\n },\n });\n }, [list]);\n\n function handleChange(event, indexSelected) {\n let newList = [...list];\n\n const isChecked = event.target.checked;\n const updateCheckbox = { ...list[indexSelected], isChecked: isChecked, isOn: false };\n newList.splice(indexSelected, 1, updateCheckbox);\n\n if (implicitSelect) {\n newList = handleImplicitSelect(implicitSelect, event, newList, \"isChecked\");\n }\n setList(newList);\n }\n\n function handleRadioChange(event, indexSelected) {\n let newList = [...list];\n\n const isChecked = event.target.checked;\n const updateCheckbox = { ...list[indexSelected], isOn: isChecked };\n newList.splice(indexSelected, 1, updateCheckbox);\n\n if (implicitSelect) {\n newList = handleImplicitSelect(implicitSelect, event, newList, \"isOn\");\n }\n\n setList(newList);\n }\n\n return (\n <ul>\n {list.map((checkbox, index) => {\n const text = [checkbox.name];\n\n if (checkbox.description && checkbox.description !== checkbox.name) {\n text.push(checkbox.description);\n }\n\n return (\n <div className=\"cweb-multiselect\" key={checkbox.identifier}>\n <Checkbox\n text={text.join(\" - \")}\n name={checkbox.identifier}\n isChecked={checkbox.isChecked || false}\n onChange={(event) => handleChange(event, index)}\n className=\"cweb-multiselect-checkbox\"\n textType={TEXT_TYPE_OPTIONS.SMALL_DARK}\n error={validationError}\n key={checkbox.identifier}\n />\n\n {radioOnDemand && (\n <div className=\"cweb-switch-wrapper\">\n <p className=\"cweb-switch-title\">{radioLabel}</p>\n <Checkbox\n type=\"switch\"\n name={`${checkbox.identifier}-toggle`}\n isChecked={checkbox.isOn}\n onChange={(event) => handleRadioChange(event, index)}\n textType={TEXT_TYPE_OPTIONS.SMALL_DARK}\n error={validationError}\n className=\"cweb-multiselect-switch\"\n isDisabled={!checkbox.isChecked}\n key={checkbox.identifier}\n />\n </div>\n )}\n </div>\n );\n })}\n </ul>\n );\n}\n\nMultiSelect.propTypes = {\n name: PropTypes.string,\n checkboxList: PropTypes.arrayOf(\n PropTypes.shape({\n isChecked: PropTypes.bool,\n name: PropTypes.string.isRequired,\n description: PropTypes.string,\n identifier: PropTypes.string.isRequired,\n })\n ),\n onChange: PropTypes.func,\n validationError: PropTypes.string,\n implicitSelect: PropTypes.object,\n radioOnDemand: PropTypes.bool,\n};\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nexport interface NavMenuLayoutProps {\n menu: JSX.Element;\n children: JSX.Element | JSX.Element[]; //rendered as the page\n patientSidebar?: JSX.Element; //if passed will show the patients sidebar\n isNavDisabled?: boolean; //don't show any navigation, for instance when constrained to a single patient\n disableScrolling?: boolean;\n}\n\n/**\n *\n * @param props {NavMenuLayoutProps} - explaining specifically the `disableScrolling` prop:\n *\n * The patient overview page has some challenges we want to overcome in regards to the multiple scrollable\n * content (the charts and the action bar with alerts, etc).\n *\n * In order to have the setup working on the patient overview page and the rest of the application, we have to\n * progamatically disable/enable if that location will have a normal scrolling mechanism with specific margin/padding,\n * or we will need to let the components take care of that.\n */\nexport const NavLayout = (props: NavMenuLayoutProps): JSX.Element => {\n return (\n <div className={\"flex flex-col mb-3 lg:mb-0 lg:flex-row h-full w-full\"}>\n {!props.isNavDisabled && (\n <>\n {props.menu}\n {props.patientSidebar && props.patientSidebar}\n </>\n )}\n <div\n data-test-id=\"page-main-content\"\n className={classNames([\"w-full\", { \"max-h-screen overflow-y-auto px-4 lg:px-8\": !props.disableScrolling }])}\n >\n {props.children}\n </div>\n </div>\n );\n};\n","import * as React from \"react\";\nimport { useState } from \"react\";\nimport { navigate } from \"@reach/router\";\nimport classNames from \"classnames\";\n\nimport { TextColor, Text } from \"../Text/Text\";\n\nexport interface NavMenuItemProps {\n href?: string;\n linkTo?: string;\n title: string;\n isSelected: boolean;\n img: string;\n imgOnHover: string;\n dataTestId: string;\n gtmEvent?: string;\n isExternal?: boolean;\n type?: \"separator\" | \"spacer\" | \"base\" | void;\n track?: (event: string) => void;\n}\n\nexport const NavMenuItem = (props: NavMenuItemProps): JSX.Element => {\n const [currentImg, setCurrentImg] = useState(props.isSelected ? props.imgOnHover : props.img);\n const [textColor, setTextColor] = useState<TextColor>(props.isSelected ? \"white\" : \"gray-200\");\n\n const classes = classNames(\n [\n \"flex\",\n \"flex-row\",\n \"items-center\",\n \"w-auto\",\n \"rounded\",\n \"px-2\",\n \"py-1\",\n \"my-2\",\n \"mx-2\",\n \"hover:bg-gray-600\",\n \"transition\",\n \"ease-in\",\n \"duration-150\",\n \"lg:last:pb-2\",\n \"focus:outline-primary\",\n ],\n {\n \"bg-nav-menu\": !props.isSelected,\n \"bg-gray-600\": props.isSelected,\n }\n );\n\n const handleOnMouseOver = () => {\n if (!props.isSelected) {\n setCurrentImg(props.imgOnHover);\n setTextColor(\"white\");\n }\n };\n\n const handleOnMouseOut = () => {\n if (!props.isSelected) {\n setCurrentImg(props.img);\n setTextColor(\"gray-200\");\n }\n };\n\n return (\n <a\n href={props.href ?? props.linkTo ?? \"#\"}\n data-test-id={props.dataTestId}\n className={classes}\n onMouseOver={handleOnMouseOver}\n onMouseOut={handleOnMouseOut}\n onClick={handleMenuClick}\n >\n <img src={currentImg} className={\"mr-4 ml-0\"} />\n <Text type={\"strong\"} text={props.title} color={textColor} />\n </a>\n );\n\n function handleMenuClick(event: React.MouseEvent<HTMLElement>) {\n if (event.metaKey || event.ctrlKey) {\n // if ctrl or meta key are held on click, allow default behavior of opening link in new tab\n return;\n }\n\n event.preventDefault();\n\n props.track && props.gtmEvent && props.track(props.gtmEvent);\n\n if (props.isExternal) {\n window.open(props.href, \"_blank\");\n } else if (props.href) {\n window.location.assign(props.href);\n } else if (props.linkTo) {\n navigate(props.linkTo);\n }\n }\n};\n","import * as React from \"react\";\n\nimport { NavMenuItem, NavMenuItemProps } from \"./NavMenuItem\";\n\ninterface NavMenuContentProps {\n items: Array<NavMenuItemProps>;\n}\n\nexport const NavMenuContent = (props: NavMenuContentProps): JSX.Element => {\n return (\n <div className={\"flex flex-col bg-nav-menu w-46 pl-1 py-2 lg:relative shadow-lg\"}>\n {props.items.map((item, index) => {\n if (item.type === \"separator\") {\n return <div key={`${item.type}-${index}`} className={\"border-b ml-3 border-slate-600\"} />;\n } else if (item.type === \"spacer\") {\n return <div key={`${item.type}-${index}`} className={\"mt-auto\"} />;\n } else {\n return <NavMenuItem {...item} key={item.title} />;\n }\n })}\n </div>\n );\n};\n","import * as React from \"react\";\nimport { useState } from \"react\";\n\nimport Button from \"../Button/Button\";\n\nimport { NavMenuContent } from \"./NavMenuContent\";\n\nexport function NavMenu(props) {\n const [isOpen, setIsOpen] = useState(false);\n\n const handleToggleOpen = () => {\n setIsOpen(!isOpen);\n };\n\n return (\n <>\n <div className={\"hidden h-screen lg:flex\"}>\n <NavMenuContent items={props.items} />\n </div>\n <div className={\"lg:hidden relative bg-nav-header w-screen flex items-center p-2 shadow-lg\"}>\n <Button\n hasIcon={true}\n role=\"secondaryDark\"\n iconName={isOpen ? \"close\" : \"hamburger\"}\n onClick={handleToggleOpen}\n />\n </div>\n {isOpen && (\n <div className=\"absolute z-20\">\n <NavMenuContent items={props.items} />\n </div>\n )}\n </>\n );\n}\n","import classNames from \"classnames\";\nimport React from \"react\";\n\nexport interface TextLinkProps {\n text: string;\n enabled?: boolean;\n href?: string;\n rel?: string;\n target?: string;\n onClick?: () => void;\n className?: string;\n}\n\nexport const TextLink = (props: TextLinkProps): JSX.Element => {\n const className = classNames(\n \"text-sm hover:underline\",\n {\n \"cursor-pointer\": props.enabled,\n \"cursor-default\": !props.enabled,\n },\n {\n \"text-blue-800\": props.enabled,\n \"text-slate-800\": !props.enabled,\n },\n {\n \"hover:text-blue-900\": props.enabled,\n \"hover:text-slate-900\": !props.enabled,\n }\n );\n\n return (\n <a\n href={props.href}\n rel={props.rel}\n target={props.target}\n onClick={props.onClick}\n className={classNames(className, props.className)}\n >\n {props.text}\n </a>\n );\n};\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport { Text } from \"../Text/Text\";\nimport { TextLink } from \"../TextLink/TextLink\";\n\nexport type NotificationBannerColor = \"base\" | \"blue\" | \"red\" | \"green\" | \"amber\";\n\nexport interface NotificationBannerLinkProps {\n text: string;\n enabled: boolean;\n handleClick?: () => void;\n}\n\ninterface NotificationBannerProps {\n text: string;\n color?: NotificationBannerColor;\n icon?: JSX.Element;\n linkProps?: NotificationBannerLinkProps;\n className?: string;\n}\n\nexport const NotificationBanner = (props: NotificationBannerProps): JSX.Element => {\n const classes = classNames(\n \"w-full px-6 py-2 flex flex-row items-center border border-solid rounded\",\n props.className,\n {\n \"bg-slate-100 border-slate-700\": props.color === \"base\",\n \"bg-blue-100 border-blue-700\": props.color === \"blue\",\n \"bg-red-100 border-red-700\": props.color === \"red\",\n \"bg-green-100 border-green-700\": props.color === \"green\",\n \"bg-yellow-100 border-yellow-700\": props.color === \"amber\",\n }\n );\n\n return (\n <div className={classes}>\n {props.icon}\n <Text className=\"first:ml-0 ml-4\" text={props.text} color={props.color} />\n {props.linkProps && (\n <TextLink\n className=\"ml-4\"\n text={props.linkProps.text}\n enabled={props.linkProps.enabled}\n rel=\"noopener\"\n target=\"_blank\"\n onClick={props.linkProps.handleClick}\n />\n )}\n </div>\n );\n};\n\nNotificationBanner.defaultProps = {\n color: \"base\",\n onButtonClick: undefined,\n};\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\n//import Breadcrumbs from \"../Breadcrumbs/Breadcrumbs\";\nimport LoadingIndicator from \"../LoadingIndicator/LoadingIndicator\";\n//import { SmartNavMenu } from \"../../components/NavMenu/SmartNavMenu\";\nimport { NavLayout } from \"../NavMenu/NavLayout\";\nimport { Title } from \"../Title/Title\";\n//import { shouldPageShowFeedbackBlock } from \"../../common/utils/locationUtils\";\n//import { FeedbackBlock } from \"../FeedbackBlock/FeedbackBlock\";\n//import { ERROR_PAGE_ID } from \"../../components/ErrorPages/ErrorPage\";\n\nimport \"./Page.scss\";\n\n//TODO this page needs to be refactored\n\n/**\n * Renders page's content, if `isLoading` is false otherwise shows loading indicator.\n *\n * `breadcrumbs`, `title` and `content` can be lazy properties, that is parameterless functions which return actual value.\n * `children` property has priority over `content` property.\n *\n * @typedef {{ name?: string, icon?: string|Object, link?: string}} Breadcrumb\n *\n */\nfunction Page({\n dataTestId = \"page\",\n breadcrumbs,\n title,\n accessories,\n accessoryPosition = \"right\",\n className,\n children,\n content,\n isLoading = false,\n isPolling = false,\n spinnerColor = \"blue\",\n navLayoutProps = {},\n showFeedbackBlock = false,\n feedbackBlock = <></>,\n navMenu,\n id,\n}) {\n const mergedPageClasses = classNames(\"cweb-page\", className);\n const containerClassnames = classNames(\"cweb-page-container\");\n\n if (isLoading) {\n return (\n <div className={mergedPageClasses}>\n <LoadingIndicator asModal={false} />\n </div>\n );\n }\n\n const maybeTitle = title instanceof Function ? title() : title;\n\n const accessoryClasses = classNames(\"cweb-page-header mb-4\", {\n [`accessory-${accessoryPosition}`]: true,\n });\n\n const accessoriesContent = accessories instanceof Function ? accessories() : accessories;\n const childrenOrContentProp = children || (content instanceof Function ? content() : content);\n\n return (\n <div id={id} className={containerClassnames}>\n <NavLayout menu={navMenu} {...navLayoutProps}>\n <div className={mergedPageClasses} data-test-id={dataTestId}>\n <div className={accessoryClasses}>\n <Title data-test-id={`${dataTestId}-title`} text={maybeTitle} />\n {isPolling && <LoadingIndicator asSpinner={true} className={\"page-spinner\"} spinnerColor={spinnerColor} />}\n {accessoriesContent}\n </div>\n {childrenOrContentProp}\n </div>\n\n {!isLoading && feedbackBlock}\n </NavLayout>\n </div>\n );\n}\n\nconst breadcrumbItemShape = PropTypes.shape({\n name: PropTypes.string,\n icon: PropTypes.string,\n link: PropTypes.string,\n});\n\nPage.propTypes = {\n breadcrumbs: PropTypes.oneOfType([PropTypes.arrayOf(breadcrumbItemShape), PropTypes.func]),\n isLoading: PropTypes.bool,\n isFetching: PropTypes.bool,\n spinnerColor: PropTypes.oneOf([\"blue\", \"gray\"]),\n title: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),\n accessories: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n accessoryPosition: PropTypes.oneOf([\"right\", \"bottom\", \"left\"]),\n content: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.element), PropTypes.element, PropTypes.func]),\n id: PropTypes.string,\n navLayoutProps: PropTypes.object,\n};\n\nexport default Page;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport \"./Title.scss\";\n\nconst TITLE_TYPE_OPTIONS = {\n DEFAULT: \"default\",\n BIG: \"big\",\n SMALL: \"small\",\n TINY: \"tiny\",\n BOLD: \"bold\",\n};\n\nLegacyTitle.propTypes = {\n text: PropTypes.string.isRequired,\n type: PropTypes.oneOf([\n TITLE_TYPE_OPTIONS.DEFAULT,\n TITLE_TYPE_OPTIONS.BIG,\n TITLE_TYPE_OPTIONS.SMALL,\n TITLE_TYPE_OPTIONS.TINY,\n TITLE_TYPE_OPTIONS.BOLD,\n ]),\n className: PropTypes.string,\n};\n\nfunction LegacyTitle({ text, type, className = \"\", ...otherProps }) {\n let ContainerElement;\n\n const containerClassName = classNames(\"cweb-title\", className, {\n \"type-default\": !type || type === TITLE_TYPE_OPTIONS.DEFAULT,\n \"type-big\": type === TITLE_TYPE_OPTIONS.BIG,\n \"type-small\": type === TITLE_TYPE_OPTIONS.SMALL,\n \"type-tiny\": type === TITLE_TYPE_OPTIONS.TINY,\n \"type-bold\": type === TITLE_TYPE_OPTIONS.BOLD,\n });\n\n switch (type) {\n case TITLE_TYPE_OPTIONS.DEFAULT:\n case TITLE_TYPE_OPTIONS.BOLD:\n case TITLE_TYPE_OPTIONS.BIG:\n ContainerElement = \"h1\";\n break;\n\n case TITLE_TYPE_OPTIONS.SMALL:\n case TITLE_TYPE_OPTIONS.TINY:\n ContainerElement = \"h3\";\n break;\n\n default:\n ContainerElement = \"h1\";\n break;\n }\n\n return (\n <ContainerElement {...otherProps} className={containerClassName}>\n {text}\n </ContainerElement>\n );\n}\n\nexport default LegacyTitle;\n\nexport { TITLE_TYPE_OPTIONS };\n","import React from \"react\";\n\nimport { Text } from \"../Text/Text\";\n\nexport interface StepProps {\n title: string;\n stepNumber: number;\n active: boolean;\n localization: {step: string};\n}\n\nexport const Step = ({ title, stepNumber, active, localization }: StepProps): JSX.Element => {\n const barColor = active ? \"bg-blue-800\" : \"bg-slate-200\";\n\n return (\n <div className={\"w-full\"}>\n <div className={`w-full h-1 mb-2 rounded ${barColor}`}></div>\n <Text text={`${localization.step} ${stepNumber}`} type={\"strong\"} color={active ? \"blue\" : \"gray-500\"} />\n <Text text={title} type={\"strong\"} />\n </div>\n );\n};\n","import React from \"react\";\n\nimport { Step } from \"./Step\";\n\ninterface StepsProps {\n orderedStepTitles: Array<string>;\n currentStep: number; //start count from 1\n className?: string;\n localization: {step: string};\n}\n\nexport const Steps = ({ orderedStepTitles, currentStep, className, localization }: StepsProps): JSX.Element => {\n const renderedSteps = orderedStepTitles.map((stepTitle, index) => (\n <Step\n key={`step-${index}-${stepTitle.split(\" \")[0]}`}\n title={stepTitle}\n stepNumber={index + 1}\n active={index + 1 <= currentStep}\n localization={localization}\n />\n ));\n\n return <div className={`flex flex-row justify-items-stretch space-x-6 ${className}`}>{renderedSteps}</div>;\n};\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport LoadingIndicator from \"../LoadingIndicator/LoadingIndicator\";\nimport LegacyTitle, { TITLE_TYPE_OPTIONS } from \"../Title/LegacyTitle\";\nimport Button, { BUTTON_ROLES } from \"../Button/Button\";\nimport Line from \"../Line/Line\";\nimport { NavLayout } from \"../NavMenu/NavLayout\";\nimport { Steps } from \"../Steps/Steps\";\n\nimport \"./CRUDPage.scss\";\n\nfunction CRUDPage({\n dataTestId = \"page\",\n title,\n stepTitles,\n currentStep = 1,\n submitButtonProps,\n deleteButtonProps,\n cancelButtonProps,\n icon,\n className,\n children,\n isLoading,\n isSubmitting,\n navMenuComponent,\n localization,\n}) {\n const mergedClasses = classNames(\"cweb-crud-page max-w-3xl\", className);\n const containerClassnames = classNames(\"cweb-crud-page-container mb-20\");\n\n const submitButton = submitButtonProps && (\n <Button\n data-test-id=\"submit-button\"\n key=\"submit-button\"\n /* eslint-disable-next-line */\n onClick={submitButtonProps.handler}\n role={BUTTON_ROLES.PRIMARY}\n text={submitButtonProps.name}\n isPending={isSubmitting}\n />\n );\n const deleteButton = deleteButtonProps && (\n <Button\n data-test-id=\"delete-button\"\n key=\"delete-button\"\n /* eslint-disable-next-line */\n onClick={deleteButtonProps.handler}\n role={BUTTON_ROLES.NEGATIVE}\n text={deleteButtonProps.name}\n />\n );\n const cancelButton = cancelButtonProps && (\n <Button\n data-test-id=\"cancel-button\"\n key=\"cancel-button\"\n /* eslint-disable-next-line */\n onClick={cancelButtonProps.handler}\n role={BUTTON_ROLES.SECONDARY}\n text={cancelButtonProps.name}\n />\n );\n\n const renderHeader = () => {\n return (\n <div className=\"flex flex-row justify-start align-center\">\n <img id=\"title-icon\" src={icon} className=\"mr-4 w-11 h-11\" alt={\"title icon\"} />\n <LegacyTitle id=\"title-text\" text={title} type={TITLE_TYPE_OPTIONS.BOLD} />\n </div>\n );\n };\n\n return (\n <div className={containerClassnames}>\n <NavLayout menu={navMenuComponent}>\n <>\n {isLoading && (\n <div className={classNames(mergedClasses, \"cweb-crud-page-loading-container\")}>\n <div className=\"flex flex-row justify-start align-center\">{renderHeader()}</div>\n <LoadingIndicator className=\"crud-page-loader\" asModal={false} />\n </div>\n )}\n\n {!isLoading && (\n <div className={mergedClasses} data-test-id={dataTestId}>\n <div className=\"flex flex-row justify-start align-center\">{renderHeader()}</div>\n\n <div className={\"cweb-crud-page-form-container\"}>\n {stepTitles && stepTitles.length > 0 && (\n <Steps orderedStepTitles={stepTitles} currentStep={currentStep} className={\"mb-4\"} localization={localization}/>\n )}\n {children}\n <Line\n left={[cancelButton, deleteButton]}\n right={[submitButton]}\n className={\"cweb-crud-page-button-line\"}\n />\n </div>\n </div>\n )}\n </>\n </NavLayout>\n </div>\n );\n}\n\nCRUDPage.propTypes = {\n isLoading: PropTypes.bool,\n title: PropTypes.string.isRequired,\n stepTitles: PropTypes.array,\n currentStep: PropTypes.number,\n submitButtonProps: PropTypes.shape({ name: PropTypes.string, handler: PropTypes.func }),\n deleteButtonProps: PropTypes.shape({ name: PropTypes.string, handler: PropTypes.func }),\n cancelButtonProps: PropTypes.shape({ name: PropTypes.string, handler: PropTypes.func }),\n className: PropTypes.string,\n icon: PropTypes.string,\n isSubmitting: PropTypes.bool,\n navMenuComponent: PropTypes.elementType,\n localization: PropTypes.object,\n};\n\nexport default CRUDPage;\n","import { useState, useEffect } from \"react\";\nimport debounce from \"lodash.debounce\";\n\nexport const useWindowDimensions = () => {\n const [height, setHeight] = useState(window.innerHeight);\n const [width, setWidth] = useState(window.innerWidth);\n\n useEffect(() => {\n const handleResize = debounce(() => {\n if (height !== window.innerHeight) {\n setHeight(window.innerHeight);\n }\n if (width !== window.innerWidth) {\n setWidth(window.innerWidth);\n }\n }, 500);\n\n window.addEventListener(\"resize\", handleResize);\n\n return () => {\n window.removeEventListener(\"resize\", handleResize);\n };\n }, []);\n\n return { height, width };\n};\n","import React, { useCallback, useEffect, useState } from \"react\";\nimport classNames from \"classnames\";\n\nimport phoneMockup from \"../../assets/phone-mockup.svg\";\n\nimport { useWindowDimensions } from \"./useWindowDimensions\";\n\ninterface PreviewPhoneProps {\n className?: string;\n children: React.ReactNode;\n}\n\nconst PreviewPhone = ({ className, children }: PreviewPhoneProps): JSX.Element => {\n const phoneHeight = 637;\n const phoneWidth = 340;\n const [scale, setScale] = useState(1);\n const [showPhone, setShowPhone] = useState(false);\n const { height: windowHeight, width: windowWidth } = useWindowDimensions();\n\n useEffect(() => {\n // hack to offset rendering the phone after the first render\n // this way the scale calculation works without fixed width\n setShowPhone(true);\n }, []);\n\n const containerCallbak = useCallback(\n (containerElement) => {\n if (!containerElement) {\n return;\n }\n const { clientWidth: containerWidth, clientHeight: containerHeight } = containerElement;\n const heightScale = containerHeight < phoneHeight ? containerHeight / phoneHeight : 1;\n const widthScale = containerWidth < phoneWidth ? containerWidth / phoneWidth : 1;\n setScale(heightScale < widthScale ? heightScale : widthScale);\n },\n [windowHeight, windowWidth]\n );\n\n return (\n showPhone ? (\n <div ref={containerCallbak} className={classNames(\"relative h-full flex items-center justify-center\", className)}>\n <div className={\"absolute\"} style={{ width: phoneWidth, height: phoneHeight, transform: `scale(${scale})` }}>\n <div className={\"h-full px-5 pt-11 pb-20\"}>\n <div className={\"h-full overflow-y-auto bg-white\"}>{children}</div>\n </div>\n <img className=\"absolute top-0 pointer-events-none\" src={phoneMockup} alt=\"phone mockup\" />\n </div>\n </div>) : <></>\n );\n};\n\nexport default PreviewPhone;\n","import React, { PureComponent } from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport \"./Radio.scss\";\nimport { Text } from \"../Text/Text\";\n\nclass Radio extends PureComponent {\n static propTypes = {\n className: PropTypes.string,\n text: PropTypes.string,\n isChecked: PropTypes.bool.isRequired,\n isDisabled: PropTypes.bool,\n name: PropTypes.string.isRequired,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n onChange: PropTypes.func,\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n isFocused: false,\n };\n }\n\n handleChange = (event) => {\n const { onChange } = this.props;\n\n if (onChange) {\n onChange(event);\n }\n };\n\n handleFocus = () => {\n this.setState({\n isFocused: true,\n });\n };\n\n handleBlur = () => {\n this.setState({\n isFocused: false,\n });\n };\n\n render() {\n const { className, isChecked, isDisabled, name, value, text } = this.props;\n\n const { isFocused } = this.state;\n\n const containerClassName = classNames(\"cweb-radio mr-4\", className, {\n \"is-focused\": isFocused,\n \"is-checked\": isChecked,\n \"opacity-50\": isDisabled,\n });\n\n return (\n <div className={containerClassName} ref={this.containerRef}>\n <label className=\"cweb-radio-label\">\n <input\n className=\"cweb-radio-input\"\n name={name}\n type=\"radio\"\n checked={isChecked}\n disabled={isDisabled}\n value={value}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onChange={this.handleChange}\n />\n\n <span\n className={classNames(\"cweb-radio-icon-container\", {\n \"bg-primary\": isChecked,\n \"hover:bg-primary-dark\": isChecked,\n \"outline-primary\": isFocused,\n \"cursor-not-allowed\": isDisabled,\n \"cursor-pointer\": !isDisabled,\n })}\n >\n <span className=\"cweb-radio-icon\" />\n </span>\n\n {text && (\n <Text\n className={classNames(\"cweb-radio-label-text\", {\n \"cursor-not-allowed\": isDisabled,\n })}\n text={text}\n />\n )}\n </label>\n </div>\n );\n }\n}\n\nexport default Radio;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport Radio from \"../Radio/Radio\";\n\nimport \"./RadioGroup.scss\";\n\nfunction RadioGroup({\n className,\n radioClassName,\n name,\n selectedOption,\n isVertical,\n radioOptions,\n onChange,\n error,\n isDisabled,\n ...otherOptions\n}) {\n const containerClassName = classNames(\"cweb-radio-group\", { vertical: isVertical }, { hasError: error }, className);\n\n function handleChange(event) {\n if (!isDisabled && onChange) {\n onChange(event);\n }\n }\n\n return (\n <div className={containerClassName} {...otherOptions}>\n {radioOptions.map((option) => (\n <Radio\n {...option}\n key={option.value}\n className={radioClassName}\n name={name}\n isChecked={selectedOption === option.value}\n onChange={handleChange}\n isDisabled={isDisabled}\n />\n ))}\n </div>\n );\n}\n\nRadioGroup.propTypes = {\n className: PropTypes.string,\n radioClassName: PropTypes.string,\n name: PropTypes.string,\n selectedOption: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n isVertical: PropTypes.bool,\n radioOptions: PropTypes.arrayOf(\n PropTypes.shape({\n text: PropTypes.string,\n info: PropTypes.string,\n isDisabled: PropTypes.bool,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n })\n ).isRequired,\n onChange: PropTypes.func,\n};\n\nexport default RadioGroup;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport { ButtonProps } from \"../Button/Button.types\";\nimport Button from \"../Button/Button\";\nimport { Title } from \"../Title/Title\";\nimport { LoadingIndicator, LoadingIndicatorProps } from \"../LoadingIndicator/LoadingIndicator\";\nimport { RestPropped } from \"../../types/general.types\";\n\nimport \"./Section.scss\";\n\nexport interface SectionProps extends RestPropped {\n title?: string;\n buttons?: ButtonProps[];\n className?: string;\n isLoading?: boolean;\n loadingIndicatorProps?: LoadingIndicatorProps;\n}\n\nexport function Section({\n title,\n buttons,\n children,\n className,\n isLoading = false,\n loadingIndicatorProps,\n ...restProps\n}: React.PropsWithChildren<SectionProps>): JSX.Element {\n return (\n <div\n {...restProps}\n className={classNames(\n \"cweb-section\",\n \"flex justify-start flex-col items-start\",\n \"rounded-lg\",\n \"mx-0 my-4\",\n \"bg-white\",\n \"w-full\",\n className\n )}\n >\n {(title || buttons) && (\n <div className=\"cweb-section-header\" data-test-id=\"section-header\">\n {title && (\n <div className=\"flex flex-row items-center\">\n <Title text={title} className=\"mr-3 cweb-section-title\" type=\"sm\" />\n {isLoading && <LoadingIndicator asSpinner={true} {...loadingIndicatorProps} />}\n </div>\n )}\n <div className={classNames(\"cweb-section-header-buttons-container\", \"flex flex-row space-x-3\")}>\n {buttons &&\n buttons.length > 0 &&\n buttons.map((button) => <Button {...button} key={button.key || button.id || button.text} />)}\n </div>\n </div>\n )}\n\n <div className=\"cweb-section-content w-full\">{!isLoading && children}</div>\n </div>\n );\n}\n\nexport default Section;\n","import { useEffect } from \"react\";\n\nconst useOutsideClick = (ref, callback) => {\n const handleClick = (e) => {\n if (ref.current && !ref.current.contains(e.target)) {\n callback();\n }\n };\n\n useEffect(() => {\n document.addEventListener(\"click\", handleClick);\n\n return () => {\n document.removeEventListener(\"click\", handleClick);\n };\n });\n};\n\nexport default useOutsideClick;\n","import classNames from \"classnames\";\nimport React, { useEffect, useRef, useState } from \"react\";\n\nimport useOutsideClick from \"../../utils/useOutsideClick\";\nimport Button from \"../Button/Button\";\nimport Checkbox from \"../Checkbox/Checkbox\";\nimport { IconProps } from \"../Icons/types/IconProps.type\";\nimport Text from \"../Text/Text\";\n\nexport interface ConfigurationItem {\n itemId: string;\n itemName: string;\n on: boolean;\n}\n\nexport interface SettingsMenuButtonProps {\n configuration: ConfigurationItem[];\n onConfigurationChange: (newConfig: ConfigurationItem) => void;\n shiftMenuTo?: \"right\" | \"right-md\" | \"left\" | \"left-md\";\n buttonTitle?: string;\n menuTitle?: string;\n iconComponent: React.FunctionComponent<IconProps>;\n}\n\nexport const SettingsMenuButton = (props: SettingsMenuButtonProps): JSX.Element => {\n const {\n configuration: configFromProps = [],\n onConfigurationChange,\n shiftMenuTo,\n buttonTitle,\n iconComponent,\n menuTitle,\n } = props;\n const [innerConfiguration, setInnerConfiguration] = useState(configFromProps);\n const [showMenu, setShowMenu] = useState(false);\n\n const menuRef = useRef<HTMLDivElement | null>(null);\n\n useOutsideClick(menuRef, () => {\n if (showMenu) {\n setShowMenu(false);\n }\n });\n\n useEffect(() => {\n setInnerConfiguration(configFromProps);\n }, [configFromProps]);\n\n const handleShowMenu = () => {\n setShowMenu(true);\n };\n\n const handleOnVibilitySwitchChanged = (event: React.ChangeEvent<HTMLInputElement>) => {\n const { id, name, checked } = event.currentTarget;\n\n const newConfig = innerConfiguration.find((config) => config.itemId === id && config.itemName === name) as ConfigurationItem;\n\n onConfigurationChange({ ...newConfig, on: checked });\n };\n\n if (!iconComponent) {\n console.error(\"A an icon component is required to use this component, please make sure to pass it as a prop. \");\n return <span>Invalid props passed to this component.</span>;\n }\n\n return (\n <div onClick={handleShowMenu} className=\"relative\">\n <Button dynamicIcon={iconComponent} onClick={handleShowMenu} text={buttonTitle} role=\"tertiary\" />\n\n <div\n ref={menuRef}\n className={classNames(\n \"cursor-default transition-all transform duration-300\",\n \"absolute -top-1 z-30\",\n \"rounded w-80 max-h-78 overflow-y-auto\",\n \"bg-white shadow-md\",\n \"border border-slate-300\",\n {\n \"-left-54\": shiftMenuTo === \"left\",\n \"-right-54\": shiftMenuTo === \"right\",\n \"-left-68\": shiftMenuTo === \"left-md\",\n \"-right-68\": shiftMenuTo === \"right-md\",\n \"transform -translate-x-1/2 left-1/2\": !shiftMenuTo, // centering the menu in the Y axis of the button\n },\n {\n \"opacity-0 pointer-events-none\": !showMenu,\n \"opacity-100\": showMenu,\n }\n )}\n >\n {menuTitle && (\n <div className=\"w-full p-3 h-11 bg-slate-50\">\n <Text type=\"sm\" className=\"uppercase\" text={menuTitle} />\n </div>\n )}\n {innerConfiguration.map((innerConfig) => (\n <div key={innerConfig.itemId} className=\"flex items-center justify-between w-full p-3 h-11\">\n <Text text={innerConfig.itemName} />\n <Checkbox\n name={innerConfig.itemName}\n id={innerConfig.itemId}\n type=\"switch\"\n isChecked={innerConfig.on}\n onChange={handleOnVibilitySwitchChanged}\n />\n </div>\n ))}\n </div>\n </div>\n );\n};\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport \"./SwitcherItem.scss\";\nimport { Text } from \"../Text/Text\";\n\nSwitcherItem.propTypes = {\n name: PropTypes.string,\n icon: PropTypes.shape({\n default: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n active: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n showBadge: PropTypes.bool,\n }),\n index: PropTypes.number.isRequired,\n isSelected: PropTypes.bool,\n onSelect: PropTypes.func.isRequired,\n className: PropTypes.string,\n};\n\nfunction SwitcherItem({ className, icon, index, isSelected = false, name, onSelect }) {\n const handleItemClick = () => onSelect(index);\n const itemClassName = classNames(\n \"\",\n className,\n \"flex flex-row h-11 p-2 items-center border-solid border-t border-b border-l border-slate-200 transition duration-300 cursor-pointer \",\n \"first:rounded-l-xl last:rounded-r-xl last:border-r\",\n {\n \"bg-slate-100 text-slate-500\": isSelected,\n \"bg-slate-50 hover:bg-slate-100 hover:text-slate-500 text-slate-300\": !isSelected,\n }\n );\n\n let calculatedIcon;\n if (icon && typeof icon.default === \"string\") {\n calculatedIcon = isSelected ? (\n <img alt=\"\" className=\"\" src={icon.active} />\n ) : (\n <img alt=\"\" className=\"\" src={icon.default} />\n );\n } else if (icon) {\n calculatedIcon = isSelected ? icon.active : icon.default;\n }\n\n return (\n <li className={itemClassName} onClick={handleItemClick}>\n {\n <span className=\"relative block\">\n {icon?.showBadge && (\n <div className={\"absolute top-0 right-0 w-2.5 h-2.5 bg-red-400 rounded-xl border-slate-50 border-2 \"} />\n )}\n {calculatedIcon}\n </span>\n }\n\n {name && <Text text={name} color={isSelected ? \"base\" : \"gray-500\"} />}\n </li>\n );\n}\n\nexport default SwitcherItem;\n","import React, { useEffect, useState } from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport SwitcherItem from \"./SwitcherItem\";\n\nfunction Switcher({ selectedIndex = -1, onChange, className, itemClassName, items }) {\n const [currentSelection, setCurrentSelection] = useState(selectedIndex);\n\n useEffect(() => {\n setCurrentSelection(selectedIndex);\n }, [selectedIndex]);\n\n const handleItemSelect = (index) => {\n onChange(index);\n };\n\n return (\n <ul\n className={classNames(\"cweb-switcher\", className, \"flex list-none p-0 m-0\")}\n data-test-id={\"switcher-container\"}\n >\n {items.map((item, index) => {\n return (\n <SwitcherItem\n key={JSON.stringify(item)}\n name={item.name}\n icon={item.icon}\n index={index}\n isSelected={currentSelection === index}\n onSelect={handleItemSelect}\n className={itemClassName}\n />\n );\n })}\n </ul>\n );\n}\n\nSwitcher.propTypes = {\n items: PropTypes.arrayOf(\n PropTypes.shape({\n name: PropTypes.string,\n icon: PropTypes.shape({\n default: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n active: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n showBadge: PropTypes.bool,\n }),\n key: PropTypes.string,\n })\n ).isRequired,\n onChange: PropTypes.func.isRequired,\n selectedIndex: PropTypes.number,\n className: PropTypes.string,\n itemClassName: PropTypes.string,\n};\n\nexport default Switcher;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport { Text } from \"../Text/Text\";\nimport Badge from \"../Badge/Badge\";\nimport LoadingIndicator from \"../LoadingIndicator/LoadingIndicator\";\n\nexport interface TabItemDetails {\n title: string | JSX.Element;\n badgeCount?: number;\n isLoading?: boolean;\n dataTestId?: string;\n}\n\ninterface TabbarItemProps extends TabItemDetails {\n index: number;\n isSelected?: boolean;\n onSelect?: (index: number) => void;\n className?: string;\n}\n\nconst TabbarItem = ({\n title,\n index,\n isSelected,\n onSelect,\n className,\n badgeCount = 0,\n isLoading = false,\n dataTestId = \"\",\n}: TabbarItemProps): JSX.Element => {\n const handleTabClick = () => onSelect && onSelect(index);\n\n const itemClassName = classNames(\n \"flex first:ml-0 ml-2 flex-row cursor-pointer py-2 px-3 rounded-lg focus:outline-primary transition ease-in duration-150\",\n className,\n {\n \"bg-slate-100 text-slate-700 hover:text-slate-700 focus:text-slate-700\": isSelected,\n \"bg-slate-50 text-slate-500 hover:bg-slate-100 hover:text-slate-500 focus:text-slate-500 opacity-75\": !isSelected,\n }\n );\n\n return (\n <div className={itemClassName} onClick={handleTabClick} data-test-id={dataTestId}>\n {typeof title === \"string\" && <Text text={title} type={isSelected ? \"strong\" : \"base\"} inline />}\n {typeof title !== \"string\" && title}\n {badgeCount > 0 && <Badge className=\"ml-1\" badgeCount={badgeCount} />}\n {isLoading && <LoadingIndicator asSpinner={true} spinnerColor={\"gray\"} className={\"w-6\"} />}\n </div>\n );\n};\n\nexport default TabbarItem;\n","import React from \"react\";\n\nimport TabbarItem, { TabItemDetails } from \"./TabbarItem\";\n\ninterface TabbarProps {\n tabs?: TabItemDetails[];\n selectedIndex?: number;\n onSelect?: (index: number) => void;\n className?: string;\n}\n\nexport const Tabbar = ({ tabs, selectedIndex, onSelect, className = \"\" }: TabbarProps): JSX.Element => {\n return (\n <div className={`flex flex-row w-full bg-white rounded-xl ${className}`}>\n {tabs?.map((tabItemProps, index) => {\n const itemProps = {\n index,\n onSelect,\n isSelected: selectedIndex === index,\n ...tabItemProps,\n };\n\n return <TabbarItem key={tabItemProps.dataTestId ?? index} {...itemProps} />;\n })}\n </div>\n );\n};\n\nexport default Tabbar;\n","import React from \"react\";\nimport {Link, LinkGetProps, NavigateFn, WindowLocation} from \"@reach/router\";\n\nimport Select from \"../Select/Select\";\n\ninterface TabLinkItem {\n url: URL;\n text: string;\n}\n\ninterface TabLinksProps {\n patientUuid: string;\n items: Array<TabLinkItem>;\n navigate: NavigateFn;\n location: WindowLocation;\n}\n\nconst TabLinksSelect = ({ items, navigate, location }: { items: Array<TabLinkItem>, navigate: NavigateFn, location: WindowLocation }): JSX.Element => {\n const options = items.map(({ url, text }) => ({ value: url, label: text }));\n\n const handleChange = (selected: any) => {\n navigate(selected?.value?.href);\n };\n\n return (\n <Select\n value={options.filter(({ value }) => location?.href === value?.href)}\n options={options}\n onChange={handleChange}\n />\n );\n};\n\nconst TabLinks = ({ patientUuid, items, navigate, location }: TabLinksProps): JSX.Element => {\n const linkProps = ({ isCurrent }: LinkGetProps) => {\n return isCurrent\n ? {\n className:\n \"mr-2 bg-slate-100 is-selected py-3 px-4 rounded-lg text-sm font-semibold transition ease-in duration-150 text-slate-700 hover:text-slate-700 focus:text-slate-700 focus:outline-primary\",\n }\n : {\n className:\n \"mr-2 text-slate-500 py-3 px-4 text-sm hover:bg-slate-100 hover:text-slate-500 focus:text-slate-500 rounded-lg transition ease-in duration-150 focus:outline-primary\",\n };\n };\n\n return (\n <>\n <div className={\"w-full block xl:hidden bg-white p-2\"}>\n <TabLinksSelect items={items} navigate={navigate} location={location}/>\n </div>\n <div className={\"w-full hidden xl:flex bg-white p-2 rounded-xl\"}>\n {items.map(({ text, url }) => (\n <Link key={`${patientUuid}_${text}`} to={url.pathname} getProps={linkProps}>\n {text}\n </Link>\n ))}\n </div>\n </>\n );\n};\n\nexport default TabLinks;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport Tag, { TagProps } from \"./Tag\";\n\nexport enum TagSize {\n \"small\" = \"small\",\n \"base\" = \"base\",\n}\n\ninterface TagGroupProps {\n tags: TagProps[];\n tagSize?: TagSize;\n className?: string;\n}\n\nconst TagGroup = ({ tags, tagSize = TagSize.base, className }: TagGroupProps): JSX.Element => (\n <div className={classNames(\"flex flex-row flex-wrap\", className)}>\n {tags.map((tag) => (\n <Tag size={tagSize} {...tag} className={classNames(\"mr-2 last:mr-0 mb-2\")} />\n ))}\n </div>\n);\n\nexport default TagGroup;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport { Text } from \"../Text/Text\";\n\nimport { TagSize } from \"./TagGroup\";\n\nexport enum TagColorTheme {\n Red = \"red\",\n Amber = \"amber\",\n Green = \"green\",\n Gray = \"gray\",\n Blue = \"blue\",\n}\n\nexport interface TagProps {\n text: string;\n colorTheme?: TagColorTheme;\n size?: TagSize;\n className?: string;\n}\n\nconst Tag = ({ text, colorTheme = TagColorTheme.Gray, className, size = TagSize.base }: TagProps): JSX.Element => {\n const containerClassName = classNames(\"inline py-1 px-2 rounded-lg\", className, {\n \"bg-red-100 text-red-700\": colorTheme === TagColorTheme.Red,\n \"bg-orange-100 text-amber-700\": colorTheme === TagColorTheme.Amber,\n \"bg-green-100 text-green-800\": colorTheme === TagColorTheme.Green,\n \"bg-slate-100 text-slate-600\": colorTheme === TagColorTheme.Gray,\n \"bg-blue-50 text-blue-800\": colorTheme === TagColorTheme.Blue,\n });\n\n return (\n <div className={containerClassName}>\n <Text inline color={\"inherit\"} text={text} type={size === TagSize.small ? \"sm\" : \"base\"} />\n </div>\n );\n};\n\nexport default Tag;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport \"./Textarea.scss\";\n\nconst RESIZE_TYPES = {\n NONE: \"none\",\n BOTH: \"both\",\n HORIZONTAL: \"horizontal\",\n VERTICAL: \"vertical\",\n};\n\nTextarea.propTypes = {\n className: PropTypes.string,\n value: PropTypes.string,\n name: PropTypes.string.isRequired,\n placeholder: PropTypes.string,\n maxLength: PropTypes.number,\n rows: PropTypes.number,\n resizable: PropTypes.oneOf([RESIZE_TYPES.BOTH, RESIZE_TYPES.HORIZONTAL, RESIZE_TYPES.VERTICAL, RESIZE_TYPES.NONE]),\n isDisabled: PropTypes.bool,\n icon: PropTypes.string,\n onChange: PropTypes.func.isRequired,\n onBlur: PropTypes.func,\n onFocus: PropTypes.func,\n onKeyPress: PropTypes.func,\n onKeyDown: PropTypes.func,\n onCtrlEnter: PropTypes.func,\n};\n\nfunction Textarea(props) {\n const {\n className,\n value,\n name,\n placeholder,\n maxLength,\n rows = 4,\n resizable = RESIZE_TYPES.VERTICAL,\n isDisabled = false,\n icon,\n onChange,\n onBlur,\n onFocus,\n onKeyPress,\n onKeyDown,\n onCtrlEnter,\n ...otherProps\n } = props;\n\n let style;\n\n if (icon) {\n style = {\n backgroundImage: `url(${icon})`,\n };\n }\n\n return (\n <textarea\n {...otherProps}\n name={name}\n value={value}\n placeholder={placeholder}\n onChange={onChange}\n onBlur={onBlur}\n onFocus={onFocus}\n onKeyPress={onKeyPress}\n onKeyDown={(event) => {\n onKeyDown?.();\n const { ctrlKey, metaKey, key } = event;\n\n if ((ctrlKey || metaKey) && key === \"Enter\") {\n onCtrlEnter?.();\n }\n }}\n maxLength={maxLength}\n rows={rows}\n disabled={isDisabled}\n className={classNames(\n \"cweb-textarea\",\n className,\n \"p-2\",\n \"border\",\n \"placeholder-gray-500\",\n \"text-sm\",\n \"border-solid\",\n \"border-input-border\",\n \"hover:border-input-border-dark\",\n \"focus:outline-primary\",\n \"transition-colors\",\n \"duration-300\",\n \"w-full\",\n \"focus:border-primary\",\n {\n \"has-icon\": !!icon,\n resizable: resizable === RESIZE_TYPES.BOTH,\n \"resizable-x\": resizable === RESIZE_TYPES.HORIZONTAL,\n \"resizable-y\": resizable === RESIZE_TYPES.VERTICAL,\n }\n )}\n style={style}\n />\n );\n}\n\nexport default Textarea;\n","import React, { useEffect, useMemo, useRef } from \"react\";\nimport PropTypes from \"prop-types\";\nimport ReactQuill from \"react-quill\";\n\nimport \"react-quill/dist/quill.snow.css\";\nimport \"./TextEditor.scss\";\n\nexport default function TextEditor({ defaultValue, onValueChange, placeholder }) {\n const formats = [\"bold\", \"italic\", \"underline\", \"strike\", \"list\", \"bullet\", \"link\"];\n const toolbarLastGroup = [\"link\", \"video\"];\n const quillRef = useRef();\n\n\n useEffect(() => {\n if (quillRef.current) {\n const quillInstance = quillRef.current;\n const tooltipSave = quillInstance.editor.theme.tooltip.save;\n\n quillInstance.editor.theme.tooltip.save = function () {\n // overwrite save link functionality\n let url = this.textbox.value;\n\n if (url.indexOf(\"http\") === -1 || url.indexOf(\"https\") === -1) {\n url = `https://${url}`;\n this.textbox.value = url;\n }\n tooltipSave.call(this);\n };\n }\n }, []);\n\n const modules = useMemo(() => {\n return {\n toolbar: {\n container: [\n [\"bold\", \"italic\", \"underline\", \"strike\"],\n [{ list: \"ordered\" }, { list: \"bullet\" }],\n toolbarLastGroup,\n ],\n },\n };\n }, []);\n\n return (\n <ReactQuill\n ref={quillRef}\n theme=\"snow\"\n modules={modules}\n placeholder={placeholder}\n formats={formats}\n value={defaultValue}\n onChange={onValueChange}\n />\n );\n}\n\nTextEditor.propTypes = {\n defaultValue: PropTypes.string,\n placeholder: PropTypes.string,\n onValueChange: PropTypes.func.isRequired,\n};\n","import React, { useEffect, useState } from \"react\";\nimport { EditorState, convertToRaw, ContentState } from \"draft-js\";\nimport { Editor } from \"react-draft-wysiwyg\";\nimport draftToHtml from \"draftjs-to-html\";\nimport htmlToDraft from \"html-to-draftjs\";\n\nimport \"react-draft-wysiwyg/dist/react-draft-wysiwyg.css\";\nimport \"./TextEditorV2.scss\";\n\nexport const TextEditorV2 = ({ defaultValue, onValueChange, locale }) => {\n const [editorState, setEditorState] = useState(EditorState.createEmpty());\n\n useEffect(() => {\n const { contentBlocks, entityMap } = htmlToDraft(defaultValue);\n setEditorState(EditorState.createWithContent(ContentState.createFromBlockArray(contentBlocks, entityMap)));\n }, []);\n\n const onEditorStateChange = (state) => {\n setEditorState(state);\n onValueChange(draftToHtml(convertToRaw(state.getCurrentContent())));\n };\n\n return (\n <div className=\"editor\">\n <Editor\n toolbar={{\n options: [\"inline\", \"list\", \"link\", \"textAlign\", \"history\"],\n inline: {\n options: [\"bold\", \"italic\", \"underline\"],\n },\n list: {\n options: [\"unordered\", \"ordered\"],\n },\n link: {\n showOpenOptionOnHover: false,\n defaultTargetOption: \"_blank\",\n },\n }}\n editorState={editorState}\n onEditorStateChange={onEditorStateChange}\n wrapperClassName=\"mb-6\"\n toolbarClassName=\"border border-solid border-color-border-primary\"\n editorClassName=\"border border-solid border-color-border-primary h-56\"\n localization={{\n locale: locale,\n }}\n />\n </div>\n );\n};\n\nexport default TextEditorV2;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport classNames from \"classnames\";\n\nimport LegacyText from \"../Text/LegacyText\";\nimport \"./TextListItem.scss\";\nimport ListItem from \"../ListItem/ListItem\";\n\nfunction TextListItem(props) {\n const { text, icon, className, iconClass, onClick, ...rest } = props;\n\n const mergedClasses = classNames(\"cweb-text-list-item\", className);\n const iconClasses = classNames(\"cweb-text-list-item-icon\", iconClass);\n\n return (\n <ListItem className={mergedClasses} onClick={onClick} {...rest}>\n {icon && <img className={iconClasses} src={icon} alt=\"\" />}\n <LegacyText text={text} />\n </ListItem>\n );\n}\n\nTextListItem.propTypes = {\n text: PropTypes.string.isRequired,\n icon: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n className: PropTypes.string,\n iconClass: PropTypes.string,\n onClick: PropTypes.func,\n};\n\nexport default TextListItem;\n","import React from \"react\";\nimport classNames from \"classnames\";\n\nimport Text, { TextProps } from \"../Text/Text\";\nimport Button from \"../Button/Button\";\nimport { RestPropped } from \"../../types/general.types\";\nimport { ButtonProps } from \"../Button/Button.types\";\n\nexport interface ViewItemProps<AccessoryType extends JSX.Element> extends RestPropped {\n titleProps?: TextProps;\n // deprecated: use titleProps instead\n title?: string;\n titleAccessory?: AccessoryType;\n // these props are injected in a Text component, allowing for customisation\n contentProps?: TextProps[];\n // these strings are injected in a default Text component\n // deprecated: use contentProps instead\n content?: string[];\n // if contentProps and content are both empty or null, this value will be presented instead\n defaultContent?: string;\n className?: string;\n buttons?: ButtonProps[];\n}\n\nexport function ViewItem<AccessoryType extends JSX.Element> ({\n titleProps,\n title,\n titleAccessory,\n contentProps,\n content,\n defaultContent = \"-\",\n className,\n buttons,\n ...restProps\n}: ViewItemProps<AccessoryType>): JSX.Element {\n const titlePropsMerged = titleProps ?? { text: title ?? defaultContent };\n const contentPropsMerged =\n contentProps ??\n content?.map((line) => {\n return { text: line, className: \"cweb-view-content-text\" } as TextProps;\n });\n\n return (\n <div className={classNames(\"vitals-view-item\", className)} {...restProps}>\n <div className={\"vitals-view-item-title-line flex justify-start flex-row items-start\"}>\n {titlePropsMerged && (\n <Text\n className={classNames(titlePropsMerged.className, \"vitals-view-item-title mb-1 mr-2\")}\n color=\"gray-500\"\n {...titlePropsMerged}\n />\n )}\n {titleAccessory}\n </div>\n {contentPropsMerged &&\n contentPropsMerged?.map((textProps) => <Text {...textProps} key={textProps.key || textProps.text} />)}\n {(!contentPropsMerged || contentPropsMerged?.length === 0) && <Text text={defaultContent} key=\"empty-text\" />}\n\n <div className=\"flex flex-row cweb-view-buttons\" key=\"cweb-view-buttons\">\n {buttons &&\n buttons.map((button) => (\n <Button\n {...button}\n className={classNames(\"cweb-view-button ml-3\", button.className)}\n key={button.key || button.text}\n />\n ))}\n </div>\n </div>\n );\n}\n\nexport default ViewItem;\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const AlertsIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M14 19.5C14 20.163 13.7893 20.7989 13.4142 21.2678C13.0391 21.7366 12.5304 22 12 22C11.4696 22 10.9609 21.7366 10.5858 21.2678C10.2107 20.7989 10 20.163 10 19.5L14 19.5Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M10 4C10 2.89543 10.8954 2 12 2C13.1046 2 14 2.89543 14 4V5H10V4Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M5 11C5 7.13401 8.13401 4 12 4C15.866 4 19 7.13401 19 11V17H5V11Z\"\n fill=\"currentColor\"\n />\n <rect\n x=\"3\"\n y=\"15.5\"\n width=\"18\"\n height=\"2.5\"\n rx=\"1.25\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const BellIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M14 19.5C14 20.163 13.7893 20.7989 13.4142 21.2678C13.0391 21.7366 12.5304 22 12 22C11.4696 22 10.9609 21.7366 10.5858 21.2678C10.2107 20.7989 10 20.163 10 19.5L14 19.5Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M10 4C10 2.89543 10.8954 2 12 2C13.1046 2 14 2.89543 14 4V5H10V4Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M5 11C5 7.13401 8.13401 4 12 4C15.866 4 19 7.13401 19 11V17H5V11Z\"\n fill=\"currentColor\"\n />\n <rect\n x=\"3\"\n y=\"15.5\"\n width=\"18\"\n height=\"2.5\"\n rx=\"1.25\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const ChatBoxIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n width=\"20\"\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n height=\"19\"\n viewBox=\"0 0 20 19\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M18 0H2C0.9 0 0 0.9 0 2V17.59C0 18.48 1.08 18.93 1.71 18.3L4 16H18C19.1 16 20 15.1 20 14V2C20 0.9 19.1 0 18 0ZM11.57 9.57L10.45 12.01C10.27 12.4 9.72 12.4 9.54 12.01L8.42 9.57L5.98 8.45C5.59 8.27 5.59 7.72 5.98 7.54L8.42 6.42L9.54 3.98C9.72 3.59 10.27 3.59 10.45 3.98L11.57 6.42L14.01 7.54C14.4 7.72 14.4 8.27 14.01 8.45L11.57 9.57Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const CheckIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M18.7071 7.29289C19.0976 7.68342 19.0976 8.31658 18.7071 8.70711L10.7071 16.7071C10.3166 17.0976 9.68342 17.0976 9.29289 16.7071L5.29289 12.7071C4.90237 12.3166 4.90237 11.6834 5.29289 11.2929C5.68342 10.9024 6.31658 10.9024 6.70711 11.2929L10 14.5858L17.2929 7.29289C17.6834 6.90237 18.3166 6.90237 18.7071 7.29289Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const ChevronDoubleIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"8\"\n height=\"14\"\n viewBox=\"0 0 8 14\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M4 0C4.26522 5.96046e-08 4.51957 0.105357 4.70711 0.292893L7.70711 3.29289C8.09763 3.68342 8.09763 4.31658 7.70711 4.70711C7.31658 5.09763 6.68342 5.09763 6.29289 4.70711L4 2.41421L1.70711 4.70711C1.31658 5.09763 0.683417 5.09763 0.292893 4.70711C-0.0976311 4.31658 -0.097631 3.68342 0.292893 3.29289L3.29289 0.292893C3.48043 0.105357 3.73478 0 4 0ZM0.292893 9.29289C0.683417 8.90237 1.31658 8.90237 1.70711 9.29289L4 11.5858L6.29289 9.29289C6.68342 8.90237 7.31658 8.90237 7.70711 9.29289C8.09763 9.68342 8.09763 10.3166 7.70711 10.7071L4.70711 13.7071C4.31658 14.0976 3.68342 14.0976 3.29289 13.7071L0.292893 10.7071C-0.0976311 10.3166 -0.0976311 9.68342 0.292893 9.29289Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const CrossIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M7.05037 5.63664C6.65984 5.24612 6.02668 5.24612 5.63615 5.63664C5.24563 6.02717 5.24563 6.66033 5.63616 7.05086L10.5862 12.0009L5.63618 16.9509C5.24566 17.3415 5.24566 17.9746 5.63618 18.3652C6.02671 18.7557 6.65987 18.7557 7.0504 18.3652L12.0004 13.4151L16.9499 18.3646C17.3404 18.7551 17.9736 18.7551 18.3641 18.3646C18.7546 17.974 18.7546 17.3409 18.3641 16.9504L13.4146 12.0009L18.3641 7.05145C18.7546 6.66093 18.7546 6.02776 18.3641 5.63724C17.9736 5.24671 17.3404 5.24671 16.9499 5.63724L12.0004 10.5867L7.05037 5.63664Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const DownArrowIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n >\n <path\n fill=\"currentColor\"\n fill-rule=\"nonzero\"\n d=\"M12.762 6.57l-.48-.382A.944.944 0 0 0 11.696 6a.9.9 0 0 0-.578.188L8 8.663 4.88 6.188A.9.9 0 0 0 4.304 6a.944.944 0 0 0-.584.188l-.475.382C3.08 6.7 3 6.854 3 7.034c0 .183.081.336.244.458l4.178 3.315A.87.87 0 0 0 8 11a.91.91 0 0 0 .584-.193l4.178-3.315A.567.567 0 0 0 13 7.034c0-.177-.08-.331-.238-.464z\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const DragIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M8 4C7.44772 4 7 4.44772 7 5V7C7 7.55228 7.44772 8 8 8H10C10.5523 8 11 7.55228 11 7V5C11 4.44772 10.5523 4 10 4H8ZM14 4C13.4477 4 13 4.44772 13 5V7C13 7.55228 13.4477 8 14 8H16C16.5523 8 17 7.55228 17 7V5C17 4.44772 16.5523 4 16 4H14ZM7 11C7 10.4477 7.44772 10 8 10H10C10.5523 10 11 10.4477 11 11V13C11 13.5523 10.5523 14 10 14H8C7.44772 14 7 13.5523 7 13V11ZM14 10C13.4477 10 13 10.4477 13 11V13C13 13.5523 13.4477 14 14 14H16C16.5523 14 17 13.5523 17 13V11C17 10.4477 16.5523 10 16 10H14ZM7 17C7 16.4477 7.44772 16 8 16H10C10.5523 16 11 16.4477 11 17V19C11 19.5523 10.5523 20 10 20H8C7.44772 20 7 19.5523 7 19V17ZM14 16C13.4477 16 13 16.4477 13 17V19C13 19.5523 13.4477 20 14 20H16C16.5523 20 17 19.5523 17 19V17C17 16.4477 16.5523 16 16 16H14Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nexport const EmptyStateDashboardIcon = (): JSX.Element => {\n return (\n <svg width=\"450\" height=\"300\" viewBox=\"0 0 450 300\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M450 291C450 264.079 444.18 237.422 432.873 212.55C421.566 187.678 404.992 165.079 384.099 146.043C363.206 127.007 338.402 111.907 311.104 101.605C283.806 91.3025 254.547 86 225 86C195.453 86 166.194 91.3025 138.896 101.605C111.598 111.907 86.7941 127.007 65.901 146.043C45.0078 165.079 28.4344 187.678 17.1271 212.55C5.81979 237.422 -2.58312e-06 264.079 0 291L225 291H450Z\"\n fill=\"#82D6F8\"\n />\n <path\n d=\"M95 73.0081C95 65.8239 100.824 60 108.008 60H342.154C349.338 60 355.162 65.8239 355.162 73.0081V223.252C355.162 230.436 349.338 236.26 342.154 236.26H108.008C100.824 236.26 95 230.436 95 223.252V73.0081Z\"\n fill=\"#1F2937\"\n />\n <path\n d=\"M167.846 70.4062H340.756C342.965 70.4062 344.756 72.1971 344.756 74.4062V221.853C344.756 224.062 342.965 225.853 340.756 225.853H167.846V70.4062Z\"\n fill=\"#F9FAFB\"\n />\n <path\n d=\"M173.049 99.772C173.049 97.5628 174.84 95.772 177.049 95.772H249.699C251.908 95.772 253.699 97.5628 253.699 99.772V151.609C253.699 153.818 251.908 155.609 249.699 155.609H177.049C174.84 155.609 173.049 153.818 173.049 151.609V99.772Z\"\n fill=\"white\"\n />\n <path\n d=\"M226.988 139.305C227.242 139.559 227.243 139.972 226.981 140.217C224.8 142.257 222.178 143.772 219.315 144.64C216.244 145.572 212.991 145.731 209.844 145.105C206.697 144.479 203.753 143.087 201.272 141.051C198.792 139.016 196.852 136.4 195.624 133.435C194.396 130.47 193.918 127.249 194.233 124.056C194.547 120.862 195.644 117.796 197.427 115.128C199.21 112.46 201.623 110.272 204.453 108.76C207.091 107.35 210.016 106.566 213.001 106.467C213.36 106.455 213.651 106.747 213.651 107.106V125.699C213.651 125.871 213.719 126.037 213.841 126.159L226.988 139.305Z\"\n fill=\"#FF83B4\"\n />\n <path\n d=\"M233.813 124.667C234.172 124.667 234.465 124.376 234.453 124.017C234.288 119.078 232.254 114.376 228.748 110.87C225.243 107.364 220.541 105.33 215.602 105.166C215.243 105.154 214.951 105.446 214.951 105.805L214.951 124.017C214.951 124.376 215.242 124.667 215.602 124.667H233.813Z\"\n fill=\"#52C6F4\"\n />\n <path\n d=\"M228.937 139.306C229.191 139.56 229.603 139.56 229.849 139.298C231.448 137.588 232.729 135.602 233.626 133.435C234.524 131.269 235.023 128.959 235.101 126.619C235.113 126.26 234.82 125.968 234.461 125.968H217.169C216.59 125.968 216.3 126.669 216.71 127.079L228.937 139.306Z\"\n fill=\"#6ABFA5\"\n />\n <path\n d=\"M258.902 99.772C258.902 97.5628 260.693 95.772 262.902 95.772H335.553C337.762 95.772 339.553 97.5628 339.553 99.772V151.609C339.553 153.818 337.762 155.609 335.553 155.609H262.902C260.693 155.609 258.902 153.818 258.902 151.609V99.772Z\"\n fill=\"white\"\n />\n <path\n d=\"M278.414 126.991C278.414 125.554 279.579 124.39 281.016 124.39H286.219C287.656 124.39 288.821 125.554 288.821 126.991V142.601C288.821 144.038 287.656 145.203 286.219 145.203H281.016C279.579 145.203 278.414 144.038 278.414 142.601V126.991Z\"\n fill=\"#52C6F4\"\n />\n <path\n d=\"M294.024 110.731C294.024 109.294 295.189 108.129 296.625 108.129H301.829C303.266 108.129 304.43 109.294 304.43 110.731V142.601C304.43 144.038 303.266 145.203 301.829 145.203H296.625C295.189 145.203 294.024 144.038 294.024 142.601V110.731Z\"\n fill=\"#52C6F4\"\n />\n <path\n d=\"M309.634 119.837C309.634 118.4 310.798 117.235 312.235 117.235H317.438C318.875 117.235 320.04 118.4 320.04 119.837V142.601C320.04 144.038 318.875 145.203 317.438 145.203H312.235C310.798 145.203 309.634 144.038 309.634 142.601V119.837Z\"\n fill=\"#6ABFA5\"\n />\n <path\n d=\"M258.902 164.812C258.902 162.603 260.693 160.812 262.902 160.812H335.553C337.762 160.812 339.553 162.603 339.553 164.813V216.65C339.553 218.859 337.762 220.65 335.553 220.65H262.902C260.693 220.65 258.902 218.859 258.902 216.65V164.812Z\"\n fill=\"white\"\n />\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M280.096 191.874C280.096 191.874 271.487 183.28 280.774 174.655C280.774 174.655 284.175 171.052 291.053 172.041C294.952 172.603 296.482 174.453 299.075 178.366C299.075 178.366 302.291 172.16 310.8 172.137C318.05 172.118 323.604 180.223 321.565 186.881C321.565 186.881 320.884 188.957 318.05 191.874L299.122 210.243L280.096 191.874Z\"\n fill=\"#6ABFA5\"\n />\n <path\n d=\"M173.049 164.812C173.049 162.603 174.84 160.812 177.049 160.812H249.699C251.908 160.812 253.699 162.603 253.699 164.813V216.65C253.699 218.859 251.908 220.65 249.699 220.65H177.049C174.84 220.65 173.049 218.859 173.049 216.65V164.812Z\"\n fill=\"white\"\n />\n <rect x=\"173.049\" y=\"178.374\" width=\"80.6503\" height=\"1.30081\" fill=\"#F4F4F4\" />\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M228.738 169.616C229.132 169.54 229.539 169.651 229.84 169.915L245.45 183.573C245.991 184.046 246.046 184.868 245.573 185.409C245.1 185.949 244.278 186.004 243.737 185.531L229.383 172.972L214.533 202.054C214.362 202.388 214.057 202.632 213.694 202.724C213.331 202.816 212.946 202.747 212.637 202.535L197.149 191.886L181.676 185.762C181.008 185.497 180.681 184.741 180.945 184.073C181.21 183.405 181.965 183.078 182.633 183.343L198.243 189.521C198.334 189.557 198.421 189.604 198.501 189.659L212.89 199.551L227.825 170.302C228.008 169.945 228.345 169.692 228.738 169.616Z\"\n fill=\"#52C6F4\"\n />\n <circle cx=\"182.805\" cy=\"184.878\" r=\"2.60162\" fill=\"#3FABD6\" />\n <circle cx=\"197.764\" cy=\"190.731\" r=\"2.60162\" fill=\"#3FABD6\" />\n <circle cx=\"213.373\" cy=\"201.137\" r=\"2.60162\" fill=\"#3FABD6\" />\n <circle cx=\"229.635\" cy=\"171.219\" r=\"3.90244\" fill=\"#6ABFA5\" />\n <circle cx=\"245.244\" cy=\"184.878\" r=\"2.60162\" fill=\"#3FABD6\" />\n <path\n d=\"M173.049 80.2603C173.049 78.0511 174.84 76.2603 177.049 76.2603H335.553C337.762 76.2603 339.553 78.0511 339.553 80.2603V86.5692C339.553 88.7783 337.762 90.5692 335.553 90.5692H177.049C174.84 90.5692 173.049 88.7783 173.049 86.5692V80.2603Z\"\n fill=\"white\"\n />\n <rect x=\"178.252\" y=\"81.4634\" width=\"26.0162\" height=\"3.90244\" rx=\"1.95122\" fill=\"#D1D5DB\" />\n <rect x=\"282.316\" y=\"81.4634\" width=\"52.0325\" height=\"3.90244\" rx=\"1.95122\" fill=\"#D1D5DB\" />\n <rect x=\"209.471\" y=\"81.4634\" width=\"67.6422\" height=\"3.90244\" rx=\"1.95122\" fill=\"#9CA3AF\" />\n <path\n d=\"M160.041 289.594C160.041 283.846 164.7 279.187 170.448 279.187H279.716C285.463 279.187 290.122 283.846 290.122 289.594C290.122 295.341 285.463 300 279.716 300H170.448C164.7 300 160.041 295.341 160.041 289.594Z\"\n fill=\"#1F2937\"\n />\n <path d=\"M203.617 236.26H246.544L251.747 279.187H198.414L203.617 236.26Z\" fill=\"#4B5563\" />\n <path\n d=\"M105.406 74.4062C105.406 72.1971 107.197 70.4062 109.406 70.4062H167.845V225.853H109.406C107.197 225.853 105.406 224.062 105.406 221.853V74.4062Z\"\n fill=\"#F3F4F6\"\n />\n <rect x=\"108.658\" y=\"73.6587\" width=\"55.9349\" height=\"15.6097\" rx=\"4\" fill=\"white\" />\n <rect x=\"123.617\" y=\"76.2607\" width=\"37.7235\" height=\"5.20325\" rx=\"2.60162\" fill=\"#9CA3AF\" />\n <rect x=\"123.617\" y=\"82.7642\" width=\"26.0162\" height=\"3.90244\" rx=\"1.95122\" fill=\"#D1D5DB\" />\n <ellipse cx=\"115.813\" cy=\"81.464\" rx=\"5.20325\" ry=\"5.20325\" fill=\"#D1D5DB\" />\n <rect x=\"108.658\" y=\"94.4712\" width=\"55.9349\" height=\"15.6097\" rx=\"4\" fill=\"white\" />\n <rect x=\"123.617\" y=\"97.0732\" width=\"33.8211\" height=\"5.20325\" rx=\"2.60162\" fill=\"#9CA3AF\" />\n <rect x=\"123.617\" y=\"103.577\" width=\"35.7723\" height=\"3.90244\" rx=\"1.95122\" fill=\"#D1D5DB\" />\n <ellipse cx=\"115.813\" cy=\"102.276\" rx=\"5.20325\" ry=\"5.20325\" fill=\"#D1D5DB\" />\n <rect x=\"108.658\" y=\"115.285\" width=\"55.9349\" height=\"15.6097\" rx=\"4\" fill=\"white\" />\n <rect x=\"123.617\" y=\"117.887\" width=\"37.7235\" height=\"5.20325\" rx=\"2.60163\" fill=\"#9CA3AF\" />\n <rect x=\"123.617\" y=\"124.391\" width=\"26.0162\" height=\"3.90244\" rx=\"1.95122\" fill=\"#D1D5DB\" />\n <ellipse cx=\"115.813\" cy=\"123.09\" rx=\"5.20325\" ry=\"5.20325\" fill=\"#D1D5DB\" />\n <rect x=\"108.658\" y=\"136.098\" width=\"55.9349\" height=\"15.6097\" rx=\"4\" fill=\"white\" />\n <rect x=\"123.617\" y=\"138.7\" width=\"33.8211\" height=\"5.20325\" rx=\"2.60163\" fill=\"#9CA3AF\" />\n <rect x=\"123.617\" y=\"145.203\" width=\"31.8699\" height=\"3.90243\" rx=\"1.95122\" fill=\"#D1D5DB\" />\n <ellipse cx=\"115.813\" cy=\"143.903\" rx=\"5.20325\" ry=\"5.20325\" fill=\"#D1D5DB\" />\n <rect x=\"108.658\" y=\"156.91\" width=\"55.9349\" height=\"15.6098\" rx=\"4\" fill=\"white\" />\n <rect x=\"123.617\" y=\"159.512\" width=\"37.7235\" height=\"5.20325\" rx=\"2.60163\" fill=\"#9CA3AF\" />\n <rect x=\"123.617\" y=\"166.016\" width=\"26.0162\" height=\"3.90244\" rx=\"1.95122\" fill=\"#D1D5DB\" />\n <ellipse cx=\"115.813\" cy=\"164.715\" rx=\"5.20325\" ry=\"5.20325\" fill=\"#D1D5DB\" />\n <rect x=\"108.658\" y=\"177.723\" width=\"55.9349\" height=\"15.6097\" rx=\"4\" fill=\"white\" />\n <rect x=\"123.617\" y=\"180.325\" width=\"31.8699\" height=\"5.20325\" rx=\"2.60163\" fill=\"#9CA3AF\" />\n <rect x=\"123.617\" y=\"186.829\" width=\"31.8699\" height=\"3.90243\" rx=\"1.95122\" fill=\"#D1D5DB\" />\n <ellipse cx=\"115.813\" cy=\"185.528\" rx=\"5.20325\" ry=\"5.20325\" fill=\"#D1D5DB\" />\n <rect x=\"108.658\" y=\"198.537\" width=\"55.9349\" height=\"15.6098\" rx=\"4\" fill=\"white\" />\n <rect x=\"123.617\" y=\"201.138\" width=\"37.7235\" height=\"5.20324\" rx=\"2.60162\" fill=\"#9CA3AF\" />\n <rect x=\"123.617\" y=\"207.642\" width=\"26.0162\" height=\"3.90243\" rx=\"1.95122\" fill=\"#D1D5DB\" />\n <ellipse cx=\"115.813\" cy=\"206.341\" rx=\"5.20325\" ry=\"5.20325\" fill=\"#D1D5DB\" />\n <path\n d=\"M204.538 57.2204C206.044 55.1505 208.448 53.9258 211.008 53.9258H239.809C242.368 53.9258 244.773 55.1505 246.278 57.2204L248.979 60.9332H201.838L204.538 57.2204Z\"\n fill=\"#374151\"\n />\n <circle cx=\"225.408\" cy=\"52.6519\" r=\"14.6519\" fill=\"#374151\" />\n <circle cx=\"225.408\" cy=\"52.6521\" r=\"8.28148\" fill=\"#1F2937\" />\n <circle cx=\"225.409\" cy=\"52.6518\" r=\"5.73333\" fill=\"#86DDFF\" />\n <circle cx=\"223.497\" cy=\"50.1035\" r=\"1.91111\" fill=\"white\" fill-opacity=\"0.5\" />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const ExclamationMarkIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M12 2C6.48 2 2 6.48 2 12C2 17.52 6.48 22 12 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 12 2ZM12 13C11.45 13 11 12.55 11 12V8C11 7.45 11.45 7 12 7C12.55 7 13 7.45 13 8V12C13 12.55 12.55 13 12 13ZM13 17H11V15H13V17Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const EyeIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"22\"\n height=\"15\"\n viewBox=\"0 0 22 15\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M11 0C6 0 1.73 3.11 0 7.5C1.73 11.89 6 15 11 15C16 15 20.27 11.89 22 7.5C20.27 3.11 16 0 11 0ZM11 12.5C8.24 12.5 6 10.26 6 7.5C6 4.74 8.24 2.5 11 2.5C13.76 2.5 16 4.74 16 7.5C16 10.26 13.76 12.5 11 12.5ZM11 4.5C9.34 4.5 8 5.84 8 7.5C8 9.16 9.34 10.5 11 10.5C12.66 10.5 14 9.16 14 7.5C14 5.84 12.66 4.5 11 4.5Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const GearIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M17.5002 10C17.5002 9.77 17.4902 9.55 17.4702 9.32L19.3302 7.91C19.7302 7.61 19.8402 7.05 19.5902 6.61L17.7202 3.38C17.4702 2.94 16.9302 2.76 16.4702 2.96L14.3202 3.87C13.9502 3.61 13.5602 3.38 13.1502 3.19L12.8602 0.88C12.8002 0.38 12.3702 0 11.8702 0H8.14015C7.63015 0 7.20015 0.38 7.14015 0.88L6.85015 3.19C6.44015 3.38 6.05015 3.61 5.68015 3.87L3.53015 2.96C3.07015 2.76 2.53015 2.94 2.28015 3.38L0.410153 6.62C0.160153 7.06 0.270153 7.61 0.670153 7.92L2.53015 9.33C2.51015 9.55 2.50015 9.77 2.50015 10C2.50015 10.23 2.51015 10.45 2.53015 10.68L0.670153 12.09C0.270153 12.39 0.160153 12.95 0.410153 13.39L2.28015 16.62C2.53015 17.06 3.07015 17.24 3.53015 17.04L5.68015 16.13C6.05015 16.39 6.44015 16.62 6.85015 16.81L7.14015 19.12C7.20015 19.62 7.63015 20 8.13015 20H11.8602C12.3602 20 12.7902 19.62 12.8502 19.12L13.1402 16.81C13.5502 16.62 13.9402 16.39 14.3102 16.13L16.4602 17.04C16.9202 17.24 17.4602 17.06 17.7102 16.62L19.5802 13.39C19.8302 12.95 19.7202 12.4 19.3202 12.09L17.4602 10.68C17.4902 10.45 17.5002 10.23 17.5002 10ZM10.0402 13.5C8.11015 13.5 6.54015 11.93 6.54015 10C6.54015 8.07 8.11015 6.5 10.0402 6.5C11.9702 6.5 13.5402 8.07 13.5402 10C13.5402 11.93 11.9702 13.5 10.0402 13.5Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const GroupIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M12 12.75C13.63 12.75 15.07 13.14 16.24 13.65C17.32 14.13 18 15.21 18 16.38V17C18 17.55 17.55 18 17 18H7C6.45 18 6 17.55 6 17V16.39C6 15.21 6.68 14.13 7.76 13.66C8.93 13.14 10.37 12.75 12 12.75ZM4 13C5.1 13 6 12.1 6 11C6 9.9 5.1 9 4 9C2.9 9 2 9.9 2 11C2 12.1 2.9 13 4 13ZM5.13 14.1C4.76 14.04 4.39 14 4 14C3.01 14 2.07 14.21 1.22 14.58C0.48 14.9 0 15.62 0 16.43V17C0 17.55 0.45 18 1 18H4.5V16.39C4.5 15.56 4.73 14.78 5.13 14.1ZM20 13C21.1 13 22 12.1 22 11C22 9.9 21.1 9 20 9C18.9 9 18 9.9 18 11C18 12.1 18.9 13 20 13ZM24 16.43C24 15.62 23.52 14.9 22.78 14.58C21.93 14.21 20.99 14 20 14C19.61 14 19.24 14.04 18.87 14.1C19.27 14.78 19.5 15.56 19.5 16.39V18H23C23.55 18 24 17.55 24 17V16.43ZM12 6C13.66 6 15 7.34 15 9C15 10.66 13.66 12 12 12C10.34 12 9 10.66 9 9C9 7.34 10.34 6 12 6Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const HeartIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M13.3502 20.1307C12.5902 20.8207 11.4202 20.8207 10.6602 20.1207L10.5502 20.0207C5.30015 15.2707 1.87015 12.1607 2.00015 8.28065C2.06015 6.58065 2.93015 4.95065 4.34015 3.99065C6.98015 2.19065 10.2402 3.03065 12.0002 5.09065C13.7602 3.03065 17.0202 2.18065 19.6602 3.99065C21.0702 4.95065 21.9402 6.58065 22.0002 8.28065C22.1402 12.1607 18.7002 15.2707 13.4502 20.0407L13.3502 20.1307Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const LightBulbIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M12 22C13.1 22 14 21.1 14 20H10C10 21.1 10.9 22 12 22Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M9 19H15C15.55 19 16 18.55 16 18C16 17.45 15.55 17 15 17H9C8.45 17 8 17.45 8 18C8 18.55 8.45 19 9 19Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M12 2C7.86 2 4.5 5.36 4.5 9.5C4.5 13.32 7.16 15.36 8.27 16H15.73C16.84 15.36 19.5 13.32 19.5 9.5C19.5 5.36 16.14 2 12 2Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const LockIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M18 8H17V6C17 3.24 14.76 1 12 1C9.24 1 7 3.24 7 6V8H6C4.9 8 4 8.9 4 10V20C4 21.1 4.9 22 6 22H18C19.1 22 20 21.1 20 20V10C20 8.9 19.1 8 18 8ZM12 17C10.9 17 10 16.1 10 15C10 13.9 10.9 13 12 13C13.1 13 14 13.9 14 15C14 16.1 13.1 17 12 17ZM9 8V6C9 4.34 10.34 3 12 3C13.66 3 15 4.34 15 6V8H9Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const MessagesIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M20 2H4C2.9 2 2.01 2.9 2.01 4L2 22L6 18H20C21.1 18 22 17.1 22 16V4C22 2.9 21.1 2 20 2ZM17 14H7C6.45 14 6 13.55 6 13C6 12.45 6.45 12 7 12H17C17.55 12 18 12.45 18 13C18 13.55 17.55 14 17 14ZM17 11H7C6.45 11 6 10.55 6 10C6 9.45 6.45 9 7 9H17C17.55 9 18 9.45 18 10C18 10.55 17.55 11 17 11ZM17 8H7C6.45 8 6 7.55 6 7C6 6.45 6.45 6 7 6H17C17.55 6 18 6.45 18 7C18 7.55 17.55 8 17 8Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const NotesIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M19 3H4.99C3.89 3 3 3.9 3 5L3.01 19C3.01 20.1 3.9 21 5 21H15L21 15V5C21 3.9 20.1 3 19 3ZM8 8H16C16.55 8 17 8.45 17 9C17 9.55 16.55 10 16 10H8C7.45 10 7 9.55 7 9C7 8.45 7.45 8 8 8ZM11 14H8C7.45 14 7 13.55 7 13C7 12.45 7.45 12 8 12H11C11.55 12 12 12.45 12 13C12 13.55 11.55 14 11 14ZM14 19.5V15C14 14.45 14.45 14 15 14H19.5L14 19.5Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const PinIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"14\"\n height=\"20\"\n viewBox=\"0 0 14 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M14 10.87C14 10.4 13.66 10.02 13.2 9.89C11.93 9.54 11 8.38 11 7V2H12C12.55 2 13 1.55 13 1C13 0.45 12.55 0 12 0L2 0C1.45 0 1 0.45 1 1C1 1.55 1.45 2 2 2H3V7C3 8.38 2.07 9.54 0.8 9.89C0.34 10.02 0 10.4 0 10.87L0 11C0 11.55 0.45 12 1 12H5.98L6 19C6 19.55 6.45 20 7 20C7.55 20 8 19.55 8 19L7.98 12H13C13.55 12 14 11.55 14 11V10.87Z\"\n fill=\"#64748b\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const SmallCircleIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <circle cx=\"12\" cy=\"12\" r=\"6\" fill=\"currentColor\" />\n <circle cx=\"14.5\" cy=\"9.5\" r=\"1.5\" fill=\"white\" fillOpacity=\"0.1\" />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const SmallDiamondIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M4.92984 13.4142C4.14879 12.6332 4.14879 11.3668 4.92984 10.5858L10.5867 4.92893C11.3677 4.14788 12.6341 4.14788 13.4151 4.92893L19.072 10.5858C19.853 11.3668 19.853 12.6332 19.072 13.4142L13.4151 19.0711C12.6341 19.8521 11.3677 19.8521 10.5867 19.0711L4.92984 13.4142Z\"\n fill=\"currentColor\"\n />\n <circle\n cx=\"12.0002\"\n cy=\"7.05078\"\n r=\"1.5\"\n transform=\"rotate(-45 12.0002 7.05078)\"\n fill=\"white\"\n fillOpacity=\"0.1\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const SmallSquareIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <rect x=\"6\" y=\"6\" width=\"12\" height=\"12\" rx=\"2\" fill=\"currentColor\" />\n <circle cx=\"15.5\" cy=\"8.5\" r=\"1.5\" fill=\"white\" fillOpacity=\"0.1\" />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const SpaceRocketIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M9.18977 6.34976C7.14977 8.63976 5.74977 11.9298 5.61977 12.2398L3.35977 11.2698C2.70977 10.9898 2.54977 10.1398 3.04977 9.63976L6.05977 6.62976C6.52977 6.15976 7.20977 5.94976 7.86977 6.07976L9.18977 6.34976ZM10.6798 16.5098C10.9798 16.8098 11.4198 16.8898 11.7998 16.7098C12.9598 16.1698 15.4498 14.8998 17.0598 13.2898C21.6498 8.69976 21.6898 4.95976 21.4198 3.35976C21.3498 2.95976 21.0298 2.63976 20.6298 2.56976C19.0298 2.29976 15.2898 2.33976 10.6998 6.92976C9.08977 8.53976 7.82977 11.0298 7.27977 12.1898C7.09977 12.5698 7.18977 13.0198 7.47977 13.3098L10.6798 16.5098ZM17.6498 14.8098C15.3598 16.8498 12.0698 18.2498 11.7598 18.3798L12.7298 20.6398C13.0098 21.2898 13.8598 21.4498 14.3598 20.9498L17.3698 17.9398C17.8398 17.4698 18.0498 16.7898 17.9198 16.1298L17.6498 14.8098ZM8.93977 17.4098C9.13977 18.4698 8.78977 19.4498 8.11977 20.1198C7.34977 20.8898 4.95977 21.4598 3.40977 21.7598C2.71977 21.8898 2.10977 21.2798 2.23977 20.5898C2.53977 19.0398 3.09977 16.6498 3.87977 15.8798C4.54977 15.2098 5.52977 14.8598 6.58977 15.0598C7.75977 15.2798 8.71977 16.2398 8.93977 17.4098ZM12.9998 8.99976C12.9998 7.89976 13.8998 6.99976 14.9998 6.99976C16.0998 6.99976 16.9998 7.89976 16.9998 8.99976C16.9998 10.0998 16.0998 10.9998 14.9998 10.9998C13.8998 10.9998 12.9998 10.0998 12.9998 8.99976Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const StarIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"19\"\n height=\"18\"\n viewBox=\"0 0 19 18\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M8.58663 1.04906C8.93899 0.258571 10.061 0.258571 10.4134 1.04906L12.1659 4.9807C12.3112 5.30673 12.6193 5.53057 12.9743 5.56804L17.2551 6.01985C18.1158 6.11069 18.4625 7.17779 17.8196 7.75718L14.6219 10.6389C14.3568 10.8778 14.2391 11.24 14.3131 11.5892L15.2063 15.8001C15.3858 16.6467 14.4781 17.3062 13.7284 16.8738L9.99962 14.7232C9.69041 14.5448 9.30959 14.5448 9.00038 14.7232L5.27159 16.8738C4.52189 17.3062 3.61416 16.6467 3.79373 15.8001L4.68686 11.5892C4.76093 11.24 4.64325 10.8778 4.37808 10.6389L1.18043 7.75718C0.537518 7.17779 0.88424 6.11069 1.74492 6.01985L6.0257 5.56804C6.38068 5.53057 6.68877 5.30673 6.8341 4.9807L8.58663 1.04906Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const HamburgerIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M3 6C3 5.44772 3.44772 5 4 5H20C20.5523 5 21 5.44772 21 6C21 6.55228 20.5523 7 20 7H4C3.44772 7 3 6.55228 3 6Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M3 12C3 11.4477 3.44772 11 4 11H20C20.5523 11 21 11.4477 21 12C21 12.5523 20.5523 13 20 13H4C3.44772 13 3 12.5523 3 12Z\"\n fill=\"currentColor\"\n />\n <path\n d=\"M4 17C3.44772 17 3 17.4477 3 18C3 18.5523 3.44772 19 4 19H20C20.5523 19 21 18.5523 21 18C21 17.4477 20.5523 17 20 17H4Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const SearchIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M15.5 13.9996H14.71L14.43 13.7296C15.63 12.3296 16.25 10.4196 15.91 8.38965C15.44 5.60965 13.12 3.38965 10.32 3.04965C6.09001 2.52965 2.53002 6.08965 3.05002 10.3196C3.39002 13.1196 5.61002 15.4396 8.39002 15.9096C10.42 16.2496 12.33 15.6296 13.73 14.4296L14 14.7096V15.4996L18.25 19.7496C18.66 20.1596 19.33 20.1596 19.74 19.7496C20.15 19.3396 20.15 18.6696 19.74 18.2596L15.5 13.9996ZM9.50002 13.9996C7.01002 13.9996 5.00002 11.9896 5.00002 9.49965C5.00002 7.00965 7.01002 4.99965 9.50002 4.99965C11.99 4.99965 14 7.00965 14 9.49965C14 11.9896 11.99 13.9996 9.50002 13.9996Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n","import React from \"react\";\n\nimport { IconProps } from \"./types/IconProps.type\";\n\nexport const SearchCancelIcon = (props: IconProps): JSX.Element => {\n return (\n <svg\n className={props.className}\n onClick={props.onClick}\n role={props.onClick ? \"button\" : undefined}\n width=\"14\"\n height=\"14\"\n viewBox=\"0 0 14 14\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M2.05086 0.636643C1.66033 0.246119 1.02717 0.246119 0.636643 0.636643C0.246119 1.02717 0.246119 1.66033 0.636643 2.05086L5.5867 7.00092L0.636672 11.9509C0.246148 12.3415 0.246148 12.9746 0.636672 13.3652C1.0272 13.7557 1.66036 13.7557 2.05089 13.3652L7.00091 8.41513L11.9503 13.3646C12.3409 13.7551 12.974 13.7551 13.3646 13.3646C13.7551 12.974 13.7551 12.3409 13.3646 11.9504L8.41513 7.00092L13.3646 2.05145C13.7551 1.66093 13.7551 1.02776 13.3646 0.637237C12.9741 0.246712 12.3409 0.246713 11.9504 0.637237L7.00092 5.5867L2.05086 0.636643Z\"\n fill=\"currentColor\"\n />\n </svg>\n );\n};\n"],"names":["Text","props","containerProps","className","classNames","type","inline","truncate","color","containsDangerousHtml","React","dangerouslySetInnerHTML","__html","text","defaultProps","ACKNOWLEDGEMENT_TYPE_OPTIONS","SUCCESS","FAILURE","Acknowledgement","propTypes","message","PropTypes","string","oneOf","hasIcon","bool","isVisible","containerClassName","iconContainerClasses","hidden","successIconClasses","failureIconClasses","successIcon","failureIcon","checkImageValidity","src","Promise","resolve","image","Image","onload","onerror","AVATAR_SIZE_OPTIONS","LARGE","MEDIUM","SMALL","Avatar","size","defaultImage","initials","useState","hasValidImage","setHasValidImage","useEffect","mounted","then","res","renderAvatar","isRequired","Badge","containerClasses","textClasses","badgeCount","Spinner","xmlns","fill","viewBox","cx","cy","r","stroke","strokeWidth","d","ButtonV2","onClick","icon","isDisabled","isPending","otherAttributes","console","error","buttonClassName","disabled","createElement","style","position","left","top","transform","invisible","PrimaryButton","SecondaryButton","TertiaryButton","AddIcon","role","undefined","width","height","x","y","rx","DeleteIcon","EditIcon","LeftArrowIcon","RightArrowIcon","ChartIcon","PrintIcon","iconSrc","close","CloseIcon","hamburger","HamburgerIcon","ChevronRightBlueIcon","ChevronLeftBlueIcon","ChevronRightGreyIcon","ChevronLeftGreyIcon","search","SearchIcon","star","StarIcon","check","CheckIcon","SearchCancelIcon","ButtonIcon","name","BUTTON_ROLES","PRIMARY","SECONDARY","SECONDARY_DARK","TERTIARY","QUATERNARY","NEGATIVE","TEXT","LINK","ICON","Button","propsRole","title","link","iconName","hasIconProps","dynamicIcon","hasAddIcon","includes","hasEditIcon","hasDeleteIcon","hasPrevIcon","hasNextIcon","hasChartIcon","hasPrintIcon","isIconOnly","setRole","isButtonDisabled","isNonPrimaryNonNegative","handleClick","event","navigate","preventDefault","buttonRolesStyling","primary","secondary","secondaryDark","tertiary","quaternary","negative","spinnerClassNames","buttonTextClasses","GliderContainer","children","Carousel","slides","id","setIsVisible","Glider","hasDots","hasArrows","skipTrack","scrollLock","rewind","arrows","prev","next","dots","containerElement","map","slide","index","key","Title","match","ContainerElement","CenteredHero","buttons","arrayOf","shape","handleOnClick","func","length","filter","button","Checkbox","explanation","isChecked","value","onChange","checked","setChecked","isFocused","setIsFocused","hasError","handleChange","handleFocus","handleBlur","e","stopPropagation","onBlur","onFocus","MODAL_SIZES","DEFAULT","WIDE","WIDER","EXTRA_SMALL","Modal","isOpen","shouldCloseOnOverlayClick","showTitleBar","onCloseClick","closeAltText","closeButtonId","withPadding","showHeader","overlayClassName","ReactModal","setAppElement","contentLabel","portalClassName","bodyOpenClassName","htmlOpenClassName","onRequestClose","shouldFocusAfterRender","ModalWithButtons","buttonsAlignment","rest","ConfirmationDialog","calculatedClassNames","handleOnCloseClick","isProcessing","onCancel","modalButtons","texts","cancelLabel","cancelButtonRole","confirmLabel","onConfirm","confirmButtonRole","Datepicker","handleCloseButtonClick","datepickerRef","setOpen","getDateFormat","showTimeSelect","formatDateWithTime","render","hasCloseButton","closeButtonText","adjustDateOnChange","showMonthDropdown","showYearDropdown","shouldCloseOnSelect","allowSameDay","minDate","maxDate","selected","otherProps","dateFormat","pickerClassName","getCloseButtonText","element","Component","object","instanceOf","moment","ITEM_QUERY_FIELD_NAMES","ID","HIGHLIGHT_INDEX","keyCodes","ARROW_DOWN","ARROW_UP","ENTER","TAB","SHIFT","ESC","Dropdown","handleClickOutside","rootRef","contains","target","closeDropdown","handleKeyDown","state","items","isDropdownOpen","highlightIndex","keyCode","setSelectedItem","findItem","blur","openDropdown","shiftKey","decreaseHighlightIndexIfPossible","increaseHighlightIndexIfPossible","fieldName","fieldValue","selectedItem","i","item","subItems","j","subItem","setState","prevState","findSelectedItem","selectedIndex","querySelectorAll","scrollToHighlightedItem","dropdownListRef","scrollTo","offsetTop","newHighlightIndex","totalItemCount","selectItem","onItemSelect","renderIndividualItem","isItemSelected","itemClassName","textType","checkmark","renderGroupedItems","groupKey","renderItems","wider","addHighlightIndexToItems","initialSelectedItemId","getTotalItemCount","getDerivedStateFromProps","nextProps","componentDidMount","document","addEventListener","componentWillUnmount","removeEventListener","placeholder","onDropdownClick","chevronDouble","PureComponent","currentIndex","reduce","acc","oneOfType","number","imageSrc","NoOpenAlertsImage","SearchNotFoundImage","HappyStarImage","EmptyListMessage","imageName","dataTestId","alt","ErrorBlock","InfoBlock","InfoField","clipboard","ClipboardJS","on","onCopyToClipboard","clearSelection","linkType","href","rel","label","supportsMultiline","INPUT_TYPES","EMAIL","NUMBER","PASSWORD","Input","any","clearable","maxLength","withPrefix","withSuffix","onKeyPress","onKeyDown","setRef","hasNoExtraContent","backgroundSize","backgroundPosition","backgroundImage","backgroundRepeat","rounded","background","cross","currentTarget","Line","right","array","ListItem","classes","PaginationMenuSmall","handleOnChange","pageNumber","dataset","page","parseInt","pageSize","currentPageNumber","pageCount","generateCustomStyles","isIE11","option","baseStyles","fontWeight","isSelected","fontSize","backgroundColor","padding","opacity","content","visibility","transition","pointerEvents","container","flexGrow","control","defaultBorderColor","validatedBorderColor","defaultOutline","validatedOutline","outline","borderColor","borderWidth","borderStyle","borderRadius","boxShadow","paddingTop","singleValue","indicatorSeparator","display","indicatorsContainer","doubleChevron","svg","marginRight","menu","zIndex","CustomSelect","forwardRef","_ref","styles","window","customStyles","mergedStyles","mergeStyles","ReactSelect","PAGE_SIZES","PAGE_SIZE_OPTIONS","toString","getPageNumberOptions","push","getSummaryText","localization","resultCount","lowestElement","highestElement","of","PaginationMenuLarge","handleOnPageNumberSelect","optionSelected","handleOnPageSizeSelect","find","handleOnPrevNextButtonClick","newPage","Select","options","menuPlacement","previous","PaginationMenu","buildPaginationLarge","small","LoadingIndicator","asModal","asSpinner","spinnerColor","restProps","spinnerToRender","spinner","graySpinner","loadingImage","isEmpty","str","isString","trim","obj","Object","prototype","call","ListTableCell","isHeader","configuration","emptyValue","textProps","textClassName","cellClassName","hasValue","returnChildren","capitalize","ListTableRow","handleRowClick","idField","fields","field","ListTableHeader","configurationFields","ListTable","currentPage","onPaginationChange","onRowClick","isLoading","isPristine","setIsPristine","showEmptyView","colSpan","emptyListText","Menu","closeMenu","handleIconClick","openMenu","node","TEXT_TYPE_OPTIONS","STRONG","EMPHASIZED","FINEPRINT","SMALL_DARK","SMALL_FINEPRINT","MICRO","ERROR","TEXT_LEVEL_OPTIONS","INLINE","BLOCK","LegacyText","level","handleImplicitSelect","implicitSelected","list","property","newList","selectCheckboxName","implicitSelectedValues","forEach","findIndex","checkbox","identifier","upadteCheckbox","isOn","splice","MultiSelect","checkboxList","radioLabel","validationError","implicitSelect","radioOnDemand","setList","indexSelected","updateCheckbox","handleRadioChange","description","join","NavLayout","isNavDisabled","patientSidebar","disableScrolling","NavMenuItem","imgOnHover","img","currentImg","setCurrentImg","textColor","setTextColor","handleOnMouseOver","handleOnMouseOut","linkTo","onMouseOver","onMouseOut","handleMenuClick","metaKey","ctrlKey","track","gtmEvent","isExternal","open","location","assign","NavMenuContent","NavMenu","setIsOpen","handleToggleOpen","React.createElement","TextLink","enabled","NotificationBanner","linkProps","onButtonClick","Page","breadcrumbs","accessories","accessoryPosition","isPolling","navLayoutProps","feedbackBlock","navMenu","mergedPageClasses","containerClassnames","maybeTitle","Function","accessoryClasses","accessoriesContent","childrenOrContentProp","breadcrumbItemShape","isFetching","TITLE_TYPE_OPTIONS","BIG","TINY","BOLD","LegacyTitle","Step","stepNumber","active","barColor","step","Steps","orderedStepTitles","currentStep","renderedSteps","stepTitle","split","CRUDPage","stepTitles","submitButtonProps","deleteButtonProps","cancelButtonProps","isSubmitting","navMenuComponent","mergedClasses","submitButton","handler","deleteButton","cancelButton","renderHeader","elementType","useWindowDimensions","innerHeight","setHeight","innerWidth","setWidth","handleResize","debounce","PreviewPhone","phoneHeight","phoneWidth","scale","setScale","showPhone","setShowPhone","windowHeight","windowWidth","containerCallbak","useCallback","containerWidth","clientWidth","containerHeight","clientHeight","heightScale","widthScale","ref","phoneMockup","Radio","containerRef","RadioGroup","radioClassName","selectedOption","isVertical","radioOptions","otherOptions","vertical","info","Section","loadingIndicatorProps","useOutsideClick","callback","current","SettingsMenuButton","configFromProps","onConfigurationChange","shiftMenuTo","buttonTitle","iconComponent","menuTitle","innerConfiguration","setInnerConfiguration","showMenu","setShowMenu","menuRef","useRef","handleShowMenu","handleOnVibilitySwitchChanged","newConfig","config","itemId","itemName","innerConfig","SwitcherItem","showBadge","onSelect","handleItemClick","calculatedIcon","Switcher","currentSelection","setCurrentSelection","handleItemSelect","JSON","stringify","TabbarItem","handleTabClick","Tabbar","tabs","tabItemProps","itemProps","TabLinksSelect","url","TabLinks","patientUuid","isCurrent","Link","to","pathname","getProps","TagSize","TagGroup","tags","tagSize","base","tag","Tag","TagColorTheme","colorTheme","Gray","Red","Amber","Green","Blue","RESIZE_TYPES","NONE","BOTH","HORIZONTAL","VERTICAL","Textarea","rows","resizable","onCtrlEnter","TextEditor","defaultValue","onValueChange","formats","toolbarLastGroup","quillRef","quillInstance","tooltipSave","editor","theme","tooltip","save","textbox","indexOf","modules","useMemo","toolbar","TextEditorV2","locale","EditorState","createEmpty","editorState","setEditorState","htmlToDraft","contentBlocks","entityMap","createWithContent","ContentState","createFromBlockArray","onEditorStateChange","draftToHtml","convertToRaw","getCurrentContent","Editor","showOpenOptionOnHover","defaultTargetOption","TextListItem","iconClass","iconClasses","ViewItem","titleProps","titleAccessory","contentProps","defaultContent","titlePropsMerged","contentPropsMerged","line","AlertsIcon","BellIcon","ChatBoxIcon","fillRule","clipRule","ChevronDoubleIcon","CrossIcon","DownArrowIcon","DragIcon","EmptyStateDashboardIcon","ry","ExclamationMarkIcon","EyeIcon","GearIcon","GroupIcon","HeartIcon","LightBulbIcon","LockIcon","MessagesIcon","NotesIcon","PinIcon","SmallCircleIcon","fillOpacity","SmallDiamondIcon","SmallSquareIcon","SpaceRocketIcon"],"mappings":"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"}