@laerdal/life-react-components 1.11.0-dev.9 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (248) hide show
  1. package/dist/Accordion/AccordionItem.cjs +12 -7
  2. package/dist/Accordion/AccordionItem.cjs.map +1 -1
  3. package/dist/Accordion/AccordionItem.js +12 -7
  4. package/dist/Accordion/AccordionItem.js.map +1 -1
  5. package/dist/Accordion/ContentAccordion.cjs +3 -1
  6. package/dist/Accordion/ContentAccordion.cjs.map +1 -1
  7. package/dist/Accordion/ContentAccordion.js +3 -1
  8. package/dist/Accordion/ContentAccordion.js.map +1 -1
  9. package/dist/Accordion/styles.cjs +1 -1
  10. package/dist/Accordion/styles.cjs.map +1 -1
  11. package/dist/Accordion/styles.js +1 -1
  12. package/dist/Accordion/styles.js.map +1 -1
  13. package/dist/AuthPage/AuthPage.d.ts +0 -1
  14. package/dist/Banners/Banner.cjs +9 -4
  15. package/dist/Banners/Banner.cjs.map +1 -1
  16. package/dist/Banners/Banner.js +8 -4
  17. package/dist/Banners/Banner.js.map +1 -1
  18. package/dist/Breadcrumb/Breadcrumb.cjs +12 -0
  19. package/dist/Breadcrumb/Breadcrumb.cjs.map +1 -1
  20. package/dist/Breadcrumb/Breadcrumb.js +12 -0
  21. package/dist/Breadcrumb/Breadcrumb.js.map +1 -1
  22. package/dist/Button/DualFunctionButton.cjs +27 -12
  23. package/dist/Button/DualFunctionButton.cjs.map +1 -1
  24. package/dist/Button/DualFunctionButton.js +26 -12
  25. package/dist/Button/DualFunctionButton.js.map +1 -1
  26. package/dist/Button/Iconbutton.cjs +2 -2
  27. package/dist/Button/Iconbutton.cjs.map +1 -1
  28. package/dist/Button/Iconbutton.js +2 -2
  29. package/dist/Button/Iconbutton.js.map +1 -1
  30. package/dist/Card/VerticalCard/Card.cjs +2 -2
  31. package/dist/Card/VerticalCard/Card.cjs.map +1 -1
  32. package/dist/Card/VerticalCard/Card.js +2 -2
  33. package/dist/Card/VerticalCard/Card.js.map +1 -1
  34. package/dist/ChipsInput/ChipDropdownInput.cjs +33 -22
  35. package/dist/ChipsInput/ChipDropdownInput.cjs.map +1 -1
  36. package/dist/ChipsInput/ChipDropdownInput.js +33 -22
  37. package/dist/ChipsInput/ChipDropdownInput.js.map +1 -1
  38. package/dist/Dropdown/BasicDropdown.cjs +26 -12
  39. package/dist/Dropdown/BasicDropdown.cjs.map +1 -1
  40. package/dist/Dropdown/BasicDropdown.js +26 -12
  41. package/dist/Dropdown/BasicDropdown.js.map +1 -1
  42. package/dist/Dropdown/DropdownButton.cjs +27 -11
  43. package/dist/Dropdown/DropdownButton.cjs.map +1 -1
  44. package/dist/Dropdown/DropdownButton.js +27 -11
  45. package/dist/Dropdown/DropdownButton.js.map +1 -1
  46. package/dist/Dropdown/DropdownButtonTypes.cjs.map +1 -1
  47. package/dist/Dropdown/DropdownButtonTypes.d.ts +1 -1
  48. package/dist/Dropdown/DropdownButtonTypes.js.map +1 -1
  49. package/dist/Dropdown/DropdownContent.cjs +44 -6
  50. package/dist/Dropdown/DropdownContent.cjs.map +1 -1
  51. package/dist/Dropdown/DropdownContent.d.ts +2 -0
  52. package/dist/Dropdown/DropdownContent.js +44 -6
  53. package/dist/Dropdown/DropdownContent.js.map +1 -1
  54. package/dist/Dropdown/DropdownFilter.cjs +23 -9
  55. package/dist/Dropdown/DropdownFilter.cjs.map +1 -1
  56. package/dist/Dropdown/DropdownFilter.js +23 -9
  57. package/dist/Dropdown/DropdownFilter.js.map +1 -1
  58. package/dist/Footer/Components/FooterBottomLinks.d.ts +0 -1
  59. package/dist/Footer/Components/FooterDropdownLinks.d.ts +0 -1
  60. package/dist/Footer/Components/FooterNavSection.cjs +7 -2
  61. package/dist/Footer/Components/FooterNavSection.cjs.map +1 -1
  62. package/dist/Footer/Components/FooterNavSection.d.ts +0 -1
  63. package/dist/Footer/Components/FooterNavSection.js +6 -2
  64. package/dist/Footer/Components/FooterNavSection.js.map +1 -1
  65. package/dist/Footer/Components/FooterNewsletterAndSocialSection.d.ts +0 -1
  66. package/dist/Footer/Components/FooterTop.d.ts +0 -1
  67. package/dist/Footer/Footer.d.ts +0 -1
  68. package/dist/GlobalNavigationBar/GlobalNavigationBar.cjs +3 -1
  69. package/dist/GlobalNavigationBar/GlobalNavigationBar.cjs.map +1 -1
  70. package/dist/GlobalNavigationBar/GlobalNavigationBar.js +2 -1
  71. package/dist/GlobalNavigationBar/GlobalNavigationBar.js.map +1 -1
  72. package/dist/GlobalNavigationBar/desktop/ExtendedMainMenu.d.ts +0 -1
  73. package/dist/GlobalNavigationBar/desktop/UserMenu.d.ts +0 -1
  74. package/dist/GlobalNavigationBar/mobile/CommonStyles.cjs +24 -2
  75. package/dist/GlobalNavigationBar/mobile/CommonStyles.cjs.map +1 -1
  76. package/dist/GlobalNavigationBar/mobile/CommonStyles.d.ts +5 -0
  77. package/dist/GlobalNavigationBar/mobile/CommonStyles.js +8 -2
  78. package/dist/GlobalNavigationBar/mobile/CommonStyles.js.map +1 -1
  79. package/dist/GlobalNavigationBar/mobile/MobileActionContainer.cjs +53 -0
  80. package/dist/GlobalNavigationBar/mobile/MobileActionContainer.cjs.map +1 -0
  81. package/dist/GlobalNavigationBar/mobile/MobileActionContainer.d.ts +6 -0
  82. package/dist/GlobalNavigationBar/mobile/MobileActionContainer.js +34 -0
  83. package/dist/GlobalNavigationBar/mobile/MobileActionContainer.js.map +1 -0
  84. package/dist/GlobalNavigationBar/mobile/MobileMenu.cjs +3 -5
  85. package/dist/GlobalNavigationBar/mobile/MobileMenu.cjs.map +1 -1
  86. package/dist/GlobalNavigationBar/mobile/MobileMenu.d.ts +0 -1
  87. package/dist/GlobalNavigationBar/mobile/MobileMenu.js +2 -4
  88. package/dist/GlobalNavigationBar/mobile/MobileMenu.js.map +1 -1
  89. package/dist/GlobalNavigationBar/mobile/MobileMenuContent.cjs +30 -61
  90. package/dist/GlobalNavigationBar/mobile/MobileMenuContent.cjs.map +1 -1
  91. package/dist/GlobalNavigationBar/mobile/MobileMenuContent.js +30 -57
  92. package/dist/GlobalNavigationBar/mobile/MobileMenuContent.js.map +1 -1
  93. package/dist/GlobalNavigationBar/types.cjs.map +1 -1
  94. package/dist/GlobalNavigationBar/types.d.ts +3 -1
  95. package/dist/GlobalNavigationBar/types.js.map +1 -1
  96. package/dist/InputFields/Checkbox.cjs +1 -0
  97. package/dist/InputFields/Checkbox.cjs.map +1 -1
  98. package/dist/InputFields/Checkbox.js +1 -0
  99. package/dist/InputFields/Checkbox.js.map +1 -1
  100. package/dist/InputFields/DatepickerField.cjs +12 -4
  101. package/dist/InputFields/DatepickerField.cjs.map +1 -1
  102. package/dist/InputFields/DatepickerField.js +6 -4
  103. package/dist/InputFields/DatepickerField.js.map +1 -1
  104. package/dist/InputFields/DatepickerFieldHeader.d.ts +0 -1
  105. package/dist/InputFields/Label.cjs +16 -14
  106. package/dist/InputFields/Label.cjs.map +1 -1
  107. package/dist/InputFields/Label.d.ts +1 -0
  108. package/dist/InputFields/Label.js +15 -13
  109. package/dist/InputFields/Label.js.map +1 -1
  110. package/dist/InputFields/NumberField.cjs +1 -1
  111. package/dist/InputFields/NumberField.cjs.map +1 -1
  112. package/dist/InputFields/NumberField.js +1 -1
  113. package/dist/InputFields/NumberField.js.map +1 -1
  114. package/dist/InputFields/QuickSearch.cjs +1 -1
  115. package/dist/InputFields/QuickSearch.cjs.map +1 -1
  116. package/dist/InputFields/QuickSearch.js +1 -1
  117. package/dist/InputFields/QuickSearch.js.map +1 -1
  118. package/dist/InputFields/ResponsiveComponentWrapper.cjs +3 -3
  119. package/dist/InputFields/ResponsiveComponentWrapper.cjs.map +1 -1
  120. package/dist/InputFields/ResponsiveComponentWrapper.js +3 -3
  121. package/dist/InputFields/ResponsiveComponentWrapper.js.map +1 -1
  122. package/dist/InputFields/SearchBar.cjs +1 -0
  123. package/dist/InputFields/SearchBar.cjs.map +1 -1
  124. package/dist/InputFields/SearchBar.js +1 -0
  125. package/dist/InputFields/SearchBar.js.map +1 -1
  126. package/dist/InputFields/Textarea.cjs.map +1 -1
  127. package/dist/InputFields/Textarea.d.ts +1 -1
  128. package/dist/InputFields/Textarea.js.map +1 -1
  129. package/dist/InputFields/types.cjs.map +1 -1
  130. package/dist/InputFields/types.d.ts +1 -1
  131. package/dist/InputFields/types.js.map +1 -1
  132. package/dist/LoadingIndicator/LoadingIndicator.d.ts +0 -1
  133. package/dist/MiniProductCard/MiniProductCard.d.ts +0 -1
  134. package/dist/Modals/ModalContent.cjs +2 -1
  135. package/dist/Modals/ModalContent.cjs.map +1 -1
  136. package/dist/Modals/ModalContent.d.ts +1 -0
  137. package/dist/Modals/ModalContent.js +2 -1
  138. package/dist/Modals/ModalContent.js.map +1 -1
  139. package/dist/Modals/ModalDialog.cjs +1 -0
  140. package/dist/Modals/ModalDialog.cjs.map +1 -1
  141. package/dist/Modals/ModalDialog.d.ts +1 -0
  142. package/dist/Modals/ModalDialog.js +1 -0
  143. package/dist/Modals/ModalDialog.js.map +1 -1
  144. package/dist/NavItem/NavItem.cjs +22 -1
  145. package/dist/NavItem/NavItem.cjs.map +1 -1
  146. package/dist/NavItem/NavItem.d.ts +7 -1
  147. package/dist/NavItem/NavItem.js +18 -1
  148. package/dist/NavItem/NavItem.js.map +1 -1
  149. package/dist/NavItem/index.cjs.map +1 -1
  150. package/dist/NavItem/index.d.ts +1 -0
  151. package/dist/NavItem/index.js.map +1 -1
  152. package/dist/Paginator/Paginator.d.ts +0 -1
  153. package/dist/QuizButton/QuizButton.cjs +3 -1
  154. package/dist/QuizButton/QuizButton.cjs.map +1 -1
  155. package/dist/QuizButton/QuizButton.js +3 -1
  156. package/dist/QuizButton/QuizButton.js.map +1 -1
  157. package/dist/SideMenu/SideMenuBody.d.ts +0 -1
  158. package/dist/SideMenu/SideMenuFooter.d.ts +0 -1
  159. package/dist/SideMenu/SideMenuHeader.d.ts +0 -1
  160. package/dist/SideMenu/types.d.ts +0 -1
  161. package/dist/SkipToContent/SkipToContent.cjs +5 -0
  162. package/dist/SkipToContent/SkipToContent.cjs.map +1 -1
  163. package/dist/SkipToContent/SkipToContent.d.ts +3 -1
  164. package/dist/SkipToContent/SkipToContent.js +4 -0
  165. package/dist/SkipToContent/SkipToContent.js.map +1 -1
  166. package/dist/Switcher/MobileCustomMenuContent.cjs +56 -0
  167. package/dist/Switcher/MobileCustomMenuContent.cjs.map +1 -0
  168. package/dist/Switcher/MobileCustomMenuContent.d.ts +8 -0
  169. package/dist/Switcher/MobileCustomMenuContent.js +39 -0
  170. package/dist/Switcher/MobileCustomMenuContent.js.map +1 -0
  171. package/dist/Switcher/MobileSwitcherMenu.cjs +17 -4
  172. package/dist/Switcher/MobileSwitcherMenu.cjs.map +1 -1
  173. package/dist/Switcher/MobileSwitcherMenu.d.ts +5 -3
  174. package/dist/Switcher/MobileSwitcherMenu.js +16 -4
  175. package/dist/Switcher/MobileSwitcherMenu.js.map +1 -1
  176. package/dist/Switcher/SwitcherMenuItem.d.ts +0 -1
  177. package/dist/Table/Table.cjs +9 -6
  178. package/dist/Table/Table.cjs.map +1 -1
  179. package/dist/Table/Table.js +9 -6
  180. package/dist/Table/Table.js.map +1 -1
  181. package/dist/Table/TableBody.cjs +6 -5
  182. package/dist/Table/TableBody.cjs.map +1 -1
  183. package/dist/Table/TableBody.d.ts +1 -3
  184. package/dist/Table/TableBody.js +6 -5
  185. package/dist/Table/TableBody.js.map +1 -1
  186. package/dist/Table/TableStyles.cjs +1 -1
  187. package/dist/Table/TableStyles.cjs.map +1 -1
  188. package/dist/Table/TableStyles.js +1 -1
  189. package/dist/Table/TableStyles.js.map +1 -1
  190. package/dist/Table/TableTypes.cjs.map +1 -1
  191. package/dist/Table/TableTypes.d.ts +5 -1
  192. package/dist/Table/TableTypes.js.map +1 -1
  193. package/dist/Table/index.cjs.map +1 -1
  194. package/dist/Table/index.d.ts +1 -1
  195. package/dist/Table/index.js.map +1 -1
  196. package/dist/Tabs/TabLink.cjs +13 -16
  197. package/dist/Tabs/TabLink.cjs.map +1 -1
  198. package/dist/Tabs/TabLink.d.ts +1 -1
  199. package/dist/Tabs/TabLink.js +14 -16
  200. package/dist/Tabs/TabLink.js.map +1 -1
  201. package/dist/Tabs/VerticalTabs.cjs +1 -0
  202. package/dist/Tabs/VerticalTabs.cjs.map +1 -1
  203. package/dist/Tabs/VerticalTabs.d.ts +1 -2
  204. package/dist/Tabs/VerticalTabs.js +1 -0
  205. package/dist/Tabs/VerticalTabs.js.map +1 -1
  206. package/dist/Tile/TileBody.cjs.map +1 -1
  207. package/dist/Tile/TileBody.d.ts +1 -0
  208. package/dist/Tile/TileBody.js.map +1 -1
  209. package/dist/Tile/TileCommonItems.d.ts +0 -1
  210. package/dist/Toasters/ToastContext.cjs +5 -0
  211. package/dist/Toasters/ToastContext.cjs.map +1 -1
  212. package/dist/Toasters/ToastContext.d.ts +6 -4
  213. package/dist/Toasters/ToastContext.js +4 -0
  214. package/dist/Toasters/ToastContext.js.map +1 -1
  215. package/dist/Toggles/TogglerTypes.d.ts +0 -1
  216. package/dist/Tooltips/TooltipTypes.d.ts +0 -1
  217. package/dist/Tooltips/TooltipWrapper.d.ts +0 -1
  218. package/dist/common/ScrollableContainer.cjs +44 -0
  219. package/dist/common/ScrollableContainer.cjs.map +1 -0
  220. package/dist/common/ScrollableContainer.d.ts +2 -0
  221. package/dist/common/ScrollableContainer.js +28 -0
  222. package/dist/common/ScrollableContainer.js.map +1 -0
  223. package/dist/icons/contenticons/ContentIcons.cjs +83 -2
  224. package/dist/icons/contenticons/ContentIcons.cjs.map +1 -1
  225. package/dist/icons/contenticons/ContentIcons.d.ts +3 -0
  226. package/dist/icons/contenticons/ContentIcons.js +72 -0
  227. package/dist/icons/contenticons/ContentIcons.js.map +1 -1
  228. package/dist/icons/index.cjs +14 -7
  229. package/dist/icons/index.cjs.map +1 -1
  230. package/dist/icons/index.d.ts +1 -0
  231. package/dist/icons/index.js +14 -7
  232. package/dist/icons/index.js.map +1 -1
  233. package/dist/icons/systemicons/SystemIcons.cjs +30 -1
  234. package/dist/icons/systemicons/SystemIcons.cjs.map +1 -1
  235. package/dist/icons/systemicons/SystemIcons.d.ts +1 -0
  236. package/dist/icons/systemicons/SystemIcons.js +26 -0
  237. package/dist/icons/systemicons/SystemIcons.js.map +1 -1
  238. package/dist/styles/typography.cjs +27 -13
  239. package/dist/styles/typography.cjs.map +1 -1
  240. package/dist/styles/typography.d.ts +2 -0
  241. package/dist/styles/typography.js +27 -13
  242. package/dist/styles/typography.js.map +1 -1
  243. package/dist/utils/utils.cjs +13 -0
  244. package/dist/utils/utils.cjs.map +1 -0
  245. package/dist/utils/utils.d.ts +1 -0
  246. package/dist/utils/utils.js +4 -0
  247. package/dist/utils/utils.js.map +1 -0
  248. package/package.json +22 -17
