@dnb/eufemia 10.75.4 → 10.76.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 (813) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/cjs/components/DateFormat.d.ts +12 -0
  3. package/cjs/components/DateFormat.js +24 -0
  4. package/cjs/components/DateFormat.js.map +1 -0
  5. package/cjs/components/PortalRoot.d.ts +12 -0
  6. package/cjs/components/PortalRoot.js +24 -0
  7. package/cjs/components/PortalRoot.js.map +1 -0
  8. package/cjs/components/breadcrumb/Breadcrumb.d.ts +4 -0
  9. package/cjs/components/breadcrumb/Breadcrumb.js +9 -4
  10. package/cjs/components/breadcrumb/Breadcrumb.js.map +1 -1
  11. package/cjs/components/breadcrumb/BreadcrumbDocs.js +5 -0
  12. package/cjs/components/breadcrumb/BreadcrumbDocs.js.map +1 -1
  13. package/cjs/components/card/Card.d.ts +4 -0
  14. package/cjs/components/card/Card.js +13 -4
  15. package/cjs/components/card/Card.js.map +1 -1
  16. package/cjs/components/card/CardDocs.js +1 -1
  17. package/cjs/components/card/CardDocs.js.map +1 -1
  18. package/cjs/components/checkbox/Checkbox.js.map +1 -1
  19. package/cjs/components/date-format/DateFormat.d.ts +30 -0
  20. package/cjs/components/date-format/DateFormat.js +86 -0
  21. package/cjs/components/date-format/DateFormat.js.map +1 -0
  22. package/cjs/components/date-format/DateFormatDocs.d.ts +2 -0
  23. package/cjs/components/date-format/DateFormatDocs.js +34 -0
  24. package/cjs/components/date-format/DateFormatDocs.js.map +1 -0
  25. package/cjs/components/date-format/DateFormatUtils.d.ts +11 -0
  26. package/cjs/components/date-format/DateFormatUtils.js +36 -0
  27. package/cjs/components/date-format/DateFormatUtils.js.map +1 -0
  28. package/cjs/components/date-format/index.d.ts +7 -0
  29. package/cjs/components/date-format/index.js +24 -0
  30. package/cjs/components/date-format/index.js.map +1 -0
  31. package/cjs/components/date-picker/DatePicker.js +5 -8
  32. package/cjs/components/date-picker/DatePicker.js.map +1 -1
  33. package/cjs/components/date-picker/DatePickerCalc.d.ts +0 -13
  34. package/cjs/components/date-picker/DatePickerCalc.js +0 -44
  35. package/cjs/components/date-picker/DatePickerCalc.js.map +1 -1
  36. package/cjs/components/date-picker/DatePickerCalendar.js +11 -10
  37. package/cjs/components/date-picker/DatePickerCalendar.js.map +1 -1
  38. package/cjs/components/date-picker/DatePickerCalendarNavigator.js +7 -7
  39. package/cjs/components/date-picker/DatePickerCalendarNavigator.js.map +1 -1
  40. package/cjs/components/date-picker/DatePickerInput.js +2 -1
  41. package/cjs/components/date-picker/DatePickerInput.js.map +1 -1
  42. package/cjs/components/date-picker/DatePickerPortal.d.ts +1 -1
  43. package/cjs/components/date-picker/DatePickerPortal.js +4 -4
  44. package/cjs/components/date-picker/DatePickerPortal.js.map +1 -1
  45. package/cjs/components/form-status/FormStatus.js +1 -1
  46. package/cjs/components/form-status/FormStatus.js.map +1 -1
  47. package/cjs/components/form-status/style/dnb-form-status.css +1 -1
  48. package/cjs/components/form-status/style/dnb-form-status.min.css +1 -1
  49. package/cjs/components/form-status/style/dnb-form-status.scss +1 -1
  50. package/cjs/components/form-status/style/themes/dnb-form-status-theme-sbanken.css +11 -2
  51. package/cjs/components/form-status/style/themes/dnb-form-status-theme-sbanken.min.css +1 -1
  52. package/cjs/components/form-status/style/themes/dnb-form-status-theme-sbanken.scss +6 -2
  53. package/cjs/components/global-status/style/themes/dnb-global-status-theme-sbanken.css +1 -1
  54. package/cjs/components/global-status/style/themes/dnb-global-status-theme-sbanken.min.css +1 -1
  55. package/cjs/components/global-status/style/themes/dnb-global-status-theme-sbanken.scss +1 -1
  56. package/cjs/components/help-button/style/dnb-help-button-inline.css +1 -1
  57. package/cjs/components/help-button/style/dnb-help-button-inline.min.css +1 -1
  58. package/cjs/components/help-button/style/dnb-help-button-inline.scss +1 -1
  59. package/cjs/components/help-button/style/dnb-help-button.css +1 -1
  60. package/cjs/components/help-button/style/dnb-help-button.min.css +1 -1
  61. package/cjs/components/index.d.ts +3 -1
  62. package/cjs/components/index.js +14 -0
  63. package/cjs/components/index.js.map +1 -1
  64. package/cjs/components/info-card/style/dnb-info-card.css +1 -1
  65. package/cjs/components/info-card/style/dnb-info-card.min.css +1 -1
  66. package/cjs/components/info-card/style/dnb-info-card.scss +1 -1
  67. package/cjs/components/lib.d.ts +5 -1
  68. package/cjs/components/lib.js +16 -0
  69. package/cjs/components/lib.js.map +1 -1
  70. package/cjs/components/modal/ModalRoot.d.ts +2 -7
  71. package/cjs/components/modal/ModalRoot.js +9 -65
  72. package/cjs/components/modal/ModalRoot.js.map +1 -1
  73. package/cjs/components/portal-root/PortalRoot.d.ts +7 -0
  74. package/cjs/components/portal-root/PortalRoot.js +65 -0
  75. package/cjs/components/portal-root/PortalRoot.js.map +1 -0
  76. package/cjs/components/portal-root/PortalRootDocs.d.ts +2 -0
  77. package/cjs/components/portal-root/PortalRootDocs.js +19 -0
  78. package/cjs/components/portal-root/PortalRootDocs.js.map +1 -0
  79. package/cjs/components/portal-root/index.d.ts +7 -0
  80. package/cjs/components/portal-root/index.js +24 -0
  81. package/cjs/components/portal-root/index.js.map +1 -0
  82. package/cjs/components/section/style/themes/dnb-section-theme-sbanken.css +1 -1
  83. package/cjs/components/section/style/themes/dnb-section-theme-sbanken.min.css +1 -1
  84. package/cjs/components/section/style/themes/dnb-section-theme-sbanken.scss +1 -1
  85. package/cjs/components/step-indicator/StepIndicator.js +6 -2
  86. package/cjs/components/step-indicator/StepIndicator.js.map +1 -1
  87. package/cjs/components/step-indicator/StepIndicatorDocs.js +1 -1
  88. package/cjs/components/step-indicator/StepIndicatorDocs.js.map +1 -1
  89. package/cjs/components/step-indicator/StepIndicatorTriggerButton.d.ts +2 -1
  90. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js +5 -3
  91. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  92. package/cjs/components/switch/Switch.d.ts +12 -3
  93. package/cjs/components/switch/Switch.js +39 -15
  94. package/cjs/components/switch/Switch.js.map +1 -1
  95. package/cjs/components/switch/SwitchDocs.js +5 -0
  96. package/cjs/components/switch/SwitchDocs.js.map +1 -1
  97. package/cjs/components/tooltip/TooltipPortal.js +28 -59
  98. package/cjs/components/tooltip/TooltipPortal.js.map +1 -1
  99. package/cjs/components/tooltip/style/dnb-tooltip.css +8 -1
  100. package/cjs/components/tooltip/style/dnb-tooltip.min.css +1 -1
  101. package/cjs/components/tooltip/style/dnb-tooltip.scss +8 -1
  102. package/cjs/components/upload/Upload.js +31 -7
  103. package/cjs/components/upload/Upload.js.map +1 -1
  104. package/cjs/components/upload/UploadContext.d.ts +1 -0
  105. package/cjs/components/upload/UploadContext.js +2 -1
  106. package/cjs/components/upload/UploadContext.js.map +1 -1
  107. package/cjs/components/upload/UploadDocs.js +11 -1
  108. package/cjs/components/upload/UploadDocs.js.map +1 -1
  109. package/cjs/components/upload/UploadDropzone.d.ts +3 -1
  110. package/cjs/components/upload/UploadDropzone.js +5 -4
  111. package/cjs/components/upload/UploadDropzone.js.map +1 -1
  112. package/cjs/components/upload/UploadFileInput.d.ts +3 -1
  113. package/cjs/components/upload/UploadFileInput.js +7 -5
  114. package/cjs/components/upload/UploadFileInput.js.map +1 -1
  115. package/cjs/components/upload/style/dnb-upload.css +10 -2
  116. package/cjs/components/upload/style/dnb-upload.min.css +1 -1
  117. package/cjs/components/upload/style/dnb-upload.scss +12 -2
  118. package/cjs/components/upload/types.d.ts +4 -0
  119. package/cjs/components/upload/types.js.map +1 -1
  120. package/cjs/elements/lists/style/lists-mixins.scss +1 -1
  121. package/cjs/extensions/forms/Connectors/Bring/address.d.ts +48 -0
  122. package/cjs/extensions/forms/Connectors/Bring/address.js +185 -0
  123. package/cjs/extensions/forms/Connectors/Bring/address.js.map +1 -0
  124. package/cjs/extensions/forms/Connectors/Bring/index.d.ts +1 -0
  125. package/cjs/extensions/forms/Connectors/Bring/index.js +3 -1
  126. package/cjs/extensions/forms/Connectors/Bring/index.js.map +1 -1
  127. package/cjs/extensions/forms/Connectors/Bring/postalCode.js +10 -1
  128. package/cjs/extensions/forms/Connectors/Bring/postalCode.js.map +1 -1
  129. package/cjs/extensions/forms/Connectors/createContext.js +3 -0
  130. package/cjs/extensions/forms/Connectors/createContext.js.map +1 -1
  131. package/cjs/extensions/forms/Field/Address/Address.d.ts +3 -0
  132. package/cjs/extensions/forms/Field/Address/Address.js.map +1 -1
  133. package/cjs/extensions/forms/Field/Boolean/BooleanDocs.js +1 -1
  134. package/cjs/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
  135. package/cjs/extensions/forms/Field/Date/Date.js +11 -8
  136. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  137. package/cjs/extensions/forms/Field/Indeterminate/Indeterminate.js +3 -3
  138. package/cjs/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
  139. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +15 -6
  140. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  141. package/cjs/extensions/forms/Field/Toggle/Toggle.d.ts +1 -1
  142. package/cjs/extensions/forms/Field/Toggle/Toggle.js +36 -0
  143. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  144. package/cjs/extensions/forms/Field/Upload/Upload.d.ts +1 -1
  145. package/cjs/extensions/forms/Field/Upload/Upload.js +26 -7
  146. package/cjs/extensions/forms/Field/Upload/Upload.js.map +1 -1
  147. package/cjs/extensions/forms/Field/style/field-sizes.scss +1 -1
  148. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +2 -2
  149. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  150. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +1 -1
  151. package/cjs/extensions/forms/Form/Card/Card.d.ts +3 -6
  152. package/cjs/extensions/forms/Form/Card/Card.js +1 -1
  153. package/cjs/extensions/forms/Form/Card/Card.js.map +1 -1
  154. package/cjs/extensions/forms/Form/Card/CardDocs.d.ts +1 -0
  155. package/cjs/extensions/forms/Form/Card/CardDocs.js +14 -11
  156. package/cjs/extensions/forms/Form/Card/CardDocs.js.map +1 -1
  157. package/cjs/extensions/forms/Value/Date/Date.js +22 -7
  158. package/cjs/extensions/forms/Value/Date/Date.js.map +1 -1
  159. package/cjs/extensions/forms/Value/style/value-sizes.scss +2 -2
  160. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.css +2 -2
  161. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  162. package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  163. package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  164. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  165. package/cjs/extensions/forms/constants/locales/en-GB.js +2 -1
  166. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
  167. package/cjs/extensions/forms/constants/locales/en-US.d.ts +1 -0
  168. package/cjs/extensions/forms/constants/locales/index.d.ts +2 -0
  169. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  170. package/cjs/extensions/forms/constants/locales/nb-NO.js +2 -1
  171. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  172. package/cjs/extensions/forms/constants/locales/sv-SE.d.ts +1 -0
  173. package/cjs/extensions/forms/constants/locales/sv-SE.js +2 -1
  174. package/cjs/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  175. package/cjs/extensions/forms/style/dnb-forms.css +4 -4
  176. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  177. package/cjs/extensions/payment-card/style/dnb-payment-card.css +1 -0
  178. package/cjs/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  179. package/cjs/fragments/drawer-list/DrawerList.d.ts +4 -2
  180. package/cjs/fragments/drawer-list/DrawerList.js +6 -5
  181. package/cjs/fragments/drawer-list/DrawerList.js.map +1 -1
  182. package/cjs/fragments/drawer-list/DrawerListHelpers.js +1 -1
  183. package/cjs/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  184. package/cjs/fragments/drawer-list/DrawerListPortal.d.ts +1 -0
  185. package/cjs/fragments/drawer-list/DrawerListPortal.js +31 -65
  186. package/cjs/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  187. package/cjs/fragments/drawer-list/DrawerListProvider.d.ts +1 -1
  188. package/cjs/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  189. package/cjs/fragments/drawer-list/style/dnb-drawer-list.scss +1 -1
  190. package/cjs/index.d.ts +3 -1
  191. package/cjs/index.js +14 -0
  192. package/cjs/index.js.map +1 -1
  193. package/cjs/shared/build-info/BuildInfoData.d.ts +2 -2
  194. package/cjs/shared/build-info/BuildInfoData.js +2 -2
  195. package/cjs/shared/build-info/BuildInfoData.js.map +1 -1
  196. package/cjs/shared/locales/en-GB.d.ts +3 -0
  197. package/cjs/shared/locales/en-GB.js +3 -0
  198. package/cjs/shared/locales/en-GB.js.map +1 -1
  199. package/cjs/shared/locales/en-US.d.ts +3 -0
  200. package/cjs/shared/locales/index.d.ts +6 -0
  201. package/cjs/shared/locales/nb-NO.d.ts +3 -0
  202. package/cjs/shared/locales/nb-NO.js +3 -0
  203. package/cjs/shared/locales/nb-NO.js.map +1 -1
  204. package/cjs/shared/locales/sv-SE.d.ts +3 -0
  205. package/cjs/shared/locales/sv-SE.js +3 -0
  206. package/cjs/shared/locales/sv-SE.js.map +1 -1
  207. package/cjs/style/core/scopes.scss +1 -1
  208. package/cjs/style/dnb-ui-basis.css +1 -1
  209. package/cjs/style/dnb-ui-basis.min.css +1 -1
  210. package/cjs/style/dnb-ui-body.css +1 -1
  211. package/cjs/style/dnb-ui-body.min.css +1 -1
  212. package/cjs/style/dnb-ui-components.css +27 -12
  213. package/cjs/style/dnb-ui-components.min.css +4 -4
  214. package/cjs/style/dnb-ui-core.css +1 -1
  215. package/cjs/style/dnb-ui-core.min.css +1 -1
  216. package/cjs/style/dnb-ui-elements.css +1 -1
  217. package/cjs/style/dnb-ui-elements.min.css +1 -1
  218. package/cjs/style/dnb-ui-extensions.css +5 -4
  219. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  220. package/cjs/style/dnb-ui-forms.css +4 -4
  221. package/cjs/style/dnb-ui-forms.min.css +1 -1
  222. package/cjs/style/dnb-ui-fragments.css +1 -1
  223. package/cjs/style/dnb-ui-fragments.min.css +1 -1
  224. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +2 -1
  225. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  226. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +31 -16
  227. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  228. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
  229. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  230. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +5 -4
  231. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  232. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +4 -4
  233. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  234. package/cjs/style/themes/theme-eiendom/properties.d.ts +2 -0
  235. package/cjs/style/themes/theme-eiendom/properties.js +3 -1
  236. package/cjs/style/themes/theme-eiendom/properties.js.map +1 -1
  237. package/cjs/style/themes/theme-sbanken/properties.d.ts +2 -0
  238. package/cjs/style/themes/theme-sbanken/properties.js +2 -0
  239. package/cjs/style/themes/theme-sbanken/properties.js.map +1 -1
  240. package/cjs/style/themes/theme-sbanken/properties.scss +3 -0
  241. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +3 -1
  242. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +2 -2
  243. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +44 -20
  244. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +6 -6
  245. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
  246. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  247. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +5 -4
  248. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  249. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +4 -4
  250. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  251. package/cjs/style/themes/theme-ui/properties.d.ts +2 -0
  252. package/cjs/style/themes/theme-ui/properties.js +3 -1
  253. package/cjs/style/themes/theme-ui/properties.js.map +1 -1
  254. package/cjs/style/themes/theme-ui/properties.scss +3 -0
  255. package/cjs/style/themes/theme-ui/ui-theme-basis.css +2 -1
  256. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  257. package/cjs/style/themes/theme-ui/ui-theme-components.css +31 -16
  258. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  259. package/cjs/style/themes/theme-ui/ui-theme-elements.css +1 -1
  260. package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  261. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +5 -4
  262. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  263. package/cjs/style/themes/theme-ui/ui-theme-forms.css +4 -4
  264. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  265. package/cjs/style/themes/theme-ui/ui-theme-properties.css +1 -0
  266. package/cjs/style/themes/theme-ui/ui-theme-properties.min.css +1 -1
  267. package/cjs/style/themes/theme-ui/ui-theme-tags.css +1 -1
  268. package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  269. package/components/DateFormat.d.ts +12 -0
  270. package/components/DateFormat.js +4 -0
  271. package/components/DateFormat.js.map +1 -0
  272. package/components/PortalRoot.d.ts +12 -0
  273. package/components/PortalRoot.js +4 -0
  274. package/components/PortalRoot.js.map +1 -0
  275. package/components/breadcrumb/Breadcrumb.d.ts +4 -0
  276. package/components/breadcrumb/Breadcrumb.js +9 -4
  277. package/components/breadcrumb/Breadcrumb.js.map +1 -1
  278. package/components/breadcrumb/BreadcrumbDocs.js +5 -0
  279. package/components/breadcrumb/BreadcrumbDocs.js.map +1 -1
  280. package/components/card/Card.d.ts +4 -0
  281. package/components/card/Card.js +13 -4
  282. package/components/card/Card.js.map +1 -1
  283. package/components/card/CardDocs.js +1 -1
  284. package/components/card/CardDocs.js.map +1 -1
  285. package/components/checkbox/Checkbox.js.map +1 -1
  286. package/components/date-format/DateFormat.d.ts +30 -0
  287. package/components/date-format/DateFormat.js +77 -0
  288. package/components/date-format/DateFormat.js.map +1 -0
  289. package/components/date-format/DateFormatDocs.d.ts +2 -0
  290. package/components/date-format/DateFormatDocs.js +28 -0
  291. package/components/date-format/DateFormatDocs.js.map +1 -0
  292. package/components/date-format/DateFormatUtils.d.ts +11 -0
  293. package/components/date-format/DateFormatUtils.js +29 -0
  294. package/components/date-format/DateFormatUtils.js.map +1 -0
  295. package/components/date-format/index.d.ts +7 -0
  296. package/components/date-format/index.js +4 -0
  297. package/components/date-format/index.js.map +1 -0
  298. package/components/date-picker/DatePicker.js +3 -6
  299. package/components/date-picker/DatePicker.js.map +1 -1
  300. package/components/date-picker/DatePickerCalc.d.ts +0 -13
  301. package/components/date-picker/DatePickerCalc.js +0 -41
  302. package/components/date-picker/DatePickerCalc.js.map +1 -1
  303. package/components/date-picker/DatePickerCalendar.js +7 -6
  304. package/components/date-picker/DatePickerCalendar.js.map +1 -1
  305. package/components/date-picker/DatePickerCalendarNavigator.js +4 -4
  306. package/components/date-picker/DatePickerCalendarNavigator.js.map +1 -1
  307. package/components/date-picker/DatePickerInput.js +2 -1
  308. package/components/date-picker/DatePickerInput.js.map +1 -1
  309. package/components/date-picker/DatePickerPortal.d.ts +1 -1
  310. package/components/date-picker/DatePickerPortal.js +4 -4
  311. package/components/date-picker/DatePickerPortal.js.map +1 -1
  312. package/components/form-status/FormStatus.js +1 -1
  313. package/components/form-status/FormStatus.js.map +1 -1
  314. package/components/form-status/style/dnb-form-status.css +1 -1
  315. package/components/form-status/style/dnb-form-status.min.css +1 -1
  316. package/components/form-status/style/dnb-form-status.scss +1 -1
  317. package/components/form-status/style/themes/dnb-form-status-theme-sbanken.css +11 -2
  318. package/components/form-status/style/themes/dnb-form-status-theme-sbanken.min.css +1 -1
  319. package/components/form-status/style/themes/dnb-form-status-theme-sbanken.scss +6 -2
  320. package/components/global-status/style/themes/dnb-global-status-theme-sbanken.css +1 -1
  321. package/components/global-status/style/themes/dnb-global-status-theme-sbanken.min.css +1 -1
  322. package/components/global-status/style/themes/dnb-global-status-theme-sbanken.scss +1 -1
  323. package/components/help-button/style/dnb-help-button-inline.css +1 -1
  324. package/components/help-button/style/dnb-help-button-inline.min.css +1 -1
  325. package/components/help-button/style/dnb-help-button-inline.scss +1 -1
  326. package/components/help-button/style/dnb-help-button.css +1 -1
  327. package/components/help-button/style/dnb-help-button.min.css +1 -1
  328. package/components/index.d.ts +3 -1
  329. package/components/index.js +3 -1
  330. package/components/index.js.map +1 -1
  331. package/components/info-card/style/dnb-info-card.css +1 -1
  332. package/components/info-card/style/dnb-info-card.min.css +1 -1
  333. package/components/info-card/style/dnb-info-card.scss +1 -1
  334. package/components/lib.d.ts +5 -1
  335. package/components/lib.js +5 -1
  336. package/components/lib.js.map +1 -1
  337. package/components/modal/ModalRoot.d.ts +2 -7
  338. package/components/modal/ModalRoot.js +9 -65
  339. package/components/modal/ModalRoot.js.map +1 -1
  340. package/components/portal-root/PortalRoot.d.ts +7 -0
  341. package/components/portal-root/PortalRoot.js +54 -0
  342. package/components/portal-root/PortalRoot.js.map +1 -0
  343. package/components/portal-root/PortalRootDocs.d.ts +2 -0
  344. package/components/portal-root/PortalRootDocs.js +13 -0
  345. package/components/portal-root/PortalRootDocs.js.map +1 -0
  346. package/components/portal-root/index.d.ts +7 -0
  347. package/components/portal-root/index.js +4 -0
  348. package/components/portal-root/index.js.map +1 -0
  349. package/components/section/style/themes/dnb-section-theme-sbanken.css +1 -1
  350. package/components/section/style/themes/dnb-section-theme-sbanken.min.css +1 -1
  351. package/components/section/style/themes/dnb-section-theme-sbanken.scss +1 -1
  352. package/components/step-indicator/StepIndicator.js +6 -2
  353. package/components/step-indicator/StepIndicator.js.map +1 -1
  354. package/components/step-indicator/StepIndicatorDocs.js +1 -1
  355. package/components/step-indicator/StepIndicatorDocs.js.map +1 -1
  356. package/components/step-indicator/StepIndicatorTriggerButton.d.ts +2 -1
  357. package/components/step-indicator/StepIndicatorTriggerButton.js +5 -3
  358. package/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  359. package/components/switch/Switch.d.ts +12 -3
  360. package/components/switch/Switch.js +40 -16
  361. package/components/switch/Switch.js.map +1 -1
  362. package/components/switch/SwitchDocs.js +5 -0
  363. package/components/switch/SwitchDocs.js.map +1 -1
  364. package/components/tooltip/TooltipPortal.js +27 -60
  365. package/components/tooltip/TooltipPortal.js.map +1 -1
  366. package/components/tooltip/style/dnb-tooltip.css +8 -1
  367. package/components/tooltip/style/dnb-tooltip.min.css +1 -1
  368. package/components/tooltip/style/dnb-tooltip.scss +8 -1
  369. package/components/upload/Upload.js +31 -7
  370. package/components/upload/Upload.js.map +1 -1
  371. package/components/upload/UploadContext.d.ts +1 -0
  372. package/components/upload/UploadContext.js +2 -1
  373. package/components/upload/UploadContext.js.map +1 -1
  374. package/components/upload/UploadDocs.js +11 -1
  375. package/components/upload/UploadDocs.js.map +1 -1
  376. package/components/upload/UploadDropzone.d.ts +3 -1
  377. package/components/upload/UploadDropzone.js +5 -4
  378. package/components/upload/UploadDropzone.js.map +1 -1
  379. package/components/upload/UploadFileInput.d.ts +3 -1
  380. package/components/upload/UploadFileInput.js +7 -5
  381. package/components/upload/UploadFileInput.js.map +1 -1
  382. package/components/upload/style/dnb-upload.css +10 -2
  383. package/components/upload/style/dnb-upload.min.css +1 -1
  384. package/components/upload/style/dnb-upload.scss +12 -2
  385. package/components/upload/types.d.ts +4 -0
  386. package/components/upload/types.js.map +1 -1
  387. package/elements/lists/style/lists-mixins.scss +1 -1
  388. package/es/components/DateFormat.d.ts +12 -0
  389. package/es/components/DateFormat.js +4 -0
  390. package/es/components/DateFormat.js.map +1 -0
  391. package/es/components/PortalRoot.d.ts +12 -0
  392. package/es/components/PortalRoot.js +4 -0
  393. package/es/components/PortalRoot.js.map +1 -0
  394. package/es/components/breadcrumb/Breadcrumb.d.ts +4 -0
  395. package/es/components/breadcrumb/Breadcrumb.js +9 -4
  396. package/es/components/breadcrumb/Breadcrumb.js.map +1 -1
  397. package/es/components/breadcrumb/BreadcrumbDocs.js +5 -0
  398. package/es/components/breadcrumb/BreadcrumbDocs.js.map +1 -1
  399. package/es/components/card/Card.d.ts +4 -0
  400. package/es/components/card/Card.js +12 -4
  401. package/es/components/card/Card.js.map +1 -1
  402. package/es/components/card/CardDocs.js +1 -1
  403. package/es/components/card/CardDocs.js.map +1 -1
  404. package/es/components/checkbox/Checkbox.js.map +1 -1
  405. package/es/components/date-format/DateFormat.d.ts +30 -0
  406. package/es/components/date-format/DateFormat.js +74 -0
  407. package/es/components/date-format/DateFormat.js.map +1 -0
  408. package/es/components/date-format/DateFormatDocs.d.ts +2 -0
  409. package/es/components/date-format/DateFormatDocs.js +28 -0
  410. package/es/components/date-format/DateFormatDocs.js.map +1 -0
  411. package/es/components/date-format/DateFormatUtils.d.ts +11 -0
  412. package/es/components/date-format/DateFormatUtils.js +27 -0
  413. package/es/components/date-format/DateFormatUtils.js.map +1 -0
  414. package/es/components/date-format/index.d.ts +7 -0
  415. package/es/components/date-format/index.js +4 -0
  416. package/es/components/date-format/index.js.map +1 -0
  417. package/es/components/date-picker/DatePicker.js +3 -6
  418. package/es/components/date-picker/DatePicker.js.map +1 -1
  419. package/es/components/date-picker/DatePickerCalc.d.ts +0 -13
  420. package/es/components/date-picker/DatePickerCalc.js +0 -39
  421. package/es/components/date-picker/DatePickerCalc.js.map +1 -1
  422. package/es/components/date-picker/DatePickerCalendar.js +7 -6
  423. package/es/components/date-picker/DatePickerCalendar.js.map +1 -1
  424. package/es/components/date-picker/DatePickerCalendarNavigator.js +4 -4
  425. package/es/components/date-picker/DatePickerCalendarNavigator.js.map +1 -1
  426. package/es/components/date-picker/DatePickerInput.js +2 -1
  427. package/es/components/date-picker/DatePickerInput.js.map +1 -1
  428. package/es/components/date-picker/DatePickerPortal.d.ts +1 -1
  429. package/es/components/date-picker/DatePickerPortal.js +4 -4
  430. package/es/components/date-picker/DatePickerPortal.js.map +1 -1
  431. package/es/components/form-status/FormStatus.js +1 -1
  432. package/es/components/form-status/FormStatus.js.map +1 -1
  433. package/es/components/form-status/style/dnb-form-status.css +1 -1
  434. package/es/components/form-status/style/dnb-form-status.min.css +1 -1
  435. package/es/components/form-status/style/dnb-form-status.scss +1 -1
  436. package/es/components/form-status/style/themes/dnb-form-status-theme-sbanken.css +11 -2
  437. package/es/components/form-status/style/themes/dnb-form-status-theme-sbanken.min.css +1 -1
  438. package/es/components/form-status/style/themes/dnb-form-status-theme-sbanken.scss +6 -2
  439. package/es/components/global-status/style/themes/dnb-global-status-theme-sbanken.css +1 -1
  440. package/es/components/global-status/style/themes/dnb-global-status-theme-sbanken.min.css +1 -1
  441. package/es/components/global-status/style/themes/dnb-global-status-theme-sbanken.scss +1 -1
  442. package/es/components/help-button/style/dnb-help-button-inline.css +1 -1
  443. package/es/components/help-button/style/dnb-help-button-inline.min.css +1 -1
  444. package/es/components/help-button/style/dnb-help-button-inline.scss +1 -1
  445. package/es/components/help-button/style/dnb-help-button.css +1 -1
  446. package/es/components/help-button/style/dnb-help-button.min.css +1 -1
  447. package/es/components/index.d.ts +3 -1
  448. package/es/components/index.js +3 -1
  449. package/es/components/index.js.map +1 -1
  450. package/es/components/info-card/style/dnb-info-card.css +1 -1
  451. package/es/components/info-card/style/dnb-info-card.min.css +1 -1
  452. package/es/components/info-card/style/dnb-info-card.scss +1 -1
  453. package/es/components/lib.d.ts +5 -1
  454. package/es/components/lib.js +5 -1
  455. package/es/components/lib.js.map +1 -1
  456. package/es/components/modal/ModalRoot.d.ts +2 -7
  457. package/es/components/modal/ModalRoot.js +9 -61
  458. package/es/components/modal/ModalRoot.js.map +1 -1
  459. package/es/components/portal-root/PortalRoot.d.ts +7 -0
  460. package/es/components/portal-root/PortalRoot.js +54 -0
  461. package/es/components/portal-root/PortalRoot.js.map +1 -0
  462. package/es/components/portal-root/PortalRootDocs.d.ts +2 -0
  463. package/es/components/portal-root/PortalRootDocs.js +13 -0
  464. package/es/components/portal-root/PortalRootDocs.js.map +1 -0
  465. package/es/components/portal-root/index.d.ts +7 -0
  466. package/es/components/portal-root/index.js +4 -0
  467. package/es/components/portal-root/index.js.map +1 -0
  468. package/es/components/section/style/themes/dnb-section-theme-sbanken.css +1 -1
  469. package/es/components/section/style/themes/dnb-section-theme-sbanken.min.css +1 -1
  470. package/es/components/section/style/themes/dnb-section-theme-sbanken.scss +1 -1
  471. package/es/components/step-indicator/StepIndicator.js +6 -2
  472. package/es/components/step-indicator/StepIndicator.js.map +1 -1
  473. package/es/components/step-indicator/StepIndicatorDocs.js +1 -1
  474. package/es/components/step-indicator/StepIndicatorDocs.js.map +1 -1
  475. package/es/components/step-indicator/StepIndicatorTriggerButton.d.ts +2 -1
  476. package/es/components/step-indicator/StepIndicatorTriggerButton.js +5 -3
  477. package/es/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  478. package/es/components/switch/Switch.d.ts +12 -3
  479. package/es/components/switch/Switch.js +40 -16
  480. package/es/components/switch/Switch.js.map +1 -1
  481. package/es/components/switch/SwitchDocs.js +5 -0
  482. package/es/components/switch/SwitchDocs.js.map +1 -1
  483. package/es/components/tooltip/TooltipPortal.js +27 -59
  484. package/es/components/tooltip/TooltipPortal.js.map +1 -1
  485. package/es/components/tooltip/style/dnb-tooltip.css +8 -1
  486. package/es/components/tooltip/style/dnb-tooltip.min.css +1 -1
  487. package/es/components/tooltip/style/dnb-tooltip.scss +8 -1
  488. package/es/components/upload/Upload.js +31 -7
  489. package/es/components/upload/Upload.js.map +1 -1
  490. package/es/components/upload/UploadContext.d.ts +1 -0
  491. package/es/components/upload/UploadContext.js +2 -1
  492. package/es/components/upload/UploadContext.js.map +1 -1
  493. package/es/components/upload/UploadDocs.js +11 -1
  494. package/es/components/upload/UploadDocs.js.map +1 -1
  495. package/es/components/upload/UploadDropzone.d.ts +3 -1
  496. package/es/components/upload/UploadDropzone.js +5 -4
  497. package/es/components/upload/UploadDropzone.js.map +1 -1
  498. package/es/components/upload/UploadFileInput.d.ts +3 -1
  499. package/es/components/upload/UploadFileInput.js +7 -5
  500. package/es/components/upload/UploadFileInput.js.map +1 -1
  501. package/es/components/upload/style/dnb-upload.css +10 -2
  502. package/es/components/upload/style/dnb-upload.min.css +1 -1
  503. package/es/components/upload/style/dnb-upload.scss +12 -2
  504. package/es/components/upload/types.d.ts +4 -0
  505. package/es/components/upload/types.js.map +1 -1
  506. package/es/elements/lists/style/lists-mixins.scss +1 -1
  507. package/es/extensions/forms/Connectors/Bring/address.d.ts +48 -0
  508. package/es/extensions/forms/Connectors/Bring/address.js +169 -0
  509. package/es/extensions/forms/Connectors/Bring/address.js.map +1 -0
  510. package/es/extensions/forms/Connectors/Bring/index.d.ts +1 -0
  511. package/es/extensions/forms/Connectors/Bring/index.js +3 -1
  512. package/es/extensions/forms/Connectors/Bring/index.js.map +1 -1
  513. package/es/extensions/forms/Connectors/Bring/postalCode.js +9 -1
  514. package/es/extensions/forms/Connectors/Bring/postalCode.js.map +1 -1
  515. package/es/extensions/forms/Connectors/createContext.js +3 -0
  516. package/es/extensions/forms/Connectors/createContext.js.map +1 -1
  517. package/es/extensions/forms/Field/Address/Address.d.ts +3 -0
  518. package/es/extensions/forms/Field/Address/Address.js.map +1 -1
  519. package/es/extensions/forms/Field/Boolean/BooleanDocs.js +1 -1
  520. package/es/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
  521. package/es/extensions/forms/Field/Date/Date.js +5 -2
  522. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  523. package/es/extensions/forms/Field/Indeterminate/Indeterminate.js +3 -3
  524. package/es/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
  525. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +15 -6
  526. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  527. package/es/extensions/forms/Field/Toggle/Toggle.d.ts +1 -1
  528. package/es/extensions/forms/Field/Toggle/Toggle.js +37 -1
  529. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  530. package/es/extensions/forms/Field/Upload/Upload.d.ts +1 -1
  531. package/es/extensions/forms/Field/Upload/Upload.js +26 -7
  532. package/es/extensions/forms/Field/Upload/Upload.js.map +1 -1
  533. package/es/extensions/forms/Field/style/field-sizes.scss +1 -1
  534. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +2 -2
  535. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  536. package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +1 -1
  537. package/es/extensions/forms/Form/Card/Card.d.ts +3 -6
  538. package/es/extensions/forms/Form/Card/Card.js +1 -1
  539. package/es/extensions/forms/Form/Card/Card.js.map +1 -1
  540. package/es/extensions/forms/Form/Card/CardDocs.d.ts +1 -0
  541. package/es/extensions/forms/Form/Card/CardDocs.js +12 -10
  542. package/es/extensions/forms/Form/Card/CardDocs.js.map +1 -1
  543. package/es/extensions/forms/Value/Date/Date.js +20 -5
  544. package/es/extensions/forms/Value/Date/Date.js.map +1 -1
  545. package/es/extensions/forms/Value/style/value-sizes.scss +2 -2
  546. package/es/extensions/forms/ValueBlock/style/dnb-value-block.css +2 -2
  547. package/es/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  548. package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  549. package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  550. package/es/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  551. package/es/extensions/forms/constants/locales/en-GB.js +2 -1
  552. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
  553. package/es/extensions/forms/constants/locales/en-US.d.ts +1 -0
  554. package/es/extensions/forms/constants/locales/index.d.ts +2 -0
  555. package/es/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  556. package/es/extensions/forms/constants/locales/nb-NO.js +2 -1
  557. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  558. package/es/extensions/forms/constants/locales/sv-SE.d.ts +1 -0
  559. package/es/extensions/forms/constants/locales/sv-SE.js +2 -1
  560. package/es/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  561. package/es/extensions/forms/style/dnb-forms.css +4 -4
  562. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  563. package/es/extensions/payment-card/style/dnb-payment-card.css +1 -0
  564. package/es/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  565. package/es/fragments/drawer-list/DrawerList.d.ts +4 -2
  566. package/es/fragments/drawer-list/DrawerList.js +6 -5
  567. package/es/fragments/drawer-list/DrawerList.js.map +1 -1
  568. package/es/fragments/drawer-list/DrawerListHelpers.js +1 -1
  569. package/es/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  570. package/es/fragments/drawer-list/DrawerListPortal.d.ts +1 -0
  571. package/es/fragments/drawer-list/DrawerListPortal.js +32 -66
  572. package/es/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  573. package/es/fragments/drawer-list/DrawerListProvider.d.ts +1 -1
  574. package/es/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  575. package/es/fragments/drawer-list/style/dnb-drawer-list.scss +1 -1
  576. package/es/index.d.ts +3 -1
  577. package/es/index.js +3 -1
  578. package/es/index.js.map +1 -1
  579. package/es/shared/build-info/BuildInfoData.cjs +2 -2
  580. package/es/shared/build-info/BuildInfoData.d.ts +2 -2
  581. package/es/shared/build-info/BuildInfoData.js +2 -2
  582. package/es/shared/build-info/BuildInfoData.js.map +1 -1
  583. package/es/shared/locales/en-GB.d.ts +3 -0
  584. package/es/shared/locales/en-GB.js +3 -0
  585. package/es/shared/locales/en-GB.js.map +1 -1
  586. package/es/shared/locales/en-US.d.ts +3 -0
  587. package/es/shared/locales/index.d.ts +6 -0
  588. package/es/shared/locales/nb-NO.d.ts +3 -0
  589. package/es/shared/locales/nb-NO.js +3 -0
  590. package/es/shared/locales/nb-NO.js.map +1 -1
  591. package/es/shared/locales/sv-SE.d.ts +3 -0
  592. package/es/shared/locales/sv-SE.js +3 -0
  593. package/es/shared/locales/sv-SE.js.map +1 -1
  594. package/es/style/core/scopes.scss +1 -1
  595. package/es/style/dnb-ui-basis.css +1 -1
  596. package/es/style/dnb-ui-basis.min.css +1 -1
  597. package/es/style/dnb-ui-body.css +1 -1
  598. package/es/style/dnb-ui-body.min.css +1 -1
  599. package/es/style/dnb-ui-components.css +27 -12
  600. package/es/style/dnb-ui-components.min.css +4 -4
  601. package/es/style/dnb-ui-core.css +1 -1
  602. package/es/style/dnb-ui-core.min.css +1 -1
  603. package/es/style/dnb-ui-elements.css +1 -1
  604. package/es/style/dnb-ui-elements.min.css +1 -1
  605. package/es/style/dnb-ui-extensions.css +5 -4
  606. package/es/style/dnb-ui-extensions.min.css +1 -1
  607. package/es/style/dnb-ui-forms.css +4 -4
  608. package/es/style/dnb-ui-forms.min.css +1 -1
  609. package/es/style/dnb-ui-fragments.css +1 -1
  610. package/es/style/dnb-ui-fragments.min.css +1 -1
  611. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +2 -1
  612. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  613. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +31 -16
  614. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  615. package/es/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
  616. package/es/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  617. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +5 -4
  618. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  619. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +4 -4
  620. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  621. package/es/style/themes/theme-eiendom/properties.d.ts +2 -0
  622. package/es/style/themes/theme-eiendom/properties.js +3 -1
  623. package/es/style/themes/theme-eiendom/properties.js.map +1 -1
  624. package/es/style/themes/theme-sbanken/properties.d.ts +2 -0
  625. package/es/style/themes/theme-sbanken/properties.js +2 -0
  626. package/es/style/themes/theme-sbanken/properties.js.map +1 -1
  627. package/es/style/themes/theme-sbanken/properties.scss +3 -0
  628. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +3 -1
  629. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +2 -2
  630. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +44 -20
  631. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +6 -6
  632. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
  633. package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  634. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +5 -4
  635. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  636. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +4 -4
  637. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  638. package/es/style/themes/theme-ui/properties.d.ts +2 -0
  639. package/es/style/themes/theme-ui/properties.js +3 -1
  640. package/es/style/themes/theme-ui/properties.js.map +1 -1
  641. package/es/style/themes/theme-ui/properties.scss +3 -0
  642. package/es/style/themes/theme-ui/ui-theme-basis.css +2 -1
  643. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  644. package/es/style/themes/theme-ui/ui-theme-components.css +31 -16
  645. package/es/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  646. package/es/style/themes/theme-ui/ui-theme-elements.css +1 -1
  647. package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  648. package/es/style/themes/theme-ui/ui-theme-extensions.css +5 -4
  649. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  650. package/es/style/themes/theme-ui/ui-theme-forms.css +4 -4
  651. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  652. package/es/style/themes/theme-ui/ui-theme-properties.css +1 -0
  653. package/es/style/themes/theme-ui/ui-theme-properties.min.css +1 -1
  654. package/es/style/themes/theme-ui/ui-theme-tags.css +1 -1
  655. package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  656. package/esm/dnb-ui-components.min.mjs +1 -1
  657. package/esm/dnb-ui-elements.min.mjs +1 -1
  658. package/esm/dnb-ui-extensions.min.mjs +3 -3
  659. package/esm/dnb-ui-lib.min.mjs +1 -1
  660. package/extensions/forms/Connectors/Bring/address.d.ts +48 -0
  661. package/extensions/forms/Connectors/Bring/address.js +170 -0
  662. package/extensions/forms/Connectors/Bring/address.js.map +1 -0
  663. package/extensions/forms/Connectors/Bring/index.d.ts +1 -0
  664. package/extensions/forms/Connectors/Bring/index.js +2 -0
  665. package/extensions/forms/Connectors/Bring/index.js.map +1 -1
  666. package/extensions/forms/Connectors/Bring/postalCode.js +9 -1
  667. package/extensions/forms/Connectors/Bring/postalCode.js.map +1 -1
  668. package/extensions/forms/Connectors/createContext.js +3 -0
  669. package/extensions/forms/Connectors/createContext.js.map +1 -1
  670. package/extensions/forms/Field/Address/Address.d.ts +3 -0
  671. package/extensions/forms/Field/Address/Address.js.map +1 -1
  672. package/extensions/forms/Field/Boolean/BooleanDocs.js +1 -1
  673. package/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
  674. package/extensions/forms/Field/Date/Date.js +5 -2
  675. package/extensions/forms/Field/Date/Date.js.map +1 -1
  676. package/extensions/forms/Field/Indeterminate/Indeterminate.js +3 -3
  677. package/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
  678. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +15 -6
  679. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  680. package/extensions/forms/Field/Toggle/Toggle.d.ts +1 -1
  681. package/extensions/forms/Field/Toggle/Toggle.js +37 -1
  682. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  683. package/extensions/forms/Field/Upload/Upload.d.ts +1 -1
  684. package/extensions/forms/Field/Upload/Upload.js +26 -7
  685. package/extensions/forms/Field/Upload/Upload.js.map +1 -1
  686. package/extensions/forms/Field/style/field-sizes.scss +1 -1
  687. package/extensions/forms/FieldBlock/style/dnb-field-block.css +2 -2
  688. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  689. package/extensions/forms/FieldBlock/style/dnb-field-block.scss +1 -1
  690. package/extensions/forms/Form/Card/Card.d.ts +3 -6
  691. package/extensions/forms/Form/Card/Card.js +1 -1
  692. package/extensions/forms/Form/Card/Card.js.map +1 -1
  693. package/extensions/forms/Form/Card/CardDocs.d.ts +1 -0
  694. package/extensions/forms/Form/Card/CardDocs.js +12 -10
  695. package/extensions/forms/Form/Card/CardDocs.js.map +1 -1
  696. package/extensions/forms/Value/Date/Date.js +20 -5
  697. package/extensions/forms/Value/Date/Date.js.map +1 -1
  698. package/extensions/forms/Value/style/value-sizes.scss +2 -2
  699. package/extensions/forms/ValueBlock/style/dnb-value-block.css +2 -2
  700. package/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  701. package/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  702. package/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  703. package/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  704. package/extensions/forms/constants/locales/en-GB.js +2 -1
  705. package/extensions/forms/constants/locales/en-GB.js.map +1 -1
  706. package/extensions/forms/constants/locales/en-US.d.ts +1 -0
  707. package/extensions/forms/constants/locales/index.d.ts +2 -0
  708. package/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  709. package/extensions/forms/constants/locales/nb-NO.js +2 -1
  710. package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  711. package/extensions/forms/constants/locales/sv-SE.d.ts +1 -0
  712. package/extensions/forms/constants/locales/sv-SE.js +2 -1
  713. package/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  714. package/extensions/forms/style/dnb-forms.css +4 -4
  715. package/extensions/forms/style/dnb-forms.min.css +1 -1
  716. package/extensions/payment-card/style/dnb-payment-card.css +1 -0
  717. package/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  718. package/fragments/drawer-list/DrawerList.d.ts +4 -2
  719. package/fragments/drawer-list/DrawerList.js +6 -5
  720. package/fragments/drawer-list/DrawerList.js.map +1 -1
  721. package/fragments/drawer-list/DrawerListHelpers.js +1 -1
  722. package/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  723. package/fragments/drawer-list/DrawerListPortal.d.ts +1 -0
  724. package/fragments/drawer-list/DrawerListPortal.js +32 -66
  725. package/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  726. package/fragments/drawer-list/DrawerListProvider.d.ts +1 -1
  727. package/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  728. package/fragments/drawer-list/style/dnb-drawer-list.scss +1 -1
  729. package/index.d.ts +3 -1
  730. package/index.js +3 -1
  731. package/index.js.map +1 -1
  732. package/package.json +1 -1
  733. package/shared/build-info/BuildInfoData.cjs +2 -2
  734. package/shared/build-info/BuildInfoData.d.ts +2 -2
  735. package/shared/build-info/BuildInfoData.js +2 -2
  736. package/shared/build-info/BuildInfoData.js.map +1 -1
  737. package/shared/locales/en-GB.d.ts +3 -0
  738. package/shared/locales/en-GB.js +3 -0
  739. package/shared/locales/en-GB.js.map +1 -1
  740. package/shared/locales/en-US.d.ts +3 -0
  741. package/shared/locales/index.d.ts +6 -0
  742. package/shared/locales/nb-NO.d.ts +3 -0
  743. package/shared/locales/nb-NO.js +3 -0
  744. package/shared/locales/nb-NO.js.map +1 -1
  745. package/shared/locales/sv-SE.d.ts +3 -0
  746. package/shared/locales/sv-SE.js +3 -0
  747. package/shared/locales/sv-SE.js.map +1 -1
  748. package/style/core/scopes.scss +1 -1
  749. package/style/dnb-ui-basis.css +1 -1
  750. package/style/dnb-ui-basis.min.css +1 -1
  751. package/style/dnb-ui-body.css +1 -1
  752. package/style/dnb-ui-body.min.css +1 -1
  753. package/style/dnb-ui-components.css +27 -12
  754. package/style/dnb-ui-components.min.css +4 -4
  755. package/style/dnb-ui-core.css +1 -1
  756. package/style/dnb-ui-core.min.css +1 -1
  757. package/style/dnb-ui-elements.css +1 -1
  758. package/style/dnb-ui-elements.min.css +1 -1
  759. package/style/dnb-ui-extensions.css +5 -4
  760. package/style/dnb-ui-extensions.min.css +1 -1
  761. package/style/dnb-ui-forms.css +4 -4
  762. package/style/dnb-ui-forms.min.css +1 -1
  763. package/style/dnb-ui-fragments.css +1 -1
  764. package/style/dnb-ui-fragments.min.css +1 -1
  765. package/style/themes/theme-eiendom/eiendom-theme-basis.css +2 -1
  766. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  767. package/style/themes/theme-eiendom/eiendom-theme-components.css +31 -16
  768. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  769. package/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
  770. package/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  771. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +5 -4
  772. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  773. package/style/themes/theme-eiendom/eiendom-theme-forms.css +4 -4
  774. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  775. package/style/themes/theme-eiendom/properties.d.ts +2 -0
  776. package/style/themes/theme-eiendom/properties.js +3 -1
  777. package/style/themes/theme-eiendom/properties.js.map +1 -1
  778. package/style/themes/theme-sbanken/properties.d.ts +2 -0
  779. package/style/themes/theme-sbanken/properties.js +2 -0
  780. package/style/themes/theme-sbanken/properties.js.map +1 -1
  781. package/style/themes/theme-sbanken/properties.scss +3 -0
  782. package/style/themes/theme-sbanken/sbanken-theme-basis.css +3 -1
  783. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +2 -2
  784. package/style/themes/theme-sbanken/sbanken-theme-components.css +44 -20
  785. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +6 -6
  786. package/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
  787. package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  788. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +5 -4
  789. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  790. package/style/themes/theme-sbanken/sbanken-theme-forms.css +4 -4
  791. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  792. package/style/themes/theme-ui/properties.d.ts +2 -0
  793. package/style/themes/theme-ui/properties.js +3 -1
  794. package/style/themes/theme-ui/properties.js.map +1 -1
  795. package/style/themes/theme-ui/properties.scss +3 -0
  796. package/style/themes/theme-ui/ui-theme-basis.css +2 -1
  797. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  798. package/style/themes/theme-ui/ui-theme-components.css +31 -16
  799. package/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  800. package/style/themes/theme-ui/ui-theme-elements.css +1 -1
  801. package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  802. package/style/themes/theme-ui/ui-theme-extensions.css +5 -4
  803. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  804. package/style/themes/theme-ui/ui-theme-forms.css +4 -4
  805. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  806. package/style/themes/theme-ui/ui-theme-properties.css +1 -0
  807. package/style/themes/theme-ui/ui-theme-properties.min.css +1 -1
  808. package/style/themes/theme-ui/ui-theme-tags.css +1 -1
  809. package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  810. package/umd/dnb-ui-components.min.js +1 -1
  811. package/umd/dnb-ui-elements.min.js +1 -1
  812. package/umd/dnb-ui-extensions.min.js +3 -3
  813. package/umd/dnb-ui-lib.min.js +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerCalendar.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_format","_addMonths","_addWeeks","_addDays","_isSameDay","_isSameMonth","_startOfDay","_differenceInCalendarDays","_differenceInMonths","_lastDayOfMonth","_setDate","_DatePickerCalc","_Button","_DatePickerContext","_DatePickerCalendarNavigator","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","defaultProps","hideNavigation","hideDays","onlyMonth","hideNextMonthWeek","noAutoFocus","rtl","resetDate","arrowKeys","keysToHandle","DatePickerCalendar","restOfProps","props","updateDates","setHasClickedCalendarDay","startDate","endDate","maxDate","minDate","startMonth","endMonth","hoverDate","setHoverDate","setSubmittedDates","onDaysRender","yearNavigation","translation","DatePicker","firstDay","defaultFirstDayOfWeek","selectedMonth","useContext","DatePickerContext","id","nr","month","isRange","firstDayOfWeek","locale","onSelect","onKeyDown","tableRef","useRef","days","cache","useEffect","current","focus","preventScroll","onMouseLeaveHandler","useCallback","undefined","callOnSelect","event","getDays","daysFromCalendar","getCalendar","Date","dayOffset","map","date","makeDayObject","changedDays","Array","isArray","format","keyNavCalc","keyCode","includes","dateHandler","test","addDays","addWeeks","shiftAmount","findValid","foundDate","find","cur","isSameDay","isDisabled","isSelectable","isInactive","nextDate","hasReachedEnd","onKeyDownHandler","pressedKey","code","preventDefault","persist","currentDates","dateType","currentDate","newDate","addMonths","hidePicker","dates","currentMonth","Math","abs","differenceInMonths","setDate","lastDayOfMonth","isSameMonth","cacheKey","useMemo","join","weekDays","count","reduce","acc","values","createElement","className","lang","DatePickerCalendarNav","type","title","replace","formatDate","formatOptions","tabIndex","role","onMouseLeave","ref","getWeek","day","key","scope","weekday","substring","week","year","handleAsDisabled","isLastMonth","isNextMonth","isStartDate","isEndDate","isSelectedDate","paramsCell","paramsButton","classnames","buildDayClassNames","size","variant","text","getDate","bounding","disabled","on_click","_ref","onSelectRange","state","onMouseOver","onHoverDay","onFocus","_default","exports","_ref2","startOfDay","daysToStartDate","differenceInCalendarDays","daysToEndDate","range","toRange","_ref3","isPreview","isWithinSelection","isToday"],"sources":["../../../../src/components/date-picker/DatePickerCalendar.tsx"],"sourcesContent":["/**\n * Web DatePicker Component\n *\n */\n\nimport React, {\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useRef,\n} from 'react'\nimport classnames from 'classnames'\n\n// date-fns\nimport format from 'date-fns/format'\nimport addMonths from 'date-fns/addMonths'\nimport addWeeks from 'date-fns/addWeeks'\nimport addDays from 'date-fns/addDays'\nimport isSameDay from 'date-fns/isSameDay'\nimport isSameMonth from 'date-fns/isSameMonth'\nimport startOfDay from 'date-fns/startOfDay'\nimport differenceInCalendarDays from 'date-fns/differenceInCalendarDays'\nimport differenceInMonths from 'date-fns/differenceInMonths'\nimport lastDayOfMonth from 'date-fns/lastDayOfMonth'\nimport setDate from 'date-fns/setDate'\n\nimport {\n isDisabled,\n makeDayObject,\n toRange,\n getWeek,\n dayOffset,\n getCalendar,\n formatDate,\n} from './DatePickerCalc'\nimport Button, { ButtonProps } from '../button/Button'\nimport DatePickerContext, {\n DatePickerContextValues,\n} from './DatePickerContext'\nimport { InternalLocale } from '../../shared/Context'\nimport { DatePickerChangeEvent } from './DatePickerProvider'\nimport { DatePickerDates } from './hooks/useDates'\nimport {\n CalendarNavButtonProps,\n DatePickerCalendarNav,\n} from './DatePickerCalendarNavigator'\n\nexport type CalendarDay = {\n date: Date\n isDisabled?: boolean\n isEndDate?: boolean\n isInactive?: boolean\n isLastMonth?: boolean\n isNextMonth?: boolean\n isPreview?: boolean\n isSelectable?: boolean\n isStartDate?: boolean\n isToday?: boolean\n isWithinSelection?: boolean\n className?: string\n}\n\nexport type CalendarNavigationEvent = {\n nr: number\n type?: CalendarNavButtonProps['type']\n}\n\nexport type DatePickerCalendarProps = Omit<\n React.HTMLProps<HTMLElement>,\n 'onSelect' | 'onChange'\n> & {\n id?: string\n nr?: number\n /**\n * To display what month should be shown in the first calendar by default. Defaults to the `date` respective `startDate`.\n */\n month?: Date\n hoverDate?: Date\n firstDayOfWeek?: string\n hideNavigation?: boolean\n hideDays?: boolean\n onlyMonth?: boolean\n hideNextMonthWeek?: boolean\n noAutoFocus?: boolean\n onSelect?: (\n event: DatePickerChangeEvent<\n | React.MouseEvent<HTMLSpanElement>\n | React.KeyboardEvent<HTMLTableElement | HTMLButtonElement>\n >\n ) => void\n onKeyDown?: (\n event: React.KeyboardEvent<HTMLTableElement | HTMLButtonElement>,\n tableRef: React.MutableRefObject<HTMLTableElement>,\n nr: number\n ) => void\n /**\n * To define the locale used in the calendar. Needs to be an `date-fns` \"v2\" locale object, like `import enLocale from &#39;date-fns/locale/en-GB&#39;`. Defaults to `nb-NO`.\n */\n locale?: InternalLocale\n rtl?: boolean\n isRange?: boolean\n resetDate?: boolean\n}\n\ntype DayObject = {\n date: Date\n isToday: boolean\n isLastMonth: boolean\n isNextMonth: boolean\n isStartDate: boolean\n isEndDate: boolean\n isWithinSelection: boolean\n isPreview: boolean\n isDisabled: boolean\n isSelectable: boolean\n isInactive: boolean\n className?: string\n}\n\nconst defaultProps: DatePickerCalendarProps = {\n hideNavigation: false,\n hideDays: false,\n onlyMonth: false,\n hideNextMonthWeek: false,\n noAutoFocus: false,\n rtl: false,\n resetDate: true,\n}\n\nconst arrowKeys = ['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown']\nconst keysToHandle = ['Enter', 'Space', ...arrowKeys]\n\nfunction DatePickerCalendar(restOfProps: DatePickerCalendarProps) {\n const props = { ...defaultProps, ...restOfProps }\n\n const {\n updateDates,\n setHasClickedCalendarDay,\n startDate,\n endDate,\n maxDate,\n minDate,\n startMonth,\n endMonth,\n hoverDate,\n setHoverDate,\n setSubmittedDates,\n props: { onDaysRender, yearNavigation },\n translation: {\n DatePicker: { firstDay: defaultFirstDayOfWeek, selectedMonth },\n },\n } = useContext(DatePickerContext)\n\n const {\n id,\n nr,\n rtl,\n month,\n isRange,\n firstDayOfWeek = defaultFirstDayOfWeek,\n hideNavigation,\n locale,\n hideDays,\n onSelect,\n onKeyDown,\n resetDate,\n noAutoFocus,\n hideNextMonthWeek,\n onlyMonth,\n } = props\n\n const tableRef = useRef<React.ElementRef<'table'>>()\n const days = useRef<Record<string, Array<CalendarDay>>>({})\n const cache = useRef<Record<string, CalendarDay[][]>>({})\n\n useEffect(() => {\n if (!noAutoFocus && nr === 0) {\n if (tableRef.current) {\n tableRef.current.focus({ preventScroll: true })\n }\n }\n }, [noAutoFocus, nr])\n\n // Store the initial selected date on calendar render, to be used for `onCancel` in DatePickerFooter\n useEffect(() => {\n setSubmittedDates({ startDate, endDate })\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n const onMouseLeaveHandler = useCallback(() => {\n setHoverDate(undefined)\n }, [setHoverDate])\n\n const callOnSelect = useCallback(\n (\n event: DatePickerChangeEvent<\n | React.MouseEvent<HTMLSpanElement>\n | React.KeyboardEvent<HTMLTableElement>\n > &\n DatePickerDates\n ) => {\n onSelect?.(event)\n },\n [onSelect]\n )\n\n const getDays = useCallback(\n (month: Date): DayObject[] => {\n let daysFromCalendar = getCalendar(\n month || new Date(),\n dayOffset(firstDayOfWeek),\n {\n onlyMonth,\n hideNextMonthWeek,\n }\n ).map((date) =>\n makeDayObject(date, {\n startDate,\n endDate,\n hoverDate,\n minDate,\n maxDate,\n month,\n })\n )\n\n if (onDaysRender) {\n const changedDays = onDaysRender(daysFromCalendar, nr)\n if (Array.isArray(changedDays)) {\n daysFromCalendar = changedDays\n }\n }\n\n // Save for later check against disabled days during key navigation\n days.current[format(month, 'yyyy-MM')] = daysFromCalendar\n\n return daysFromCalendar\n },\n [\n endDate,\n firstDayOfWeek,\n hideNextMonthWeek,\n hoverDate,\n maxDate,\n minDate,\n nr,\n onDaysRender,\n onlyMonth,\n startDate,\n ]\n )\n\n const keyNavCalc = useCallback((date: Date, keyCode: string) => {\n // Return date if arrow keys are not pressed\n if (!arrowKeys.includes(keyCode)) {\n return date\n }\n\n const dateHandler = /(ArrowLeft|ArrowRight)/g.test(keyCode)\n ? addDays\n : addWeeks\n const shiftAmount = /(ArrowLeft|ArrowUp)/g.test(keyCode) ? -1 : 1\n\n return dateHandler(date, shiftAmount)\n }, [])\n\n const findValid = useCallback(\n (date: Date, keyCode: string) => {\n if (!onDaysRender || !days.current) {\n return date\n }\n\n const month = format(date, 'yyyy-MM')\n\n // re-render with new month\n if (!days.current[month]) {\n getDays(date)\n }\n\n if (Array.isArray(days.current[month])) {\n const foundDate = days.current[month].find((cur) =>\n isSameDay(cur.date, date)\n )\n\n if (\n foundDate?.date &&\n (foundDate.isDisabled ||\n foundDate.isSelectable === false ||\n foundDate.isInactive)\n ) {\n const nextDate = keyNavCalc(foundDate.date, keyCode)\n return findValid(nextDate, keyCode)\n }\n\n if (foundDate?.date) {\n return foundDate.date\n }\n }\n\n return date\n },\n [onDaysRender, getDays, keyNavCalc]\n )\n\n const hasReachedEnd = useCallback(\n (date: Date) => isDisabled(date, minDate, maxDate),\n [minDate, maxDate]\n )\n\n const onKeyDownHandler = useCallback(\n (event: React.KeyboardEvent<HTMLTableElement>) => {\n const pressedKey = event.code\n\n // call onKeyDown prop if given\n if (typeof onKeyDown === 'function') {\n return onKeyDown(event, tableRef, nr)\n }\n\n // only continue of key is one of these\n if (!keysToHandle.includes(pressedKey)) {\n return\n }\n event.preventDefault()\n event.persist() // since we use the event after updateDates\n\n const currentDates = { startDate, endDate, startMonth, endMonth }\n const dateType = !isRange || nr === 0 ? 'start' : 'end'\n const currentDate = currentDates[`${dateType}Date`]\n\n let newDate = currentDate\n ? keyNavCalc(currentDate, pressedKey)\n : currentDates[`${dateType}Month`] ||\n (isRange && nr === 1 ? addMonths(new Date(), 1) : new Date())\n\n if (\n newDate === currentDate &&\n (pressedKey === 'Enter' || pressedKey === 'Space')\n ) {\n return callOnSelect({\n event,\n nr,\n hidePicker: true,\n })\n }\n\n const dates: {\n startDate?: Date\n endDate?: Date\n startMonth?: Date\n endMonth?: Date\n } = {}\n\n const currentMonth = currentDates[`${dateType}Month`]\n\n if (\n // in case we don't have a start/end date, then we use the current month date\n (currentMonth && !currentDate) ||\n // if we have a larger gap between the new date and the current month in the calendar\n (currentMonth &&\n Math.abs(differenceInMonths(newDate, currentMonth)) > 1)\n ) {\n newDate = !isRange\n ? currentMonth\n : nr === 0\n ? setDate(currentMonth, 1)\n : lastDayOfMonth(currentMonth)\n\n // only to make sure we navigate the calendar to the new date\n } else if (currentMonth && !isSameMonth(currentDate, currentMonth)) {\n dates[`${dateType}Month`] = newDate\n }\n\n newDate = findValid(newDate, pressedKey)\n\n if (hasReachedEnd(newDate)) {\n return // Stop here\n }\n\n dates[`${dateType}Date`] = newDate\n\n // set fallbacks\n if (!isRange) {\n dates.endDate = newDate\n } else {\n if (!startDate) {\n dates.startDate = newDate\n }\n if (!endDate) {\n dates.endDate = newDate\n }\n }\n\n // make sure we stay on the same month\n if (onlyMonth || hideNavigation) {\n if (\n !isSameMonth(dates.startDate, startDate) ||\n !isSameMonth(dates.endDate, startDate) // Heads up, should this not be context.endDate?\n ) {\n return\n }\n }\n\n updateDates(dates, () => {\n // call after state update, so the input get's the latest state as well\n callOnSelect({\n event,\n nr,\n hidePicker: false,\n ...dates,\n })\n })\n\n // and set the focus back again\n if (tableRef && tableRef.current) {\n tableRef.current.focus({ preventScroll: true })\n }\n },\n [\n callOnSelect,\n findValid,\n hasReachedEnd,\n onKeyDown,\n startDate,\n endDate,\n updateDates,\n hideNavigation,\n isRange,\n keyNavCalc,\n nr,\n onlyMonth,\n endMonth,\n startMonth,\n ]\n )\n\n const cacheKey = useMemo(() => {\n return [\n nr,\n month,\n firstDayOfWeek,\n onlyMonth,\n hideNextMonthWeek,\n startDate,\n endDate,\n hoverDate,\n maxDate,\n minDate,\n ].join('|')\n }, [\n nr,\n month,\n firstDayOfWeek,\n onlyMonth,\n hideNextMonthWeek,\n startDate,\n endDate,\n hoverDate,\n maxDate,\n minDate,\n ])\n\n const weekDays = useMemo(() => {\n // Cache the result, just because we then avoid at least double calc because of reconciliation,\n // but we do not avoid calculating every day during hover or select\n\n if (cache.current[cacheKey]) {\n return cache.current[cacheKey]\n }\n\n let count = 0\n\n const days = getDays(month).reduce((acc, cur, i) => {\n // Normalize the data for table consumption\n acc[count] = acc[count] || []\n acc[count].push(cur)\n if (i % 7 === 6) {\n count++\n }\n\n return acc\n }, {})\n\n cache.current[cacheKey] = Object.values(days)\n\n return cache.current[cacheKey]\n }, [cacheKey, getDays, month])\n\n return (\n <div\n className={classnames('dnb-date-picker__calendar', rtl && 'rtl')}\n lang={locale}\n >\n {!hideNavigation && !onlyMonth && (\n <div className=\"dnb-date-picker__header\">\n <DatePickerCalendarNav\n type={yearNavigation ? 'month' : 'both'}\n id={id}\n nr={nr}\n date={month}\n locale={locale}\n />\n {yearNavigation && (\n <DatePickerCalendarNav\n type=\"year\"\n id={id}\n nr={nr}\n date={month}\n locale={locale}\n />\n )}\n </div>\n )}\n {onlyMonth && (\n <div className=\"dnb-date-picker__header dnb-date-picker__header--only-month-label\">\n <label\n id={`${id}--title`}\n className=\"dnb-date-picker__header__title dnb-no-focus\"\n title={selectedMonth.replace(\n /%s/,\n formatDate(month, {\n locale,\n formatOptions: { month: 'long' },\n })\n )}\n tabIndex={-1}\n >\n {formatDate(month, {\n locale,\n formatOptions: { month: 'long' },\n })}\n </label>\n </div>\n )}\n <table\n role=\"grid\"\n className=\"dnb-no-focus\"\n tabIndex={0}\n aria-labelledby={`${id}--title`}\n onKeyDown={onKeyDownHandler}\n onMouseLeave={onMouseLeaveHandler}\n ref={tableRef}\n >\n {!hideDays && !onlyMonth && (\n <thead aria-hidden>\n <tr role=\"row\" className=\"dnb-date-picker__labels\">\n {getWeek(dayOffset(firstDayOfWeek)).map((day, i) => (\n <th\n key={i}\n role=\"columnheader\"\n scope=\"col\"\n className=\"dnb-date-picker__labels__day\"\n aria-label={formatDate(day, {\n locale,\n formatOptions: { weekday: 'long' },\n })}\n >\n {formatDate(day, {\n locale,\n formatOptions: { weekday: 'short' },\n }).substring(0, 2)}\n </th>\n ))}\n </tr>\n </thead>\n )}\n <tbody>\n {weekDays.map((week, i) => {\n return (\n <tr\n key={'week' + i}\n role=\"row\"\n className=\"dnb-date-picker__days\"\n >\n {week.map((day: DayObject, i) => {\n const title = formatDate(day.date, {\n locale,\n formatOptions: {\n weekday: 'long',\n day: 'numeric',\n month: 'long',\n year: 'numeric',\n },\n })\n\n const handleAsDisabled =\n day.isLastMonth ||\n day.isNextMonth ||\n day.isDisabled ||\n day.isInactive\n\n const dateType = day.isStartDate\n ? 'start'\n : day.isEndDate\n ? 'end'\n : undefined\n const isSelectedDate =\n nr === 0 ? day.isStartDate : day.isEndDate\n\n // cell params\n const paramsCell = {\n tabIndex: -1,\n ...(dateType && { id: `${id}--button-${dateType}` }),\n ...(isSelectedDate && { ['aria-selected']: true }),\n } as React.HTMLProps<HTMLTableCellElement>\n\n // cell + button params\n const paramsButton = {\n ...(isSelectedDate && { ['aria-current']: 'date' }),\n } as ButtonProps\n\n return (\n <td\n key={'day' + i}\n role=\"gridcell\"\n className={classnames(\n 'dnb-date-picker__day',\n 'dnb-no-focus',\n buildDayClassNames(day)\n )}\n {...paramsCell}\n >\n <Button\n size=\"medium\"\n variant=\"secondary\"\n text={day.date.getDate()}\n bounding={true}\n disabled={handleAsDisabled}\n tabIndex={handleAsDisabled ? 0 : -1} // fix for NVDA\n aria-disabled={handleAsDisabled}\n aria-label={title}\n {...paramsButton}\n on_click={\n handleAsDisabled\n ? undefined\n : ({ event }) =>\n onSelectRange({\n day,\n isRange,\n startDate,\n endDate,\n resetDate,\n event,\n setHasClickedCalendarDay,\n onSelect: (state) => {\n updateDates(state, (dates) =>\n callOnSelect({\n ...dates,\n event,\n nr,\n hidePicker: !isRange,\n })\n )\n },\n })\n }\n onMouseOver={\n handleAsDisabled\n ? undefined\n : () =>\n onHoverDay({\n day,\n hoverDate,\n setHoverDate,\n })\n }\n onFocus={\n handleAsDisabled\n ? undefined\n : () =>\n onHoverDay({\n day,\n hoverDate,\n setHoverDate,\n })\n }\n />\n </td>\n )\n })}\n </tr>\n )\n })}\n </tbody>\n </table>\n </div>\n )\n}\n\nexport default DatePickerCalendar\n\ntype SelectRangeEvent = Pick<\n DatePickerContextValues,\n 'setHasClickedCalendarDay'\n> & {\n day: DayObject\n event?: React.MouseEvent<HTMLButtonElement>\n startDate?: Date\n endDate?: Date\n resetDate?: boolean\n isRange?: boolean\n onSelect?: DatePickerCalendarProps['onSelect']\n}\n\nfunction onSelectRange({\n day,\n isRange,\n startDate,\n endDate,\n onSelect,\n resetDate,\n event,\n setHasClickedCalendarDay,\n}: SelectRangeEvent) {\n event.persist()\n\n if (!isRange) {\n // set only date\n return onSelect({\n startDate: startOfDay(day.date),\n endDate: startOfDay(day.date),\n event,\n })\n\n // for setting date new on every selection, do this here\n }\n\n // Set to true to stop calendar views from changing in range mode when clicking a day\n setHasClickedCalendarDay(true)\n\n if (!startDate || (resetDate && startDate && endDate)) {\n // set startDate\n // user is selecting startDate\n return onSelect({\n startDate: startOfDay(day.date),\n endDate: undefined,\n event,\n })\n }\n\n // set either startDate or endDate\n const daysToStartDate = Math.abs(\n differenceInCalendarDays(startDate, day.date)\n )\n const daysToEndDate = Math.abs(\n differenceInCalendarDays(endDate, day.date)\n )\n\n const range = toRange(\n endDate && !resetDate && daysToStartDate < daysToEndDate\n ? endDate\n : startDate,\n day.date\n )\n\n return onSelect({\n startDate: startOfDay(range.startDate),\n endDate: startOfDay(range.endDate),\n event,\n })\n}\n\nfunction onHoverDay({\n day,\n hoverDate,\n setHoverDate,\n}: {\n day: CalendarDay\n hoverDate?: Date\n setHoverDate: (date: Date) => void\n}) {\n if (!isSameDay(day.date, hoverDate)) {\n setHoverDate?.(day.date)\n }\n}\n\nfunction buildDayClassNames(day: DayObject) {\n return classnames(\n {\n 'dnb-date-picker__day--start-date': day.isStartDate,\n 'dnb-date-picker__day--end-date': day.isEndDate,\n 'dnb-date-picker__day--preview': day.isPreview,\n 'dnb-date-picker__day--within-selection': day.isWithinSelection,\n 'dnb-date-picker__day--selectable': day.isSelectable,\n 'dnb-date-picker__day--inactive': day.isInactive,\n 'dnb-date-picker__day--disabled': day.isDisabled,\n 'dnb-date-picker__day--today': day.isToday,\n },\n day.className\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DatePickerCalendar.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_format","_addMonths","_addWeeks","_addDays","_isSameDay","_isSameMonth","_startOfDay","_differenceInCalendarDays","_differenceInMonths","_lastDayOfMonth","_setDate","_DatePickerCalc","_Button","_DatePickerContext","_DatePickerCalendarNavigator","_DateFormatUtils","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","defaultProps","hideNavigation","hideDays","onlyMonth","hideNextMonthWeek","noAutoFocus","rtl","resetDate","arrowKeys","keysToHandle","DatePickerCalendar","restOfProps","props","updateDates","setHasClickedCalendarDay","startDate","endDate","maxDate","minDate","startMonth","endMonth","hoverDate","setHoverDate","setSubmittedDates","onDaysRender","yearNavigation","translation","DatePicker","firstDay","defaultFirstDayOfWeek","selectedMonth","useContext","DatePickerContext","id","nr","month","isRange","firstDayOfWeek","locale","onSelect","onKeyDown","tableRef","useRef","days","cache","useEffect","current","focus","preventScroll","onMouseLeaveHandler","useCallback","undefined","callOnSelect","event","getDays","daysFromCalendar","getCalendar","Date","dayOffset","map","date","makeDayObject","changedDays","Array","isArray","format","keyNavCalc","keyCode","includes","dateHandler","test","addDays","addWeeks","shiftAmount","findValid","foundDate","find","cur","isSameDay","isDisabled","isSelectable","isInactive","nextDate","hasReachedEnd","onKeyDownHandler","pressedKey","code","preventDefault","persist","currentDates","dateType","currentDate","newDate","addMonths","hidePicker","dates","currentMonth","Math","abs","differenceInMonths","setDate","lastDayOfMonth","isSameMonth","cacheKey","useMemo","join","weekDays","count","reduce","acc","values","createElement","className","lang","DatePickerCalendarNav","type","title","replace","formatDate","options","tabIndex","role","onMouseLeave","ref","getWeek","day","key","scope","weekday","substring","week","year","handleAsDisabled","isLastMonth","isNextMonth","isStartDate","isEndDate","isSelectedDate","paramsCell","paramsButton","classnames","buildDayClassNames","size","variant","text","getDate","bounding","disabled","on_click","_ref","onSelectRange","state","onMouseOver","onHoverDay","onFocus","_default","exports","_ref2","startOfDay","daysToStartDate","differenceInCalendarDays","daysToEndDate","range","toRange","_ref3","isPreview","isWithinSelection","isToday"],"sources":["../../../../src/components/date-picker/DatePickerCalendar.tsx"],"sourcesContent":["/**\n * Web DatePicker Component\n *\n */\n\nimport React, {\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useRef,\n} from 'react'\nimport classnames from 'classnames'\n\n// date-fns\nimport format from 'date-fns/format'\nimport addMonths from 'date-fns/addMonths'\nimport addWeeks from 'date-fns/addWeeks'\nimport addDays from 'date-fns/addDays'\nimport isSameDay from 'date-fns/isSameDay'\nimport isSameMonth from 'date-fns/isSameMonth'\nimport startOfDay from 'date-fns/startOfDay'\nimport differenceInCalendarDays from 'date-fns/differenceInCalendarDays'\nimport differenceInMonths from 'date-fns/differenceInMonths'\nimport lastDayOfMonth from 'date-fns/lastDayOfMonth'\nimport setDate from 'date-fns/setDate'\n\nimport {\n isDisabled,\n makeDayObject,\n toRange,\n getWeek,\n dayOffset,\n getCalendar,\n} from './DatePickerCalc'\nimport Button, { ButtonProps } from '../button/Button'\nimport DatePickerContext, {\n DatePickerContextValues,\n} from './DatePickerContext'\nimport { InternalLocale } from '../../shared/Context'\nimport { DatePickerChangeEvent } from './DatePickerProvider'\nimport { DatePickerDates } from './hooks/useDates'\nimport {\n CalendarNavButtonProps,\n DatePickerCalendarNav,\n} from './DatePickerCalendarNavigator'\nimport { formatDate } from '../date-format/DateFormatUtils'\n\nexport type CalendarDay = {\n date: Date\n isDisabled?: boolean\n isEndDate?: boolean\n isInactive?: boolean\n isLastMonth?: boolean\n isNextMonth?: boolean\n isPreview?: boolean\n isSelectable?: boolean\n isStartDate?: boolean\n isToday?: boolean\n isWithinSelection?: boolean\n className?: string\n}\n\nexport type CalendarNavigationEvent = {\n nr: number\n type?: CalendarNavButtonProps['type']\n}\n\nexport type DatePickerCalendarProps = Omit<\n React.HTMLProps<HTMLElement>,\n 'onSelect' | 'onChange'\n> & {\n id?: string\n nr?: number\n /**\n * To display what month should be shown in the first calendar by default. Defaults to the `date` respective `startDate`.\n */\n month?: Date\n hoverDate?: Date\n firstDayOfWeek?: string\n hideNavigation?: boolean\n hideDays?: boolean\n onlyMonth?: boolean\n hideNextMonthWeek?: boolean\n noAutoFocus?: boolean\n onSelect?: (\n event: DatePickerChangeEvent<\n | React.MouseEvent<HTMLSpanElement>\n | React.KeyboardEvent<HTMLTableElement | HTMLButtonElement>\n >\n ) => void\n onKeyDown?: (\n event: React.KeyboardEvent<HTMLTableElement | HTMLButtonElement>,\n tableRef: React.MutableRefObject<HTMLTableElement>,\n nr: number\n ) => void\n /**\n * To define the locale used in the calendar. Needs to be an `date-fns` \"v2\" locale object, like `import enLocale from &#39;date-fns/locale/en-GB&#39;`. Defaults to `nb-NO`.\n */\n locale?: InternalLocale\n rtl?: boolean\n isRange?: boolean\n resetDate?: boolean\n}\n\ntype DayObject = {\n date: Date\n isToday: boolean\n isLastMonth: boolean\n isNextMonth: boolean\n isStartDate: boolean\n isEndDate: boolean\n isWithinSelection: boolean\n isPreview: boolean\n isDisabled: boolean\n isSelectable: boolean\n isInactive: boolean\n className?: string\n}\n\nconst defaultProps: DatePickerCalendarProps = {\n hideNavigation: false,\n hideDays: false,\n onlyMonth: false,\n hideNextMonthWeek: false,\n noAutoFocus: false,\n rtl: false,\n resetDate: true,\n}\n\nconst arrowKeys = ['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown']\nconst keysToHandle = ['Enter', 'Space', ...arrowKeys]\n\nfunction DatePickerCalendar(restOfProps: DatePickerCalendarProps) {\n const props = { ...defaultProps, ...restOfProps }\n\n const {\n updateDates,\n setHasClickedCalendarDay,\n startDate,\n endDate,\n maxDate,\n minDate,\n startMonth,\n endMonth,\n hoverDate,\n setHoverDate,\n setSubmittedDates,\n props: { onDaysRender, yearNavigation },\n translation: {\n DatePicker: { firstDay: defaultFirstDayOfWeek, selectedMonth },\n },\n } = useContext(DatePickerContext)\n\n const {\n id,\n nr,\n rtl,\n month,\n isRange,\n firstDayOfWeek = defaultFirstDayOfWeek,\n hideNavigation,\n locale,\n hideDays,\n onSelect,\n onKeyDown,\n resetDate,\n noAutoFocus,\n hideNextMonthWeek,\n onlyMonth,\n } = props\n\n const tableRef = useRef<React.ElementRef<'table'>>()\n const days = useRef<Record<string, Array<CalendarDay>>>({})\n const cache = useRef<Record<string, CalendarDay[][]>>({})\n\n useEffect(() => {\n if (!noAutoFocus && nr === 0) {\n if (tableRef.current) {\n tableRef.current.focus({ preventScroll: true })\n }\n }\n }, [noAutoFocus, nr])\n\n // Store the initial selected date on calendar render, to be used for `onCancel` in DatePickerFooter\n useEffect(() => {\n setSubmittedDates({ startDate, endDate })\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n const onMouseLeaveHandler = useCallback(() => {\n setHoverDate(undefined)\n }, [setHoverDate])\n\n const callOnSelect = useCallback(\n (\n event: DatePickerChangeEvent<\n | React.MouseEvent<HTMLSpanElement>\n | React.KeyboardEvent<HTMLTableElement>\n > &\n DatePickerDates\n ) => {\n onSelect?.(event)\n },\n [onSelect]\n )\n\n const getDays = useCallback(\n (month: Date): DayObject[] => {\n let daysFromCalendar = getCalendar(\n month || new Date(),\n dayOffset(firstDayOfWeek),\n {\n onlyMonth,\n hideNextMonthWeek,\n }\n ).map((date) =>\n makeDayObject(date, {\n startDate,\n endDate,\n hoverDate,\n minDate,\n maxDate,\n month,\n })\n )\n\n if (onDaysRender) {\n const changedDays = onDaysRender(daysFromCalendar, nr)\n if (Array.isArray(changedDays)) {\n daysFromCalendar = changedDays\n }\n }\n\n // Save for later check against disabled days during key navigation\n days.current[format(month, 'yyyy-MM')] = daysFromCalendar\n\n return daysFromCalendar\n },\n [\n endDate,\n firstDayOfWeek,\n hideNextMonthWeek,\n hoverDate,\n maxDate,\n minDate,\n nr,\n onDaysRender,\n onlyMonth,\n startDate,\n ]\n )\n\n const keyNavCalc = useCallback((date: Date, keyCode: string) => {\n // Return date if arrow keys are not pressed\n if (!arrowKeys.includes(keyCode)) {\n return date\n }\n\n const dateHandler = /(ArrowLeft|ArrowRight)/g.test(keyCode)\n ? addDays\n : addWeeks\n const shiftAmount = /(ArrowLeft|ArrowUp)/g.test(keyCode) ? -1 : 1\n\n return dateHandler(date, shiftAmount)\n }, [])\n\n const findValid = useCallback(\n (date: Date, keyCode: string) => {\n if (!onDaysRender || !days.current) {\n return date\n }\n\n const month = format(date, 'yyyy-MM')\n\n // re-render with new month\n if (!days.current[month]) {\n getDays(date)\n }\n\n if (Array.isArray(days.current[month])) {\n const foundDate = days.current[month].find((cur) =>\n isSameDay(cur.date, date)\n )\n\n if (\n foundDate?.date &&\n (foundDate.isDisabled ||\n foundDate.isSelectable === false ||\n foundDate.isInactive)\n ) {\n const nextDate = keyNavCalc(foundDate.date, keyCode)\n return findValid(nextDate, keyCode)\n }\n\n if (foundDate?.date) {\n return foundDate.date\n }\n }\n\n return date\n },\n [onDaysRender, getDays, keyNavCalc]\n )\n\n const hasReachedEnd = useCallback(\n (date: Date) => isDisabled(date, minDate, maxDate),\n [minDate, maxDate]\n )\n\n const onKeyDownHandler = useCallback(\n (event: React.KeyboardEvent<HTMLTableElement>) => {\n const pressedKey = event.code\n\n // call onKeyDown prop if given\n if (typeof onKeyDown === 'function') {\n return onKeyDown(event, tableRef, nr)\n }\n\n // only continue of key is one of these\n if (!keysToHandle.includes(pressedKey)) {\n return\n }\n event.preventDefault()\n event.persist() // since we use the event after updateDates\n\n const currentDates = { startDate, endDate, startMonth, endMonth }\n const dateType = !isRange || nr === 0 ? 'start' : 'end'\n const currentDate = currentDates[`${dateType}Date`]\n\n let newDate = currentDate\n ? keyNavCalc(currentDate, pressedKey)\n : currentDates[`${dateType}Month`] ||\n (isRange && nr === 1 ? addMonths(new Date(), 1) : new Date())\n\n if (\n newDate === currentDate &&\n (pressedKey === 'Enter' || pressedKey === 'Space')\n ) {\n return callOnSelect({\n event,\n nr,\n hidePicker: true,\n })\n }\n\n const dates: {\n startDate?: Date\n endDate?: Date\n startMonth?: Date\n endMonth?: Date\n } = {}\n\n const currentMonth = currentDates[`${dateType}Month`]\n\n if (\n // in case we don't have a start/end date, then we use the current month date\n (currentMonth && !currentDate) ||\n // if we have a larger gap between the new date and the current month in the calendar\n (currentMonth &&\n Math.abs(differenceInMonths(newDate, currentMonth)) > 1)\n ) {\n newDate = !isRange\n ? currentMonth\n : nr === 0\n ? setDate(currentMonth, 1)\n : lastDayOfMonth(currentMonth)\n\n // only to make sure we navigate the calendar to the new date\n } else if (currentMonth && !isSameMonth(currentDate, currentMonth)) {\n dates[`${dateType}Month`] = newDate\n }\n\n newDate = findValid(newDate, pressedKey)\n\n if (hasReachedEnd(newDate)) {\n return // Stop here\n }\n\n dates[`${dateType}Date`] = newDate\n\n // set fallbacks\n if (!isRange) {\n dates.endDate = newDate\n } else {\n if (!startDate) {\n dates.startDate = newDate\n }\n if (!endDate) {\n dates.endDate = newDate\n }\n }\n\n // make sure we stay on the same month\n if (onlyMonth || hideNavigation) {\n if (\n !isSameMonth(dates.startDate, startDate) ||\n !isSameMonth(dates.endDate, startDate) // Heads up, should this not be context.endDate?\n ) {\n return\n }\n }\n\n updateDates(dates, () => {\n // call after state update, so the input get's the latest state as well\n callOnSelect({\n event,\n nr,\n hidePicker: false,\n ...dates,\n })\n })\n\n // and set the focus back again\n if (tableRef && tableRef.current) {\n tableRef.current.focus({ preventScroll: true })\n }\n },\n [\n callOnSelect,\n findValid,\n hasReachedEnd,\n onKeyDown,\n startDate,\n endDate,\n updateDates,\n hideNavigation,\n isRange,\n keyNavCalc,\n nr,\n onlyMonth,\n endMonth,\n startMonth,\n ]\n )\n\n const cacheKey = useMemo(() => {\n return [\n nr,\n month,\n firstDayOfWeek,\n onlyMonth,\n hideNextMonthWeek,\n startDate,\n endDate,\n hoverDate,\n maxDate,\n minDate,\n ].join('|')\n }, [\n nr,\n month,\n firstDayOfWeek,\n onlyMonth,\n hideNextMonthWeek,\n startDate,\n endDate,\n hoverDate,\n maxDate,\n minDate,\n ])\n\n const weekDays = useMemo(() => {\n // Cache the result, just because we then avoid at least double calc because of reconciliation,\n // but we do not avoid calculating every day during hover or select\n\n if (cache.current[cacheKey]) {\n return cache.current[cacheKey]\n }\n\n let count = 0\n\n const days = getDays(month).reduce((acc, cur, i) => {\n // Normalize the data for table consumption\n acc[count] = acc[count] || []\n acc[count].push(cur)\n if (i % 7 === 6) {\n count++\n }\n\n return acc\n }, {})\n\n cache.current[cacheKey] = Object.values(days)\n\n return cache.current[cacheKey]\n }, [cacheKey, getDays, month])\n\n return (\n <div\n className={classnames('dnb-date-picker__calendar', rtl && 'rtl')}\n lang={locale}\n >\n {!hideNavigation && !onlyMonth && (\n <div className=\"dnb-date-picker__header\">\n <DatePickerCalendarNav\n type={yearNavigation ? 'month' : 'both'}\n id={id}\n nr={nr}\n date={month}\n locale={locale}\n />\n {yearNavigation && (\n <DatePickerCalendarNav\n type=\"year\"\n id={id}\n nr={nr}\n date={month}\n locale={locale}\n />\n )}\n </div>\n )}\n {onlyMonth && (\n <div className=\"dnb-date-picker__header dnb-date-picker__header--only-month-label\">\n <label\n id={`${id}--title`}\n className=\"dnb-date-picker__header__title dnb-no-focus\"\n title={selectedMonth.replace(\n /%s/,\n formatDate(month, {\n locale,\n options: { month: 'long' },\n })\n )}\n tabIndex={-1}\n >\n {formatDate(month, {\n locale,\n options: { month: 'long' },\n })}\n </label>\n </div>\n )}\n <table\n role=\"grid\"\n className=\"dnb-no-focus\"\n tabIndex={0}\n aria-labelledby={`${id}--title`}\n onKeyDown={onKeyDownHandler}\n onMouseLeave={onMouseLeaveHandler}\n ref={tableRef}\n >\n {!hideDays && !onlyMonth && (\n <thead aria-hidden>\n <tr role=\"row\" className=\"dnb-date-picker__labels\">\n {getWeek(dayOffset(firstDayOfWeek)).map((day, i) => (\n <th\n key={i}\n role=\"columnheader\"\n scope=\"col\"\n className=\"dnb-date-picker__labels__day\"\n aria-label={formatDate(day, {\n locale,\n options: { weekday: 'long' },\n })}\n >\n {formatDate(day, {\n locale,\n options: { weekday: 'short' },\n }).substring(0, 2)}\n </th>\n ))}\n </tr>\n </thead>\n )}\n <tbody>\n {weekDays.map((week, i) => {\n return (\n <tr\n key={'week' + i}\n role=\"row\"\n className=\"dnb-date-picker__days\"\n >\n {week.map((day: DayObject, i) => {\n const title = formatDate(day.date, {\n locale,\n options: {\n weekday: 'long',\n day: 'numeric',\n month: 'long',\n year: 'numeric',\n },\n })\n\n const handleAsDisabled =\n day.isLastMonth ||\n day.isNextMonth ||\n day.isDisabled ||\n day.isInactive\n\n const dateType = day.isStartDate\n ? 'start'\n : day.isEndDate\n ? 'end'\n : undefined\n const isSelectedDate =\n nr === 0 ? day.isStartDate : day.isEndDate\n\n // cell params\n const paramsCell = {\n tabIndex: -1,\n ...(dateType && { id: `${id}--button-${dateType}` }),\n ...(isSelectedDate && { ['aria-selected']: true }),\n } as React.HTMLProps<HTMLTableCellElement>\n\n // cell + button params\n const paramsButton = {\n ...(isSelectedDate && { ['aria-current']: 'date' }),\n } as ButtonProps\n\n return (\n <td\n key={'day' + i}\n role=\"gridcell\"\n className={classnames(\n 'dnb-date-picker__day',\n 'dnb-no-focus',\n buildDayClassNames(day)\n )}\n {...paramsCell}\n >\n <Button\n size=\"medium\"\n variant=\"secondary\"\n text={day.date.getDate()}\n bounding={true}\n disabled={handleAsDisabled}\n tabIndex={handleAsDisabled ? 0 : -1} // fix for NVDA\n aria-disabled={handleAsDisabled}\n aria-label={title}\n {...paramsButton}\n on_click={\n handleAsDisabled\n ? undefined\n : ({ event }) =>\n onSelectRange({\n day,\n isRange,\n startDate,\n endDate,\n resetDate,\n event,\n setHasClickedCalendarDay,\n onSelect: (state) => {\n updateDates(state, (dates) =>\n callOnSelect({\n ...dates,\n event,\n nr,\n hidePicker: !isRange,\n })\n )\n },\n })\n }\n onMouseOver={\n handleAsDisabled\n ? undefined\n : () =>\n onHoverDay({\n day,\n hoverDate,\n setHoverDate,\n })\n }\n onFocus={\n handleAsDisabled\n ? undefined\n : () =>\n onHoverDay({\n day,\n hoverDate,\n setHoverDate,\n })\n }\n />\n </td>\n )\n })}\n </tr>\n )\n })}\n </tbody>\n </table>\n </div>\n )\n}\n\nexport default DatePickerCalendar\n\ntype SelectRangeEvent = Pick<\n DatePickerContextValues,\n 'setHasClickedCalendarDay'\n> & {\n day: DayObject\n event?: React.MouseEvent<HTMLButtonElement>\n startDate?: Date\n endDate?: Date\n resetDate?: boolean\n isRange?: boolean\n onSelect?: DatePickerCalendarProps['onSelect']\n}\n\nfunction onSelectRange({\n day,\n isRange,\n startDate,\n endDate,\n onSelect,\n resetDate,\n event,\n setHasClickedCalendarDay,\n}: SelectRangeEvent) {\n event.persist()\n\n if (!isRange) {\n // set only date\n return onSelect({\n startDate: startOfDay(day.date),\n endDate: startOfDay(day.date),\n event,\n })\n\n // for setting date new on every selection, do this here\n }\n\n // Set to true to stop calendar views from changing in range mode when clicking a day\n setHasClickedCalendarDay(true)\n\n if (!startDate || (resetDate && startDate && endDate)) {\n // set startDate\n // user is selecting startDate\n return onSelect({\n startDate: startOfDay(day.date),\n endDate: undefined,\n event,\n })\n }\n\n // set either startDate or endDate\n const daysToStartDate = Math.abs(\n differenceInCalendarDays(startDate, day.date)\n )\n const daysToEndDate = Math.abs(\n differenceInCalendarDays(endDate, day.date)\n )\n\n const range = toRange(\n endDate && !resetDate && daysToStartDate < daysToEndDate\n ? endDate\n : startDate,\n day.date\n )\n\n return onSelect({\n startDate: startOfDay(range.startDate),\n endDate: startOfDay(range.endDate),\n event,\n })\n}\n\nfunction onHoverDay({\n day,\n hoverDate,\n setHoverDate,\n}: {\n day: CalendarDay\n hoverDate?: Date\n setHoverDate: (date: Date) => void\n}) {\n if (!isSameDay(day.date, hoverDate)) {\n setHoverDate?.(day.date)\n }\n}\n\nfunction buildDayClassNames(day: DayObject) {\n return classnames(\n {\n 'dnb-date-picker__day--start-date': day.isStartDate,\n 'dnb-date-picker__day--end-date': day.isEndDate,\n 'dnb-date-picker__day--preview': day.isPreview,\n 'dnb-date-picker__day--within-selection': day.isWithinSelection,\n 'dnb-date-picker__day--selectable': day.isSelectable,\n 'dnb-date-picker__day--inactive': day.isInactive,\n 'dnb-date-picker__day--disabled': day.isDisabled,\n 'dnb-date-picker__day--today': day.isToday,\n },\n day.className\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -12,7 +12,7 @@ var _dateFns = require("date-fns");
