@laerdal/life-react-components 6.0.0-dev.20.full → 6.0.0-dev.5.full

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/dist/Button/Button.cjs +5 -0
  2. package/dist/Button/Button.cjs.map +1 -1
  3. package/dist/Button/Button.js +5 -0
  4. package/dist/Button/Button.js.map +1 -1
  5. package/dist/GlobalNavigationBar/Logo.cjs +1 -2
  6. package/dist/GlobalNavigationBar/Logo.cjs.map +1 -1
  7. package/dist/GlobalNavigationBar/Logo.js +1 -2
  8. package/dist/GlobalNavigationBar/Logo.js.map +1 -1
  9. package/dist/GlobalNavigationBar/desktop/MainMenu.cjs +1 -10
  10. package/dist/GlobalNavigationBar/desktop/MainMenu.cjs.map +1 -1
  11. package/dist/GlobalNavigationBar/desktop/MainMenu.js +1 -10
  12. package/dist/GlobalNavigationBar/desktop/MainMenu.js.map +1 -1
  13. package/dist/GlobalNavigationBar/desktop/RightSideNav.cjs +2 -3
  14. package/dist/GlobalNavigationBar/desktop/RightSideNav.cjs.map +1 -1
  15. package/dist/GlobalNavigationBar/desktop/RightSideNav.js +2 -3
  16. package/dist/GlobalNavigationBar/desktop/RightSideNav.js.map +1 -1
  17. package/dist/GlobalNavigationBar/mobile/CommonStyles.cjs.map +1 -1
  18. package/dist/GlobalNavigationBar/mobile/CommonStyles.js.map +1 -1
  19. package/dist/HyperLink/HyperLink.cjs +2 -18
  20. package/dist/HyperLink/HyperLink.cjs.map +1 -1
  21. package/dist/HyperLink/HyperLink.d.ts +0 -2
  22. package/dist/HyperLink/HyperLink.js +2 -18
  23. package/dist/HyperLink/HyperLink.js.map +1 -1
  24. package/dist/InputFields/DatepickerField.cjs +1 -1
  25. package/dist/InputFields/DatepickerField.cjs.map +1 -1
  26. package/dist/InputFields/DatepickerField.d.ts +1 -1
  27. package/dist/InputFields/DatepickerField.js +1 -1
  28. package/dist/InputFields/DatepickerField.js.map +1 -1
  29. package/dist/InputFields/TextField.cjs +1 -1
  30. package/dist/InputFields/TextField.cjs.map +1 -1
  31. package/dist/InputFields/TextField.js +1 -1
  32. package/dist/InputFields/TextField.js.map +1 -1
  33. package/dist/MiniProductCard/MiniProductCard.cjs +1 -15
  34. package/dist/MiniProductCard/MiniProductCard.cjs.map +1 -1
  35. package/dist/MiniProductCard/MiniProductCard.d.ts +0 -1
  36. package/dist/MiniProductCard/MiniProductCard.js +1 -15
  37. package/dist/MiniProductCard/MiniProductCard.js.map +1 -1
  38. package/dist/NavItem/NavItem.cjs +1 -7
  39. package/dist/NavItem/NavItem.cjs.map +1 -1
  40. package/dist/NavItem/NavItem.js +1 -7
  41. package/dist/NavItem/NavItem.js.map +1 -1
  42. package/dist/Tabs/VerticalTabs.cjs +0 -1
  43. package/dist/Tabs/VerticalTabs.cjs.map +1 -1
  44. package/dist/Tabs/VerticalTabs.js +0 -1
  45. package/dist/Tabs/VerticalTabs.js.map +1 -1
  46. package/dist/styles/colors.cjs +1 -0
  47. package/dist/styles/colors.cjs.map +1 -1
  48. package/dist/styles/colors.js +1 -0
  49. package/dist/styles/colors.js.map +1 -1
  50. package/dist/styles/index.cjs +5 -5
  51. package/dist/styles/index.cjs.map +1 -1
  52. package/dist/styles/index.d.ts +2 -2
  53. package/dist/styles/index.js +2 -2
  54. package/dist/styles/index.js.map +1 -1
  55. package/package.json +4 -5
  56. package/dist/Accordion/__tests__/AccordionMenu.test.tsx +0 -42
  57. package/dist/Accordion/__tests__/ContentAccordion.test.tsx +0 -150
  58. package/dist/AuthPage/__tests__/AuthPage.test.tsx +0 -27
  59. package/dist/Banners/__tests__/Banner.test.tsx +0 -47
  60. package/dist/Banners/__tests__/OverviewBanner.test.tsx +0 -20
  61. package/dist/Breadcrumb/__tests__/Breadcrumb.test.tsx +0 -78
  62. package/dist/Button/__tests__/BackButton.test.tsx +0 -32
  63. package/dist/Button/__tests__/Button.test.tsx +0 -45
  64. package/dist/Button/__tests__/DualButton.test.tsx +0 -119
  65. package/dist/Card/HorizontalCard/__tests__/HorizontalCard.test.tsx +0 -71
  66. package/dist/Card/HorizontalCard/__tests__/VerticalCard.test.tsx +0 -124
  67. package/dist/Card/__tests__/Card.test.tsx +0 -146
  68. package/dist/Chips/__tests__/ActionChip.test.tsx +0 -94
  69. package/dist/Chips/__tests__/ChoiceChips.test.tsx +0 -79
  70. package/dist/Chips/__tests__/FilterChip.test.tsx +0 -95
  71. package/dist/Chips/__tests__/InputChip.test.tsx +0 -155
  72. package/dist/ChipsInput/__tests__/ChipDropdownInput.test.tsx +0 -100
  73. package/dist/ChipsInput/__tests__/ChipInputFields.test.tsx +0 -155
  74. package/dist/Dropdown/__tests__/DropdownFilter.test.tsx +0 -39
  75. package/dist/Footer/__tests__/Footer.test.tsx +0 -182
  76. package/dist/GlobalNavigationBar/__tests__/Logo.test.tsx +0 -39
  77. package/dist/GlobalNavigationBar/desktop/__tests__/DesktopActions.test.tsx +0 -108
  78. package/dist/GlobalNavigationBar/desktop/__tests__/ExtendedMainMenu.test.tsx +0 -28
  79. package/dist/GlobalNavigationBar/desktop/__tests__/MainMenu.test.tsx +0 -55
  80. package/dist/GlobalNavigationBar/desktop/__tests__/RightSideNav.test.tsx +0 -45
  81. package/dist/GlobalNavigationBar/desktop/__tests__/UserMenu.test.tsx +0 -125
  82. package/dist/GlobalNavigationBar/mobile/__tests__/MobileMenu.test.tsx +0 -317
  83. package/dist/GlobalNavigationBar/mobile/__tests__/MobileMenuContent.test.tsx +0 -294
  84. package/dist/GlobalNavigationBar/mobile/__tests__/MobileMenuHeader.test.tsx +0 -195
  85. package/dist/InputFields/__tests__/NumberField.test.tsx +0 -67
  86. package/dist/InputFields/__tests__/NumberInput.test.tsx +0 -68
  87. package/dist/InputFields/__tests__/QuickSearch.test.tsx +0 -42
  88. package/dist/LinearProgress/__tests__/LinearProgress.test.tsx +0 -25
  89. package/dist/List/__tests__/ListRow.test.tsx +0 -18
  90. package/dist/LoadingPage/__tests__/GlobalLoadingPage.test.tsx +0 -23
  91. package/dist/Modals/__tests__/Modal.test.tsx +0 -169
  92. package/dist/Modals/__tests__/ModalContainer.test.tsx +0 -77
  93. package/dist/Modals/__tests__/ModalContent.test.tsx +0 -126
  94. package/dist/NavItem/__tests__/NavItem.test.ts +0 -6
  95. package/dist/NotificationDot/__tests__/NotificationDot.test.tsx +0 -33
  96. package/dist/Paginator/__tests__/Paginator.test.tsx +0 -39
  97. package/dist/Popover/__tests__/Popover.test.tsx +0 -64
  98. package/dist/ProfileButton/__tests__/ProfileButton.test.tsx +0 -31
  99. package/dist/QuizButton/__tests__/QuizButton.test.tsx +0 -53
  100. package/dist/SegmentControl/__tests__/SegmentControl.test.tsx +0 -145
  101. package/dist/SideMenu/__tests__/SideMenu.test.tsx +0 -99
  102. package/dist/Switcher/__tests__/SwitcherMenuItem.tsx +0 -14
  103. package/dist/Table/__tests__/Table.test.tsx +0 -499
  104. package/dist/Tabs/__tests__/HorizontalTabs.test.tsx +0 -95
  105. package/dist/Tabs/__tests__/TabLink.test.tsx +0 -40
  106. package/dist/Tabs/__tests__/Tablist.test.tsx +0 -37
  107. package/dist/Tag/__tests__/Tag.test.tsx +0 -86
  108. package/dist/Toasters/__tests__/Toast.test.tsx +0 -74
  109. package/dist/Toggles/__tests__/ToggleButton.test.tsx +0 -53
  110. package/dist/Toggles/__tests__/ToggleSwitch.test.tsx +0 -87
  111. package/dist/Tooltips/__tests__/TooltipWrapper.test.tsx +0 -16
  112. package/dist/styles/react-datepicker.css +0 -766