@@ -1 +1 @@
1
- {"version":3,"file":"DatepickerField.cjs","names":["DatePickerContainer","styled","div","Z_INDEXES","dropdown","props","margin","COLORS","primary_20","focusStyles","neutral_20","neutral_200","yearPicker","ComponentSStyling","ComponentTextStyle","Bold","neutral_600","scrollBarStyling","Size","Small","ComponentMStyling","Regular","white","primary_700","primary_500","neutral_700","neutral_100","IconWrapper","focus","DatepickerRow","StyledInputFieldStyling","InputFieldStyling","neutral_500","primary_300","primary_200","primary_100","primary_800","neutral_300","DatepickerField","React","forwardRef","ref","disabled","readOnly","onChange","invalid","value","validationMessage","dateFormat","autoComplete","placeholder","required","yearsBeforeCurrentDate","yearsAfterCurrentDate","onBlur","rest","inputRef","useFocusVisibleRef","datepickerRef","useRef","useState","activeMonthPage","setActiveMonthPage","yearPickerMode","setYearPickerMode","openAt","setOpenAt","open","setOpen","useEffect","current","moment","format","selectedDate","document","getElementsByClassName","dropdownParent","parentElement","scrollTop","offsetTop","offsetHeight","useImperativeHandle","handleCalendarClose","blur","handleCalendarOpen","maxDate","Date","setFullYear","getFullYear","minDate","itemsNumber","Math","round","handleKeyDown","e","key","handleBlur","currentTarget","contains","relatedTarget","newDate","setMonth","en","undefined","params","createElement","DatepickerFieldHeader","customHeaderCount","display","setSelectionRange","critical_400"],"sources":["../../src/InputFields/DatepickerField.tsx"],"sourcesContent":["/**\n * Import react libraries.\n */\nimport React from 'react';\n\n/**\n * Import third-party libraries.\n */\nimport styled from 'styled-components';\nimport DatePicker, { ReactDatePickerCustomHeaderProps } from 'react-datepicker';\nimport en from 'date-fns/locale/en-GB';\nimport moment from 'moment';\n\n/**\n * Import custom components.\n */\nimport COLORS from '../styles/colors';\nimport {Calendar, TechnicalWarning} from '../icons/systemicons/SystemIcons';\nimport {DatepickerFieldHeader, DatepickerFieldHeaderParams} from './DatepickerFieldHeader';\nimport {ComponentTextStyle, focusStyles, scrollBarStyling} from '../styles';\n\n/**\n * Import custom styles.\n */\nimport {ErrorMessage, InputFieldStyling, InputWrapper} from './styling';\nimport 'react-datepicker/dist/react-datepicker.css';\nimport {ComponentMStyling, ComponentSStyling} from '../styles';\nimport {Z_INDEXES} from '../styles';\nimport {useFocusVisibleRef} from '../common';\nimport {Size} from '../types';\n\n/**\n * Add custom types.\n */\ntype DatepickerFieldProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange' | 'value' | 'size' | 'onBlur'> & {\n value?: Date;\n onChange?: (date: Date) => void;\n onBlur?: (event: React.FocusEvent<HTMLDivElement>) => void;\n\n invalid?: boolean;\n dateFormat?: string;\n validationMessage?: string;\n autoComplete?: string;\n placeholder?: string;\n yearPicker?: boolean;\n yearsBeforeCurrentDate?: number;\n yearsAfterCurrentDate?: number;\n margin?: string;\n};\n\n/**\n * Add custom styles.\n */\nconst DatePickerContainer = styled.div<{ yearPicker: boolean; margin: string }>`\n .react-datepicker-popper {\n z-index: ${Z_INDEXES.dropdown};\n }\n\n > div {\n display: block;\n\n ${(props) => (props.margin ? `margin: ${props.margin};` : '')}\n .react-datepicker {\n box-sizing: border-box;\n box-shadow: 0px 2px 4px rgb(0 0 0 / 15%);\n border: 1px solid #e5e5e5;\n }\n\n .react-datepicker__navigation {\n line-height: normal;\n text-indent: inherit;\n border: none;\n border-radius: 4px;\n height: 32px;\n width: 32px;\n outline: none;\n margin: 0px;\n color: transparent;\n\n &:hover {\n background: ${COLORS.primary_20};\n\n &.react-datepicker__navigation--previous::before {\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\");\n }\n\n &.react-datepicker__navigation--next::before {\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\");\n }\n }\n\n &:focus {\n ${focusStyles}\n &.react-datepicker__navigation--next::before {\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\");\n }\n\n &.react-datepicker__navigation--previous::before {\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\");\n }\n }\n\n &::before {\n text-align: center;\n display: inline-block;\n content: '';\n height: 32px;\n width: 32px;\n vertical-align: middle;\n }\n\n &.react-datepicker__navigation--next::before {\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\");\n }\n\n &.react-datepicker__navigation--previous::before {\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\");\n }\n }\n\n .react-datepicker__month-container,\n .react-datepicker__year--container {\n width: 336px;\n }\n\n .react-datepicker__month {\n margin: 0px;\n }\n\n .react-datepicker__triangle {\n left: 50% !important;\n display: none;\n }\n\n .react-datepicker-popper[data-placement^='bottom'] {\n margin-top: 0;\n }\n\n .react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle {\n border-bottom-color: ${COLORS.neutral_20};\n }\n\n .react-datepicker__header {\n border-bottom: 1px solid ${COLORS.neutral_200};\n background: ${COLORS.neutral_20};\n height: ${(props) => (!props.yearPicker ? '96px' : '54px')};\n padding-top: 0px;\n }\n\n .react-datepicker__current-month {\n height: 48px;\n display: inline-flex;\n align-items: center;\n margin-right: 5px;\n\n ${ComponentSStyling(ComponentTextStyle.Bold, COLORS.neutral_600)}\n }\n\n .react-datepicker__year {\n max-height: 300px;\n overflow-y: scroll;\n\n ${scrollBarStyling(Size.Small)}\n }\n\n .react-datepicker__year-wrapper {\n max-width: 100%;\n justify-content: space-around;\n }\n\n .react-datepicker__day-name {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 48px;\n margin: 0px;\n width: 48px;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n }\n\n .react-datepicker__year-text {\n background: ${COLORS.white};\n border: none;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n margin-top: 20px;\n padding-top: 10px;\n padding-bottom: 10px;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n &.react-datepicker__year-text--disabled {\n display: none;\n }\n\n &.react-datepicker__day--keyboard-selected {\n color: ${COLORS.neutral_600};\n background: ${COLORS.white};\n font-weight: 400;\n border: none;\n }\n\n &:hover {\n color: ${COLORS.primary_700};\n background: ${COLORS.primary_20};\n }\n\n &:focus {\n ${focusStyles}\n }\n\n &.react-datepicker__year-text--selected {\n color: ${COLORS.white} !important;\n background: ${COLORS.primary_500} !important;\n }\n }\n\n .react-datepicker__day {\n background: ${COLORS.white};\n border: none;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 40px;\n width: 40px;\n margin: 4px;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n &.react-datepicker__day--keyboard-selected {\n color: ${COLORS.neutral_600};\n background: ${COLORS.white};\n font-weight: 400;\n border: none;\n }\n\n &:hover {\n color: ${COLORS.primary_700};\n background: ${COLORS.primary_20};\n }\n\n &:focus {\n ${focusStyles}\n }\n\n &.react-datepicker__day--selected {\n color: ${COLORS.white} !important;\n background: ${COLORS.primary_500} !important;\n }\n\n &.react-datepicker__day--today {\n border-radius: 0.3rem;\n color: ${COLORS.neutral_700};\n background: ${COLORS.neutral_100};\n\n &:hover {\n color: ${COLORS.primary_700};\n background: ${COLORS.primary_20};\n }\n\n &:focus {\n ${focusStyles}\n }\n }\n }\n }\n`;\n\nconst IconWrapper = styled.div`\n pointer-events: none;\n position: absolute;\n right: 16px;\n width: 24px;\n height: 24px;\n z-index: ${Z_INDEXES.focus + 1};\n color: ${COLORS.neutral_600};\n`;\n\nconst DatepickerRow = styled.div`\n display: flex;\n flex-direction: row;\n align-items: center;\n`;\n\nconst StyledInputFieldStyling = styled(InputFieldStyling)`\n &::placeholder {\n color: ${COLORS.neutral_500};\n }\n\n &:focus:not(.focus-visible) {\n box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_300};\n }\n\n &:hover {\n box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_200};\n\n ::placeholder {\n color: ${COLORS.primary_700};\n }\n\n cursor: pointer;\n background-color: ${COLORS.primary_20};\n color: ${COLORS.primary_700};\n }\n\n &:active,\n &.open {\n box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_300};\n background-color: ${COLORS.primary_100};\n color: ${COLORS.primary_800};\n\n ::placeholder {\n color: ${COLORS.primary_800};\n }\n }\n\n &:disabled {\n background-color: ${COLORS.white};\n }\n\n &:hover ~ ${IconWrapper} {\n color: ${COLORS.primary_700};\n }\n\n &:active ~ ${IconWrapper}, &.open ~ ${IconWrapper} {\n color: ${COLORS.primary_800};\n }\n\n &:disabled ~ ${IconWrapper}, &:read-only ~ ${IconWrapper} {\n color: ${COLORS.neutral_300};\n }\n`;\n\nconst DatepickerField = React.forwardRef(({\n disabled,\n readOnly,\n onChange,\n invalid,\n value,\n validationMessage,\n dateFormat,\n autoComplete,\n placeholder,\n required,\n yearPicker,\n yearsBeforeCurrentDate,\n yearsAfterCurrentDate,\n margin,\n onBlur,\n ...rest\n }: DatepickerFieldProps, ref) => {\n // Globally used variables within the component\n const inputRef = useFocusVisibleRef();\n const datepickerRef = React.useRef<any>(null);\n const [activeMonthPage, setActiveMonthPage] = React.useState<number>(-1);\n const [yearPickerMode, setYearPickerMode] = React.useState<boolean>(false);\n const [openAt, setOpenAt] = React.useState<Date | null>(null);\n // 'open' flag is used only for tracking current state of the dropdown,\n // for explicitly opening/closing the picker we are using 'datepickerRef.current.setOpen'\n const [open, setOpen] = React.useState<boolean>(false);\n\n /**\n * Format the date in a specific way.\n */\n React.useEffect(() => {\n if (value) inputRef.current.value = moment(value).format(dateFormat ? dateFormat : 'MMMM Do, YYYY');\n }, [value]);\n\n React.useEffect(() => {\n if (yearPickerMode) {\n //unfortunately, since there are no refs, and year pickers is rendered not by our code, but by 'react-datepicker'\n //we have to touch DOM directly\n const selectedDate = document.getElementsByClassName('react-datepicker__year-text--selected')[0] as HTMLElement;\n const dropdownParent = selectedDate?.parentElement?.parentElement;\n if (selectedDate && dropdownParent) dropdownParent.scrollTop = selectedDate.offsetTop - 2 * selectedDate.offsetHeight;\n }\n }, [yearPickerMode]);\n\n //we have to manually reopen the calendar when needed, to guarantee that datepicker will show selected date after year selection\n //otherwise after year selection datepicker will show January month of the selected year\n React.useEffect(() => {\n if (openAt) {\n datepickerRef.current.setOpen(true);\n //setOpenAt(null);\n }\n }, [openAt]);\n\n React.useImperativeHandle(ref, () => inputRef.current, [inputRef]);\n\n const handleCalendarClose = () => {\n inputRef.current?.blur();\n setOpen(false);\n };\n\n const handleCalendarOpen = () => {\n if (openAt) setOpenAt(null);\n setOpen(true);\n };\n\n let maxDate = new Date(value && new Date(value) > new Date() ? new Date(value) : new Date());\n maxDate.setFullYear(maxDate.getFullYear() + (yearsAfterCurrentDate ?? 50));\n\n //itemsNumber - controls number of year select options generated in the dropdown\n //items related to dates higher than 'maxDate' will be hidden, thus to avoid creating hundreds of invisible divs, we divide by 5\n let minDate = new Date(value && new Date(value) < new Date() ? new Date(value) : new Date());\n const itemsNumber = Math.round((minDate.getFullYear() - (yearsBeforeCurrentDate ?? 15)) / 5);\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLDivElement>) => {\n if (e.key === 'Escape' || e.key === 'Esc')\n datepickerRef.current.setOpen(false);\n };\n\n const handleBlur = (e: React.FocusEvent<HTMLDivElement>) => {\n // @ts-ignore\n if (!e.currentTarget.contains(e.relatedTarget)) {\n onBlur && onBlur(e);\n }\n };\n\n return (\n <>\n {/* Let's render the input itself */}\n <DatePickerContainer yearPicker={yearPickerMode} margin={margin || ''} onBlur={handleBlur}>\n <DatePicker\n ref={datepickerRef}\n onCalendarOpen={handleCalendarOpen}\n onCalendarClose={handleCalendarClose}\n onKeyDown={handleKeyDown}\n\n onClickOutside={() => datepickerRef.current.setOpen(false)}\n\n onChange={(e: any) => {\n if (onChange) {\n if (yearPickerMode) {\n const newDate = new Date();\n newDate.setFullYear(e.getFullYear());\n newDate.setMonth(activeMonthPage);\n setOpenAt(newDate);\n } else onChange(e);\n }\n if (yearPickerMode) setYearPickerMode(false);\n }}\n disabled={disabled || readOnly}\n locale={en}\n showYearPicker={yearPickerMode}\n //we manipulate 'yearItemNumber' and 'maxDate' to guarantee number of year select options shown before and after selected year\n yearItemNumber={yearPickerMode ? itemsNumber : undefined}\n maxDate={yearPickerMode ? maxDate : undefined}\n selected={value}\n openToDate={openAt ?? undefined}\n preventOpenOnFocus={true}\n shouldCloseOnSelect={true}\n renderCustomHeader={\n yearPicker\n ? (params: ReactDatePickerCustomHeaderProps) =>\n React.createElement(\n DatepickerFieldHeader,\n {\n ...params,\n setActiveMonthPage,\n customHeaderCount: 0,\n yearPickerMode: yearPickerMode,\n setYearPickerMode: setYearPickerMode,\n },\n null,\n )\n : undefined\n }\n customInput={\n <InputWrapper disabled={disabled} readOnly={readOnly}>\n <div style={{display: 'block', margin: '4px 0px'}}>\n <DatepickerRow>\n <StyledInputFieldStyling\n ref={inputRef}\n type=\"text\"\n name=\"datepicker\"\n onKeyDown={(e) => e.key === 'Enter' && datepickerRef.current.setOpen(true)}\n className={(invalid ? 'invalid' : '' + (open ? ' open' : ''))}\n tabIndex={disabled || readOnly ? -1 : 0}\n onFocus={(e) => inputRef.current?.setSelectionRange(0, 0)}\n autoComplete={autoComplete}\n placeholder={placeholder}\n disabled={disabled}\n readOnly={true}\n suppressReadOnlyStyles={!readOnly}\n required={required}\n {...rest}\n />\n <IconWrapper>\n <Calendar size=\"24\"/>\n </IconWrapper>\n </DatepickerRow>\n </div>\n </InputWrapper>\n }\n />\n </DatePickerContainer>\n\n {/* If there is an error, let's render the error */}\n {validationMessage && (\n <ErrorMessage>\n <TechnicalWarning color={COLORS.critical_400}/>\n <span>{validationMessage}</span>\n </ErrorMessage>\n )}\n </>\n );\n});\n\nexport default DatepickerField;\n"],"mappings":"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"}
1
+ {"version":3,"file":"DatepickerField.cjs","names":["dayjs","extend","advancedFormat","DatePickerContainer","styled","div","Z_INDEXES","dropdown","props","margin","COLORS","primary_20","focusStyles","neutral_20","neutral_200","yearPicker","ComponentSStyling","ComponentTextStyle","Bold","neutral_600","scrollBarStyling","Size","Small","ComponentMStyling","Regular","white","primary_700","primary_500","neutral_700","neutral_100","IconWrapper","focus","DatepickerRow","StyledInputFieldStyling","InputFieldStyling","neutral_500","primary_300","primary_200","primary_100","primary_800","neutral_300","DatepickerField","React","forwardRef","ref","disabled","readOnly","onChange","invalid","value","validationMessage","dateFormat","autoComplete","placeholder","required","yearsBeforeCurrentDate","yearsAfterCurrentDate","onBlur","rest","inputRef","useFocusVisibleRef","datepickerRef","useRef","useState","activeMonthPage","setActiveMonthPage","yearPickerMode","setYearPickerMode","openAt","setOpenAt","open","setOpen","useEffect","current","format","selectedDate","document","getElementsByClassName","dropdownParent","parentElement","scrollTop","offsetTop","offsetHeight","useImperativeHandle","handleCalendarClose","blur","handleCalendarOpen","maxDate","Date","setFullYear","getFullYear","minDate","itemsNumber","Math","round","handleKeyDown","e","key","handleBlur","currentTarget","contains","relatedTarget","newDate","setMonth","en","undefined","params","createElement","DatepickerFieldHeader","customHeaderCount","display","setSelectionRange","critical_400"],"sources":["../../src/InputFields/DatepickerField.tsx"],"sourcesContent":["/**\n * Import react libraries.\n */\nimport React from 'react';\n\n/**\n * Import third-party libraries.\n */\nimport styled from 'styled-components';\nimport DatePicker, { ReactDatePickerCustomHeaderProps } from 'react-datepicker';\nimport en from 'date-fns/locale/en-GB';\nimport dayjs from 'dayjs';\nimport advancedFormat from 'dayjs/plugin/advancedFormat';\n\ndayjs.extend(advancedFormat);\n\n/**\n * Import custom components.\n */\nimport COLORS from '../styles/colors';\nimport {Calendar, TechnicalWarning} from '../icons/systemicons/SystemIcons';\nimport {DatepickerFieldHeader, DatepickerFieldHeaderParams} from './DatepickerFieldHeader';\nimport {ComponentTextStyle, focusStyles, scrollBarStyling} from '../styles';\n\n/**\n * Import custom styles.\n */\nimport {ErrorMessage, InputFieldStyling, InputWrapper} from './styling';\nimport 'react-datepicker/dist/react-datepicker.css';\nimport {ComponentMStyling, ComponentSStyling} from '../styles';\nimport {Z_INDEXES} from '../styles';\nimport {useFocusVisibleRef} from '../common';\nimport {Size} from '../types';\n\n/**\n * Add custom types.\n */\ntype DatepickerFieldProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange' | 'value' | 'size' | 'onBlur'> & {\n value?: Date;\n onChange?: (date: Date) => void;\n onBlur?: (event: React.FocusEvent<HTMLDivElement>) => void;\n\n invalid?: boolean;\n dateFormat?: string;\n validationMessage?: string;\n autoComplete?: string;\n placeholder?: string;\n yearPicker?: boolean;\n yearsBeforeCurrentDate?: number;\n yearsAfterCurrentDate?: number;\n margin?: string;\n};\n\n/**\n * Add custom styles.\n */\nconst DatePickerContainer = styled.div<{ yearPicker: boolean; margin: string }>`\n .react-datepicker-popper {\n z-index: ${Z_INDEXES.dropdown};\n }\n\n > div {\n display: block;\n\n ${(props) => (props.margin ? `margin: ${props.margin};` : '')}\n .react-datepicker {\n box-sizing: border-box;\n box-shadow: 0px 2px 4px rgb(0 0 0 / 15%);\n border: 1px solid #e5e5e5;\n }\n .react-datepicker__input-container{\n z-index: 0;\n }\n\n .react-datepicker__navigation {\n line-height: normal;\n text-indent: inherit;\n border: none;\n border-radius: 4px;\n height: 32px;\n width: 32px;\n outline: none;\n margin: 0px;\n color: transparent;\n\n &:hover {\n background: ${COLORS.primary_20};\n\n &.react-datepicker__navigation--previous::before {\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\");\n }\n\n &.react-datepicker__navigation--next::before {\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\");\n }\n }\n\n &:focus {\n ${focusStyles}\n &.react-datepicker__navigation--next::before {\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\");\n }\n\n &.react-datepicker__navigation--previous::before {\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\");\n }\n }\n\n &::before {\n text-align: center;\n display: inline-block;\n content: '';\n height: 32px;\n width: 32px;\n vertical-align: middle;\n }\n\n &.react-datepicker__navigation--next::before {\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\");\n }\n\n &.react-datepicker__navigation--previous::before {\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\");\n }\n }\n\n .react-datepicker__month-container,\n .react-datepicker__year--container {\n width: 336px;\n }\n\n .react-datepicker__month {\n margin: 0px;\n }\n\n .react-datepicker__triangle {\n left: 50% !important;\n display: none;\n }\n\n .react-datepicker-popper[data-placement^='bottom'] {\n margin-top: 0;\n }\n\n .react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle {\n border-bottom-color: ${COLORS.neutral_20};\n }\n\n .react-datepicker__header {\n border-bottom: 1px solid ${COLORS.neutral_200};\n background: ${COLORS.neutral_20};\n height: ${(props) => (!props.yearPicker ? '96px' : '54px')};\n padding-top: 0px;\n }\n\n .react-datepicker__current-month {\n height: 48px;\n display: inline-flex;\n align-items: center;\n margin-right: 5px;\n\n ${ComponentSStyling(ComponentTextStyle.Bold, COLORS.neutral_600)}\n }\n\n .react-datepicker__year {\n max-height: 300px;\n overflow-y: scroll;\n\n ${scrollBarStyling(Size.Small)}\n }\n\n .react-datepicker__year-wrapper {\n max-width: 100%;\n justify-content: space-around;\n }\n\n .react-datepicker__day-name {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 48px;\n margin: 0px;\n width: 48px;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n }\n\n .react-datepicker__year-text {\n background: ${COLORS.white};\n border: none;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n margin-top: 20px;\n padding-top: 10px;\n padding-bottom: 10px;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n &.react-datepicker__year-text--disabled {\n display: none;\n }\n\n &.react-datepicker__day--keyboard-selected {\n color: ${COLORS.neutral_600};\n background: ${COLORS.white};\n font-weight: 400;\n border: none;\n }\n\n &:hover {\n color: ${COLORS.primary_700};\n background: ${COLORS.primary_20};\n }\n\n &:focus {\n ${focusStyles}\n }\n\n &.react-datepicker__year-text--selected {\n color: ${COLORS.white} !important;\n background: ${COLORS.primary_500} !important;\n }\n }\n\n .react-datepicker__day {\n background: ${COLORS.white};\n border: none;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 40px;\n width: 40px;\n margin: 4px;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n &.react-datepicker__day--keyboard-selected {\n color: ${COLORS.neutral_600};\n background: ${COLORS.white};\n font-weight: 400;\n border: none;\n }\n\n &:hover {\n color: ${COLORS.primary_700};\n background: ${COLORS.primary_20};\n }\n\n &:focus {\n ${focusStyles}\n }\n\n &.react-datepicker__day--selected {\n color: ${COLORS.white} !important;\n background: ${COLORS.primary_500} !important;\n }\n\n &.react-datepicker__day--today {\n border-radius: 0.3rem;\n color: ${COLORS.neutral_700};\n background: ${COLORS.neutral_100};\n\n &:hover {\n color: ${COLORS.primary_700};\n background: ${COLORS.primary_20};\n }\n\n &:focus {\n ${focusStyles}\n }\n }\n }\n }\n`;\n\nconst IconWrapper = styled.div`\n pointer-events: none;\n position: absolute;\n right: 16px;\n width: 24px;\n height: 24px;\n z-index: ${+Z_INDEXES.focus + 1};\n color: ${COLORS.neutral_600};\n`;\n\nconst DatepickerRow = styled.div`\n display: flex;\n flex-direction: row;\n align-items: center;\n`;\n\nconst StyledInputFieldStyling = styled(InputFieldStyling)`\n &::placeholder {\n color: ${COLORS.neutral_500};\n }\n\n &:focus:not(.focus-visible) {\n box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_300};\n }\n\n &:hover {\n box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_200};\n\n ::placeholder {\n color: ${COLORS.primary_700};\n }\n\n cursor: pointer;\n background-color: ${COLORS.primary_20};\n color: ${COLORS.primary_700};\n }\n\n &:active,\n &.open {\n box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_300};\n background-color: ${COLORS.primary_100};\n color: ${COLORS.primary_800};\n\n ::placeholder {\n color: ${COLORS.primary_800};\n }\n }\n\n &:disabled {\n background-color: ${COLORS.white};\n }\n\n &:hover ~ ${IconWrapper} {\n color: ${COLORS.primary_700};\n }\n\n &:active ~ ${IconWrapper}, &.open ~ ${IconWrapper} {\n color: ${COLORS.primary_800};\n }\n\n &:disabled ~ ${IconWrapper}, &:read-only ~ ${IconWrapper} {\n color: ${COLORS.neutral_300};\n }\n`;\n\nconst DatepickerField = React.forwardRef(({\n disabled,\n readOnly,\n onChange,\n invalid,\n value,\n validationMessage,\n dateFormat,\n autoComplete,\n placeholder,\n required,\n yearPicker,\n yearsBeforeCurrentDate,\n yearsAfterCurrentDate,\n margin,\n onBlur,\n ...rest\n }: DatepickerFieldProps, ref) => {\n // Globally used variables within the component\n const inputRef = useFocusVisibleRef();\n const datepickerRef = React.useRef<any>(null);\n const [activeMonthPage, setActiveMonthPage] = React.useState<number>(-1);\n const [yearPickerMode, setYearPickerMode] = React.useState<boolean>(false);\n const [openAt, setOpenAt] = React.useState<Date | null>(null);\n // 'open' flag is used only for tracking current state of the dropdown,\n // for explicitly opening/closing the picker we are using 'datepickerRef.current.setOpen'\n const [open, setOpen] = React.useState<boolean>(false);\n\n /**\n * Format the date in a specific way.\n */\n React.useEffect(() => {\n if (value) inputRef.current.value = dayjs(value).format(dateFormat ? dateFormat : 'MMMM Do, YYYY');\n }, [value]);\n\n React.useEffect(() => {\n if (yearPickerMode) {\n //unfortunately, since there are no refs, and year pickers is rendered not by our code, but by 'react-datepicker'\n //we have to touch DOM directly\n const selectedDate = document.getElementsByClassName('react-datepicker__year-text--selected')[0] as HTMLElement;\n const dropdownParent = selectedDate?.parentElement?.parentElement;\n if (selectedDate && dropdownParent) dropdownParent.scrollTop = selectedDate.offsetTop - 2 * selectedDate.offsetHeight;\n }\n }, [yearPickerMode]);\n\n //we have to manually reopen the calendar when needed, to guarantee that datepicker will show selected date after year selection\n //otherwise after year selection datepicker will show January month of the selected year\n React.useEffect(() => {\n if (openAt) {\n datepickerRef.current.setOpen(true);\n //setOpenAt(null);\n }\n }, [openAt]);\n\n React.useImperativeHandle(ref, () => inputRef.current, [inputRef]);\n\n const handleCalendarClose = () => {\n inputRef.current?.blur();\n setOpen(false);\n };\n\n const handleCalendarOpen = () => {\n if (openAt) setOpenAt(null);\n setOpen(true);\n };\n\n let maxDate = new Date(value && new Date(value) > new Date() ? new Date(value) : new Date());\n maxDate.setFullYear(maxDate.getFullYear() + (yearsAfterCurrentDate ?? 50));\n\n //itemsNumber - controls number of year select options generated in the dropdown\n //items related to dates higher than 'maxDate' will be hidden, thus to avoid creating hundreds of invisible divs, we divide by 5\n let minDate = new Date(value && new Date(value) < new Date() ? new Date(value) : new Date());\n const itemsNumber = Math.round((minDate.getFullYear() - (yearsBeforeCurrentDate ?? 15)) / 5);\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLDivElement>) => {\n if (e.key === 'Escape' || e.key === 'Esc')\n datepickerRef.current.setOpen(false);\n };\n\n const handleBlur = (e: React.FocusEvent<HTMLDivElement>) => {\n // @ts-ignore\n if (!e.currentTarget.contains(e.relatedTarget)) {\n onBlur && onBlur(e);\n }\n };\n\n return (\n <>\n {/* Let's render the input itself */}\n <DatePickerContainer yearPicker={yearPickerMode} margin={margin || ''} onBlur={handleBlur}>\n <DatePicker\n ref={datepickerRef}\n onCalendarOpen={handleCalendarOpen}\n onCalendarClose={handleCalendarClose}\n onKeyDown={handleKeyDown}\n\n onClickOutside={() => datepickerRef.current.setOpen(false)}\n\n onChange={(e: any) => {\n if (onChange) {\n if (yearPickerMode) {\n const newDate = new Date();\n newDate.setFullYear(e.getFullYear());\n newDate.setMonth(activeMonthPage);\n setOpenAt(newDate);\n } else onChange(e);\n }\n if (yearPickerMode) setYearPickerMode(false);\n }}\n disabled={disabled || readOnly}\n locale={en}\n showYearPicker={yearPickerMode}\n //we manipulate 'yearItemNumber' and 'maxDate' to guarantee number of year select options shown before and after selected year\n yearItemNumber={yearPickerMode ? itemsNumber : undefined}\n maxDate={yearPickerMode ? maxDate : undefined}\n selected={value}\n openToDate={openAt ?? undefined}\n preventOpenOnFocus={true}\n shouldCloseOnSelect={true}\n renderCustomHeader={\n yearPicker\n ? (params: ReactDatePickerCustomHeaderProps) =>\n React.createElement(\n DatepickerFieldHeader,\n {\n ...params,\n setActiveMonthPage,\n customHeaderCount: 0,\n yearPickerMode: yearPickerMode,\n setYearPickerMode: setYearPickerMode,\n },\n null,\n )\n : undefined\n }\n customInput={\n <InputWrapper disabled={disabled} readOnly={readOnly}>\n <div style={{display: 'block', margin: '4px 0px'}}>\n <DatepickerRow>\n <StyledInputFieldStyling\n ref={inputRef}\n type=\"text\"\n name=\"datepicker\"\n onKeyDown={(e) => e.key === 'Enter' && datepickerRef.current.setOpen(true)}\n className={(invalid ? 'invalid' : '' + (open ? ' open' : ''))}\n tabIndex={disabled || readOnly ? -1 : 0}\n onFocus={(e) => inputRef.current?.setSelectionRange(0, 0)}\n autoComplete={autoComplete}\n placeholder={placeholder}\n disabled={disabled}\n readOnly={true}\n suppressReadOnlyStyles={!readOnly}\n required={required}\n {...rest}\n />\n <IconWrapper>\n <Calendar size=\"24\"/>\n </IconWrapper>\n </DatepickerRow>\n </div>\n </InputWrapper>\n }\n />\n </DatePickerContainer>\n\n {/* If there is an error, let's render the error */}\n {validationMessage && (\n <ErrorMessage>\n <TechnicalWarning color={COLORS.critical_400}/>\n <span>{validationMessage}</span>\n </ErrorMessage>\n )}\n </>\n );\n});\n\nexport default DatepickerField;\n"],"mappings":"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"}
@@ -22,7 +22,9 @@ import React from 'react';
22
22
  import styled from 'styled-components';