12
12
  var _Button = _interopRequireDefault(require("../Button"));
13
13
  var _shared = require("../../shared");
14
14
  var _DatePickerContext = _interopRequireDefault(require("./DatePickerContext"));
15
- var _DatePickerCalc = require("./DatePickerCalc");
15
+ var _DateFormatUtils = require("../date-format/DateFormatUtils");
16
16
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
17
17
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
18
18
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -100,14 +100,14 @@ function DatePickerCalendarNav(_ref) {
100
100
  })), _react.default.createElement("label", {
101
101
  id: `${id}--title`,
102
102
  className: "dnb-date-picker__header__title dnb-no-focus",
103
- title: title.replace(/%s/, (0, _DatePickerCalc.formatDate)(date, {
103
+ title: title.replace(/%s/, (0, _DateFormatUtils.formatDate)(date, {
104
104
  locale,
105
- formatOptions: titleFormat
105
+ options: titleFormat
106
106
  })),
107
107
  tabIndex: -1
108
- }, (0, _DatePickerCalc.formatDate)(date, {
108
+ }, (0, _DateFormatUtils.formatDate)(date, {
109
109
  locale,
110
- formatOptions: titleFormat
110
+ options: titleFormat
111
111
  })), _react.default.createElement("div", {
112
112
  className: "dnb-date-picker__header__nav"
113
113
  }, _react.default.createElement(CalendarNavButton, {
@@ -140,9 +140,9 @@ function CalendarNavButton(_ref3) {
140
140
  const translations = (0, _shared.useTranslation)().DatePicker;
141
141
  const translationKey = `${type}${capitalizeFirstLetter(dateType)}`;
142
142
  const dateHandler = dateHandlers[dateType][type];
143
- const title = translations[translationKey].replace(/%s/, (0, _DatePickerCalc.formatDate)(dateHandler(date, 1), {
143
+ const title = translations[translationKey].replace(/%s/, (0, _DateFormatUtils.formatDate)(dateHandler(date, 1), {
144
144
  locale,
145
- formatOptions: dateFormat
145
+ options: dateFormat
146
146
  }));
147
147
  const disabled = dateLimit && navButtonDisabledHandlers[dateType](date, dateLimit);
148
148
  const icon = type === 'prev' ? 'chevron_left' : 'chevron_right';
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerCalendarNavigator.js","names":["_react","_interopRequireWildcard","require","_dateFns","_Button","_interopRequireDefault","_shared","_DatePickerContext","_DatePickerCalc","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","titleFormats","both","month","year","dateHandlers","prev","subMonths","next","addMonths","subYears","addYears","DatePickerCalendarNav","_ref","type","id","nr","date","locale","minDate","maxDate","views","setViews","props","link","isLinkedCalendars","useContext","DatePickerContext","selectedMonth","selectedYear","useTranslation","DatePicker","title","titleFormat","buttonDateType","onNav","useCallback","_ref2","navigationType","handlerType","updatedViews","map","view","createElement","className","CalendarNavButton","dateLimit","dateType","dateFormat","onClick","replace","formatDate","formatOptions","tabIndex","navButtonDisabledHandlers","isSameMonth","isSameYear","_ref3","onKeyDown","translations","translationKey","capitalizeFirstLetter","dateHandler","disabled","icon","size","charAt","toLocaleUpperCase","slice"],"sources":["../../../../src/components/date-picker/DatePickerCalendarNavigator.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport {\n addMonths,\n addYears,\n isSameMonth,\n isSameYear,\n subMonths,\n subYears,\n} from 'date-fns'\nimport { CalendarNavigationEvent } from './DatePickerCalendar'\nimport classnames from 'classnames'\nimport Button from '../Button'\nimport { useTranslation } from '../../shared'\nimport DatePickerContext from './DatePickerContext'\nimport { InternalLocale } from '../../shared/Context'\nimport { formatDate } from './DatePickerCalc'\n\ntype CalendarNavigationDateType = 'month' | 'year'\ntype CalendarNavigationType = 'both' | CalendarNavigationDateType\n\nexport type DatePickerCalendarNavigationProps = Omit<\n React.HTMLProps<HTMLElement>,\n 'onSelect' | 'onChange'\n> & {\n type: CalendarNavigationType\n id: string\n nr?: number\n /**\n * To display what month should be shown in the first calendar by default. Defaults to the `date` respective `startDate`.\n */\n date?: Date\n\n /**\n * To define the locale used in the calendar. Needs to be an `date-fns` \"v2\" locale object, like `import enLocale from &#39;date-fns/locale/en-GB&#39;`. Defaults to `nb-NO`.\n */\n locale?: InternalLocale\n}\n\ntype TitleFormatMap = {\n // eslint-disable-next-line no-unused-vars\n [T in CalendarNavigationType]: Intl.DateTimeFormatOptions\n}\n\nconst titleFormats: TitleFormatMap = {\n both: {\n month: 'long',\n year: 'numeric',\n },\n month: { month: 'long' },\n year: { year: 'numeric' },\n}\n\ntype CalendarDateHandlers = {\n // eslint-disable-next-line no-unused-vars\n [D in CalendarNavigationDateType]: {\n // eslint-disable-next-line no-unused-vars\n [B in CalendarNavButtonType]: typeof subMonths\n }\n}\n\nconst dateHandlers: CalendarDateHandlers = {\n month: {\n prev: subMonths,\n next: addMonths,\n },\n year: {\n prev: subYears,\n next: addYears,\n },\n}\n\nexport function DatePickerCalendarNav({\n type = 'both',\n id,\n nr,\n date,\n locale,\n}: DatePickerCalendarNavigationProps) {\n const {\n minDate,\n maxDate,\n views,\n setViews,\n props: { link: isLinkedCalendars },\n } = useContext(DatePickerContext)\n const { selectedMonth, selectedYear } = useTranslation().DatePicker\n\n const title = type === 'year' ? selectedYear : selectedMonth\n const titleFormat = titleFormats[type]\n const buttonDateType = type === 'year' ? 'year' : 'month'\n\n const onNav = useCallback(\n ({ nr, type: navigationType }: CalendarNavigationEvent) => {\n const handlerType = type === 'year' ? 'year' : 'month'\n const updatedViews = views.map((view) => {\n if (view.nr === nr || (isLinkedCalendars && view.nr === 1)) {\n const month = dateHandlers[handlerType][navigationType](\n view.month,\n 1\n )\n\n return { ...view, month }\n }\n\n return view\n })\n setViews(updatedViews)\n },\n [type, views, setViews, isLinkedCalendars]\n )\n\n return (\n <div\n className={classnames(\n 'dnb-date-picker__header__row',\n type === 'year' && 'dnb-date-picker__header__row--year'\n )}\n >\n <div className=\"dnb-date-picker__header__nav\">\n <CalendarNavButton\n type=\"prev\"\n nr={nr}\n date={date}\n dateLimit={minDate}\n dateType={buttonDateType}\n dateFormat={titleFormat}\n locale={locale}\n onClick={onNav}\n />\n </div>\n <label\n id={`${id}--title`}\n className=\"dnb-date-picker__header__title dnb-no-focus\"\n title={title.replace(\n /%s/,\n formatDate(date, { locale, formatOptions: titleFormat })\n )}\n tabIndex={-1}\n >\n {formatDate(date, { locale, formatOptions: titleFormat })}\n </label>\n <div className=\"dnb-date-picker__header__nav\">\n <CalendarNavButton\n type=\"next\"\n dateType={buttonDateType}\n nr={nr}\n date={date}\n dateLimit={maxDate}\n dateFormat={titleFormat}\n locale={locale}\n onClick={onNav}\n />\n </div>\n </div>\n )\n}\n\nexport type CalendarNavButtonType = 'prev' | 'next'\n\nexport type CalendarNavButtonProps = {\n dateType: CalendarNavigationDateType\n type: CalendarNavButtonType\n nr: number\n dateFormat: Intl.DateTimeFormatOptions\n date: Date\n dateLimit: Date\n locale: InternalLocale\n onClick: ({\n nr,\n type,\n }: {\n nr: number\n type: CalendarNavButtonProps['type']\n }) => void\n onKeyDown?: (event: React.KeyboardEvent<HTMLButtonElement>) => void\n}\n\ntype NavButtonDisabledHandlerMap = {\n // eslint-disable-next-line no-unused-vars\n [T in CalendarNavigationDateType]: typeof isSameMonth\n}\n\nconst navButtonDisabledHandlers: NavButtonDisabledHandlerMap = {\n month: isSameMonth,\n year: isSameYear,\n}\n\nfunction CalendarNavButton({\n type,\n dateType,\n dateFormat,\n nr,\n date,\n dateLimit,\n locale,\n onClick,\n onKeyDown,\n}: CalendarNavButtonProps) {\n const translations = useTranslation().DatePicker\n\n const translationKey = `${type}${capitalizeFirstLetter(dateType)}`\n const dateHandler = dateHandlers[dateType][type]\n\n const title = translations[translationKey].replace(\n /%s/,\n formatDate(dateHandler(date, 1), {\n locale,\n formatOptions: dateFormat,\n })\n )\n\n const disabled =\n dateLimit && navButtonDisabledHandlers[dateType](date, dateLimit)\n\n const icon = type === 'prev' ? 'chevron_left' : 'chevron_right'\n\n return (\n <Button\n className={classnames(`dnb-date-picker__${type}`, { disabled })}\n icon={icon}\n size=\"small\"\n aria-label={title}\n onClick={() => onClick && !disabled && onClick({ nr, type })}\n onKeyDown={onKeyDown}\n />\n )\n}\n\nfunction capitalizeFirstLetter(value: string) {\n return `${value.charAt(0).toLocaleUpperCase()}${value.slice(1)}`\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DatePickerCalendarNavigator.js","names":["_react","_interopRequireWildcard","require","_dateFns","_Button","_interopRequireDefault","_shared","_DatePickerContext","_DateFormatUtils","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","titleFormats","both","month","year","dateHandlers","prev","subMonths","next","addMonths","subYears","addYears","DatePickerCalendarNav","_ref","type","id","nr","date","locale","minDate","maxDate","views","setViews","props","link","isLinkedCalendars","useContext","DatePickerContext","selectedMonth","selectedYear","useTranslation","DatePicker","title","titleFormat","buttonDateType","onNav","useCallback","_ref2","navigationType","handlerType","updatedViews","map","view","createElement","className","CalendarNavButton","dateLimit","dateType","dateFormat","onClick","replace","formatDate","options","tabIndex","navButtonDisabledHandlers","isSameMonth","isSameYear","_ref3","onKeyDown","translations","translationKey","capitalizeFirstLetter","dateHandler","disabled","icon","size","charAt","toLocaleUpperCase","slice"],"sources":["../../../../src/components/date-picker/DatePickerCalendarNavigator.tsx"],"sourcesContent":["import React, { useCallback, useContext } from 'react'\nimport {\n addMonths,\n addYears,\n isSameMonth,\n isSameYear,\n subMonths,\n subYears,\n} from 'date-fns'\nimport { CalendarNavigationEvent } from './DatePickerCalendar'\nimport classnames from 'classnames'\nimport Button from '../Button'\nimport { useTranslation } from '../../shared'\nimport DatePickerContext from './DatePickerContext'\nimport { InternalLocale } from '../../shared/Context'\nimport { formatDate } from '../date-format/DateFormatUtils'\n\ntype CalendarNavigationDateType = 'month' | 'year'\ntype CalendarNavigationType = 'both' | CalendarNavigationDateType\n\nexport type DatePickerCalendarNavigationProps = Omit<\n React.HTMLProps<HTMLElement>,\n 'onSelect' | 'onChange'\n> & {\n type: CalendarNavigationType\n id: string\n nr?: number\n /**\n * To display what month should be shown in the first calendar by default. Defaults to the `date` respective `startDate`.\n */\n date?: Date\n\n /**\n * To define the locale used in the calendar. Needs to be an `date-fns` \"v2\" locale object, like `import enLocale from &#39;date-fns/locale/en-GB&#39;`. Defaults to `nb-NO`.\n */\n locale?: InternalLocale\n}\n\ntype TitleFormatMap = {\n // eslint-disable-next-line no-unused-vars\n [T in CalendarNavigationType]: Intl.DateTimeFormatOptions\n}\n\nconst titleFormats: TitleFormatMap = {\n both: {\n month: 'long',\n year: 'numeric',\n },\n month: { month: 'long' },\n year: { year: 'numeric' },\n}\n\ntype CalendarDateHandlers = {\n // eslint-disable-next-line no-unused-vars\n [D in CalendarNavigationDateType]: {\n // eslint-disable-next-line no-unused-vars\n [B in CalendarNavButtonType]: typeof subMonths\n }\n}\n\nconst dateHandlers: CalendarDateHandlers = {\n month: {\n prev: subMonths,\n next: addMonths,\n },\n year: {\n prev: subYears,\n next: addYears,\n },\n}\n\nexport function DatePickerCalendarNav({\n type = 'both',\n id,\n nr,\n date,\n locale,\n}: DatePickerCalendarNavigationProps) {\n const {\n minDate,\n maxDate,\n views,\n setViews,\n props: { link: isLinkedCalendars },\n } = useContext(DatePickerContext)\n const { selectedMonth, selectedYear } = useTranslation().DatePicker\n\n const title = type === 'year' ? selectedYear : selectedMonth\n const titleFormat = titleFormats[type]\n const buttonDateType = type === 'year' ? 'year' : 'month'\n\n const onNav = useCallback(\n ({ nr, type: navigationType }: CalendarNavigationEvent) => {\n const handlerType = type === 'year' ? 'year' : 'month'\n const updatedViews = views.map((view) => {\n if (view.nr === nr || (isLinkedCalendars && view.nr === 1)) {\n const month = dateHandlers[handlerType][navigationType](\n view.month,\n 1\n )\n\n return { ...view, month }\n }\n\n return view\n })\n setViews(updatedViews)\n },\n [type, views, setViews, isLinkedCalendars]\n )\n\n return (\n <div\n className={classnames(\n 'dnb-date-picker__header__row',\n type === 'year' && 'dnb-date-picker__header__row--year'\n )}\n >\n <div className=\"dnb-date-picker__header__nav\">\n <CalendarNavButton\n type=\"prev\"\n nr={nr}\n date={date}\n dateLimit={minDate}\n dateType={buttonDateType}\n dateFormat={titleFormat}\n locale={locale}\n onClick={onNav}\n />\n </div>\n <label\n id={`${id}--title`}\n className=\"dnb-date-picker__header__title dnb-no-focus\"\n title={title.replace(\n /%s/,\n formatDate(date, { locale, options: titleFormat })\n )}\n tabIndex={-1}\n >\n {formatDate(date, { locale, options: titleFormat })}\n </label>\n <div className=\"dnb-date-picker__header__nav\">\n <CalendarNavButton\n type=\"next\"\n dateType={buttonDateType}\n nr={nr}\n date={date}\n dateLimit={maxDate}\n dateFormat={titleFormat}\n locale={locale}\n onClick={onNav}\n />\n </div>\n </div>\n )\n}\n\nexport type CalendarNavButtonType = 'prev' | 'next'\n\nexport type CalendarNavButtonProps = {\n dateType: CalendarNavigationDateType\n type: CalendarNavButtonType\n nr: number\n dateFormat: Intl.DateTimeFormatOptions\n date: Date\n dateLimit: Date\n locale: InternalLocale\n onClick: ({\n nr,\n type,\n }: {\n nr: number\n type: CalendarNavButtonProps['type']\n }) => void\n onKeyDown?: (event: React.KeyboardEvent<HTMLButtonElement>) => void\n}\n\ntype NavButtonDisabledHandlerMap = {\n // eslint-disable-next-line no-unused-vars\n [T in CalendarNavigationDateType]: typeof isSameMonth\n}\n\nconst navButtonDisabledHandlers: NavButtonDisabledHandlerMap = {\n month: isSameMonth,\n year: isSameYear,\n}\n\nfunction CalendarNavButton({\n type,\n dateType,\n dateFormat,\n nr,\n date,\n dateLimit,\n locale,\n onClick,\n onKeyDown,\n}: CalendarNavButtonProps) {\n const translations = useTranslation().DatePicker\n\n const translationKey = `${type}${capitalizeFirstLetter(dateType)}`\n const dateHandler = dateHandlers[dateType][type]\n\n const title = translations[translationKey].replace(\n /%s/,\n formatDate(dateHandler(date, 1), {\n locale,\n options: dateFormat,\n })\n )\n\n const disabled =\n dateLimit && navButtonDisabledHandlers[dateType](date, dateLimit)\n\n const icon = type === 'prev' ? 'chevron_left' : 'chevron_right'\n\n return (\n <Button\n className={classnames(`dnb-date-picker__${type}`, { disabled })}\n icon={icon}\n size=\"small\"\n aria-label={title}\n onClick={() => onClick && !disabled && onClick({ nr, type })}\n onKeyDown={onKeyDown}\n />\n )\n}\n\nfunction capitalizeFirstLetter(value: string) {\n return `${value.charAt(0).toLocaleUpperCase()}${value.slice(1)}`\n}\n"],"mappings":"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","ignoreList":[]}
@@ -21,6 +21,7 @@ var _DatePickerContext = _interopRequireDefault(require("./DatePickerContext"));
21
21
  var _shared = require("../../shared");
22
22
  var _usePartialDates = _interopRequireDefault(require("./hooks/usePartialDates"));
23
23
  var _useInputDates = _interopRequireDefault(require("./hooks/useInputDates"));
24
+ var _DateFormatUtils = require("../date-format/DateFormatUtils");
24
25
  var _span;
25
26
  const _excluded = ["isRange", "maskOrder", "separatorRegExp", "id", "title", "submitAttributes", "maskPlaceholder", "onFocus", "onBlur", "onChange", "onSubmit", "selectedDateTitle", "showInput", "inputElement", "lang", "disabled", "skeleton", "opened", "size", "status", "statusState", "statusProps"],
26
27
  _excluded2 = ["is_valid", "is_valid_start_date", "is_valid_end_date"],
@@ -161,7 +162,7 @@ function DatePickerInput(externalProps) {
161
162
  const date = mode === 'end' ? endDate : startDate;
162
163
  if ((0, _isValid.default)(date)) {
163
164
  event.preventDefault();
164
- const valueToCopy = (0, _DatePickerCalc.formatDate)(date, {
165
+ const valueToCopy = (0, _DateFormatUtils.formatDate)(date, {
165
166
  locale
166
167
  });
167
168
  event.clipboardData.setData('text/plain', valueToCopy);