@dnb/eufemia 10.73.2 → 10.75.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 (1269) hide show
  1. package/CHANGELOG.md +56 -0
  2. package/cjs/components/autocomplete/Autocomplete.js +7 -4
  3. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  4. package/cjs/components/autocomplete/AutocompleteDocs.d.ts +289 -3
  5. package/cjs/components/autocomplete/AutocompleteDocs.js +2 -2
  6. package/cjs/components/autocomplete/AutocompleteDocs.js.map +1 -1
  7. package/cjs/components/button/style/dnb-button.css +1 -0
  8. package/cjs/components/button/style/dnb-button.min.css +1 -1
  9. package/cjs/components/button/style/dnb-button.scss +1 -0
  10. package/cjs/components/checkbox/Checkbox.d.ts +9 -1
  11. package/cjs/components/checkbox/Checkbox.js +59 -34
  12. package/cjs/components/checkbox/Checkbox.js.map +1 -1
  13. package/cjs/components/checkbox/CheckboxDocs.js +6 -1
  14. package/cjs/components/checkbox/CheckboxDocs.js.map +1 -1
  15. package/cjs/components/country-flag/CountryFlag.js +6 -3
  16. package/cjs/components/country-flag/CountryFlag.js.map +1 -1
  17. package/cjs/components/date-picker/DatePicker.d.ts +20 -7
  18. package/cjs/components/date-picker/DatePicker.js +11 -22
  19. package/cjs/components/date-picker/DatePicker.js.map +1 -1
  20. package/cjs/components/date-picker/DatePickerCalendar.d.ts +3 -19
  21. package/cjs/components/date-picker/DatePickerCalendar.js +45 -89
  22. package/cjs/components/date-picker/DatePickerCalendar.js.map +1 -1
  23. package/cjs/components/date-picker/DatePickerCalendarNavigator.d.ts +34 -0
  24. package/cjs/components/date-picker/DatePickerCalendarNavigator.js +164 -0
  25. package/cjs/components/date-picker/DatePickerCalendarNavigator.js.map +1 -0
  26. package/cjs/components/date-picker/DatePickerContext.d.ts +4 -0
  27. package/cjs/components/date-picker/DatePickerContext.js.map +1 -1
  28. package/cjs/components/date-picker/DatePickerDocs.js +6 -6
  29. package/cjs/components/date-picker/DatePickerDocs.js.map +1 -1
  30. package/cjs/components/date-picker/DatePickerFooter.js +22 -19
  31. package/cjs/components/date-picker/DatePickerFooter.js.map +1 -1
  32. package/cjs/components/date-picker/DatePickerInput.d.ts +3 -2
  33. package/cjs/components/date-picker/DatePickerInput.js +9 -8
  34. package/cjs/components/date-picker/DatePickerInput.js.map +1 -1
  35. package/cjs/components/date-picker/DatePickerProvider.d.ts +1 -1
  36. package/cjs/components/date-picker/DatePickerProvider.js +23 -15
  37. package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
  38. package/cjs/components/date-picker/DatePickerRange.d.ts +3 -7
  39. package/cjs/components/date-picker/DatePickerRange.js +11 -35
  40. package/cjs/components/date-picker/DatePickerRange.js.map +1 -1
  41. package/cjs/components/date-picker/hooks/useDates.js.map +1 -1
  42. package/cjs/components/date-picker/hooks/useSubmittedDates.d.ts +7 -0
  43. package/cjs/components/date-picker/hooks/useSubmittedDates.js +19 -0
  44. package/cjs/components/date-picker/hooks/useSubmittedDates.js.map +1 -0
  45. package/cjs/components/date-picker/style/dnb-date-picker.css +1 -1
  46. package/cjs/components/date-picker/style/dnb-date-picker.min.css +1 -1
  47. package/cjs/components/date-picker/style/dnb-date-picker.scss +1 -1
  48. package/cjs/components/date-picker/style/themes/dnb-date-picker-theme-ui.css +21 -0
  49. package/cjs/components/date-picker/style/themes/dnb-date-picker-theme-ui.min.css +1 -1
  50. package/cjs/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +24 -0
  51. package/cjs/components/drawer/Drawer.js +1 -0
  52. package/cjs/components/drawer/Drawer.js.map +1 -1
  53. package/cjs/components/dropdown/Dropdown.js +6 -4
  54. package/cjs/components/dropdown/Dropdown.js.map +1 -1
  55. package/cjs/components/dropdown/DropdownDocs.d.ts +179 -3
  56. package/cjs/components/dropdown/DropdownDocs.js.map +1 -1
  57. package/cjs/components/heading/HeadingHelpers.js +9 -5
  58. package/cjs/components/heading/HeadingHelpers.js.map +1 -1
  59. package/cjs/components/icon/Icon.d.ts +2 -2
  60. package/cjs/components/input-masked/InputMaskedDocs.js +1 -1
  61. package/cjs/components/input-masked/InputMaskedDocs.js.map +1 -1
  62. package/cjs/components/input-masked/InputMaskedHooks.d.ts +1 -0
  63. package/cjs/components/input-masked/InputMaskedHooks.js +38 -6
  64. package/cjs/components/input-masked/InputMaskedHooks.js.map +1 -1
  65. package/cjs/components/input-masked/InputMaskedUtils.js +5 -4
  66. package/cjs/components/input-masked/InputMaskedUtils.js.map +1 -1
  67. package/cjs/components/number-format/NumberUtils.d.ts +1 -1
  68. package/cjs/components/number-format/NumberUtils.js +6 -4
  69. package/cjs/components/number-format/NumberUtils.js.map +1 -1
  70. package/cjs/components/switch/SwitchDocs.js +2 -2
  71. package/cjs/components/switch/SwitchDocs.js.map +1 -1
  72. package/cjs/extensions/forms/DataContext/Context.d.ts +1 -1
  73. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  74. package/cjs/extensions/forms/DataContext/Provider/Provider.js +9 -0
  75. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  76. package/cjs/extensions/forms/Field/Boolean/Boolean.d.ts +3 -9
  77. package/cjs/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  78. package/cjs/extensions/forms/Field/Boolean/BooleanDocs.d.ts +1 -0
  79. package/cjs/extensions/forms/Field/Boolean/BooleanDocs.js +8 -1
  80. package/cjs/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
  81. package/cjs/extensions/forms/Field/Date/Date.d.ts +1 -1
  82. package/cjs/extensions/forms/Field/Date/Date.js +1 -1
  83. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  84. package/cjs/extensions/forms/Field/Date/DateDocs.js +2 -1
  85. package/cjs/extensions/forms/Field/Date/DateDocs.js.map +1 -1
  86. package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  87. package/cjs/extensions/forms/Field/Indeterminate/Indeterminate.d.ts +1 -1
  88. package/cjs/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
  89. package/cjs/extensions/forms/Field/Indeterminate/IndeterminateDocs.js +1 -1
  90. package/cjs/extensions/forms/Field/Indeterminate/IndeterminateDocs.js.map +1 -1
  91. package/cjs/extensions/forms/Field/Number/NumberDocs.js +1 -1
  92. package/cjs/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
  93. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +8 -4
  94. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  95. package/cjs/extensions/forms/Field/Provider/useFieldProvider.d.ts +5 -5
  96. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +3 -2
  97. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +20 -13
  98. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  99. package/cjs/extensions/forms/Field/SelectCountry/SelectCountryDocs.js +2 -2
  100. package/cjs/extensions/forms/Field/SelectCountry/SelectCountryDocs.js.map +1 -1
  101. package/cjs/extensions/forms/Field/SelectCountry/useCountries.d.ts +2016 -0
  102. package/cjs/extensions/forms/Field/SelectCountry/useCountries.js +72 -0
  103. package/cjs/extensions/forms/Field/SelectCountry/useCountries.js.map +1 -0
  104. package/cjs/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js +2 -2
  105. package/cjs/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js.map +1 -1
  106. package/cjs/extensions/forms/Field/Selection/Selection.d.ts +2 -0
  107. package/cjs/extensions/forms/Field/Selection/Selection.js +10 -9
  108. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  109. package/cjs/extensions/forms/Field/Toggle/Toggle.d.ts +7 -0
  110. package/cjs/extensions/forms/Field/Toggle/Toggle.js +24 -8
  111. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  112. package/cjs/extensions/forms/Field/Toggle/ToggleDocs.d.ts +1 -0
  113. package/cjs/extensions/forms/Field/Toggle/ToggleDocs.js +8 -1
  114. package/cjs/extensions/forms/Field/Toggle/ToggleDocs.js.map +1 -1
  115. package/cjs/extensions/forms/Form/Isolation/IsolatedContainer.d.ts +4 -0
  116. package/cjs/extensions/forms/Form/Isolation/IsolatedContainer.js +64 -0
  117. package/cjs/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -0
  118. package/cjs/extensions/forms/Form/Isolation/Isolation.d.ts +16 -0
  119. package/cjs/extensions/forms/Form/Isolation/Isolation.js +39 -14
  120. package/cjs/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  121. package/cjs/extensions/forms/Form/Isolation/IsolationCommitButton.js +1 -1
  122. package/cjs/extensions/forms/Form/Isolation/IsolationCommitButton.js.map +1 -1
  123. package/cjs/extensions/forms/Form/Isolation/IsolationContext.d.ts +12 -0
  124. package/cjs/extensions/forms/Form/Isolation/IsolationContext.js +11 -0
  125. package/cjs/extensions/forms/Form/Isolation/IsolationContext.js.map +1 -0
  126. package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +9 -0
  127. package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.js +31 -0
  128. package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -0
  129. package/cjs/extensions/forms/Form/Isolation/IsolationDocs.js +15 -0
  130. package/cjs/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  131. package/cjs/extensions/forms/Form/Isolation/IsolationResetButton.d.ts +7 -0
  132. package/cjs/extensions/forms/Form/Isolation/IsolationResetButton.js +112 -0
  133. package/cjs/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -0
  134. package/cjs/extensions/forms/Form/Isolation/useDataContextSnapshot.d.ts +7 -0
  135. package/cjs/extensions/forms/Form/Isolation/useDataContextSnapshot.js +58 -0
  136. package/cjs/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -0
  137. package/cjs/extensions/forms/Form/Isolation/useHandleStatus.d.ts +9 -0
  138. package/cjs/extensions/forms/Form/Isolation/useHandleStatus.js +57 -0
  139. package/cjs/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -0
  140. package/cjs/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.js +11 -9
  141. package/cjs/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -0
  142. package/cjs/extensions/forms/Form/Snapshot/Snapshot.d.ts +2 -1
  143. package/cjs/extensions/forms/Form/Snapshot/Snapshot.js.map +1 -1
  144. package/cjs/extensions/forms/Iterate/Array/Array.js +19 -6
  145. package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
  146. package/cjs/extensions/forms/Iterate/Array/ArrayDocs.js +10 -0
  147. package/cjs/extensions/forms/Iterate/Array/ArrayDocs.js.map +1 -1
  148. package/cjs/extensions/forms/Iterate/Array/types.d.ts +4 -1
  149. package/cjs/extensions/forms/Iterate/Array/types.js.map +1 -1
  150. package/cjs/extensions/forms/Iterate/EditContainer/ResetButton.js +1 -1
  151. package/cjs/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
  152. package/cjs/extensions/forms/Iterate/EditContainer/index.d.ts +1 -1
  153. package/cjs/extensions/forms/Iterate/EditContainer/index.js +1 -1
  154. package/cjs/extensions/forms/Iterate/EditContainer/index.js.map +1 -1
  155. package/cjs/extensions/forms/Iterate/PushButton/PushButton.js +9 -2
  156. package/cjs/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  157. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +7 -0
  158. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js +24 -58
  159. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  160. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +2 -2
  161. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  162. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js +4 -2
  163. package/cjs/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  164. package/cjs/extensions/forms/Value/SelectCountry/useCountry.js +6 -1
  165. package/cjs/extensions/forms/Value/SelectCountry/useCountry.js.map +1 -1
  166. package/cjs/extensions/forms/Wizard/Container/DisplaySteps.js.map +1 -1
  167. package/cjs/extensions/forms/Wizard/Container/useCollectStepsData.js.map +1 -1
  168. package/cjs/extensions/forms/constants/locales/countries/sv-SE.d.ts +257 -0
  169. package/cjs/extensions/forms/constants/locales/countries/sv-SE.js +263 -0
  170. package/cjs/extensions/forms/constants/locales/countries/sv-SE.js.map +1 -0
  171. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +5 -1
  172. package/cjs/extensions/forms/constants/locales/en-GB.js +7 -3
  173. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
  174. package/cjs/extensions/forms/constants/locales/en-US.d.ts +5 -1
  175. package/cjs/extensions/forms/constants/locales/index.d.ts +10 -2
  176. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +5 -1
  177. package/cjs/extensions/forms/constants/locales/nb-NO.js +7 -3
  178. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  179. package/cjs/extensions/forms/constants/locales/sv-SE.d.ts +5 -1
  180. package/cjs/extensions/forms/constants/locales/sv-SE.js +7 -3
  181. package/cjs/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  182. package/cjs/extensions/forms/hooks/useDataContext.js +5 -3
  183. package/cjs/extensions/forms/hooks/useDataContext.js.map +1 -1
  184. package/cjs/extensions/forms/hooks/useFieldProps.d.ts +2 -1
  185. package/cjs/extensions/forms/hooks/useFieldProps.js +19 -6
  186. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  187. package/cjs/extensions/forms/hooks/usePath.d.ts +4 -1
  188. package/cjs/extensions/forms/hooks/usePath.js +10 -3
  189. package/cjs/extensions/forms/hooks/usePath.js.map +1 -1
  190. package/cjs/extensions/forms/hooks/useSnapshot.js +17 -14
  191. package/cjs/extensions/forms/hooks/useSnapshot.js.map +1 -1
  192. package/cjs/extensions/forms/hooks/useTranslation.d.ts +2 -2
  193. package/cjs/extensions/forms/hooks/useTranslation.js.map +1 -1
  194. package/cjs/extensions/forms/utils/ajv.js +11 -3
  195. package/cjs/extensions/forms/utils/ajv.js.map +1 -1
  196. package/cjs/extensions/payment-card/PaymentCard.d.ts +9 -3
  197. package/cjs/extensions/payment-card/PaymentCard.js +12 -143
  198. package/cjs/extensions/payment-card/PaymentCard.js.map +1 -1
  199. package/cjs/extensions/payment-card/PaymentCardDocs.js +13 -13
  200. package/cjs/extensions/payment-card/PaymentCardDocs.js.map +1 -1
  201. package/cjs/extensions/payment-card/components/CardFigure.d.ts +12 -0
  202. package/cjs/extensions/payment-card/components/CardFigure.js +105 -0
  203. package/cjs/extensions/payment-card/components/CardFigure.js.map +1 -0
  204. package/cjs/extensions/payment-card/components/CardNumber.d.ts +27 -0
  205. package/cjs/extensions/payment-card/components/CardNumber.js +37 -0
  206. package/cjs/extensions/payment-card/components/CardNumber.js.map +1 -0
  207. package/cjs/extensions/payment-card/components/CardType.d.ts +7 -0
  208. package/cjs/extensions/payment-card/components/CardType.js +25 -0
  209. package/cjs/extensions/payment-card/components/CardType.js.map +1 -0
  210. package/cjs/extensions/payment-card/components/StatusOverlay.d.ts +20 -0
  211. package/cjs/extensions/payment-card/components/StatusOverlay.js +68 -0
  212. package/cjs/extensions/payment-card/components/StatusOverlay.js.map +1 -0
  213. package/cjs/extensions/payment-card/icons/brandLogos/DNB.js +24 -0
  214. package/cjs/extensions/payment-card/icons/brandLogos/DNB.js.map +1 -0
  215. package/cjs/extensions/payment-card/icons/brandLogos/Sbanken.js +31 -0
  216. package/cjs/extensions/payment-card/icons/brandLogos/Sbanken.js.map +1 -0
  217. package/cjs/extensions/payment-card/icons/index.d.ts +3 -5
  218. package/cjs/extensions/payment-card/icons/index.js +40 -58
  219. package/cjs/extensions/payment-card/icons/index.js.map +1 -1
  220. package/cjs/extensions/payment-card/icons/loyaltyLogos/Bedrift.js +40 -0
  221. package/cjs/extensions/payment-card/icons/loyaltyLogos/Bedrift.js.map +1 -0
  222. package/cjs/extensions/payment-card/icons/loyaltyLogos/Business.js +43 -0
  223. package/cjs/extensions/payment-card/icons/loyaltyLogos/Business.js.map +1 -0
  224. package/cjs/extensions/payment-card/icons/loyaltyLogos/Corporate.d.ts +3 -0
  225. package/cjs/extensions/payment-card/icons/loyaltyLogos/Corporate.js +52 -0
  226. package/cjs/extensions/payment-card/icons/loyaltyLogos/Corporate.js.map +1 -0
  227. package/cjs/extensions/payment-card/icons/loyaltyLogos/Intro.js +22 -0
  228. package/cjs/extensions/payment-card/icons/loyaltyLogos/Intro.js.map +1 -0
  229. package/cjs/extensions/payment-card/icons/loyaltyLogos/PB.js +61 -0
  230. package/cjs/extensions/payment-card/icons/loyaltyLogos/PB.js.map +1 -0
  231. package/cjs/extensions/payment-card/icons/loyaltyLogos/Pluss.js +29 -0
  232. package/cjs/extensions/payment-card/icons/loyaltyLogos/Pluss.js.map +1 -0
  233. package/cjs/extensions/payment-card/icons/loyaltyLogos/SagaGold.js +22 -0
  234. package/cjs/extensions/payment-card/icons/loyaltyLogos/SagaGold.js.map +1 -0
  235. package/cjs/extensions/payment-card/icons/loyaltyLogos/SagaPlatinum.js +43 -0
  236. package/cjs/extensions/payment-card/icons/loyaltyLogos/SagaPlatinum.js.map +1 -0
  237. package/cjs/extensions/payment-card/icons/loyaltyLogos/WorldElite.d.ts +3 -0
  238. package/cjs/extensions/payment-card/icons/loyaltyLogos/WorldElite.js +22 -0
  239. package/cjs/extensions/payment-card/icons/loyaltyLogos/WorldElite.js.map +1 -0
  240. package/cjs/extensions/payment-card/icons/providers/BankAxept.js +24 -0
  241. package/cjs/extensions/payment-card/icons/providers/BankAxept.js.map +1 -0
  242. package/cjs/extensions/payment-card/icons/providers/ClickToPay.d.ts +3 -0
  243. package/cjs/extensions/payment-card/icons/providers/ClickToPay.js +24 -0
  244. package/cjs/extensions/payment-card/icons/providers/ClickToPay.js.map +1 -0
  245. package/cjs/extensions/payment-card/icons/providers/MastercardDark.js +814 -0
  246. package/cjs/extensions/payment-card/icons/providers/MastercardDark.js.map +1 -0
  247. package/cjs/extensions/payment-card/icons/providers/MastercardDefault.js +37 -0
  248. package/cjs/extensions/payment-card/icons/providers/MastercardDefault.js.map +1 -0
  249. package/cjs/extensions/payment-card/icons/providers/VisaDefault.js +28 -0
  250. package/cjs/extensions/payment-card/icons/providers/VisaDefault.js.map +1 -0
  251. package/cjs/extensions/payment-card/icons/providers/VisaPlatinum.js +28 -0
  252. package/cjs/extensions/payment-card/icons/providers/VisaPlatinum.js.map +1 -0
  253. package/cjs/extensions/payment-card/icons/status/index.d.ts +3 -0
  254. package/cjs/extensions/payment-card/icons/status/index.js +61 -0
  255. package/cjs/extensions/payment-card/icons/status/index.js.map +1 -0
  256. package/cjs/extensions/payment-card/index.d.ts +2 -0
  257. package/cjs/extensions/payment-card/index.js +10 -1
  258. package/cjs/extensions/payment-card/index.js.map +1 -1
  259. package/cjs/extensions/payment-card/style/dnb-payment-card.css +173 -163
  260. package/cjs/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  261. package/cjs/extensions/payment-card/style/dnb-payment-card.scss +257 -242
  262. package/cjs/extensions/payment-card/utils/CardDesigns.d.ts +22 -10
  263. package/cjs/extensions/payment-card/utils/CardDesigns.js +44 -36
  264. package/cjs/extensions/payment-card/utils/CardDesigns.js.map +1 -1
  265. package/cjs/extensions/payment-card/utils/Types.js +2 -0
  266. package/cjs/extensions/payment-card/utils/Types.js.map +1 -1
  267. package/cjs/extensions/payment-card/utils/backgrounds/index.d.ts +6 -2
  268. package/cjs/extensions/payment-card/utils/backgrounds/index.js +31 -3
  269. package/cjs/extensions/payment-card/utils/backgrounds/index.js.map +1 -1
  270. package/cjs/extensions/payment-card/utils/backgrounds/master-gold.d.ts +2 -0
  271. package/cjs/extensions/payment-card/utils/backgrounds/master-gold.js +9 -0
  272. package/cjs/extensions/payment-card/utils/backgrounds/master-gold.js.map +1 -0
  273. package/cjs/extensions/payment-card/utils/backgrounds/my-first.d.ts +1 -1
  274. package/cjs/extensions/payment-card/utils/backgrounds/my-first.js +1 -1
  275. package/cjs/extensions/payment-card/utils/backgrounds/my-first.js.map +1 -1
  276. package/cjs/extensions/payment-card/utils/backgrounds/visa-default.d.ts +2 -0
  277. package/cjs/extensions/payment-card/utils/backgrounds/visa-default.js +9 -0
  278. package/cjs/extensions/payment-card/utils/backgrounds/visa-default.js.map +1 -0
  279. package/cjs/extensions/payment-card/utils/backgrounds/visa-pluss.d.ts +2 -0
  280. package/cjs/extensions/payment-card/utils/backgrounds/visa-pluss.js +9 -0
  281. package/cjs/extensions/payment-card/utils/backgrounds/visa-pluss.js.map +1 -0
  282. package/cjs/extensions/payment-card/utils/backgrounds/visa-saga-gold.d.ts +2 -0
  283. package/cjs/extensions/payment-card/utils/backgrounds/visa-saga-gold.js +9 -0
  284. package/cjs/extensions/payment-card/utils/backgrounds/visa-saga-gold.js.map +1 -0
  285. package/cjs/extensions/payment-card/utils/backgrounds/visa-saga-platinum.d.ts +2 -0
  286. package/cjs/extensions/payment-card/utils/backgrounds/visa-saga-platinum.js +9 -0
  287. package/cjs/extensions/payment-card/utils/backgrounds/visa-saga-platinum.js.map +1 -0
  288. package/cjs/extensions/payment-card/utils/backgrounds/youth.d.ts +1 -1
  289. package/cjs/extensions/payment-card/utils/backgrounds/youth.js +1 -1
  290. package/cjs/extensions/payment-card/utils/backgrounds/youth.js.map +1 -1
  291. package/cjs/extensions/payment-card/utils/cardProducts.d.ts +1 -1
  292. package/cjs/extensions/payment-card/utils/cardProducts.js +241 -209
  293. package/cjs/extensions/payment-card/utils/cardProducts.js.map +1 -1
  294. package/cjs/fragments/drawer-list/DrawerList.d.ts +176 -224
  295. package/cjs/fragments/drawer-list/DrawerList.js +70 -175
  296. package/cjs/fragments/drawer-list/DrawerList.js.map +1 -1
  297. package/cjs/fragments/drawer-list/DrawerListContext.d.ts +27 -2
  298. package/cjs/fragments/drawer-list/DrawerListContext.js.map +1 -1
  299. package/cjs/fragments/drawer-list/DrawerListDocs.d.ts +211 -4
  300. package/cjs/fragments/drawer-list/DrawerListDocs.js +2 -2
  301. package/cjs/fragments/drawer-list/DrawerListDocs.js.map +1 -1
  302. package/cjs/fragments/drawer-list/DrawerListHelpers.d.ts +85 -89
  303. package/cjs/fragments/drawer-list/DrawerListHelpers.js +52 -58
  304. package/cjs/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  305. package/cjs/fragments/drawer-list/DrawerListItem.d.ts +30 -0
  306. package/cjs/fragments/drawer-list/DrawerListItem.js +106 -0
  307. package/cjs/fragments/drawer-list/DrawerListItem.js.map +1 -0
  308. package/cjs/fragments/drawer-list/DrawerListPortal.d.ts +20 -30
  309. package/cjs/fragments/drawer-list/DrawerListPortal.js +93 -125
  310. package/cjs/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  311. package/cjs/fragments/drawer-list/DrawerListProvider.d.ts +217 -11
  312. package/cjs/fragments/drawer-list/DrawerListProvider.js +11 -18
  313. package/cjs/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  314. package/cjs/shared/Context.d.ts +1 -1
  315. package/cjs/shared/Context.js +5 -14
  316. package/cjs/shared/Context.js.map +1 -1
  317. package/cjs/shared/Eufemia.d.ts +1 -1
  318. package/cjs/shared/Eufemia.js +2 -2
  319. package/cjs/shared/Eufemia.js.map +1 -1
  320. package/cjs/shared/Provider.js +15 -24
  321. package/cjs/shared/Provider.js.map +1 -1
  322. package/cjs/shared/component-helper.d.ts +45 -48
  323. package/cjs/shared/component-helper.js +72 -201
  324. package/cjs/shared/component-helper.js.map +1 -1
  325. package/cjs/shared/helpers/withCamelCaseProps.d.ts +4 -5
  326. package/cjs/shared/helpers/withCamelCaseProps.js +7 -2
  327. package/cjs/shared/helpers/withCamelCaseProps.js.map +1 -1
  328. package/cjs/shared/legacy/component-helper-legacy.d.ts +19 -0
  329. package/cjs/shared/legacy/component-helper-legacy.js +202 -0
  330. package/cjs/shared/legacy/component-helper-legacy.js.map +1 -0
  331. package/cjs/shared/locales/en-GB.d.ts +5 -2
  332. package/cjs/shared/locales/en-GB.js +7 -4
  333. package/cjs/shared/locales/en-GB.js.map +1 -1
  334. package/cjs/shared/locales/en-US.d.ts +4 -2
  335. package/cjs/shared/locales/en-US.js.map +1 -1
  336. package/cjs/shared/locales/index.d.ts +10 -4
  337. package/cjs/shared/locales/nb-NO.d.ts +5 -2
  338. package/cjs/shared/locales/nb-NO.js +8 -5
  339. package/cjs/shared/locales/nb-NO.js.map +1 -1
  340. package/cjs/shared/locales/sv-SE.d.ts +5 -2
  341. package/cjs/shared/locales/sv-SE.js +7 -4
  342. package/cjs/shared/locales/sv-SE.js.map +1 -1
  343. package/cjs/shared/useTranslation.d.ts +3 -2
  344. package/cjs/shared/useTranslation.js.map +1 -1
  345. package/cjs/style/core/scopes.scss +1 -1
  346. package/cjs/style/dnb-ui-basis.css +1 -1
  347. package/cjs/style/dnb-ui-basis.min.css +1 -1
  348. package/cjs/style/dnb-ui-body.css +1 -1
  349. package/cjs/style/dnb-ui-body.min.css +1 -1
  350. package/cjs/style/dnb-ui-components.css +2 -1
  351. package/cjs/style/dnb-ui-components.min.css +1 -1
  352. package/cjs/style/dnb-ui-core.css +1 -1
  353. package/cjs/style/dnb-ui-core.min.css +1 -1
  354. package/cjs/style/dnb-ui-extensions.css +173 -163
  355. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  356. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +23 -1
  357. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  358. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +173 -163
  359. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  360. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +23 -1
  361. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  362. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +173 -163
  363. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  364. package/cjs/style/themes/theme-ui/ui-theme-components.css +23 -1
  365. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  366. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +173 -163
  367. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  368. package/components/autocomplete/Autocomplete.js +6 -3
  369. package/components/autocomplete/Autocomplete.js.map +1 -1
  370. package/components/autocomplete/AutocompleteDocs.d.ts +289 -3
  371. package/components/autocomplete/AutocompleteDocs.js +1 -1
  372. package/components/autocomplete/AutocompleteDocs.js.map +1 -1
  373. package/components/button/style/dnb-button.css +1 -0
  374. package/components/button/style/dnb-button.min.css +1 -1
  375. package/components/button/style/dnb-button.scss +1 -0
  376. package/components/checkbox/Checkbox.d.ts +9 -1
  377. package/components/checkbox/Checkbox.js +60 -35
  378. package/components/checkbox/Checkbox.js.map +1 -1
  379. package/components/checkbox/CheckboxDocs.js +6 -1
  380. package/components/checkbox/CheckboxDocs.js.map +1 -1
  381. package/components/country-flag/CountryFlag.js +5 -2
  382. package/components/country-flag/CountryFlag.js.map +1 -1
  383. package/components/date-picker/DatePicker.d.ts +20 -7
  384. package/components/date-picker/DatePicker.js +11 -22
  385. package/components/date-picker/DatePicker.js.map +1 -1
  386. package/components/date-picker/DatePickerCalendar.d.ts +3 -19
  387. package/components/date-picker/DatePickerCalendar.js +45 -89
  388. package/components/date-picker/DatePickerCalendar.js.map +1 -1
  389. package/components/date-picker/DatePickerCalendarNavigator.d.ts +34 -0
  390. package/components/date-picker/DatePickerCalendarNavigator.js +153 -0
  391. package/components/date-picker/DatePickerCalendarNavigator.js.map +1 -0
  392. package/components/date-picker/DatePickerContext.d.ts +4 -0
  393. package/components/date-picker/DatePickerContext.js.map +1 -1
  394. package/components/date-picker/DatePickerDocs.js +6 -6
  395. package/components/date-picker/DatePickerDocs.js.map +1 -1
  396. package/components/date-picker/DatePickerFooter.js +22 -19
  397. package/components/date-picker/DatePickerFooter.js.map +1 -1
  398. package/components/date-picker/DatePickerInput.d.ts +3 -2
  399. package/components/date-picker/DatePickerInput.js +9 -8
  400. package/components/date-picker/DatePickerInput.js.map +1 -1
  401. package/components/date-picker/DatePickerProvider.d.ts +1 -1
  402. package/components/date-picker/DatePickerProvider.js +24 -16
  403. package/components/date-picker/DatePickerProvider.js.map +1 -1
  404. package/components/date-picker/DatePickerRange.d.ts +3 -7
  405. package/components/date-picker/DatePickerRange.js +10 -35
  406. package/components/date-picker/DatePickerRange.js.map +1 -1
  407. package/components/date-picker/hooks/useDates.js.map +1 -1
  408. package/components/date-picker/hooks/useSubmittedDates.d.ts +7 -0
  409. package/components/date-picker/hooks/useSubmittedDates.js +14 -0
  410. package/components/date-picker/hooks/useSubmittedDates.js.map +1 -0
  411. package/components/date-picker/style/dnb-date-picker.css +1 -1
  412. package/components/date-picker/style/dnb-date-picker.min.css +1 -1
  413. package/components/date-picker/style/dnb-date-picker.scss +1 -1
  414. package/components/date-picker/style/themes/dnb-date-picker-theme-ui.css +21 -0
  415. package/components/date-picker/style/themes/dnb-date-picker-theme-ui.min.css +1 -1
  416. package/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +24 -0
  417. package/components/drawer/Drawer.js +1 -0
  418. package/components/drawer/Drawer.js.map +1 -1
  419. package/components/dropdown/Dropdown.js +6 -4
  420. package/components/dropdown/Dropdown.js.map +1 -1
  421. package/components/dropdown/DropdownDocs.d.ts +179 -3
  422. package/components/dropdown/DropdownDocs.js.map +1 -1
  423. package/components/heading/HeadingHelpers.js +9 -5
  424. package/components/heading/HeadingHelpers.js.map +1 -1
  425. package/components/icon/Icon.d.ts +2 -2
  426. package/components/input-masked/InputMaskedDocs.js +1 -1
  427. package/components/input-masked/InputMaskedDocs.js.map +1 -1
  428. package/components/input-masked/InputMaskedHooks.d.ts +1 -0
  429. package/components/input-masked/InputMaskedHooks.js +39 -7
  430. package/components/input-masked/InputMaskedHooks.js.map +1 -1
  431. package/components/input-masked/InputMaskedUtils.js +6 -5
  432. package/components/input-masked/InputMaskedUtils.js.map +1 -1
  433. package/components/number-format/NumberUtils.d.ts +1 -1
  434. package/components/number-format/NumberUtils.js +5 -4
  435. package/components/number-format/NumberUtils.js.map +1 -1
  436. package/components/switch/SwitchDocs.js +2 -2
  437. package/components/switch/SwitchDocs.js.map +1 -1
  438. package/es/components/autocomplete/Autocomplete.js +6 -3
  439. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  440. package/es/components/autocomplete/AutocompleteDocs.d.ts +289 -3
  441. package/es/components/autocomplete/AutocompleteDocs.js +1 -1
  442. package/es/components/autocomplete/AutocompleteDocs.js.map +1 -1
  443. package/es/components/button/style/dnb-button.css +1 -0
  444. package/es/components/button/style/dnb-button.min.css +1 -1
  445. package/es/components/button/style/dnb-button.scss +1 -0
  446. package/es/components/checkbox/Checkbox.d.ts +9 -1
  447. package/es/components/checkbox/Checkbox.js +60 -35
  448. package/es/components/checkbox/Checkbox.js.map +1 -1
  449. package/es/components/checkbox/CheckboxDocs.js +6 -1
  450. package/es/components/checkbox/CheckboxDocs.js.map +1 -1
  451. package/es/components/country-flag/CountryFlag.js +5 -2
  452. package/es/components/country-flag/CountryFlag.js.map +1 -1
  453. package/es/components/date-picker/DatePicker.d.ts +20 -7
  454. package/es/components/date-picker/DatePicker.js +11 -22
  455. package/es/components/date-picker/DatePicker.js.map +1 -1
  456. package/es/components/date-picker/DatePickerCalendar.d.ts +3 -19
  457. package/es/components/date-picker/DatePickerCalendar.js +41 -84
  458. package/es/components/date-picker/DatePickerCalendar.js.map +1 -1
  459. package/es/components/date-picker/DatePickerCalendarNavigator.d.ts +34 -0
  460. package/es/components/date-picker/DatePickerCalendarNavigator.js +149 -0
  461. package/es/components/date-picker/DatePickerCalendarNavigator.js.map +1 -0
  462. package/es/components/date-picker/DatePickerContext.d.ts +4 -0
  463. package/es/components/date-picker/DatePickerContext.js.map +1 -1
  464. package/es/components/date-picker/DatePickerDocs.js +6 -6
  465. package/es/components/date-picker/DatePickerDocs.js.map +1 -1
  466. package/es/components/date-picker/DatePickerFooter.js +22 -19
  467. package/es/components/date-picker/DatePickerFooter.js.map +1 -1
  468. package/es/components/date-picker/DatePickerInput.d.ts +3 -2
  469. package/es/components/date-picker/DatePickerInput.js +9 -8
  470. package/es/components/date-picker/DatePickerInput.js.map +1 -1
  471. package/es/components/date-picker/DatePickerProvider.d.ts +1 -1
  472. package/es/components/date-picker/DatePickerProvider.js +23 -15
  473. package/es/components/date-picker/DatePickerProvider.js.map +1 -1
  474. package/es/components/date-picker/DatePickerRange.d.ts +3 -7
  475. package/es/components/date-picker/DatePickerRange.js +10 -34
  476. package/es/components/date-picker/DatePickerRange.js.map +1 -1
  477. package/es/components/date-picker/hooks/useDates.js.map +1 -1
  478. package/es/components/date-picker/hooks/useSubmittedDates.d.ts +7 -0
  479. package/es/components/date-picker/hooks/useSubmittedDates.js +14 -0
  480. package/es/components/date-picker/hooks/useSubmittedDates.js.map +1 -0
  481. package/es/components/date-picker/style/dnb-date-picker.css +1 -1
  482. package/es/components/date-picker/style/dnb-date-picker.min.css +1 -1
  483. package/es/components/date-picker/style/dnb-date-picker.scss +1 -1
  484. package/es/components/date-picker/style/themes/dnb-date-picker-theme-ui.css +21 -0
  485. package/es/components/date-picker/style/themes/dnb-date-picker-theme-ui.min.css +1 -1
  486. package/es/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +24 -0
  487. package/es/components/drawer/Drawer.js +1 -0
  488. package/es/components/drawer/Drawer.js.map +1 -1
  489. package/es/components/dropdown/Dropdown.js +6 -4
  490. package/es/components/dropdown/Dropdown.js.map +1 -1
  491. package/es/components/dropdown/DropdownDocs.d.ts +179 -3
  492. package/es/components/dropdown/DropdownDocs.js.map +1 -1
  493. package/es/components/heading/HeadingHelpers.js +9 -5
  494. package/es/components/heading/HeadingHelpers.js.map +1 -1
  495. package/es/components/icon/Icon.d.ts +2 -2
  496. package/es/components/input-masked/InputMaskedDocs.js +1 -1
  497. package/es/components/input-masked/InputMaskedDocs.js.map +1 -1
  498. package/es/components/input-masked/InputMaskedHooks.d.ts +1 -0
  499. package/es/components/input-masked/InputMaskedHooks.js +39 -7
  500. package/es/components/input-masked/InputMaskedHooks.js.map +1 -1
  501. package/es/components/input-masked/InputMaskedUtils.js +6 -5
  502. package/es/components/input-masked/InputMaskedUtils.js.map +1 -1
  503. package/es/components/number-format/NumberUtils.d.ts +1 -1
  504. package/es/components/number-format/NumberUtils.js +5 -4
  505. package/es/components/number-format/NumberUtils.js.map +1 -1
  506. package/es/components/switch/SwitchDocs.js +2 -2
  507. package/es/components/switch/SwitchDocs.js.map +1 -1
  508. package/es/extensions/forms/DataContext/Context.d.ts +1 -1
  509. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  510. package/es/extensions/forms/DataContext/Provider/Provider.js +9 -0
  511. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  512. package/es/extensions/forms/Field/Boolean/Boolean.d.ts +3 -9
  513. package/es/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  514. package/es/extensions/forms/Field/Boolean/BooleanDocs.d.ts +1 -0
  515. package/es/extensions/forms/Field/Boolean/BooleanDocs.js +7 -0
  516. package/es/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
  517. package/es/extensions/forms/Field/Date/Date.d.ts +1 -1
  518. package/es/extensions/forms/Field/Date/Date.js +1 -1
  519. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  520. package/es/extensions/forms/Field/Date/DateDocs.js +2 -1
  521. package/es/extensions/forms/Field/Date/DateDocs.js.map +1 -1
  522. package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  523. package/es/extensions/forms/Field/Indeterminate/Indeterminate.d.ts +1 -1
  524. package/es/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
  525. package/es/extensions/forms/Field/Indeterminate/IndeterminateDocs.js +1 -1
  526. package/es/extensions/forms/Field/Indeterminate/IndeterminateDocs.js.map +1 -1
  527. package/es/extensions/forms/Field/Number/NumberDocs.js +1 -1
  528. package/es/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
  529. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +7 -3
  530. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  531. package/es/extensions/forms/Field/Provider/useFieldProvider.d.ts +5 -5
  532. package/es/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +3 -2
  533. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +13 -6
  534. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  535. package/es/extensions/forms/Field/SelectCountry/SelectCountryDocs.js +3 -3
  536. package/es/extensions/forms/Field/SelectCountry/SelectCountryDocs.js.map +1 -1
  537. package/es/extensions/forms/Field/SelectCountry/useCountries.d.ts +2016 -0
  538. package/es/extensions/forms/Field/SelectCountry/useCountries.js +63 -0
  539. package/es/extensions/forms/Field/SelectCountry/useCountries.js.map +1 -0
  540. package/es/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js +3 -3
  541. package/es/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js.map +1 -1
  542. package/es/extensions/forms/Field/Selection/Selection.d.ts +2 -0
  543. package/es/extensions/forms/Field/Selection/Selection.js +9 -8
  544. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  545. package/es/extensions/forms/Field/Toggle/Toggle.d.ts +7 -0
  546. package/es/extensions/forms/Field/Toggle/Toggle.js +24 -6
  547. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  548. package/es/extensions/forms/Field/Toggle/ToggleDocs.d.ts +1 -0
  549. package/es/extensions/forms/Field/Toggle/ToggleDocs.js +7 -0
  550. package/es/extensions/forms/Field/Toggle/ToggleDocs.js.map +1 -1
  551. package/es/extensions/forms/Form/Isolation/IsolatedContainer.d.ts +4 -0
  552. package/es/extensions/forms/Form/Isolation/IsolatedContainer.js +53 -0
  553. package/es/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -0
  554. package/es/extensions/forms/Form/Isolation/Isolation.d.ts +16 -0
  555. package/es/extensions/forms/Form/Isolation/Isolation.js +40 -14
  556. package/es/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  557. package/es/extensions/forms/Form/Isolation/IsolationCommitButton.js +1 -1
  558. package/es/extensions/forms/Form/Isolation/IsolationCommitButton.js.map +1 -1
  559. package/es/extensions/forms/Form/Isolation/IsolationContext.d.ts +12 -0
  560. package/es/extensions/forms/Form/Isolation/IsolationContext.js +6 -0
  561. package/es/extensions/forms/Form/Isolation/IsolationContext.js.map +1 -0
  562. package/es/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +9 -0
  563. package/es/extensions/forms/Form/Isolation/IsolationDataReference.js +25 -0
  564. package/es/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -0
  565. package/es/extensions/forms/Form/Isolation/IsolationDocs.js +15 -0
  566. package/es/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  567. package/es/extensions/forms/Form/Isolation/IsolationResetButton.d.ts +7 -0
  568. package/es/extensions/forms/Form/Isolation/IsolationResetButton.js +99 -0
  569. package/es/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -0
  570. package/es/extensions/forms/Form/Isolation/useDataContextSnapshot.d.ts +7 -0
  571. package/es/extensions/forms/Form/Isolation/useDataContextSnapshot.js +50 -0
  572. package/es/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -0
  573. package/es/extensions/forms/Form/Isolation/useHandleStatus.d.ts +9 -0
  574. package/es/extensions/forms/Form/Isolation/useHandleStatus.js +48 -0
  575. package/es/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -0
  576. package/es/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.js +12 -10
  577. package/es/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -0
  578. package/es/extensions/forms/Form/Snapshot/Snapshot.d.ts +2 -1
  579. package/es/extensions/forms/Form/Snapshot/Snapshot.js.map +1 -1
  580. package/es/extensions/forms/Iterate/Array/Array.js +19 -6
  581. package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
  582. package/es/extensions/forms/Iterate/Array/ArrayDocs.js +10 -0
  583. package/es/extensions/forms/Iterate/Array/ArrayDocs.js.map +1 -1
  584. package/es/extensions/forms/Iterate/Array/types.d.ts +4 -1
  585. package/es/extensions/forms/Iterate/Array/types.js.map +1 -1
  586. package/es/extensions/forms/Iterate/EditContainer/ResetButton.js +1 -1
  587. package/es/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
  588. package/es/extensions/forms/Iterate/EditContainer/index.d.ts +1 -1
  589. package/es/extensions/forms/Iterate/EditContainer/index.js +1 -1
  590. package/es/extensions/forms/Iterate/EditContainer/index.js.map +1 -1
  591. package/es/extensions/forms/Iterate/PushButton/PushButton.js +9 -2
  592. package/es/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  593. package/es/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +7 -0
  594. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js +26 -58
  595. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  596. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +2 -2
  597. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  598. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js +4 -2
  599. package/es/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  600. package/es/extensions/forms/Value/SelectCountry/useCountry.js +6 -1
  601. package/es/extensions/forms/Value/SelectCountry/useCountry.js.map +1 -1
  602. package/es/extensions/forms/Wizard/Container/DisplaySteps.js.map +1 -1
  603. package/es/extensions/forms/Wizard/Container/useCollectStepsData.js.map +1 -1
  604. package/es/extensions/forms/constants/locales/countries/sv-SE.d.ts +257 -0
  605. package/es/extensions/forms/constants/locales/countries/sv-SE.js +257 -0
  606. package/es/extensions/forms/constants/locales/countries/sv-SE.js.map +1 -0
  607. package/es/extensions/forms/constants/locales/en-GB.d.ts +5 -1
  608. package/es/extensions/forms/constants/locales/en-GB.js +7 -3
  609. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
  610. package/es/extensions/forms/constants/locales/en-US.d.ts +5 -1
  611. package/es/extensions/forms/constants/locales/index.d.ts +10 -2
  612. package/es/extensions/forms/constants/locales/nb-NO.d.ts +5 -1
  613. package/es/extensions/forms/constants/locales/nb-NO.js +7 -3
  614. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  615. package/es/extensions/forms/constants/locales/sv-SE.d.ts +5 -1
  616. package/es/extensions/forms/constants/locales/sv-SE.js +7 -3
  617. package/es/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  618. package/es/extensions/forms/hooks/useDataContext.js +5 -3
  619. package/es/extensions/forms/hooks/useDataContext.js.map +1 -1
  620. package/es/extensions/forms/hooks/useFieldProps.d.ts +2 -1
  621. package/es/extensions/forms/hooks/useFieldProps.js +19 -6
  622. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  623. package/es/extensions/forms/hooks/usePath.d.ts +4 -1
  624. package/es/extensions/forms/hooks/usePath.js +10 -4
  625. package/es/extensions/forms/hooks/usePath.js.map +1 -1
  626. package/es/extensions/forms/hooks/useSnapshot.js +18 -15
  627. package/es/extensions/forms/hooks/useSnapshot.js.map +1 -1
  628. package/es/extensions/forms/hooks/useTranslation.d.ts +2 -2
  629. package/es/extensions/forms/hooks/useTranslation.js.map +1 -1
  630. package/es/extensions/forms/utils/ajv.js +11 -3
  631. package/es/extensions/forms/utils/ajv.js.map +1 -1
  632. package/es/extensions/payment-card/PaymentCard.d.ts +9 -3
  633. package/es/extensions/payment-card/PaymentCard.js +9 -133
  634. package/es/extensions/payment-card/PaymentCard.js.map +1 -1
  635. package/es/extensions/payment-card/PaymentCardDocs.js +13 -13
  636. package/es/extensions/payment-card/PaymentCardDocs.js.map +1 -1
  637. package/es/extensions/payment-card/components/CardFigure.d.ts +12 -0
  638. package/es/extensions/payment-card/components/CardFigure.js +94 -0
  639. package/es/extensions/payment-card/components/CardFigure.js.map +1 -0
  640. package/es/extensions/payment-card/components/CardNumber.d.ts +27 -0
  641. package/es/extensions/payment-card/components/CardNumber.js +26 -0
  642. package/es/extensions/payment-card/components/CardNumber.js.map +1 -0
  643. package/es/extensions/payment-card/components/CardType.d.ts +7 -0
  644. package/es/extensions/payment-card/components/CardType.js +17 -0
  645. package/es/extensions/payment-card/components/CardType.js.map +1 -0
  646. package/es/extensions/payment-card/components/StatusOverlay.d.ts +20 -0
  647. package/es/extensions/payment-card/components/StatusOverlay.js +59 -0
  648. package/es/extensions/payment-card/components/StatusOverlay.js.map +1 -0
  649. package/es/extensions/payment-card/icons/brandLogos/DNB.js +17 -0
  650. package/es/extensions/payment-card/icons/brandLogos/DNB.js.map +1 -0
  651. package/es/extensions/payment-card/icons/brandLogos/Sbanken.js +24 -0
  652. package/es/extensions/payment-card/icons/brandLogos/Sbanken.js.map +1 -0
  653. package/es/extensions/payment-card/icons/index.d.ts +3 -5
  654. package/es/extensions/payment-card/icons/index.js +30 -53
  655. package/es/extensions/payment-card/icons/index.js.map +1 -1
  656. package/es/extensions/payment-card/icons/loyaltyLogos/Bedrift.js +33 -0
  657. package/es/extensions/payment-card/icons/loyaltyLogos/Bedrift.js.map +1 -0
  658. package/es/extensions/payment-card/icons/loyaltyLogos/Business.js +36 -0
  659. package/es/extensions/payment-card/icons/loyaltyLogos/Business.js.map +1 -0
  660. package/es/extensions/payment-card/icons/loyaltyLogos/Corporate.d.ts +3 -0
  661. package/es/extensions/payment-card/icons/loyaltyLogos/Corporate.js +45 -0
  662. package/es/extensions/payment-card/icons/loyaltyLogos/Corporate.js.map +1 -0
  663. package/es/extensions/payment-card/icons/loyaltyLogos/Intro.js +15 -0
  664. package/es/extensions/payment-card/icons/loyaltyLogos/Intro.js.map +1 -0
  665. package/es/extensions/payment-card/icons/loyaltyLogos/PB.js +54 -0
  666. package/es/extensions/payment-card/icons/loyaltyLogos/PB.js.map +1 -0
  667. package/es/extensions/payment-card/icons/loyaltyLogos/Pluss.js +22 -0
  668. package/es/extensions/payment-card/icons/loyaltyLogos/Pluss.js.map +1 -0
  669. package/es/extensions/payment-card/icons/loyaltyLogos/SagaGold.js +15 -0
  670. package/es/extensions/payment-card/icons/loyaltyLogos/SagaGold.js.map +1 -0
  671. package/es/extensions/payment-card/icons/loyaltyLogos/SagaPlatinum.js +36 -0
  672. package/es/extensions/payment-card/icons/loyaltyLogos/SagaPlatinum.js.map +1 -0
  673. package/es/extensions/payment-card/icons/loyaltyLogos/WorldElite.d.ts +3 -0
  674. package/es/extensions/payment-card/icons/loyaltyLogos/WorldElite.js +15 -0
  675. package/es/extensions/payment-card/icons/loyaltyLogos/WorldElite.js.map +1 -0
  676. package/es/extensions/payment-card/icons/providers/BankAxept.js +17 -0
  677. package/es/extensions/payment-card/icons/providers/BankAxept.js.map +1 -0
  678. package/es/extensions/payment-card/icons/providers/ClickToPay.d.ts +3 -0
  679. package/es/extensions/payment-card/icons/providers/ClickToPay.js +17 -0
  680. package/es/extensions/payment-card/icons/providers/ClickToPay.js.map +1 -0
  681. package/es/extensions/payment-card/icons/providers/MastercardDark.js +807 -0
  682. package/es/extensions/payment-card/icons/providers/MastercardDark.js.map +1 -0
  683. package/es/extensions/payment-card/icons/providers/MastercardDefault.js +30 -0
  684. package/es/extensions/payment-card/icons/providers/MastercardDefault.js.map +1 -0
  685. package/es/extensions/payment-card/icons/providers/VisaDefault.js +21 -0
  686. package/es/extensions/payment-card/icons/providers/VisaDefault.js.map +1 -0
  687. package/es/extensions/payment-card/icons/providers/VisaPlatinum.js +21 -0
  688. package/es/extensions/payment-card/icons/providers/VisaPlatinum.js.map +1 -0
  689. package/es/extensions/payment-card/icons/status/index.d.ts +3 -0
  690. package/es/extensions/payment-card/icons/status/index.js +52 -0
  691. package/es/extensions/payment-card/icons/status/index.js.map +1 -0
  692. package/es/extensions/payment-card/index.d.ts +2 -0
  693. package/es/extensions/payment-card/index.js +2 -0
  694. package/es/extensions/payment-card/index.js.map +1 -1
  695. package/es/extensions/payment-card/style/dnb-payment-card.css +173 -163
  696. package/es/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  697. package/es/extensions/payment-card/style/dnb-payment-card.scss +257 -242
  698. package/es/extensions/payment-card/utils/CardDesigns.d.ts +22 -10
  699. package/es/extensions/payment-card/utils/CardDesigns.js +45 -37
  700. package/es/extensions/payment-card/utils/CardDesigns.js.map +1 -1
  701. package/es/extensions/payment-card/utils/Types.js +2 -0
  702. package/es/extensions/payment-card/utils/Types.js.map +1 -1
  703. package/es/extensions/payment-card/utils/backgrounds/index.d.ts +6 -2
  704. package/es/extensions/payment-card/utils/backgrounds/index.js +6 -2
  705. package/es/extensions/payment-card/utils/backgrounds/index.js.map +1 -1
  706. package/es/extensions/payment-card/utils/backgrounds/master-gold.d.ts +2 -0
  707. package/es/extensions/payment-card/utils/backgrounds/master-gold.js +3 -0
  708. package/es/extensions/payment-card/utils/backgrounds/master-gold.js.map +1 -0
  709. package/es/extensions/payment-card/utils/backgrounds/my-first.d.ts +1 -1
  710. package/es/extensions/payment-card/utils/backgrounds/my-first.js +1 -1
  711. package/es/extensions/payment-card/utils/backgrounds/my-first.js.map +1 -1
  712. package/es/extensions/payment-card/utils/backgrounds/visa-default.d.ts +2 -0
  713. package/es/extensions/payment-card/utils/backgrounds/visa-default.js +3 -0
  714. package/es/extensions/payment-card/utils/backgrounds/visa-default.js.map +1 -0
  715. package/es/extensions/payment-card/utils/backgrounds/visa-pluss.d.ts +2 -0
  716. package/es/extensions/payment-card/utils/backgrounds/visa-pluss.js +3 -0
  717. package/es/extensions/payment-card/utils/backgrounds/visa-pluss.js.map +1 -0
  718. package/es/extensions/payment-card/utils/backgrounds/visa-saga-gold.d.ts +2 -0
  719. package/es/extensions/payment-card/utils/backgrounds/visa-saga-gold.js +3 -0
  720. package/es/extensions/payment-card/utils/backgrounds/visa-saga-gold.js.map +1 -0
  721. package/es/extensions/payment-card/utils/backgrounds/visa-saga-platinum.d.ts +2 -0
  722. package/es/extensions/payment-card/utils/backgrounds/visa-saga-platinum.js +3 -0
  723. package/es/extensions/payment-card/utils/backgrounds/visa-saga-platinum.js.map +1 -0
  724. package/es/extensions/payment-card/utils/backgrounds/youth.d.ts +1 -1
  725. package/es/extensions/payment-card/utils/backgrounds/youth.js +1 -1
  726. package/es/extensions/payment-card/utils/backgrounds/youth.js.map +1 -1
  727. package/es/extensions/payment-card/utils/cardProducts.d.ts +1 -1
  728. package/es/extensions/payment-card/utils/cardProducts.js +241 -209
  729. package/es/extensions/payment-card/utils/cardProducts.js.map +1 -1
  730. package/es/fragments/drawer-list/DrawerList.d.ts +176 -224
  731. package/es/fragments/drawer-list/DrawerList.js +72 -173
  732. package/es/fragments/drawer-list/DrawerList.js.map +1 -1
  733. package/es/fragments/drawer-list/DrawerListContext.d.ts +27 -2
  734. package/es/fragments/drawer-list/DrawerListContext.js.map +1 -1
  735. package/es/fragments/drawer-list/DrawerListDocs.d.ts +211 -4
  736. package/es/fragments/drawer-list/DrawerListDocs.js +2 -2
  737. package/es/fragments/drawer-list/DrawerListDocs.js.map +1 -1
  738. package/es/fragments/drawer-list/DrawerListHelpers.d.ts +85 -89
  739. package/es/fragments/drawer-list/DrawerListHelpers.js +45 -54
  740. package/es/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  741. package/es/fragments/drawer-list/DrawerListItem.d.ts +30 -0
  742. package/es/fragments/drawer-list/DrawerListItem.js +90 -0
  743. package/es/fragments/drawer-list/DrawerListItem.js.map +1 -0
  744. package/es/fragments/drawer-list/DrawerListPortal.d.ts +20 -30
  745. package/es/fragments/drawer-list/DrawerListPortal.js +88 -120
  746. package/es/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  747. package/es/fragments/drawer-list/DrawerListProvider.d.ts +217 -11
  748. package/es/fragments/drawer-list/DrawerListProvider.js +33 -19
  749. package/es/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  750. package/es/shared/Context.d.ts +1 -1
  751. package/es/shared/Context.js +5 -14
  752. package/es/shared/Context.js.map +1 -1
  753. package/es/shared/Eufemia.d.ts +1 -1
  754. package/es/shared/Eufemia.js +2 -2
  755. package/es/shared/Eufemia.js.map +1 -1
  756. package/es/shared/Provider.js +15 -24
  757. package/es/shared/Provider.js.map +1 -1
  758. package/es/shared/component-helper.d.ts +45 -48
  759. package/es/shared/component-helper.js +20 -183
  760. package/es/shared/component-helper.js.map +1 -1
  761. package/es/shared/helpers/withCamelCaseProps.d.ts +4 -5
  762. package/es/shared/helpers/withCamelCaseProps.js +7 -2
  763. package/es/shared/helpers/withCamelCaseProps.js.map +1 -1
  764. package/es/shared/legacy/component-helper-legacy.d.ts +19 -0
  765. package/es/shared/legacy/component-helper-legacy.js +180 -0
  766. package/es/shared/legacy/component-helper-legacy.js.map +1 -0
  767. package/es/shared/locales/en-GB.d.ts +5 -2
  768. package/es/shared/locales/en-GB.js +7 -4
  769. package/es/shared/locales/en-GB.js.map +1 -1
  770. package/es/shared/locales/en-US.d.ts +4 -2
  771. package/es/shared/locales/en-US.js.map +1 -1
  772. package/es/shared/locales/index.d.ts +10 -4
  773. package/es/shared/locales/nb-NO.d.ts +5 -2
  774. package/es/shared/locales/nb-NO.js +8 -5
  775. package/es/shared/locales/nb-NO.js.map +1 -1
  776. package/es/shared/locales/sv-SE.d.ts +5 -2
  777. package/es/shared/locales/sv-SE.js +7 -4
  778. package/es/shared/locales/sv-SE.js.map +1 -1
  779. package/es/shared/useTranslation.d.ts +3 -2
  780. package/es/shared/useTranslation.js.map +1 -1
  781. package/es/style/core/scopes.scss +1 -1
  782. package/es/style/dnb-ui-basis.css +1 -1
  783. package/es/style/dnb-ui-basis.min.css +1 -1
  784. package/es/style/dnb-ui-body.css +1 -1
  785. package/es/style/dnb-ui-body.min.css +1 -1
  786. package/es/style/dnb-ui-components.css +2 -1
  787. package/es/style/dnb-ui-components.min.css +1 -1
  788. package/es/style/dnb-ui-core.css +1 -1
  789. package/es/style/dnb-ui-core.min.css +1 -1
  790. package/es/style/dnb-ui-extensions.css +173 -163
  791. package/es/style/dnb-ui-extensions.min.css +1 -1
  792. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +23 -1
  793. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  794. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +173 -163
  795. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  796. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +23 -1
  797. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  798. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +173 -163
  799. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  800. package/es/style/themes/theme-ui/ui-theme-components.css +23 -1
  801. package/es/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  802. package/es/style/themes/theme-ui/ui-theme-extensions.css +173 -163
  803. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  804. package/esm/dnb-ui-basis.min.mjs +1 -1
  805. package/esm/dnb-ui-components.min.mjs +1 -1
  806. package/esm/dnb-ui-elements.min.mjs +1 -1
  807. package/esm/dnb-ui-extensions.min.mjs +3 -3
  808. package/esm/dnb-ui-lib.min.mjs +1 -1
  809. package/extensions/forms/DataContext/Context.d.ts +1 -1
  810. package/extensions/forms/DataContext/Context.js.map +1 -1
  811. package/extensions/forms/DataContext/Provider/Provider.js +9 -0
  812. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  813. package/extensions/forms/Field/Boolean/Boolean.d.ts +3 -9
  814. package/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  815. package/extensions/forms/Field/Boolean/BooleanDocs.d.ts +1 -0
  816. package/extensions/forms/Field/Boolean/BooleanDocs.js +7 -0
  817. package/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
  818. package/extensions/forms/Field/Date/Date.d.ts +1 -1
  819. package/extensions/forms/Field/Date/Date.js +1 -1
  820. package/extensions/forms/Field/Date/Date.js.map +1 -1
  821. package/extensions/forms/Field/Date/DateDocs.js +2 -1
  822. package/extensions/forms/Field/Date/DateDocs.js.map +1 -1
  823. package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  824. package/extensions/forms/Field/Indeterminate/Indeterminate.d.ts +1 -1
  825. package/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
  826. package/extensions/forms/Field/Indeterminate/IndeterminateDocs.js +1 -1
  827. package/extensions/forms/Field/Indeterminate/IndeterminateDocs.js.map +1 -1
  828. package/extensions/forms/Field/Number/NumberDocs.js +1 -1
  829. package/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
  830. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +7 -3
  831. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  832. package/extensions/forms/Field/Provider/useFieldProvider.d.ts +5 -5
  833. package/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +3 -2
  834. package/extensions/forms/Field/SelectCountry/SelectCountry.js +17 -10
  835. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  836. package/extensions/forms/Field/SelectCountry/SelectCountryDocs.js +3 -3
  837. package/extensions/forms/Field/SelectCountry/SelectCountryDocs.js.map +1 -1
  838. package/extensions/forms/Field/SelectCountry/useCountries.d.ts +2016 -0
  839. package/extensions/forms/Field/SelectCountry/useCountries.js +64 -0
  840. package/extensions/forms/Field/SelectCountry/useCountries.js.map +1 -0
  841. package/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js +3 -3
  842. package/extensions/forms/Field/SelectCurrency/SelectCurrencyDocs.js.map +1 -1
  843. package/extensions/forms/Field/Selection/Selection.d.ts +2 -0
  844. package/extensions/forms/Field/Selection/Selection.js +10 -9
  845. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  846. package/extensions/forms/Field/Toggle/Toggle.d.ts +7 -0
  847. package/extensions/forms/Field/Toggle/Toggle.js +26 -9
  848. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  849. package/extensions/forms/Field/Toggle/ToggleDocs.d.ts +1 -0
  850. package/extensions/forms/Field/Toggle/ToggleDocs.js +7 -0
  851. package/extensions/forms/Field/Toggle/ToggleDocs.js.map +1 -1
  852. package/extensions/forms/Form/Isolation/IsolatedContainer.d.ts +4 -0
  853. package/extensions/forms/Form/Isolation/IsolatedContainer.js +54 -0
  854. package/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -0
  855. package/extensions/forms/Form/Isolation/Isolation.d.ts +16 -0
  856. package/extensions/forms/Form/Isolation/Isolation.js +40 -15
  857. package/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  858. package/extensions/forms/Form/Isolation/IsolationCommitButton.js +1 -1
  859. package/extensions/forms/Form/Isolation/IsolationCommitButton.js.map +1 -1
  860. package/extensions/forms/Form/Isolation/IsolationContext.d.ts +12 -0
  861. package/extensions/forms/Form/Isolation/IsolationContext.js +6 -0
  862. package/extensions/forms/Form/Isolation/IsolationContext.js.map +1 -0
  863. package/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +9 -0
  864. package/extensions/forms/Form/Isolation/IsolationDataReference.js +25 -0
  865. package/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -0
  866. package/extensions/forms/Form/Isolation/IsolationDocs.js +15 -0
  867. package/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  868. package/extensions/forms/Form/Isolation/IsolationResetButton.d.ts +7 -0
  869. package/extensions/forms/Form/Isolation/IsolationResetButton.js +100 -0
  870. package/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -0
  871. package/extensions/forms/Form/Isolation/useDataContextSnapshot.d.ts +7 -0
  872. package/extensions/forms/Form/Isolation/useDataContextSnapshot.js +52 -0
  873. package/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -0
  874. package/extensions/forms/Form/Isolation/useHandleStatus.d.ts +9 -0
  875. package/extensions/forms/Form/Isolation/useHandleStatus.js +51 -0
  876. package/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -0
  877. package/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.js +12 -10
  878. package/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -0
  879. package/extensions/forms/Form/Snapshot/Snapshot.d.ts +2 -1
  880. package/extensions/forms/Form/Snapshot/Snapshot.js.map +1 -1
  881. package/extensions/forms/Iterate/Array/Array.js +19 -6
  882. package/extensions/forms/Iterate/Array/Array.js.map +1 -1
  883. package/extensions/forms/Iterate/Array/ArrayDocs.js +10 -0
  884. package/extensions/forms/Iterate/Array/ArrayDocs.js.map +1 -1
  885. package/extensions/forms/Iterate/Array/types.d.ts +4 -1
  886. package/extensions/forms/Iterate/Array/types.js.map +1 -1
  887. package/extensions/forms/Iterate/EditContainer/ResetButton.js +1 -1
  888. package/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
  889. package/extensions/forms/Iterate/EditContainer/index.d.ts +1 -1
  890. package/extensions/forms/Iterate/EditContainer/index.js +1 -1
  891. package/extensions/forms/Iterate/EditContainer/index.js.map +1 -1
  892. package/extensions/forms/Iterate/PushButton/PushButton.js +9 -2
  893. package/extensions/forms/Iterate/PushButton/PushButton.js.map +1 -1
  894. package/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +7 -0
  895. package/extensions/forms/Iterate/PushContainer/PushContainer.js +26 -60
  896. package/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  897. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +2 -2
  898. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  899. package/extensions/forms/Iterate/RemoveButton/RemoveButton.js +4 -2
  900. package/extensions/forms/Iterate/RemoveButton/RemoveButton.js.map +1 -1
  901. package/extensions/forms/Value/SelectCountry/useCountry.js +6 -1
  902. package/extensions/forms/Value/SelectCountry/useCountry.js.map +1 -1
  903. package/extensions/forms/Wizard/Container/DisplaySteps.js.map +1 -1
  904. package/extensions/forms/Wizard/Container/useCollectStepsData.js.map +1 -1
  905. package/extensions/forms/constants/locales/countries/sv-SE.d.ts +257 -0
  906. package/extensions/forms/constants/locales/countries/sv-SE.js +257 -0
  907. package/extensions/forms/constants/locales/countries/sv-SE.js.map +1 -0
  908. package/extensions/forms/constants/locales/en-GB.d.ts +5 -1
  909. package/extensions/forms/constants/locales/en-GB.js +7 -3
  910. package/extensions/forms/constants/locales/en-GB.js.map +1 -1
  911. package/extensions/forms/constants/locales/en-US.d.ts +5 -1
  912. package/extensions/forms/constants/locales/index.d.ts +10 -2
  913. package/extensions/forms/constants/locales/nb-NO.d.ts +5 -1
  914. package/extensions/forms/constants/locales/nb-NO.js +7 -3
  915. package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  916. package/extensions/forms/constants/locales/sv-SE.d.ts +5 -1
  917. package/extensions/forms/constants/locales/sv-SE.js +7 -3
  918. package/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  919. package/extensions/forms/hooks/useDataContext.js +5 -3
  920. package/extensions/forms/hooks/useDataContext.js.map +1 -1
  921. package/extensions/forms/hooks/useFieldProps.d.ts +2 -1
  922. package/extensions/forms/hooks/useFieldProps.js +19 -6
  923. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  924. package/extensions/forms/hooks/usePath.d.ts +4 -1
  925. package/extensions/forms/hooks/usePath.js +10 -3
  926. package/extensions/forms/hooks/usePath.js.map +1 -1
  927. package/extensions/forms/hooks/useSnapshot.js +18 -15
  928. package/extensions/forms/hooks/useSnapshot.js.map +1 -1
  929. package/extensions/forms/hooks/useTranslation.d.ts +2 -2
  930. package/extensions/forms/hooks/useTranslation.js.map +1 -1
  931. package/extensions/forms/utils/ajv.js +11 -3
  932. package/extensions/forms/utils/ajv.js.map +1 -1
  933. package/extensions/payment-card/PaymentCard.d.ts +9 -3
  934. package/extensions/payment-card/PaymentCard.js +9 -139
  935. package/extensions/payment-card/PaymentCard.js.map +1 -1
  936. package/extensions/payment-card/PaymentCardDocs.js +13 -13
  937. package/extensions/payment-card/PaymentCardDocs.js.map +1 -1
  938. package/extensions/payment-card/components/CardFigure.d.ts +12 -0
  939. package/extensions/payment-card/components/CardFigure.js +95 -0
  940. package/extensions/payment-card/components/CardFigure.js.map +1 -0
  941. package/extensions/payment-card/components/CardNumber.d.ts +27 -0
  942. package/extensions/payment-card/components/CardNumber.js +29 -0
  943. package/extensions/payment-card/components/CardNumber.js.map +1 -0
  944. package/extensions/payment-card/components/CardType.d.ts +7 -0
  945. package/extensions/payment-card/components/CardType.js +18 -0
  946. package/extensions/payment-card/components/CardType.js.map +1 -0
  947. package/extensions/payment-card/components/StatusOverlay.d.ts +20 -0
  948. package/extensions/payment-card/components/StatusOverlay.js +60 -0
  949. package/extensions/payment-card/components/StatusOverlay.js.map +1 -0
  950. package/extensions/payment-card/icons/brandLogos/DNB.js +17 -0
  951. package/extensions/payment-card/icons/brandLogos/DNB.js.map +1 -0
  952. package/extensions/payment-card/icons/brandLogos/Sbanken.js +24 -0
  953. package/extensions/payment-card/icons/brandLogos/Sbanken.js.map +1 -0
  954. package/extensions/payment-card/icons/index.d.ts +3 -5
  955. package/extensions/payment-card/icons/index.js +32 -56
  956. package/extensions/payment-card/icons/index.js.map +1 -1
  957. package/extensions/payment-card/icons/loyaltyLogos/Bedrift.js +33 -0
  958. package/extensions/payment-card/icons/loyaltyLogos/Bedrift.js.map +1 -0
  959. package/extensions/payment-card/icons/loyaltyLogos/Business.js +36 -0
  960. package/extensions/payment-card/icons/loyaltyLogos/Business.js.map +1 -0
  961. package/extensions/payment-card/icons/loyaltyLogos/Corporate.d.ts +3 -0
  962. package/extensions/payment-card/icons/loyaltyLogos/Corporate.js +45 -0
  963. package/extensions/payment-card/icons/loyaltyLogos/Corporate.js.map +1 -0
  964. package/extensions/payment-card/icons/loyaltyLogos/Intro.js +15 -0
  965. package/extensions/payment-card/icons/loyaltyLogos/Intro.js.map +1 -0
  966. package/extensions/payment-card/icons/loyaltyLogos/PB.js +54 -0
  967. package/extensions/payment-card/icons/loyaltyLogos/PB.js.map +1 -0
  968. package/extensions/payment-card/icons/loyaltyLogos/Pluss.js +22 -0
  969. package/extensions/payment-card/icons/loyaltyLogos/Pluss.js.map +1 -0
  970. package/extensions/payment-card/icons/loyaltyLogos/SagaGold.js +15 -0
  971. package/extensions/payment-card/icons/loyaltyLogos/SagaGold.js.map +1 -0
  972. package/extensions/payment-card/icons/loyaltyLogos/SagaPlatinum.js +36 -0
  973. package/extensions/payment-card/icons/loyaltyLogos/SagaPlatinum.js.map +1 -0
  974. package/extensions/payment-card/icons/loyaltyLogos/WorldElite.d.ts +3 -0
  975. package/extensions/payment-card/icons/loyaltyLogos/WorldElite.js +15 -0
  976. package/extensions/payment-card/icons/loyaltyLogos/WorldElite.js.map +1 -0
  977. package/extensions/payment-card/icons/providers/BankAxept.js +17 -0
  978. package/extensions/payment-card/icons/providers/BankAxept.js.map +1 -0
  979. package/extensions/payment-card/icons/providers/ClickToPay.d.ts +3 -0
  980. package/extensions/payment-card/icons/providers/ClickToPay.js +17 -0
  981. package/extensions/payment-card/icons/providers/ClickToPay.js.map +1 -0
  982. package/extensions/payment-card/icons/providers/MastercardDark.js +807 -0
  983. package/extensions/payment-card/icons/providers/MastercardDark.js.map +1 -0
  984. package/extensions/payment-card/icons/providers/MastercardDefault.js +30 -0
  985. package/extensions/payment-card/icons/providers/MastercardDefault.js.map +1 -0
  986. package/extensions/payment-card/icons/providers/VisaDefault.js +21 -0
  987. package/extensions/payment-card/icons/providers/VisaDefault.js.map +1 -0
  988. package/extensions/payment-card/icons/providers/VisaPlatinum.js +21 -0
  989. package/extensions/payment-card/icons/providers/VisaPlatinum.js.map +1 -0
  990. package/extensions/payment-card/icons/status/index.d.ts +3 -0
  991. package/extensions/payment-card/icons/status/index.js +53 -0
  992. package/extensions/payment-card/icons/status/index.js.map +1 -0
  993. package/extensions/payment-card/index.d.ts +2 -0
  994. package/extensions/payment-card/index.js +2 -0
  995. package/extensions/payment-card/index.js.map +1 -1
  996. package/extensions/payment-card/style/dnb-payment-card.css +173 -163
  997. package/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  998. package/extensions/payment-card/style/dnb-payment-card.scss +257 -242
  999. package/extensions/payment-card/utils/CardDesigns.d.ts +22 -10
  1000. package/extensions/payment-card/utils/CardDesigns.js +45 -37
  1001. package/extensions/payment-card/utils/CardDesigns.js.map +1 -1
  1002. package/extensions/payment-card/utils/Types.js +2 -0
  1003. package/extensions/payment-card/utils/Types.js.map +1 -1
  1004. package/extensions/payment-card/utils/backgrounds/index.d.ts +6 -2
  1005. package/extensions/payment-card/utils/backgrounds/index.js +6 -2
  1006. package/extensions/payment-card/utils/backgrounds/index.js.map +1 -1
  1007. package/extensions/payment-card/utils/backgrounds/master-gold.d.ts +2 -0
  1008. package/extensions/payment-card/utils/backgrounds/master-gold.js +3 -0
  1009. package/extensions/payment-card/utils/backgrounds/master-gold.js.map +1 -0
  1010. package/extensions/payment-card/utils/backgrounds/my-first.d.ts +1 -1
  1011. package/extensions/payment-card/utils/backgrounds/my-first.js +1 -1
  1012. package/extensions/payment-card/utils/backgrounds/my-first.js.map +1 -1
  1013. package/extensions/payment-card/utils/backgrounds/visa-default.d.ts +2 -0
  1014. package/extensions/payment-card/utils/backgrounds/visa-default.js +3 -0
  1015. package/extensions/payment-card/utils/backgrounds/visa-default.js.map +1 -0
  1016. package/extensions/payment-card/utils/backgrounds/visa-pluss.d.ts +2 -0
  1017. package/extensions/payment-card/utils/backgrounds/visa-pluss.js +3 -0
  1018. package/extensions/payment-card/utils/backgrounds/visa-pluss.js.map +1 -0
  1019. package/extensions/payment-card/utils/backgrounds/visa-saga-gold.d.ts +2 -0
  1020. package/extensions/payment-card/utils/backgrounds/visa-saga-gold.js +3 -0
  1021. package/extensions/payment-card/utils/backgrounds/visa-saga-gold.js.map +1 -0
  1022. package/extensions/payment-card/utils/backgrounds/visa-saga-platinum.d.ts +2 -0
  1023. package/extensions/payment-card/utils/backgrounds/visa-saga-platinum.js +3 -0
  1024. package/extensions/payment-card/utils/backgrounds/visa-saga-platinum.js.map +1 -0
  1025. package/extensions/payment-card/utils/backgrounds/youth.d.ts +1 -1
  1026. package/extensions/payment-card/utils/backgrounds/youth.js +1 -1
  1027. package/extensions/payment-card/utils/backgrounds/youth.js.map +1 -1
  1028. package/extensions/payment-card/utils/cardProducts.d.ts +1 -1
  1029. package/extensions/payment-card/utils/cardProducts.js +241 -209
  1030. package/extensions/payment-card/utils/cardProducts.js.map +1 -1
  1031. package/fragments/drawer-list/DrawerList.d.ts +176 -224
  1032. package/fragments/drawer-list/DrawerList.js +71 -175
  1033. package/fragments/drawer-list/DrawerList.js.map +1 -1
  1034. package/fragments/drawer-list/DrawerListContext.d.ts +27 -2
  1035. package/fragments/drawer-list/DrawerListContext.js.map +1 -1
  1036. package/fragments/drawer-list/DrawerListDocs.d.ts +211 -4
  1037. package/fragments/drawer-list/DrawerListDocs.js +2 -2
  1038. package/fragments/drawer-list/DrawerListDocs.js.map +1 -1
  1039. package/fragments/drawer-list/DrawerListHelpers.d.ts +85 -89
  1040. package/fragments/drawer-list/DrawerListHelpers.js +45 -53
  1041. package/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  1042. package/fragments/drawer-list/DrawerListItem.d.ts +30 -0
  1043. package/fragments/drawer-list/DrawerListItem.js +91 -0
  1044. package/fragments/drawer-list/DrawerListItem.js.map +1 -0
  1045. package/fragments/drawer-list/DrawerListPortal.d.ts +20 -30
  1046. package/fragments/drawer-list/DrawerListPortal.js +91 -121
  1047. package/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  1048. package/fragments/drawer-list/DrawerListProvider.d.ts +217 -11
  1049. package/fragments/drawer-list/DrawerListProvider.js +12 -19
  1050. package/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  1051. package/package.json +1 -1
  1052. package/shared/Context.d.ts +1 -1
  1053. package/shared/Context.js +5 -14
  1054. package/shared/Context.js.map +1 -1
  1055. package/shared/Eufemia.d.ts +1 -1
  1056. package/shared/Eufemia.js +2 -2
  1057. package/shared/Eufemia.js.map +1 -1
  1058. package/shared/Provider.js +15 -24
  1059. package/shared/Provider.js.map +1 -1
  1060. package/shared/component-helper.d.ts +45 -48
  1061. package/shared/component-helper.js +23 -189
  1062. package/shared/component-helper.js.map +1 -1
  1063. package/shared/helpers/withCamelCaseProps.d.ts +4 -5
  1064. package/shared/helpers/withCamelCaseProps.js +7 -2
  1065. package/shared/helpers/withCamelCaseProps.js.map +1 -1
  1066. package/shared/legacy/component-helper-legacy.d.ts +19 -0
  1067. package/shared/legacy/component-helper-legacy.js +185 -0
  1068. package/shared/legacy/component-helper-legacy.js.map +1 -0
  1069. package/shared/locales/en-GB.d.ts +5 -2
  1070. package/shared/locales/en-GB.js +7 -4
  1071. package/shared/locales/en-GB.js.map +1 -1
  1072. package/shared/locales/en-US.d.ts +4 -2
  1073. package/shared/locales/en-US.js.map +1 -1
  1074. package/shared/locales/index.d.ts +10 -4
  1075. package/shared/locales/nb-NO.d.ts +5 -2
  1076. package/shared/locales/nb-NO.js +8 -5
  1077. package/shared/locales/nb-NO.js.map +1 -1
  1078. package/shared/locales/sv-SE.d.ts +5 -2
  1079. package/shared/locales/sv-SE.js +7 -4
  1080. package/shared/locales/sv-SE.js.map +1 -1
  1081. package/shared/useTranslation.d.ts +3 -2
  1082. package/shared/useTranslation.js.map +1 -1
  1083. package/style/core/scopes.scss +1 -1
  1084. package/style/dnb-ui-basis.css +1 -1
  1085. package/style/dnb-ui-basis.min.css +1 -1
  1086. package/style/dnb-ui-body.css +1 -1
  1087. package/style/dnb-ui-body.min.css +1 -1
  1088. package/style/dnb-ui-components.css +2 -1
  1089. package/style/dnb-ui-components.min.css +1 -1
  1090. package/style/dnb-ui-core.css +1 -1
  1091. package/style/dnb-ui-core.min.css +1 -1
  1092. package/style/dnb-ui-extensions.css +173 -163
  1093. package/style/dnb-ui-extensions.min.css +1 -1
  1094. package/style/themes/theme-eiendom/eiendom-theme-components.css +23 -1
  1095. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +2 -2
  1096. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +173 -163
  1097. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  1098. package/style/themes/theme-sbanken/sbanken-theme-components.css +23 -1
  1099. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +2 -2
  1100. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +173 -163
  1101. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  1102. package/style/themes/theme-ui/ui-theme-components.css +23 -1
  1103. package/style/themes/theme-ui/ui-theme-components.min.css +2 -2
  1104. package/style/themes/theme-ui/ui-theme-extensions.css +173 -163
  1105. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  1106. package/umd/dnb-ui-basis.min.js +1 -1
  1107. package/umd/dnb-ui-components.min.js +1 -1
  1108. package/umd/dnb-ui-elements.min.js +1 -1
  1109. package/umd/dnb-ui-extensions.min.js +3 -3
  1110. package/umd/dnb-ui-lib.min.js +1 -1
  1111. package/cjs/extensions/forms/Iterate/EditContainer/useHasContentChanged.js.map +0 -1
  1112. package/cjs/extensions/payment-card/icons/BankAxept.js +0 -22
  1113. package/cjs/extensions/payment-card/icons/BankAxept.js.map +0 -1
  1114. package/cjs/extensions/payment-card/icons/Bedrift.js +0 -22
  1115. package/cjs/extensions/payment-card/icons/Bedrift.js.map +0 -1
  1116. package/cjs/extensions/payment-card/icons/Business.js +0 -22
  1117. package/cjs/extensions/payment-card/icons/Business.js.map +0 -1
  1118. package/cjs/extensions/payment-card/icons/Clock.d.ts +0 -3
  1119. package/cjs/extensions/payment-card/icons/Clock.js +0 -25
  1120. package/cjs/extensions/payment-card/icons/Clock.js.map +0 -1
  1121. package/cjs/extensions/payment-card/icons/Credit.d.ts +0 -3
  1122. package/cjs/extensions/payment-card/icons/Credit.js +0 -22
  1123. package/cjs/extensions/payment-card/icons/Credit.js.map +0 -1
  1124. package/cjs/extensions/payment-card/icons/DNB.js +0 -24
  1125. package/cjs/extensions/payment-card/icons/DNB.js.map +0 -1
  1126. package/cjs/extensions/payment-card/icons/Intro.js +0 -22
  1127. package/cjs/extensions/payment-card/icons/Intro.js.map +0 -1
  1128. package/cjs/extensions/payment-card/icons/MastercardDark.js +0 -28
  1129. package/cjs/extensions/payment-card/icons/MastercardDark.js.map +0 -1
  1130. package/cjs/extensions/payment-card/icons/MastercardDefault.js +0 -28
  1131. package/cjs/extensions/payment-card/icons/MastercardDefault.js.map +0 -1
  1132. package/cjs/extensions/payment-card/icons/PB.js +0 -22
  1133. package/cjs/extensions/payment-card/icons/PB.js.map +0 -1
  1134. package/cjs/extensions/payment-card/icons/Pluss.js +0 -22
  1135. package/cjs/extensions/payment-card/icons/Pluss.js.map +0 -1
  1136. package/cjs/extensions/payment-card/icons/SagaGold.js +0 -22
  1137. package/cjs/extensions/payment-card/icons/SagaGold.js.map +0 -1
  1138. package/cjs/extensions/payment-card/icons/SagaPlatinum.js +0 -22
  1139. package/cjs/extensions/payment-card/icons/SagaPlatinum.js.map +0 -1
  1140. package/cjs/extensions/payment-card/icons/Sbanken.js +0 -22
  1141. package/cjs/extensions/payment-card/icons/Sbanken.js.map +0 -1
  1142. package/cjs/extensions/payment-card/icons/VisaDefault.js +0 -22
  1143. package/cjs/extensions/payment-card/icons/VisaDefault.js.map +0 -1
  1144. package/cjs/extensions/payment-card/icons/VisaPlatinum.js +0 -22
  1145. package/cjs/extensions/payment-card/icons/VisaPlatinum.js.map +0 -1
  1146. package/cjs/extensions/payment-card/utils/backgrounds/ung.d.ts +0 -2
  1147. package/cjs/extensions/payment-card/utils/backgrounds/ung.js +0 -9
  1148. package/cjs/extensions/payment-card/utils/backgrounds/ung.js.map +0 -1
  1149. package/es/extensions/forms/Iterate/EditContainer/useHasContentChanged.js.map +0 -1
  1150. package/es/extensions/payment-card/icons/BankAxept.js +0 -15
  1151. package/es/extensions/payment-card/icons/BankAxept.js.map +0 -1
  1152. package/es/extensions/payment-card/icons/Bedrift.js +0 -15
  1153. package/es/extensions/payment-card/icons/Bedrift.js.map +0 -1
  1154. package/es/extensions/payment-card/icons/Business.js +0 -15
  1155. package/es/extensions/payment-card/icons/Business.js.map +0 -1
  1156. package/es/extensions/payment-card/icons/Clock.d.ts +0 -3
  1157. package/es/extensions/payment-card/icons/Clock.js +0 -18
  1158. package/es/extensions/payment-card/icons/Clock.js.map +0 -1
  1159. package/es/extensions/payment-card/icons/Credit.d.ts +0 -3
  1160. package/es/extensions/payment-card/icons/Credit.js +0 -15
  1161. package/es/extensions/payment-card/icons/Credit.js.map +0 -1
  1162. package/es/extensions/payment-card/icons/DNB.js +0 -17
  1163. package/es/extensions/payment-card/icons/DNB.js.map +0 -1
  1164. package/es/extensions/payment-card/icons/Intro.js +0 -15
  1165. package/es/extensions/payment-card/icons/Intro.js.map +0 -1
  1166. package/es/extensions/payment-card/icons/MastercardDark.js +0 -21
  1167. package/es/extensions/payment-card/icons/MastercardDark.js.map +0 -1
  1168. package/es/extensions/payment-card/icons/MastercardDefault.js +0 -21
  1169. package/es/extensions/payment-card/icons/MastercardDefault.js.map +0 -1
  1170. package/es/extensions/payment-card/icons/PB.js +0 -15
  1171. package/es/extensions/payment-card/icons/PB.js.map +0 -1
  1172. package/es/extensions/payment-card/icons/Pluss.js +0 -15
  1173. package/es/extensions/payment-card/icons/Pluss.js.map +0 -1
  1174. package/es/extensions/payment-card/icons/SagaGold.js +0 -15
  1175. package/es/extensions/payment-card/icons/SagaGold.js.map +0 -1
  1176. package/es/extensions/payment-card/icons/SagaPlatinum.js +0 -15
  1177. package/es/extensions/payment-card/icons/SagaPlatinum.js.map +0 -1
  1178. package/es/extensions/payment-card/icons/Sbanken.js +0 -15
  1179. package/es/extensions/payment-card/icons/Sbanken.js.map +0 -1
  1180. package/es/extensions/payment-card/icons/VisaDefault.js +0 -15
  1181. package/es/extensions/payment-card/icons/VisaDefault.js.map +0 -1
  1182. package/es/extensions/payment-card/icons/VisaPlatinum.js +0 -15
  1183. package/es/extensions/payment-card/icons/VisaPlatinum.js.map +0 -1
  1184. package/es/extensions/payment-card/utils/backgrounds/ung.d.ts +0 -2
  1185. package/es/extensions/payment-card/utils/backgrounds/ung.js +0 -3
  1186. package/es/extensions/payment-card/utils/backgrounds/ung.js.map +0 -1
  1187. package/extensions/forms/Iterate/EditContainer/useHasContentChanged.js.map +0 -1
  1188. package/extensions/payment-card/icons/BankAxept.js +0 -15
  1189. package/extensions/payment-card/icons/BankAxept.js.map +0 -1
  1190. package/extensions/payment-card/icons/Bedrift.js +0 -15
  1191. package/extensions/payment-card/icons/Bedrift.js.map +0 -1
  1192. package/extensions/payment-card/icons/Business.js +0 -15
  1193. package/extensions/payment-card/icons/Business.js.map +0 -1
  1194. package/extensions/payment-card/icons/Clock.d.ts +0 -3
  1195. package/extensions/payment-card/icons/Clock.js +0 -18
  1196. package/extensions/payment-card/icons/Clock.js.map +0 -1
  1197. package/extensions/payment-card/icons/Credit.d.ts +0 -3
  1198. package/extensions/payment-card/icons/Credit.js +0 -15
  1199. package/extensions/payment-card/icons/Credit.js.map +0 -1
  1200. package/extensions/payment-card/icons/DNB.js +0 -17
  1201. package/extensions/payment-card/icons/DNB.js.map +0 -1
  1202. package/extensions/payment-card/icons/Intro.js +0 -15
  1203. package/extensions/payment-card/icons/Intro.js.map +0 -1
  1204. package/extensions/payment-card/icons/MastercardDark.js +0 -21
  1205. package/extensions/payment-card/icons/MastercardDark.js.map +0 -1
  1206. package/extensions/payment-card/icons/MastercardDefault.js +0 -21
  1207. package/extensions/payment-card/icons/MastercardDefault.js.map +0 -1
  1208. package/extensions/payment-card/icons/PB.js +0 -15
  1209. package/extensions/payment-card/icons/PB.js.map +0 -1
  1210. package/extensions/payment-card/icons/Pluss.js +0 -15
  1211. package/extensions/payment-card/icons/Pluss.js.map +0 -1
  1212. package/extensions/payment-card/icons/SagaGold.js +0 -15
  1213. package/extensions/payment-card/icons/SagaGold.js.map +0 -1
  1214. package/extensions/payment-card/icons/SagaPlatinum.js +0 -15
  1215. package/extensions/payment-card/icons/SagaPlatinum.js.map +0 -1
  1216. package/extensions/payment-card/icons/Sbanken.js +0 -15
  1217. package/extensions/payment-card/icons/Sbanken.js.map +0 -1
  1218. package/extensions/payment-card/icons/VisaDefault.js +0 -15
  1219. package/extensions/payment-card/icons/VisaDefault.js.map +0 -1
  1220. package/extensions/payment-card/icons/VisaPlatinum.js +0 -15
  1221. package/extensions/payment-card/icons/VisaPlatinum.js.map +0 -1
  1222. package/extensions/payment-card/utils/backgrounds/ung.d.ts +0 -2
  1223. package/extensions/payment-card/utils/backgrounds/ung.js +0 -3
  1224. package/extensions/payment-card/utils/backgrounds/ung.js.map +0 -1
  1225. /package/cjs/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.d.ts +0 -0
  1226. /package/cjs/extensions/payment-card/icons/{DNB.d.ts → brandLogos/DNB.d.ts} +0 -0
  1227. /package/cjs/extensions/payment-card/icons/{Sbanken.d.ts → brandLogos/Sbanken.d.ts} +0 -0
  1228. /package/cjs/extensions/payment-card/icons/{Bedrift.d.ts → loyaltyLogos/Bedrift.d.ts} +0 -0
  1229. /package/cjs/extensions/payment-card/icons/{Business.d.ts → loyaltyLogos/Business.d.ts} +0 -0
  1230. /package/cjs/extensions/payment-card/icons/{Intro.d.ts → loyaltyLogos/Intro.d.ts} +0 -0
  1231. /package/cjs/extensions/payment-card/icons/{PB.d.ts → loyaltyLogos/PB.d.ts} +0 -0
  1232. /package/cjs/extensions/payment-card/icons/{Pluss.d.ts → loyaltyLogos/Pluss.d.ts} +0 -0
  1233. /package/cjs/extensions/payment-card/icons/{SagaGold.d.ts → loyaltyLogos/SagaGold.d.ts} +0 -0
  1234. /package/cjs/extensions/payment-card/icons/{SagaPlatinum.d.ts → loyaltyLogos/SagaPlatinum.d.ts} +0 -0
  1235. /package/cjs/extensions/payment-card/icons/{BankAxept.d.ts → providers/BankAxept.d.ts} +0 -0
  1236. /package/cjs/extensions/payment-card/icons/{MastercardDark.d.ts → providers/MastercardDark.d.ts} +0 -0
  1237. /package/cjs/extensions/payment-card/icons/{MastercardDefault.d.ts → providers/MastercardDefault.d.ts} +0 -0
  1238. /package/cjs/extensions/payment-card/icons/{VisaDefault.d.ts → providers/VisaDefault.d.ts} +0 -0
  1239. /package/cjs/extensions/payment-card/icons/{VisaPlatinum.d.ts → providers/VisaPlatinum.d.ts} +0 -0
  1240. /package/es/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.d.ts +0 -0
  1241. /package/es/extensions/payment-card/icons/{DNB.d.ts → brandLogos/DNB.d.ts} +0 -0
  1242. /package/es/extensions/payment-card/icons/{Sbanken.d.ts → brandLogos/Sbanken.d.ts} +0 -0
  1243. /package/es/extensions/payment-card/icons/{Bedrift.d.ts → loyaltyLogos/Bedrift.d.ts} +0 -0
  1244. /package/es/extensions/payment-card/icons/{Business.d.ts → loyaltyLogos/Business.d.ts} +0 -0
  1245. /package/es/extensions/payment-card/icons/{Intro.d.ts → loyaltyLogos/Intro.d.ts} +0 -0
  1246. /package/es/extensions/payment-card/icons/{PB.d.ts → loyaltyLogos/PB.d.ts} +0 -0
  1247. /package/es/extensions/payment-card/icons/{Pluss.d.ts → loyaltyLogos/Pluss.d.ts} +0 -0
  1248. /package/es/extensions/payment-card/icons/{SagaGold.d.ts → loyaltyLogos/SagaGold.d.ts} +0 -0
  1249. /package/es/extensions/payment-card/icons/{SagaPlatinum.d.ts → loyaltyLogos/SagaPlatinum.d.ts} +0 -0
  1250. /package/es/extensions/payment-card/icons/{BankAxept.d.ts → providers/BankAxept.d.ts} +0 -0
  1251. /package/es/extensions/payment-card/icons/{MastercardDark.d.ts → providers/MastercardDark.d.ts} +0 -0
  1252. /package/es/extensions/payment-card/icons/{MastercardDefault.d.ts → providers/MastercardDefault.d.ts} +0 -0
  1253. /package/es/extensions/payment-card/icons/{VisaDefault.d.ts → providers/VisaDefault.d.ts} +0 -0
  1254. /package/es/extensions/payment-card/icons/{VisaPlatinum.d.ts → providers/VisaPlatinum.d.ts} +0 -0
  1255. /package/extensions/forms/{Iterate/EditContainer → Form/Isolation}/useHasContentChanged.d.ts +0 -0
  1256. /package/extensions/payment-card/icons/{DNB.d.ts → brandLogos/DNB.d.ts} +0 -0
  1257. /package/extensions/payment-card/icons/{Sbanken.d.ts → brandLogos/Sbanken.d.ts} +0 -0
  1258. /package/extensions/payment-card/icons/{Bedrift.d.ts → loyaltyLogos/Bedrift.d.ts} +0 -0
  1259. /package/extensions/payment-card/icons/{Business.d.ts → loyaltyLogos/Business.d.ts} +0 -0
  1260. /package/extensions/payment-card/icons/{Intro.d.ts → loyaltyLogos/Intro.d.ts} +0 -0
  1261. /package/extensions/payment-card/icons/{PB.d.ts → loyaltyLogos/PB.d.ts} +0 -0
  1262. /package/extensions/payment-card/icons/{Pluss.d.ts → loyaltyLogos/Pluss.d.ts} +0 -0
  1263. /package/extensions/payment-card/icons/{SagaGold.d.ts → loyaltyLogos/SagaGold.d.ts} +0 -0
  1264. /package/extensions/payment-card/icons/{SagaPlatinum.d.ts → loyaltyLogos/SagaPlatinum.d.ts} +0 -0
  1265. /package/extensions/payment-card/icons/{BankAxept.d.ts → providers/BankAxept.d.ts} +0 -0
  1266. /package/extensions/payment-card/icons/{MastercardDark.d.ts → providers/MastercardDark.d.ts} +0 -0
  1267. /package/extensions/payment-card/icons/{MastercardDefault.d.ts → providers/MastercardDefault.d.ts} +0 -0
  1268. /package/extensions/payment-card/icons/{VisaDefault.d.ts → providers/VisaDefault.d.ts} +0 -0
  1269. /package/extensions/payment-card/icons/{VisaPlatinum.d.ts → providers/VisaPlatinum.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"DatePicker.js","names":["React","useCallback","useContext","useEffect","useLayoutEffect","useMemo","useRef","useState","classnames","warn","makeUniqueId","extendPropsWithContext","detectOutsideClick","getStatusState","combineDescribedBy","validateDOMAttributes","AlignmentHelper","createSpacingClasses","skeletonDOMAttributes","Context","Suffix","FormLabel","FormStatus","DatePickerProvider","DatePickerRange","DatePickerInput","DatePickerAddon","DatePickerFooter","pickFormElementProps","useTranslation","convertSnakeCaseProps","DatePickerPortal","formatDate","formatDateRange","defaultProps","maskOrder","maskPlaceholder","dateFormat","returnFormat","hideNavigation","hideNavigationButtons","hideDays","onlyMonth","hideLastWeek","disableAutofocus","enableKeyboardNav","showInput","submitButtonText","cancelButtonText","resetButtonText","resetDate","firstDay","range","link","sync","statusState","opened","noAnimation","direction","skipPortal","DatePicker","externalProps","props","_objectSpread","preventClose","onHide","onShow","onSubmit","onCancel","onReset","alignPicker","showSubmitButton","showCancelButton","openedProp","endDate","endDateProp","setOpened","hidden","setHidden","dates","setDates","context","blurDelay","id","innerRef","triangleRef","submitButtonRef","getReturnObject","hideTimeout","outsideClick","calendarContainerRef","translation","removeOutsideClickHandler","current","remove","hidePicker","args","event","persist","setTimeout","focus","preventScroll","e","setOutsideClickHandler","focusOnHide","setTrianglePosition","triangleWidth","shellWidth","querySelector","getBoundingClientRect","width","buttonWidth","distance","style","marginRight","marginLeft","showPicker","clearTimeout","onPickerChange","_ref","shouldHidePicker","_objectWithoutProperties","_excluded","startDate","onSubmitHandler","onCancelHandler","onResetHandler","togglePicker","extendedProps","skeleton","getTranslation","FormRow","formElement","label","title","labelDirection","labelSrOnly","inputElement","addonElement","shortcuts","disabled","stretch","size","status","statusProps","statusNoAnimation","globalStatus","suffix","showResetButton","className","tooltip","labelAlignment","restProps","_excluded2","attributes","filterOutNonAttributes","shouldHideDays","shouldHideNavigation","showStatus","pickerParams","submitParams","ref","tabIndex","selectedDateTitle","selectedDate","selectedDateRange","options","locale","formatOptions","weekday","month","day","year","replace","mainParams","lang","containerClassNames","remainingDOMProps","remainingSubmitProps","remainingPickerProps","createElement","_extends","setReturnObject","fn","forId","text","srOnly","_AlignmentHelper","show","String","text_id","width_selector","state","no_animation","isRange","submitAttributes","alignment","targetElementRef","firstDayOfWeek","isLink","isSync","hideNav","views","nextBtn","prevBtn","hideNextMonthWeek","noAutoFocus","onChange","renderElement","NonAttributes","Object","keys","reduce","key","includes","_supportsSpacingProps"],"sources":["../../../../src/components/date-picker/DatePicker.tsx"],"sourcesContent":["/**\n * Web DatePicker Component\n *\n */\n\nimport React, {\n HTMLProps,\n useCallback,\n useContext,\n useEffect,\n useLayoutEffect,\n useMemo,\n useRef,\n useState,\n} from 'react'\n\nimport classnames from 'classnames'\nimport {\n warn,\n makeUniqueId,\n extendPropsWithContext,\n detectOutsideClick,\n getStatusState,\n combineDescribedBy,\n validateDOMAttributes,\n DetectOutsideClickClass,\n} from '../../shared/component-helper'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport { skeletonDOMAttributes } from '../skeleton/SkeletonHelper'\n\nimport Context, { Locale } from '../../shared/Context'\nimport Suffix from '../../shared/helpers/Suffix'\nimport FormLabel from '../form-label/FormLabel'\nimport FormStatus, {\n FormStatusProps,\n FormStatusState,\n FormStatusText,\n} from '../form-status/FormStatus'\nimport DatePickerProvider, {\n DatePickerChangeEvent,\n type ReturnObject,\n} from './DatePickerProvider'\nimport DatePickerRange from './DatePickerRange'\nimport DatePickerInput from './DatePickerInput'\nimport DatePickerAddon, { DatePickerAddonProps } from './DatePickerAddon'\nimport DatePickerFooter from './DatePickerFooter'\nimport { SpacingProps } from '../space/types'\nimport { InputInputElement, InputSize } from '../Input'\nimport { SkeletonShow } from '../Skeleton'\nimport { GlobalStatusConfigObject } from '../GlobalStatus'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\nimport { CalendarDay, DatePickerCalendarProps } from './DatePickerCalendar'\nimport { DatePickerContextValues, DateType } from './DatePickerContext'\nimport { DatePickerDates } from './hooks/useDates'\nimport { useTranslation } from '../../shared'\nimport { convertSnakeCaseProps } from '../../shared/helpers/withSnakeCaseProps'\nimport DatePickerPortal from './DatePickerPortal'\nimport {\n FormatDateOptions,\n formatDate,\n formatDateRange,\n} from './DatePickerCalc'\n\nexport type DatePickerEventAttributes = {\n day?: string\n year?: string\n start?: string\n end?: string\n} & Record<string, unknown>\n\n// Takes the return object from DatePickerProvider and extends it with the event\nexport type DatePickerEvent<T> = ReturnObject<T>\n\ntype FocusOnHide = { focusOnHide?: boolean | string }\n\nexport type DisplayPickerEvent = (\n | React.MouseEvent<HTMLButtonElement | HTMLAnchorElement | HTMLElement>\n | MouseEvent\n | KeyboardEvent\n | FocusOnHide\n) &\n DatePickerDates &\n FocusOnHide & {\n event?: React.MouseEvent<HTMLButtonElement | HTMLAnchorElement>\n }\n\nexport type DatePickerProps = {\n /**\n * Defines the pre-filled date by either a JavaScript DateInstance or (ISO 8601) like `date=\"2019-05-05\"`.\n */\n date?: DateType\n /**\n * To set the pre-filled starting date. Is used if `range={true}` is set to `true`. Defaults to `null`, showing the `maskPlaceholder`.\n */\n startDate?: DateType\n /**\n * To set the pre-filled ending date. Is used if `range={true}` is set to `true`. Defaults to `null`, showing the `maskPlaceholder`.\n */\n endDate?: DateType\n /**\n * To display what month should be shown in the first calendar by default. Defaults to the `date` respective `startDate`.\n */\n month?: DateType\n /**\n * To display what month should be shown in the first calendar by default. Defaults to the `date` respective `startDate`.\n */\n startMonth?: DateType\n /**\n * To display what month should be shown in the second calendar by default. Defaults to the `date` respective `startDate`.\n */\n endMonth?: DateType\n /**\n * To limit a date range to a minimum `startDate`. Defaults to `null`.\n */\n minDate?: DateType\n /**\n * To limit a date range to a maximum `endDate`. Defaults to `null`.\n */\n maxDate?: DateType\n /**\n * Corrects the input date value to be the same as either `minDate` or `maxDate`, when the user types in a date that is either before or after one of these. Defaults to `false`.\n */\n correctInvalidDate?: boolean\n /**\n * To define the order of the masked placeholder input fields. Defaults to `dd/mm/yyyy`\n */\n maskOrder?: string\n /**\n * To display the placeholder on input. Defaults to `dd/mm/åååå`.\n */\n maskPlaceholder?: string\n /**\n * Defines how the prop dates (`date`, `startDate` and `endDate`) should be parsed, e.g. `yyyy/MM/dd`. Defaults to `yyyy-MM-dd`.\n */\n dateFormat?: string\n /**\n * Defines how the returned date, as a string, should be formatted as. Defaults to `yyyy-MM-dd`.\n */\n returnFormat?: string\n /**\n * If set to `true`, the navigation will be hidden. Defaults to `false`.\n */\n hideNavigation?: boolean\n hideNavigationButtons?: boolean\n /**\n * If set to `true`, the week days will be hidden. Defaults to `false`.\n */\n hideDays?: boolean\n /**\n * Use `true` to only show the defined month. Disables the month navigation possibility. Defaults to `false`.\n */\n onlyMonth?: boolean\n /**\n * Use `true` to only show the last week in the current month if it needs to be shown. The result is that there will mainly be shows five (5) weeks (rows) instead of six (6). Defaults to `false`.\n */\n hideLastWeek?: boolean\n /**\n * Once the date picker gets opened, there is a focus handling to ensure good accessibility. can be disabled with property. Defaults to `false`.\n */\n disableAutofocus?: boolean\n enableKeyboardNav?: boolean\n /**\n * If the input fields with the mask should be visible. Defaults to `false`.\n */\n showInput?: boolean\n /**\n * If set to `true`, a submit button will be shown. You can change the default text by using `submitButtonText=\"Ok\"`. Defaults to `false`. If the `range` prop is `true`, then the submit button is shown.\n */\n showSubmitButton?: boolean\n /**\n * If set to `true`, a cancel button will be shown. You can change the default text by using `cancelButtonText=\"Avbryt\"` Defaults to `false`. If the `range` prop is `true`, then the cancel button is shown.\n */\n showCancelButton?: boolean\n /**\n * If set to `true`, a reset button will be shown. You can change the default text by using `resetButtonText=\"Tilbakestill\"` Defaults to `false`.\n */\n showResetButton?: boolean\n submitButtonText?: string\n cancelButtonText?: string\n resetButtonText?: string\n resetDate?: boolean\n /**\n * To define the first day of the week. Defaults to `monday`.\n */\n firstDay?:\n | 'monday'\n | 'tuesday'\n | 'wednesday'\n | 'thursday'\n | 'friday'\n | 'saturday'\n | 'sunday'\n /**\n * If the date picker should support a range of two dates (starting and ending date). Defaults to `false`.\n */\n range?: boolean\n /**\n * Link both calendars, once to the user is navigating between months. Only meant to use if the range is set to `true`. Defaults to `false`.\n */\n link?: boolean\n /**\n * Sync input values with the calendars views. Once the input values get changed, the calendar changes its views in sync. Defaults to `true`.\n */\n sync?: boolean\n /**\n * A prepending label in sync with the date input field.\n */\n label?: React.ReactNode\n /**\n * Use `labelDirection=\"vertical\"` to change the label layout direction. Defaults to `horizontal`.\n */\n labelDirection?: 'vertical' | 'horizontal'\n /**\n * Use `true` to make the label only readable by screen readers.\n */\n labelSrOnly?: boolean\n /**\n * Gives you the possibility to use a plain/vanilla `<input />` HTML element by defining it as a string `inputElement=\"input\"`, a React element, or a render function `inputElement={(internalProps) => (<Return />)}`. Can also be used in circumstances where the `react-text-mask` not should be used, e.g. in testing environments. Defaults to custom masked input.\n */\n inputElement?: InputInputElement\n /**\n * Gives you the possibility to inject a React element showing up over the footer. Use it to customize `shortcuts`.\n */\n addonElement?: React.ReactNode\n /**\n * Gives you the possibility to set predefined dates and date ranges so the user can select these by one click. Define either a JSON or an object with the defined shortcuts. More info is below.\n */\n shortcuts?: DatePickerAddonProps['shortcuts']\n disabled?: boolean\n /**\n * If set to `true`, then the date-picker input field will be 100% in `width`.\n */\n stretch?: boolean\n /**\n * If set to `true`, an overlaying skeleton with animation will be shown.\n */\n skeleton?: SkeletonShow\n /**\n * The sizes you can choose is `small` (1.5rem), `default` (2rem), `medium` (2.5rem) and `large` (3rem) are supported component sizes. Defaults to `default` / `null`.\n */\n size?: InputSize\n /**\n * Text with a status message. The style defaults to an error message. You can use `true` to only get the status color, without a message.\n */\n status?: FormStatusText\n /**\n * Defines the state of the status. Currently, there are two statuses `[error, info]`. Defaults to `error`.\n */\n statusState?: FormStatusState\n /**\n * Use an object to define additional FormStatus properties.\n */\n statusProps?: FormStatusProps\n statusNoAnimation?: boolean\n /**\n * The <a href=\"/uilib/components/global-status/properties/#configuration-object\">configuration</a> used for the target <a href=\"/uilib/components/global-status\">GlobalStatus</a>.\n */\n globalStatus?: GlobalStatusConfigObject\n /**\n * Text describing the content of the DatePicker more than the label. You can also send in a React component, so it gets wrapped inside the DatePicker component.\n */\n suffix?: React.ReactNode\n /**\n * To open the date-picker by default. Defaults to `false`.\n */\n opened?: boolean\n /**\n * Provide a short Tooltip content that shows up on the picker button.\n */\n tooltip?: React.ReactNode\n tabIndex?: number\n preventClose?: boolean\n noAnimation?: boolean\n direction?: 'auto' | 'top' | 'bottom'\n /**\n * Use `right` to change the calendar alignment direction. Defaults to `left`.\n */\n alignPicker?: 'auto' | 'left' | 'right'\n /**\n * Sets the alignment of the label. Defaults to `left`.\n */\n labelAlignment?: 'left' | 'right'\n /**\n * If set to `true`, the calendar will not be rendered inside a react portal. Defaults to `false`.\n */\n skipPortal?: boolean\n className?: string\n /**\n * Will be called right before every new calendar view gets rendered. See the example above.\n */\n onDaysRender?: (\n days: Array<CalendarDay>,\n nr?: DatePickerCalendarProps['nr']\n ) => void\n /**\n * Will be called on a date change event. Returns an `object`. See Returned Object below.\n */\n onChange?: (\n event: DatePickerEvent<React.ChangeEvent<HTMLInputElement>>\n ) => void\n /**\n * Will be called on every input and date picker interaction. Returns an `object`. See Returned Object below.\n */\n onType?: (\n event: DatePickerEvent<React.ChangeEvent<HTMLInputElement>>\n ) => void\n /**\n * Will be called once date-picker is visible.\n */\n onShow?: (event: DatePickerEvent<DisplayPickerEvent>) => void\n /**\n * Will be called once date-picker is hidden.\n */\n onHide?: (event: DatePickerEvent<DisplayPickerEvent>) => void\n /**\n * Will be called once a user presses the submit button.\n */\n onSubmit?: (\n event: DatePickerEvent<React.MouseEvent<HTMLButtonElement>>\n ) => void\n /**\n * Will be called once a user presses the cancel button.\n */\n onCancel?: (\n event: DatePickerEvent<React.MouseEvent<HTMLButtonElement>>\n ) => void\n /**\n * Will be called once a user presses the reset button.\n */\n onReset?: (\n event: DatePickerEvent<React.MouseEvent<HTMLButtonElement>>\n ) => void\n /**\n * Will be called once the input gets focus.\n */\n onFocus?: (event: DatePickerEvent<React.FocusEvent<HTMLElement>>) => void\n /**\n * Will be called once the input lose focus.\n */\n onBlur?: (event: DatePickerEvent<React.FocusEvent<HTMLElement>>) => void\n}\n// Can be removed in v11\ntype DatePickerDeprecatedProps = {\n /**\n * @deprecated use `startDate` instead.\n */\n start_date?: DateType\n /**\n * @deprecated use `endDate` instead.\n */\n end_date?: DateType\n /**\n * @deprecated use `startMonth` instead.\n */\n start_month?: DateType\n /**\n * @deprecated use `endMonth` instead.\n */\n end_month?: DateType\n /**\n * @deprecated use `minDate` instead.\n */\n min_date?: DateType\n /**\n * @deprecated use `maxDate` instead.\n */\n max_date?: DateType\n /**\n * @deprecated use `correctInvalidDate` instead.\n */\n correct_invalid_date?: boolean\n /**\n * @deprecated use `maskOrder` instead.\n */\n mask_order?: string\n /**\n * @deprecated use `maskPlaceholder` instead.\n */\n mask_placeholder?: string\n /**\n * @deprecated use `dateFormat` instead.\n */\n date_format?: string\n /**\n * @deprecated use `returnFormat` instead.\n */\n return_format?: string\n /**\n * @deprecated use `hideNavigation` instead.\n */\n hide_navigation?: boolean\n /**\n * @deprecated use `hideNavigationButtons` instead.\n */\n hide_navigation_buttons?: boolean\n /**\n * @deprecated use `hideDays` instead.\n */\n hide_days?: boolean\n /**\n * @deprecated use `onlyMonth` instead.\n */\n only_month?: boolean\n /**\n * @deprecated use `hideLastWeek` instead.\n */\n hide_last_week?: boolean\n /**\n * @deprecated use `disableAutofocus` instead.\n */\n disable_autofocus?: boolean\n /**\n * @deprecated use `enableKeyboardNav` instead.\n */\n enable_keyboard_nav?: boolean\n /**\n * @deprecated use `showInput` instead.\n */\n show_input?: boolean\n /**\n * @deprecated use `showSubmitButton` instead.\n */\n show_submit_button?: boolean\n /**\n * @deprecated use `showCancelButton` instead.\n */\n show_cancel_button?: boolean\n /**\n * @deprecated\n */\n show_reset_button?: boolean\n /**\n * @deprecated use `submitButtonText` instead.\n */\n submit_button_text?: string\n /**\n * @deprecated use `cancelButtonText` instead.\n */\n cancel_button_text?: string\n /**\n * @deprecated use `resetButtonText` instead.\n */\n reset_button_text?: string\n /**\n * @deprecated use `resetDate` instead.\n */\n reset_date?: boolean\n /**\n * @deprecated use `firstDay` instead.\n */\n first_day?: string\n /**\n * @deprecated set locale with `Provider` instead.\n */\n locale?: Locale\n /**\n * @deprecated use `labelDirection` instead.\n */\n label_direction?: 'vertical' | 'horizontal'\n /**\n * @deprecated use `labelSrOnly` instead.\n */\n label_sr_only?: boolean\n /**\n * @deprecated use `inputElement` instead.\n */\n input_element?: InputInputElement\n /**\n * @deprecated use `addonElement` instead.\n */\n addon_element?: React.ReactNode\n /**\n * @deprecated use `statusState` instead.\n */\n status_state?: FormStatusState\n /**\n * @deprecated use `statusProps` instead.\n */\n status_props?: FormStatusProps\n /**\n * @deprecated use `statusNoAnimation` instead.\n */\n status_no_animation?: boolean\n /**\n * @deprecated use `preventClose` instead.\n */\n prevent_close?: boolean\n /**\n * @deprecated use `no_animation` instead.\n */\n no_animation?: boolean\n /**\n * @deprecated use `alignPicker` instead.\n */\n align_picker?: 'auto' | 'left' | 'right'\n /**\n * @deprecated use `onDaysRender` instead.\n */\n on_days_render?: (\n days: Array<CalendarDay>,\n nr?: DatePickerCalendarProps['nr']\n ) => void\n /**\n * @deprecated use `onChange` instead.\n */\n on_change?: (\n event: DatePickerEvent<React.ChangeEvent<HTMLInputElement>>\n ) => void\n /**\n * @deprecated use `onType` instead.\n */\n on_type?: (\n event: DatePickerEvent<React.ChangeEvent<HTMLInputElement>>\n ) => void\n /**\n * @deprecated use `onShow` instead.\n */\n on_show?: (event: DatePickerEvent<DisplayPickerEvent>) => void\n /**\n * @deprecated use `onHide` instead.\n */\n on_hide?: (event: DatePickerEvent<DisplayPickerEvent>) => void\n /**\n * @deprecated use `onSubmit` instead.\n */\n on_submit?: (\n event: DatePickerEvent<React.MouseEvent<HTMLButtonElement>>\n ) => void\n /**\n * @deprecated use `onCancel` instead.\n */\n on_cancel?: (\n event: DatePickerEvent<React.MouseEvent<HTMLButtonElement>>\n ) => void\n /**\n * @deprecated use `onReset` instead.\n */\n on_reset?: (\n event: DatePickerEvent<React.MouseEvent<HTMLButtonElement>>\n ) => void\n}\n\nexport type DatePickerAllProps = DatePickerProps &\n DatePickerDeprecatedProps &\n SpacingProps &\n Omit<\n React.HTMLProps<HTMLElement>,\n | 'ref'\n | 'children'\n | 'label'\n | 'size'\n | 'onChange'\n | 'onBlur'\n | 'onFocus'\n | 'onSubmit'\n | 'onReset'\n | 'start'\n >\n\nconst defaultProps: DatePickerProps = {\n maskOrder: 'dd/mm/yyyy',\n maskPlaceholder: 'dd/mm/åååå', // have to be same setup as \"mask\" - but can be like\n dateFormat: 'yyyy-MM-dd', // in v1 of date-fns we were more flexible in terms of the format\n returnFormat: 'yyyy-MM-dd', // used in date-fns v1\n hideNavigation: false,\n hideNavigationButtons: false,\n hideDays: false,\n onlyMonth: false,\n hideLastWeek: false,\n disableAutofocus: false,\n enableKeyboardNav: false,\n showInput: false,\n submitButtonText: 'Ok',\n cancelButtonText: 'Avbryt',\n resetButtonText: 'Tilbakestill',\n resetDate: true,\n firstDay: 'monday',\n range: false,\n link: false,\n sync: true,\n statusState: 'error',\n opened: false,\n noAnimation: false,\n direction: 'auto',\n skipPortal: false,\n}\n\nfunction DatePicker(externalProps: DatePickerAllProps) {\n const props = { ...defaultProps, ...externalProps }\n\n const {\n preventClose,\n onHide,\n onShow,\n onSubmit,\n onCancel,\n onReset,\n noAnimation,\n showInput,\n alignPicker,\n showSubmitButton,\n showCancelButton,\n range,\n hideDays,\n hideNavigation,\n opened: openedProp,\n endDate: endDateProp,\n } = convertSnakeCaseProps(props) // convertSnakeCaseProps - can be removed in v11\n\n const [opened, setOpened] = useState<boolean>(openedProp)\n const [hidden, setHidden] = useState(!opened)\n const [dates, setDates] = useState<\n Pick<DatePickerDates, 'startDate' | 'endDate'>\n >({})\n\n const context = useContext(Context)\n const blurDelay = 201 // some ms more than \"dropdownSlideDown 200ms\"\n const id = props.id || makeUniqueId()\n\n const innerRef = useRef<HTMLSpanElement>()\n const triangleRef = useRef<HTMLSpanElement>()\n const submitButtonRef = useRef<HTMLButtonElement>()\n const getReturnObject =\n useRef<DatePickerContextValues['getReturnObject']>()\n const hideTimeout = useRef<NodeJS.Timeout>()\n const outsideClick = useRef<DetectOutsideClickClass>()\n const calendarContainerRef = useRef<HTMLDivElement>()\n\n const translation = useTranslation().DatePicker\n\n if (endDateProp && !range) {\n warn(\n `The DatePicker got a \"endDate\". You have to set range={true} as well!.`\n )\n }\n\n const removeOutsideClickHandler = useCallback(() => {\n if (outsideClick.current) {\n outsideClick.current.remove()\n }\n }, [])\n\n const hidePicker = useCallback(\n (args?: DisplayPickerEvent) => {\n if (preventClose) {\n return // stop here\n }\n\n if (args && args.event && args.event.persist) {\n args.event.persist()\n }\n\n setOpened(false)\n\n hideTimeout.current = setTimeout(\n () => {\n setHidden(true)\n onHide?.({\n ...getReturnObject.current(args),\n })\n if (args?.['focusOnHide']) {\n try {\n submitButtonRef.current.focus({\n preventScroll: true,\n })\n } catch (e) {\n warn(e)\n }\n }\n },\n noAnimation ? 1 : blurDelay\n ) // wait until animation is over\n\n removeOutsideClickHandler()\n },\n [noAnimation, preventClose, onHide, removeOutsideClickHandler]\n )\n\n const setOutsideClickHandler = useCallback(() => {\n outsideClick.current = detectOutsideClick(\n // Sending in portalRef, instead of portalRef.current,\n // as that would lead to the ignoreElement being null/undefined,\n // since the portal has not been rendered yet,\n // causing the calendar to close when clicking on the calendar itself\n [innerRef.current, calendarContainerRef],\n ({ event }: { event: MouseEvent | KeyboardEvent }) => {\n hidePicker({ ...event, focusOnHide: event?.['code'] })\n }\n )\n }, [hidePicker])\n\n const setTrianglePosition = useCallback(() => {\n const triangleWidth = 16\n if (showInput && triangleRef.current && innerRef.current) {\n try {\n const shellWidth = innerRef.current\n .querySelector('.dnb-input__shell')\n .getBoundingClientRect().width\n\n const buttonWidth = innerRef.current\n .querySelector('.dnb-input__submit-button__button')\n .getBoundingClientRect().width\n\n if (alignPicker === 'right') {\n const distance = buttonWidth / 2 - triangleWidth / 2\n triangleRef.current.style.marginRight = `${distance / 16}rem`\n } else {\n const distance = shellWidth - buttonWidth / 2 - triangleWidth / 2\n triangleRef.current.style.marginLeft = `${distance / 16}rem`\n }\n } catch (e) {\n warn(e)\n }\n }\n }, [showInput, alignPicker])\n\n const showPicker = useCallback(\n (event?: DisplayPickerEvent) => {\n if (hideTimeout.current) {\n clearTimeout(hideTimeout.current)\n }\n\n setOpened(true)\n setHidden(false)\n\n onShow?.({ ...getReturnObject.current(event) })\n\n setOutsideClickHandler()\n },\n [setOutsideClickHandler, onShow]\n )\n\n // Make sure the triangle is positioned correctly after calendar is mounted\n useLayoutEffect(() => {\n if (!hidden) {\n setTrianglePosition()\n }\n }, [hidden, setTrianglePosition])\n\n // React to opened prop changes\n useEffect(() => {\n if (openedProp) {\n showPicker()\n }\n }, [openedProp, showPicker])\n\n const onPickerChange = useCallback(\n ({\n hidePicker: shouldHidePicker = true,\n ...args\n }: DatePickerChangeEvent<\n | React.MouseEvent<HTMLSpanElement>\n | React.KeyboardEvent<HTMLTableElement>\n >) => {\n if (shouldHidePicker && !showSubmitButton && !showCancelButton) {\n hidePicker({ focusOnHide: true })\n }\n\n setDates({ startDate: args.startDate, endDate: args.endDate })\n },\n [hidePicker, showSubmitButton, showCancelButton]\n )\n\n const onSubmitHandler = useCallback(\n (event: React.MouseEvent<HTMLButtonElement>) => {\n hidePicker(event)\n onSubmit?.({\n ...getReturnObject.current({ event }),\n })\n },\n [hidePicker, onSubmit]\n )\n\n const onCancelHandler = useCallback(\n (\n event: DatePickerChangeEvent<React.MouseEvent<HTMLButtonElement>>\n ) => {\n hidePicker()\n onCancel?.({ ...getReturnObject.current(event) })\n },\n [hidePicker, onCancel]\n )\n\n const onResetHandler = useCallback(\n (\n event: DatePickerChangeEvent<React.MouseEvent<HTMLButtonElement>>\n ) => {\n hidePicker()\n onReset?.({ ...getReturnObject.current(event) })\n },\n [hidePicker, onReset]\n )\n\n const togglePicker = useCallback(\n (args: React.MouseEvent<HTMLButtonElement>) => {\n !opened ? showPicker(args) : hidePicker(args)\n },\n [opened, showPicker, hidePicker]\n )\n\n // use only the props from context, who are available here anyway\n const extendedProps = extendPropsWithContext(\n props,\n defaultProps,\n { skeleton: context?.skeleton },\n convertSnakeCaseProps(context.getTranslation(props).DatePicker), // convertSnakeCaseProps - can be removed in v11\n pickFormElementProps(context?.FormRow), // Deprecated – can be removed in v11\n convertSnakeCaseProps(pickFormElementProps(context?.formElement)), // Deprecated – can be removed in v11\n context.DatePicker\n )\n\n const {\n label,\n title,\n labelDirection,\n labelSrOnly,\n onlyMonth,\n hideLastWeek,\n disableAutofocus,\n hideNavigationButtons,\n firstDay,\n resetDate,\n link,\n sync,\n inputElement,\n addonElement,\n shortcuts,\n disabled,\n stretch,\n skeleton,\n size,\n status,\n statusState,\n statusProps,\n statusNoAnimation,\n globalStatus,\n suffix,\n maskOrder,\n maskPlaceholder,\n submitButtonText,\n cancelButtonText,\n resetButtonText,\n showResetButton,\n className,\n tooltip,\n skipPortal,\n labelAlignment,\n ...restProps\n } = extendedProps\n\n const attributes = useMemo(\n () => filterOutNonAttributes(restProps),\n [restProps]\n )\n\n const shouldHideDays = onlyMonth ? true : hideDays\n const shouldHideNavigation = onlyMonth\n ? hideNavigationButtons\n ? false\n : true\n : hideNavigation\n\n const showStatus = getStatusState(status)\n\n const pickerParams = {} as HTMLProps<HTMLSpanElement>\n\n if (showStatus || suffix) {\n pickerParams['aria-describedby'] = combineDescribedBy(\n pickerParams,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n\n const submitParams = {\n ['aria-expanded']: opened,\n ref: submitButtonRef,\n tabIndex: extendedProps.tabIndex,\n tooltip,\n }\n\n const selectedDateTitle = useMemo(() => {\n const { selectedDate, selectedDateRange } = translation\n const { startDate, endDate } = dates\n\n if (!startDate) {\n return ''\n }\n\n const options: FormatDateOptions = {\n locale: context.locale,\n formatOptions: {\n weekday: 'long',\n month: 'long',\n day: 'numeric',\n year: 'numeric',\n },\n }\n\n return range && endDate\n ? selectedDateRange.replace(\n /%s/,\n formatDateRange({ startDate, endDate }, options)\n )\n : selectedDate.replace(/%s/, formatDate(startDate, options))\n }, [range, translation, dates, context.locale])\n\n const mainParams = {\n className: classnames(\n 'dnb-date-picker',\n status && `dnb-date-picker__status--${statusState}`,\n labelDirection && `dnb-date-picker--${labelDirection}`,\n opened && 'dnb-date-picker--opened',\n hidden && 'dnb-date-picker--hidden',\n showInput && 'dnb-date-picker--show-input',\n label &&\n labelAlignment === 'right' &&\n 'dnb-date-picker__input--label-alignment-right',\n (range || showSubmitButton || showCancelButton || showResetButton) &&\n 'dnb-date-picker--show-footer',\n alignPicker && `dnb-date-picker--${alignPicker}`,\n stretch && `dnb-date-picker--stretch`,\n 'dnb-form-component',\n size && `dnb-date-picker--${size}`,\n createSpacingClasses(props),\n className\n ),\n lang: context.locale,\n } as HTMLProps<HTMLSpanElement>\n\n const containerClassNames = classnames(\n 'dnb-date-picker__container',\n opened && 'dnb-date-picker__container--opened',\n !opened && 'dnb-date-picker__container--closed',\n hidden && 'dnb-date-picker__container--hidden',\n showInput && 'dnb-date-picker__container--show-input',\n alignPicker && `dnb-date-picker__container--${alignPicker}`,\n size && `dnb-date-picker--${size}`\n )\n\n const remainingDOMProps = validateDOMAttributes(props, attributes)\n const remainingSubmitProps = validateDOMAttributes(null, submitParams)\n const remainingPickerProps = validateDOMAttributes(\n null,\n skeletonDOMAttributes(pickerParams, skeleton, context)\n )\n\n return (\n <DatePickerProvider\n {...props}\n attributes={remainingDOMProps}\n setReturnObject={(fn) => (getReturnObject.current = fn)}\n hidePicker={hidePicker}\n >\n <span {...mainParams}>\n {label && (\n <FormLabel\n id={id + '-label'}\n forId={id}\n text={label}\n labelDirection={labelDirection}\n srOnly={labelSrOnly}\n disabled={disabled}\n skeleton={skeleton}\n />\n )}\n\n <span\n className=\"dnb-date-picker__inner\"\n ref={innerRef}\n {...remainingPickerProps}\n >\n <AlignmentHelper />\n\n <FormStatus\n show={showStatus}\n id={id + '-form-status'}\n globalStatus={globalStatus}\n label={String(label)}\n text_id={id + '-status'} // used for \"aria-describedby\"\n width_selector={id + '-shell'}\n text={status}\n state={statusState}\n no_animation={statusNoAnimation}\n skeleton={skeleton}\n {...statusProps}\n />\n\n <span className=\"dnb-date-picker__row\">\n <span className=\"dnb-date-picker__shell\" id={`${id}-shell`}>\n <DatePickerInput\n id={id}\n title={title}\n disabled={disabled}\n stretch={stretch}\n skeleton={skeleton}\n maskOrder={maskOrder}\n maskPlaceholder={maskPlaceholder}\n isRange={range}\n showInput={showInput}\n selectedDateTitle={selectedDateTitle}\n inputElement={inputElement}\n opened={opened}\n hidden={hidden}\n size={size}\n status={status ? 'error' : null}\n statusState={statusState}\n lang={context.locale}\n {...attributes}\n submitAttributes={remainingSubmitProps}\n onSubmit={togglePicker}\n {...statusProps}\n />\n\n {!hidden && (\n <DatePickerPortal\n alignment={alignPicker}\n skipPortal={skipPortal}\n targetElementRef={innerRef}\n >\n <span\n className={containerClassNames}\n ref={calendarContainerRef}\n >\n <span\n className=\"dnb-date-picker__triangle\"\n ref={triangleRef}\n />\n <DatePickerRange\n id={id}\n firstDayOfWeek={firstDay}\n resetDate={resetDate}\n isRange={range}\n isLink={link}\n isSync={sync}\n hideDays={shouldHideDays}\n hideNav={shouldHideNavigation}\n views={\n hideNavigationButtons\n ? [{ nextBtn: false, prevBtn: false }]\n : null\n }\n onlyMonth={onlyMonth}\n hideNextMonthWeek={hideLastWeek}\n noAutoFocus={disableAutofocus}\n onChange={onPickerChange}\n locale={context.locale}\n />\n {(addonElement || shortcuts) && (\n <DatePickerAddon\n renderElement={addonElement}\n shortcuts={shortcuts}\n />\n )}\n <DatePickerFooter\n isRange={range}\n onSubmit={onSubmitHandler}\n onCancel={onCancelHandler}\n onReset={onResetHandler}\n submitButtonText={submitButtonText}\n cancelButtonText={cancelButtonText}\n resetButtonText={resetButtonText}\n />\n </span>\n </DatePickerPortal>\n )}\n </span>\n {suffix && (\n <Suffix\n className=\"dnb-date-picker__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n </span>\n\n <p className=\"dnb-sr-only\" aria-live=\"assertive\">\n {selectedDateTitle}\n </p>\n </span>\n </DatePickerProvider>\n )\n}\n\nconst NonAttributes = [\n 'locale',\n 'id',\n 'month',\n 'date',\n 'startDate',\n 'endDate',\n 'minDate',\n 'maxDate',\n 'enableKeyboardNav',\n 'hideNavigation',\n 'returnFormat',\n 'dateFormat',\n 'hideDays',\n 'correctInvalidDate',\n 'opened',\n 'direction',\n 'range',\n 'showInput',\n 'noAnimation',\n 'onDaysRender',\n 'onShow',\n 'onType',\n 'onHide',\n 'showSubmitButton',\n 'showCancelButton',\n 'selectedDate',\n 'selectedMonth',\n 'selectedYear',\n 'nextMonth',\n 'nextYear',\n 'openPickerText',\n 'placeholderCharacters',\n 'prevMonth',\n 'prevYear',\n 'endMonth',\n 'startMonth',\n 'alignPicker',\n 'preventClose',\n 'selectedDateRange',\n]\n\nfunction filterOutNonAttributes(props: DatePickerProps) {\n return Object.keys(props).reduce((attributes, key) => {\n if (!NonAttributes.includes(key)) {\n attributes[key] = props[key]\n }\n return attributes\n }, {})\n}\n\nexport default DatePicker\n\nDatePicker._supportsSpacingProps = true\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DatePicker.js","names":["React","useCallback","useContext","useEffect","useLayoutEffect","useMemo","useRef","useState","classnames","warn","makeUniqueId","extendPropsWithContext","detectOutsideClick","getStatusState","combineDescribedBy","validateDOMAttributes","AlignmentHelper","createSpacingClasses","skeletonDOMAttributes","Context","Suffix","FormLabel","FormStatus","DatePickerProvider","DatePickerRange","DatePickerInput","DatePickerAddon","DatePickerFooter","pickFormElementProps","useTranslation","convertSnakeCaseProps","DatePickerPortal","formatDate","formatDateRange","defaultProps","hideNavigation","hideDays","onlyMonth","hideLastWeek","disableAutofocus","enableKeyboardNav","showInput","resetDate","range","link","sync","statusState","opened","noAnimation","direction","skipPortal","yearNavigation","DatePicker","externalProps","props","_objectSpread","preventClose","onHide","onShow","onSubmit","onCancel","onReset","alignPicker","showSubmitButton","showCancelButton","correctInvalidDate","openedProp","endDate","endDateProp","setOpened","hidden","setHidden","dates","setDates","context","blurDelay","id","innerRef","triangleRef","submitButtonRef","getReturnObject","hideTimeout","outsideClick","calendarContainerRef","translation","removeOutsideClickHandler","current","remove","hidePicker","args","event","persist","setTimeout","focus","preventScroll","e","setOutsideClickHandler","focusOnHide","setTrianglePosition","triangleWidth","shellWidth","querySelector","getBoundingClientRect","width","buttonWidth","distance","style","marginRight","marginLeft","showPicker","clearTimeout","onPickerChange","_ref","shouldHidePicker","_objectWithoutProperties","_excluded","startDate","onSubmitHandler","onCancelHandler","onResetHandler","togglePicker","extendedProps","skeleton","getTranslation","FormRow","formElement","label","title","labelDirection","labelSrOnly","firstDay","inputElement","addonElement","shortcuts","disabled","stretch","size","status","statusProps","statusNoAnimation","globalStatus","suffix","maskOrder","maskPlaceholder","submitButtonText","cancelButtonText","resetButtonText","showResetButton","className","tooltip","labelAlignment","restProps","_excluded2","attributes","filterOutNonAttributes","showStatus","pickerParams","submitParams","ref","tabIndex","selectedDateTitle","selectedDate","selectedDateRange","options","locale","formatOptions","weekday","month","day","year","replace","mainParams","lang","containerClassNames","remainingDOMProps","remainingSubmitProps","remainingPickerProps","createElement","_extends","setReturnObject","fn","forId","text","srOnly","_AlignmentHelper","show","String","text_id","width_selector","state","no_animation","isRange","submitAttributes","alignment","targetElementRef","firstDayOfWeek","isLink","isSync","hideNextMonthWeek","noAutoFocus","renderElement","NonAttributes","Object","keys","reduce","key","includes","_supportsSpacingProps"],"sources":["../../../../src/components/date-picker/DatePicker.tsx"],"sourcesContent":["/**\n * Web DatePicker Component\n *\n */\n\nimport React, {\n HTMLProps,\n useCallback,\n useContext,\n useEffect,\n useLayoutEffect,\n useMemo,\n useRef,\n useState,\n} from 'react'\n\nimport classnames from 'classnames'\nimport {\n warn,\n makeUniqueId,\n extendPropsWithContext,\n detectOutsideClick,\n getStatusState,\n combineDescribedBy,\n validateDOMAttributes,\n DetectOutsideClickClass,\n} from '../../shared/component-helper'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport { skeletonDOMAttributes } from '../skeleton/SkeletonHelper'\n\nimport Context, { Locale } from '../../shared/Context'\nimport Suffix from '../../shared/helpers/Suffix'\nimport FormLabel from '../form-label/FormLabel'\nimport FormStatus, {\n FormStatusProps,\n FormStatusState,\n FormStatusText,\n} from '../form-status/FormStatus'\nimport DatePickerProvider, {\n DatePickerChangeEvent,\n type ReturnObject,\n} from './DatePickerProvider'\nimport DatePickerRange from './DatePickerRange'\nimport DatePickerInput from './DatePickerInput'\nimport DatePickerAddon, { DatePickerAddonProps } from './DatePickerAddon'\nimport DatePickerFooter from './DatePickerFooter'\nimport { SpacingProps } from '../space/types'\nimport { InputInputElement, InputSize } from '../Input'\nimport { SkeletonShow } from '../Skeleton'\nimport { GlobalStatusConfigObject } from '../GlobalStatus'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\nimport { CalendarDay, DatePickerCalendarProps } from './DatePickerCalendar'\nimport { DatePickerContextValues, DateType } from './DatePickerContext'\nimport { DatePickerDates } from './hooks/useDates'\nimport { useTranslation } from '../../shared'\nimport { convertSnakeCaseProps } from '../../shared/helpers/withSnakeCaseProps'\nimport DatePickerPortal from './DatePickerPortal'\nimport {\n FormatDateOptions,\n formatDate,\n formatDateRange,\n} from './DatePickerCalc'\n\nexport type DatePickerEventAttributes = {\n day?: string\n year?: string\n start?: string\n end?: string\n} & Record<string, unknown>\n\n// Takes the return object from DatePickerProvider and extends it with the event\nexport type DatePickerEvent<T> = ReturnObject<T>\n\ntype FocusOnHide = { focusOnHide?: boolean | string }\n\nexport type DisplayPickerEvent = (\n | React.MouseEvent<HTMLButtonElement | HTMLAnchorElement | HTMLElement>\n | MouseEvent\n | KeyboardEvent\n | FocusOnHide\n) &\n DatePickerDates &\n FocusOnHide & {\n event?: React.MouseEvent<HTMLButtonElement | HTMLAnchorElement>\n }\n\nexport type DatePickerProps = {\n /**\n * Defines the pre-filled date by either a JavaScript DateInstance or (ISO 8601) like `date=\"2019-05-05\"`.\n */\n date?: DateType\n /**\n * To set the pre-filled starting date. Is used if `range={true}` is set to `true`. Defaults to `null`, showing the `maskPlaceholder`.\n */\n startDate?: DateType\n /**\n * To set the pre-filled ending date. Is used if `range={true}` is set to `true`. Defaults to `null`, showing the `maskPlaceholder`.\n */\n endDate?: DateType\n /**\n * To display what month should be shown in the first calendar by default. Defaults to the `date` respective `startDate`.\n */\n month?: DateType\n /**\n * To display what month should be shown in the first calendar by default. Defaults to the `date` respective `startDate`.\n */\n startMonth?: DateType\n /**\n * To display what month should be shown in the second calendar by default. Defaults to the `date` respective `startDate`.\n */\n endMonth?: DateType\n /**\n * To limit a date range to a minimum `startDate`. Defaults to `null`.\n */\n minDate?: DateType\n /**\n * To limit a date range to a maximum `endDate`. Defaults to `null`.\n */\n maxDate?: DateType\n /**\n * To define the order of the masked placeholder input fields. Defaults to `dd/mm/yyyy`\n */\n maskOrder?: string\n /**\n * To display the placeholder on input. Defaults to `dd/mm/åååå`.\n */\n maskPlaceholder?: string\n /**\n * Defines how the prop dates (`date`, `startDate` and `endDate`) should be parsed, e.g. `yyyy/MM/dd`. Defaults to `yyyy-MM-dd`.\n */\n dateFormat?: string\n /**\n * Defines how the returned date, as a string, should be formatted as. Defaults to `yyyy-MM-dd`.\n */\n returnFormat?: string\n /**\n * If set to `true`, the navigation will be hidden. Defaults to `false`.\n */\n hideNavigation?: boolean\n /**\n * If set to `true`, the week days will be hidden. Defaults to `false`.\n */\n hideDays?: boolean\n /**\n * Use `true` to only show the defined month. Disables the month navigation possibility. Defaults to `false`.\n */\n onlyMonth?: boolean\n /**\n * Use `true` to only show the last week in the current month if it needs to be shown. The result is that there will mainly be shows five (5) weeks (rows) instead of six (6). Defaults to `false`.\n */\n hideLastWeek?: boolean\n /**\n * Once the date picker gets opened, there is a focus handling to ensure good accessibility. can be disabled with property. Defaults to `false`.\n */\n disableAutofocus?: boolean\n enableKeyboardNav?: boolean\n /**\n * If the input fields with the mask should be visible. Defaults to `false`.\n */\n showInput?: boolean\n /**\n * If set to `true`, a submit button will be shown. You can change the default text by using `submitButtonText=\"Ok\"`. Defaults to `false`. If the `range` prop is `true`, then the submit button is shown.\n */\n showSubmitButton?: boolean\n /**\n * If set to `true`, a cancel button will be shown. You can change the default text by using `cancelButtonText=\"Avbryt\"` Defaults to `false`. If the `range` prop is `true`, then the cancel button is shown.\n */\n showCancelButton?: boolean\n /**\n * If set to `true`, a reset button will be shown. You can change the default text by using `resetButtonText=\"Tilbakestill\"` Defaults to `false`.\n */\n showResetButton?: boolean\n submitButtonText?: string\n cancelButtonText?: string\n resetButtonText?: string\n resetDate?: boolean\n /**\n * To define the first day of the week. Defaults to `monday`.\n */\n firstDay?:\n | 'monday'\n | 'tuesday'\n | 'wednesday'\n | 'thursday'\n | 'friday'\n | 'saturday'\n | 'sunday'\n /**\n * If the date picker should support a range of two dates (starting and ending date). Defaults to `false`.\n */\n range?: boolean\n /**\n * Link both calendars, once to the user is navigating between months. Only meant to use if the range is set to `true`. Defaults to `false`.\n */\n link?: boolean\n /**\n * Sync input values with the calendars views. Once the input values get changed, the calendar changes its views in sync. Defaults to `true`.\n */\n sync?: boolean\n /**\n * A prepending label in sync with the date input field.\n */\n label?: React.ReactNode\n /**\n * Use `labelDirection=\"vertical\"` to change the label layout direction. Defaults to `horizontal`.\n */\n labelDirection?: 'vertical' | 'horizontal'\n /**\n * Use `true` to make the label only readable by screen readers.\n */\n labelSrOnly?: boolean\n /**\n * Gives you the possibility to use a plain/vanilla `<input />` HTML element by defining it as a string `inputElement=\"input\"`, a React element, or a render function `inputElement={(internalProps) => (<Return />)}`. Can also be used in circumstances where the `react-text-mask` not should be used, e.g. in testing environments. Defaults to custom masked input.\n */\n inputElement?: InputInputElement\n /**\n * Gives you the possibility to inject a React element showing up over the footer. Use it to customize `shortcuts`.\n */\n addonElement?: React.ReactNode\n /**\n * Gives you the possibility to set predefined dates and date ranges so the user can select these by one click. Define either a JSON or an object with the defined shortcuts. More info is below.\n */\n shortcuts?: DatePickerAddonProps['shortcuts']\n disabled?: boolean\n /**\n * If set to `true`, then the date-picker input field will be 100% in `width`.\n */\n stretch?: boolean\n /**\n * If set to `true`, an overlaying skeleton with animation will be shown.\n */\n skeleton?: SkeletonShow\n /**\n * The sizes you can choose is `small` (1.5rem), `default` (2rem), `medium` (2.5rem) and `large` (3rem) are supported component sizes. Defaults to `default` / `null`.\n */\n size?: InputSize\n /**\n * Text with a status message. The style defaults to an error message. You can use `true` to only get the status color, without a message.\n */\n status?: FormStatusText\n /**\n * Defines the state of the status. Currently, there are two statuses `[error, info]`. Defaults to `error`.\n */\n statusState?: FormStatusState\n /**\n * Use an object to define additional FormStatus properties.\n */\n statusProps?: FormStatusProps\n statusNoAnimation?: boolean\n /**\n * The <a href=\"/uilib/components/global-status/properties/#configuration-object\">configuration</a> used for the target <a href=\"/uilib/components/global-status\">GlobalStatus</a>.\n */\n globalStatus?: GlobalStatusConfigObject\n /**\n * Text describing the content of the DatePicker more than the label. You can also send in a React component, so it gets wrapped inside the DatePicker component.\n */\n suffix?: React.ReactNode\n /**\n * To open the date-picker by default. Defaults to `false`.\n */\n opened?: boolean\n /**\n * Provide a short Tooltip content that shows up on the picker button.\n */\n tooltip?: React.ReactNode\n tabIndex?: number\n preventClose?: boolean\n noAnimation?: boolean\n direction?: 'auto' | 'top' | 'bottom'\n /**\n * Use `right` to change the calendar alignment direction. Defaults to `left`.\n */\n alignPicker?: 'auto' | 'left' | 'right'\n /**\n * Sets the alignment of the label. Defaults to `left`.\n */\n labelAlignment?: 'left' | 'right'\n /**\n * If set to `true`, the calendar will not be rendered inside a react portal. Defaults to `false`.\n */\n skipPortal?: boolean\n /**\n * Will enable year navigation in the calendar if set to `true`. Defaults to `false`.\n */\n yearNavigation?: boolean\n className?: string\n /**\n * Will be called right before every new calendar view gets rendered. See the example above.\n */\n onDaysRender?: (\n days: Array<CalendarDay>,\n nr?: DatePickerCalendarProps['nr']\n ) => void\n /**\n * Will be called on a date change event. Returns an `object`. See Returned Object below.\n */\n onChange?: (\n event: DatePickerEvent<React.ChangeEvent<HTMLInputElement>>\n ) => void\n /**\n * Will be called on every input and date picker interaction. Returns an `object`. See Returned Object below.\n */\n onType?: (\n event: DatePickerEvent<React.ChangeEvent<HTMLInputElement>>\n ) => void\n /**\n * Will be called once date-picker is visible.\n */\n onShow?: (event: DatePickerEvent<DisplayPickerEvent>) => void\n /**\n * Will be called once date-picker is hidden.\n */\n onHide?: (event: DatePickerEvent<DisplayPickerEvent>) => void\n /**\n * Will be called once a user presses the submit button.\n */\n onSubmit?: (\n event: DatePickerEvent<React.MouseEvent<HTMLButtonElement>>\n ) => void\n /**\n * Will be called once a user presses the cancel button.\n */\n onCancel?: (\n event: DatePickerEvent<React.MouseEvent<HTMLButtonElement>>\n ) => void\n /**\n * Will be called once a user presses the reset button.\n */\n onReset?: (\n event: DatePickerEvent<React.MouseEvent<HTMLButtonElement>>\n ) => void\n /**\n * Will be called once the input gets focus.\n */\n onFocus?: (event: DatePickerEvent<React.FocusEvent<HTMLElement>>) => void\n /**\n * Will be called once the input lose focus.\n */\n onBlur?: (event: DatePickerEvent<React.FocusEvent<HTMLElement>>) => void\n}\n// Can be removed in v11\ntype DatePickerDeprecatedProps = {\n /**\n * @deprecated use `startDate` instead.\n */\n start_date?: DateType\n /**\n * @deprecated use `endDate` instead.\n */\n end_date?: DateType\n /**\n * @deprecated use `startMonth` instead.\n */\n start_month?: DateType\n /**\n * @deprecated use `endMonth` instead.\n */\n end_month?: DateType\n /**\n * @deprecated use `minDate` instead.\n */\n min_date?: DateType\n /**\n * @deprecated use `maxDate` instead.\n */\n max_date?: DateType\n /**\n * @deprecated use `Field.Date` instead, for {@link https://eufemia.dnb.no/uilib/extensions/forms/feature-fields/Date/#date-limit-validation | built in validation}.\n * It's not good UX, or best practice to automatically change the user input. This often leads to confusion, as what they typed in, magically changes for seemingly no reason. It's better to inform them about the error and let them correct it themselves.\n *\n * Deprecated – can be removed in v11\n */\n correctInvalidDate?: boolean\n /**\n * @deprecated use `Field.Date` instead, for {@link https://eufemia.dnb.no/uilib/extensions/forms/feature-fields/Date/#date-limit-validation | built in validation}.\n * It's not good UX, or best practice to automatically change the user input. This often leads to confusion, as what they typed in, magically changes for seemingly no reason. It's better to inform them about the error and let them correct it themselves.\n *\n * Deprecated – can be removed in v11\n */\n correct_invalid_date?: boolean\n /**\n * @deprecated use `maskOrder` instead.\n */\n mask_order?: string\n /**\n * @deprecated use `maskPlaceholder` instead.\n */\n mask_placeholder?: string\n /**\n * @deprecated use `dateFormat` instead.\n */\n date_format?: string\n /**\n * @deprecated use `returnFormat` instead.\n */\n return_format?: string\n /**\n * @deprecated use `hideNavigation` instead.\n */\n hide_navigation?: boolean\n /**\n * @deprecated does not do anything.\n */\n hideNavigationButtons?: boolean\n /**\n * @deprecated does not do anything.\n */\n hide_navigation_buttons?: boolean\n /**\n * @deprecated use `hideDays` instead.\n */\n hide_days?: boolean\n /**\n * @deprecated use `onlyMonth` instead.\n */\n only_month?: boolean\n /**\n * @deprecated use `hideLastWeek` instead.\n */\n hide_last_week?: boolean\n /**\n * @deprecated use `disableAutofocus` instead.\n */\n disable_autofocus?: boolean\n /**\n * @deprecated use `enableKeyboardNav` instead.\n */\n enable_keyboard_nav?: boolean\n /**\n * @deprecated use `showInput` instead.\n */\n show_input?: boolean\n /**\n * @deprecated use `showSubmitButton` instead.\n */\n show_submit_button?: boolean\n /**\n * @deprecated use `showCancelButton` instead.\n */\n show_cancel_button?: boolean\n /**\n * @deprecated\n */\n show_reset_button?: boolean\n /**\n * @deprecated use `submitButtonText` instead.\n */\n submit_button_text?: string\n /**\n * @deprecated use `cancelButtonText` instead.\n */\n cancel_button_text?: string\n /**\n * @deprecated use `resetButtonText` instead.\n */\n reset_button_text?: string\n /**\n * @deprecated use `resetDate` instead.\n */\n reset_date?: boolean\n /**\n * @deprecated use `firstDay` instead.\n */\n first_day?: string\n /**\n * @deprecated set locale with `Provider` instead.\n */\n locale?: Locale\n /**\n * @deprecated use `labelDirection` instead.\n */\n label_direction?: 'vertical' | 'horizontal'\n /**\n * @deprecated use `labelSrOnly` instead.\n */\n label_sr_only?: boolean\n /**\n * @deprecated use `inputElement` instead.\n */\n input_element?: InputInputElement\n /**\n * @deprecated use `addonElement` instead.\n */\n addon_element?: React.ReactNode\n /**\n * @deprecated use `statusState` instead.\n */\n status_state?: FormStatusState\n /**\n * @deprecated use `statusProps` instead.\n */\n status_props?: FormStatusProps\n /**\n * @deprecated use `statusNoAnimation` instead.\n */\n status_no_animation?: boolean\n /**\n * @deprecated use `preventClose` instead.\n */\n prevent_close?: boolean\n /**\n * @deprecated use `no_animation` instead.\n */\n no_animation?: boolean\n /**\n * @deprecated use `alignPicker` instead.\n */\n align_picker?: 'auto' | 'left' | 'right'\n /**\n * @deprecated use `onDaysRender` instead.\n */\n on_days_render?: (\n days: Array<CalendarDay>,\n nr?: DatePickerCalendarProps['nr']\n ) => void\n /**\n * @deprecated use `onChange` instead.\n */\n on_change?: (\n event: DatePickerEvent<React.ChangeEvent<HTMLInputElement>>\n ) => void\n /**\n * @deprecated use `onType` instead.\n */\n on_type?: (\n event: DatePickerEvent<React.ChangeEvent<HTMLInputElement>>\n ) => void\n /**\n * @deprecated use `onShow` instead.\n */\n on_show?: (event: DatePickerEvent<DisplayPickerEvent>) => void\n /**\n * @deprecated use `onHide` instead.\n */\n on_hide?: (event: DatePickerEvent<DisplayPickerEvent>) => void\n /**\n * @deprecated use `onSubmit` instead.\n */\n on_submit?: (\n event: DatePickerEvent<React.MouseEvent<HTMLButtonElement>>\n ) => void\n /**\n * @deprecated use `onCancel` instead.\n */\n on_cancel?: (\n event: DatePickerEvent<React.MouseEvent<HTMLButtonElement>>\n ) => void\n /**\n * @deprecated use `onReset` instead.\n */\n on_reset?: (\n event: DatePickerEvent<React.MouseEvent<HTMLButtonElement>>\n ) => void\n}\n\nexport type DatePickerAllProps = DatePickerProps &\n DatePickerDeprecatedProps &\n SpacingProps &\n Omit<\n React.HTMLProps<HTMLElement>,\n | 'ref'\n | 'children'\n | 'label'\n | 'size'\n | 'onChange'\n | 'onBlur'\n | 'onFocus'\n | 'onSubmit'\n | 'onReset'\n | 'start'\n >\n\nconst defaultProps: DatePickerProps = {\n hideNavigation: false,\n hideDays: false,\n onlyMonth: false,\n hideLastWeek: false,\n disableAutofocus: false,\n enableKeyboardNav: false,\n showInput: false,\n resetDate: true,\n range: false,\n link: false,\n sync: true,\n statusState: 'error',\n opened: false,\n noAnimation: false,\n direction: 'auto',\n skipPortal: false,\n yearNavigation: false,\n}\n\nfunction DatePicker(externalProps: DatePickerAllProps) {\n const props = { ...defaultProps, ...externalProps }\n\n const {\n preventClose,\n onHide,\n onShow,\n onSubmit,\n onCancel,\n onReset,\n noAnimation,\n showInput,\n alignPicker,\n showSubmitButton,\n showCancelButton,\n range,\n hideDays,\n hideNavigation,\n // Deprecated – can be removed in v11\n correctInvalidDate,\n opened: openedProp,\n endDate: endDateProp,\n } = convertSnakeCaseProps(props) // convertSnakeCaseProps - can be removed in v11\n\n const [opened, setOpened] = useState<boolean>(openedProp)\n const [hidden, setHidden] = useState(!opened)\n const [dates, setDates] = useState<\n Pick<DatePickerDates, 'startDate' | 'endDate'>\n >({})\n\n const context = useContext(Context)\n const blurDelay = 201 // some ms more than \"dropdownSlideDown 200ms\"\n const id = props.id || makeUniqueId()\n\n const innerRef = useRef<HTMLSpanElement>()\n const triangleRef = useRef<HTMLSpanElement>()\n const submitButtonRef = useRef<HTMLButtonElement>()\n const getReturnObject =\n useRef<DatePickerContextValues['getReturnObject']>()\n const hideTimeout = useRef<NodeJS.Timeout>()\n const outsideClick = useRef<DetectOutsideClickClass>()\n const calendarContainerRef = useRef<HTMLDivElement>()\n\n const translation = useTranslation().DatePicker\n\n if (correctInvalidDate) {\n warn(\n `Use 'Field.Date' instead, for built in validation (https://eufemia.dnb.no/uilib/extensions/forms/feature-fields/Date/#date-limit-validation).`\n )\n }\n\n if (endDateProp && !range) {\n warn(\n `The DatePicker got a \"endDate\". You have to set range={true} as well!.`\n )\n }\n\n const removeOutsideClickHandler = useCallback(() => {\n if (outsideClick.current) {\n outsideClick.current.remove()\n }\n }, [])\n\n const hidePicker = useCallback(\n (args?: DisplayPickerEvent) => {\n if (preventClose) {\n return // stop here\n }\n\n if (args && args.event && args.event.persist) {\n args.event.persist()\n }\n\n setOpened(false)\n\n hideTimeout.current = setTimeout(\n () => {\n setHidden(true)\n onHide?.({\n ...getReturnObject.current(args),\n })\n if (args?.['focusOnHide']) {\n try {\n submitButtonRef.current.focus({\n preventScroll: true,\n })\n } catch (e) {\n warn(e)\n }\n }\n },\n noAnimation ? 1 : blurDelay\n ) // wait until animation is over\n\n removeOutsideClickHandler()\n },\n [noAnimation, preventClose, onHide, removeOutsideClickHandler]\n )\n\n const setOutsideClickHandler = useCallback(() => {\n outsideClick.current = detectOutsideClick(\n // Sending in portalRef, instead of portalRef.current,\n // as that would lead to the ignoreElement being null/undefined,\n // since the portal has not been rendered yet,\n // causing the calendar to close when clicking on the calendar itself\n [innerRef.current, calendarContainerRef],\n ({ event }: { event: MouseEvent | KeyboardEvent }) => {\n hidePicker({ ...event, focusOnHide: event?.['code'] })\n }\n )\n }, [hidePicker])\n\n const setTrianglePosition = useCallback(() => {\n const triangleWidth = 16\n if (showInput && triangleRef.current && innerRef.current) {\n try {\n const shellWidth = innerRef.current\n .querySelector('.dnb-input__shell')\n .getBoundingClientRect().width\n\n const buttonWidth = innerRef.current\n .querySelector('.dnb-input__submit-button__button')\n .getBoundingClientRect().width\n\n if (alignPicker === 'right') {\n const distance = buttonWidth / 2 - triangleWidth / 2\n triangleRef.current.style.marginRight = `${distance / 16}rem`\n } else {\n const distance = shellWidth - buttonWidth / 2 - triangleWidth / 2\n triangleRef.current.style.marginLeft = `${distance / 16}rem`\n }\n } catch (e) {\n warn(e)\n }\n }\n }, [showInput, alignPicker])\n\n const showPicker = useCallback(\n (event?: DisplayPickerEvent) => {\n if (hideTimeout.current) {\n clearTimeout(hideTimeout.current)\n }\n\n setOpened(true)\n setHidden(false)\n\n onShow?.({ ...getReturnObject.current(event) })\n\n setOutsideClickHandler()\n },\n [setOutsideClickHandler, onShow]\n )\n\n // Make sure the triangle is positioned correctly after calendar is mounted\n useLayoutEffect(() => {\n if (!hidden) {\n setTrianglePosition()\n }\n }, [hidden, setTrianglePosition])\n\n // React to opened prop changes\n useEffect(() => {\n if (openedProp) {\n showPicker()\n }\n }, [openedProp, showPicker])\n\n const onPickerChange = useCallback(\n ({\n hidePicker: shouldHidePicker = true,\n ...args\n }: DatePickerChangeEvent<\n | React.MouseEvent<HTMLSpanElement>\n | React.KeyboardEvent<HTMLTableElement>\n >) => {\n if (shouldHidePicker && !showSubmitButton && !showCancelButton) {\n hidePicker({ focusOnHide: true })\n }\n\n setDates({ startDate: args.startDate, endDate: args.endDate })\n },\n [hidePicker, showSubmitButton, showCancelButton]\n )\n\n const onSubmitHandler = useCallback(\n (event: React.MouseEvent<HTMLButtonElement>) => {\n hidePicker(event)\n onSubmit?.({\n ...getReturnObject.current({ event }),\n })\n },\n [hidePicker, onSubmit]\n )\n\n const onCancelHandler = useCallback(\n (\n event: DatePickerChangeEvent<React.MouseEvent<HTMLButtonElement>>\n ) => {\n hidePicker()\n onCancel?.({ ...getReturnObject.current(event) })\n },\n [hidePicker, onCancel]\n )\n\n const onResetHandler = useCallback(\n (\n event: DatePickerChangeEvent<React.MouseEvent<HTMLButtonElement>>\n ) => {\n hidePicker()\n onReset?.({ ...getReturnObject.current(event) })\n },\n [hidePicker, onReset]\n )\n\n const togglePicker = useCallback(\n (args: React.MouseEvent<HTMLButtonElement>) => {\n !opened ? showPicker(args) : hidePicker(args)\n },\n [opened, showPicker, hidePicker]\n )\n\n // use only the props from context, who are available here anyway\n const extendedProps = extendPropsWithContext(\n props,\n defaultProps,\n { skeleton: context?.skeleton },\n convertSnakeCaseProps(context.getTranslation(props).DatePicker), // convertSnakeCaseProps - can be removed in v11\n pickFormElementProps(context?.FormRow), // Deprecated – can be removed in v11\n convertSnakeCaseProps(pickFormElementProps(context?.formElement)), // Deprecated – can be removed in v11\n context.DatePicker\n )\n\n const {\n label,\n title,\n labelDirection,\n labelSrOnly,\n onlyMonth,\n hideLastWeek,\n disableAutofocus,\n firstDay,\n resetDate,\n link,\n sync,\n inputElement,\n addonElement,\n shortcuts,\n disabled,\n stretch,\n skeleton,\n size,\n status,\n statusState,\n statusProps,\n statusNoAnimation,\n globalStatus,\n suffix,\n maskOrder,\n maskPlaceholder,\n submitButtonText,\n cancelButtonText,\n resetButtonText,\n showResetButton,\n className,\n tooltip,\n skipPortal,\n labelAlignment,\n ...restProps\n } = extendedProps\n\n const attributes = useMemo(\n () => filterOutNonAttributes(restProps),\n [restProps]\n )\n\n const showStatus = getStatusState(status)\n\n const pickerParams = {} as HTMLProps<HTMLSpanElement>\n\n if (showStatus || suffix) {\n pickerParams['aria-describedby'] = combineDescribedBy(\n pickerParams,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n\n const submitParams = {\n ['aria-expanded']: opened,\n ref: submitButtonRef,\n tabIndex: extendedProps.tabIndex,\n tooltip,\n }\n\n const selectedDateTitle = useMemo(() => {\n const { selectedDate, selectedDateRange } = translation\n const { startDate, endDate } = dates\n\n if (!startDate) {\n return ''\n }\n\n const options: FormatDateOptions = {\n locale: context.locale,\n formatOptions: {\n weekday: 'long',\n month: 'long',\n day: 'numeric',\n year: 'numeric',\n },\n }\n\n return range && endDate\n ? selectedDateRange.replace(\n /%s/,\n formatDateRange({ startDate, endDate }, options)\n )\n : selectedDate.replace(/%s/, formatDate(startDate, options))\n }, [range, translation, dates, context.locale])\n\n const mainParams = {\n className: classnames(\n 'dnb-date-picker',\n status && `dnb-date-picker__status--${statusState}`,\n labelDirection && `dnb-date-picker--${labelDirection}`,\n opened && 'dnb-date-picker--opened',\n hidden && 'dnb-date-picker--hidden',\n showInput && 'dnb-date-picker--show-input',\n label &&\n labelAlignment === 'right' &&\n 'dnb-date-picker__input--label-alignment-right',\n (range || showSubmitButton || showCancelButton || showResetButton) &&\n 'dnb-date-picker--show-footer',\n alignPicker && `dnb-date-picker--${alignPicker}`,\n stretch && `dnb-date-picker--stretch`,\n 'dnb-form-component',\n size && `dnb-date-picker--${size}`,\n createSpacingClasses(props),\n className\n ),\n lang: context.locale,\n } as HTMLProps<HTMLSpanElement>\n\n const containerClassNames = classnames(\n 'dnb-date-picker__container',\n opened && 'dnb-date-picker__container--opened',\n !opened && 'dnb-date-picker__container--closed',\n hidden && 'dnb-date-picker__container--hidden',\n showInput && 'dnb-date-picker__container--show-input',\n alignPicker && `dnb-date-picker__container--${alignPicker}`,\n size && `dnb-date-picker--${size}`\n )\n\n const remainingDOMProps = validateDOMAttributes(props, attributes)\n const remainingSubmitProps = validateDOMAttributes(null, submitParams)\n const remainingPickerProps = validateDOMAttributes(\n null,\n skeletonDOMAttributes(pickerParams, skeleton, context)\n )\n\n return (\n <DatePickerProvider\n {...props}\n attributes={remainingDOMProps}\n setReturnObject={(fn) => (getReturnObject.current = fn)}\n hidePicker={hidePicker}\n >\n <span {...mainParams}>\n {label && (\n <FormLabel\n id={id + '-label'}\n forId={id}\n text={label}\n labelDirection={labelDirection}\n srOnly={labelSrOnly}\n disabled={disabled}\n skeleton={skeleton}\n />\n )}\n\n <span\n className=\"dnb-date-picker__inner\"\n ref={innerRef}\n {...remainingPickerProps}\n >\n <AlignmentHelper />\n\n <FormStatus\n show={showStatus}\n id={id + '-form-status'}\n globalStatus={globalStatus}\n label={String(label)}\n text_id={id + '-status'} // used for \"aria-describedby\"\n width_selector={id + '-shell'}\n text={status}\n state={statusState}\n no_animation={statusNoAnimation}\n skeleton={skeleton}\n {...statusProps}\n />\n\n <span className=\"dnb-date-picker__row\">\n <span className=\"dnb-date-picker__shell\" id={`${id}-shell`}>\n <DatePickerInput\n id={id}\n title={title}\n disabled={disabled}\n stretch={stretch}\n skeleton={skeleton}\n maskOrder={maskOrder}\n maskPlaceholder={maskPlaceholder}\n isRange={range}\n showInput={showInput}\n selectedDateTitle={selectedDateTitle}\n inputElement={inputElement}\n opened={opened}\n hidden={hidden}\n size={size}\n status={status ? 'error' : null}\n statusState={statusState}\n lang={context.locale}\n {...attributes}\n submitAttributes={remainingSubmitProps}\n onSubmit={togglePicker}\n {...statusProps}\n />\n\n {!hidden && (\n <DatePickerPortal\n alignment={alignPicker}\n skipPortal={skipPortal}\n targetElementRef={innerRef}\n >\n <span\n className={containerClassNames}\n ref={calendarContainerRef}\n >\n <span\n className=\"dnb-date-picker__triangle\"\n ref={triangleRef}\n />\n <DatePickerRange\n id={id}\n firstDayOfWeek={firstDay}\n resetDate={resetDate}\n isRange={range}\n isLink={link}\n isSync={sync}\n hideDays={hideDays}\n hideNavigation={hideNavigation}\n onlyMonth={onlyMonth}\n hideNextMonthWeek={hideLastWeek}\n noAutoFocus={disableAutofocus}\n onPickerChange={onPickerChange}\n locale={context.locale}\n />\n {(addonElement || shortcuts) && (\n <DatePickerAddon\n renderElement={addonElement}\n shortcuts={shortcuts}\n />\n )}\n <DatePickerFooter\n isRange={range}\n onSubmit={onSubmitHandler}\n onCancel={onCancelHandler}\n onReset={onResetHandler}\n submitButtonText={submitButtonText}\n cancelButtonText={cancelButtonText}\n resetButtonText={resetButtonText}\n />\n </span>\n </DatePickerPortal>\n )}\n </span>\n {suffix && (\n <Suffix\n className=\"dnb-date-picker__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n </span>\n\n <p className=\"dnb-sr-only\" aria-live=\"assertive\">\n {selectedDateTitle}\n </p>\n </span>\n </DatePickerProvider>\n )\n}\n\nconst NonAttributes = [\n 'locale',\n 'id',\n 'month',\n 'date',\n 'startDate',\n 'endDate',\n 'minDate',\n 'maxDate',\n 'enableKeyboardNav',\n 'hideNavigation',\n 'returnFormat',\n 'dateFormat',\n 'hideDays',\n 'correctInvalidDate',\n 'opened',\n 'direction',\n 'range',\n 'showInput',\n 'noAnimation',\n 'onDaysRender',\n 'onShow',\n 'onType',\n 'onHide',\n 'showSubmitButton',\n 'showCancelButton',\n 'selectedDate',\n 'selectedMonth',\n 'selectedYear',\n 'nextMonth',\n 'nextYear',\n 'openPickerText',\n 'placeholderCharacters',\n 'prevMonth',\n 'prevYear',\n 'endMonth',\n 'startMonth',\n 'alignPicker',\n 'preventClose',\n 'selectedDateRange',\n 'yearNavigation',\n]\n\nfunction filterOutNonAttributes(props: DatePickerProps) {\n return Object.keys(props).reduce((attributes, key) => {\n if (!NonAttributes.includes(key)) {\n attributes[key] = props[key]\n }\n return attributes\n }, {})\n}\n\nexport default DatePicker\n\nDatePicker._supportsSpacingProps = true\n"],"mappings":"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","ignoreList":[]}
@@ -5,6 +5,7 @@
5
5
  import React from 'react';
6
6
  import { InternalLocale } from '../../shared/Context';
7
7
  import { DatePickerChangeEvent } from './DatePickerProvider';
8
+ import { CalendarNavButtonProps } from './DatePickerCalendarNavigator';
8
9
  export type CalendarDay = {
9
10
  date: Date;
10
11
  isDisabled?: boolean;
@@ -21,7 +22,7 @@ export type CalendarDay = {
21
22
  };
22
23
  export type CalendarNavigationEvent = {
23
24
  nr: number;
24
- type?: CalendarButtonProps['type'];
25
+ type?: CalendarNavButtonProps['type'];
25
26
  };
26
27
  export type DatePickerCalendarProps = Omit<React.HTMLProps<HTMLElement>, 'onSelect' | 'onChange'> & {
27
28
  id?: string;
@@ -31,17 +32,13 @@ export type DatePickerCalendarProps = Omit<React.HTMLProps<HTMLElement>, 'onSele
31
32
  */
32
33
  month?: Date;
33
34
  hoverDate?: Date;
34
- prevBtn?: boolean;
35
- nextBtn?: boolean;
36
35
  firstDayOfWeek?: string;
37
- hideNav?: boolean;
36
+ hideNavigation?: boolean;
38
37
  hideDays?: boolean;
39
38
  onlyMonth?: boolean;
40
39
  hideNextMonthWeek?: boolean;
41
40
  noAutoFocus?: boolean;
42
41
  onSelect?: (event: DatePickerChangeEvent<React.MouseEvent<HTMLSpanElement> | React.KeyboardEvent<HTMLTableElement | HTMLButtonElement>>) => void;
43
- onPrev?: (event: CalendarNavigationEvent) => void;
44
- onNext?: (event: CalendarNavigationEvent) => void;
45
42
  onKeyDown?: (event: React.KeyboardEvent<HTMLTableElement | HTMLButtonElement>, tableRef: React.MutableRefObject<HTMLTableElement>, nr: number) => void;
46
43
  /**
47
44
  * 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`.
@@ -53,16 +50,3 @@ export type DatePickerCalendarProps = Omit<React.HTMLProps<HTMLElement>, 'onSele
53
50
  };
54
51
  declare function DatePickerCalendar(restOfProps: DatePickerCalendarProps): import("react/jsx-runtime").JSX.Element;
55
52
  export default DatePickerCalendar;
56
- export type CalendarButtonProps = {
57
- type: 'prev' | 'next';
58
- nr: number;
59
- date: Date;
60
- month: Date;
61
- locale?: InternalLocale;
62
- showButton: boolean;
63
- onClick: ({ nr, type, }: {
64
- nr: number;
65
- type: CalendarButtonProps['type'];
66
- }) => void;
67
- onKeyDown?: (event: React.KeyboardEvent<HTMLButtonElement>) => void;
68
- };
@@ -2,13 +2,11 @@
2
2
 
3
3
  import _extends from "@babel/runtime/helpers/esm/extends";
4
4
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
5
- var _Fragment;
6
5
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
7
6
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
8
7
  import React, { useCallback, useContext, useEffect, useMemo, useRef } from 'react';
9
8
  import classnames from 'classnames';
10
9
  import format from 'date-fns/format';
11
- import subMonths from 'date-fns/subMonths';
12
10
  import addMonths from 'date-fns/addMonths';
13
11
  import addWeeks from 'date-fns/addWeeks';
14
12
  import addDays from 'date-fns/addDays';
@@ -22,12 +20,9 @@ import setDate from 'date-fns/setDate';
22
20
  import { isDisabled, makeDayObject, toRange, getWeek, dayOffset, getCalendar, formatDate } from './DatePickerCalc';
23
21
  import Button from '../button/Button';
24
22
  import DatePickerContext from './DatePickerContext';
25
- import { useTranslation } from '../../shared';
23
+ import { DatePickerCalendarNav } from './DatePickerCalendarNavigator';
26
24
  const defaultProps = {
27
- prevBtn: true,
28
- nextBtn: true,
29
- firstDayOfWeek: 'monday',
30
- hideNav: false,
25
+ hideNavigation: false,
31
26
  hideDays: false,
32
27
  onlyMonth: false,
33
28
  hideNextMonthWeek: false,
@@ -37,10 +32,6 @@ const defaultProps = {
37
32
  };
38
33
  const arrowKeys = ['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown'];
39
34
  const keysToHandle = ['Enter', 'Space', ...arrowKeys];
40
- const titleFormat = {
41
- month: 'long',
42
- year: 'numeric'
43
- };
44
35
  function DatePickerCalendar(restOfProps) {
45
36
  const props = _objectSpread(_objectSpread({}, defaultProps), restOfProps);
46
37
  const {
@@ -54,13 +45,16 @@ function DatePickerCalendar(restOfProps) {
54
45
  endMonth,
55
46
  hoverDate,
56
47
  setHoverDate,
48
+ setSubmittedDates,
49
+ props: {
50
+ onDaysRender,
51
+ yearNavigation
52
+ },
57
53
  translation: {
58
54
  DatePicker: {
55
+ firstDay: defaultFirstDayOfWeek,
59
56
  selectedMonth
60
57
  }
61
- },
62
- props: {
63
- onDaysRender
64
58
  }
65
59
  } = useContext(DatePickerContext);
66
60
  const {
@@ -69,23 +63,18 @@ function DatePickerCalendar(restOfProps) {
69
63
  rtl,
70
64
  month,
71
65
  isRange,
72
- firstDayOfWeek,
73
- hideNav,
66
+ firstDayOfWeek = defaultFirstDayOfWeek,
67
+ hideNavigation,
74
68
  locale,
75
69
  hideDays,
76
- onPrev,
77
- onNext,
78
70
  onSelect,
79
71
  onKeyDown,
80
72
  resetDate,
81
- prevBtn,
82
- nextBtn,
83
73
  noAutoFocus,
84
74
  hideNextMonthWeek,
85
75
  onlyMonth
86
76
  } = props;
87
77
  const tableRef = useRef();
88
- const labelRef = useRef();
89
78
  const days = useRef({});
90
79
  const cache = useRef({});
91
80
  useEffect(() => {
@@ -97,6 +86,12 @@ function DatePickerCalendar(restOfProps) {
97
86
  }
98
87
  }
99
88
  }, [noAutoFocus, nr]);
89
+ useEffect(() => {
90
+ setSubmittedDates({
91
+ startDate,
92
+ endDate
93
+ });
94
+ }, []);
100
95
  const onMouseLeaveHandler = useCallback(() => {
101
96
  setHoverDate(undefined);
102
97
  }, [setHoverDate]);
@@ -201,7 +196,7 @@ function DatePickerCalendar(restOfProps) {
201
196
  dates.endDate = newDate;
202
197
  }
203
198
  }
204
- if (onlyMonth || hideNav) {
199
+ if (onlyMonth || hideNavigation) {
205
200
  if (!isSameMonth(dates.startDate, startDate) || !isSameMonth(dates.endDate, startDate)) {
206
201
  return;
207
202
  }
@@ -218,7 +213,7 @@ function DatePickerCalendar(restOfProps) {
218
213
  preventScroll: true
219
214
  });
220
215
  }
221
- }, [callOnSelect, findValid, hasReachedEnd, onKeyDown, startDate, endDate, updateDates, hideNav, isRange, keyNavCalc, nr, onlyMonth, endMonth, startMonth]);
216
+ }, [callOnSelect, findValid, hasReachedEnd, onKeyDown, startDate, endDate, updateDates, hideNavigation, isRange, keyNavCalc, nr, onlyMonth, endMonth, startMonth]);
222
217
  const cacheKey = useMemo(() => {
223
218
  return [nr, month, firstDayOfWeek, onlyMonth, hideNextMonthWeek, startDate, endDate, hoverDate, maxDate, minDate].join('|');
224
219
  }, [nr, month, firstDayOfWeek, onlyMonth, hideNextMonthWeek, startDate, endDate, hoverDate, maxDate, minDate]);
@@ -241,40 +236,37 @@ function DatePickerCalendar(restOfProps) {
241
236
  return React.createElement("div", {
242
237
  className: 'dnb-date-picker__calendar' + (rtl ? " rtl" : ""),
243
238
  lang: locale
244
- }, !hideNav && React.createElement("div", {
239
+ }, !hideNavigation && !onlyMonth && React.createElement("div", {
245
240
  className: "dnb-date-picker__header"
246
- }, React.createElement("div", {
247
- className: "dnb-date-picker__header__nav"
248
- }, React.createElement(CalendarButton, {
249
- type: "prev",
241
+ }, React.createElement(DatePickerCalendarNav, {
242
+ type: yearNavigation ? 'month' : 'both',
243
+ id: id,
250
244
  nr: nr,
251
- date: minDate,
252
- month: month,
253
- locale: locale,
254
- showButton: prevBtn,
255
- onClick: onPrev
256
- })), React.createElement("label", {
245
+ date: month,
246
+ locale: locale
247
+ }), yearNavigation && React.createElement(DatePickerCalendarNav, {
248
+ type: "year",
249
+ id: id,
250
+ nr: nr,
251
+ date: month,
252
+ locale: locale
253
+ })), onlyMonth && React.createElement("div", {
254
+ className: "dnb-date-picker__header dnb-date-picker__header--only-month-label"
255
+ }, React.createElement("label", {
257
256
  id: `${id}--title`,
258
257
  className: "dnb-date-picker__header__title dnb-no-focus",
259
258
  title: selectedMonth.replace(/%s/, formatDate(month, {
260
259
  locale,
261
- formatOptions: titleFormat
260
+ formatOptions: {
261
+ month: 'long'
262
+ }
262
263
  })),
263
- tabIndex: -1,
264
- ref: labelRef
264
+ tabIndex: -1
265
265
  }, formatDate(month, {
266
266
  locale,
267
- formatOptions: titleFormat
268
- })), React.createElement("div", {
269
- className: "dnb-date-picker__header__nav"
270
- }, React.createElement(CalendarButton, {
271
- type: "next",
272
- nr: nr,
273
- date: maxDate,
274
- month: month,
275
- locale: locale,
276
- showButton: nextBtn,
277
- onClick: onNext
267
+ formatOptions: {
268
+ month: 'long'
269
+ }
278
270
  }))), React.createElement("table", {
279
271
  role: "grid",
280
272
  className: "dnb-no-focus",
@@ -283,7 +275,7 @@ function DatePickerCalendar(restOfProps) {
283
275
  onKeyDown: onKeyDownHandler,
284
276
  onMouseLeave: onMouseLeaveHandler,
285
277
  ref: tableRef
286
- }, !hideDays && React.createElement("thead", {
278
+ }, !hideDays && !onlyMonth && React.createElement("thead", {
287
279
  "aria-hidden": true
288
280
  }, React.createElement("tr", {
289
281
  role: "row",
@@ -379,41 +371,6 @@ function DatePickerCalendar(restOfProps) {
379
371
  }))));
380
372
  }
381
373
  export default DatePickerCalendar;
382
- function CalendarButton({
383
- type,
384
- nr,
385
- date,
386
- month,
387
- locale,
388
- showButton,
389
- onClick,
390
- onKeyDown
391
- }) {
392
- const tr = useTranslation().DatePicker;
393
- if (!showButton) {
394
- return _Fragment || (_Fragment = React.createElement(React.Fragment, null));
395
- }
396
- const disabled = date && isSameMonth(month, date);
397
- const title = tr[`${type}Month`].replace(/%s/, formatDate(subMonths(month, 1), {
398
- locale,
399
- formatOptions: {
400
- month: 'long',
401
- year: 'numeric'
402
- }
403
- }));
404
- const icon = type === 'prev' ? 'chevron_left' : 'chevron_right';
405
- return React.createElement(Button, {
406
- className: `dnb-date-picker__${type}` + (disabled ? " disabled" : ""),
407
- icon: icon,
408
- size: "small",
409
- "aria-label": title,
410
- onClick: () => onClick && !disabled && onClick({
411
- nr,
412
- type
413
- }),
414
- onKeyDown: onKeyDown
415
- });
416
- }
417
374
  function onSelectRange({
418
375
  day,
419
376
  isRange,