23
23
  import DatePicker from 'react-datepicker';
24
24
  import en from 'date-fns/locale/en-GB';
25
- import moment from 'moment';
25
+ import dayjs from 'dayjs';
26
+ import advancedFormat from 'dayjs/plugin/advancedFormat';
27
+ dayjs.extend(advancedFormat);
26
28
  /**
27
29
  * Import custom components.
28
30
  */
@@ -52,12 +54,12 @@ import { Fragment as _Fragment } from "react/jsx-runtime";
52
54
  /**
53
55
  * Add custom styles.
54
56
  */
55
- var DatePickerContainer = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n .react-datepicker-popper {\n z-index: ", ";\n }\n\n > div {\n display: block;\n\n ", "\n .react-datepicker {\n box-sizing: border-box;\n box-shadow: 0px 2px 4px rgb(0 0 0 / 15%);\n border: 1px solid #e5e5e5;\n }\n\n .react-datepicker__navigation {\n line-height: normal;\n text-indent: inherit;\n border: none;\n border-radius: 4px;\n height: 32px;\n width: 32px;\n outline: none;\n margin: 0px;\n color: transparent;\n\n &:hover {\n background: ", ";\n\n &.react-datepicker__navigation--previous::before {\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\");\n }\n\n &.react-datepicker__navigation--next::before {\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\");\n }\n }\n\n &:focus {\n ", "\n &.react-datepicker__navigation--next::before {\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\");\n }\n\n &.react-datepicker__navigation--previous::before {\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\");\n }\n }\n\n &::before {\n text-align: center;\n display: inline-block;\n content: '';\n height: 32px;\n width: 32px;\n vertical-align: middle;\n }\n\n &.react-datepicker__navigation--next::before {\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\");\n }\n\n &.react-datepicker__navigation--previous::before {\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\");\n }\n }\n\n .react-datepicker__month-container,\n .react-datepicker__year--container {\n width: 336px;\n }\n\n .react-datepicker__month {\n margin: 0px;\n }\n\n .react-datepicker__triangle {\n left: 50% !important;\n display: none;\n }\n\n .react-datepicker-popper[data-placement^='bottom'] {\n margin-top: 0;\n }\n\n .react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle {\n border-bottom-color: ", ";\n }\n\n .react-datepicker__header {\n border-bottom: 1px solid ", ";\n background: ", ";\n height: ", ";\n padding-top: 0px;\n }\n\n .react-datepicker__current-month {\n height: 48px;\n display: inline-flex;\n align-items: center;\n margin-right: 5px;\n\n ", "\n }\n\n .react-datepicker__year {\n max-height: 300px;\n overflow-y: scroll;\n\n ", "\n }\n\n .react-datepicker__year-wrapper {\n max-width: 100%;\n justify-content: space-around;\n }\n\n .react-datepicker__day-name {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 48px;\n margin: 0px;\n width: 48px;\n\n ", "\n }\n\n .react-datepicker__year-text {\n background: ", ";\n border: none;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n margin-top: 20px;\n padding-top: 10px;\n padding-bottom: 10px;\n\n ", "\n &.react-datepicker__year-text--disabled {\n display: none;\n }\n\n &.react-datepicker__day--keyboard-selected {\n color: ", ";\n background: ", ";\n font-weight: 400;\n border: none;\n }\n\n &:hover {\n color: ", ";\n background: ", ";\n }\n\n &:focus {\n ", "\n }\n\n &.react-datepicker__year-text--selected {\n color: ", " !important;\n background: ", " !important;\n }\n }\n\n .react-datepicker__day {\n background: ", ";\n border: none;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 40px;\n width: 40px;\n margin: 4px;\n\n ", "\n &.react-datepicker__day--keyboard-selected {\n color: ", ";\n background: ", ";\n font-weight: 400;\n border: none;\n }\n\n &:hover {\n color: ", ";\n background: ", ";\n }\n\n &:focus {\n ", "\n }\n\n &.react-datepicker__day--selected {\n color: ", " !important;\n background: ", " !important;\n }\n\n &.react-datepicker__day--today {\n border-radius: 0.3rem;\n color: ", ";\n background: ", ";\n\n &:hover {\n color: ", ";\n background: ", ";\n }\n\n &:focus {\n ", "\n }\n }\n }\n }\n"])), Z_INDEXES.dropdown, function (props) {
57
+ var DatePickerContainer = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n .react-datepicker-popper {\n z-index: ", ";\n }\n\n > div {\n display: block;\n\n ", "\n .react-datepicker {\n box-sizing: border-box;\n box-shadow: 0px 2px 4px rgb(0 0 0 / 15%);\n border: 1px solid #e5e5e5;\n }\n .react-datepicker__input-container{\n z-index: 0;\n }\n\n .react-datepicker__navigation {\n line-height: normal;\n text-indent: inherit;\n border: none;\n border-radius: 4px;\n height: 32px;\n width: 32px;\n outline: none;\n margin: 0px;\n color: transparent;\n\n &:hover {\n background: ", ";\n\n &.react-datepicker__navigation--previous::before {\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\");\n }\n\n &.react-datepicker__navigation--next::before {\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\");\n }\n }\n\n &:focus {\n ", "\n &.react-datepicker__navigation--next::before {\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\");\n }\n\n &.react-datepicker__navigation--previous::before {\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\");\n }\n }\n\n &::before {\n text-align: center;\n display: inline-block;\n content: '';\n height: 32px;\n width: 32px;\n vertical-align: middle;\n }\n\n &.react-datepicker__navigation--next::before {\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\");\n }\n\n &.react-datepicker__navigation--previous::before {\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\");\n }\n }\n\n .react-datepicker__month-container,\n .react-datepicker__year--container {\n width: 336px;\n }\n\n .react-datepicker__month {\n margin: 0px;\n }\n\n .react-datepicker__triangle {\n left: 50% !important;\n display: none;\n }\n\n .react-datepicker-popper[data-placement^='bottom'] {\n margin-top: 0;\n }\n\n .react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle {\n border-bottom-color: ", ";\n }\n\n .react-datepicker__header {\n border-bottom: 1px solid ", ";\n background: ", ";\n height: ", ";\n padding-top: 0px;\n }\n\n .react-datepicker__current-month {\n height: 48px;\n display: inline-flex;\n align-items: center;\n margin-right: 5px;\n\n ", "\n }\n\n .react-datepicker__year {\n max-height: 300px;\n overflow-y: scroll;\n\n ", "\n }\n\n .react-datepicker__year-wrapper {\n max-width: 100%;\n justify-content: space-around;\n }\n\n .react-datepicker__day-name {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 48px;\n margin: 0px;\n width: 48px;\n\n ", "\n }\n\n .react-datepicker__year-text {\n background: ", ";\n border: none;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n margin-top: 20px;\n padding-top: 10px;\n padding-bottom: 10px;\n\n ", "\n &.react-datepicker__year-text--disabled {\n display: none;\n }\n\n &.react-datepicker__day--keyboard-selected {\n color: ", ";\n background: ", ";\n font-weight: 400;\n border: none;\n }\n\n &:hover {\n color: ", ";\n background: ", ";\n }\n\n &:focus {\n ", "\n }\n\n &.react-datepicker__year-text--selected {\n color: ", " !important;\n background: ", " !important;\n }\n }\n\n .react-datepicker__day {\n background: ", ";\n border: none;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 40px;\n width: 40px;\n margin: 4px;\n\n ", "\n &.react-datepicker__day--keyboard-selected {\n color: ", ";\n background: ", ";\n font-weight: 400;\n border: none;\n }\n\n &:hover {\n color: ", ";\n background: ", ";\n }\n\n &:focus {\n ", "\n }\n\n &.react-datepicker__day--selected {\n color: ", " !important;\n background: ", " !important;\n }\n\n &.react-datepicker__day--today {\n border-radius: 0.3rem;\n color: ", ";\n background: ", ";\n\n &:hover {\n color: ", ";\n background: ", ";\n }\n\n &:focus {\n ", "\n }\n }\n }\n }\n"])), Z_INDEXES.dropdown, function (props) {
56
58
  return props.margin ? "margin: ".concat(props.margin, ";") : '';
57
59
  }, COLORS.primary_20, focusStyles, COLORS.neutral_20, COLORS.neutral_200, COLORS.neutral_20, function (props) {
58
60
  return !props.yearPicker ? '96px' : '54px';
59
61
  }, ComponentSStyling(ComponentTextStyle.Bold, COLORS.neutral_600), scrollBarStyling(Size.Small), ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600), COLORS.white, ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600), COLORS.neutral_600, COLORS.white, COLORS.primary_700, COLORS.primary_20, focusStyles, COLORS.white, COLORS.primary_500, COLORS.white, ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600), COLORS.neutral_600, COLORS.white, COLORS.primary_700, COLORS.primary_20, focusStyles, COLORS.white, COLORS.primary_500, COLORS.neutral_700, COLORS.neutral_100, COLORS.primary_700, COLORS.primary_20, focusStyles);