@@ -1 +1 @@
1
- {"version":3,"file":"DatepickerField.js","names":["React","styled","css","useTheme","DatePicker","en","dayjs","advancedFormat","quarterOfYear","extend","COLORS","SystemIcons","DatepickerFieldHeader","ComponentTextStyle","focusStyles","scrollBarStyling","TooltipOverflow","ErrorMessage","InputFieldStyling","InputWrapper","ComponentMStyling","ComponentSStyling","Z_INDEXES","useFocusVisibleRef","Size","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","unselectedHoverColoringText","props","generateToken","componentType","state","theme","selectedDefaultColoringText","isOnFill","defaultVariant","todayDefaultColoringText","DatePickerContainer","div","dropdown","$margin","$yearPicker","Bold","Small","Regular","getColor","IconWrapper","focus","DatepickerRow","StyledInputFieldStyling","$suppressReadOnlyStyles","quarterComponentsClassPrefix","DatepickerField","forwardRef","_ref","ref","disabled","readOnly","onChange","invalid","value","validationMessage","dateFormat","autoComplete","placeholder","required","yearPicker","yearsBeforeCurrentDate","yearsAfterCurrentDate","margin","overflowTooltipPosition","onBlur","showQuarterYearPicker","id","dataTestId","rest","_objectWithoutProperties","_excluded","inputRef","datepickerRef","useRef","focusedQuarterRef","activeMonthPage","setActiveMonthPage","useState","yearPickerMode","setYearPickerMode","openAt","setOpenAt","open","setOpen","getFormattedValue","val","year","quarter","format","useEffect","current","getQuarterItem","classname","document","getElementsByClassName","selectedDate","dropdownParent","parentElement","scrollTop","offsetTop","offsetHeight","wrapper","handler","event","key","currentQ","click","previousQ","tabIndex","nextQ","addEventListener","selectedQuarter","i","innerText","includes","setAttribute","firstQuarter","removeEventListener","useImperativeHandle","handleCalendarClose","blur","handleCalendarOpen","maxDate","Date","setFullYear","getFullYear","minDate","itemsNumber","Math","round","handleKeyDown","e","handleBlur","currentTarget","contains","relatedTarget","iconSize","children","$quarterPicker","onCalendarOpen","onCalendarClose","onKeyDown","onClickOutside","newDate","setMonth","locale","undefined","showYearPicker","yearItemNumber","selected","openToDate","preventOpenOnFocus","shouldCloseOnSelect","renderCustomHeader","params","createElement","_objectSpread","customHeaderCount","customInput","$disabled","$readOnly","type","name","className","onFocus","setSelectionRange","$extraRightPadding","Calendar","size","position","input","withArrow","maxWidth","align","TechnicalWarning","color","propTypes","_pt","instanceOf","func","bool","string","number","oneOf"],"sources":["../../src/InputFields/DatepickerField.tsx"],"sourcesContent":["/**\r\n * Import react libraries.\r\n */\r\nimport React from 'react';\r\n\r\n/**\r\n * Import third-party libraries.\r\n */\r\nimport styled, { css, useTheme } from 'styled-components';\r\nimport DatePicker, { ReactDatePickerCustomHeaderProps } from 'react-datepicker';\r\nimport en from 'date-fns/locale/en-GB';\r\nimport dayjs from 'dayjs';\r\nimport advancedFormat from 'dayjs/plugin/advancedFormat';\r\nimport quarterOfYear from \"dayjs/plugin/quarterOfYear\";\r\n\r\ndayjs.extend(advancedFormat);\r\ndayjs.extend(quarterOfYear);\r\n\r\n/**\r\n * Import custom components.\r\n */\r\nimport COLORS from '../styles/colors';\r\nimport {SystemIcons} from '../icons';\r\nimport {DatepickerFieldHeader} from './DatepickerFieldHeader';\r\nimport {ComponentTextStyle, focusStyles, scrollBarStyling} from '../styles';\r\nimport TooltipOverflow from '../Tooltips/TooltipOverflow';\r\n\r\n/**\r\n * Import custom styles.\r\n */\r\nimport {ErrorMessage, InputFieldStyling, InputWrapper} from './styling';\r\nimport '../styles/react-datepicker.css';\r\nimport {ComponentMStyling, ComponentSStyling} from '../styles';\r\nimport {Z_INDEXES} from '../styles';\r\nimport {useFocusVisibleRef} from '../common';\r\nimport {Size, Testable} from '../types';\r\n\r\n/**\r\n * Add custom types.\r\n */\r\nexport type DatepickerFieldProps = Testable & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange' | 'value' | 'size' | 'onBlur'> & {\r\n /** Optional. Selected date. Defaults to current date */\r\n value?: Date;\r\n /** Optional. Handler to be called when selected date was changed. */\r\n onChange?: (date: Date) => void;\r\n /** Optional. Handler to be called when control is losing focus. */\r\n onBlur?: (event: React.FocusEvent<HTMLDivElement>) => void;\r\n /** Optional. Quarter picker mode. If set, then user can not select a particular date, but quarter of the year.\r\n * 1st day of the quarter will be set as value.\r\n */\r\n showQuarterYearPicker?: boolean;\r\n /** Optional. If set, then input field will be shown in 'invalid' state */\r\n invalid?: boolean;\r\n /** Optional. Format in which date will be shown in the input field. Defaults to 'MMMM Do, yyyy'. \r\n * For quarter picker will be shown in 'YYYY, qqq' format.\r\n */\r\n dateFormat?: string;\r\n /** Optional. Validation message to be shown under the input field */\r\n validationMessage?: string;\r\n /** Optional. Value for 'autocomplete' attribute of input field tag. */\r\n autoComplete?: string;\r\n /** Optional. Placeholder text to be shown when no value is selected. */\r\n placeholder?: string;\r\n /** Optional. If set, then user will be able to open year selector by clicking on the month in the dropdown. */\r\n yearPicker?: boolean;\r\n /** Optional. How many years before current year will be available in the year selector mode. */\r\n yearsBeforeCurrentDate?: number;\r\n /** Optional. How many years after current year will be available in the year selector mode. */\r\n yearsAfterCurrentDate?: number;\r\n /** Optional. Margin value to be set to the dropdown container. */\r\n margin?: string;\r\n /** Optional. Position where to show tooltip in case of closed datepicker and value overflowing the input field. */\r\n overflowTooltipPosition?: 'top' | 'bottom';\r\n};\r\n\r\n\r\nconst unselectedHoverColoringText = css`\r\n color: ${props => COLORS.generateToken({componentType: 'text', state: 'hover'}, props.theme)} !important;\r\n background: ${props => COLORS.generateToken({componentType: 'bg-surface', state: 'hover'}, props.theme)} !important; \r\n`;\r\n\r\nconst selectedDefaultColoringText = css`\r\n color: ${props => COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme)} !important;\r\n background: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'primary' }, props.theme)} !important;\r\n`;\r\n\r\nconst todayDefaultColoringText = css`\r\n color: ${props => COLORS.generateToken({ componentType: 'text', defaultVariant: 'default' }, props.theme)};\r\n background: ${props => COLORS.generateToken({ componentType: 'bg-surface', defaultVariant: 'selected' }, props.theme)};\r\n`;\r\n\r\n/**\r\n * Add custom styles.\r\n */\r\nconst DatePickerContainer = styled.div<{ $yearPicker: boolean; $margin: string; $quarterPicker?: boolean }>`\r\n .react-datepicker-popper {\r\n z-index: ${Z_INDEXES.dropdown};\r\n }\r\n\r\n .react-datepicker-popper[data-placement^=bottom] {\r\n padding-top: 0px;\r\n }\r\n\r\n \r\n .react-datepicker-popper[data-placement^=top] {\r\n padding-bottom: 0px;\r\n }\r\n\r\n > div {\r\n display: block;\r\n\r\n ${(props) => (props.$margin ? `margin: ${props.$margin};` : '')}\r\n .react-datepicker {\r\n box-sizing: border-box;\r\n box-shadow: 0px 2px 4px rgb(0 0 0 / 15%);\r\n border: 1px solid #e5e5e5;\r\n }\r\n .react-datepicker__input-container{\r\n z-index: 0;\r\n }\r\n\r\n .react-datepicker__navigation {\r\n line-height: normal;\r\n text-indent: inherit;\r\n border: none;\r\n border-radius: 4px;\r\n height: 48px;\r\n width: 48px;\r\n outline: none;\r\n margin: 0px;\r\n color: transparent;\r\n\r\n &:hover {\r\n background: ${props => COLORS.generateToken({componentType:'bg-surface', state:'hover'}, props.theme)};\r\n\r\n &.react-datepicker__navigation--previous::before {\r\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M15.1975 4.46474C15.5885 4.85478 15.5893 5.48794 15.1993 5.87895L8.92124 12.1727L15.1993 18.4665C15.5893 18.8575 15.5885 19.4907 15.1975 19.8807C14.8065 20.2708 14.1734 20.27 13.7833 19.879L6.8008 12.879C6.41145 12.4886 6.41145 11.8568 6.8008 11.4665L13.7833 4.46651C14.1734 4.0755 14.8065 4.0747 15.1975 4.46474Z' fill='%23215369' /%3E%3C/svg%3E\");\r\n }\r\n\r\n &.react-datepicker__navigation--next::before {\r\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M9.24214 19.8807C8.85113 19.4907 8.85034 18.8575 9.24038 18.4665L15.5184 12.1727L9.24037 5.87895C8.85034 5.48794 8.85113 4.85478 9.24214 4.46474C9.63315 4.0747 10.2663 4.07549 10.6564 4.46651L17.6389 11.4665C18.0282 11.8568 18.0282 12.4886 17.6389 12.879L10.6564 19.879C10.2663 20.27 9.63316 20.2708 9.24214 19.8807Z' fill='%23215369' /%3E%3C/svg%3E\");\r\n }\r\n }\r\n\r\n &:focus {\r\n ${focusStyles}\r\n &.react-datepicker__navigation--next::before {\r\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M9.24214 19.8807C8.85113 19.4907 8.85034 18.8575 9.24038 18.4665L15.5184 12.1727L9.24037 5.87895C8.85034 5.48794 8.85113 4.85478 9.24214 4.46474C9.63315 4.0747 10.2663 4.07549 10.6564 4.46651L17.6389 11.4665C18.0282 11.8568 18.0282 12.4886 17.6389 12.879L10.6564 19.879C10.2663 20.27 9.63316 20.2708 9.24214 19.8807Z' fill='%23163746' /%3E%3C/svg%3E\");\r\n }\r\n\r\n &.react-datepicker__navigation--previous::before {\r\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M15.1975 4.46474C15.5885 4.85478 15.5893 5.48794 15.1993 5.87895L8.92124 12.1727L15.1993 18.4665C15.5893 18.8575 15.5885 19.4907 15.1975 19.8807C14.8065 20.2708 14.1734 20.27 13.7833 19.879L6.8008 12.879C6.41145 12.4886 6.41145 11.8568 6.8008 11.4665L13.7833 4.46651C14.1734 4.0755 14.8065 4.0747 15.1975 4.46474Z' fill='%23163746' /%3E%3C/svg%3E\");\r\n }\r\n }\r\n\r\n &::before {\r\n text-align: center;\r\n display: inline-block;\r\n content: '';\r\n height: 32px;\r\n width: 32px;\r\n vertical-align: middle;\r\n }\r\n\r\n &.react-datepicker__navigation--next::before {\r\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M9.24214 19.8807C8.85113 19.4907 8.85034 18.8575 9.24038 18.4665L15.5184 12.1727L9.24037 5.87895C8.85034 5.48794 8.85113 4.85478 9.24214 4.46474C9.63315 4.0747 10.2663 4.07549 10.6564 4.46651L17.6389 11.4665C18.0282 11.8568 18.0282 12.4886 17.6389 12.879L10.6564 19.879C10.2663 20.27 9.63316 20.2708 9.24214 19.8807Z' fill='%23666666' /%3E%3C/svg%3E\");\r\n }\r\n\r\n &.react-datepicker__navigation--previous::before {\r\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M15.1975 4.46474C15.5885 4.85478 15.5893 5.48794 15.1993 5.87895L8.92124 12.1727L15.1993 18.4665C15.5893 18.8575 15.5885 19.4907 15.1975 19.8807C14.8065 20.2708 14.1734 20.27 13.7833 19.879L6.8008 12.879C6.41145 12.4886 6.41145 11.8568 6.8008 11.4665L13.7833 4.46651C14.1734 4.0755 14.8065 4.0747 15.1975 4.46474Z' fill='%23666666' /%3E%3C/svg%3E\");\r\n }\r\n }\r\n\r\n .react-datepicker__month-container,\r\n .react-datepicker__year--container {\r\n width: 336px;\r\n }\r\n\r\n .react-datepicker__month {\r\n margin: 0px;\r\n }\r\n\r\n .react-datepicker__triangle {\r\n left: 50% !important;\r\n display: none;\r\n }\r\n\r\n .react-datepicker-popper[data-placement^='bottom'] {\r\n margin-top: 0;\r\n }\r\n\r\n .react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle {\r\n border-bottom-color: ${props => COLORS.generateToken({componentType:'bg-surface', state:'hover'}, props.theme)};\r\n }\r\n\r\n .react-datepicker__header {\r\n border-bottom: 1px solid ${props => COLORS.generateToken({componentType: 'border', defaultVariant: 'subtle'}, props.theme)};\r\n background: ${props => COLORS.generateToken({componentType: 'bg-surface', defaultVariant: 'subtle'}, props.theme)};\r\n height: ${(props) => (!props.$yearPicker ? '96px' : '54px')};\r\n padding-top: 0px;\r\n }\r\n\r\n .react-datepicker-year-header {\r\n height: 48px;\r\n line-height: 48px !important;\r\n align-items: center;\r\n\r\n ${props => ComponentSStyling(ComponentTextStyle.Bold, COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme))}\r\n }\r\n\r\n .react-datepicker__current-month {\r\n height: 48px;\r\n display: inline-flex;\r\n align-items: center;\r\n margin-right: 5px;\r\n\r\n ${props => ComponentSStyling(ComponentTextStyle.Bold, COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme))}\r\n }\r\n\r\n .react-datepicker__year {\r\n max-height: 300px;\r\n overflow-y: scroll;\r\n\r\n ${scrollBarStyling(Size.Small)}\r\n }\r\n\r\n .react-datepicker__quarter-wrapper{\r\n width: 100%;\r\n display: flex;\r\n align-content: space-evenly;\r\n flex-wrap: wrap;\r\n align-items: center;\r\n gap: 20px;\r\n }\r\n\r\n .react-datepicker__year-wrapper {\r\n max-width: 100%;\r\n justify-content: space-around;\r\n }\r\n\r\n .react-datepicker__navigation-icon {\r\n display: none;\r\n }\r\n\r\n .react-datepicker__day-name {\r\n display: inline-flex;\r\n justify-content: center;\r\n align-items: center;\r\n height: 48px;\r\n margin: 0px;\r\n width: 48px;\r\n\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme))}\r\n }\r\n\r\n \r\n\r\n .react-datepicker__year-text {\r\n background: ${props => COLORS.getColor('white', props.theme)};\r\n border: none;\r\n display: inline-flex;\r\n justify-content: center;\r\n align-items: center;\r\n margin-top: 20px;\r\n padding-top: 10px;\r\n padding-bottom: 10px;\r\n\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme))}\r\n &.react-datepicker__year-text--disabled {\r\n display: none;\r\n }\r\n\r\n &.react-datepicker__day--keyboard-selected {\r\n color: ${props => COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme)};\r\n background: ${props => COLORS.getColor('white', props.theme)};\r\n font-weight: 400;\r\n border: none;\r\n }\r\n\r\n &:hover {\r\n ${unselectedHoverColoringText}\r\n }\r\n\r\n &:focus {\r\n ${focusStyles}\r\n }\r\n\r\n &.react-datepicker__year-text--selected {\r\n ${selectedDefaultColoringText}\r\n }\r\n }\r\n\r\n .react-datepicker__day, .react-datepicker__quarter-text {\r\n background: ${props => COLORS.getColor('white', props.theme)};\r\n border: none;\r\n display: inline-flex;\r\n justify-content: center;\r\n align-items: center;\r\n flex-grow: 1;\r\n height: 40px;\r\n width: 40px;\r\n margin: 4px;\r\n\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme))}\r\n &.react-datepicker__day--keyboard-selected, .react-datepicker__quarter-text--keyboard-selected {\r\n color: ${props => COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme)};\r\n background: ${props => COLORS.getColor('white', props.theme)};\r\n flex-grow: 1;\r\n font-weight: 400;\r\n border: none;\r\n }\r\n\r\n &.react-datepicker__quarter-text--selected {\r\n ${selectedDefaultColoringText}\r\n flex-grow: 1;\r\n }\r\n\r\n &:hover {\r\n ${unselectedHoverColoringText}\r\n }\r\n\r\n &:focus {\r\n ${focusStyles}\r\n }\r\n\r\n &.react-datepicker__day--selected {\r\n ${selectedDefaultColoringText}\r\n }\r\n\r\n &.react-datepicker__day--today {\r\n border-radius: 0.3rem;\r\n ${todayDefaultColoringText}\r\n \r\n &:hover {\r\n ${unselectedHoverColoringText}\r\n }\r\n\r\n &:focus {\r\n ${focusStyles}\r\n }\r\n }\r\n }\r\n }\r\n`;\r\n\r\nconst IconWrapper = styled.div`\r\n pointer-events: none;\r\n position: absolute;\r\n left: 16px;\r\n width: 24px;\r\n height: 24px;\r\n z-index: ${+Z_INDEXES.focus + 1};\r\n`;\r\n\r\nconst DatepickerRow = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n`;\r\n\r\nconst StyledInputFieldStyling = styled(InputFieldStyling)<{disabled?: boolean, readOnly?: boolean}>`\r\n padding-left: 48px !important;\r\n \r\n &::placeholder {\r\n color: ${props => COLORS.generateToken({componentType: 'text', defaultVariant: 'subtle'}, props.theme)};\r\n }\r\n\r\n &:focus:not(.focus-visible) {\r\n box-shadow: inset 0px 0px 0px 2px ${props => COLORS.getColor('primary_300', props.theme)};\r\n }\r\n\r\n &:hover {\r\n box-shadow: inset 0px 0px 0px 2px ${props => COLORS.generateToken({componentType: 'border', state: 'hover'}, props.theme)};\r\n\r\n ::placeholder {\r\n color: ${props => COLORS.generateToken({componentType: 'text', state: 'hover'}, props.theme)};\r\n }\r\n\r\n cursor: pointer;\r\n background-color: ${props => COLORS.generateToken({componentType: 'bg-surface', state: 'hover'}, props.theme)};\r\n color: ${props => COLORS.generateToken({componentType: 'text', state: 'hover'}, props.theme)};\r\n }\r\n\r\n &:active,\r\n &.open {\r\n box-shadow: inset 0px 0px 0px 2px ${props => COLORS.generateToken({componentType: 'border', state: 'active'}, props.theme)};\r\n background-color: ${props => COLORS.generateToken({componentType: 'bg-surface', state: 'active'}, props.theme)};\r\n color: ${props => COLORS.generateToken({componentType: 'text', state: 'active'}, props.theme)};\r\n\r\n ::placeholder {\r\n color: ${props => COLORS.generateToken({componentType: 'text', state: 'active'}, props.theme)};\r\n }\r\n }\r\n \r\n &:disabled {\r\n background-color: ${props => COLORS.generateToken({componentType: 'bg-surface', state: 'disabled'}, props.theme)};\r\n }\r\n\r\n & ~ ${IconWrapper}{\r\n color: ${props => COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme)};\r\n }\r\n\r\n &:hover ~ ${IconWrapper} {\r\n color: ${props => COLORS.generateToken({ componentType: 'text', state: 'hover' }, props.theme)};\r\n }\r\n\r\n &:active ~ ${IconWrapper}, &.open ~ ${IconWrapper} {\r\n color: ${props => COLORS.generateToken({ componentType: 'text', state: 'active' }, props.theme)};\r\n }\r\n\r\n &[tabindex='-1'] ~ ${IconWrapper} {\r\n color: ${props => !props.$suppressReadOnlyStyles ? COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme) :\r\n COLORS.generateToken({ componentType: 'text', state: 'disabled' }, props.theme)};\r\n }\r\n`;\r\n\r\nconst quarterComponentsClassPrefix = 'react-datepicker__quarter-';\r\n\r\nconst DatepickerField = React.forwardRef<HTMLInputElement, DatepickerFieldProps>(({\r\n disabled,\r\n readOnly,\r\n onChange,\r\n invalid,\r\n value,\r\n validationMessage,\r\n dateFormat,\r\n autoComplete,\r\n placeholder,\r\n required,\r\n yearPicker,\r\n yearsBeforeCurrentDate,\r\n yearsAfterCurrentDate,\r\n margin,\r\n overflowTooltipPosition,\r\n onBlur,\r\n showQuarterYearPicker,\r\n id,\r\n dataTestId,\r\n ...rest\r\n }: DatepickerFieldProps, ref) => {\r\n // Globally used variables within the component\r\n const theme = useTheme();\r\n const inputRef = useFocusVisibleRef();\r\n const datepickerRef = React.useRef<any>(null);\r\n const focusedQuarterRef = React.useRef<number>(1);\r\n const [activeMonthPage, setActiveMonthPage] = React.useState<number>(-1);\r\n const [yearPickerMode, setYearPickerMode] = React.useState<boolean>(false);\r\n const [openAt, setOpenAt] = React.useState<Date | null>(null);\r\n // 'open' flag is used only for tracking current state of the dropdown,\r\n // for explicitly opening/closing the picker we are using 'datepickerRef.current.setOpen'\r\n const [open, setOpen] = React.useState<boolean>(false);\r\n\r\n const getFormattedValue = () => {\r\n if(showQuarterYearPicker)\r\n {\r\n const val = dayjs(value);\r\n return val.year() + ', Q' + val.quarter();\r\n }\r\n else \r\n return dayjs(value).format(dateFormat ? dateFormat : 'MMMM Do, YYYY');\r\n }\r\n /**\r\n * Format the date in a specific way.\r\n */\r\n React.useEffect(() => {\r\n if (value) inputRef.current.value = getFormattedValue();\r\n }, [value]);\r\n\r\n function getQuarterItem(classname: string) : HTMLElement {\r\n return document.getElementsByClassName(quarterComponentsClassPrefix + classname)[0] as HTMLElement;\r\n }\r\n\r\n React.useEffect(() => {\r\n if (yearPickerMode) {\r\n //unfortunately, since there are no refs, and year pickers is rendered not by our code, but by 'react-datepicker'\r\n //we have to touch DOM directly\r\n const selectedDate = document.getElementsByClassName('react-datepicker__year-text--selected')[0] as HTMLElement;\r\n const dropdownParent = selectedDate?.parentElement?.parentElement;\r\n if (selectedDate && dropdownParent) dropdownParent.scrollTop = selectedDate.offsetTop - 2 * selectedDate.offsetHeight;\r\n }\r\n }, [yearPickerMode]);\r\n\r\n React.useEffect(() => {\r\n if(showQuarterYearPicker && open)\r\n {\r\n const wrapper = getQuarterItem('wrapper');\r\n const handler = (event: KeyboardEvent) => {\r\n switch(event.key)\r\n {\r\n case ' ':\r\n case 'Enter':\r\n const currentQ = getQuarterItem(focusedQuarterRef.current + '');\r\n currentQ.click();\r\n break;\r\n\r\n case 'ArrowLeft':\r\n if(focusedQuarterRef.current > 1)\r\n {\r\n const currentQ = getQuarterItem(focusedQuarterRef.current + '');\r\n const previousQ = getQuarterItem((focusedQuarterRef.current - 1) + '');\r\n if(previousQ)\r\n {\r\n currentQ.tabIndex = -1;\r\n previousQ.tabIndex = 0;\r\n previousQ.focus();\r\n focusedQuarterRef.current = focusedQuarterRef.current - 1;\r\n }\r\n }\r\n break;\r\n\r\n case 'ArrowRight':\r\n if(focusedQuarterRef.current < 4)\r\n {\r\n const currentQ = getQuarterItem(focusedQuarterRef.current + '');\r\n const nextQ = getQuarterItem((focusedQuarterRef.current + 1) + '');\r\n if(nextQ)\r\n {\r\n currentQ.tabIndex = -1;\r\n nextQ.tabIndex = 0;\r\n nextQ.focus();\r\n focusedQuarterRef.current = focusedQuarterRef.current + 1;\r\n }\r\n }\r\n break;\r\n }\r\n };\r\n\r\n wrapper.addEventListener('keydown', handler);\r\n //unfortunately since there are no efs, and quarter picker is rendered not by our code, but by 'react-datepicker'\r\n //we have to touch DOM directly\r\n \r\n const selectedQuarter = getQuarterItem('-selected');\r\n if(selectedQuarter) {\r\n for (let i = 1; i < 5; i++) {\r\n if(selectedQuarter.innerText.includes('Q' + i)) {\r\n focusedQuarterRef.current = i;\r\n break;\r\n }\r\n }\r\n selectedQuarter.setAttribute(\"tabIndex\", \"0\");\r\n }\r\n else\r\n {\r\n const firstQuarter = getQuarterItem('1');\r\n if(firstQuarter) {\r\n focusedQuarterRef.current = 1;\r\n firstQuarter.setAttribute(\"tabIndex\", \"0\");\r\n }\r\n }\r\n\r\n return () => {\r\n wrapper.removeEventListener('keydown', handler);\r\n };\r\n }\r\n }, [showQuarterYearPicker, open]);\r\n\r\n //we have to manually reopen the calendar when needed, to guarantee that datepicker will show selected date after year selection\r\n //otherwise after year selection datepicker will show January month of the selected year\r\n React.useEffect(() => {\r\n if (openAt) {\r\n datepickerRef.current.setOpen(true);\r\n //setOpenAt(null);\r\n }\r\n }, [openAt]);\r\n\r\n React.useImperativeHandle(ref, () => inputRef.current, [inputRef]);\r\n\r\n const handleCalendarClose = () => {\r\n inputRef.current?.blur();\r\n setOpen(false);\r\n };\r\n\r\n const handleCalendarOpen = () => {\r\n if (openAt) setOpenAt(null);\r\n setOpen(true);\r\n };\r\n\r\n let maxDate = new Date(value && new Date(value) > new Date() ? new Date(value) : new Date());\r\n maxDate.setFullYear(maxDate.getFullYear() + (yearsAfterCurrentDate ?? 50));\r\n\r\n //itemsNumber - controls number of year select options generated in the dropdown\r\n //items related to dates higher than 'maxDate' will be hidden, thus to avoid creating hundreds of invisible divs, we divide by 5\r\n let minDate = new Date(value && new Date(value) < new Date() ? new Date(value) : new Date());\r\n const itemsNumber = Math.round((minDate.getFullYear() - (yearsBeforeCurrentDate ?? 15)) / 5);\r\n\r\n const handleKeyDown = (e: React.KeyboardEvent<HTMLElement>) => {\r\n if (e.key === 'Escape' || e.key === 'Esc')\r\n datepickerRef.current.setOpen(false);\r\n };\r\n\r\n const handleBlur = (e: React.FocusEvent<HTMLDivElement>) => {\r\n // @ts-ignore\r\n if (!e.currentTarget.contains(e.relatedTarget)) {\r\n onBlur && onBlur(e);\r\n }\r\n };\r\n const iconSize = 24;\r\n\r\n return (\r\n <>\r\n {/* Let's render the input itself */}\r\n <DatePickerContainer $quarterPicker={showQuarterYearPicker} data-testid={dataTestId} $yearPicker={yearPickerMode} $margin={margin || ''} onBlur={handleBlur}>\r\n <DatePicker\r\n ref={datepickerRef}\r\n onCalendarOpen={handleCalendarOpen}\r\n onCalendarClose={handleCalendarClose}\r\n onKeyDown={handleKeyDown}\r\n id={id}\r\n onClickOutside={() => datepickerRef.current.setOpen(false)}\r\n\r\n onChange={(e: any) => {\r\n if (onChange) {\r\n if (yearPickerMode) {\r\n const newDate = new Date();\r\n newDate.setFullYear(e.getFullYear());\r\n newDate.setMonth(activeMonthPage);\r\n setOpenAt(newDate);\r\n } else onChange(e);\r\n }\r\n if (yearPickerMode) setYearPickerMode(false);\r\n }}\r\n disabled={disabled || readOnly}\r\n locale={en}\r\n showQuarterYearPicker={showQuarterYearPicker}\r\n dateFormat={showQuarterYearPicker ? \"yyyy, QQQ\" : undefined}\r\n showYearPicker={yearPickerMode}\r\n //we manipulate 'yearItemNumber' and 'maxDate' to guarantee number of year select options shown before and after selected year\r\n yearItemNumber={yearPickerMode ? itemsNumber : undefined}\r\n maxDate={yearPickerMode ? maxDate : undefined}\r\n selected={value}\r\n openToDate={openAt ?? undefined}\r\n preventOpenOnFocus={true}\r\n shouldCloseOnSelect={true}\r\n renderCustomHeader={\r\n yearPicker\r\n ? (params: ReactDatePickerCustomHeaderProps) =>\r\n React.createElement(\r\n DatepickerFieldHeader,\r\n {\r\n ...params,\r\n setActiveMonthPage,\r\n customHeaderCount: 0,\r\n yearPickerMode: yearPickerMode,\r\n setYearPickerMode: setYearPickerMode,\r\n },\r\n null,\r\n )\r\n : undefined\r\n }\r\n customInput={\r\n <InputWrapper $disabled={disabled} $readOnly={readOnly}>\r\n <DatepickerRow>\r\n <StyledInputFieldStyling\r\n ref={inputRef}\r\n type=\"text\"\r\n name=\"datepicker\"\r\n onKeyDown={(e) => e.key === 'Enter' && datepickerRef.current.setOpen(true)}\r\n className={(invalid ? 'invalid' : '' + (open ? ' open' : ''))}\r\n tabIndex={disabled || readOnly ? -1 : 0}\r\n onFocus={(e) => inputRef.current?.setSelectionRange(0, 0)}\r\n autoComplete={autoComplete}\r\n placeholder={placeholder}\r\n $extraRightPadding={iconSize}\r\n disabled={disabled}\r\n readOnly={true}\r\n $suppressReadOnlyStyles={!readOnly}\r\n required={required}\r\n {...rest}\r\n />\r\n <IconWrapper>\r\n <SystemIcons.Calendar size=\"24\"/>\r\n </IconWrapper>\r\n </DatepickerRow>\r\n {!open && <TooltipOverflow position={overflowTooltipPosition} input={inputRef} withArrow={true} maxWidth=\"100%\" size={Size.Small} align='end'>\r\n {getFormattedValue()}\r\n </TooltipOverflow>}\r\n </InputWrapper>\r\n }\r\n />\r\n </DatePickerContainer>\r\n\r\n {/* If there is an error, let's render the error */}\r\n {validationMessage && (\r\n <ErrorMessage>\r\n <SystemIcons.TechnicalWarning color={COLORS.generateToken({ componentType: 'icon', defaultVariant: 'warning' }, theme)}/>\r\n <span>{validationMessage}</span>\r\n </ErrorMessage>\r\n )}\r\n </>\r\n );\r\n});\r\n\r\nexport default DatepickerField;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DatepickerField.js","names":["React","styled","css","useTheme","DatePicker","en","dayjs","advancedFormat","quarterOfYear","extend","COLORS","SystemIcons","DatepickerFieldHeader","ComponentTextStyle","focusStyles","scrollBarStyling","TooltipOverflow","ErrorMessage","InputFieldStyling","InputWrapper","ComponentMStyling","ComponentSStyling","Z_INDEXES","useFocusVisibleRef","Size","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","unselectedHoverColoringText","props","generateToken","componentType","state","theme","selectedDefaultColoringText","isOnFill","defaultVariant","todayDefaultColoringText","DatePickerContainer","div","dropdown","$margin","$yearPicker","Bold","Small","Regular","getColor","IconWrapper","focus","DatepickerRow","StyledInputFieldStyling","$suppressReadOnlyStyles","quarterComponentsClassPrefix","DatepickerField","forwardRef","_ref","ref","disabled","readOnly","onChange","invalid","value","validationMessage","dateFormat","autoComplete","placeholder","required","yearPicker","yearsBeforeCurrentDate","yearsAfterCurrentDate","margin","overflowTooltipPosition","onBlur","showQuarterYearPicker","id","dataTestId","rest","_objectWithoutProperties","_excluded","inputRef","datepickerRef","useRef","focusedQuarterRef","activeMonthPage","setActiveMonthPage","useState","yearPickerMode","setYearPickerMode","openAt","setOpenAt","open","setOpen","getFormattedValue","val","year","quarter","format","useEffect","current","getQuarterItem","classname","document","getElementsByClassName","selectedDate","dropdownParent","parentElement","scrollTop","offsetTop","offsetHeight","wrapper","handler","event","key","currentQ","click","previousQ","tabIndex","nextQ","addEventListener","selectedQuarter","i","innerText","includes","setAttribute","firstQuarter","removeEventListener","useImperativeHandle","handleCalendarClose","blur","handleCalendarOpen","maxDate","Date","setFullYear","getFullYear","minDate","itemsNumber","Math","round","handleKeyDown","e","handleBlur","currentTarget","contains","relatedTarget","iconSize","children","$quarterPicker","onCalendarOpen","onCalendarClose","onKeyDown","onClickOutside","newDate","setMonth","locale","undefined","showYearPicker","yearItemNumber","selected","openToDate","preventOpenOnFocus","shouldCloseOnSelect","renderCustomHeader","params","createElement","_objectSpread","customHeaderCount","customInput","$disabled","$readOnly","type","name","className","onFocus","setSelectionRange","$extraRightPadding","Calendar","size","position","input","withArrow","maxWidth","align","TechnicalWarning","color","propTypes","_pt","instanceOf","func","bool","string","number","oneOf"],"sources":["../../src/InputFields/DatepickerField.tsx"],"sourcesContent":["/**\r\n * Import react libraries.\r\n */\r\nimport React from 'react';\r\n\r\n/**\r\n * Import third-party libraries.\r\n */\r\nimport styled, { css, useTheme } from 'styled-components';\r\nimport DatePicker, { ReactDatePickerCustomHeaderProps } from 'react-datepicker';\r\nimport en from 'date-fns/locale/en-GB';\r\nimport dayjs from 'dayjs';\r\nimport advancedFormat from 'dayjs/plugin/advancedFormat';\r\nimport quarterOfYear from \"dayjs/plugin/quarterOfYear\";\r\n\r\ndayjs.extend(advancedFormat);\r\ndayjs.extend(quarterOfYear);\r\n\r\n/**\r\n * Import custom components.\r\n */\r\nimport COLORS from '../styles/colors';\r\nimport {SystemIcons} from '../icons';\r\nimport {DatepickerFieldHeader} from './DatepickerFieldHeader';\r\nimport {ComponentTextStyle, focusStyles, scrollBarStyling} from '../styles';\r\nimport TooltipOverflow from '../Tooltips/TooltipOverflow';\r\n\r\n/**\r\n * Import custom styles.\r\n */\r\nimport {ErrorMessage, InputFieldStyling, InputWrapper} from './styling';\r\nimport 'react-datepicker/dist/react-datepicker.css';\r\nimport {ComponentMStyling, ComponentSStyling} from '../styles';\r\nimport {Z_INDEXES} from '../styles';\r\nimport {useFocusVisibleRef} from '../common';\r\nimport {Size, Testable} from '../types';\r\n\r\n/**\r\n * Add custom types.\r\n */\r\nexport type DatepickerFieldProps = Testable & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange' | 'value' | 'size' | 'onBlur'> & {\r\n /** Optional. Selected date. Defaults to current date */\r\n value?: Date;\r\n /** Optional. Handler to be called when selected date was changed. */\r\n onChange?: (date: Date) => void;\r\n /** Optional. Handler to be called when control is losing focus. */\r\n onBlur?: (event: React.FocusEvent<HTMLDivElement>) => void;\r\n /** Optional. Quarter picker mode. If set, then user can not select a particular date, but quarter of the year.\r\n * 1st day of the quarter will be set as value.\r\n */\r\n showQuarterYearPicker?: boolean;\r\n /** Optional. If set, then input field will be shown in 'invalid' state */\r\n invalid?: boolean;\r\n /** Optional. Format in which date will be shown in the input field. Defaults to 'MMMM Do, yyyy'. \r\n * For quarter picker will be shown in 'YYYY, qqq' format.\r\n */\r\n dateFormat?: string;\r\n /** Optional. Validation message to be shown under the input field */\r\n validationMessage?: string;\r\n /** Optional. Value for 'autocomplete' attribute of input field tag. */\r\n autoComplete?: string;\r\n /** Optional. Placeholder text to be shown when no value is selected. */\r\n placeholder?: string;\r\n /** Optional. If set, then user will be able to open year selector by clicking on the month in the dropdown. */\r\n yearPicker?: boolean;\r\n /** Optional. How many years before current year will be available in the year selector mode. */\r\n yearsBeforeCurrentDate?: number;\r\n /** Optional. How many years after current year will be available in the year selector mode. */\r\n yearsAfterCurrentDate?: number;\r\n /** Optional. Margin value to be set to the dropdown container. */\r\n margin?: string;\r\n /** Optional. Position where to show tooltip in case of closed datepicker and value overflowing the input field. */\r\n overflowTooltipPosition?: 'top' | 'bottom';\r\n};\r\n\r\n\r\nconst unselectedHoverColoringText = css`\r\n color: ${props => COLORS.generateToken({componentType: 'text', state: 'hover'}, props.theme)} !important;\r\n background: ${props => COLORS.generateToken({componentType: 'bg-surface', state: 'hover'}, props.theme)} !important; \r\n`;\r\n\r\nconst selectedDefaultColoringText = css`\r\n color: ${props => COLORS.generateToken({ componentType: 'text', isOnFill: true, defaultVariant: 'primary' }, props.theme)} !important;\r\n background: ${props => COLORS.generateToken({ componentType: 'bg-fill', defaultVariant: 'primary' }, props.theme)} !important;\r\n`;\r\n\r\nconst todayDefaultColoringText = css`\r\n color: ${props => COLORS.generateToken({ componentType: 'text', defaultVariant: 'default' }, props.theme)};\r\n background: ${props => COLORS.generateToken({ componentType: 'bg-surface', defaultVariant: 'selected' }, props.theme)};\r\n`;\r\n\r\n/**\r\n * Add custom styles.\r\n */\r\nconst DatePickerContainer = styled.div<{ $yearPicker: boolean; $margin: string; $quarterPicker?: boolean }>`\r\n .react-datepicker-popper {\r\n z-index: ${Z_INDEXES.dropdown};\r\n }\r\n\r\n .react-datepicker-popper[data-placement^=bottom] {\r\n padding-top: 0px;\r\n }\r\n\r\n \r\n .react-datepicker-popper[data-placement^=top] {\r\n padding-bottom: 0px;\r\n }\r\n\r\n > div {\r\n display: block;\r\n\r\n ${(props) => (props.$margin ? `margin: ${props.$margin};` : '')}\r\n .react-datepicker {\r\n box-sizing: border-box;\r\n box-shadow: 0px 2px 4px rgb(0 0 0 / 15%);\r\n border: 1px solid #e5e5e5;\r\n }\r\n .react-datepicker__input-container{\r\n z-index: 0;\r\n }\r\n\r\n .react-datepicker__navigation {\r\n line-height: normal;\r\n text-indent: inherit;\r\n border: none;\r\n border-radius: 4px;\r\n height: 48px;\r\n width: 48px;\r\n outline: none;\r\n margin: 0px;\r\n color: transparent;\r\n\r\n &:hover {\r\n background: ${props => COLORS.generateToken({componentType:'bg-surface', state:'hover'}, props.theme)};\r\n\r\n &.react-datepicker__navigation--previous::before {\r\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M15.1975 4.46474C15.5885 4.85478 15.5893 5.48794 15.1993 5.87895L8.92124 12.1727L15.1993 18.4665C15.5893 18.8575 15.5885 19.4907 15.1975 19.8807C14.8065 20.2708 14.1734 20.27 13.7833 19.879L6.8008 12.879C6.41145 12.4886 6.41145 11.8568 6.8008 11.4665L13.7833 4.46651C14.1734 4.0755 14.8065 4.0747 15.1975 4.46474Z' fill='%23215369' /%3E%3C/svg%3E\");\r\n }\r\n\r\n &.react-datepicker__navigation--next::before {\r\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M9.24214 19.8807C8.85113 19.4907 8.85034 18.8575 9.24038 18.4665L15.5184 12.1727L9.24037 5.87895C8.85034 5.48794 8.85113 4.85478 9.24214 4.46474C9.63315 4.0747 10.2663 4.07549 10.6564 4.46651L17.6389 11.4665C18.0282 11.8568 18.0282 12.4886 17.6389 12.879L10.6564 19.879C10.2663 20.27 9.63316 20.2708 9.24214 19.8807Z' fill='%23215369' /%3E%3C/svg%3E\");\r\n }\r\n }\r\n\r\n &:focus {\r\n ${focusStyles}\r\n &.react-datepicker__navigation--next::before {\r\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M9.24214 19.8807C8.85113 19.4907 8.85034 18.8575 9.24038 18.4665L15.5184 12.1727L9.24037 5.87895C8.85034 5.48794 8.85113 4.85478 9.24214 4.46474C9.63315 4.0747 10.2663 4.07549 10.6564 4.46651L17.6389 11.4665C18.0282 11.8568 18.0282 12.4886 17.6389 12.879L10.6564 19.879C10.2663 20.27 9.63316 20.2708 9.24214 19.8807Z' fill='%23163746' /%3E%3C/svg%3E\");\r\n }\r\n\r\n &.react-datepicker__navigation--previous::before {\r\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M15.1975 4.46474C15.5885 4.85478 15.5893 5.48794 15.1993 5.87895L8.92124 12.1727L15.1993 18.4665C15.5893 18.8575 15.5885 19.4907 15.1975 19.8807C14.8065 20.2708 14.1734 20.27 13.7833 19.879L6.8008 12.879C6.41145 12.4886 6.41145 11.8568 6.8008 11.4665L13.7833 4.46651C14.1734 4.0755 14.8065 4.0747 15.1975 4.46474Z' fill='%23163746' /%3E%3C/svg%3E\");\r\n }\r\n }\r\n\r\n &::before {\r\n text-align: center;\r\n display: inline-block;\r\n content: '';\r\n height: 32px;\r\n width: 32px;\r\n vertical-align: middle;\r\n }\r\n\r\n &.react-datepicker__navigation--next::before {\r\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M9.24214 19.8807C8.85113 19.4907 8.85034 18.8575 9.24038 18.4665L15.5184 12.1727L9.24037 5.87895C8.85034 5.48794 8.85113 4.85478 9.24214 4.46474C9.63315 4.0747 10.2663 4.07549 10.6564 4.46651L17.6389 11.4665C18.0282 11.8568 18.0282 12.4886 17.6389 12.879L10.6564 19.879C10.2663 20.27 9.63316 20.2708 9.24214 19.8807Z' fill='%23666666' /%3E%3C/svg%3E\");\r\n }\r\n\r\n &.react-datepicker__navigation--previous::before {\r\n background-image: url(\"data:image/svg+xml,%3Csvg style='width: 32px; height: 32px;' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fillRule='evenodd' clipRule='evenodd' d='M15.1975 4.46474C15.5885 4.85478 15.5893 5.48794 15.1993 5.87895L8.92124 12.1727L15.1993 18.4665C15.5893 18.8575 15.5885 19.4907 15.1975 19.8807C14.8065 20.2708 14.1734 20.27 13.7833 19.879L6.8008 12.879C6.41145 12.4886 6.41145 11.8568 6.8008 11.4665L13.7833 4.46651C14.1734 4.0755 14.8065 4.0747 15.1975 4.46474Z' fill='%23666666' /%3E%3C/svg%3E\");\r\n }\r\n }\r\n\r\n .react-datepicker__month-container,\r\n .react-datepicker__year--container {\r\n width: 336px;\r\n }\r\n\r\n .react-datepicker__month {\r\n margin: 0px;\r\n }\r\n\r\n .react-datepicker__triangle {\r\n left: 50% !important;\r\n display: none;\r\n }\r\n\r\n .react-datepicker-popper[data-placement^='bottom'] {\r\n margin-top: 0;\r\n }\r\n\r\n .react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle {\r\n border-bottom-color: ${props => COLORS.generateToken({componentType:'bg-surface', state:'hover'}, props.theme)};\r\n }\r\n\r\n .react-datepicker__header {\r\n border-bottom: 1px solid ${props => COLORS.generateToken({componentType: 'border', defaultVariant: 'subtle'}, props.theme)};\r\n background: ${props => COLORS.generateToken({componentType: 'bg-surface', defaultVariant: 'subtle'}, props.theme)};\r\n height: ${(props) => (!props.$yearPicker ? '96px' : '54px')};\r\n padding-top: 0px;\r\n }\r\n\r\n .react-datepicker-year-header {\r\n height: 48px;\r\n line-height: 48px !important;\r\n align-items: center;\r\n\r\n ${props => ComponentSStyling(ComponentTextStyle.Bold, COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme))}\r\n }\r\n\r\n .react-datepicker__current-month {\r\n height: 48px;\r\n display: inline-flex;\r\n align-items: center;\r\n margin-right: 5px;\r\n\r\n ${props => ComponentSStyling(ComponentTextStyle.Bold, COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme))}\r\n }\r\n\r\n .react-datepicker__year {\r\n max-height: 300px;\r\n overflow-y: scroll;\r\n\r\n ${scrollBarStyling(Size.Small)}\r\n }\r\n\r\n .react-datepicker__quarter-wrapper{\r\n width: 100%;\r\n display: flex;\r\n align-content: space-evenly;\r\n flex-wrap: wrap;\r\n align-items: center;\r\n gap: 20px;\r\n }\r\n\r\n .react-datepicker__year-wrapper {\r\n max-width: 100%;\r\n justify-content: space-around;\r\n }\r\n\r\n .react-datepicker__navigation-icon {\r\n display: none;\r\n }\r\n\r\n .react-datepicker__day-name {\r\n display: inline-flex;\r\n justify-content: center;\r\n align-items: center;\r\n height: 48px;\r\n margin: 0px;\r\n width: 48px;\r\n\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme))}\r\n }\r\n\r\n \r\n\r\n .react-datepicker__year-text {\r\n background: ${props => COLORS.getColor('white', props.theme)};\r\n border: none;\r\n display: inline-flex;\r\n justify-content: center;\r\n align-items: center;\r\n margin-top: 20px;\r\n padding-top: 10px;\r\n padding-bottom: 10px;\r\n\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme))}\r\n &.react-datepicker__year-text--disabled {\r\n display: none;\r\n }\r\n\r\n &.react-datepicker__day--keyboard-selected {\r\n color: ${props => COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme)};\r\n background: ${props => COLORS.getColor('white', props.theme)};\r\n font-weight: 400;\r\n border: none;\r\n }\r\n\r\n &:hover {\r\n ${unselectedHoverColoringText}\r\n }\r\n\r\n &:focus {\r\n ${focusStyles}\r\n }\r\n\r\n &.react-datepicker__year-text--selected {\r\n ${selectedDefaultColoringText}\r\n }\r\n }\r\n\r\n .react-datepicker__day, .react-datepicker__quarter-text {\r\n background: ${props => COLORS.getColor('white', props.theme)};\r\n border: none;\r\n display: inline-flex;\r\n justify-content: center;\r\n align-items: center;\r\n flex-grow: 1;\r\n height: 40px;\r\n width: 40px;\r\n margin: 4px;\r\n\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme))}\r\n &.react-datepicker__day--keyboard-selected, .react-datepicker__quarter-text--keyboard-selected {\r\n color: ${props => COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme)};\r\n background: ${props => COLORS.getColor('white', props.theme)};\r\n flex-grow: 1;\r\n font-weight: 400;\r\n border: none;\r\n }\r\n\r\n &.react-datepicker__quarter-text--selected {\r\n ${selectedDefaultColoringText}\r\n flex-grow: 1;\r\n }\r\n\r\n &:hover {\r\n ${unselectedHoverColoringText}\r\n }\r\n\r\n &:focus {\r\n ${focusStyles}\r\n }\r\n\r\n &.react-datepicker__day--selected {\r\n ${selectedDefaultColoringText}\r\n }\r\n\r\n &.react-datepicker__day--today {\r\n border-radius: 0.3rem;\r\n ${todayDefaultColoringText}\r\n \r\n &:hover {\r\n ${unselectedHoverColoringText}\r\n }\r\n\r\n &:focus {\r\n ${focusStyles}\r\n }\r\n }\r\n }\r\n }\r\n`;\r\n\r\nconst IconWrapper = styled.div`\r\n pointer-events: none;\r\n position: absolute;\r\n left: 16px;\r\n width: 24px;\r\n height: 24px;\r\n z-index: ${+Z_INDEXES.focus + 1};\r\n`;\r\n\r\nconst DatepickerRow = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n`;\r\n\r\nconst StyledInputFieldStyling = styled(InputFieldStyling)<{disabled?: boolean, readOnly?: boolean}>`\r\n padding-left: 48px !important;\r\n \r\n &::placeholder {\r\n color: ${props => COLORS.generateToken({componentType: 'text', defaultVariant: 'subtle'}, props.theme)};\r\n }\r\n\r\n &:focus:not(.focus-visible) {\r\n box-shadow: inset 0px 0px 0px 2px ${props => COLORS.getColor('primary_300', props.theme)};\r\n }\r\n\r\n &:hover {\r\n box-shadow: inset 0px 0px 0px 2px ${props => COLORS.generateToken({componentType: 'border', state: 'hover'}, props.theme)};\r\n\r\n ::placeholder {\r\n color: ${props => COLORS.generateToken({componentType: 'text', state: 'hover'}, props.theme)};\r\n }\r\n\r\n cursor: pointer;\r\n background-color: ${props => COLORS.generateToken({componentType: 'bg-surface', state: 'hover'}, props.theme)};\r\n color: ${props => COLORS.generateToken({componentType: 'text', state: 'hover'}, props.theme)};\r\n }\r\n\r\n &:active,\r\n &.open {\r\n box-shadow: inset 0px 0px 0px 2px ${props => COLORS.generateToken({componentType: 'border', state: 'active'}, props.theme)};\r\n background-color: ${props => COLORS.generateToken({componentType: 'bg-surface', state: 'active'}, props.theme)};\r\n color: ${props => COLORS.generateToken({componentType: 'text', state: 'active'}, props.theme)};\r\n\r\n ::placeholder {\r\n color: ${props => COLORS.generateToken({componentType: 'text', state: 'active'}, props.theme)};\r\n }\r\n }\r\n \r\n &:disabled {\r\n background-color: ${props => COLORS.generateToken({componentType: 'bg-surface', state: 'disabled'}, props.theme)};\r\n }\r\n\r\n & ~ ${IconWrapper}{\r\n color: ${props => COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme)};\r\n }\r\n\r\n &:hover ~ ${IconWrapper} {\r\n color: ${props => COLORS.generateToken({ componentType: 'text', state: 'hover' }, props.theme)};\r\n }\r\n\r\n &:active ~ ${IconWrapper}, &.open ~ ${IconWrapper} {\r\n color: ${props => COLORS.generateToken({ componentType: 'text', state: 'active' }, props.theme)};\r\n }\r\n\r\n &[tabindex='-1'] ~ ${IconWrapper} {\r\n color: ${props => !props.$suppressReadOnlyStyles ? COLORS.generateToken({ componentType: 'text', defaultVariant: 'subtle' }, props.theme) :\r\n COLORS.generateToken({ componentType: 'text', state: 'disabled' }, props.theme)};\r\n }\r\n`;\r\n\r\nconst quarterComponentsClassPrefix = 'react-datepicker__quarter-';\r\n\r\nconst DatepickerField = React.forwardRef<HTMLInputElement, DatepickerFieldProps>(({\r\n disabled,\r\n readOnly,\r\n onChange,\r\n invalid,\r\n value,\r\n validationMessage,\r\n dateFormat,\r\n autoComplete,\r\n placeholder,\r\n required,\r\n yearPicker,\r\n yearsBeforeCurrentDate,\r\n yearsAfterCurrentDate,\r\n margin,\r\n overflowTooltipPosition,\r\n onBlur,\r\n showQuarterYearPicker,\r\n id,\r\n dataTestId,\r\n ...rest\r\n }: DatepickerFieldProps, ref) => {\r\n // Globally used variables within the component\r\n const theme = useTheme();\r\n const inputRef = useFocusVisibleRef();\r\n const datepickerRef = React.useRef<any>(null);\r\n const focusedQuarterRef = React.useRef<number>(1);\r\n const [activeMonthPage, setActiveMonthPage] = React.useState<number>(-1);\r\n const [yearPickerMode, setYearPickerMode] = React.useState<boolean>(false);\r\n const [openAt, setOpenAt] = React.useState<Date | null>(null);\r\n // 'open' flag is used only for tracking current state of the dropdown,\r\n // for explicitly opening/closing the picker we are using 'datepickerRef.current.setOpen'\r\n const [open, setOpen] = React.useState<boolean>(false);\r\n\r\n const getFormattedValue = () => {\r\n if(showQuarterYearPicker)\r\n {\r\n const val = dayjs(value);\r\n return val.year() + ', Q' + val.quarter();\r\n }\r\n else \r\n return dayjs(value).format(dateFormat ? dateFormat : 'MMMM Do, YYYY');\r\n }\r\n /**\r\n * Format the date in a specific way.\r\n */\r\n React.useEffect(() => {\r\n if (value) inputRef.current.value = getFormattedValue();\r\n }, [value]);\r\n\r\n function getQuarterItem(classname: string) : HTMLElement {\r\n return document.getElementsByClassName(quarterComponentsClassPrefix + classname)[0] as HTMLElement;\r\n }\r\n\r\n React.useEffect(() => {\r\n if (yearPickerMode) {\r\n //unfortunately, since there are no refs, and year pickers is rendered not by our code, but by 'react-datepicker'\r\n //we have to touch DOM directly\r\n const selectedDate = document.getElementsByClassName('react-datepicker__year-text--selected')[0] as HTMLElement;\r\n const dropdownParent = selectedDate?.parentElement?.parentElement;\r\n if (selectedDate && dropdownParent) dropdownParent.scrollTop = selectedDate.offsetTop - 2 * selectedDate.offsetHeight;\r\n }\r\n }, [yearPickerMode]);\r\n\r\n React.useEffect(() => {\r\n if(showQuarterYearPicker && open)\r\n {\r\n const wrapper = getQuarterItem('wrapper');\r\n const handler = (event: KeyboardEvent) => {\r\n switch(event.key)\r\n {\r\n case ' ':\r\n case 'Enter':\r\n const currentQ = getQuarterItem(focusedQuarterRef.current + '');\r\n currentQ.click();\r\n break;\r\n\r\n case 'ArrowLeft':\r\n if(focusedQuarterRef.current > 1)\r\n {\r\n const currentQ = getQuarterItem(focusedQuarterRef.current + '');\r\n const previousQ = getQuarterItem((focusedQuarterRef.current - 1) + '');\r\n if(previousQ)\r\n {\r\n currentQ.tabIndex = -1;\r\n previousQ.tabIndex = 0;\r\n previousQ.focus();\r\n focusedQuarterRef.current = focusedQuarterRef.current - 1;\r\n }\r\n }\r\n break;\r\n\r\n case 'ArrowRight':\r\n if(focusedQuarterRef.current < 4)\r\n {\r\n const currentQ = getQuarterItem(focusedQuarterRef.current + '');\r\n const nextQ = getQuarterItem((focusedQuarterRef.current + 1) + '');\r\n if(nextQ)\r\n {\r\n currentQ.tabIndex = -1;\r\n nextQ.tabIndex = 0;\r\n nextQ.focus();\r\n focusedQuarterRef.current = focusedQuarterRef.current + 1;\r\n }\r\n }\r\n break;\r\n }\r\n };\r\n\r\n wrapper.addEventListener('keydown', handler);\r\n //unfortunately since there are no efs, and quarter picker is rendered not by our code, but by 'react-datepicker'\r\n //we have to touch DOM directly\r\n \r\n const selectedQuarter = getQuarterItem('-selected');\r\n if(selectedQuarter) {\r\n for (let i = 1; i < 5; i++) {\r\n if(selectedQuarter.innerText.includes('Q' + i)) {\r\n focusedQuarterRef.current = i;\r\n break;\r\n }\r\n }\r\n selectedQuarter.setAttribute(\"tabIndex\", \"0\");\r\n }\r\n else\r\n {\r\n const firstQuarter = getQuarterItem('1');\r\n if(firstQuarter) {\r\n focusedQuarterRef.current = 1;\r\n firstQuarter.setAttribute(\"tabIndex\", \"0\");\r\n }\r\n }\r\n\r\n return () => {\r\n wrapper.removeEventListener('keydown', handler);\r\n };\r\n }\r\n }, [showQuarterYearPicker, open]);\r\n\r\n //we have to manually reopen the calendar when needed, to guarantee that datepicker will show selected date after year selection\r\n //otherwise after year selection datepicker will show January month of the selected year\r\n React.useEffect(() => {\r\n if (openAt) {\r\n datepickerRef.current.setOpen(true);\r\n //setOpenAt(null);\r\n }\r\n }, [openAt]);\r\n\r\n React.useImperativeHandle(ref, () => inputRef.current, [inputRef]);\r\n\r\n const handleCalendarClose = () => {\r\n inputRef.current?.blur();\r\n setOpen(false);\r\n };\r\n\r\n const handleCalendarOpen = () => {\r\n if (openAt) setOpenAt(null);\r\n setOpen(true);\r\n };\r\n\r\n let maxDate = new Date(value && new Date(value) > new Date() ? new Date(value) : new Date());\r\n maxDate.setFullYear(maxDate.getFullYear() + (yearsAfterCurrentDate ?? 50));\r\n\r\n //itemsNumber - controls number of year select options generated in the dropdown\r\n //items related to dates higher than 'maxDate' will be hidden, thus to avoid creating hundreds of invisible divs, we divide by 5\r\n let minDate = new Date(value && new Date(value) < new Date() ? new Date(value) : new Date());\r\n const itemsNumber = Math.round((minDate.getFullYear() - (yearsBeforeCurrentDate ?? 15)) / 5);\r\n\r\n const handleKeyDown = (e: React.KeyboardEvent<HTMLElement>) => {\r\n if (e.key === 'Escape' || e.key === 'Esc')\r\n datepickerRef.current.setOpen(false);\r\n };\r\n\r\n const handleBlur = (e: React.FocusEvent<HTMLDivElement>) => {\r\n // @ts-ignore\r\n if (!e.currentTarget.contains(e.relatedTarget)) {\r\n onBlur && onBlur(e);\r\n }\r\n };\r\n const iconSize = 24;\r\n\r\n return (\r\n <>\r\n {/* Let's render the input itself */}\r\n <DatePickerContainer $quarterPicker={showQuarterYearPicker} data-testid={dataTestId} $yearPicker={yearPickerMode} $margin={margin || ''} onBlur={handleBlur}>\r\n <DatePicker\r\n ref={datepickerRef}\r\n onCalendarOpen={handleCalendarOpen}\r\n onCalendarClose={handleCalendarClose}\r\n onKeyDown={handleKeyDown}\r\n id={id}\r\n onClickOutside={() => datepickerRef.current.setOpen(false)}\r\n\r\n onChange={(e: any) => {\r\n if (onChange) {\r\n if (yearPickerMode) {\r\n const newDate = new Date();\r\n newDate.setFullYear(e.getFullYear());\r\n newDate.setMonth(activeMonthPage);\r\n setOpenAt(newDate);\r\n } else onChange(e);\r\n }\r\n if (yearPickerMode) setYearPickerMode(false);\r\n }}\r\n disabled={disabled || readOnly}\r\n locale={en}\r\n showQuarterYearPicker={showQuarterYearPicker}\r\n dateFormat={showQuarterYearPicker ? \"yyyy, QQQ\" : undefined}\r\n showYearPicker={yearPickerMode}\r\n //we manipulate 'yearItemNumber' and 'maxDate' to guarantee number of year select options shown before and after selected year\r\n yearItemNumber={yearPickerMode ? itemsNumber : undefined}\r\n maxDate={yearPickerMode ? maxDate : undefined}\r\n selected={value}\r\n openToDate={openAt ?? undefined}\r\n preventOpenOnFocus={true}\r\n shouldCloseOnSelect={true}\r\n renderCustomHeader={\r\n yearPicker\r\n ? (params: ReactDatePickerCustomHeaderProps) =>\r\n React.createElement(\r\n DatepickerFieldHeader,\r\n {\r\n ...params,\r\n setActiveMonthPage,\r\n customHeaderCount: 0,\r\n yearPickerMode: yearPickerMode,\r\n setYearPickerMode: setYearPickerMode,\r\n },\r\n null,\r\n )\r\n : undefined\r\n }\r\n customInput={\r\n <InputWrapper $disabled={disabled} $readOnly={readOnly}>\r\n <DatepickerRow>\r\n <StyledInputFieldStyling\r\n ref={inputRef}\r\n type=\"text\"\r\n name=\"datepicker\"\r\n onKeyDown={(e) => e.key === 'Enter' && datepickerRef.current.setOpen(true)}\r\n className={(invalid ? 'invalid' : '' + (open ? ' open' : ''))}\r\n tabIndex={disabled || readOnly ? -1 : 0}\r\n onFocus={(e) => inputRef.current?.setSelectionRange(0, 0)}\r\n autoComplete={autoComplete}\r\n placeholder={placeholder}\r\n $extraRightPadding={iconSize}\r\n disabled={disabled}\r\n readOnly={true}\r\n $suppressReadOnlyStyles={!readOnly}\r\n required={required}\r\n {...rest}\r\n />\r\n <IconWrapper>\r\n <SystemIcons.Calendar size=\"24\"/>\r\n </IconWrapper>\r\n </DatepickerRow>\r\n {!open && <TooltipOverflow position={overflowTooltipPosition} input={inputRef} withArrow={true} maxWidth=\"100%\" size={Size.Small} align='end'>\r\n {getFormattedValue()}\r\n </TooltipOverflow>}\r\n </InputWrapper>\r\n }\r\n />\r\n </DatePickerContainer>\r\n\r\n {/* If there is an error, let's render the error */}\r\n {validationMessage && (\r\n <ErrorMessage>\r\n <SystemIcons.TechnicalWarning color={COLORS.generateToken({ componentType: 'icon', defaultVariant: 'warning' }, theme)}/>\r\n <span>{validationMessage}</span>\r\n </ErrorMessage>\r\n )}\r\n </>\r\n );\r\n});\r\n\r\nexport default DatepickerField;\r\n"],"mappings":"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","ignoreList":[]}
@@ -65,7 +65,7 @@ const TextField = /*#__PURE__*/React.forwardRef((_ref, ref) => {
65
65
  "data-testid": dataTestId,
66
66
  ref: elementRef,
67
67
  type: type || 'text',
68
- value: value ?? '',
68
+ value: value,
69
69
  className: cls,
70
70
  tabIndex: readOnly || disabled ? -1 : 0,
71
71
  autoComplete: autoComplete,
@@ -1 +1 @@
1
- {"version":3,"file":"TextField.cjs","names":["React","_interopRequireWildcard","require","_icons","_styles","_types","_styling","_common","_TooltipOverflow","_interopRequireDefault","_styledComponents","_jsxRuntime","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","TextField","forwardRef","_ref","ref","id","disabled","readOnly","onChange","value","validationMessage","type","autoComplete","placeholder","required","pattern","maxLength","withoutBorder","state","size","margin","overflowTooltipPosition","note","className","dataTestId","rest","_objectWithoutProperties2","elementRef","useFocusVisibleRef","theme","useTheme","useImperativeHandle","current","cls","States","Invalid","jsx","Fragment","children","jsxs","InputWrapper","$readOnly","$disabled","$margin","onClick","preventDefault","InputFieldStyling","tabIndex","undefined","target","$activeErrorMessage","Valid","$withoutBorder","position","input","withArrow","maxWidth","align","ValidationMessage","SystemIcons","CheckMark","color","COLORS","generateToken","componentType","defaultVariant","TechnicalWarning","NoteMessage","icon","message","propTypes","_propTypes","string","bool","func","number","oneOf","_default","exports"],"sources":["../../src/InputFields/TextField.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport {SystemIcons} from '../icons';\r\nimport {COLORS} from '../styles';\r\nimport {Size, States, Testable} from '../types';\r\nimport {InputFieldStyling, InputWrapper, NoteMessage, ValidationMessage} from './styling';\r\nimport {useFocusVisibleRef} from '../common';\r\nimport {TextFieldNote} from './types';\r\nimport TooltipOverflow from '../Tooltips/TooltipOverflow';\r\nimport { useTheme } from 'styled-components';\r\n\r\nexport type TextFieldProps =\r\n Testable & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size' | 'onChange' | 'value' | 'disabled' | 'id' | 'type' | 'readOnly' | 'autoComplete' | 'pattern' | 'maxLength'>\r\n & {\r\n /**\r\n * Optional. The ID of the text field.\r\n */\r\n id?: string;\r\n\r\n /**\r\n * Optional. A boolean indicating whether the text field is disabled.\r\n */\r\n disabled?: boolean;\r\n\r\n /**\r\n * Optional. A boolean indicating whether the text field is read-only.\r\n */\r\n readOnly?: boolean;\r\n\r\n /**\r\n * Optional. A function to be called when the text in the text field changes.\r\n * It should take a string representing the new text.\r\n */\r\n onChange?: (text: string) => void;\r\n\r\n /**\r\n * Optional. The current value of the text field.\r\n */\r\n value?: string;\r\n\r\n /**\r\n * Optional. The validation message to be displayed when the text field is in an error state.\r\n */\r\n validationMessage?: string;\r\n\r\n /**\r\n * Optional. The type of the text field. Can be any valid HTML input type.\r\n */\r\n type?: string;\r\n\r\n /**\r\n * Optional. The state of the text field. Can be 'Invalid' or 'Valid'.\r\n */\r\n state?: States.Invalid | States.Valid;\r\n\r\n /**\r\n * Optional. The autocomplete attribute of the text field. Can be any valid HTML autocomplete value.\r\n */\r\n autoComplete?: string;\r\n\r\n /**\r\n * Optional. The placeholder text to be displayed in the text field when it is empty.\r\n */\r\n placeholder?: string;\r\n\r\n /**\r\n * Optional. A boolean indicating whether the text field is required.\r\n */\r\n required?: boolean;\r\n\r\n /**\r\n * Optional. The pattern attribute of the text field. Can be any valid HTML pattern value.\r\n */\r\n pattern?: string;\r\n\r\n /**\r\n * Optional. The maximum length of the text that can be entered in the text field.\r\n */\r\n maxLength?: number;\r\n\r\n /**\r\n * Optional. A boolean indicating whether the text field should be displayed without a border.\r\n */\r\n withoutBorder?: boolean;\r\n\r\n /**\r\n * Optional. The position of the overflow tooltip. Can be 'top' or 'bottom'.\r\n */\r\n overflowTooltipPosition?: 'top' | 'bottom';\r\n\r\n /**\r\n * Optional. The size of the text field. Can be 'Small' or 'Medium'.\r\n */\r\n size?: Size.Small | Size.Medium;\r\n\r\n /**\r\n * Optional. The margin of the text field. Can be any valid CSS margin value.\r\n */\r\n margin?: string;\r\n\r\n /**\r\n * Optional. A note to be displayed below the text field.\r\n */\r\n note?: TextFieldNote;\r\n};\r\n\r\nconst TextField = React.forwardRef<HTMLInputElement, TextFieldProps>(({\r\n id,\r\n disabled,\r\n readOnly,\r\n onChange,\r\n value,\r\n validationMessage,\r\n type,\r\n autoComplete,\r\n placeholder,\r\n required,\r\n pattern,\r\n maxLength,\r\n withoutBorder,\r\n state,\r\n size,\r\n margin,\r\n overflowTooltipPosition,\r\n note,\r\n className,\r\n dataTestId,\r\n ...rest\r\n }: TextFieldProps, ref) => {\r\n const elementRef = useFocusVisibleRef();\r\n const theme = useTheme();\r\n\r\n React.useImperativeHandle(ref, () => elementRef.current, [elementRef]);\r\n\r\n const cls = `${state || (validationMessage ? States.Invalid : '')} ${size || ''}`;\r\n\r\n return (\r\n <>\r\n <InputWrapper\r\n $readOnly={readOnly}\r\n $disabled={disabled}\r\n $margin={margin}\r\n onClick={(e: any) => {\r\n if (disabled || readOnly) {\r\n e.preventDefault();\r\n }\r\n }}>\r\n <InputFieldStyling\r\n id={id}\r\n data-testid={dataTestId}\r\n ref={elementRef}\r\n type={type || 'text'}\r\n value={value ?? ''}\r\n className={cls}\r\n tabIndex={readOnly || disabled ? -1 : 0}\r\n autoComplete={autoComplete}\r\n placeholder={disabled ? undefined : placeholder}\r\n disabled={disabled}\r\n readOnly={readOnly}\r\n onChange={(e: any) => onChange && onChange(e?.target?.value || '')}\r\n $activeErrorMessage={!!validationMessage && state !== States.Valid}\r\n required={required}\r\n pattern={pattern}\r\n maxLength={maxLength}\r\n $withoutBorder={withoutBorder}\r\n {...rest}\r\n />\r\n <TooltipOverflow value={value} position={overflowTooltipPosition} input={elementRef} withArrow={true} maxWidth=\"100%\" size={size} align='end'>\r\n {value}\r\n </TooltipOverflow>\r\n\r\n {validationMessage && (\r\n <ValidationMessage className={size || ''} type={state ?? States.Invalid}>\r\n {state === States.Valid ? <SystemIcons.CheckMark color={COLORS.generateToken({componentType:'text', defaultVariant:'positive'}, theme)}/> :\r\n <SystemIcons.TechnicalWarning color={COLORS.generateToken({componentType:'text', defaultVariant:'critical'}, theme)}/>}\r\n <span>{validationMessage}</span>\r\n </ValidationMessage>\r\n )}\r\n {note && !disabled && (\r\n <NoteMessage className={size}>\r\n {note.icon}\r\n <span>{note.message}</span>\r\n </NoteMessage>\r\n )}\r\n </InputWrapper>\r\n </>\r\n );\r\n});\r\n\r\nexport default TextField;\r\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AAEA,IAAAM,gBAAA,GAAAC,sBAAA,CAAAP,OAAA;AACA,IAAAQ,iBAAA,GAAAR,OAAA;AAA6C,IAAAS,WAAA,GAAAT,OAAA;AAAA,MAAAU,SAAA;AAAA,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAb,wBAAAa,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAW,QAAAnB,CAAA,EAAAE,CAAA,QAAAC,CAAA,GAAAQ,MAAA,CAAAS,IAAA,CAAApB,CAAA,OAAAW,MAAA,CAAAU,qBAAA,QAAAC,CAAA,GAAAX,MAAA,CAAAU,qBAAA,CAAArB,CAAA,GAAAE,CAAA,KAAAoB,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAArB,CAAA,WAAAS,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAE,CAAA,EAAAsB,UAAA,OAAArB,CAAA,CAAAsB,IAAA,CAAAC,KAAA,CAAAvB,CAAA,EAAAmB,CAAA,YAAAnB,CAAA;AAAA,SAAAwB,cAAA3B,CAAA,aAAAE,CAAA,MAAAA,CAAA,GAAA0B,SAAA,CAAAC,MAAA,EAAA3B,CAAA,UAAAC,CAAA,WAAAyB,SAAA,CAAA1B,CAAA,IAAA0B,SAAA,CAAA1B,CAAA,QAAAA,CAAA,OAAAiB,OAAA,CAAAR,MAAA,CAAAR,CAAA,OAAA2B,OAAA,WAAA5B,CAAA,QAAA6B,gBAAA,CAAA1B,OAAA,EAAAL,CAAA,EAAAE,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAS,MAAA,CAAAqB,yBAAA,GAAArB,MAAA,CAAAsB,gBAAA,CAAAjC,CAAA,EAAAW,MAAA,CAAAqB,yBAAA,CAAA7B,CAAA,KAAAgB,OAAA,CAAAR,MAAA,CAAAR,CAAA,GAAA2B,OAAA,WAAA5B,CAAA,IAAAS,MAAA,CAAAC,cAAA,CAAAZ,CAAA,EAAAE,CAAA,EAAAS,MAAA,CAAAE,wBAAA,CAAAV,CAAA,EAAAD,CAAA,iBAAAF,CAAA;AAiG7C,MAAMkC,SAAS,gBAAGhD,KAAK,CAACiD,UAAU,CAAmC,CAAAC,IAAA,EAsBdC,GAAG,KAAK;EAAA,IAtBO;MAChCC,EAAE;MACFC,QAAQ;MACRC,QAAQ;MACRC,QAAQ;MACRC,KAAK;MACLC,iBAAiB;MACjBC,IAAI;MACJC,YAAY;MACZC,WAAW;MACXC,QAAQ;MACRC,OAAO;MACPC,SAAS;MACTC,aAAa;MACbC,KAAK;MACLC,IAAI;MACJC,MAAM;MACNC,uBAAuB;MACvBC,IAAI;MACJC,SAAS;MACTC;IAEc,CAAC,GAAArB,IAAA;IADZsB,IAAI,OAAAC,yBAAA,CAAAtD,OAAA,EAAA+B,IAAA,EAAAtC,SAAA;EAE3C,MAAM8D,UAAU,GAAG,IAAAC,0BAAkB,EAAC,CAAC;EACvC,MAAMC,KAAK,GAAG,IAAAC,0BAAQ,EAAC,CAAC;EAExB7E,KAAK,CAAC8E,mBAAmB,CAAC3B,GAAG,EAAE,MAAMuB,UAAU,CAACK,OAAO,EAAE,CAACL,UAAU,CAAC,CAAC;EAEtE,MAAMM,GAAG,GAAG,GAAGf,KAAK,KAAKR,iBAAiB,GAAGwB,aAAM,CAACC,OAAO,GAAG,EAAE,CAAC,IAAIhB,IAAI,IAAI,EAAE,EAAE;EAEjF,oBACE,IAAAvD,WAAA,CAAAwE,GAAA,EAAAxE,WAAA,CAAAyE,QAAA;IAAAC,QAAA,eACE,IAAA1E,WAAA,CAAA2E,IAAA,EAAChF,QAAA,CAAAiF,YAAY;MACXC,SAAS,EAAElC,QAAS;MACpBmC,SAAS,EAAEpC,QAAS;MACpBqC,OAAO,EAAEvB,MAAO;MAChBwB,OAAO,EAAG7E,CAAM,IAAK;QACnB,IAAIuC,QAAQ,IAAIC,QAAQ,EAAE;UACxBxC,CAAC,CAAC8E,cAAc,CAAC,CAAC;QACpB;MACF,CAAE;MAAAP,QAAA,gBACF,IAAA1E,WAAA,CAAAwE,GAAA,EAAC7E,QAAA,CAAAuF,iBAAiB,EAAApD,aAAA;QAChBW,EAAE,EAAEA,EAAG;QACP,eAAamB,UAAW;QACxBpB,GAAG,EAAEuB,UAAW;QAChBhB,IAAI,EAAEA,IAAI,IAAI,MAAO;QACrBF,KAAK,EAAEA,KAAK,IAAI,EAAG;QACnBc,SAAS,EAAEU,GAAI;QACfc,QAAQ,EAAExC,QAAQ,IAAID,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAE;QACxCM,YAAY,EAAEA,YAAa;QAC3BC,WAAW,EAAEP,QAAQ,GAAG0C,SAAS,GAAGnC,WAAY;QAChDP,QAAQ,EAAEA,QAAS;QACnBC,QAAQ,EAAEA,QAAS;QACnBC,QAAQ,EAAGzC,CAAM,IAAKyC,QAAQ,IAAIA,QAAQ,CAACzC,CAAC,EAAEkF,MAAM,EAAExC,KAAK,IAAI,EAAE,CAAE;QACnEyC,mBAAmB,EAAE,CAAC,CAACxC,iBAAiB,IAAIQ,KAAK,KAAKgB,aAAM,CAACiB,KAAM;QACnErC,QAAQ,EAAEA,QAAS;QACnBC,OAAO,EAAEA,OAAQ;QACjBC,SAAS,EAAEA,SAAU;QACrBoC,cAAc,EAAEnC;MAAc,GAC1BQ,IAAI,CACT,CAAC,eACF,IAAA7D,WAAA,CAAAwE,GAAA,EAAC3E,gBAAA,CAAAW,OAAe;QAACqC,KAAK,EAAEA,KAAM;QAAC4C,QAAQ,EAAEhC,uBAAwB;QAACiC,KAAK,EAAE3B,UAAW;QAAC4B,SAAS,EAAE,IAAK;QAACC,QAAQ,EAAC,MAAM;QAACrC,IAAI,EAAEA,IAAK;QAACsC,KAAK,EAAC,KAAK;QAAAnB,QAAA,EAC1I7B;MAAK,CACS,CAAC,EAEjBC,iBAAiB,iBAChB,IAAA9C,WAAA,CAAA2E,IAAA,EAAChF,QAAA,CAAAmG,iBAAiB;QAACnC,SAAS,EAAEJ,IAAI,IAAI,EAAG;QAACR,IAAI,EAAEO,KAAK,IAAIgB,aAAM,CAACC,OAAQ;QAAAG,QAAA,GACrEpB,KAAK,KAAKgB,aAAM,CAACiB,KAAK,gBAAG,IAAAvF,WAAA,CAAAwE,GAAA,EAAChF,MAAA,CAAAuG,WAAW,CAACC,SAAS;UAACC,KAAK,EAAEC,cAAM,CAACC,aAAa,CAAC;YAACC,aAAa,EAAC,MAAM;YAAEC,cAAc,EAAC;UAAU,CAAC,EAAEpC,KAAK;QAAE,CAAC,CAAC,gBACvI,IAAAjE,WAAA,CAAAwE,GAAA,EAAChF,MAAA,CAAAuG,WAAW,CAACO,gBAAgB;UAACL,KAAK,EAAEC,cAAM,CAACC,aAAa,CAAC;YAACC,aAAa,EAAC,MAAM;YAAEC,cAAc,EAAC;UAAU,CAAC,EAAEpC,KAAK;QAAE,CAAC,CAAC,eACxH,IAAAjE,WAAA,CAAAwE,GAAA;UAAAE,QAAA,EAAO5B;QAAiB,CAAO,CAAC;MAAA,CACf,CACpB,EACAY,IAAI,IAAI,CAAChB,QAAQ,iBAChB,IAAA1C,WAAA,CAAA2E,IAAA,EAAChF,QAAA,CAAA4G,WAAW;QAAC5C,SAAS,EAAEJ,IAAK;QAAAmB,QAAA,GAC1BhB,IAAI,CAAC8C,IAAI,eACV,IAAAxG,WAAA,CAAAwE,GAAA;UAAAE,QAAA,EAAOhB,IAAI,CAAC+C;QAAO,CAAO,CAAC;MAAA,CAChB,CACd;IAAA,CACW;EAAC,CACf,CAAC;AAEP,CAAC,CAAC;AAACpE,SAAA,CAAAqE,SAAA;EA1KDjE,EAAE,EAAAkE,UAAA,CAAAnG,OAAA,CAAAoG,MAAA;EAKFlE,QAAQ,EAAAiE,UAAA,CAAAnG,OAAA,CAAAqG,IAAA;EAKRlE,QAAQ,EAAAgE,UAAA,CAAAnG,OAAA,CAAAqG,IAAA;EAMRjE,QAAQ,EAAA+D,UAAA,CAAAnG,OAAA,CAAAsG,IAAA;EAKRjE,KAAK,EAAA8D,UAAA,CAAAnG,OAAA,CAAAoG,MAAA;EAKL9D,iBAAiB,EAAA6D,UAAA,CAAAnG,OAAA,CAAAoG,MAAA;EAKjB7D,IAAI,EAAA4D,UAAA,CAAAnG,OAAA,CAAAoG,MAAA;EAUJ5D,YAAY,EAAA2D,UAAA,CAAAnG,OAAA,CAAAoG,MAAA;EAKZ3D,WAAW,EAAA0D,UAAA,CAAAnG,OAAA,CAAAoG,MAAA;EAKX1D,QAAQ,EAAAyD,UAAA,CAAAnG,OAAA,CAAAqG,IAAA;EAKR1D,OAAO,EAAAwD,UAAA,CAAAnG,OAAA,CAAAoG,MAAA;EAKPxD,SAAS,EAAAuD,UAAA,CAAAnG,OAAA,CAAAuG,MAAA;EAKT1D,aAAa,EAAAsD,UAAA,CAAAnG,OAAA,CAAAqG,IAAA;EAKbpD,uBAAuB,EAAAkD,UAAA,CAAAnG,OAAA,CAAAwG,KAAA,EAAG,KAAK,EAAG,QAAQ;EAU1CxD,MAAM,EAAAmD,UAAA,CAAAnG,OAAA,CAAAoG;AAAA;AAAA,IAAAK,QAAA,GAAAC,OAAA,CAAA1G,OAAA,GA2FO6B,SAAS","ignoreList":[]}
1
+ {"version":3,"file":"TextField.cjs","names":["React","_interopRequireWildcard","require","_icons","_styles","_types","_styling","_common","_TooltipOverflow","_interopRequireDefault","_styledComponents","_jsxRuntime","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","TextField","forwardRef","_ref","ref","id","disabled","readOnly","onChange","value","validationMessage","type","autoComplete","placeholder","required","pattern","maxLength","withoutBorder","state","size","margin","overflowTooltipPosition","note","className","dataTestId","rest","_objectWithoutProperties2","elementRef","useFocusVisibleRef","theme","useTheme","useImperativeHandle","current","cls","States","Invalid","jsx","Fragment","children","jsxs","InputWrapper","$readOnly","$disabled","$margin","onClick","preventDefault","InputFieldStyling","tabIndex","undefined","target","$activeErrorMessage","Valid","$withoutBorder","position","input","withArrow","maxWidth","align","ValidationMessage","SystemIcons","CheckMark","color","COLORS","generateToken","componentType","defaultVariant","TechnicalWarning","NoteMessage","icon","message","propTypes","_propTypes","string","bool","func","number","oneOf","_default","exports"],"sources":["../../src/InputFields/TextField.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport {SystemIcons} from '../icons';\r\nimport {COLORS} from '../styles';\r\nimport {Size, States, Testable} from '../types';\r\nimport {InputFieldStyling, InputWrapper, NoteMessage, ValidationMessage} from './styling';\r\nimport {useFocusVisibleRef} from '../common';\r\nimport {TextFieldNote} from './types';\r\nimport TooltipOverflow from '../Tooltips/TooltipOverflow';\r\nimport { useTheme } from 'styled-components';\r\n\r\nexport type TextFieldProps =\r\n Testable & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size' | 'onChange' | 'value' | 'disabled' | 'id' | 'type' | 'readOnly' | 'autoComplete' | 'pattern' | 'maxLength'>\r\n & {\r\n /**\r\n * Optional. The ID of the text field.\r\n */\r\n id?: string;\r\n\r\n /**\r\n * Optional. A boolean indicating whether the text field is disabled.\r\n */\r\n disabled?: boolean;\r\n\r\n /**\r\n * Optional. A boolean indicating whether the text field is read-only.\r\n */\r\n readOnly?: boolean;\r\n\r\n /**\r\n * Optional. A function to be called when the text in the text field changes.\r\n * It should take a string representing the new text.\r\n */\r\n onChange?: (text: string) => void;\r\n\r\n /**\r\n * Optional. The current value of the text field.\r\n */\r\n value?: string;\r\n\r\n /**\r\n * Optional. The validation message to be displayed when the text field is in an error state.\r\n */\r\n validationMessage?: string;\r\n\r\n /**\r\n * Optional. The type of the text field. Can be any valid HTML input type.\r\n */\r\n type?: string;\r\n\r\n /**\r\n * Optional. The state of the text field. Can be 'Invalid' or 'Valid'.\r\n */\r\n state?: States.Invalid | States.Valid;\r\n\r\n /**\r\n * Optional. The autocomplete attribute of the text field. Can be any valid HTML autocomplete value.\r\n */\r\n autoComplete?: string;\r\n\r\n /**\r\n * Optional. The placeholder text to be displayed in the text field when it is empty.\r\n */\r\n placeholder?: string;\r\n\r\n /**\r\n * Optional. A boolean indicating whether the text field is required.\r\n */\r\n required?: boolean;\r\n\r\n /**\r\n * Optional. The pattern attribute of the text field. Can be any valid HTML pattern value.\r\n */\r\n pattern?: string;\r\n\r\n /**\r\n * Optional. The maximum length of the text that can be entered in the text field.\r\n */\r\n maxLength?: number;\r\n\r\n /**\r\n * Optional. A boolean indicating whether the text field should be displayed without a border.\r\n */\r\n withoutBorder?: boolean;\r\n\r\n /**\r\n * Optional. The position of the overflow tooltip. Can be 'top' or 'bottom'.\r\n */\r\n overflowTooltipPosition?: 'top' | 'bottom';\r\n\r\n /**\r\n * Optional. The size of the text field. Can be 'Small' or 'Medium'.\r\n */\r\n size?: Size.Small | Size.Medium;\r\n\r\n /**\r\n * Optional. The margin of the text field. Can be any valid CSS margin value.\r\n */\r\n margin?: string;\r\n\r\n /**\r\n * Optional. A note to be displayed below the text field.\r\n */\r\n note?: TextFieldNote;\r\n};\r\n\r\nconst TextField = React.forwardRef<HTMLInputElement, TextFieldProps>(({\r\n id,\r\n disabled,\r\n readOnly,\r\n onChange,\r\n value,\r\n validationMessage,\r\n type,\r\n autoComplete,\r\n placeholder,\r\n required,\r\n pattern,\r\n maxLength,\r\n withoutBorder,\r\n state,\r\n size,\r\n margin,\r\n overflowTooltipPosition,\r\n note,\r\n className,\r\n dataTestId,\r\n ...rest\r\n }: TextFieldProps, ref) => {\r\n const elementRef = useFocusVisibleRef();\r\n const theme = useTheme();\r\n\r\n React.useImperativeHandle(ref, () => elementRef.current, [elementRef]);\r\n\r\n const cls = `${state || (validationMessage ? States.Invalid : '')} ${size || ''}`;\r\n\r\n return (\r\n <>\r\n <InputWrapper\r\n $readOnly={readOnly}\r\n $disabled={disabled}\r\n $margin={margin}\r\n onClick={(e: any) => {\r\n if (disabled || readOnly) {\r\n e.preventDefault();\r\n }\r\n }}>\r\n <InputFieldStyling\r\n id={id}\r\n data-testid={dataTestId}\r\n ref={elementRef}\r\n type={type || 'text'}\r\n value={value}\r\n className={cls}\r\n tabIndex={readOnly || disabled ? -1 : 0}\r\n autoComplete={autoComplete}\r\n placeholder={disabled ? undefined : placeholder}\r\n disabled={disabled}\r\n readOnly={readOnly}\r\n onChange={(e: any) => onChange && onChange(e?.target?.value || '')}\r\n $activeErrorMessage={!!validationMessage && state !== States.Valid}\r\n required={required}\r\n pattern={pattern}\r\n maxLength={maxLength}\r\n $withoutBorder={withoutBorder}\r\n {...rest}\r\n />\r\n <TooltipOverflow value={value} position={overflowTooltipPosition} input={elementRef} withArrow={true} maxWidth=\"100%\" size={size} align='end'>\r\n {value}\r\n </TooltipOverflow>\r\n\r\n {validationMessage && (\r\n <ValidationMessage className={size || ''} type={state ?? States.Invalid}>\r\n {state === States.Valid ? <SystemIcons.CheckMark color={COLORS.generateToken({componentType:'text', defaultVariant:'positive'}, theme)}/> :\r\n <SystemIcons.TechnicalWarning color={COLORS.generateToken({componentType:'text', defaultVariant:'critical'}, theme)}/>}\r\n <span>{validationMessage}</span>\r\n </ValidationMessage>\r\n )}\r\n {note && !disabled && (\r\n <NoteMessage className={size}>\r\n {note.icon}\r\n <span>{note.message}</span>\r\n </NoteMessage>\r\n )}\r\n </InputWrapper>\r\n </>\r\n );\r\n});\r\n\r\nexport default TextField;\r\n"],"mappings":"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","ignoreList":[]}
@@ -56,7 +56,7 @@ const TextField = /*#__PURE__*/React.forwardRef((_ref, ref) => {
56
56
  "data-testid": dataTestId,
57
57
  ref: elementRef,
58
58
  type: type || 'text',
59
- value: value ?? '',
59
+ value: value,
60
60
  className: cls,
61
61
  tabIndex: readOnly || disabled ? -1 : 0,
62
62
  autoComplete: autoComplete,
@@ -1 +1 @@
1
- {"version":3,"file":"TextField.js","names":["React","SystemIcons","COLORS","States","InputFieldStyling","InputWrapper","NoteMessage","ValidationMessage","useFocusVisibleRef","TooltipOverflow","useTheme","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","TextField","forwardRef","_ref","ref","id","disabled","readOnly","onChange","value","validationMessage","type","autoComplete","placeholder","required","pattern","maxLength","withoutBorder","state","size","margin","overflowTooltipPosition","note","className","dataTestId","rest","_objectWithoutProperties","_excluded","elementRef","theme","useImperativeHandle","current","cls","Invalid","children","$readOnly","$disabled","$margin","onClick","e","preventDefault","_objectSpread","tabIndex","undefined","target","$activeErrorMessage","Valid","$withoutBorder","position","input","withArrow","maxWidth","align","CheckMark","color","generateToken","componentType","defaultVariant","TechnicalWarning","icon","message","propTypes","_pt","string","bool","func","number","oneOf"],"sources":["../../src/InputFields/TextField.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport {SystemIcons} from '../icons';\r\nimport {COLORS} from '../styles';\r\nimport {Size, States, Testable} from '../types';\r\nimport {InputFieldStyling, InputWrapper, NoteMessage, ValidationMessage} from './styling';\r\nimport {useFocusVisibleRef} from '../common';\r\nimport {TextFieldNote} from './types';\r\nimport TooltipOverflow from '../Tooltips/TooltipOverflow';\r\nimport { useTheme } from 'styled-components';\r\n\r\nexport type TextFieldProps =\r\n Testable & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size' | 'onChange' | 'value' | 'disabled' | 'id' | 'type' | 'readOnly' | 'autoComplete' | 'pattern' | 'maxLength'>\r\n & {\r\n /**\r\n * Optional. The ID of the text field.\r\n */\r\n id?: string;\r\n\r\n /**\r\n * Optional. A boolean indicating whether the text field is disabled.\r\n */\r\n disabled?: boolean;\r\n\r\n /**\r\n * Optional. A boolean indicating whether the text field is read-only.\r\n */\r\n readOnly?: boolean;\r\n\r\n /**\r\n * Optional. A function to be called when the text in the text field changes.\r\n * It should take a string representing the new text.\r\n */\r\n onChange?: (text: string) => void;\r\n\r\n /**\r\n * Optional. The current value of the text field.\r\n */\r\n value?: string;\r\n\r\n /**\r\n * Optional. The validation message to be displayed when the text field is in an error state.\r\n */\r\n validationMessage?: string;\r\n\r\n /**\r\n * Optional. The type of the text field. Can be any valid HTML input type.\r\n */\r\n type?: string;\r\n\r\n /**\r\n * Optional. The state of the text field. Can be 'Invalid' or 'Valid'.\r\n */\r\n state?: States.Invalid | States.Valid;\r\n\r\n /**\r\n * Optional. The autocomplete attribute of the text field. Can be any valid HTML autocomplete value.\r\n */\r\n autoComplete?: string;\r\n\r\n /**\r\n * Optional. The placeholder text to be displayed in the text field when it is empty.\r\n */\r\n placeholder?: string;\r\n\r\n /**\r\n * Optional. A boolean indicating whether the text field is required.\r\n */\r\n required?: boolean;\r\n\r\n /**\r\n * Optional. The pattern attribute of the text field. Can be any valid HTML pattern value.\r\n */\r\n pattern?: string;\r\n\r\n /**\r\n * Optional. The maximum length of the text that can be entered in the text field.\r\n */\r\n maxLength?: number;\r\n\r\n /**\r\n * Optional. A boolean indicating whether the text field should be displayed without a border.\r\n */\r\n withoutBorder?: boolean;\r\n\r\n /**\r\n * Optional. The position of the overflow tooltip. Can be 'top' or 'bottom'.\r\n */\r\n overflowTooltipPosition?: 'top' | 'bottom';\r\n\r\n /**\r\n * Optional. The size of the text field. Can be 'Small' or 'Medium'.\r\n */\r\n size?: Size.Small | Size.Medium;\r\n\r\n /**\r\n * Optional. The margin of the text field. Can be any valid CSS margin value.\r\n */\r\n margin?: string;\r\n\r\n /**\r\n * Optional. A note to be displayed below the text field.\r\n */\r\n note?: TextFieldNote;\r\n};\r\n\r\nconst TextField = React.forwardRef<HTMLInputElement, TextFieldProps>(({\r\n id,\r\n disabled,\r\n readOnly,\r\n onChange,\r\n value,\r\n validationMessage,\r\n type,\r\n autoComplete,\r\n placeholder,\r\n required,\r\n pattern,\r\n maxLength,\r\n withoutBorder,\r\n state,\r\n size,\r\n margin,\r\n overflowTooltipPosition,\r\n note,\r\n className,\r\n dataTestId,\r\n ...rest\r\n }: TextFieldProps, ref) => {\r\n const elementRef = useFocusVisibleRef();\r\n const theme = useTheme();\r\n\r\n React.useImperativeHandle(ref, () => elementRef.current, [elementRef]);\r\n\r\n const cls = `${state || (validationMessage ? States.Invalid : '')} ${size || ''}`;\r\n\r\n return (\r\n <>\r\n <InputWrapper\r\n $readOnly={readOnly}\r\n $disabled={disabled}\r\n $margin={margin}\r\n onClick={(e: any) => {\r\n if (disabled || readOnly) {\r\n e.preventDefault();\r\n }\r\n }}>\r\n <InputFieldStyling\r\n id={id}\r\n data-testid={dataTestId}\r\n ref={elementRef}\r\n type={type || 'text'}\r\n value={value ?? ''}\r\n className={cls}\r\n tabIndex={readOnly || disabled ? -1 : 0}\r\n autoComplete={autoComplete}\r\n placeholder={disabled ? undefined : placeholder}\r\n disabled={disabled}\r\n readOnly={readOnly}\r\n onChange={(e: any) => onChange && onChange(e?.target?.value || '')}\r\n $activeErrorMessage={!!validationMessage && state !== States.Valid}\r\n required={required}\r\n pattern={pattern}\r\n maxLength={maxLength}\r\n $withoutBorder={withoutBorder}\r\n {...rest}\r\n />\r\n <TooltipOverflow value={value} position={overflowTooltipPosition} input={elementRef} withArrow={true} maxWidth=\"100%\" size={size} align='end'>\r\n {value}\r\n </TooltipOverflow>\r\n\r\n {validationMessage && (\r\n <ValidationMessage className={size || ''} type={state ?? States.Invalid}>\r\n {state === States.Valid ? <SystemIcons.CheckMark color={COLORS.generateToken({componentType:'text', defaultVariant:'positive'}, theme)}/> :\r\n <SystemIcons.TechnicalWarning color={COLORS.generateToken({componentType:'text', defaultVariant:'critical'}, theme)}/>}\r\n <span>{validationMessage}</span>\r\n </ValidationMessage>\r\n )}\r\n {note && !disabled && (\r\n <NoteMessage className={size}>\r\n {note.icon}\r\n <span>{note.message}</span>\r\n </NoteMessage>\r\n )}\r\n </InputWrapper>\r\n </>\r\n );\r\n});\r\n\r\nexport default TextField;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"TextField.js","names":["React","SystemIcons","COLORS","States","InputFieldStyling","InputWrapper","NoteMessage","ValidationMessage","useFocusVisibleRef","TooltipOverflow","useTheme","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","TextField","forwardRef","_ref","ref","id","disabled","readOnly","onChange","value","validationMessage","type","autoComplete","placeholder","required","pattern","maxLength","withoutBorder","state","size","margin","overflowTooltipPosition","note","className","dataTestId","rest","_objectWithoutProperties","_excluded","elementRef","theme","useImperativeHandle","current","cls","Invalid","children","$readOnly","$disabled","$margin","onClick","e","preventDefault","_objectSpread","tabIndex","undefined","target","$activeErrorMessage","Valid","$withoutBorder","position","input","withArrow","maxWidth","align","CheckMark","color","generateToken","componentType","defaultVariant","TechnicalWarning","icon","message","propTypes","_pt","string","bool","func","number","oneOf"],"sources":["../../src/InputFields/TextField.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport {SystemIcons} from '../icons';\r\nimport {COLORS} from '../styles';\r\nimport {Size, States, Testable} from '../types';\r\nimport {InputFieldStyling, InputWrapper, NoteMessage, ValidationMessage} from './styling';\r\nimport {useFocusVisibleRef} from '../common';\r\nimport {TextFieldNote} from './types';\r\nimport TooltipOverflow from '../Tooltips/TooltipOverflow';\r\nimport { useTheme } from 'styled-components';\r\n\r\nexport type TextFieldProps =\r\n Testable & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size' | 'onChange' | 'value' | 'disabled' | 'id' | 'type' | 'readOnly' | 'autoComplete' | 'pattern' | 'maxLength'>\r\n & {\r\n /**\r\n * Optional. The ID of the text field.\r\n */\r\n id?: string;\r\n\r\n /**\r\n * Optional. A boolean indicating whether the text field is disabled.\r\n */\r\n disabled?: boolean;\r\n\r\n /**\r\n * Optional. A boolean indicating whether the text field is read-only.\r\n */\r\n readOnly?: boolean;\r\n\r\n /**\r\n * Optional. A function to be called when the text in the text field changes.\r\n * It should take a string representing the new text.\r\n */\r\n onChange?: (text: string) => void;\r\n\r\n /**\r\n * Optional. The current value of the text field.\r\n */\r\n value?: string;\r\n\r\n /**\r\n * Optional. The validation message to be displayed when the text field is in an error state.\r\n */\r\n validationMessage?: string;\r\n\r\n /**\r\n * Optional. The type of the text field. Can be any valid HTML input type.\r\n */\r\n type?: string;\r\n\r\n /**\r\n * Optional. The state of the text field. Can be 'Invalid' or 'Valid'.\r\n */\r\n state?: States.Invalid | States.Valid;\r\n\r\n /**\r\n * Optional. The autocomplete attribute of the text field. Can be any valid HTML autocomplete value.\r\n */\r\n autoComplete?: string;\r\n\r\n /**\r\n * Optional. The placeholder text to be displayed in the text field when it is empty.\r\n */\r\n placeholder?: string;\r\n\r\n /**\r\n * Optional. A boolean indicating whether the text field is required.\r\n */\r\n required?: boolean;\r\n\r\n /**\r\n * Optional. The pattern attribute of the text field. Can be any valid HTML pattern value.\r\n */\r\n pattern?: string;\r\n\r\n /**\r\n * Optional. The maximum length of the text that can be entered in the text field.\r\n */\r\n maxLength?: number;\r\n\r\n /**\r\n * Optional. A boolean indicating whether the text field should be displayed without a border.\r\n */\r\n withoutBorder?: boolean;\r\n\r\n /**\r\n * Optional. The position of the overflow tooltip. Can be 'top' or 'bottom'.\r\n */\r\n overflowTooltipPosition?: 'top' | 'bottom';\r\n\r\n /**\r\n * Optional. The size of the text field. Can be 'Small' or 'Medium'.\r\n */\r\n size?: Size.Small | Size.Medium;\r\n\r\n /**\r\n * Optional. The margin of the text field. Can be any valid CSS margin value.\r\n */\r\n margin?: string;\r\n\r\n /**\r\n * Optional. A note to be displayed below the text field.\r\n */\r\n note?: TextFieldNote;\r\n};\r\n\r\nconst TextField = React.forwardRef<HTMLInputElement, TextFieldProps>(({\r\n id,\r\n disabled,\r\n readOnly,\r\n onChange,\r\n value,\r\n validationMessage,\r\n type,\r\n autoComplete,\r\n placeholder,\r\n required,\r\n pattern,\r\n maxLength,\r\n withoutBorder,\r\n state,\r\n size,\r\n margin,\r\n overflowTooltipPosition,\r\n note,\r\n className,\r\n dataTestId,\r\n ...rest\r\n }: TextFieldProps, ref) => {\r\n const elementRef = useFocusVisibleRef();\r\n const theme = useTheme();\r\n\r\n React.useImperativeHandle(ref, () => elementRef.current, [elementRef]);\r\n\r\n const cls = `${state || (validationMessage ? States.Invalid : '')} ${size || ''}`;\r\n\r\n return (\r\n <>\r\n <InputWrapper\r\n $readOnly={readOnly}\r\n $disabled={disabled}\r\n $margin={margin}\r\n onClick={(e: any) => {\r\n if (disabled || readOnly) {\r\n e.preventDefault();\r\n }\r\n }}>\r\n <InputFieldStyling\r\n id={id}\r\n data-testid={dataTestId}\r\n ref={elementRef}\r\n type={type || 'text'}\r\n value={value}\r\n className={cls}\r\n tabIndex={readOnly || disabled ? -1 : 0}\r\n autoComplete={autoComplete}\r\n placeholder={disabled ? undefined : placeholder}\r\n disabled={disabled}\r\n readOnly={readOnly}\r\n onChange={(e: any) => onChange && onChange(e?.target?.value || '')}\r\n $activeErrorMessage={!!validationMessage && state !== States.Valid}\r\n required={required}\r\n pattern={pattern}\r\n maxLength={maxLength}\r\n $withoutBorder={withoutBorder}\r\n {...rest}\r\n />\r\n <TooltipOverflow value={value} position={overflowTooltipPosition} input={elementRef} withArrow={true} maxWidth=\"100%\" size={size} align='end'>\r\n {value}\r\n </TooltipOverflow>\r\n\r\n {validationMessage && (\r\n <ValidationMessage className={size || ''} type={state ?? States.Invalid}>\r\n {state === States.Valid ? <SystemIcons.CheckMark color={COLORS.generateToken({componentType:'text', defaultVariant:'positive'}, theme)}/> :\r\n <SystemIcons.TechnicalWarning color={COLORS.generateToken({componentType:'text', defaultVariant:'critical'}, theme)}/>}\r\n <span>{validationMessage}</span>\r\n </ValidationMessage>\r\n )}\r\n {note && !disabled && (\r\n <NoteMessage className={size}>\r\n {note.icon}\r\n <span>{note.message}</span>\r\n </NoteMessage>\r\n )}\r\n </InputWrapper>\r\n </>\r\n );\r\n});\r\n\r\nexport default TextField;\r\n"],"mappings":"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","ignoreList":[]}
@@ -12,7 +12,6 @@ var _styledComponents = _interopRequireWildcard(require("styled-components"));
12
12
  var _styles = require("../styles");
13
13
  var _icons = require("../icons");
14
14
  var _HyperLink = require("../HyperLink/HyperLink");
15
- var _Navigation = require("../Navigation");
16
15
  var _jsxRuntime = require("react/jsx-runtime");
17
16
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
18
17
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -81,23 +80,11 @@ const RightIconWrapper = _styledComponents.default.div`
81
80
  const MiniProductCard = _ref => {
82
81
  let {
83
82
  url,
84
- external,
85
83
  product,
86
84
  target = '_self'
87
85
  } = _ref;
88
86
  const theme = (0, _styledComponents.useTheme)();
89
- const {
90
- navigate
91
- } = (0, _Navigation.useNavigation)();
92
- const onClick = e => {
93
- if (external) {
94
- return;
95
- }
96
- e?.preventDefault();
97
- navigate && navigate(url ?? '', false);
98
- };
99
87
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(ProductLink, {
100
- onClick: onClick,
101
88
  $variant: "styleless",
102
89
  href: url ?? '',
103
90
  target: target,
@@ -122,8 +109,7 @@ const MiniProductCard = _ref => {
122
109
  };
123
110
  MiniProductCard.propTypes = {
124
111
  url: _propTypes.default.string,
125
- target: _propTypes.default.string,
126
- external: _propTypes.default.bool
112
+ target: _propTypes.default.string
127
113
  };
128
114
  var _default = exports.default = MiniProductCard;
129
115
  //# sourceMappingURL=MiniProductCard.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"MiniProductCard.cjs","names":["React","_interopRequireWildcard","require","_styledComponents","_styles","_icons","_HyperLink","_Navigation","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","ProductLink","styled","props","jsx","StyledLink","COLORS","getColor","theme","BREAKPOINTS","MEDIUM","ProductThing","div","ProductImage","img","ProductName","h2","ComponentMStyling","ComponentTextStyle","Regular","ProductType","span","ComponentSStyling","ProductInnerWrapper","RightIconWrapper","MiniProductCard","_ref","url","external","product","target","useTheme","navigate","useNavigation","onClick","preventDefault","$variant","href","children","jsxs","image","src","name","type","SystemIcons","ChevronRight","color","className","size","propTypes","_propTypes","string","bool","_default","exports"],"sources":["../../src/MiniProductCard/MiniProductCard.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled, { useTheme } from 'styled-components';\r\nimport {BREAKPOINTS, COLORS, ComponentTextStyle} from '../styles';\r\nimport {SystemIcons} from '../icons';\r\nimport {Product} from '../types';\r\nimport {ComponentMStyling, ComponentSStyling} from '../styles';\r\nimport { StyledLink } from '../HyperLink/HyperLink';\r\nimport { useNavigation } from '../Navigation';\r\n\r\nexport type MiniProductCardProps = {\r\n product: Product;\r\n url?: string;\r\n target?: string;\r\n external?: boolean;\r\n};\r\nconst ProductLink = styled(props => <StyledLink {...props} />)`\r\n display: flex;\r\n flex: 1;\r\n margin: 10px 8px;\r\n color: ${props => COLORS.getColor('black', props.theme)};\r\n text-decoration: none;\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n width: 305px;\r\n }\r\n`;\r\n\r\nconst ProductThing = styled.div`\r\n display: flex;\r\n flex: 1;\r\n flex-direction: row;\r\n border-radius: 8px;\r\n box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.15);\r\n\r\n &:hover {\r\n background: ${props => COLORS.getColor('primary_20', props.theme)};\r\n\r\n .product-chevron-right-path {\r\n fill: ${props => COLORS.getColor('primary_600', props.theme)};\r\n }\r\n }\r\n &:active {\r\n background: ${props => COLORS.getColor('primary_100', props.theme)};\r\n\r\n .product-chevron-right-path {\r\n fill: ${props => COLORS.getColor('primary_600', props.theme)};\r\n }\r\n }\r\n`;\r\n\r\nconst ProductImage = styled.img`\r\n width: 95px;\r\n height: 75px;\r\n object-fit: fill;\r\n border-radius: 8px;\r\n`;\r\n\r\nconst ProductName = styled.h2`\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.getColor('black', props.theme))}\r\n margin: 0;\r\n margin-top: 3px;\r\n`;\r\n\r\nconst ProductType = styled.span`\r\n ${props => ComponentSStyling(ComponentTextStyle.Regular, COLORS.getColor('black', props.theme))}\r\n margin: 0;\r\n`;\r\n\r\nconst ProductInnerWrapper = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n padding: 12px 18px;\r\n flex: 1;\r\n`;\r\n\r\nconst RightIconWrapper = styled.div`\r\n display: flex;\r\n justify-self: flex-start;\r\n align-items: center;\r\n padding-right: 12px;\r\n`;\r\n\r\nconst MiniProductCard: React.FunctionComponent<MiniProductCardProps> = ({ url, external, product, target = '_self' }: MiniProductCardProps) => {\r\n const theme = useTheme();\r\n const { navigate } = useNavigation();\r\n const onClick = (e: any) => {\r\n if (external) {\r\n return;\r\n }\r\n e?.preventDefault();\r\n navigate && navigate(url ?? '', false);\r\n };\r\n return (\r\n <ProductLink onClick={onClick} $variant='styleless' href={url ?? ''} target={target}>\r\n <ProductThing>\r\n {product.image && <ProductImage src={product.image} />}\r\n <ProductInnerWrapper>\r\n <ProductName>{product.name}</ProductName>\r\n <ProductType>{product.type}</ProductType>\r\n </ProductInnerWrapper>\r\n <RightIconWrapper>\r\n <SystemIcons.ChevronRight color={COLORS.getColor('primary', theme)} className={'product-chevron-right'} size={'24px'} />\r\n </RightIconWrapper>\r\n </ProductThing>\r\n </ProductLink>\r\n );\r\n};\r\n\r\nexport default MiniProductCard;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"MiniProductCard.cjs","names":["React","_interopRequireWildcard","require","_styledComponents","_styles","_icons","_HyperLink","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","ProductLink","styled","props","jsx","StyledLink","COLORS","getColor","theme","BREAKPOINTS","MEDIUM","ProductThing","div","ProductImage","img","ProductName","h2","ComponentMStyling","ComponentTextStyle","Regular","ProductType","span","ComponentSStyling","ProductInnerWrapper","RightIconWrapper","MiniProductCard","_ref","url","product","target","useTheme","$variant","href","children","jsxs","image","src","name","type","SystemIcons","ChevronRight","color","className","size","propTypes","_propTypes","string","_default","exports"],"sources":["../../src/MiniProductCard/MiniProductCard.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled, { useTheme } from 'styled-components';\r\nimport {BREAKPOINTS, COLORS, ComponentTextStyle} from '../styles';\r\nimport {SystemIcons} from '../icons';\r\nimport {Product} from '../types';\r\nimport {ComponentMStyling, ComponentSStyling} from '../styles';\r\nimport { StyledLink } from '../HyperLink/HyperLink';\r\n\r\nexport type MiniProductCardProps = {\r\n product: Product;\r\n url?: string;\r\n target?: string;\r\n};\r\nconst ProductLink = styled(props => <StyledLink {...props} />)`\r\n display: flex;\r\n flex: 1;\r\n margin: 10px 8px;\r\n color: ${props => COLORS.getColor('black', props.theme)};\r\n text-decoration: none;\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n width: 305px;\r\n }\r\n`;\r\n\r\nconst ProductThing = styled.div`\r\n display: flex;\r\n flex: 1;\r\n flex-direction: row;\r\n border-radius: 8px;\r\n box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.15);\r\n\r\n &:hover {\r\n background: ${props => COLORS.getColor('primary_20', props.theme)};\r\n\r\n .product-chevron-right-path {\r\n fill: ${props => COLORS.getColor('primary_600', props.theme)};\r\n }\r\n }\r\n &:active {\r\n background: ${props => COLORS.getColor('primary_100', props.theme)};\r\n\r\n .product-chevron-right-path {\r\n fill: ${props => COLORS.getColor('primary_600', props.theme)};\r\n }\r\n }\r\n`;\r\n\r\nconst ProductImage = styled.img`\r\n width: 95px;\r\n height: 75px;\r\n object-fit: fill;\r\n border-radius: 8px;\r\n`;\r\n\r\nconst ProductName = styled.h2`\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.getColor('black', props.theme))}\r\n margin: 0;\r\n margin-top: 3px;\r\n`;\r\n\r\nconst ProductType = styled.span`\r\n ${props => ComponentSStyling(ComponentTextStyle.Regular, COLORS.getColor('black', props.theme))}\r\n margin: 0;\r\n`;\r\n\r\nconst ProductInnerWrapper = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n padding: 12px 18px;\r\n flex: 1;\r\n`;\r\n\r\nconst RightIconWrapper = styled.div`\r\n display: flex;\r\n justify-self: flex-start;\r\n align-items: center;\r\n padding-right: 12px;\r\n`;\r\n\r\nconst MiniProductCard: React.FunctionComponent<MiniProductCardProps> = ({ url, product, target = '_self' }: MiniProductCardProps) => {\r\n const theme = useTheme();\r\n return (\r\n <ProductLink $variant='styleless' href={url ?? ''} target={target}>\r\n <ProductThing>\r\n {product.image && <ProductImage src={product.image} />}\r\n <ProductInnerWrapper>\r\n <ProductName>{product.name}</ProductName>\r\n <ProductType>{product.type}</ProductType>\r\n </ProductInnerWrapper>\r\n <RightIconWrapper>\r\n <SystemIcons.ChevronRight color={COLORS.getColor('primary', theme)} className={'product-chevron-right'} size={'24px'} />\r\n </RightIconWrapper>\r\n </ProductThing>\r\n </ProductLink>\r\n );\r\n};\r\n\r\nexport default MiniProductCard;\r\n"],"mappings":"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","ignoreList":[]}
@@ -4,7 +4,6 @@ export type MiniProductCardProps = {
4
4
  product: Product;
5
5
  url?: string;
6
6
  target?: string;
7
- external?: boolean;
8
7
  };
9
8
  declare const MiniProductCard: React.FunctionComponent<MiniProductCardProps>;
10
9
  export default MiniProductCard;
@@ -8,7 +8,6 @@ import { BREAKPOINTS, COLORS, ComponentTextStyle } from '../styles';
8
8
  import { SystemIcons } from '../icons';
9
9
  import { ComponentMStyling, ComponentSStyling } from '../styles';
10
10
  import { StyledLink } from '../HyperLink/HyperLink';
11
- import { useNavigation } from '../Navigation';
12
11
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
12
  const ProductLink = styled(props => /*#__PURE__*/_jsx(StyledLink, _objectSpread({}, props)))`
14
13
  display: flex;
@@ -73,23 +72,11 @@ const RightIconWrapper = styled.div`
73
72
  const MiniProductCard = _ref => {
74
73
  let {
75
74
  url,
76
- external,
77
75
  product,
78
76
  target = '_self'
79
77
  } = _ref;
80
78
  const theme = useTheme();
81
- const {
82
- navigate
83
- } = useNavigation();
84
- const onClick = e => {
85
- if (external) {
86
- return;
87
- }
88
- e?.preventDefault();
89
- navigate && navigate(url ?? '', false);
90
- };
91
79
  return /*#__PURE__*/_jsx(ProductLink, {
92
- onClick: onClick,
93
80
  $variant: "styleless",
94
81
  href: url ?? '',
95
82
  target: target,
@@ -114,8 +101,7 @@ const MiniProductCard = _ref => {
114
101
  };
115
102
  MiniProductCard.propTypes = {
116
103
  url: _pt.string,
117
- target: _pt.string,
118
- external: _pt.bool
104
+ target: _pt.string
119
105
  };
120
106
  export default MiniProductCard;
121
107
  //# sourceMappingURL=MiniProductCard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MiniProductCard.js","names":["React","styled","useTheme","BREAKPOINTS","COLORS","ComponentTextStyle","SystemIcons","ComponentMStyling","ComponentSStyling","StyledLink","useNavigation","jsx","_jsx","jsxs","_jsxs","ProductLink","props","_objectSpread","getColor","theme","MEDIUM","ProductThing","div","ProductImage","img","ProductName","h2","Regular","ProductType","span","ProductInnerWrapper","RightIconWrapper","MiniProductCard","_ref","url","external","product","target","navigate","onClick","e","preventDefault","$variant","href","children","image","src","name","type","ChevronRight","color","className","size","propTypes","_pt","string","bool"],"sources":["../../src/MiniProductCard/MiniProductCard.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled, { useTheme } from 'styled-components';\r\nimport {BREAKPOINTS, COLORS, ComponentTextStyle} from '../styles';\r\nimport {SystemIcons} from '../icons';\r\nimport {Product} from '../types';\r\nimport {ComponentMStyling, ComponentSStyling} from '../styles';\r\nimport { StyledLink } from '../HyperLink/HyperLink';\r\nimport { useNavigation } from '../Navigation';\r\n\r\nexport type MiniProductCardProps = {\r\n product: Product;\r\n url?: string;\r\n target?: string;\r\n external?: boolean;\r\n};\r\nconst ProductLink = styled(props => <StyledLink {...props} />)`\r\n display: flex;\r\n flex: 1;\r\n margin: 10px 8px;\r\n color: ${props => COLORS.getColor('black', props.theme)};\r\n text-decoration: none;\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n width: 305px;\r\n }\r\n`;\r\n\r\nconst ProductThing = styled.div`\r\n display: flex;\r\n flex: 1;\r\n flex-direction: row;\r\n border-radius: 8px;\r\n box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.15);\r\n\r\n &:hover {\r\n background: ${props => COLORS.getColor('primary_20', props.theme)};\r\n\r\n .product-chevron-right-path {\r\n fill: ${props => COLORS.getColor('primary_600', props.theme)};\r\n }\r\n }\r\n &:active {\r\n background: ${props => COLORS.getColor('primary_100', props.theme)};\r\n\r\n .product-chevron-right-path {\r\n fill: ${props => COLORS.getColor('primary_600', props.theme)};\r\n }\r\n }\r\n`;\r\n\r\nconst ProductImage = styled.img`\r\n width: 95px;\r\n height: 75px;\r\n object-fit: fill;\r\n border-radius: 8px;\r\n`;\r\n\r\nconst ProductName = styled.h2`\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.getColor('black', props.theme))}\r\n margin: 0;\r\n margin-top: 3px;\r\n`;\r\n\r\nconst ProductType = styled.span`\r\n ${props => ComponentSStyling(ComponentTextStyle.Regular, COLORS.getColor('black', props.theme))}\r\n margin: 0;\r\n`;\r\n\r\nconst ProductInnerWrapper = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n padding: 12px 18px;\r\n flex: 1;\r\n`;\r\n\r\nconst RightIconWrapper = styled.div`\r\n display: flex;\r\n justify-self: flex-start;\r\n align-items: center;\r\n padding-right: 12px;\r\n`;\r\n\r\nconst MiniProductCard: React.FunctionComponent<MiniProductCardProps> = ({ url, external, product, target = '_self' }: MiniProductCardProps) => {\r\n const theme = useTheme();\r\n const { navigate } = useNavigation();\r\n const onClick = (e: any) => {\r\n if (external) {\r\n return;\r\n }\r\n e?.preventDefault();\r\n navigate && navigate(url ?? '', false);\r\n };\r\n return (\r\n <ProductLink onClick={onClick} $variant='styleless' href={url ?? ''} target={target}>\r\n <ProductThing>\r\n {product.image && <ProductImage src={product.image} />}\r\n <ProductInnerWrapper>\r\n <ProductName>{product.name}</ProductName>\r\n <ProductType>{product.type}</ProductType>\r\n </ProductInnerWrapper>\r\n <RightIconWrapper>\r\n <SystemIcons.ChevronRight color={COLORS.getColor('primary', theme)} className={'product-chevron-right'} size={'24px'} />\r\n </RightIconWrapper>\r\n </ProductThing>\r\n </ProductLink>\r\n );\r\n};\r\n\r\nexport default MiniProductCard;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"MiniProductCard.js","names":["React","styled","useTheme","BREAKPOINTS","COLORS","ComponentTextStyle","SystemIcons","ComponentMStyling","ComponentSStyling","StyledLink","jsx","_jsx","jsxs","_jsxs","ProductLink","props","_objectSpread","getColor","theme","MEDIUM","ProductThing","div","ProductImage","img","ProductName","h2","Regular","ProductType","span","ProductInnerWrapper","RightIconWrapper","MiniProductCard","_ref","url","product","target","$variant","href","children","image","src","name","type","ChevronRight","color","className","size","propTypes","_pt","string"],"sources":["../../src/MiniProductCard/MiniProductCard.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport styled, { useTheme } from 'styled-components';\r\nimport {BREAKPOINTS, COLORS, ComponentTextStyle} from '../styles';\r\nimport {SystemIcons} from '../icons';\r\nimport {Product} from '../types';\r\nimport {ComponentMStyling, ComponentSStyling} from '../styles';\r\nimport { StyledLink } from '../HyperLink/HyperLink';\r\n\r\nexport type MiniProductCardProps = {\r\n product: Product;\r\n url?: string;\r\n target?: string;\r\n};\r\nconst ProductLink = styled(props => <StyledLink {...props} />)`\r\n display: flex;\r\n flex: 1;\r\n margin: 10px 8px;\r\n color: ${props => COLORS.getColor('black', props.theme)};\r\n text-decoration: none;\r\n\r\n ${BREAKPOINTS.MEDIUM} {\r\n width: 305px;\r\n }\r\n`;\r\n\r\nconst ProductThing = styled.div`\r\n display: flex;\r\n flex: 1;\r\n flex-direction: row;\r\n border-radius: 8px;\r\n box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.15);\r\n\r\n &:hover {\r\n background: ${props => COLORS.getColor('primary_20', props.theme)};\r\n\r\n .product-chevron-right-path {\r\n fill: ${props => COLORS.getColor('primary_600', props.theme)};\r\n }\r\n }\r\n &:active {\r\n background: ${props => COLORS.getColor('primary_100', props.theme)};\r\n\r\n .product-chevron-right-path {\r\n fill: ${props => COLORS.getColor('primary_600', props.theme)};\r\n }\r\n }\r\n`;\r\n\r\nconst ProductImage = styled.img`\r\n width: 95px;\r\n height: 75px;\r\n object-fit: fill;\r\n border-radius: 8px;\r\n`;\r\n\r\nconst ProductName = styled.h2`\r\n ${props => ComponentMStyling(ComponentTextStyle.Regular, COLORS.getColor('black', props.theme))}\r\n margin: 0;\r\n margin-top: 3px;\r\n`;\r\n\r\nconst ProductType = styled.span`\r\n ${props => ComponentSStyling(ComponentTextStyle.Regular, COLORS.getColor('black', props.theme))}\r\n margin: 0;\r\n`;\r\n\r\nconst ProductInnerWrapper = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n padding: 12px 18px;\r\n flex: 1;\r\n`;\r\n\r\nconst RightIconWrapper = styled.div`\r\n display: flex;\r\n justify-self: flex-start;\r\n align-items: center;\r\n padding-right: 12px;\r\n`;\r\n\r\nconst MiniProductCard: React.FunctionComponent<MiniProductCardProps> = ({ url, product, target = '_self' }: MiniProductCardProps) => {\r\n const theme = useTheme();\r\n return (\r\n <ProductLink $variant='styleless' href={url ?? ''} target={target}>\r\n <ProductThing>\r\n {product.image && <ProductImage src={product.image} />}\r\n <ProductInnerWrapper>\r\n <ProductName>{product.name}</ProductName>\r\n <ProductType>{product.type}</ProductType>\r\n </ProductInnerWrapper>\r\n <RightIconWrapper>\r\n <SystemIcons.ChevronRight color={COLORS.getColor('primary', theme)} className={'product-chevron-right'} size={'24px'} />\r\n </RightIconWrapper>\r\n </ProductThing>\r\n </ProductLink>\r\n );\r\n};\r\n\r\nexport default MiniProductCard;\r\n"],"mappings":"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","ignoreList":[]}