60
- var IconWrapper = styled.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n pointer-events: none;\n position: absolute;\n right: 16px;\n width: 24px;\n height: 24px;\n z-index: ", ";\n color: ", ";\n"])), Z_INDEXES.focus + 1, COLORS.neutral_600);
62
+ var IconWrapper = styled.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n pointer-events: none;\n position: absolute;\n right: 16px;\n width: 24px;\n height: 24px;\n z-index: ", ";\n color: ", ";\n"])), +Z_INDEXES.focus + 1, COLORS.neutral_600);
61
63
  var DatepickerRow = styled.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: row;\n align-items: center;\n"])));
62
64
  var StyledInputFieldStyling = styled(InputFieldStyling)(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n &::placeholder {\n color: ", ";\n }\n\n &:focus:not(.focus-visible) {\n box-shadow: inset 0px 0px 0px 2px ", ";\n }\n\n &:hover {\n box-shadow: inset 0px 0px 0px 2px ", ";\n\n ::placeholder {\n color: ", ";\n }\n\n cursor: pointer;\n background-color: ", ";\n color: ", ";\n }\n\n &:active,\n &.open {\n box-shadow: inset 0px 0px 0px 2px ", ";\n background-color: ", ";\n color: ", ";\n\n ::placeholder {\n color: ", ";\n }\n }\n\n &:disabled {\n background-color: ", ";\n }\n\n &:hover ~ ", " {\n color: ", ";\n }\n\n &:active ~ ", ", &.open ~ ", " {\n color: ", ";\n }\n\n &:disabled ~ ", ", &:read-only ~ ", " {\n color: ", ";\n }\n"])), COLORS.neutral_500, COLORS.primary_300, COLORS.primary_200, COLORS.primary_700, COLORS.primary_20, COLORS.primary_700, COLORS.primary_300, COLORS.primary_100, COLORS.primary_800, COLORS.primary_800, COLORS.white, IconWrapper, COLORS.primary_700, IconWrapper, IconWrapper, COLORS.primary_800, IconWrapper, IconWrapper, COLORS.neutral_300);
63
65
  var DatepickerField = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
@@ -109,7 +111,7 @@ var DatepickerField = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
109
111
 
110
112
 
111
113
  React.useEffect(function () {
112
- if (value) inputRef.current.value = moment(value).format(dateFormat ? dateFormat : 'MMMM Do, YYYY');
114
+ if (value) inputRef.current.value = dayjs(value).format(dateFormat ? dateFormat : 'MMMM Do, YYYY');
113
115
  }, [value]);
114
116
  React.useEffect(function () {
115
117
  if (yearPickerMode) {
@@ -1 +1 @@
1
- {"version":3,"file":"DatepickerField.js","names":["React","styled","DatePicker","en","moment","COLORS","Calendar","TechnicalWarning","DatepickerFieldHeader","ComponentTextStyle","focusStyles","scrollBarStyling","ErrorMessage","InputFieldStyling","InputWrapper","ComponentMStyling","ComponentSStyling","Z_INDEXES","useFocusVisibleRef","Size","DatePickerContainer","div","dropdown","props","margin","primary_20","neutral_20","neutral_200","yearPicker","Bold","neutral_600","Small","Regular","white","primary_700","primary_500","neutral_700","neutral_100","IconWrapper","focus","DatepickerRow","StyledInputFieldStyling","neutral_500","primary_300","primary_200","primary_100","primary_800","neutral_300","DatepickerField","forwardRef","ref","disabled","readOnly","onChange","invalid","value","validationMessage","dateFormat","autoComplete","placeholder","required","yearsBeforeCurrentDate","yearsAfterCurrentDate","onBlur","rest","inputRef","datepickerRef","useRef","useState","activeMonthPage","setActiveMonthPage","yearPickerMode","setYearPickerMode","openAt","setOpenAt","open","setOpen","useEffect","current","format","selectedDate","document","getElementsByClassName","dropdownParent","parentElement","scrollTop","offsetTop","offsetHeight","useImperativeHandle","handleCalendarClose","blur","handleCalendarOpen","maxDate","Date","setFullYear","getFullYear","minDate","itemsNumber","Math","round","handleKeyDown","e","key","handleBlur","currentTarget","contains","relatedTarget","newDate","setMonth","undefined","params","createElement","customHeaderCount","display","setSelectionRange","critical_400"],"sources":["../../src/InputFields/DatepickerField.tsx"],"sourcesContent":["/**\n * Import react libraries.\n */\nimport React from 'react';\n\n/**\n * Import third-party libraries.\n */\nimport styled from 'styled-components';\nimport DatePicker, { ReactDatePickerCustomHeaderProps } from 'react-datepicker';\nimport en from 'date-fns/locale/en-GB';\nimport moment from 'moment';\n\n/**\n * Import custom components.\n */\nimport COLORS from '../styles/colors';\nimport {Calendar, TechnicalWarning} from '../icons/systemicons/SystemIcons';\nimport {DatepickerFieldHeader, DatepickerFieldHeaderParams} from './DatepickerFieldHeader';\nimport {ComponentTextStyle, focusStyles, scrollBarStyling} from '../styles';\n\n/**\n * Import custom styles.\n */\nimport {ErrorMessage, InputFieldStyling, InputWrapper} from './styling';\nimport 'react-datepicker/dist/react-datepicker.css';\nimport {ComponentMStyling, ComponentSStyling} from '../styles';\nimport {Z_INDEXES} from '../styles';\nimport {useFocusVisibleRef} from '../common';\nimport {Size} from '../types';\n\n/**\n * Add custom types.\n */\ntype DatepickerFieldProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange' | 'value' | 'size' | 'onBlur'> & {\n value?: Date;\n onChange?: (date: Date) => void;\n onBlur?: (event: React.FocusEvent<HTMLDivElement>) => void;\n\n invalid?: boolean;\n dateFormat?: string;\n validationMessage?: string;\n autoComplete?: string;\n placeholder?: string;\n yearPicker?: boolean;\n yearsBeforeCurrentDate?: number;\n yearsAfterCurrentDate?: number;\n margin?: string;\n};\n\n/**\n * Add custom styles.\n */\nconst DatePickerContainer = styled.div<{ yearPicker: boolean; margin: string }>`\n .react-datepicker-popper {\n z-index: ${Z_INDEXES.dropdown};\n }\n\n > div {\n display: block;\n\n ${(props) => (props.margin ? `margin: ${props.margin};` : '')}\n .react-datepicker {\n box-sizing: border-box;\n box-shadow: 0px 2px 4px rgb(0 0 0 / 15%);\n border: 1px solid #e5e5e5;\n }\n\n .react-datepicker__navigation {\n line-height: normal;\n text-indent: inherit;\n border: none;\n border-radius: 4px;\n height: 32px;\n width: 32px;\n outline: none;\n margin: 0px;\n color: transparent;\n\n &:hover {\n background: ${COLORS.primary_20};\n\n &.react-datepicker__navigation--previous::before {\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\");\n }\n\n &.react-datepicker__navigation--next::before {\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\");\n }\n }\n\n &:focus {\n ${focusStyles}\n &.react-datepicker__navigation--next::before {\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\");\n }\n\n &.react-datepicker__navigation--previous::before {\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\");\n }\n }\n\n &::before {\n text-align: center;\n display: inline-block;\n content: '';\n height: 32px;\n width: 32px;\n vertical-align: middle;\n }\n\n &.react-datepicker__navigation--next::before {\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\");\n }\n\n &.react-datepicker__navigation--previous::before {\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\");\n }\n }\n\n .react-datepicker__month-container,\n .react-datepicker__year--container {\n width: 336px;\n }\n\n .react-datepicker__month {\n margin: 0px;\n }\n\n .react-datepicker__triangle {\n left: 50% !important;\n display: none;\n }\n\n .react-datepicker-popper[data-placement^='bottom'] {\n margin-top: 0;\n }\n\n .react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle {\n border-bottom-color: ${COLORS.neutral_20};\n }\n\n .react-datepicker__header {\n border-bottom: 1px solid ${COLORS.neutral_200};\n background: ${COLORS.neutral_20};\n height: ${(props) => (!props.yearPicker ? '96px' : '54px')};\n padding-top: 0px;\n }\n\n .react-datepicker__current-month {\n height: 48px;\n display: inline-flex;\n align-items: center;\n margin-right: 5px;\n\n ${ComponentSStyling(ComponentTextStyle.Bold, COLORS.neutral_600)}\n }\n\n .react-datepicker__year {\n max-height: 300px;\n overflow-y: scroll;\n\n ${scrollBarStyling(Size.Small)}\n }\n\n .react-datepicker__year-wrapper {\n max-width: 100%;\n justify-content: space-around;\n }\n\n .react-datepicker__day-name {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 48px;\n margin: 0px;\n width: 48px;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n }\n\n .react-datepicker__year-text {\n background: ${COLORS.white};\n border: none;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n margin-top: 20px;\n padding-top: 10px;\n padding-bottom: 10px;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n &.react-datepicker__year-text--disabled {\n display: none;\n }\n\n &.react-datepicker__day--keyboard-selected {\n color: ${COLORS.neutral_600};\n background: ${COLORS.white};\n font-weight: 400;\n border: none;\n }\n\n &:hover {\n color: ${COLORS.primary_700};\n background: ${COLORS.primary_20};\n }\n\n &:focus {\n ${focusStyles}\n }\n\n &.react-datepicker__year-text--selected {\n color: ${COLORS.white} !important;\n background: ${COLORS.primary_500} !important;\n }\n }\n\n .react-datepicker__day {\n background: ${COLORS.white};\n border: none;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 40px;\n width: 40px;\n margin: 4px;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n &.react-datepicker__day--keyboard-selected {\n color: ${COLORS.neutral_600};\n background: ${COLORS.white};\n font-weight: 400;\n border: none;\n }\n\n &:hover {\n color: ${COLORS.primary_700};\n background: ${COLORS.primary_20};\n }\n\n &:focus {\n ${focusStyles}\n }\n\n &.react-datepicker__day--selected {\n color: ${COLORS.white} !important;\n background: ${COLORS.primary_500} !important;\n }\n\n &.react-datepicker__day--today {\n border-radius: 0.3rem;\n color: ${COLORS.neutral_700};\n background: ${COLORS.neutral_100};\n\n &:hover {\n color: ${COLORS.primary_700};\n background: ${COLORS.primary_20};\n }\n\n &:focus {\n ${focusStyles}\n }\n }\n }\n }\n`;\n\nconst IconWrapper = styled.div`\n pointer-events: none;\n position: absolute;\n right: 16px;\n width: 24px;\n height: 24px;\n z-index: ${Z_INDEXES.focus + 1};\n color: ${COLORS.neutral_600};\n`;\n\nconst DatepickerRow = styled.div`\n display: flex;\n flex-direction: row;\n align-items: center;\n`;\n\nconst StyledInputFieldStyling = styled(InputFieldStyling)`\n &::placeholder {\n color: ${COLORS.neutral_500};\n }\n\n &:focus:not(.focus-visible) {\n box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_300};\n }\n\n &:hover {\n box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_200};\n\n ::placeholder {\n color: ${COLORS.primary_700};\n }\n\n cursor: pointer;\n background-color: ${COLORS.primary_20};\n color: ${COLORS.primary_700};\n }\n\n &:active,\n &.open {\n box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_300};\n background-color: ${COLORS.primary_100};\n color: ${COLORS.primary_800};\n\n ::placeholder {\n color: ${COLORS.primary_800};\n }\n }\n\n &:disabled {\n background-color: ${COLORS.white};\n }\n\n &:hover ~ ${IconWrapper} {\n color: ${COLORS.primary_700};\n }\n\n &:active ~ ${IconWrapper}, &.open ~ ${IconWrapper} {\n color: ${COLORS.primary_800};\n }\n\n &:disabled ~ ${IconWrapper}, &:read-only ~ ${IconWrapper} {\n color: ${COLORS.neutral_300};\n }\n`;\n\nconst DatepickerField = React.forwardRef(({\n disabled,\n readOnly,\n onChange,\n invalid,\n value,\n validationMessage,\n dateFormat,\n autoComplete,\n placeholder,\n required,\n yearPicker,\n yearsBeforeCurrentDate,\n yearsAfterCurrentDate,\n margin,\n onBlur,\n ...rest\n }: DatepickerFieldProps, ref) => {\n // Globally used variables within the component\n const inputRef = useFocusVisibleRef();\n const datepickerRef = React.useRef<any>(null);\n const [activeMonthPage, setActiveMonthPage] = React.useState<number>(-1);\n const [yearPickerMode, setYearPickerMode] = React.useState<boolean>(false);\n const [openAt, setOpenAt] = React.useState<Date | null>(null);\n // 'open' flag is used only for tracking current state of the dropdown,\n // for explicitly opening/closing the picker we are using 'datepickerRef.current.setOpen'\n const [open, setOpen] = React.useState<boolean>(false);\n\n /**\n * Format the date in a specific way.\n */\n React.useEffect(() => {\n if (value) inputRef.current.value = moment(value).format(dateFormat ? dateFormat : 'MMMM Do, YYYY');\n }, [value]);\n\n React.useEffect(() => {\n if (yearPickerMode) {\n //unfortunately, since there are no refs, and year pickers is rendered not by our code, but by 'react-datepicker'\n //we have to touch DOM directly\n const selectedDate = document.getElementsByClassName('react-datepicker__year-text--selected')[0] as HTMLElement;\n const dropdownParent = selectedDate?.parentElement?.parentElement;\n if (selectedDate && dropdownParent) dropdownParent.scrollTop = selectedDate.offsetTop - 2 * selectedDate.offsetHeight;\n }\n }, [yearPickerMode]);\n\n //we have to manually reopen the calendar when needed, to guarantee that datepicker will show selected date after year selection\n //otherwise after year selection datepicker will show January month of the selected year\n React.useEffect(() => {\n if (openAt) {\n datepickerRef.current.setOpen(true);\n //setOpenAt(null);\n }\n }, [openAt]);\n\n React.useImperativeHandle(ref, () => inputRef.current, [inputRef]);\n\n const handleCalendarClose = () => {\n inputRef.current?.blur();\n setOpen(false);\n };\n\n const handleCalendarOpen = () => {\n if (openAt) setOpenAt(null);\n setOpen(true);\n };\n\n let maxDate = new Date(value && new Date(value) > new Date() ? new Date(value) : new Date());\n maxDate.setFullYear(maxDate.getFullYear() + (yearsAfterCurrentDate ?? 50));\n\n //itemsNumber - controls number of year select options generated in the dropdown\n //items related to dates higher than 'maxDate' will be hidden, thus to avoid creating hundreds of invisible divs, we divide by 5\n let minDate = new Date(value && new Date(value) < new Date() ? new Date(value) : new Date());\n const itemsNumber = Math.round((minDate.getFullYear() - (yearsBeforeCurrentDate ?? 15)) / 5);\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLDivElement>) => {\n if (e.key === 'Escape' || e.key === 'Esc')\n datepickerRef.current.setOpen(false);\n };\n\n const handleBlur = (e: React.FocusEvent<HTMLDivElement>) => {\n // @ts-ignore\n if (!e.currentTarget.contains(e.relatedTarget)) {\n onBlur && onBlur(e);\n }\n };\n\n return (\n <>\n {/* Let's render the input itself */}\n <DatePickerContainer yearPicker={yearPickerMode} margin={margin || ''} onBlur={handleBlur}>\n <DatePicker\n ref={datepickerRef}\n onCalendarOpen={handleCalendarOpen}\n onCalendarClose={handleCalendarClose}\n onKeyDown={handleKeyDown}\n\n onClickOutside={() => datepickerRef.current.setOpen(false)}\n\n onChange={(e: any) => {\n if (onChange) {\n if (yearPickerMode) {\n const newDate = new Date();\n newDate.setFullYear(e.getFullYear());\n newDate.setMonth(activeMonthPage);\n setOpenAt(newDate);\n } else onChange(e);\n }\n if (yearPickerMode) setYearPickerMode(false);\n }}\n disabled={disabled || readOnly}\n locale={en}\n showYearPicker={yearPickerMode}\n //we manipulate 'yearItemNumber' and 'maxDate' to guarantee number of year select options shown before and after selected year\n yearItemNumber={yearPickerMode ? itemsNumber : undefined}\n maxDate={yearPickerMode ? maxDate : undefined}\n selected={value}\n openToDate={openAt ?? undefined}\n preventOpenOnFocus={true}\n shouldCloseOnSelect={true}\n renderCustomHeader={\n yearPicker\n ? (params: ReactDatePickerCustomHeaderProps) =>\n React.createElement(\n DatepickerFieldHeader,\n {\n ...params,\n setActiveMonthPage,\n customHeaderCount: 0,\n yearPickerMode: yearPickerMode,\n setYearPickerMode: setYearPickerMode,\n },\n null,\n )\n : undefined\n }\n customInput={\n <InputWrapper disabled={disabled} readOnly={readOnly}>\n <div style={{display: 'block', margin: '4px 0px'}}>\n <DatepickerRow>\n <StyledInputFieldStyling\n ref={inputRef}\n type=\"text\"\n name=\"datepicker\"\n onKeyDown={(e) => e.key === 'Enter' && datepickerRef.current.setOpen(true)}\n className={(invalid ? 'invalid' : '' + (open ? ' open' : ''))}\n tabIndex={disabled || readOnly ? -1 : 0}\n onFocus={(e) => inputRef.current?.setSelectionRange(0, 0)}\n autoComplete={autoComplete}\n placeholder={placeholder}\n disabled={disabled}\n readOnly={true}\n suppressReadOnlyStyles={!readOnly}\n required={required}\n {...rest}\n />\n <IconWrapper>\n <Calendar size=\"24\"/>\n </IconWrapper>\n </DatepickerRow>\n </div>\n </InputWrapper>\n }\n />\n </DatePickerContainer>\n\n {/* If there is an error, let's render the error */}\n {validationMessage && (\n <ErrorMessage>\n <TechnicalWarning color={COLORS.critical_400}/>\n <span>{validationMessage}</span>\n </ErrorMessage>\n )}\n </>\n );\n});\n\nexport default DatepickerField;\n"],"mappings":"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"}
1
+ {"version":3,"file":"DatepickerField.js","names":["React","styled","DatePicker","en","dayjs","advancedFormat","extend","COLORS","Calendar","TechnicalWarning","DatepickerFieldHeader","ComponentTextStyle","focusStyles","scrollBarStyling","ErrorMessage","InputFieldStyling","InputWrapper","ComponentMStyling","ComponentSStyling","Z_INDEXES","useFocusVisibleRef","Size","DatePickerContainer","div","dropdown","props","margin","primary_20","neutral_20","neutral_200","yearPicker","Bold","neutral_600","Small","Regular","white","primary_700","primary_500","neutral_700","neutral_100","IconWrapper","focus","DatepickerRow","StyledInputFieldStyling","neutral_500","primary_300","primary_200","primary_100","primary_800","neutral_300","DatepickerField","forwardRef","ref","disabled","readOnly","onChange","invalid","value","validationMessage","dateFormat","autoComplete","placeholder","required","yearsBeforeCurrentDate","yearsAfterCurrentDate","onBlur","rest","inputRef","datepickerRef","useRef","useState","activeMonthPage","setActiveMonthPage","yearPickerMode","setYearPickerMode","openAt","setOpenAt","open","setOpen","useEffect","current","format","selectedDate","document","getElementsByClassName","dropdownParent","parentElement","scrollTop","offsetTop","offsetHeight","useImperativeHandle","handleCalendarClose","blur","handleCalendarOpen","maxDate","Date","setFullYear","getFullYear","minDate","itemsNumber","Math","round","handleKeyDown","e","key","handleBlur","currentTarget","contains","relatedTarget","newDate","setMonth","undefined","params","createElement","customHeaderCount","display","setSelectionRange","critical_400"],"sources":["../../src/InputFields/DatepickerField.tsx"],"sourcesContent":["/**\n * Import react libraries.\n */\nimport React from 'react';\n\n/**\n * Import third-party libraries.\n */\nimport styled from 'styled-components';\nimport DatePicker, { ReactDatePickerCustomHeaderProps } from 'react-datepicker';\nimport en from 'date-fns/locale/en-GB';\nimport dayjs from 'dayjs';\nimport advancedFormat from 'dayjs/plugin/advancedFormat';\n\ndayjs.extend(advancedFormat);\n\n/**\n * Import custom components.\n */\nimport COLORS from '../styles/colors';\nimport {Calendar, TechnicalWarning} from '../icons/systemicons/SystemIcons';\nimport {DatepickerFieldHeader, DatepickerFieldHeaderParams} from './DatepickerFieldHeader';\nimport {ComponentTextStyle, focusStyles, scrollBarStyling} from '../styles';\n\n/**\n * Import custom styles.\n */\nimport {ErrorMessage, InputFieldStyling, InputWrapper} from './styling';\nimport 'react-datepicker/dist/react-datepicker.css';\nimport {ComponentMStyling, ComponentSStyling} from '../styles';\nimport {Z_INDEXES} from '../styles';\nimport {useFocusVisibleRef} from '../common';\nimport {Size} from '../types';\n\n/**\n * Add custom types.\n */\ntype DatepickerFieldProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange' | 'value' | 'size' | 'onBlur'> & {\n value?: Date;\n onChange?: (date: Date) => void;\n onBlur?: (event: React.FocusEvent<HTMLDivElement>) => void;\n\n invalid?: boolean;\n dateFormat?: string;\n validationMessage?: string;\n autoComplete?: string;\n placeholder?: string;\n yearPicker?: boolean;\n yearsBeforeCurrentDate?: number;\n yearsAfterCurrentDate?: number;\n margin?: string;\n};\n\n/**\n * Add custom styles.\n */\nconst DatePickerContainer = styled.div<{ yearPicker: boolean; margin: string }>`\n .react-datepicker-popper {\n z-index: ${Z_INDEXES.dropdown};\n }\n\n > div {\n display: block;\n\n ${(props) => (props.margin ? `margin: ${props.margin};` : '')}\n .react-datepicker {\n box-sizing: border-box;\n box-shadow: 0px 2px 4px rgb(0 0 0 / 15%);\n border: 1px solid #e5e5e5;\n }\n .react-datepicker__input-container{\n z-index: 0;\n }\n\n .react-datepicker__navigation {\n line-height: normal;\n text-indent: inherit;\n border: none;\n border-radius: 4px;\n height: 32px;\n width: 32px;\n outline: none;\n margin: 0px;\n color: transparent;\n\n &:hover {\n background: ${COLORS.primary_20};\n\n &.react-datepicker__navigation--previous::before {\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\");\n }\n\n &.react-datepicker__navigation--next::before {\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\");\n }\n }\n\n &:focus {\n ${focusStyles}\n &.react-datepicker__navigation--next::before {\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\");\n }\n\n &.react-datepicker__navigation--previous::before {\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\");\n }\n }\n\n &::before {\n text-align: center;\n display: inline-block;\n content: '';\n height: 32px;\n width: 32px;\n vertical-align: middle;\n }\n\n &.react-datepicker__navigation--next::before {\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\");\n }\n\n &.react-datepicker__navigation--previous::before {\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\");\n }\n }\n\n .react-datepicker__month-container,\n .react-datepicker__year--container {\n width: 336px;\n }\n\n .react-datepicker__month {\n margin: 0px;\n }\n\n .react-datepicker__triangle {\n left: 50% !important;\n display: none;\n }\n\n .react-datepicker-popper[data-placement^='bottom'] {\n margin-top: 0;\n }\n\n .react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle {\n border-bottom-color: ${COLORS.neutral_20};\n }\n\n .react-datepicker__header {\n border-bottom: 1px solid ${COLORS.neutral_200};\n background: ${COLORS.neutral_20};\n height: ${(props) => (!props.yearPicker ? '96px' : '54px')};\n padding-top: 0px;\n }\n\n .react-datepicker__current-month {\n height: 48px;\n display: inline-flex;\n align-items: center;\n margin-right: 5px;\n\n ${ComponentSStyling(ComponentTextStyle.Bold, COLORS.neutral_600)}\n }\n\n .react-datepicker__year {\n max-height: 300px;\n overflow-y: scroll;\n\n ${scrollBarStyling(Size.Small)}\n }\n\n .react-datepicker__year-wrapper {\n max-width: 100%;\n justify-content: space-around;\n }\n\n .react-datepicker__day-name {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 48px;\n margin: 0px;\n width: 48px;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n }\n\n .react-datepicker__year-text {\n background: ${COLORS.white};\n border: none;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n margin-top: 20px;\n padding-top: 10px;\n padding-bottom: 10px;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n &.react-datepicker__year-text--disabled {\n display: none;\n }\n\n &.react-datepicker__day--keyboard-selected {\n color: ${COLORS.neutral_600};\n background: ${COLORS.white};\n font-weight: 400;\n border: none;\n }\n\n &:hover {\n color: ${COLORS.primary_700};\n background: ${COLORS.primary_20};\n }\n\n &:focus {\n ${focusStyles}\n }\n\n &.react-datepicker__year-text--selected {\n color: ${COLORS.white} !important;\n background: ${COLORS.primary_500} !important;\n }\n }\n\n .react-datepicker__day {\n background: ${COLORS.white};\n border: none;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n height: 40px;\n width: 40px;\n margin: 4px;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n &.react-datepicker__day--keyboard-selected {\n color: ${COLORS.neutral_600};\n background: ${COLORS.white};\n font-weight: 400;\n border: none;\n }\n\n &:hover {\n color: ${COLORS.primary_700};\n background: ${COLORS.primary_20};\n }\n\n &:focus {\n ${focusStyles}\n }\n\n &.react-datepicker__day--selected {\n color: ${COLORS.white} !important;\n background: ${COLORS.primary_500} !important;\n }\n\n &.react-datepicker__day--today {\n border-radius: 0.3rem;\n color: ${COLORS.neutral_700};\n background: ${COLORS.neutral_100};\n\n &:hover {\n color: ${COLORS.primary_700};\n background: ${COLORS.primary_20};\n }\n\n &:focus {\n ${focusStyles}\n }\n }\n }\n }\n`;\n\nconst IconWrapper = styled.div`\n pointer-events: none;\n position: absolute;\n right: 16px;\n width: 24px;\n height: 24px;\n z-index: ${+Z_INDEXES.focus + 1};\n color: ${COLORS.neutral_600};\n`;\n\nconst DatepickerRow = styled.div`\n display: flex;\n flex-direction: row;\n align-items: center;\n`;\n\nconst StyledInputFieldStyling = styled(InputFieldStyling)`\n &::placeholder {\n color: ${COLORS.neutral_500};\n }\n\n &:focus:not(.focus-visible) {\n box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_300};\n }\n\n &:hover {\n box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_200};\n\n ::placeholder {\n color: ${COLORS.primary_700};\n }\n\n cursor: pointer;\n background-color: ${COLORS.primary_20};\n color: ${COLORS.primary_700};\n }\n\n &:active,\n &.open {\n box-shadow: inset 0px 0px 0px 2px ${COLORS.primary_300};\n background-color: ${COLORS.primary_100};\n color: ${COLORS.primary_800};\n\n ::placeholder {\n color: ${COLORS.primary_800};\n }\n }\n\n &:disabled {\n background-color: ${COLORS.white};\n }\n\n &:hover ~ ${IconWrapper} {\n color: ${COLORS.primary_700};\n }\n\n &:active ~ ${IconWrapper}, &.open ~ ${IconWrapper} {\n color: ${COLORS.primary_800};\n }\n\n &:disabled ~ ${IconWrapper}, &:read-only ~ ${IconWrapper} {\n color: ${COLORS.neutral_300};\n }\n`;\n\nconst DatepickerField = React.forwardRef(({\n disabled,\n readOnly,\n onChange,\n invalid,\n value,\n validationMessage,\n dateFormat,\n autoComplete,\n placeholder,\n required,\n yearPicker,\n yearsBeforeCurrentDate,\n yearsAfterCurrentDate,\n margin,\n onBlur,\n ...rest\n }: DatepickerFieldProps, ref) => {\n // Globally used variables within the component\n const inputRef = useFocusVisibleRef();\n const datepickerRef = React.useRef<any>(null);\n const [activeMonthPage, setActiveMonthPage] = React.useState<number>(-1);\n const [yearPickerMode, setYearPickerMode] = React.useState<boolean>(false);\n const [openAt, setOpenAt] = React.useState<Date | null>(null);\n // 'open' flag is used only for tracking current state of the dropdown,\n // for explicitly opening/closing the picker we are using 'datepickerRef.current.setOpen'\n const [open, setOpen] = React.useState<boolean>(false);\n\n /**\n * Format the date in a specific way.\n */\n React.useEffect(() => {\n if (value) inputRef.current.value = dayjs(value).format(dateFormat ? dateFormat : 'MMMM Do, YYYY');\n }, [value]);\n\n React.useEffect(() => {\n if (yearPickerMode) {\n //unfortunately, since there are no refs, and year pickers is rendered not by our code, but by 'react-datepicker'\n //we have to touch DOM directly\n const selectedDate = document.getElementsByClassName('react-datepicker__year-text--selected')[0] as HTMLElement;\n const dropdownParent = selectedDate?.parentElement?.parentElement;\n if (selectedDate && dropdownParent) dropdownParent.scrollTop = selectedDate.offsetTop - 2 * selectedDate.offsetHeight;\n }\n }, [yearPickerMode]);\n\n //we have to manually reopen the calendar when needed, to guarantee that datepicker will show selected date after year selection\n //otherwise after year selection datepicker will show January month of the selected year\n React.useEffect(() => {\n if (openAt) {\n datepickerRef.current.setOpen(true);\n //setOpenAt(null);\n }\n }, [openAt]);\n\n React.useImperativeHandle(ref, () => inputRef.current, [inputRef]);\n\n const handleCalendarClose = () => {\n inputRef.current?.blur();\n setOpen(false);\n };\n\n const handleCalendarOpen = () => {\n if (openAt) setOpenAt(null);\n setOpen(true);\n };\n\n let maxDate = new Date(value && new Date(value) > new Date() ? new Date(value) : new Date());\n maxDate.setFullYear(maxDate.getFullYear() + (yearsAfterCurrentDate ?? 50));\n\n //itemsNumber - controls number of year select options generated in the dropdown\n //items related to dates higher than 'maxDate' will be hidden, thus to avoid creating hundreds of invisible divs, we divide by 5\n let minDate = new Date(value && new Date(value) < new Date() ? new Date(value) : new Date());\n const itemsNumber = Math.round((minDate.getFullYear() - (yearsBeforeCurrentDate ?? 15)) / 5);\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLDivElement>) => {\n if (e.key === 'Escape' || e.key === 'Esc')\n datepickerRef.current.setOpen(false);\n };\n\n const handleBlur = (e: React.FocusEvent<HTMLDivElement>) => {\n // @ts-ignore\n if (!e.currentTarget.contains(e.relatedTarget)) {\n onBlur && onBlur(e);\n }\n };\n\n return (\n <>\n {/* Let's render the input itself */}\n <DatePickerContainer yearPicker={yearPickerMode} margin={margin || ''} onBlur={handleBlur}>\n <DatePicker\n ref={datepickerRef}\n onCalendarOpen={handleCalendarOpen}\n onCalendarClose={handleCalendarClose}\n onKeyDown={handleKeyDown}\n\n onClickOutside={() => datepickerRef.current.setOpen(false)}\n\n onChange={(e: any) => {\n if (onChange) {\n if (yearPickerMode) {\n const newDate = new Date();\n newDate.setFullYear(e.getFullYear());\n newDate.setMonth(activeMonthPage);\n setOpenAt(newDate);\n } else onChange(e);\n }\n if (yearPickerMode) setYearPickerMode(false);\n }}\n disabled={disabled || readOnly}\n locale={en}\n showYearPicker={yearPickerMode}\n //we manipulate 'yearItemNumber' and 'maxDate' to guarantee number of year select options shown before and after selected year\n yearItemNumber={yearPickerMode ? itemsNumber : undefined}\n maxDate={yearPickerMode ? maxDate : undefined}\n selected={value}\n openToDate={openAt ?? undefined}\n preventOpenOnFocus={true}\n shouldCloseOnSelect={true}\n renderCustomHeader={\n yearPicker\n ? (params: ReactDatePickerCustomHeaderProps) =>\n React.createElement(\n DatepickerFieldHeader,\n {\n ...params,\n setActiveMonthPage,\n customHeaderCount: 0,\n yearPickerMode: yearPickerMode,\n setYearPickerMode: setYearPickerMode,\n },\n null,\n )\n : undefined\n }\n customInput={\n <InputWrapper disabled={disabled} readOnly={readOnly}>\n <div style={{display: 'block', margin: '4px 0px'}}>\n <DatepickerRow>\n <StyledInputFieldStyling\n ref={inputRef}\n type=\"text\"\n name=\"datepicker\"\n onKeyDown={(e) => e.key === 'Enter' && datepickerRef.current.setOpen(true)}\n className={(invalid ? 'invalid' : '' + (open ? ' open' : ''))}\n tabIndex={disabled || readOnly ? -1 : 0}\n onFocus={(e) => inputRef.current?.setSelectionRange(0, 0)}\n autoComplete={autoComplete}\n placeholder={placeholder}\n disabled={disabled}\n readOnly={true}\n suppressReadOnlyStyles={!readOnly}\n required={required}\n {...rest}\n />\n <IconWrapper>\n <Calendar size=\"24\"/>\n </IconWrapper>\n </DatepickerRow>\n </div>\n </InputWrapper>\n }\n />\n </DatePickerContainer>\n\n {/* If there is an error, let's render the error */}\n {validationMessage && (\n <ErrorMessage>\n <TechnicalWarning color={COLORS.critical_400}/>\n <span>{validationMessage}</span>\n </ErrorMessage>\n )}\n </>\n );\n});\n\nexport default DatepickerField;\n"],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  export interface DatepickerFieldHeaderParams {
3
2
  date: Date;
4
3
  changeYear(year: number): void;
@@ -48,12 +48,11 @@ var LabelRowInner = _styledComponents.default.div(_templateObject3 || (_template
48
48
 
49
49
 
50
50
  var InputLabel = function InputLabel(_ref) {
51
- var _document$getElementB2;
52
-
53
51
  var inputId = _ref.inputId,
54
52
  text = _ref.text,
55
53
  size = _ref.size,
56
- margin = _ref.margin;
54
+ margin = _ref.margin,
55
+ requiredProp = _ref.required;
57
56
 
58
57
  // Globally used variables within the component
59
58
  var _React$useState = React.useState(false),
@@ -66,23 +65,25 @@ var InputLabel = function InputLabel(_ref) {
66
65
 
67
66
 
68
67
  React.useEffect(function () {
69
- var _document$getElementB;
70
-
71
- if (((_document$getElementB = document.getElementById(inputId)) === null || _document$getElementB === void 0 ? void 0 : _document$getElementB.getAttribute('required')) === '') {
72
- setRequired(true);
73
- } else {
74
- setRequired(false);
75
- }
76
- }, [(_document$getElementB2 = document.getElementById(inputId)) === null || _document$getElementB2 === void 0 ? void 0 : _document$getElementB2.getAttribute('required')]);
68
+ if (requiredProp === undefined) {
69
+ var _document$getElementB;
70
+
71
+ if (((_document$getElementB = document.getElementById(inputId)) === null || _document$getElementB === void 0 ? void 0 : _document$getElementB.getAttribute('required')) === '') {
72
+ setRequired(true);
73
+ } else {
74
+ setRequired(false);
75
+ }
76
+ } else setRequired(Boolean(requiredProp));
77
+ }, []);
77
78
  /**
78
79
  * Triggers a click element on a specific element.
79
80
  * @param id - ID of the element which needs to be clicked.
80
81
  */
81
82
 
82
83
  var onTriggerClick = function onTriggerClick(id) {
83
- var _document$getElementB3;
84
+ var _document$getElementB2;
84
85
 
85
- (_document$getElementB3 = document.getElementById(id)) === null || _document$getElementB3 === void 0 ? void 0 : _document$getElementB3.click();
86
+ (_document$getElementB2 = document.getElementById(id)) === null || _document$getElementB2 === void 0 ? void 0 : _document$getElementB2.click();
86
87
  };
87
88
 
88
89
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(LabelRow, {
@@ -107,7 +108,8 @@ var InputLabel = function InputLabel(_ref) {
107
108
  InputLabel.propTypes = {
108
109
  inputId: _propTypes.default.string.isRequired,
109
110
  text: _propTypes.default.string.isRequired,
110
- margin: _propTypes.default.string
111
+ margin: _propTypes.default.string,
112
+ required: _propTypes.default.bool
111
113
  };
112
114
  var _default = InputLabel;
113
115
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"file":"Label.cjs","names":["Label","styled","label","ComponentXXSStyling","COLORS","neutral_500","BREAKPOINTS","MEDIUM","ComponentXSStyling","LabelRow","div","props","margin","LabelRowInner","size","Size","Small","InputLabel","inputId","text","React","useState","required","setRequired","useEffect","document","getElementById","getAttribute","onTriggerClick","id","click","critical_500"],"sources":["../../src/InputFields/Label.tsx"],"sourcesContent":["/**\n * Import React libraries.\n */\nimport * as React from 'react';\n\n/**\n * Import custom styles.\n */\nimport { BREAKPOINTS, COLORS } from '../styles';\nimport { Size } from '../types';\n\n/**\n * Import third-party libraries.\n */\nimport styled from 'styled-components';\nimport { ComponentXSStyling, ComponentXXSStyling } from '../styles/typography';\nimport { SystemIcons } from '../icons';\n\n// Add component-specific styles.\nconst Label = styled.label`\n ${ComponentXXSStyling(1, COLORS.neutral_500)}\n\n ${BREAKPOINTS.MEDIUM} {\n ${ComponentXSStyling(1, COLORS.neutral_500)}\n }\n\n &.small {\n ${ComponentXXSStyling(1, COLORS.neutral_500)}\n }\n &.medium {\n ${ComponentXSStyling(1, COLORS.neutral_500)}\n }\n\n pointer-events: none;\n`;\n\nconst LabelRow = styled.div<{ margin?: string }>`\n display: flex;\n align-items: flex-start;\n height: 16px;\n ${(props) => (props.margin ? `margin: ${props.margin};` : '')}\n`;\n\nconst LabelRowInner = styled.div<{ size: Size.Small | Size.Medium | undefined }>`\n display: flex;\n flex-direction: row;\n height: 100%;\n gap: ${(props) => (props.size === Size.Small ? '2px' : '4px')};\n align-items: center;\n`;\n\n// Add component-specific types\ntype LabelProps = {\n inputId: string;\n text: string;\n size?: Size.Small | Size.Medium;\n margin?: string;\n};\n\nconst InputLabel: React.FunctionComponent<LabelProps> = ({ inputId, text, size, margin }: LabelProps) => {\n // Globally used variables within the component\n const [required, setRequired] = React.useState<boolean>(false);\n\n /**\n * Checks if field is set as required and we have to mark it accordingly.\n */\n React.useEffect(() => {\n if (document.getElementById(inputId)?.getAttribute('required') === '') {\n setRequired(true);\n } else {\n setRequired(false);\n }\n }, [document.getElementById(inputId)?.getAttribute('required')]);\n /**\n * Triggers a click element on a specific element.\n * @param id - ID of the element which needs to be clicked.\n */\n const onTriggerClick = (id: string): void => {\n document.getElementById(id)?.click();\n };\n\n return (\n <LabelRow margin={margin}>\n <LabelRowInner size={size}>\n {required && <SystemIcons.Asterisk size=\"16px\" color={COLORS.critical_500} />}\n <Label htmlFor={inputId} onClick={() => onTriggerClick(inputId)} className={size || ''}>\n {text}\n </Label>\n </LabelRowInner>\n </LabelRow>\n );\n};\n\nexport default InputLabel;\n"],"mappings":";;;;;;;;;;;;;;;;;AAGA;;AAKA;;AACA;;AAKA;;AACA;;AACA;;;;;;;;;;AAEA;AACA,IAAMA,KAAK,GAAGC,yBAAA,CAAOC,KAAV,+MACP,IAAAC,+BAAA,EAAoB,CAApB,EAAuBC,cAAA,CAAOC,WAA9B,CADO,EAGPC,mBAAA,CAAYC,MAHL,EAIL,IAAAC,8BAAA,EAAmB,CAAnB,EAAsBJ,cAAA,CAAOC,WAA7B,CAJK,EAQL,IAAAF,+BAAA,EAAoB,CAApB,EAAuBC,cAAA,CAAOC,WAA9B,CARK,EAWL,IAAAG,8BAAA,EAAmB,CAAnB,EAAsBJ,cAAA,CAAOC,WAA7B,CAXK,CAAX;;AAiBA,IAAMI,QAAQ,GAAGR,yBAAA,CAAOS,GAAV,+JAIV,UAACC,KAAD;EAAA,OAAYA,KAAK,CAACC,MAAN,qBAA0BD,KAAK,CAACC,MAAhC,SAA4C,EAAxD;AAAA,CAJU,CAAd;;AAOA,IAAMC,aAAa,GAAGZ,yBAAA,CAAOS,GAAV,yLAIV,UAACC,KAAD;EAAA,OAAYA,KAAK,CAACG,IAAN,KAAeC,WAAA,CAAKC,KAApB,GAA4B,KAA5B,GAAoC,KAAhD;AAAA,CAJU,CAAnB,C,CAQA;;;AAQA,IAAMC,UAA+C,GAAG,SAAlDA,UAAkD,OAAiD;EAAA;;EAAA,IAA9CC,OAA8C,QAA9CA,OAA8C;EAAA,IAArCC,IAAqC,QAArCA,IAAqC;EAAA,IAA/BL,IAA+B,QAA/BA,IAA+B;EAAA,IAAzBF,MAAyB,QAAzBA,MAAyB;;EACvG;EACA,sBAAgCQ,KAAK,CAACC,QAAN,CAAwB,KAAxB,CAAhC;EAAA;EAAA,IAAOC,QAAP;EAAA,IAAiBC,WAAjB;EAEA;AACF;AACA;;;EACEH,KAAK,CAACI,SAAN,CAAgB,YAAM;IAAA;;IACpB,IAAI,0BAAAC,QAAQ,CAACC,cAAT,CAAwBR,OAAxB,iFAAkCS,YAAlC,CAA+C,UAA/C,OAA+D,EAAnE,EAAuE;MACrEJ,WAAW,CAAC,IAAD,CAAX;IACD,CAFD,MAEO;MACLA,WAAW,CAAC,KAAD,CAAX;IACD;EACF,CAND,EAMG,2BAACE,QAAQ,CAACC,cAAT,CAAwBR,OAAxB,CAAD,2DAAC,uBAAkCS,YAAlC,CAA+C,UAA/C,CAAD,CANH;EAOA;AACF;AACA;AACA;;EACE,IAAMC,cAAc,GAAG,SAAjBA,cAAiB,CAACC,EAAD,EAAsB;IAAA;;IAC3C,0BAAAJ,QAAQ,CAACC,cAAT,CAAwBG,EAAxB,mFAA6BC,KAA7B;EACD,CAFD;;EAIA,oBACE,qBAAC,QAAD;IAAU,MAAM,EAAElB,MAAlB;IAAA,uBACE,sBAAC,aAAD;MAAe,IAAI,EAAEE,IAArB;MAAA,WACGQ,QAAQ,iBAAI,qBAAC,kBAAD,CAAa,QAAb;QAAsB,IAAI,EAAC,MAA3B;QAAkC,KAAK,EAAElB,cAAA,CAAO2B;MAAhD,EADf,eAEE,qBAAC,KAAD;QAAO,OAAO,EAAEb,OAAhB;QAAyB,OAAO,EAAE;UAAA,OAAMU,cAAc,CAACV,OAAD,CAApB;QAAA,CAAlC;QAAiE,SAAS,EAAEJ,IAAI,IAAI,EAApF;QAAA,UACGK;MADH,EAFF;IAAA;EADF,EADF;AAUD,CAhCD;;;EANED,O;EACAC,I;EAEAP,M;;eAqCaK,U"}
1
+ {"version":3,"file":"Label.cjs","names":["Label","styled","label","ComponentXXSStyling","COLORS","neutral_500","BREAKPOINTS","MEDIUM","ComponentXSStyling","LabelRow","div","props","margin","LabelRowInner","size","Size","Small","InputLabel","inputId","text","requiredProp","required","React","useState","setRequired","useEffect","undefined","document","getElementById","getAttribute","Boolean","onTriggerClick","id","click","critical_500"],"sources":["../../src/InputFields/Label.tsx"],"sourcesContent":["/**\n * Import React libraries.\n */\nimport * as React from 'react';\n\n/**\n * Import custom styles.\n */\nimport { BREAKPOINTS, COLORS } from '../styles';\nimport { Size } from '../types';\n\n/**\n * Import third-party libraries.\n */\nimport styled from 'styled-components';\nimport { ComponentXSStyling, ComponentXXSStyling } from '../styles/typography';\nimport { SystemIcons } from '../icons';\n\n// Add component-specific styles.\nconst Label = styled.label`\n ${ComponentXXSStyling(1, COLORS.neutral_500)}\n\n ${BREAKPOINTS.MEDIUM} {\n ${ComponentXSStyling(1, COLORS.neutral_500)}\n }\n\n &.small {\n ${ComponentXXSStyling(1, COLORS.neutral_500)}\n }\n &.medium {\n ${ComponentXSStyling(1, COLORS.neutral_500)}\n }\n\n pointer-events: none;\n`;\n\nconst LabelRow = styled.div<{ margin?: string }>`\n display: flex;\n align-items: flex-start;\n height: 16px;\n ${(props) => (props.margin ? `margin: ${props.margin};` : '')}\n`;\n\nconst LabelRowInner = styled.div<{ size: Size.Small | Size.Medium | undefined }>`\n display: flex;\n flex-direction: row;\n height: 100%;\n gap: ${(props) => (props.size === Size.Small ? '2px' : '4px')};\n align-items: center;\n`;\n\n// Add component-specific types\ntype LabelProps = {\n inputId: string;\n text: string;\n size?: Size.Small | Size.Medium;\n margin?: string;\n required?: boolean;\n};\n\nconst InputLabel: React.FunctionComponent<LabelProps> = ({ inputId, text, size, margin, required: requiredProp }: LabelProps) => {\n // Globally used variables within the component\n const [required, setRequired] = React.useState<boolean>(false);\n\n /**\n * Checks if field is set as required and we have to mark it accordingly.\n */\n React.useEffect(() => {\n if(requiredProp === undefined)\n {\n if (document.getElementById(inputId)?.getAttribute('required') === '') {\n setRequired(true);\n } else {\n setRequired(false);\n }\n }\n else\n setRequired(Boolean(requiredProp));\n }, []);\n /**\n * Triggers a click element on a specific element.\n * @param id - ID of the element which needs to be clicked.\n */\n const onTriggerClick = (id: string): void => {\n document.getElementById(id)?.click();\n };\n\n return (\n <LabelRow margin={margin}>\n <LabelRowInner size={size}>\n {required && <SystemIcons.Asterisk size=\"16px\" color={COLORS.critical_500} />}\n <Label htmlFor={inputId} onClick={() => onTriggerClick(inputId)} className={size || ''}>\n {text}\n </Label>\n </LabelRowInner>\n </LabelRow>\n );\n};\n\nexport default InputLabel;\n"],"mappings":";;;;;;;;;;;;;;;;;AAGA;;AAKA;;AACA;;AAKA;;AACA;;AACA;;;;;;;;;;AAEA;AACA,IAAMA,KAAK,GAAGC,yBAAA,CAAOC,KAAV,+MACP,IAAAC,+BAAA,EAAoB,CAApB,EAAuBC,cAAA,CAAOC,WAA9B,CADO,EAGPC,mBAAA,CAAYC,MAHL,EAIL,IAAAC,8BAAA,EAAmB,CAAnB,EAAsBJ,cAAA,CAAOC,WAA7B,CAJK,EAQL,IAAAF,+BAAA,EAAoB,CAApB,EAAuBC,cAAA,CAAOC,WAA9B,CARK,EAWL,IAAAG,8BAAA,EAAmB,CAAnB,EAAsBJ,cAAA,CAAOC,WAA7B,CAXK,CAAX;;AAiBA,IAAMI,QAAQ,GAAGR,yBAAA,CAAOS,GAAV,+JAIV,UAACC,KAAD;EAAA,OAAYA,KAAK,CAACC,MAAN,qBAA0BD,KAAK,CAACC,MAAhC,SAA4C,EAAxD;AAAA,CAJU,CAAd;;AAOA,IAAMC,aAAa,GAAGZ,yBAAA,CAAOS,GAAV,yLAIV,UAACC,KAAD;EAAA,OAAYA,KAAK,CAACG,IAAN,KAAeC,WAAA,CAAKC,KAApB,GAA4B,KAA5B,GAAoC,KAAhD;AAAA,CAJU,CAAnB,C,CAQA;;;AASA,IAAMC,UAA+C,GAAG,SAAlDA,UAAkD,OAAyE;EAAA,IAAtEC,OAAsE,QAAtEA,OAAsE;EAAA,IAA7DC,IAA6D,QAA7DA,IAA6D;EAAA,IAAvDL,IAAuD,QAAvDA,IAAuD;EAAA,IAAjDF,MAAiD,QAAjDA,MAAiD;EAAA,IAA/BQ,YAA+B,QAAzCC,QAAyC;;EAC/H;EACA,sBAAgCC,KAAK,CAACC,QAAN,CAAwB,KAAxB,CAAhC;EAAA;EAAA,IAAOF,QAAP;EAAA,IAAiBG,WAAjB;EAEA;AACF;AACA;;;EACEF,KAAK,CAACG,SAAN,CAAgB,YAAM;IACpB,IAAGL,YAAY,KAAKM,SAApB,EACA;MAAA;;MACE,IAAI,0BAAAC,QAAQ,CAACC,cAAT,CAAwBV,OAAxB,iFAAkCW,YAAlC,CAA+C,UAA/C,OAA+D,EAAnE,EAAuE;QACrEL,WAAW,CAAC,IAAD,CAAX;MACD,CAFD,MAEO;QACLA,WAAW,CAAC,KAAD,CAAX;MACD;IACF,CAPD,MASEA,WAAW,CAACM,OAAO,CAACV,YAAD,CAAR,CAAX;EACH,CAXD,EAWG,EAXH;EAYA;AACF;AACA;AACA;;EACE,IAAMW,cAAc,GAAG,SAAjBA,cAAiB,CAACC,EAAD,EAAsB;IAAA;;IAC3C,0BAAAL,QAAQ,CAACC,cAAT,CAAwBI,EAAxB,mFAA6BC,KAA7B;EACD,CAFD;;EAIA,oBACE,qBAAC,QAAD;IAAU,MAAM,EAAErB,MAAlB;IAAA,uBACE,sBAAC,aAAD;MAAe,IAAI,EAAEE,IAArB;MAAA,WACGO,QAAQ,iBAAI,qBAAC,kBAAD,CAAa,QAAb;QAAsB,IAAI,EAAC,MAA3B;QAAkC,KAAK,EAAEjB,cAAA,CAAO8B;MAAhD,EADf,eAEE,qBAAC,KAAD;QAAO,OAAO,EAAEhB,OAAhB;QAAyB,OAAO,EAAE;UAAA,OAAMa,cAAc,CAACb,OAAD,CAApB;QAAA,CAAlC;QAAiE,SAAS,EAAEJ,IAAI,IAAI,EAApF;QAAA,UACGK;MADH,EAFF;IAAA;EADF,EADF;AAUD,CArCD;;;EAPED,O;EACAC,I;EAEAP,M;EACAS,Q;;eA0CaJ,U"}
@@ -8,6 +8,7 @@ declare type LabelProps = {
8
8
  text: string;
9
9
  size?: Size.Small | Size.Medium;
10
10
  margin?: string;
11
+ required?: boolean;
11
12
  };
12
13
  declare const InputLabel: React.FunctionComponent<LabelProps>;
13
14
  export default InputLabel;
@@ -33,12 +33,11 @@ var LabelRowInner = styled.div(_templateObject3 || (_templateObject3 = _taggedTe
33
33
  }); // Add component-specific types
34
34
 
35
35
  var InputLabel = function InputLabel(_ref) {
36
- var _document$getElementB2;
37
-
38
36
  var inputId = _ref.inputId,
39
37
  text = _ref.text,
40
38
  size = _ref.size,
41
- margin = _ref.margin;
39
+ margin = _ref.margin,
40
+ requiredProp = _ref.required;
42
41
 
43
42
  // Globally used variables within the component
44
43
  var _React$useState = React.useState(false),
@@ -51,23 +50,25 @@ var InputLabel = function InputLabel(_ref) {
51
50
 
52
51
 
53
52
  React.useEffect(function () {
54
- var _document$getElementB;
53
+ if (requiredProp === undefined) {
54
+ var _document$getElementB;
55
55
 
56
- if (((_document$getElementB = document.getElementById(inputId)) === null || _document$getElementB === void 0 ? void 0 : _document$getElementB.getAttribute('required')) === '') {
57
- setRequired(true);
58
- } else {
59
- setRequired(false);
60
- }
61
- }, [(_document$getElementB2 = document.getElementById(inputId)) === null || _document$getElementB2 === void 0 ? void 0 : _document$getElementB2.getAttribute('required')]);
56
+ if (((_document$getElementB = document.getElementById(inputId)) === null || _document$getElementB === void 0 ? void 0 : _document$getElementB.getAttribute('required')) === '') {
57
+ setRequired(true);
58
+ } else {
59
+ setRequired(false);
60
+ }
61
+ } else setRequired(Boolean(requiredProp));
62
+ }, []);
62
63
  /**
63
64
  * Triggers a click element on a specific element.
64
65
  * @param id - ID of the element which needs to be clicked.
65
66
  */
66
67
 
67
68
  var onTriggerClick = function onTriggerClick(id) {
68
- var _document$getElementB3;
69
+ var _document$getElementB2;
69
70
 
70
- (_document$getElementB3 = document.getElementById(id)) === null || _document$getElementB3 === void 0 ? void 0 : _document$getElementB3.click();
71
+ (_document$getElementB2 = document.getElementById(id)) === null || _document$getElementB2 === void 0 ? void 0 : _document$getElementB2.click();
71
72
  };
72
73
 
73
74
  return /*#__PURE__*/_jsx(LabelRow, {
@@ -92,7 +93,8 @@ var InputLabel = function InputLabel(_ref) {
92
93
  InputLabel.propTypes = {
93
94
  inputId: _pt.string.isRequired,
94
95
  text: _pt.string.isRequired,
95
- margin: _pt.string
96
+ margin: _pt.string,
97
+ required: _pt.bool
96
98
  };
97
99
  export default InputLabel;
98
100
  //# sourceMappingURL=Label.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Label.js","names":["React","BREAKPOINTS","COLORS","Size","styled","ComponentXSStyling","ComponentXXSStyling","SystemIcons","Label","label","neutral_500","MEDIUM","LabelRow","div","props","margin","LabelRowInner","size","Small","InputLabel","inputId","text","useState","required","setRequired","useEffect","document","getElementById","getAttribute","onTriggerClick","id","click","critical_500"],"sources":["../../src/InputFields/Label.tsx"],"sourcesContent":["/**\n * Import React libraries.\n */\nimport * as React from 'react';\n\n/**\n * Import custom styles.\n */\nimport { BREAKPOINTS, COLORS } from '../styles';\nimport { Size } from '../types';\n\n/**\n * Import third-party libraries.\n */\nimport styled from 'styled-components';\nimport { ComponentXSStyling, ComponentXXSStyling } from '../styles/typography';\nimport { SystemIcons } from '../icons';\n\n// Add component-specific styles.\nconst Label = styled.label`\n ${ComponentXXSStyling(1, COLORS.neutral_500)}\n\n ${BREAKPOINTS.MEDIUM} {\n ${ComponentXSStyling(1, COLORS.neutral_500)}\n }\n\n &.small {\n ${ComponentXXSStyling(1, COLORS.neutral_500)}\n }\n &.medium {\n ${ComponentXSStyling(1, COLORS.neutral_500)}\n }\n\n pointer-events: none;\n`;\n\nconst LabelRow = styled.div<{ margin?: string }>`\n display: flex;\n align-items: flex-start;\n height: 16px;\n ${(props) => (props.margin ? `margin: ${props.margin};` : '')}\n`;\n\nconst LabelRowInner = styled.div<{ size: Size.Small | Size.Medium | undefined }>`\n display: flex;\n flex-direction: row;\n height: 100%;\n gap: ${(props) => (props.size === Size.Small ? '2px' : '4px')};\n align-items: center;\n`;\n\n// Add component-specific types\ntype LabelProps = {\n inputId: string;\n text: string;\n size?: Size.Small | Size.Medium;\n margin?: string;\n};\n\nconst InputLabel: React.FunctionComponent<LabelProps> = ({ inputId, text, size, margin }: LabelProps) => {\n // Globally used variables within the component\n const [required, setRequired] = React.useState<boolean>(false);\n\n /**\n * Checks if field is set as required and we have to mark it accordingly.\n */\n React.useEffect(() => {\n if (document.getElementById(inputId)?.getAttribute('required') === '') {\n setRequired(true);\n } else {\n setRequired(false);\n }\n }, [document.getElementById(inputId)?.getAttribute('required')]);\n /**\n * Triggers a click element on a specific element.\n * @param id - ID of the element which needs to be clicked.\n */\n const onTriggerClick = (id: string): void => {\n document.getElementById(id)?.click();\n };\n\n return (\n <LabelRow margin={margin}>\n <LabelRowInner size={size}>\n {required && <SystemIcons.Asterisk size=\"16px\" color={COLORS.critical_500} />}\n <Label htmlFor={inputId} onClick={() => onTriggerClick(inputId)} className={size || ''}>\n {text}\n </Label>\n </LabelRowInner>\n </LabelRow>\n );\n};\n\nexport default InputLabel;\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AAEA;AACA;AACA;;AACA,SAASC,WAAT,EAAsBC,MAAtB,QAAoC,WAApC;AACA,SAASC,IAAT,QAAqB,UAArB;AAEA;AACA;AACA;;AACA,OAAOC,MAAP,MAAmB,mBAAnB;AACA,SAASC,kBAAT,EAA6BC,mBAA7B,QAAwD,sBAAxD;AACA,SAASC,WAAT,QAA4B,UAA5B,C,CAEA;;;;AACA,IAAMC,KAAK,GAAGJ,MAAM,CAACK,KAAV,iMACPH,mBAAmB,CAAC,CAAD,EAAIJ,MAAM,CAACQ,WAAX,CADZ,EAGPT,WAAW,CAACU,MAHL,EAILN,kBAAkB,CAAC,CAAD,EAAIH,MAAM,CAACQ,WAAX,CAJb,EAQLJ,mBAAmB,CAAC,CAAD,EAAIJ,MAAM,CAACQ,WAAX,CARd,EAWLL,kBAAkB,CAAC,CAAD,EAAIH,MAAM,CAACQ,WAAX,CAXb,CAAX;AAiBA,IAAME,QAAQ,GAAGR,MAAM,CAACS,GAAV,iJAIV,UAACC,KAAD;EAAA,OAAYA,KAAK,CAACC,MAAN,qBAA0BD,KAAK,CAACC,MAAhC,SAA4C,EAAxD;AAAA,CAJU,CAAd;AAOA,IAAMC,aAAa,GAAGZ,MAAM,CAACS,GAAV,2KAIV,UAACC,KAAD;EAAA,OAAYA,KAAK,CAACG,IAAN,KAAed,IAAI,CAACe,KAApB,GAA4B,KAA5B,GAAoC,KAAhD;AAAA,CAJU,CAAnB,C,CAQA;;AAQA,IAAMC,UAA+C,GAAG,SAAlDA,UAAkD,OAAiD;EAAA;;EAAA,IAA9CC,OAA8C,QAA9CA,OAA8C;EAAA,IAArCC,IAAqC,QAArCA,IAAqC;EAAA,IAA/BJ,IAA+B,QAA/BA,IAA+B;EAAA,IAAzBF,MAAyB,QAAzBA,MAAyB;;EACvG;EACA,sBAAgCf,KAAK,CAACsB,QAAN,CAAwB,KAAxB,CAAhC;EAAA;EAAA,IAAOC,QAAP;EAAA,IAAiBC,WAAjB;EAEA;AACF;AACA;;;EACExB,KAAK,CAACyB,SAAN,CAAgB,YAAM;IAAA;;IACpB,IAAI,0BAAAC,QAAQ,CAACC,cAAT,CAAwBP,OAAxB,iFAAkCQ,YAAlC,CAA+C,UAA/C,OAA+D,EAAnE,EAAuE;MACrEJ,WAAW,CAAC,IAAD,CAAX;IACD,CAFD,MAEO;MACLA,WAAW,CAAC,KAAD,CAAX;IACD;EACF,CAND,EAMG,2BAACE,QAAQ,CAACC,cAAT,CAAwBP,OAAxB,CAAD,2DAAC,uBAAkCQ,YAAlC,CAA+C,UAA/C,CAAD,CANH;EAOA;AACF;AACA;AACA;;EACE,IAAMC,cAAc,GAAG,SAAjBA,cAAiB,CAACC,EAAD,EAAsB;IAAA;;IAC3C,0BAAAJ,QAAQ,CAACC,cAAT,CAAwBG,EAAxB,mFAA6BC,KAA7B;EACD,CAFD;;EAIA,oBACE,KAAC,QAAD;IAAU,MAAM,EAAEhB,MAAlB;IAAA,uBACE,MAAC,aAAD;MAAe,IAAI,EAAEE,IAArB;MAAA,WACGM,QAAQ,iBAAI,KAAC,WAAD,CAAa,QAAb;QAAsB,IAAI,EAAC,MAA3B;QAAkC,KAAK,EAAErB,MAAM,CAAC8B;MAAhD,EADf,eAEE,KAAC,KAAD;QAAO,OAAO,EAAEZ,OAAhB;QAAyB,OAAO,EAAE;UAAA,OAAMS,cAAc,CAACT,OAAD,CAApB;QAAA,CAAlC;QAAiE,SAAS,EAAEH,IAAI,IAAI,EAApF;QAAA,UACGI;MADH,EAFF;IAAA;EADF,EADF;AAUD,CAhCD;;;EANED,O;EACAC,I;EAEAN,M;;AAqCF,eAAeI,UAAf"}
1
+ {"version":3,"file":"Label.js","names":["React","BREAKPOINTS","COLORS","Size","styled","ComponentXSStyling","ComponentXXSStyling","SystemIcons","Label","label","neutral_500","MEDIUM","LabelRow","div","props","margin","LabelRowInner","size","Small","InputLabel","inputId","text","requiredProp","required","useState","setRequired","useEffect","undefined","document","getElementById","getAttribute","Boolean","onTriggerClick","id","click","critical_500"],"sources":["../../src/InputFields/Label.tsx"],"sourcesContent":["/**\n * Import React libraries.\n */\nimport * as React from 'react';\n\n/**\n * Import custom styles.\n */\nimport { BREAKPOINTS, COLORS } from '../styles';\nimport { Size } from '../types';\n\n/**\n * Import third-party libraries.\n */\nimport styled from 'styled-components';\nimport { ComponentXSStyling, ComponentXXSStyling } from '../styles/typography';\nimport { SystemIcons } from '../icons';\n\n// Add component-specific styles.\nconst Label = styled.label`\n ${ComponentXXSStyling(1, COLORS.neutral_500)}\n\n ${BREAKPOINTS.MEDIUM} {\n ${ComponentXSStyling(1, COLORS.neutral_500)}\n }\n\n &.small {\n ${ComponentXXSStyling(1, COLORS.neutral_500)}\n }\n &.medium {\n ${ComponentXSStyling(1, COLORS.neutral_500)}\n }\n\n pointer-events: none;\n`;\n\nconst LabelRow = styled.div<{ margin?: string }>`\n display: flex;\n align-items: flex-start;\n height: 16px;\n ${(props) => (props.margin ? `margin: ${props.margin};` : '')}\n`;\n\nconst LabelRowInner = styled.div<{ size: Size.Small | Size.Medium | undefined }>`\n display: flex;\n flex-direction: row;\n height: 100%;\n gap: ${(props) => (props.size === Size.Small ? '2px' : '4px')};\n align-items: center;\n`;\n\n// Add component-specific types\ntype LabelProps = {\n inputId: string;\n text: string;\n size?: Size.Small | Size.Medium;\n margin?: string;\n required?: boolean;\n};\n\nconst InputLabel: React.FunctionComponent<LabelProps> = ({ inputId, text, size, margin, required: requiredProp }: LabelProps) => {\n // Globally used variables within the component\n const [required, setRequired] = React.useState<boolean>(false);\n\n /**\n * Checks if field is set as required and we have to mark it accordingly.\n */\n React.useEffect(() => {\n if(requiredProp === undefined)\n {\n if (document.getElementById(inputId)?.getAttribute('required') === '') {\n setRequired(true);\n } else {\n setRequired(false);\n }\n }\n else\n setRequired(Boolean(requiredProp));\n }, []);\n /**\n * Triggers a click element on a specific element.\n * @param id - ID of the element which needs to be clicked.\n */\n const onTriggerClick = (id: string): void => {\n document.getElementById(id)?.click();\n };\n\n return (\n <LabelRow margin={margin}>\n <LabelRowInner size={size}>\n {required && <SystemIcons.Asterisk size=\"16px\" color={COLORS.critical_500} />}\n <Label htmlFor={inputId} onClick={() => onTriggerClick(inputId)} className={size || ''}>\n {text}\n </Label>\n </LabelRowInner>\n </LabelRow>\n );\n};\n\nexport default InputLabel;\n"],"mappings":"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"}
@@ -85,7 +85,7 @@ var NoteIcon = _styledComponents.default.div(_templateObject6 || (_templateObjec
85
85
 
86
86
  var NoteContainer = _styledComponents.default.div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n margin-top: 5px;\n\n &.valid {\n ", " {\n color: ", ";\n }\n\n ", " {\n svg path {\n fill: ", ";\n }\n }\n }\n\n &.invalid {\n ", " {\n color: ", ";\n }\n\n ", " {\n svg path {\n fill: ", ";\n }\n }\n }\n"])), NoteLabel, _styles.COLORS.correct_500, NoteIcon, _styles.COLORS.correct_500, NoteLabel, _styles.COLORS.critical_500, NoteIcon, _styles.COLORS.critical_500);
87
87
 
88
- var InputContainer = _styledComponents.default.div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["\n min-width: ", ";\n height: ", ";\n display: flex;\n position: relative;\n\n input.focus-visible ~ div.operator {\n z-index: ", ";\n }\n"])), function (props) {
88
+ var InputContainer = _styledComponents.default.div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["\n min-width: ", ";\n height: ", ";\n display: flex;\n position: relative;\n margin: 4px 0px;\n\n input.focus-visible ~ div.operator {\n z-index: ", ";\n }\n"])), function (props) {
89
89
  return props.type === 'NumberField' ? '160px' : '144px';
90
90
  }, function (props) {
91
91
  return props.size === _types.Size.Small ? '48px' : '56px';