@dnb/eufemia 10.54.0 → 10.55.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 (1121) hide show
  1. package/CHANGELOG.md +48 -0
  2. package/cjs/components/ListFormat.d.ts +12 -0
  3. package/cjs/components/ListFormat.js +24 -0
  4. package/cjs/components/ListFormat.js.map +1 -0
  5. package/cjs/components/anchor/Anchor.js +1 -1
  6. package/cjs/components/anchor/Anchor.js.map +1 -1
  7. package/cjs/components/autocomplete/Autocomplete.js +3 -3
  8. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  9. package/cjs/components/card/Card.js +14 -5
  10. package/cjs/components/card/Card.js.map +1 -1
  11. package/cjs/components/card/CardContext.d.ts +6 -0
  12. package/cjs/components/card/CardContext.js +12 -0
  13. package/cjs/components/card/CardContext.js.map +1 -0
  14. package/cjs/components/card/CardDocs.js +2 -2
  15. package/cjs/components/card/CardDocs.js.map +1 -1
  16. package/cjs/components/card/style/dnb-card.css +3 -0
  17. package/cjs/components/card/style/dnb-card.min.css +1 -1
  18. package/cjs/components/card/style/dnb-card.scss +5 -0
  19. package/cjs/components/card/style/themes/dnb-card-theme-sbanken.css +3 -0
  20. package/cjs/components/card/style/themes/dnb-card-theme-sbanken.min.css +1 -1
  21. package/cjs/components/card/style/themes/dnb-card-theme-sbanken.scss +5 -0
  22. package/cjs/components/card/style/themes/dnb-card-theme-ui.css +5 -0
  23. package/cjs/components/card/style/themes/dnb-card-theme-ui.min.css +1 -1
  24. package/cjs/components/card/style/themes/dnb-card-theme-ui.scss +7 -0
  25. package/cjs/components/country-flag/CountryFlagDocs.js +5 -0
  26. package/cjs/components/country-flag/CountryFlagDocs.js.map +1 -1
  27. package/cjs/components/date-picker/DatePicker.d.ts +261 -291
  28. package/cjs/components/date-picker/DatePicker.js +346 -482
  29. package/cjs/components/date-picker/DatePicker.js.map +1 -1
  30. package/cjs/components/date-picker/DatePickerAddon.d.ts +21 -20
  31. package/cjs/components/date-picker/DatePickerAddon.js +66 -84
  32. package/cjs/components/date-picker/DatePickerAddon.js.map +1 -1
  33. package/cjs/components/date-picker/DatePickerCalc.d.ts +19 -21
  34. package/cjs/components/date-picker/DatePickerCalc.js +44 -44
  35. package/cjs/components/date-picker/DatePickerCalc.js.map +1 -1
  36. package/cjs/components/date-picker/DatePickerCalendar.d.ts +73 -39
  37. package/cjs/components/date-picker/DatePickerCalendar.js +391 -535
  38. package/cjs/components/date-picker/DatePickerCalendar.js.map +1 -1
  39. package/cjs/components/date-picker/DatePickerContext.d.ts +26 -2
  40. package/cjs/components/date-picker/DatePickerContext.js.map +1 -1
  41. package/cjs/components/date-picker/DatePickerFooter.d.ts +20 -18
  42. package/cjs/components/date-picker/DatePickerFooter.js +92 -117
  43. package/cjs/components/date-picker/DatePickerFooter.js.map +1 -1
  44. package/cjs/components/date-picker/DatePickerInput.d.ts +56 -64
  45. package/cjs/components/date-picker/DatePickerInput.js +515 -533
  46. package/cjs/components/date-picker/DatePickerInput.js.map +1 -1
  47. package/cjs/components/date-picker/DatePickerOld.d.ts +334 -0
  48. package/cjs/components/date-picker/DatePickerOld.js +538 -0
  49. package/cjs/components/date-picker/DatePickerOld.js.map +1 -0
  50. package/cjs/components/date-picker/DatePickerProvider.d.ts +40 -17
  51. package/cjs/components/date-picker/DatePickerProvider.js +125 -236
  52. package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
  53. package/cjs/components/date-picker/DatePickerRange.d.ts +22 -20
  54. package/cjs/components/date-picker/DatePickerRange.js +61 -144
  55. package/cjs/components/date-picker/DatePickerRange.js.map +1 -1
  56. package/cjs/components/date-picker/hooks/useDates.d.ts +45 -0
  57. package/cjs/components/date-picker/hooks/useDates.js +182 -0
  58. package/cjs/components/date-picker/hooks/useDates.js.map +1 -0
  59. package/cjs/components/date-picker/hooks/useLastEventCallCache.d.ts +9 -0
  60. package/cjs/components/date-picker/hooks/useLastEventCallCache.js +16 -0
  61. package/cjs/components/date-picker/hooks/useLastEventCallCache.js.map +1 -0
  62. package/cjs/components/date-picker/hooks/useViews.d.ts +20 -0
  63. package/cjs/components/date-picker/hooks/useViews.js +84 -0
  64. package/cjs/components/date-picker/hooks/useViews.js.map +1 -0
  65. package/cjs/components/date-picker/style/dnb-date-picker.css +12 -1
  66. package/cjs/components/date-picker/style/dnb-date-picker.min.css +1 -1
  67. package/cjs/components/dropdown/Dropdown.js +3 -3
  68. package/cjs/components/dropdown/Dropdown.js.map +1 -1
  69. package/cjs/components/flex/StackDocs.d.ts +2 -0
  70. package/cjs/components/flex/StackDocs.js +30 -0
  71. package/cjs/components/flex/StackDocs.js.map +1 -0
  72. package/cjs/components/form-row/FormRow.js +3 -3
  73. package/cjs/components/form-row/FormRow.js.map +1 -1
  74. package/cjs/components/form-row/style/dnb-form-row.css +12 -1
  75. package/cjs/components/form-row/style/dnb-form-row.min.css +1 -1
  76. package/cjs/components/form-status/FormStatus.d.ts +4 -1
  77. package/cjs/components/icon/style/dnb-icon.scss +1 -1
  78. package/cjs/components/index.d.ts +2 -1
  79. package/cjs/components/index.js +7 -0
  80. package/cjs/components/index.js.map +1 -1
  81. package/cjs/components/input-masked/TextMask.d.ts +2 -1
  82. package/cjs/components/input-masked/style/dnb-input-masked.css +12 -1
  83. package/cjs/components/input-masked/style/dnb-input-masked.min.css +1 -1
  84. package/cjs/components/lib.d.ts +3 -1
  85. package/cjs/components/lib.js +8 -0
  86. package/cjs/components/lib.js.map +1 -1
  87. package/cjs/components/list-format/ListFormat.d.ts +40 -0
  88. package/cjs/components/list-format/ListFormat.js +122 -0
  89. package/cjs/components/list-format/ListFormat.js.map +1 -0
  90. package/cjs/components/list-format/ListFormatDocs.d.ts +2 -0
  91. package/cjs/components/list-format/ListFormatDocs.js +35 -0
  92. package/cjs/components/list-format/ListFormatDocs.js.map +1 -0
  93. package/cjs/components/list-format/index.d.ts +7 -0
  94. package/cjs/components/list-format/index.js +24 -0
  95. package/cjs/components/list-format/index.js.map +1 -0
  96. package/cjs/components/number-format/NumberUtils.js +1 -1
  97. package/cjs/components/number-format/NumberUtils.js.map +1 -1
  98. package/cjs/components/radio/style/dnb-radio.css +12 -1
  99. package/cjs/components/radio/style/dnb-radio.min.css +1 -1
  100. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js +1 -1
  101. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  102. package/cjs/components/textarea/Textarea.js +3 -3
  103. package/cjs/components/textarea/Textarea.js.map +1 -1
  104. package/cjs/components/toggle-button/ToggleButton.js +3 -3
  105. package/cjs/components/toggle-button/ToggleButton.js.map +1 -1
  106. package/cjs/components/toggle-button/style/dnb-toggle-button.css +12 -1
  107. package/cjs/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  108. package/cjs/components/upload/Upload.js +2 -1
  109. package/cjs/components/upload/Upload.js.map +1 -1
  110. package/cjs/components/upload/UploadContext.d.ts +1 -0
  111. package/cjs/components/upload/UploadContext.js +2 -1
  112. package/cjs/components/upload/UploadContext.js.map +1 -1
  113. package/cjs/components/upload/UploadDocs.js +5 -0
  114. package/cjs/components/upload/UploadDocs.js.map +1 -1
  115. package/cjs/components/upload/UploadDropzone.js.map +1 -1
  116. package/cjs/components/upload/UploadFileList.js +3 -1
  117. package/cjs/components/upload/UploadFileList.js.map +1 -1
  118. package/cjs/components/upload/UploadFileListCell.d.ts +22 -3
  119. package/cjs/components/upload/UploadFileListCell.js +17 -8
  120. package/cjs/components/upload/UploadFileListCell.js.map +1 -1
  121. package/cjs/components/upload/UploadInfo.js +7 -4
  122. package/cjs/components/upload/UploadInfo.js.map +1 -1
  123. package/cjs/components/upload/UploadVerify.d.ts +2 -2
  124. package/cjs/components/upload/UploadVerify.js.map +1 -1
  125. package/cjs/components/upload/style/dnb-upload.css +1 -1
  126. package/cjs/components/upload/style/dnb-upload.min.css +1 -1
  127. package/cjs/components/upload/style/dnb-upload.scss +1 -1
  128. package/cjs/components/upload/types.d.ts +11 -5
  129. package/cjs/components/upload/types.js.map +1 -1
  130. package/cjs/components/upload/useUpload.d.ts +6 -6
  131. package/cjs/components/upload/useUpload.js.map +1 -1
  132. package/cjs/elements/lists/style/lists-mixins.scss +1 -0
  133. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +1 -1
  134. package/cjs/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  135. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +11 -14
  136. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  137. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +3 -4
  138. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  139. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +4 -4
  140. package/cjs/extensions/forms/Field/Boolean/Boolean.d.ts +3 -2
  141. package/cjs/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  142. package/cjs/extensions/forms/Field/Composition/CompositionDocs.js +1 -1
  143. package/cjs/extensions/forms/Field/Composition/CompositionDocs.js.map +1 -1
  144. package/cjs/extensions/forms/Field/Date/Date.js +4 -12
  145. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  146. package/cjs/extensions/forms/Field/Expiry/Expiry.js +6 -14
  147. package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  148. package/cjs/extensions/forms/Field/FieldDocs.d.ts +2 -2
  149. package/cjs/extensions/forms/Field/FieldDocs.js +10 -10
  150. package/cjs/extensions/forms/Field/FieldDocs.js.map +1 -1
  151. package/cjs/extensions/forms/Field/Number/Number.d.ts +2 -1
  152. package/cjs/extensions/forms/Field/Number/Number.js +7 -19
  153. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  154. package/cjs/extensions/forms/Field/Number/style/dnb-number.css +0 -3
  155. package/cjs/extensions/forms/Field/Number/style/dnb-number.min.css +1 -1
  156. package/cjs/extensions/forms/Field/Number/style/dnb-number.scss +0 -2
  157. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +2 -2
  158. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +9 -10
  159. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  160. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.d.ts +1 -1
  161. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js +3 -3
  162. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js.map +1 -1
  163. package/cjs/extensions/forms/Field/Provider/FieldProviderDocs.js +6 -3
  164. package/cjs/extensions/forms/Field/Provider/FieldProviderDocs.js.map +1 -1
  165. package/cjs/extensions/forms/Field/Provider/useFieldProvider.d.ts +10 -3
  166. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +2 -1
  167. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +14 -12
  168. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  169. package/cjs/extensions/forms/Field/Selection/Selection.d.ts +2 -1
  170. package/cjs/extensions/forms/Field/Selection/Selection.js +5 -13
  171. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  172. package/cjs/extensions/forms/Field/Slider/Slider.d.ts +2 -1
  173. package/cjs/extensions/forms/Field/Slider/Slider.js +0 -13
  174. package/cjs/extensions/forms/Field/Slider/Slider.js.map +1 -1
  175. package/cjs/extensions/forms/Field/String/String.d.ts +2 -1
  176. package/cjs/extensions/forms/Field/String/String.js +7 -20
  177. package/cjs/extensions/forms/Field/String/String.js.map +1 -1
  178. package/cjs/extensions/forms/Field/Toggle/Toggle.d.ts +1 -1
  179. package/cjs/extensions/forms/Field/Toggle/Toggle.js +6 -18
  180. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  181. package/cjs/extensions/forms/Field/Upload/Upload.d.ts +4 -3
  182. package/cjs/extensions/forms/Field/Upload/Upload.js +2 -12
  183. package/cjs/extensions/forms/Field/Upload/Upload.js.map +1 -1
  184. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +45 -6
  185. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +39 -20
  186. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  187. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.d.ts +1 -0
  188. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  189. package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.d.ts +3 -2
  190. package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.js +20 -5
  191. package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
  192. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +34 -11
  193. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  194. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +56 -13
  195. package/cjs/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-sbanken.css +7 -0
  196. package/cjs/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-sbanken.min.css +1 -0
  197. package/cjs/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-sbanken.scss +10 -0
  198. package/cjs/extensions/forms/Form/Section/EditContainer/CancelButton.d.ts +1 -0
  199. package/cjs/extensions/forms/Form/Section/EditContainer/{EditToolbarTools.js → CancelButton.js} +15 -41
  200. package/cjs/extensions/forms/Form/Section/EditContainer/CancelButton.js.map +1 -0
  201. package/cjs/extensions/forms/Form/Section/EditContainer/DoneButton.d.ts +1 -0
  202. package/cjs/extensions/forms/Form/Section/EditContainer/DoneButton.js +52 -0
  203. package/cjs/extensions/forms/Form/Section/EditContainer/DoneButton.js.map +1 -0
  204. package/cjs/extensions/forms/Form/Section/EditContainer/EditContainer.d.ts +2 -0
  205. package/cjs/extensions/forms/Form/Section/EditContainer/EditContainer.js +11 -4
  206. package/cjs/extensions/forms/Form/Section/EditContainer/EditContainer.js.map +1 -1
  207. package/cjs/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js +1 -1
  208. package/cjs/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js.map +1 -1
  209. package/cjs/extensions/forms/Form/Section/Section.d.ts +4 -2
  210. package/cjs/extensions/forms/Form/Section/Section.js +2 -0
  211. package/cjs/extensions/forms/Form/Section/Section.js.map +1 -1
  212. package/cjs/extensions/forms/Form/Section/Toolbar/Toolbar.d.ts +7 -0
  213. package/cjs/extensions/forms/Form/Section/Toolbar/Toolbar.js +68 -0
  214. package/cjs/extensions/forms/Form/Section/Toolbar/Toolbar.js.map +1 -0
  215. package/cjs/extensions/forms/Form/Section/Toolbar/ToolbarContext.d.ts +9 -0
  216. package/cjs/extensions/forms/Form/Section/Toolbar/ToolbarContext.js +12 -0
  217. package/cjs/extensions/forms/Form/Section/Toolbar/ToolbarContext.js.map +1 -0
  218. package/cjs/extensions/forms/Form/Section/Toolbar/ToolbarDocs.d.ts +3 -0
  219. package/cjs/extensions/forms/Form/Section/Toolbar/ToolbarDocs.js +11 -0
  220. package/cjs/extensions/forms/Form/Section/Toolbar/ToolbarDocs.js.map +1 -0
  221. package/cjs/extensions/forms/Form/Section/Toolbar/index.d.ts +2 -0
  222. package/cjs/extensions/forms/Form/Section/Toolbar/index.js +27 -0
  223. package/cjs/extensions/forms/Form/Section/Toolbar/index.js.map +1 -0
  224. package/cjs/extensions/forms/Form/Section/ViewContainer/EditButton.d.ts +1 -0
  225. package/cjs/extensions/forms/Form/Section/ViewContainer/{ViewToolbarTools.js → EditButton.js} +12 -13
  226. package/cjs/extensions/forms/Form/Section/ViewContainer/EditButton.js.map +1 -0
  227. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainer.d.ts +1 -0
  228. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainer.js +9 -4
  229. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainer.js.map +1 -1
  230. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js +1 -1
  231. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js.map +1 -1
  232. package/cjs/extensions/forms/Form/Section/containers/SectionContainer.js +3 -2
  233. package/cjs/extensions/forms/Form/Section/containers/SectionContainer.js.map +1 -1
  234. package/cjs/extensions/forms/Form/Section/style/dnb-form-section.css +6 -13
  235. package/cjs/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -1
  236. package/cjs/extensions/forms/Form/Section/style/dnb-form-section.scss +11 -24
  237. package/cjs/extensions/forms/Iterate/Array/ArrayDocs.js +5 -5
  238. package/cjs/extensions/forms/Iterate/Array/ArrayDocs.js.map +1 -1
  239. package/cjs/extensions/forms/Iterate/Array/ArrayItemArea.js +3 -2
  240. package/cjs/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
  241. package/cjs/extensions/forms/Iterate/EditContainer/CancelButton.d.ts +1 -1
  242. package/cjs/extensions/forms/Iterate/EditContainer/CancelButton.js +2 -2
  243. package/cjs/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -1
  244. package/cjs/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +1 -1
  245. package/cjs/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  246. package/cjs/extensions/forms/Iterate/ViewContainer/EditButton.d.ts +1 -1
  247. package/cjs/extensions/forms/Iterate/ViewContainer/EditButton.js +2 -2
  248. package/cjs/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -1
  249. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +1 -1
  250. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  251. package/cjs/extensions/forms/Value/ArraySelection/ArraySelection.d.ts +2 -25
  252. package/cjs/extensions/forms/Value/ArraySelection/ArraySelection.js +16 -49
  253. package/cjs/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -1
  254. package/cjs/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js +7 -17
  255. package/cjs/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js.map +1 -1
  256. package/cjs/extensions/forms/Value/Composition/CompositionDocs.js +3 -1
  257. package/cjs/extensions/forms/Value/Composition/CompositionDocs.js.map +1 -1
  258. package/cjs/extensions/forms/Value/Provider/useValueProvider.d.ts +1 -1
  259. package/cjs/extensions/forms/Value/SummaryList/SummaryListDocs.js +5 -5
  260. package/cjs/extensions/forms/Value/SummaryList/SummaryListDocs.js.map +1 -1
  261. package/cjs/extensions/forms/Value/Upload/Upload.d.ts +11 -0
  262. package/cjs/extensions/forms/Value/Upload/Upload.js +99 -0
  263. package/cjs/extensions/forms/Value/Upload/Upload.js.map +1 -0
  264. package/cjs/extensions/forms/Value/Upload/UploadDocs.d.ts +2 -0
  265. package/cjs/extensions/forms/Value/Upload/UploadDocs.js +26 -0
  266. package/cjs/extensions/forms/Value/Upload/UploadDocs.js.map +1 -0
  267. package/cjs/extensions/forms/Value/Upload/index.d.ts +2 -0
  268. package/cjs/extensions/forms/Value/Upload/index.js +27 -0
  269. package/cjs/extensions/forms/Value/Upload/index.js.map +1 -0
  270. package/cjs/extensions/forms/Value/index.d.ts +1 -0
  271. package/cjs/extensions/forms/Value/index.js +7 -0
  272. package/cjs/extensions/forms/Value/index.js.map +1 -1
  273. package/cjs/extensions/forms/ValueBlock/ValueBlock.js +8 -3
  274. package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  275. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.css +0 -7
  276. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  277. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.scss +0 -10
  278. package/cjs/extensions/forms/Wizard/Step/StepDocs.js +1 -1
  279. package/cjs/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
  280. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +2 -0
  281. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  282. package/cjs/extensions/forms/hooks/DataValueWritePropsDocs.d.ts +3 -0
  283. package/cjs/extensions/forms/hooks/{DataValueDocs.js → DataValueWritePropsDocs.js} +6 -6
  284. package/cjs/extensions/forms/hooks/DataValueWritePropsDocs.js.map +1 -0
  285. package/cjs/extensions/forms/hooks/useDataValue.js +6 -1
  286. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
  287. package/cjs/extensions/forms/hooks/useFieldProps.js +8 -3
  288. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  289. package/cjs/extensions/forms/hooks/useValueProps.js +1 -6
  290. package/cjs/extensions/forms/hooks/useValueProps.js.map +1 -1
  291. package/cjs/extensions/forms/style/dnb-forms.css +45 -38
  292. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  293. package/cjs/extensions/forms/types.d.ts +6 -28
  294. package/cjs/extensions/forms/types.js.map +1 -1
  295. package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.css +2 -0
  296. package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -1
  297. package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.scss +2 -0
  298. package/cjs/index.d.ts +2 -1
  299. package/cjs/index.js +7 -0
  300. package/cjs/index.js.map +1 -1
  301. package/cjs/shared/Context.d.ts +4 -0
  302. package/cjs/shared/Context.js.map +1 -1
  303. package/cjs/shared/Eufemia.d.ts +1 -1
  304. package/cjs/shared/Eufemia.js +2 -2
  305. package/cjs/shared/Eufemia.js.map +1 -1
  306. package/cjs/shared/component-helper.d.ts +1 -1
  307. package/cjs/shared/component-helper.js.map +1 -1
  308. package/cjs/style/core/reset.scss +0 -8
  309. package/cjs/style/core/scopes.scss +1 -1
  310. package/cjs/style/core/utilities.scss +12 -16
  311. package/cjs/style/dnb-ui-basis.css +1 -7
  312. package/cjs/style/dnb-ui-basis.min.css +1 -1
  313. package/cjs/style/dnb-ui-body.css +1 -7
  314. package/cjs/style/dnb-ui-body.min.css +1 -1
  315. package/cjs/style/dnb-ui-components.css +109 -43
  316. package/cjs/style/dnb-ui-components.min.css +3 -3
  317. package/cjs/style/dnb-ui-core.css +1 -8
  318. package/cjs/style/dnb-ui-core.min.css +1 -1
  319. package/cjs/style/dnb-ui-elements.css +1 -0
  320. package/cjs/style/dnb-ui-elements.min.css +1 -1
  321. package/cjs/style/dnb-ui-extensions.css +45 -38
  322. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  323. package/cjs/style/dnb-ui-forms.css +45 -38
  324. package/cjs/style/dnb-ui-forms.min.css +1 -1
  325. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +1 -0
  326. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  327. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +159 -80
  328. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  329. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -0
  330. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  331. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +45 -38
  332. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  333. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +45 -38
  334. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  335. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +1 -0
  336. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  337. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +164 -83
  338. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +5 -5
  339. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -0
  340. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  341. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +50 -41
  342. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +2 -2
  343. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -1
  344. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +52 -41
  345. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +2 -2
  346. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.scss +1 -1
  347. package/cjs/style/themes/theme-ui/ui-theme-basis.css +1 -0
  348. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  349. package/cjs/style/themes/theme-ui/ui-theme-components.css +159 -80
  350. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  351. package/cjs/style/themes/theme-ui/ui-theme-elements.css +1 -0
  352. package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  353. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +45 -38
  354. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  355. package/cjs/style/themes/theme-ui/ui-theme-forms.css +45 -38
  356. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  357. package/cjs/style/themes/theme-ui/ui-theme-tags.css +1 -0
  358. package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  359. package/components/ListFormat.d.ts +12 -0
  360. package/components/ListFormat.js +4 -0
  361. package/components/ListFormat.js.map +1 -0
  362. package/components/anchor/Anchor.js +1 -1
  363. package/components/anchor/Anchor.js.map +1 -1
  364. package/components/autocomplete/Autocomplete.js +3 -3
  365. package/components/autocomplete/Autocomplete.js.map +1 -1
  366. package/components/card/Card.js +13 -5
  367. package/components/card/Card.js.map +1 -1
  368. package/components/card/CardContext.d.ts +6 -0
  369. package/components/card/CardContext.js +4 -0
  370. package/components/card/CardContext.js.map +1 -0
  371. package/components/card/CardDocs.js +2 -2
  372. package/components/card/CardDocs.js.map +1 -1
  373. package/components/card/style/dnb-card.css +3 -0
  374. package/components/card/style/dnb-card.min.css +1 -1
  375. package/components/card/style/dnb-card.scss +5 -0
  376. package/components/card/style/themes/dnb-card-theme-sbanken.css +3 -0
  377. package/components/card/style/themes/dnb-card-theme-sbanken.min.css +1 -1
  378. package/components/card/style/themes/dnb-card-theme-sbanken.scss +5 -0
  379. package/components/card/style/themes/dnb-card-theme-ui.css +5 -0
  380. package/components/card/style/themes/dnb-card-theme-ui.min.css +1 -1
  381. package/components/card/style/themes/dnb-card-theme-ui.scss +7 -0
  382. package/components/country-flag/CountryFlagDocs.js +5 -0
  383. package/components/country-flag/CountryFlagDocs.js.map +1 -1
  384. package/components/date-picker/DatePicker.d.ts +261 -291
  385. package/components/date-picker/DatePicker.js +343 -481
  386. package/components/date-picker/DatePicker.js.map +1 -1
  387. package/components/date-picker/DatePickerAddon.d.ts +21 -20
  388. package/components/date-picker/DatePickerAddon.js +64 -81
  389. package/components/date-picker/DatePickerAddon.js.map +1 -1
  390. package/components/date-picker/DatePickerCalc.d.ts +19 -21
  391. package/components/date-picker/DatePickerCalc.js +35 -34
  392. package/components/date-picker/DatePickerCalc.js.map +1 -1
  393. package/components/date-picker/DatePickerCalendar.d.ts +73 -39
  394. package/components/date-picker/DatePickerCalendar.js +389 -534
  395. package/components/date-picker/DatePickerCalendar.js.map +1 -1
  396. package/components/date-picker/DatePickerContext.d.ts +26 -2
  397. package/components/date-picker/DatePickerContext.js.map +1 -1
  398. package/components/date-picker/DatePickerFooter.d.ts +20 -18
  399. package/components/date-picker/DatePickerFooter.js +90 -116
  400. package/components/date-picker/DatePickerFooter.js.map +1 -1
  401. package/components/date-picker/DatePickerInput.d.ts +56 -64
  402. package/components/date-picker/DatePickerInput.js +515 -532
  403. package/components/date-picker/DatePickerInput.js.map +1 -1
  404. package/components/date-picker/DatePickerOld.d.ts +334 -0
  405. package/components/date-picker/DatePickerOld.js +528 -0
  406. package/components/date-picker/DatePickerOld.js.map +1 -0
  407. package/components/date-picker/DatePickerProvider.d.ts +40 -17
  408. package/components/date-picker/DatePickerProvider.js +123 -235
  409. package/components/date-picker/DatePickerProvider.js.map +1 -1
  410. package/components/date-picker/DatePickerRange.d.ts +22 -20
  411. package/components/date-picker/DatePickerRange.js +58 -140
  412. package/components/date-picker/DatePickerRange.js.map +1 -1
  413. package/components/date-picker/hooks/useDates.d.ts +45 -0
  414. package/components/date-picker/hooks/useDates.js +173 -0
  415. package/components/date-picker/hooks/useDates.js.map +1 -0
  416. package/components/date-picker/hooks/useLastEventCallCache.d.ts +9 -0
  417. package/components/date-picker/hooks/useLastEventCallCache.js +11 -0
  418. package/components/date-picker/hooks/useLastEventCallCache.js.map +1 -0
  419. package/components/date-picker/hooks/useViews.d.ts +20 -0
  420. package/components/date-picker/hooks/useViews.js +74 -0
  421. package/components/date-picker/hooks/useViews.js.map +1 -0
  422. package/components/date-picker/style/dnb-date-picker.css +12 -1
  423. package/components/date-picker/style/dnb-date-picker.min.css +1 -1
  424. package/components/dropdown/Dropdown.js +3 -3
  425. package/components/dropdown/Dropdown.js.map +1 -1
  426. package/components/flex/StackDocs.d.ts +2 -0
  427. package/components/flex/StackDocs.js +23 -0
  428. package/components/flex/StackDocs.js.map +1 -0
  429. package/components/form-row/FormRow.js +3 -3
  430. package/components/form-row/FormRow.js.map +1 -1
  431. package/components/form-row/style/dnb-form-row.css +12 -1
  432. package/components/form-row/style/dnb-form-row.min.css +1 -1
  433. package/components/form-status/FormStatus.d.ts +4 -1
  434. package/components/icon/style/dnb-icon.scss +1 -1
  435. package/components/index.d.ts +2 -1
  436. package/components/index.js +2 -1
  437. package/components/index.js.map +1 -1
  438. package/components/input-masked/TextMask.d.ts +2 -1
  439. package/components/input-masked/style/dnb-input-masked.css +12 -1
  440. package/components/input-masked/style/dnb-input-masked.min.css +1 -1
  441. package/components/lib.d.ts +3 -1
  442. package/components/lib.js +3 -1
  443. package/components/lib.js.map +1 -1
  444. package/components/list-format/ListFormat.d.ts +40 -0
  445. package/components/list-format/ListFormat.js +112 -0
  446. package/components/list-format/ListFormat.js.map +1 -0
  447. package/components/list-format/ListFormatDocs.d.ts +2 -0
  448. package/components/list-format/ListFormatDocs.js +28 -0
  449. package/components/list-format/ListFormatDocs.js.map +1 -0
  450. package/components/list-format/index.d.ts +7 -0
  451. package/components/list-format/index.js +4 -0
  452. package/components/list-format/index.js.map +1 -0
  453. package/components/number-format/NumberUtils.js +1 -1
  454. package/components/number-format/NumberUtils.js.map +1 -1
  455. package/components/radio/style/dnb-radio.css +12 -1
  456. package/components/radio/style/dnb-radio.min.css +1 -1
  457. package/components/step-indicator/StepIndicatorTriggerButton.js +1 -1
  458. package/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  459. package/components/textarea/Textarea.js +3 -3
  460. package/components/textarea/Textarea.js.map +1 -1
  461. package/components/toggle-button/ToggleButton.js +3 -3
  462. package/components/toggle-button/ToggleButton.js.map +1 -1
  463. package/components/toggle-button/style/dnb-toggle-button.css +12 -1
  464. package/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  465. package/components/upload/Upload.js +2 -1
  466. package/components/upload/Upload.js.map +1 -1
  467. package/components/upload/UploadContext.d.ts +1 -0
  468. package/components/upload/UploadContext.js +2 -1
  469. package/components/upload/UploadContext.js.map +1 -1
  470. package/components/upload/UploadDocs.js +5 -0
  471. package/components/upload/UploadDocs.js.map +1 -1
  472. package/components/upload/UploadDropzone.js.map +1 -1
  473. package/components/upload/UploadFileList.js +3 -1
  474. package/components/upload/UploadFileList.js.map +1 -1
  475. package/components/upload/UploadFileListCell.d.ts +22 -3
  476. package/components/upload/UploadFileListCell.js +16 -8
  477. package/components/upload/UploadFileListCell.js.map +1 -1
  478. package/components/upload/UploadInfo.js +7 -4
  479. package/components/upload/UploadInfo.js.map +1 -1
  480. package/components/upload/UploadVerify.d.ts +2 -2
  481. package/components/upload/UploadVerify.js.map +1 -1
  482. package/components/upload/style/dnb-upload.css +1 -1
  483. package/components/upload/style/dnb-upload.min.css +1 -1
  484. package/components/upload/style/dnb-upload.scss +1 -1
  485. package/components/upload/types.d.ts +11 -5
  486. package/components/upload/types.js.map +1 -1
  487. package/components/upload/useUpload.d.ts +6 -6
  488. package/components/upload/useUpload.js.map +1 -1
  489. package/elements/lists/style/lists-mixins.scss +1 -0
  490. package/es/components/ListFormat.d.ts +12 -0
  491. package/es/components/ListFormat.js +4 -0
  492. package/es/components/ListFormat.js.map +1 -0
  493. package/es/components/anchor/Anchor.js +1 -1
  494. package/es/components/anchor/Anchor.js.map +1 -1
  495. package/es/components/autocomplete/Autocomplete.js +3 -3
  496. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  497. package/es/components/card/Card.js +13 -5
  498. package/es/components/card/Card.js.map +1 -1
  499. package/es/components/card/CardContext.d.ts +6 -0
  500. package/es/components/card/CardContext.js +4 -0
  501. package/es/components/card/CardContext.js.map +1 -0
  502. package/es/components/card/CardDocs.js +2 -2
  503. package/es/components/card/CardDocs.js.map +1 -1
  504. package/es/components/card/style/dnb-card.css +3 -0
  505. package/es/components/card/style/dnb-card.min.css +1 -1
  506. package/es/components/card/style/dnb-card.scss +5 -0
  507. package/es/components/card/style/themes/dnb-card-theme-sbanken.css +3 -0
  508. package/es/components/card/style/themes/dnb-card-theme-sbanken.min.css +1 -1
  509. package/es/components/card/style/themes/dnb-card-theme-sbanken.scss +5 -0
  510. package/es/components/card/style/themes/dnb-card-theme-ui.css +5 -0
  511. package/es/components/card/style/themes/dnb-card-theme-ui.min.css +1 -1
  512. package/es/components/card/style/themes/dnb-card-theme-ui.scss +7 -0
  513. package/es/components/country-flag/CountryFlagDocs.js +5 -0
  514. package/es/components/country-flag/CountryFlagDocs.js.map +1 -1
  515. package/es/components/date-picker/DatePicker.d.ts +261 -291
  516. package/es/components/date-picker/DatePicker.js +342 -481
  517. package/es/components/date-picker/DatePicker.js.map +1 -1
  518. package/es/components/date-picker/DatePickerAddon.d.ts +21 -20
  519. package/es/components/date-picker/DatePickerAddon.js +65 -82
  520. package/es/components/date-picker/DatePickerAddon.js.map +1 -1
  521. package/es/components/date-picker/DatePickerCalc.d.ts +19 -21
  522. package/es/components/date-picker/DatePickerCalc.js +38 -37
  523. package/es/components/date-picker/DatePickerCalc.js.map +1 -1
  524. package/es/components/date-picker/DatePickerCalendar.d.ts +73 -39
  525. package/es/components/date-picker/DatePickerCalendar.js +387 -531
  526. package/es/components/date-picker/DatePickerCalendar.js.map +1 -1
  527. package/es/components/date-picker/DatePickerContext.d.ts +26 -2
  528. package/es/components/date-picker/DatePickerContext.js.map +1 -1
  529. package/es/components/date-picker/DatePickerFooter.d.ts +20 -18
  530. package/es/components/date-picker/DatePickerFooter.js +89 -116
  531. package/es/components/date-picker/DatePickerFooter.js.map +1 -1
  532. package/es/components/date-picker/DatePickerInput.d.ts +56 -64
  533. package/es/components/date-picker/DatePickerInput.js +508 -525
  534. package/es/components/date-picker/DatePickerInput.js.map +1 -1
  535. package/es/components/date-picker/DatePickerOld.d.ts +334 -0
  536. package/es/components/date-picker/DatePickerOld.js +528 -0
  537. package/es/components/date-picker/DatePickerOld.js.map +1 -0
  538. package/es/components/date-picker/DatePickerProvider.d.ts +40 -17
  539. package/es/components/date-picker/DatePickerProvider.js +122 -230
  540. package/es/components/date-picker/DatePickerProvider.js.map +1 -1
  541. package/es/components/date-picker/DatePickerRange.d.ts +22 -20
  542. package/es/components/date-picker/DatePickerRange.js +57 -138
  543. package/es/components/date-picker/DatePickerRange.js.map +1 -1
  544. package/es/components/date-picker/hooks/useDates.d.ts +45 -0
  545. package/es/components/date-picker/hooks/useDates.js +169 -0
  546. package/es/components/date-picker/hooks/useDates.js.map +1 -0
  547. package/es/components/date-picker/hooks/useLastEventCallCache.d.ts +9 -0
  548. package/es/components/date-picker/hooks/useLastEventCallCache.js +11 -0
  549. package/es/components/date-picker/hooks/useLastEventCallCache.js.map +1 -0
  550. package/es/components/date-picker/hooks/useViews.d.ts +20 -0
  551. package/es/components/date-picker/hooks/useViews.js +72 -0
  552. package/es/components/date-picker/hooks/useViews.js.map +1 -0
  553. package/es/components/date-picker/style/dnb-date-picker.css +12 -1
  554. package/es/components/date-picker/style/dnb-date-picker.min.css +1 -1
  555. package/es/components/dropdown/Dropdown.js +3 -3
  556. package/es/components/dropdown/Dropdown.js.map +1 -1
  557. package/es/components/flex/StackDocs.d.ts +2 -0
  558. package/es/components/flex/StackDocs.js +23 -0
  559. package/es/components/flex/StackDocs.js.map +1 -0
  560. package/es/components/form-row/FormRow.js +3 -3
  561. package/es/components/form-row/FormRow.js.map +1 -1
  562. package/es/components/form-row/style/dnb-form-row.css +12 -1
  563. package/es/components/form-row/style/dnb-form-row.min.css +1 -1
  564. package/es/components/form-status/FormStatus.d.ts +4 -1
  565. package/es/components/icon/style/dnb-icon.scss +1 -1
  566. package/es/components/index.d.ts +2 -1
  567. package/es/components/index.js +2 -1
  568. package/es/components/index.js.map +1 -1
  569. package/es/components/input-masked/TextMask.d.ts +2 -1
  570. package/es/components/input-masked/style/dnb-input-masked.css +12 -1
  571. package/es/components/input-masked/style/dnb-input-masked.min.css +1 -1
  572. package/es/components/lib.d.ts +3 -1
  573. package/es/components/lib.js +3 -1
  574. package/es/components/lib.js.map +1 -1
  575. package/es/components/list-format/ListFormat.d.ts +40 -0
  576. package/es/components/list-format/ListFormat.js +111 -0
  577. package/es/components/list-format/ListFormat.js.map +1 -0
  578. package/es/components/list-format/ListFormatDocs.d.ts +2 -0
  579. package/es/components/list-format/ListFormatDocs.js +28 -0
  580. package/es/components/list-format/ListFormatDocs.js.map +1 -0
  581. package/es/components/list-format/index.d.ts +7 -0
  582. package/es/components/list-format/index.js +4 -0
  583. package/es/components/list-format/index.js.map +1 -0
  584. package/es/components/number-format/NumberUtils.js +1 -1
  585. package/es/components/number-format/NumberUtils.js.map +1 -1
  586. package/es/components/radio/style/dnb-radio.css +12 -1
  587. package/es/components/radio/style/dnb-radio.min.css +1 -1
  588. package/es/components/step-indicator/StepIndicatorTriggerButton.js +1 -1
  589. package/es/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  590. package/es/components/textarea/Textarea.js +3 -3
  591. package/es/components/textarea/Textarea.js.map +1 -1
  592. package/es/components/toggle-button/ToggleButton.js +3 -3
  593. package/es/components/toggle-button/ToggleButton.js.map +1 -1
  594. package/es/components/toggle-button/style/dnb-toggle-button.css +12 -1
  595. package/es/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  596. package/es/components/upload/Upload.js +2 -1
  597. package/es/components/upload/Upload.js.map +1 -1
  598. package/es/components/upload/UploadContext.d.ts +1 -0
  599. package/es/components/upload/UploadContext.js +2 -1
  600. package/es/components/upload/UploadContext.js.map +1 -1
  601. package/es/components/upload/UploadDocs.js +5 -0
  602. package/es/components/upload/UploadDocs.js.map +1 -1
  603. package/es/components/upload/UploadDropzone.js.map +1 -1
  604. package/es/components/upload/UploadFileList.js +3 -1
  605. package/es/components/upload/UploadFileList.js.map +1 -1
  606. package/es/components/upload/UploadFileListCell.d.ts +22 -3
  607. package/es/components/upload/UploadFileListCell.js +16 -8
  608. package/es/components/upload/UploadFileListCell.js.map +1 -1
  609. package/es/components/upload/UploadInfo.js +7 -4
  610. package/es/components/upload/UploadInfo.js.map +1 -1
  611. package/es/components/upload/UploadVerify.d.ts +2 -2
  612. package/es/components/upload/UploadVerify.js.map +1 -1
  613. package/es/components/upload/style/dnb-upload.css +1 -1
  614. package/es/components/upload/style/dnb-upload.min.css +1 -1
  615. package/es/components/upload/style/dnb-upload.scss +1 -1
  616. package/es/components/upload/types.d.ts +11 -5
  617. package/es/components/upload/types.js.map +1 -1
  618. package/es/components/upload/useUpload.d.ts +6 -6
  619. package/es/components/upload/useUpload.js.map +1 -1
  620. package/es/elements/lists/style/lists-mixins.scss +1 -0
  621. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +1 -1
  622. package/es/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  623. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +11 -14
  624. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  625. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +3 -4
  626. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  627. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +4 -4
  628. package/es/extensions/forms/Field/Boolean/Boolean.d.ts +3 -2
  629. package/es/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  630. package/es/extensions/forms/Field/Composition/CompositionDocs.js +2 -2
  631. package/es/extensions/forms/Field/Composition/CompositionDocs.js.map +1 -1
  632. package/es/extensions/forms/Field/Date/Date.js +4 -12
  633. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  634. package/es/extensions/forms/Field/Expiry/Expiry.js +6 -14
  635. package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  636. package/es/extensions/forms/Field/FieldDocs.d.ts +2 -2
  637. package/es/extensions/forms/Field/FieldDocs.js +8 -8
  638. package/es/extensions/forms/Field/FieldDocs.js.map +1 -1
  639. package/es/extensions/forms/Field/Number/Number.d.ts +2 -1
  640. package/es/extensions/forms/Field/Number/Number.js +8 -19
  641. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  642. package/es/extensions/forms/Field/Number/style/dnb-number.css +0 -3
  643. package/es/extensions/forms/Field/Number/style/dnb-number.min.css +1 -1
  644. package/es/extensions/forms/Field/Number/style/dnb-number.scss +0 -2
  645. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +2 -2
  646. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +9 -10
  647. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  648. package/es/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.d.ts +1 -1
  649. package/es/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js +1 -1
  650. package/es/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js.map +1 -1
  651. package/es/extensions/forms/Field/Provider/FieldProviderDocs.js +6 -3
  652. package/es/extensions/forms/Field/Provider/FieldProviderDocs.js.map +1 -1
  653. package/es/extensions/forms/Field/Provider/useFieldProvider.d.ts +10 -3
  654. package/es/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +2 -1
  655. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +14 -12
  656. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  657. package/es/extensions/forms/Field/Selection/Selection.d.ts +2 -1
  658. package/es/extensions/forms/Field/Selection/Selection.js +5 -13
  659. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  660. package/es/extensions/forms/Field/Slider/Slider.d.ts +2 -1
  661. package/es/extensions/forms/Field/Slider/Slider.js +0 -13
  662. package/es/extensions/forms/Field/Slider/Slider.js.map +1 -1
  663. package/es/extensions/forms/Field/String/String.d.ts +2 -1
  664. package/es/extensions/forms/Field/String/String.js +7 -20
  665. package/es/extensions/forms/Field/String/String.js.map +1 -1
  666. package/es/extensions/forms/Field/Toggle/Toggle.d.ts +1 -1
  667. package/es/extensions/forms/Field/Toggle/Toggle.js +6 -18
  668. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  669. package/es/extensions/forms/Field/Upload/Upload.d.ts +4 -3
  670. package/es/extensions/forms/Field/Upload/Upload.js +2 -12
  671. package/es/extensions/forms/Field/Upload/Upload.js.map +1 -1
  672. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +45 -6
  673. package/es/extensions/forms/FieldBlock/FieldBlock.js +39 -20
  674. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  675. package/es/extensions/forms/FieldBlock/FieldBlockContext.d.ts +1 -0
  676. package/es/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  677. package/es/extensions/forms/FieldBlock/FieldBlockDocs.d.ts +3 -2
  678. package/es/extensions/forms/FieldBlock/FieldBlockDocs.js +17 -2
  679. package/es/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
  680. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +34 -11
  681. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  682. package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +56 -13
  683. package/es/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-sbanken.css +7 -0
  684. package/es/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-sbanken.min.css +1 -0
  685. package/es/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-sbanken.scss +10 -0
  686. package/es/extensions/forms/Form/Section/EditContainer/CancelButton.d.ts +1 -0
  687. package/es/extensions/forms/Form/Section/EditContainer/CancelButton.js +51 -0
  688. package/es/extensions/forms/Form/Section/EditContainer/CancelButton.js.map +1 -0
  689. package/es/extensions/forms/Form/Section/EditContainer/DoneButton.d.ts +1 -0
  690. package/es/extensions/forms/Form/Section/EditContainer/DoneButton.js +44 -0
  691. package/es/extensions/forms/Form/Section/EditContainer/DoneButton.js.map +1 -0
  692. package/es/extensions/forms/Form/Section/EditContainer/EditContainer.d.ts +2 -0
  693. package/es/extensions/forms/Form/Section/EditContainer/EditContainer.js +11 -4
  694. package/es/extensions/forms/Form/Section/EditContainer/EditContainer.js.map +1 -1
  695. package/es/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js +1 -1
  696. package/es/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js.map +1 -1
  697. package/es/extensions/forms/Form/Section/Section.d.ts +4 -2
  698. package/es/extensions/forms/Form/Section/Section.js +2 -0
  699. package/es/extensions/forms/Form/Section/Section.js.map +1 -1
  700. package/es/extensions/forms/Form/Section/Toolbar/Toolbar.d.ts +7 -0
  701. package/es/extensions/forms/Form/Section/Toolbar/Toolbar.js +59 -0
  702. package/es/extensions/forms/Form/Section/Toolbar/Toolbar.js.map +1 -0
  703. package/es/extensions/forms/Form/Section/Toolbar/ToolbarContext.d.ts +9 -0
  704. package/es/extensions/forms/Form/Section/Toolbar/ToolbarContext.js +4 -0
  705. package/es/extensions/forms/Form/Section/Toolbar/ToolbarContext.js.map +1 -0
  706. package/es/extensions/forms/Form/Section/Toolbar/ToolbarDocs.d.ts +3 -0
  707. package/es/extensions/forms/Form/Section/Toolbar/ToolbarDocs.js +3 -0
  708. package/es/extensions/forms/Form/Section/Toolbar/ToolbarDocs.js.map +1 -0
  709. package/es/extensions/forms/Form/Section/Toolbar/index.d.ts +2 -0
  710. package/es/extensions/forms/Form/Section/Toolbar/index.js +3 -0
  711. package/es/extensions/forms/Form/Section/Toolbar/index.js.map +1 -0
  712. package/es/extensions/forms/Form/Section/ViewContainer/EditButton.d.ts +1 -0
  713. package/es/extensions/forms/Form/Section/ViewContainer/{ViewToolbarTools.js → EditButton.js} +10 -11
  714. package/es/extensions/forms/Form/Section/ViewContainer/EditButton.js.map +1 -0
  715. package/es/extensions/forms/Form/Section/ViewContainer/ViewContainer.d.ts +1 -0
  716. package/es/extensions/forms/Form/Section/ViewContainer/ViewContainer.js +9 -4
  717. package/es/extensions/forms/Form/Section/ViewContainer/ViewContainer.js.map +1 -1
  718. package/es/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js +1 -1
  719. package/es/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js.map +1 -1
  720. package/es/extensions/forms/Form/Section/containers/SectionContainer.js +4 -3
  721. package/es/extensions/forms/Form/Section/containers/SectionContainer.js.map +1 -1
  722. package/es/extensions/forms/Form/Section/style/dnb-form-section.css +6 -13
  723. package/es/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -1
  724. package/es/extensions/forms/Form/Section/style/dnb-form-section.scss +11 -24
  725. package/es/extensions/forms/Iterate/Array/ArrayDocs.js +5 -5
  726. package/es/extensions/forms/Iterate/Array/ArrayDocs.js.map +1 -1
  727. package/es/extensions/forms/Iterate/Array/ArrayItemArea.js +4 -3
  728. package/es/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
  729. package/es/extensions/forms/Iterate/EditContainer/CancelButton.d.ts +1 -1
  730. package/es/extensions/forms/Iterate/EditContainer/CancelButton.js +1 -1
  731. package/es/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -1
  732. package/es/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +1 -1
  733. package/es/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  734. package/es/extensions/forms/Iterate/ViewContainer/EditButton.d.ts +1 -1
  735. package/es/extensions/forms/Iterate/ViewContainer/EditButton.js +1 -1
  736. package/es/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -1
  737. package/es/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +1 -1
  738. package/es/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  739. package/es/extensions/forms/Value/ArraySelection/ArraySelection.d.ts +2 -25
  740. package/es/extensions/forms/Value/ArraySelection/ArraySelection.js +14 -45
  741. package/es/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -1
  742. package/es/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js +5 -17
  743. package/es/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js.map +1 -1
  744. package/es/extensions/forms/Value/Composition/CompositionDocs.js +3 -1
  745. package/es/extensions/forms/Value/Composition/CompositionDocs.js.map +1 -1
  746. package/es/extensions/forms/Value/Provider/useValueProvider.d.ts +1 -1
  747. package/es/extensions/forms/Value/SummaryList/SummaryListDocs.js +5 -5
  748. package/es/extensions/forms/Value/SummaryList/SummaryListDocs.js.map +1 -1
  749. package/es/extensions/forms/Value/Upload/Upload.d.ts +11 -0
  750. package/es/extensions/forms/Value/Upload/Upload.js +88 -0
  751. package/es/extensions/forms/Value/Upload/Upload.js.map +1 -0
  752. package/es/extensions/forms/Value/Upload/UploadDocs.d.ts +2 -0
  753. package/es/extensions/forms/Value/Upload/UploadDocs.js +17 -0
  754. package/es/extensions/forms/Value/Upload/UploadDocs.js.map +1 -0
  755. package/es/extensions/forms/Value/Upload/index.d.ts +2 -0
  756. package/es/extensions/forms/Value/Upload/index.js +3 -0
  757. package/es/extensions/forms/Value/Upload/index.js.map +1 -0
  758. package/es/extensions/forms/Value/index.d.ts +1 -0
  759. package/es/extensions/forms/Value/index.js +1 -0
  760. package/es/extensions/forms/Value/index.js.map +1 -1
  761. package/es/extensions/forms/ValueBlock/ValueBlock.js +8 -3
  762. package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  763. package/es/extensions/forms/ValueBlock/style/dnb-value-block.css +0 -7
  764. package/es/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  765. package/es/extensions/forms/ValueBlock/style/dnb-value-block.scss +0 -10
  766. package/es/extensions/forms/Wizard/Step/StepDocs.js +1 -1
  767. package/es/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
  768. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +2 -0
  769. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  770. package/es/extensions/forms/hooks/DataValueWritePropsDocs.d.ts +3 -0
  771. package/es/extensions/forms/hooks/{DataValueDocs.js → DataValueWritePropsDocs.js} +3 -3
  772. package/es/extensions/forms/hooks/DataValueWritePropsDocs.js.map +1 -0
  773. package/es/extensions/forms/hooks/useDataValue.js +6 -1
  774. package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
  775. package/es/extensions/forms/hooks/useFieldProps.js +8 -3
  776. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  777. package/es/extensions/forms/hooks/useValueProps.js +1 -6
  778. package/es/extensions/forms/hooks/useValueProps.js.map +1 -1
  779. package/es/extensions/forms/style/dnb-forms.css +45 -38
  780. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  781. package/es/extensions/forms/types.d.ts +6 -28
  782. package/es/extensions/forms/types.js.map +1 -1
  783. package/es/extensions/forms/utils/TestElement/style/dnb-test-element.css +2 -0
  784. package/es/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -1
  785. package/es/extensions/forms/utils/TestElement/style/dnb-test-element.scss +2 -0
  786. package/es/index.d.ts +2 -1
  787. package/es/index.js +2 -1
  788. package/es/index.js.map +1 -1
  789. package/es/shared/Context.d.ts +4 -0
  790. package/es/shared/Context.js.map +1 -1
  791. package/es/shared/Eufemia.d.ts +1 -1
  792. package/es/shared/Eufemia.js +2 -2
  793. package/es/shared/Eufemia.js.map +1 -1
  794. package/es/shared/component-helper.d.ts +1 -1
  795. package/es/shared/component-helper.js.map +1 -1
  796. package/es/style/core/reset.scss +0 -8
  797. package/es/style/core/scopes.scss +1 -1
  798. package/es/style/core/utilities.scss +12 -16
  799. package/es/style/dnb-ui-basis.css +1 -7
  800. package/es/style/dnb-ui-basis.min.css +1 -1
  801. package/es/style/dnb-ui-body.css +1 -7
  802. package/es/style/dnb-ui-body.min.css +1 -1
  803. package/es/style/dnb-ui-components.css +109 -43
  804. package/es/style/dnb-ui-components.min.css +3 -3
  805. package/es/style/dnb-ui-core.css +1 -8
  806. package/es/style/dnb-ui-core.min.css +1 -1
  807. package/es/style/dnb-ui-elements.css +1 -0
  808. package/es/style/dnb-ui-elements.min.css +1 -1
  809. package/es/style/dnb-ui-extensions.css +45 -38
  810. package/es/style/dnb-ui-extensions.min.css +1 -1
  811. package/es/style/dnb-ui-forms.css +45 -38
  812. package/es/style/dnb-ui-forms.min.css +1 -1
  813. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +1 -0
  814. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  815. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +159 -80
  816. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  817. package/es/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -0
  818. package/es/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  819. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +45 -38
  820. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  821. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +45 -38
  822. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  823. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +1 -0
  824. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  825. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +164 -83
  826. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +5 -5
  827. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -0
  828. package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  829. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +50 -41
  830. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +2 -2
  831. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -1
  832. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +52 -41
  833. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +2 -2
  834. package/es/style/themes/theme-sbanken/sbanken-theme-forms.scss +1 -1
  835. package/es/style/themes/theme-ui/ui-theme-basis.css +1 -0
  836. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  837. package/es/style/themes/theme-ui/ui-theme-components.css +159 -80
  838. package/es/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  839. package/es/style/themes/theme-ui/ui-theme-elements.css +1 -0
  840. package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  841. package/es/style/themes/theme-ui/ui-theme-extensions.css +45 -38
  842. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  843. package/es/style/themes/theme-ui/ui-theme-forms.css +45 -38
  844. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  845. package/es/style/themes/theme-ui/ui-theme-tags.css +1 -0
  846. package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  847. package/esm/dnb-ui-basis.min.mjs +1 -1
  848. package/esm/dnb-ui-components.min.mjs +1 -1
  849. package/esm/dnb-ui-elements.min.mjs +1 -1
  850. package/esm/dnb-ui-extensions.min.mjs +3 -3
  851. package/esm/dnb-ui-lib.min.mjs +1 -1
  852. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js +1 -1
  853. package/extensions/forms/DataContext/FieldBoundary/FieldBoundaryProvider.js.map +1 -1
  854. package/extensions/forms/Field/ArraySelection/ArraySelection.js +11 -14
  855. package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  856. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +3 -4
  857. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  858. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +4 -4
  859. package/extensions/forms/Field/Boolean/Boolean.d.ts +3 -2
  860. package/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  861. package/extensions/forms/Field/Composition/CompositionDocs.js +2 -2
  862. package/extensions/forms/Field/Composition/CompositionDocs.js.map +1 -1
  863. package/extensions/forms/Field/Date/Date.js +4 -12
  864. package/extensions/forms/Field/Date/Date.js.map +1 -1
  865. package/extensions/forms/Field/Expiry/Expiry.js +6 -14
  866. package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  867. package/extensions/forms/Field/FieldDocs.d.ts +2 -2
  868. package/extensions/forms/Field/FieldDocs.js +8 -8
  869. package/extensions/forms/Field/FieldDocs.js.map +1 -1
  870. package/extensions/forms/Field/Number/Number.d.ts +2 -1
  871. package/extensions/forms/Field/Number/Number.js +7 -19
  872. package/extensions/forms/Field/Number/Number.js.map +1 -1
  873. package/extensions/forms/Field/Number/style/dnb-number.css +0 -3
  874. package/extensions/forms/Field/Number/style/dnb-number.min.css +1 -1
  875. package/extensions/forms/Field/Number/style/dnb-number.scss +0 -2
  876. package/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +2 -2
  877. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +9 -10
  878. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  879. package/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.d.ts +1 -1
  880. package/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js +1 -1
  881. package/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js.map +1 -1
  882. package/extensions/forms/Field/Provider/FieldProviderDocs.js +6 -3
  883. package/extensions/forms/Field/Provider/FieldProviderDocs.js.map +1 -1
  884. package/extensions/forms/Field/Provider/useFieldProvider.d.ts +10 -3
  885. package/extensions/forms/Field/SelectCountry/SelectCountry.d.ts +2 -1
  886. package/extensions/forms/Field/SelectCountry/SelectCountry.js +14 -12
  887. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  888. package/extensions/forms/Field/Selection/Selection.d.ts +2 -1
  889. package/extensions/forms/Field/Selection/Selection.js +5 -13
  890. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  891. package/extensions/forms/Field/Slider/Slider.d.ts +2 -1
  892. package/extensions/forms/Field/Slider/Slider.js +0 -13
  893. package/extensions/forms/Field/Slider/Slider.js.map +1 -1
  894. package/extensions/forms/Field/String/String.d.ts +2 -1
  895. package/extensions/forms/Field/String/String.js +7 -20
  896. package/extensions/forms/Field/String/String.js.map +1 -1
  897. package/extensions/forms/Field/Toggle/Toggle.d.ts +1 -1
  898. package/extensions/forms/Field/Toggle/Toggle.js +6 -18
  899. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  900. package/extensions/forms/Field/Upload/Upload.d.ts +4 -3
  901. package/extensions/forms/Field/Upload/Upload.js +2 -12
  902. package/extensions/forms/Field/Upload/Upload.js.map +1 -1
  903. package/extensions/forms/FieldBlock/FieldBlock.d.ts +45 -6
  904. package/extensions/forms/FieldBlock/FieldBlock.js +39 -20
  905. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  906. package/extensions/forms/FieldBlock/FieldBlockContext.d.ts +1 -0
  907. package/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -1
  908. package/extensions/forms/FieldBlock/FieldBlockDocs.d.ts +3 -2
  909. package/extensions/forms/FieldBlock/FieldBlockDocs.js +17 -2
  910. package/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
  911. package/extensions/forms/FieldBlock/style/dnb-field-block.css +34 -11
  912. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  913. package/extensions/forms/FieldBlock/style/dnb-field-block.scss +56 -13
  914. package/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-sbanken.css +7 -0
  915. package/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-sbanken.min.css +1 -0
  916. package/extensions/forms/FieldBlock/style/themes/dnb-field-block-theme-sbanken.scss +10 -0
  917. package/extensions/forms/Form/Section/EditContainer/CancelButton.d.ts +1 -0
  918. package/extensions/forms/Form/Section/EditContainer/CancelButton.js +51 -0
  919. package/extensions/forms/Form/Section/EditContainer/CancelButton.js.map +1 -0
  920. package/extensions/forms/Form/Section/EditContainer/DoneButton.d.ts +1 -0
  921. package/extensions/forms/Form/Section/EditContainer/DoneButton.js +44 -0
  922. package/extensions/forms/Form/Section/EditContainer/DoneButton.js.map +1 -0
  923. package/extensions/forms/Form/Section/EditContainer/EditContainer.d.ts +2 -0
  924. package/extensions/forms/Form/Section/EditContainer/EditContainer.js +11 -4
  925. package/extensions/forms/Form/Section/EditContainer/EditContainer.js.map +1 -1
  926. package/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js +1 -1
  927. package/extensions/forms/Form/Section/EditContainer/EditContainerDocs.js.map +1 -1
  928. package/extensions/forms/Form/Section/Section.d.ts +4 -2
  929. package/extensions/forms/Form/Section/Section.js +2 -0
  930. package/extensions/forms/Form/Section/Section.js.map +1 -1
  931. package/extensions/forms/Form/Section/Toolbar/Toolbar.d.ts +7 -0
  932. package/extensions/forms/Form/Section/Toolbar/Toolbar.js +59 -0
  933. package/extensions/forms/Form/Section/Toolbar/Toolbar.js.map +1 -0
  934. package/extensions/forms/Form/Section/Toolbar/ToolbarContext.d.ts +9 -0
  935. package/extensions/forms/Form/Section/Toolbar/ToolbarContext.js +4 -0
  936. package/extensions/forms/Form/Section/Toolbar/ToolbarContext.js.map +1 -0
  937. package/extensions/forms/Form/Section/Toolbar/ToolbarDocs.d.ts +3 -0
  938. package/extensions/forms/Form/Section/Toolbar/ToolbarDocs.js +3 -0
  939. package/extensions/forms/Form/Section/Toolbar/ToolbarDocs.js.map +1 -0
  940. package/extensions/forms/Form/Section/Toolbar/index.d.ts +2 -0
  941. package/extensions/forms/Form/Section/Toolbar/index.js +3 -0
  942. package/extensions/forms/Form/Section/Toolbar/index.js.map +1 -0
  943. package/extensions/forms/Form/Section/ViewContainer/EditButton.d.ts +1 -0
  944. package/extensions/forms/Form/Section/ViewContainer/{ViewToolbarTools.js → EditButton.js} +10 -11
  945. package/extensions/forms/Form/Section/ViewContainer/EditButton.js.map +1 -0
  946. package/extensions/forms/Form/Section/ViewContainer/ViewContainer.d.ts +1 -0
  947. package/extensions/forms/Form/Section/ViewContainer/ViewContainer.js +9 -4
  948. package/extensions/forms/Form/Section/ViewContainer/ViewContainer.js.map +1 -1
  949. package/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js +1 -1
  950. package/extensions/forms/Form/Section/ViewContainer/ViewContainerDocs.js.map +1 -1
  951. package/extensions/forms/Form/Section/containers/SectionContainer.js +4 -3
  952. package/extensions/forms/Form/Section/containers/SectionContainer.js.map +1 -1
  953. package/extensions/forms/Form/Section/style/dnb-form-section.css +6 -13
  954. package/extensions/forms/Form/Section/style/dnb-form-section.min.css +1 -1
  955. package/extensions/forms/Form/Section/style/dnb-form-section.scss +11 -24
  956. package/extensions/forms/Iterate/Array/ArrayDocs.js +5 -5
  957. package/extensions/forms/Iterate/Array/ArrayDocs.js.map +1 -1
  958. package/extensions/forms/Iterate/Array/ArrayItemArea.js +4 -3
  959. package/extensions/forms/Iterate/Array/ArrayItemArea.js.map +1 -1
  960. package/extensions/forms/Iterate/EditContainer/CancelButton.d.ts +1 -1
  961. package/extensions/forms/Iterate/EditContainer/CancelButton.js +1 -1
  962. package/extensions/forms/Iterate/EditContainer/CancelButton.js.map +1 -1
  963. package/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +1 -1
  964. package/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  965. package/extensions/forms/Iterate/ViewContainer/EditButton.d.ts +1 -1
  966. package/extensions/forms/Iterate/ViewContainer/EditButton.js +1 -1
  967. package/extensions/forms/Iterate/ViewContainer/EditButton.js.map +1 -1
  968. package/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +1 -1
  969. package/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  970. package/extensions/forms/Value/ArraySelection/ArraySelection.d.ts +2 -25
  971. package/extensions/forms/Value/ArraySelection/ArraySelection.js +14 -46
  972. package/extensions/forms/Value/ArraySelection/ArraySelection.js.map +1 -1
  973. package/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js +5 -17
  974. package/extensions/forms/Value/ArraySelection/ArraySelectionDocs.js.map +1 -1
  975. package/extensions/forms/Value/Composition/CompositionDocs.js +3 -1
  976. package/extensions/forms/Value/Composition/CompositionDocs.js.map +1 -1
  977. package/extensions/forms/Value/Provider/useValueProvider.d.ts +1 -1
  978. package/extensions/forms/Value/SummaryList/SummaryListDocs.js +5 -5
  979. package/extensions/forms/Value/SummaryList/SummaryListDocs.js.map +1 -1
  980. package/extensions/forms/Value/Upload/Upload.d.ts +11 -0
  981. package/extensions/forms/Value/Upload/Upload.js +88 -0
  982. package/extensions/forms/Value/Upload/Upload.js.map +1 -0
  983. package/extensions/forms/Value/Upload/UploadDocs.d.ts +2 -0
  984. package/extensions/forms/Value/Upload/UploadDocs.js +17 -0
  985. package/extensions/forms/Value/Upload/UploadDocs.js.map +1 -0
  986. package/extensions/forms/Value/Upload/index.d.ts +2 -0
  987. package/extensions/forms/Value/Upload/index.js +3 -0
  988. package/extensions/forms/Value/Upload/index.js.map +1 -0
  989. package/extensions/forms/Value/index.d.ts +1 -0
  990. package/extensions/forms/Value/index.js +1 -0
  991. package/extensions/forms/Value/index.js.map +1 -1
  992. package/extensions/forms/ValueBlock/ValueBlock.js +8 -3
  993. package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  994. package/extensions/forms/ValueBlock/style/dnb-value-block.css +0 -7
  995. package/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  996. package/extensions/forms/ValueBlock/style/dnb-value-block.scss +0 -10
  997. package/extensions/forms/Wizard/Step/StepDocs.js +1 -1
  998. package/extensions/forms/Wizard/Step/StepDocs.js.map +1 -1
  999. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +2 -0
  1000. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  1001. package/extensions/forms/hooks/DataValueWritePropsDocs.d.ts +3 -0
  1002. package/extensions/forms/hooks/{DataValueDocs.js → DataValueWritePropsDocs.js} +3 -3
  1003. package/extensions/forms/hooks/DataValueWritePropsDocs.js.map +1 -0
  1004. package/extensions/forms/hooks/useDataValue.js +6 -1
  1005. package/extensions/forms/hooks/useDataValue.js.map +1 -1
  1006. package/extensions/forms/hooks/useFieldProps.js +8 -3
  1007. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  1008. package/extensions/forms/hooks/useValueProps.js +1 -6
  1009. package/extensions/forms/hooks/useValueProps.js.map +1 -1
  1010. package/extensions/forms/style/dnb-forms.css +45 -38
  1011. package/extensions/forms/style/dnb-forms.min.css +1 -1
  1012. package/extensions/forms/types.d.ts +6 -28
  1013. package/extensions/forms/types.js.map +1 -1
  1014. package/extensions/forms/utils/TestElement/style/dnb-test-element.css +2 -0
  1015. package/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -1
  1016. package/extensions/forms/utils/TestElement/style/dnb-test-element.scss +2 -0
  1017. package/index.d.ts +2 -1
  1018. package/index.js +2 -1
  1019. package/index.js.map +1 -1
  1020. package/package.json +1 -1
  1021. package/shared/Context.d.ts +4 -0
  1022. package/shared/Context.js.map +1 -1
  1023. package/shared/Eufemia.d.ts +1 -1
  1024. package/shared/Eufemia.js +2 -2
  1025. package/shared/Eufemia.js.map +1 -1
  1026. package/shared/component-helper.d.ts +1 -1
  1027. package/shared/component-helper.js.map +1 -1
  1028. package/style/core/reset.scss +0 -8
  1029. package/style/core/scopes.scss +1 -1
  1030. package/style/core/utilities.scss +12 -16
  1031. package/style/dnb-ui-basis.css +1 -7
  1032. package/style/dnb-ui-basis.min.css +1 -1
  1033. package/style/dnb-ui-body.css +1 -7
  1034. package/style/dnb-ui-body.min.css +1 -1
  1035. package/style/dnb-ui-components.css +109 -43
  1036. package/style/dnb-ui-components.min.css +3 -3
  1037. package/style/dnb-ui-core.css +1 -8
  1038. package/style/dnb-ui-core.min.css +1 -1
  1039. package/style/dnb-ui-elements.css +1 -0
  1040. package/style/dnb-ui-elements.min.css +1 -1
  1041. package/style/dnb-ui-extensions.css +45 -38
  1042. package/style/dnb-ui-extensions.min.css +1 -1
  1043. package/style/dnb-ui-forms.css +45 -38
  1044. package/style/dnb-ui-forms.min.css +1 -1
  1045. package/style/themes/theme-eiendom/eiendom-theme-basis.css +1 -0
  1046. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  1047. package/style/themes/theme-eiendom/eiendom-theme-components.css +159 -80
  1048. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  1049. package/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -0
  1050. package/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  1051. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +45 -38
  1052. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  1053. package/style/themes/theme-eiendom/eiendom-theme-forms.css +45 -38
  1054. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  1055. package/style/themes/theme-sbanken/sbanken-theme-basis.css +1 -0
  1056. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  1057. package/style/themes/theme-sbanken/sbanken-theme-components.css +164 -83
  1058. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +5 -5
  1059. package/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -0
  1060. package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  1061. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +50 -41
  1062. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +2 -2
  1063. package/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -1
  1064. package/style/themes/theme-sbanken/sbanken-theme-forms.css +52 -41
  1065. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +2 -2
  1066. package/style/themes/theme-sbanken/sbanken-theme-forms.scss +1 -1
  1067. package/style/themes/theme-ui/ui-theme-basis.css +1 -0
  1068. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  1069. package/style/themes/theme-ui/ui-theme-components.css +159 -80
  1070. package/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  1071. package/style/themes/theme-ui/ui-theme-elements.css +1 -0
  1072. package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  1073. package/style/themes/theme-ui/ui-theme-extensions.css +45 -38
  1074. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  1075. package/style/themes/theme-ui/ui-theme-forms.css +45 -38
  1076. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  1077. package/style/themes/theme-ui/ui-theme-tags.css +1 -0
  1078. package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  1079. package/umd/dnb-ui-basis.min.js +1 -1
  1080. package/umd/dnb-ui-components.min.js +1 -1
  1081. package/umd/dnb-ui-elements.min.js +1 -1
  1082. package/umd/dnb-ui-extensions.min.js +3 -3
  1083. package/umd/dnb-ui-lib.min.js +1 -1
  1084. package/cjs/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.css +0 -4
  1085. package/cjs/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.min.css +0 -1
  1086. package/cjs/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.scss +0 -6
  1087. package/cjs/extensions/forms/Form/Section/EditContainer/EditToolbarTools.d.ts +0 -5
  1088. package/cjs/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +0 -1
  1089. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.d.ts +0 -4
  1090. package/cjs/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.js.map +0 -1
  1091. package/cjs/extensions/forms/Form/Section/containers/Toolbar.d.ts +0 -7
  1092. package/cjs/extensions/forms/Form/Section/containers/Toolbar.js +0 -35
  1093. package/cjs/extensions/forms/Form/Section/containers/Toolbar.js.map +0 -1
  1094. package/cjs/extensions/forms/hooks/DataValueDocs.d.ts +0 -3
  1095. package/cjs/extensions/forms/hooks/DataValueDocs.js.map +0 -1
  1096. package/es/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.css +0 -4
  1097. package/es/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.min.css +0 -1
  1098. package/es/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.scss +0 -6
  1099. package/es/extensions/forms/Form/Section/EditContainer/EditToolbarTools.d.ts +0 -5
  1100. package/es/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js +0 -77
  1101. package/es/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +0 -1
  1102. package/es/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.d.ts +0 -4
  1103. package/es/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.js.map +0 -1
  1104. package/es/extensions/forms/Form/Section/containers/Toolbar.d.ts +0 -7
  1105. package/es/extensions/forms/Form/Section/containers/Toolbar.js +0 -27
  1106. package/es/extensions/forms/Form/Section/containers/Toolbar.js.map +0 -1
  1107. package/es/extensions/forms/hooks/DataValueDocs.d.ts +0 -3
  1108. package/es/extensions/forms/hooks/DataValueDocs.js.map +0 -1
  1109. package/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.css +0 -4
  1110. package/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.min.css +0 -1
  1111. package/extensions/forms/FieldBlock/style/themes/dnb-field-block-sbanken.scss +0 -6
  1112. package/extensions/forms/Form/Section/EditContainer/EditToolbarTools.d.ts +0 -5
  1113. package/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js +0 -77
  1114. package/extensions/forms/Form/Section/EditContainer/EditToolbarTools.js.map +0 -1
  1115. package/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.d.ts +0 -4
  1116. package/extensions/forms/Form/Section/ViewContainer/ViewToolbarTools.js.map +0 -1
  1117. package/extensions/forms/Form/Section/containers/Toolbar.d.ts +0 -7
  1118. package/extensions/forms/Form/Section/containers/Toolbar.js +0 -27
  1119. package/extensions/forms/Form/Section/containers/Toolbar.js.map +0 -1
  1120. package/extensions/forms/hooks/DataValueDocs.d.ts +0 -3
  1121. package/extensions/forms/hooks/DataValueDocs.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerCalendar.js","names":["React","PropTypes","classnames","format","subMonths","addMonths","addWeeks","addDays","isSameDay","isSameMonth","startOfDay","differenceInCalendarDays","differenceInMonths","lastDayOfMonth","setDate","keycode","nbLocale","isDisabled","makeDayObject","toRange","getWeek","dayOffset","getCalendar","Button","DatePickerContext","DatePickerCalendar","PureComponent","constructor","props","_defineProperty","context","updateState","hoverDate","event","_event$target","String","target","nodeName","toLowerCase","_listRef","current","focus","preventScroll","e","nr","isRange","onlyMonth","hideNav","onKeyDown","keyCode","preventDefault","persist","type","newDate","keyNavCalc","Date","callOnSelect","hidePicker","state","currentMonth","Math","abs","findValid","hasReachedEnd","endDate","startDate","changeMonthViews","date","minDate","maxDate","day","className","isStartDate","isEndDate","isPreview","isWithinSelection","isSelectable","isInactive","isToday","createRef","_labelRef","_days","_cache","componentDidMount","noAutofocus","args","onSelect","on_days_render","month","getDays","Array","isArray","foundDate","find","cur","nextDate","getCacheKey","firstDayOfWeek","hideNextMonthWeek","join","getMemorizedDays","key","count","Object","values","reduce","acc","i","push","days","map","changedDays","render","id","rtl","titleFormat","locale","dayOfWeekFormat","hideDays","onPrev","onNext","resetDate","onHover","prevBtn","nextBtn","translation","DatePicker","selected_month","weekDays","createElement","lang","code","PrevButton","title","replace","tabIndex","ref","NextButton","role","onKeyDownHandler","onMouseLeave","onMouseLeaveHandler","scope","week","handleAsDisabled","isLastMonth","isNextMonth","paramsCell","paramsButton","_extends","buildClassNames","onFocus","size","variant","text","bounding","disabled","onClick","undefined","_ref","onSelectRange","onMouseOver","onHoverDay","process","env","NODE_ENV","propTypes","string","number","instanceOf","bool","func","object","_ref2","Fragment","prev_month","icon","isRequired","defaultProps","_ref3","next_month","_ref4","hasEndDate","daysToStartDate","daysToEndDate","range","_ref5"],"sources":["../../../../src/components/date-picker/DatePickerCalendar.js"],"sourcesContent":["/**\n * Web DatePicker Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\n\n// date-fns\nimport format from 'date-fns/format'\nimport subMonths from 'date-fns/subMonths'\nimport addMonths from 'date-fns/addMonths'\nimport addWeeks from 'date-fns/addWeeks'\nimport addDays from 'date-fns/addDays'\nimport isSameDay from 'date-fns/isSameDay'\nimport isSameMonth from 'date-fns/isSameMonth'\nimport startOfDay from 'date-fns/startOfDay'\nimport differenceInCalendarDays from 'date-fns/differenceInCalendarDays'\nimport differenceInMonths from 'date-fns/differenceInMonths'\nimport lastDayOfMonth from 'date-fns/lastDayOfMonth'\nimport setDate from 'date-fns/setDate'\n\nimport keycode from '../../shared/keycode'\nimport nbLocale from 'date-fns/locale/nb'\nimport {\n isDisabled,\n makeDayObject,\n toRange,\n getWeek,\n dayOffset,\n getCalendar,\n} from './DatePickerCalc'\nimport Button from '../button/Button'\nimport DatePickerContext from './DatePickerContext'\n\nexport default class DatePickerCalendar extends React.PureComponent {\n static contextType = DatePickerContext\n\n static propTypes = {\n id: PropTypes.string,\n nr: PropTypes.number,\n month: PropTypes.instanceOf(Date), // What month will be displayed in the first calendar. Default: new Date()\n prevBtn: PropTypes.bool,\n nextBtn: PropTypes.bool,\n titleFormat: PropTypes.string,\n dayOfWeekFormat: PropTypes.string,\n firstDayOfWeek: PropTypes.string,\n hideNav: PropTypes.bool,\n hideDays: PropTypes.bool,\n onlyMonth: PropTypes.bool,\n hideNextMonthWeek: PropTypes.bool,\n noAutofocus: PropTypes.bool,\n\n onHover: PropTypes.func,\n onSelect: PropTypes.func,\n onPrev: PropTypes.func,\n onNext: PropTypes.func,\n\n locale: PropTypes.object,\n rtl: PropTypes.bool,\n\n isRange: PropTypes.bool,\n resetDate: PropTypes.bool,\n onKeyDown: PropTypes.func,\n }\n\n static defaultProps = {\n id: null,\n nr: null,\n month: null,\n prevBtn: true,\n nextBtn: true,\n titleFormat: 'MMMM yyyy',\n dayOfWeekFormat: 'EEEEEE',\n firstDayOfWeek: 'monday',\n hideNav: false,\n hideDays: false,\n onlyMonth: false,\n hideNextMonthWeek: false,\n noAutofocus: false,\n\n // locale\n locale: nbLocale,\n rtl: false,\n\n // events\n onHover: null,\n onSelect: null,\n onPrev: null,\n onNext: null,\n\n // dates\n isRange: null,\n resetDate: true, // reset start/end date once we already have them\n\n // Limit selection with minDate and maxDate\n // maxDate: null, // addDays(new Date(), 45)\n onKeyDown: null,\n }\n\n constructor(props) {\n super(props)\n this._listRef = React.createRef()\n this._labelRef = React.createRef()\n this._days = {}\n this._cache = {}\n }\n\n componentDidMount() {\n if (!this.props.noAutofocus && this.props.nr === 0) {\n if (this._listRef.current) {\n this._listRef.current.focus({ preventScroll: true })\n }\n }\n }\n\n onMouseLeaveHandler = () => {\n this.context.updateState({\n hoverDate: null,\n })\n }\n\n onKeyDownHandler = (event) => {\n if (String(event?.target?.nodeName).toLowerCase() === 'td') {\n try {\n this._listRef.current.focus({ preventScroll: true })\n } catch (e) {\n //\n }\n }\n\n const { nr, isRange, onlyMonth, hideNav, onKeyDown } = this.props\n\n if (typeof onKeyDown === 'function') {\n return onKeyDown(event, this._listRef, nr)\n }\n\n const keyCode = keycode(event)\n\n // only continue of key is one of these\n switch (keyCode) {\n case 'enter':\n case 'space':\n case 'left':\n case 'right':\n case 'up':\n case 'down':\n event.preventDefault()\n event.persist() // since we use the event after setState\n break\n default:\n return\n }\n\n let type = nr === 0 ? 'start' : 'end'\n if (!isRange) {\n type = 'start'\n }\n let newDate = this.context[`${type}Date`]\n\n if (newDate) {\n newDate = this.keyNavCalc(newDate, keyCode)\n } else {\n // use the date picker month, if provided\n newDate =\n this.context[`${type}Month`] ||\n (isRange && nr === 1 ? addMonths(new Date(), 1) : new Date())\n }\n\n if (newDate === this.context[`${type}Date`]) {\n switch (keyCode) {\n case 'enter':\n case 'space':\n this.callOnSelect({\n event,\n nr,\n hidePicker: true,\n })\n break\n }\n } else {\n // const state = {...this.context}\n const state = {}\n\n const currentMonth = this.context[`${type}Month`]\n\n if (\n // in case we don't have a start/end date, then we use the current month date\n (currentMonth && !this.context[`${type}Date`]) ||\n // if we have a larger gap between the new date and the current month in the calendar\n (currentMonth &&\n Math.abs(differenceInMonths(newDate, currentMonth)) > 1)\n ) {\n if (!isRange) {\n newDate = currentMonth\n } else {\n newDate =\n nr === 0\n ? setDate(currentMonth, 1)\n : lastDayOfMonth(currentMonth)\n }\n // only to make sure we navigate the calendar to the new date\n } else if (\n currentMonth &&\n !isSameMonth(this.context[`${type}Date`], currentMonth)\n ) {\n state[`${type}Month`] = newDate\n }\n\n newDate = this.findValid(newDate, keyCode)\n\n if (this.hasReachedEnd(newDate)) {\n return\n }\n\n state[`${type}Date`] = newDate\n\n // set fallbacks\n if (!isRange) {\n state.endDate = newDate\n } else {\n if (!this.context.startDate) {\n state.startDate = newDate\n }\n if (!this.context.endDate) {\n state.endDate = newDate\n }\n }\n\n // make sure we stay on the same month\n if (onlyMonth || hideNav) {\n if (\n !isSameMonth(state.startDate, this.context.startDate) ||\n !isSameMonth(state.endDate, this.context.startDate) // Heads up, should this not be context.endDate?\n ) {\n return\n }\n }\n\n state.changeMonthViews = true\n\n this.context.updateState(state, () => {\n // call after state update, so the input get's the latest state as well\n this.callOnSelect({\n event,\n nr,\n hidePicker: false,\n })\n\n // and set the focus back again\n if (this._listRef && this._listRef.current) {\n this._listRef.current.focus({ preventScroll: true })\n }\n })\n }\n }\n\n callOnSelect(args) {\n this.props.onSelect && this.props.onSelect(args)\n }\n\n keyNavCalc(date, keyCode) {\n // only to process key up and down press\n switch (keyCode) {\n case 'left':\n date = addDays(date, -1)\n break\n case 'right':\n date = addDays(date, 1)\n break\n case 'up':\n date = addWeeks(date, -1)\n break\n case 'down':\n date = addWeeks(date, 1)\n break\n }\n\n return date\n }\n\n findValid(date, keyCode) {\n if (this.context.props.on_days_render) {\n const month = format(date, 'yyyy-MM')\n\n if (!this._days) {\n return date\n }\n\n if (!this._days[month]) {\n // re-render with new month\n this.getDays(date)\n }\n\n if (Array.isArray(this._days[month])) {\n const foundDate = this._days[month].find((cur) =>\n isSameDay(cur.date, date)\n )\n\n if (\n foundDate &&\n foundDate.date &&\n (foundDate.isDisabled ||\n foundDate.isSelectable === false ||\n foundDate.isInactive)\n ) {\n const nextDate = this.keyNavCalc(foundDate.date, keyCode)\n foundDate.date = this.findValid(nextDate, keyCode)\n }\n\n if (foundDate && foundDate.date) {\n return foundDate.date\n }\n }\n }\n\n return date\n }\n\n hasReachedEnd = (date) =>\n isDisabled(date, this.context.minDate, this.context.maxDate)\n\n buildClassNames = (day) =>\n classnames(\n {\n 'dnb-date-picker__day--start-date': day.isStartDate,\n 'dnb-date-picker__day--end-date': day.isEndDate,\n 'dnb-date-picker__day--preview': day.isPreview,\n 'dnb-date-picker__day--within-selection': day.isWithinSelection,\n 'dnb-date-picker__day--selectable': day.isSelectable,\n 'dnb-date-picker__day--inactive': day.isInactive,\n 'dnb-date-picker__day--disabled': day.isDisabled,\n 'dnb-date-picker__day--today': day.isToday,\n },\n day.className\n )\n\n getCacheKey() {\n const { nr, month, firstDayOfWeek, onlyMonth, hideNextMonthWeek } =\n this.props\n\n const { startDate, endDate, hoverDate, maxDate, minDate } =\n this.context\n\n return [\n nr,\n month,\n firstDayOfWeek,\n onlyMonth,\n hideNextMonthWeek,\n startDate,\n endDate,\n hoverDate,\n maxDate,\n minDate,\n ].join('|')\n }\n\n getMemorizedDays(month) {\n // Cache the result, just because we then avoid at least double calc because of reconciliation,\n // but we do not avoid calculating every day during hover or select\n const key = this.getCacheKey()\n\n if (this._cache[key]) {\n return this._cache[key]\n } else {\n let count = 0\n return (this._cache[key] = Object.values(\n this.getDays(month).reduce((acc, cur, i) => {\n // Normalize the data for table consumption\n acc[count] = acc[count] || []\n acc[count].push(cur)\n if (i % 7 === 6) {\n count++\n }\n return acc\n }, {})\n ))\n }\n }\n\n getDays(month) {\n const { nr, firstDayOfWeek, onlyMonth, hideNextMonthWeek } = this.props\n\n const { startDate, endDate, hoverDate, maxDate, minDate } =\n this.context\n\n let days = getCalendar(\n month || new Date(),\n dayOffset(firstDayOfWeek),\n {\n onlyMonth,\n hideNextMonthWeek,\n }\n ).map((date) =>\n makeDayObject(date, {\n startDate,\n endDate,\n hoverDate,\n minDate,\n maxDate,\n month,\n })\n )\n\n if (this.context.props.on_days_render) {\n const changedDays = this.context.props.on_days_render(days, nr)\n if (Array.isArray(changedDays)) {\n days = changedDays\n }\n }\n\n // // Save for later check against disabled days during key navigation\n this._days[format(month, 'yyyy-MM')] = days\n\n return days\n }\n\n render() {\n const {\n id,\n nr,\n rtl,\n month,\n isRange,\n titleFormat,\n locale,\n firstDayOfWeek,\n dayOfWeekFormat,\n hideNav,\n hideDays,\n onPrev,\n onNext,\n resetDate,\n onHover,\n prevBtn,\n nextBtn,\n } = this.props\n\n const {\n startDate,\n endDate,\n hoverDate,\n maxDate,\n minDate,\n translation: {\n DatePicker: { selected_month },\n },\n } = this.context\n\n const weekDays = this.getMemorizedDays(month)\n\n return (\n <div\n className={classnames('dnb-date-picker__calendar', rtl && 'rtl')}\n lang={locale?.code}\n >\n {!hideNav && (\n <div className=\"dnb-date-picker__header\">\n <div className=\"dnb-date-picker__header__nav\">\n <PrevButton\n nr={nr}\n minDate={minDate}\n month={month}\n locale={locale}\n context={this.context}\n prevBtn={prevBtn}\n onPrev={onPrev}\n />\n </div>\n <label\n id={`${id}--title`}\n className=\"dnb-date-picker__header__title dnb-no-focus\"\n title={selected_month.replace(\n /%s/,\n format(month, titleFormat, {\n locale,\n })\n )}\n tabIndex=\"-1\"\n ref={this._labelRef}\n >\n {format(month, titleFormat, {\n locale,\n })}\n </label>\n <div className=\"dnb-date-picker__header__nav\">\n <NextButton\n nr={nr}\n maxDate={maxDate}\n month={month}\n locale={locale}\n context={this.context}\n nextBtn={nextBtn}\n onNext={onNext}\n />\n </div>\n </div>\n )}\n <table\n role=\"grid\"\n className=\"dnb-no-focus\"\n tabIndex=\"0\"\n aria-labelledby={`${id}--title`}\n onKeyDown={this.onKeyDownHandler}\n onMouseLeave={this.onMouseLeaveHandler}\n ref={this._listRef}\n >\n {!hideDays && (\n <thead aria-hidden>\n <tr role=\"row\" className=\"dnb-date-picker__labels\">\n {getWeek(dayOffset(firstDayOfWeek)).map((day, i) => (\n <th\n key={i}\n role=\"columnheader\"\n scope=\"col\"\n className={classnames(\n 'dnb-date-picker__labels__day',\n `dnb-date-picker__labels__day--${format(day, 'i', {\n locale,\n })}`\n )}\n aria-label={format(day, 'EEEE', {\n locale,\n })}\n >\n {format(day, dayOfWeekFormat, {\n locale,\n })}\n </th>\n ))}\n </tr>\n </thead>\n )}\n <tbody>\n {weekDays.map((week, i) => {\n return (\n <tr\n key={'week' + i}\n role=\"row\"\n className=\"dnb-date-picker__days\"\n >\n {week.map((day, i) => {\n const title = format(day.date, 'PPPP', {\n locale,\n })\n const handleAsDisabled =\n day.isLastMonth ||\n day.isNextMonth ||\n day.isDisabled ||\n day.isInactive\n\n // cell params\n const paramsCell = {}\n paramsCell.tabIndex = '-1'\n if (day.isStartDate) {\n paramsCell.id = id + '--button-start'\n } else if (day.isEndDate) {\n paramsCell.id = id + '--button-end'\n }\n\n // cell + button params\n const paramsButton = {}\n if (nr === 0 ? day.isStartDate : day.isEndDate) {\n paramsButton['aria-current'] = 'date'\n paramsCell['aria-selected'] = true // aria-selected is not allowed on buttons\n }\n\n return (\n <td\n key={'day' + i}\n role=\"gridcell\"\n className={classnames(\n 'dnb-date-picker__day',\n 'dnb-no-focus',\n this.buildClassNames(day)\n )}\n onFocus={this.onKeyDownHandler}\n {...paramsCell}\n >\n <Button\n size=\"medium\"\n variant=\"secondary\"\n text={format(day.date, 'd', { locale })}\n bounding={true}\n disabled={handleAsDisabled}\n tabIndex={handleAsDisabled ? '0' : '-1'} // fix for NVDA\n aria-disabled={handleAsDisabled}\n aria-label={title}\n {...paramsButton}\n onClick={\n handleAsDisabled\n ? undefined\n : ({ event }) =>\n onSelectRange({\n day,\n isRange,\n startDate,\n endDate,\n resetDate,\n event,\n onSelect: (state) =>\n this.context.updateState(state, () =>\n this.callOnSelect({\n event,\n nr,\n hidePicker: !isRange,\n })\n ),\n })\n }\n onMouseOver={\n handleAsDisabled\n ? undefined\n : () =>\n onHoverDay({ day, hoverDate, onHover })\n }\n onFocus={\n handleAsDisabled\n ? undefined\n : () =>\n onHoverDay({ day, hoverDate, onHover })\n }\n />\n </td>\n )\n })}\n </tr>\n )\n })}\n </tbody>\n </table>\n </div>\n )\n }\n}\n\nconst PrevButton = ({\n nr,\n minDate,\n month,\n locale,\n context,\n prevBtn,\n onPrev,\n onKeyDown,\n}) => {\n if (!prevBtn) {\n return <></>\n }\n const disabled = minDate && isSameMonth(month, minDate)\n const onClick = () => onPrev && !disabled && onPrev({ nr })\n\n const {\n translation: {\n DatePicker: { prev_month },\n },\n } = context\n const title = prev_month.replace(\n /%s/,\n format(subMonths(month, 1), 'MMMM yyyy', {\n locale,\n })\n )\n\n return (\n <Button\n className={classnames('dnb-date-picker__prev', { disabled })}\n icon=\"chevron_left\"\n size=\"small\"\n aria-label={title}\n onClick={onClick}\n onKeyDown={onKeyDown}\n />\n )\n}\nPrevButton.propTypes = {\n nr: PropTypes.number.isRequired,\n minDate: PropTypes.instanceOf(Date),\n month: PropTypes.object.isRequired,\n locale: PropTypes.object.isRequired,\n context: PropTypes.object.isRequired,\n prevBtn: PropTypes.bool.isRequired,\n onPrev: PropTypes.func.isRequired,\n onKeyDown: PropTypes.func,\n}\nPrevButton.defaultProps = {\n minDate: null,\n onKeyDown: null,\n}\n\nconst NextButton = ({\n nr,\n maxDate,\n month,\n locale,\n context,\n nextBtn,\n onNext,\n onKeyDown,\n}) => {\n if (!nextBtn) {\n return <></>\n }\n const disabled = maxDate && isSameMonth(month, maxDate)\n const onClick = () => onNext && !disabled && onNext({ nr })\n\n const {\n translation: {\n DatePicker: { next_month },\n },\n } = context\n const title = next_month.replace(\n /%s/,\n format(addMonths(month, 1), 'MMMM yyyy', {\n locale,\n })\n )\n\n return (\n nextBtn && (\n <Button\n className={classnames('dnb-date-picker__next', { disabled })}\n icon=\"chevron_right\"\n size=\"small\"\n aria-label={title}\n onClick={onClick}\n onKeyDown={onKeyDown}\n />\n )\n )\n}\nNextButton.propTypes = {\n nr: PropTypes.number.isRequired,\n maxDate: PropTypes.instanceOf(Date),\n month: PropTypes.object.isRequired,\n locale: PropTypes.object.isRequired,\n context: PropTypes.object.isRequired,\n nextBtn: PropTypes.bool.isRequired,\n onNext: PropTypes.func.isRequired,\n onKeyDown: PropTypes.func,\n}\nNextButton.defaultProps = {\n maxDate: null,\n onKeyDown: null,\n}\n\nconst onSelectRange = ({\n day,\n isRange,\n startDate,\n endDate,\n onSelect,\n resetDate,\n event,\n}) => {\n event.persist()\n if (!isRange) {\n // set only date\n onSelect({\n startDate: startOfDay(day.date),\n endDate: startOfDay(day.date),\n event,\n })\n\n // for setting date new on every selection, do this here\n } else if (!startDate || (resetDate && startDate && endDate)) {\n // set startDate\n // user is selecting startDate\n onSelect({\n startDate: startOfDay(day.date),\n endDate: undefined,\n event,\n })\n } else {\n const hasEndDate = endDate\n // set either startDate or endDate\n const daysToStartDate = Math.abs(\n differenceInCalendarDays(startDate, day.date)\n )\n const daysToEndDate = Math.abs(\n differenceInCalendarDays(endDate, day.date)\n )\n\n let range = toRange(startDate, day.date)\n if (hasEndDate && !resetDate && daysToStartDate < daysToEndDate) {\n range = toRange(endDate, day.date)\n }\n onSelect({\n startDate: startOfDay(range.startDate),\n endDate: startOfDay(range.endDate),\n event,\n })\n }\n}\n\nconst onHoverDay = ({ day, hoverDate, onHover }) => {\n if (!isSameDay(day.date, hoverDate)) {\n onHover && onHover(day.date)\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"DatePickerCalendar.js","names":["React","useCallback","useContext","useEffect","useMemo","useRef","classnames","format","subMonths","addMonths","addWeeks","addDays","isSameDay","isSameMonth","startOfDay","differenceInCalendarDays","differenceInMonths","lastDayOfMonth","setDate","nbLocalize","nbFormatLong","enLocalize","enFormatLong","gbFormatLong","isDisabled","makeDayObject","toRange","getWeek","dayOffset","getCalendar","Button","DatePickerContext","useTranslation","locales","localize","formatLong","defaultProps","prevBtn","nextBtn","titleFormat","dayOfWeekFormat","firstDayOfWeek","hideNav","hideDays","onlyMonth","hideNextMonthWeek","noAutoFocus","rtl","resetDate","arrowKeys","keysToHandle","DatePickerCalendar","restOfProps","props","_objectSpread","updateDates","forceViewMonthChange","startDate","endDate","hoverDate","maxDate","minDate","startMonth","endMonth","translation","DatePicker","selected_month","on_days_render","id","nr","month","isRange","locale","localeCode","onPrev","onNext","onSelect","onHover","onKeyDown","listRef","labelRef","days","cache","current","focus","preventScroll","onMouseLeaveHandler","callOnSelect","event","getDays","daysFromCalendar","Date","map","date","changedDays","Array","isArray","keyNavCalc","keyCode","includes","dateHandler","test","shiftAmount","findValid","foundDate","find","cur","isSelectable","isInactive","nextDate","hasReachedEnd","onKeyDownHandler","pressedKey","code","preventDefault","persist","currentDates","dateType","currentDate","newDate","hidePicker","dates","currentMonth","Math","abs","cacheKey","join","weekDays","count","Object","values","reduce","acc","i","push","createElement","className","lang","CalendarButton","type","showButton","onClick","title","replace","tabIndex","ref","role","onMouseLeave","day","key","scope","week","handleAsDisabled","isLastMonth","isNextMonth","isStartDate","isEndDate","undefined","isSelectedDate","paramsCell","paramsButton","_extends","buildDayClassNames","size","variant","text","bounding","disabled","on_click","_ref","onSelectRange","state","onMouseOver","onHoverDay","onFocus","_ref2","tr","Fragment","icon","_ref3","daysToStartDate","daysToEndDate","range","_ref4","isPreview","isWithinSelection","isToday"],"sources":["../../../../src/components/date-picker/DatePickerCalendar.tsx"],"sourcesContent":["/**\n * Web DatePicker Component\n *\n */\n\nimport React, {\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useRef,\n} from 'react'\nimport classnames from 'classnames'\n\n// date-fns\nimport format from 'date-fns/format'\nimport subMonths from 'date-fns/subMonths'\nimport addMonths from 'date-fns/addMonths'\nimport addWeeks from 'date-fns/addWeeks'\nimport addDays from 'date-fns/addDays'\nimport isSameDay from 'date-fns/isSameDay'\nimport isSameMonth from 'date-fns/isSameMonth'\nimport startOfDay from 'date-fns/startOfDay'\nimport differenceInCalendarDays from 'date-fns/differenceInCalendarDays'\nimport differenceInMonths from 'date-fns/differenceInMonths'\nimport lastDayOfMonth from 'date-fns/lastDayOfMonth'\nimport setDate from 'date-fns/setDate'\n\n// Imports only the parts of the date-fns locale object that we actually use\nimport nbLocalize from 'date-fns/locale/nb/_lib/localize'\nimport nbFormatLong from 'date-fns/locale/nb/_lib/formatLong'\nimport enLocalize from 'date-fns/locale/en-US/_lib/localize'\nimport enFormatLong from 'date-fns/locale/en-US/_lib/formatLong'\nimport gbFormatLong from 'date-fns/locale/en-GB/_lib/formatLong'\n\nimport {\n isDisabled,\n makeDayObject,\n toRange,\n getWeek,\n dayOffset,\n getCalendar,\n} from './DatePickerCalc'\nimport Button, { ButtonProps } from '../button/Button'\nimport DatePickerContext from './DatePickerContext'\nimport { useTranslation } from '../../shared'\nimport { InternalLocale } from '../../shared/Context'\nimport { DatePickerChangeEvent } from './DatePickerProvider'\nimport { DatePickerDates } from './hooks/useDates'\n\nexport type CalendarDay = {\n date: Date\n isDisabled?: boolean\n isEndDate?: boolean\n isInactive?: boolean\n isLastMonth?: boolean\n isNextMonth?: boolean\n isPreview?: boolean\n isSelectable?: boolean\n isStartDate?: boolean\n isToday?: boolean\n isWithinSelection?: boolean\n className?: string\n}\n\ntype CalendarLocales = {\n // eslint-disable-next-line no-unused-vars\n [locale in InternalLocale]?: Pick<Locale, 'localize' | 'formatLong'>\n}\n// Easy to access objects containing the only (in our case) needed functions for date-fns format\nconst locales: CalendarLocales = {\n 'nb-NO': { localize: nbLocalize, formatLong: nbFormatLong },\n 'en-GB': { localize: enLocalize, formatLong: gbFormatLong },\n 'en-US': { localize: enLocalize, formatLong: enFormatLong },\n}\n\nexport type CalendarNavigationEvent = {\n nr: number\n type?: CalendarButtonProps['type']\n}\n\nexport type DatePickerCalendarProps = Omit<\n React.HTMLProps<HTMLElement>,\n 'onSelect' | 'onChange'\n> & {\n id?: string\n nr?: number\n /**\n * To display what month should be shown in the first calendar by default. Defaults to the `date` respective `start_date`.\n */\n month?: Date\n prevBtn?: boolean\n nextBtn?: boolean\n titleFormat?: string\n dayOfWeekFormat?: string\n firstDayOfWeek?: string\n hideNav?: boolean\n hideDays?: boolean\n onlyMonth?: boolean\n hideNextMonthWeek?: boolean\n noAutoFocus?: boolean\n onHover?: (day: Date) => void\n onSelect?: (\n event: DatePickerChangeEvent<\n | React.MouseEvent<HTMLSpanElement>\n | React.KeyboardEvent<HTMLTableElement | HTMLButtonElement>\n >\n ) => void\n onPrev?: (event: CalendarNavigationEvent) => void\n onNext?: (event: CalendarNavigationEvent) => void\n onKeyDown?: (\n event: React.KeyboardEvent<HTMLTableElement | HTMLButtonElement>,\n tableRef: React.MutableRefObject<HTMLTableElement>,\n nr: number\n ) => void\n /**\n * To define the locale used in the calendar. Needs to be an `date-fns` \"v2\" locale object, like `import enLocale from &#39;date-fns/locale/en-GB&#39;`. Defaults to `nb-NO`.\n */\n locale?: InternalLocale\n rtl?: boolean\n isRange?: boolean\n resetDate?: boolean\n}\n\ntype DayObject = {\n date: Date\n isToday: boolean\n isLastMonth: boolean\n isNextMonth: boolean\n isStartDate: boolean\n isEndDate: boolean\n isWithinSelection: boolean\n isPreview: boolean\n isDisabled: boolean\n isSelectable: boolean\n isInactive: boolean\n className?: string\n}\n\nconst defaultProps: DatePickerCalendarProps = {\n prevBtn: true,\n nextBtn: true,\n titleFormat: 'MMMM yyyy',\n dayOfWeekFormat: 'EEEEEE',\n firstDayOfWeek: 'monday',\n hideNav: false,\n hideDays: false,\n onlyMonth: false,\n hideNextMonthWeek: false,\n noAutoFocus: false,\n rtl: false,\n resetDate: true,\n}\n\nconst arrowKeys = ['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown']\nconst keysToHandle = ['Enter', 'Space', ...arrowKeys]\n\nfunction DatePickerCalendar(restOfProps: DatePickerCalendarProps) {\n const props = { ...defaultProps, ...restOfProps }\n\n const {\n updateDates,\n forceViewMonthChange,\n startDate,\n endDate,\n hoverDate,\n maxDate,\n minDate,\n startMonth,\n endMonth,\n translation: {\n DatePicker: { selected_month },\n },\n props: { on_days_render },\n } = useContext(DatePickerContext)\n\n const {\n id,\n nr,\n rtl,\n month,\n isRange,\n titleFormat,\n firstDayOfWeek,\n dayOfWeekFormat,\n hideNav,\n locale: localeCode,\n hideDays,\n onPrev,\n onNext,\n onSelect,\n onHover,\n onKeyDown,\n resetDate,\n prevBtn,\n nextBtn,\n noAutoFocus,\n hideNextMonthWeek,\n onlyMonth,\n } = props\n\n const listRef = useRef<React.ElementRef<'table'>>()\n const labelRef = useRef<HTMLLabelElement>()\n const days = useRef<Record<string, Array<CalendarDay>>>({})\n const cache = useRef<Record<string, CalendarDay[][]>>({})\n\n useEffect(() => {\n if (!noAutoFocus && nr === 0) {\n if (listRef.current) {\n listRef.current.focus({ preventScroll: true })\n }\n }\n }, [noAutoFocus, nr])\n\n const onMouseLeaveHandler = useCallback(() => {\n updateDates({\n hoverDate: null,\n })\n }, [updateDates])\n\n const callOnSelect = useCallback(\n (\n event: DatePickerChangeEvent<\n | React.MouseEvent<HTMLSpanElement>\n | React.KeyboardEvent<HTMLTableElement>\n > &\n DatePickerDates\n ) => {\n onSelect?.(event)\n },\n [onSelect]\n )\n\n const getDays = useCallback(\n (month: Date): DayObject[] => {\n let daysFromCalendar = getCalendar(\n month || new Date(),\n dayOffset(firstDayOfWeek),\n {\n onlyMonth,\n hideNextMonthWeek,\n }\n ).map((date) =>\n makeDayObject(date, {\n startDate,\n endDate,\n hoverDate,\n minDate,\n maxDate,\n month,\n })\n )\n\n if (on_days_render) {\n const changedDays = on_days_render(daysFromCalendar, nr)\n if (Array.isArray(changedDays)) {\n daysFromCalendar = changedDays\n }\n }\n\n // // Save for later check against disabled days during key navigation\n days.current[format(month, 'yyyy-MM')] = daysFromCalendar\n\n return daysFromCalendar\n },\n [\n endDate,\n firstDayOfWeek,\n hideNextMonthWeek,\n hoverDate,\n maxDate,\n minDate,\n nr,\n on_days_render,\n onlyMonth,\n startDate,\n ]\n )\n\n const keyNavCalc = useCallback((date: Date, keyCode: string) => {\n // Return date if arrow keys are not pressed\n if (!arrowKeys.includes(keyCode)) {\n return date\n }\n\n const dateHandler = /(ArrowLeft|ArrowRight)/g.test(keyCode)\n ? addDays\n : addWeeks\n const shiftAmount = /(ArrowLeft|ArrowUp)/g.test(keyCode) ? -1 : 1\n\n return dateHandler(date, shiftAmount)\n }, [])\n\n const findValid = useCallback(\n (date: Date, keyCode: string) => {\n if (!on_days_render) {\n return date\n }\n\n if (!days.current) {\n return date\n }\n\n const month = format(date, 'yyyy-MM')\n\n if (!days.current[month]) {\n // re-render with new month\n getDays(date)\n }\n\n if (Array.isArray(days.current[month])) {\n const foundDate = days.current[month].find((cur) =>\n isSameDay(cur.date, date)\n )\n\n if (\n foundDate?.date &&\n (foundDate.isDisabled ||\n foundDate.isSelectable === false ||\n foundDate.isInactive)\n ) {\n const nextDate = keyNavCalc(foundDate.date, keyCode)\n foundDate.date = findValid(nextDate, keyCode)\n }\n\n if (foundDate?.date) {\n return foundDate.date\n }\n }\n\n return date\n },\n [on_days_render, getDays, keyNavCalc]\n )\n\n const hasReachedEnd = useCallback(\n (date: Date) => isDisabled(date, minDate, maxDate),\n [minDate, maxDate]\n )\n\n const onKeyDownHandler = useCallback(\n (event: React.KeyboardEvent<HTMLTableElement>) => {\n const pressedKey = event.code\n\n // call onKeyDown prop if given\n if (typeof onKeyDown === 'function') {\n return onKeyDown(event, listRef, nr)\n }\n\n // only continue of key is one of these\n if (!keysToHandle.includes(pressedKey)) {\n return\n }\n event.preventDefault()\n event.persist() // since we use the event after setState\n\n const currentDates = { startDate, endDate, startMonth, endMonth }\n const dateType = !isRange || nr === 0 ? 'start' : 'end'\n const currentDate = currentDates[`${dateType}Date`]\n\n let newDate = currentDate\n ? keyNavCalc(currentDate, pressedKey)\n : currentDates[`${dateType}Month`] ||\n (isRange && nr === 1 ? addMonths(new Date(), 1) : new Date())\n\n if (\n newDate === currentDate &&\n (pressedKey === 'Enter' || pressedKey === 'Space')\n ) {\n return callOnSelect({\n event,\n nr,\n hidePicker: true,\n })\n }\n\n const dates: {\n startDate?: Date\n endDate?: Date\n startMonth?: Date\n endMonth?: Date\n } = {}\n\n const currentMonth = currentDates[`${dateType}Month`]\n\n if (\n // in case we don't have a start/end date, then we use the current month date\n (currentMonth && !currentDate) ||\n // if we have a larger gap between the new date and the current month in the calendar\n (currentMonth &&\n Math.abs(differenceInMonths(newDate, currentMonth)) > 1)\n ) {\n newDate = !isRange\n ? currentMonth\n : nr === 0\n ? setDate(currentMonth, 1)\n : lastDayOfMonth(currentMonth)\n\n // only to make sure we navigate the calendar to the new date\n } else if (currentMonth && !isSameMonth(currentDate, currentMonth)) {\n dates[`${dateType}Month`] = newDate\n }\n\n newDate = findValid(newDate, pressedKey)\n\n if (hasReachedEnd(newDate)) {\n return // Stop here\n }\n\n dates[`${dateType}Date`] = newDate\n\n // set fallbacks\n if (!isRange) {\n dates.endDate = newDate\n } else {\n if (!startDate) {\n dates.startDate = newDate\n }\n if (!endDate) {\n dates.endDate = newDate\n }\n }\n\n // make sure we stay on the same month\n if (onlyMonth || hideNav) {\n if (\n !isSameMonth(dates.startDate, startDate) ||\n !isSameMonth(dates.endDate, startDate) // Heads up, should this not be context.endDate?\n ) {\n return\n }\n }\n\n updateDates(dates, () => {\n // call after state update, so the input get's the latest state as well\n callOnSelect({\n event,\n nr,\n hidePicker: false,\n ...dates,\n })\n })\n\n forceViewMonthChange()\n\n // and set the focus back again\n if (listRef && listRef.current) {\n listRef.current.focus({ preventScroll: true })\n }\n },\n [\n callOnSelect,\n findValid,\n hasReachedEnd,\n onKeyDown,\n startDate,\n endDate,\n updateDates,\n hideNav,\n isRange,\n keyNavCalc,\n nr,\n onlyMonth,\n endMonth,\n startMonth,\n forceViewMonthChange,\n ]\n )\n\n const cacheKey = useMemo(() => {\n return [\n nr,\n month,\n firstDayOfWeek,\n onlyMonth,\n hideNextMonthWeek,\n startDate,\n endDate,\n hoverDate,\n maxDate,\n minDate,\n ].join('|')\n }, [\n nr,\n month,\n firstDayOfWeek,\n onlyMonth,\n hideNextMonthWeek,\n startDate,\n endDate,\n hoverDate,\n maxDate,\n minDate,\n ])\n\n const weekDays = useMemo(() => {\n // Cache the result, just because we then avoid at least double calc because of reconciliation,\n // but we do not avoid calculating every day during hover or select\n\n if (cache.current[cacheKey]) {\n return cache.current[cacheKey]\n }\n\n let count = 0\n\n return (cache.current[cacheKey] = Object.values(\n getDays(month).reduce((acc, cur, i) => {\n // Normalize the data for table consumption\n acc[count] = acc[count] || []\n acc[count].push(cur)\n if (i % 7 === 6) {\n count++\n }\n return acc\n }, {})\n ))\n }, [cacheKey, getDays, month])\n\n const locale = useMemo(() => ({ ...locales[localeCode] }), [localeCode])\n\n return (\n <div\n className={classnames('dnb-date-picker__calendar', rtl && 'rtl')}\n lang={localeCode}\n >\n {!hideNav && (\n <div className=\"dnb-date-picker__header\">\n <div className=\"dnb-date-picker__header__nav\">\n <CalendarButton\n type=\"prev\"\n nr={nr}\n date={minDate}\n month={month}\n locale={locale}\n showButton={prevBtn}\n onClick={onPrev}\n />\n </div>\n <label\n id={`${id}--title`}\n className=\"dnb-date-picker__header__title dnb-no-focus\"\n title={selected_month.replace(\n /%s/,\n format(month, titleFormat, {\n locale,\n })\n )}\n tabIndex={-1}\n ref={labelRef}\n >\n {format(month, titleFormat, {\n locale,\n })}\n </label>\n <div className=\"dnb-date-picker__header__nav\">\n <CalendarButton\n type=\"next\"\n nr={nr}\n date={maxDate}\n month={month}\n locale={locale}\n showButton={nextBtn}\n onClick={onNext}\n />\n </div>\n </div>\n )}\n <table\n role=\"grid\"\n className=\"dnb-no-focus\"\n tabIndex={0}\n aria-labelledby={`${id}--title`}\n onKeyDown={onKeyDownHandler}\n onMouseLeave={onMouseLeaveHandler}\n ref={listRef}\n >\n {!hideDays && (\n <thead aria-hidden>\n <tr role=\"row\" className=\"dnb-date-picker__labels\">\n {getWeek(dayOffset(firstDayOfWeek)).map((day, i) => (\n <th\n key={i}\n role=\"columnheader\"\n scope=\"col\"\n className={classnames(\n 'dnb-date-picker__labels__day',\n `dnb-date-picker__labels__day--${format(day, 'i', {\n locale,\n })}`\n )}\n aria-label={format(day, 'EEEE', {\n locale,\n })}\n >\n {format(day, dayOfWeekFormat, {\n locale,\n })}\n </th>\n ))}\n </tr>\n </thead>\n )}\n <tbody>\n {weekDays.map((week, i) => {\n return (\n <tr\n key={'week' + i}\n role=\"row\"\n className=\"dnb-date-picker__days\"\n >\n {week.map((day: DayObject, i) => {\n const title = format(day.date, 'PPPP', {\n locale,\n })\n\n const handleAsDisabled =\n day.isLastMonth ||\n day.isNextMonth ||\n day.isDisabled ||\n day.isInactive\n\n const dateType = day.isStartDate\n ? 'start'\n : day.isEndDate\n ? 'end'\n : undefined\n const isSelectedDate =\n nr === 0 ? day.isStartDate : day.isEndDate\n\n // cell params\n const paramsCell = {\n tabIndex: -1,\n ...(dateType && { id: `${id}--button-${dateType}` }),\n ...(isSelectedDate && { ['aria-selected']: true }),\n } as React.HTMLProps<HTMLTableCellElement>\n\n // cell + button params\n const paramsButton = {\n ...(isSelectedDate && { ['aria-current']: 'date' }),\n } as ButtonProps\n\n return (\n <td\n key={'day' + i}\n role=\"gridcell\"\n className={classnames(\n 'dnb-date-picker__day',\n 'dnb-no-focus',\n buildDayClassNames(day)\n )}\n {...paramsCell}\n >\n <Button\n size=\"medium\"\n variant=\"secondary\"\n text={format(day.date, 'd', {\n locale,\n })}\n bounding={true}\n disabled={handleAsDisabled}\n tabIndex={handleAsDisabled ? 0 : -1} // fix for NVDA\n aria-disabled={handleAsDisabled}\n aria-label={title}\n {...paramsButton}\n on_click={\n handleAsDisabled\n ? undefined\n : ({ event }) =>\n onSelectRange({\n day,\n isRange,\n startDate,\n endDate,\n resetDate,\n event,\n onSelect: (state) => {\n updateDates(state, (dates) =>\n callOnSelect({\n ...dates,\n event,\n nr,\n hidePicker: !isRange,\n })\n )\n },\n })\n }\n onMouseOver={\n handleAsDisabled\n ? undefined\n : () => onHoverDay({ day, hoverDate, onHover })\n }\n onFocus={\n handleAsDisabled\n ? undefined\n : () => onHoverDay({ day, hoverDate, onHover })\n }\n />\n </td>\n )\n })}\n </tr>\n )\n })}\n </tbody>\n </table>\n </div>\n )\n}\n\nexport default DatePickerCalendar\n\nexport type CalendarButtonProps = {\n type: 'prev' | 'next'\n nr: number\n date: Date\n month: Date\n locale: CalendarLocales[keyof CalendarLocales]\n showButton: boolean\n onClick: ({\n nr,\n type,\n }: {\n nr: number\n type: CalendarButtonProps['type']\n }) => void\n onKeyDown?: (event: React.KeyboardEvent<HTMLButtonElement>) => void\n}\n\nfunction CalendarButton({\n type,\n nr,\n date,\n month,\n locale,\n showButton,\n onClick,\n onKeyDown,\n}: CalendarButtonProps) {\n const tr = useTranslation().DatePicker\n\n if (!showButton) {\n return <></>\n }\n const disabled = date && isSameMonth(month, date)\n\n const title = tr[`${type}_month`].replace(\n /%s/,\n format(subMonths(month, 1), 'MMMM yyyy', {\n locale,\n })\n )\n\n const icon = type === 'prev' ? 'chevron_left' : 'chevron_right'\n\n return (\n <Button\n className={classnames(`dnb-date-picker__${type}`, { disabled })}\n icon={icon}\n size=\"small\"\n aria-label={title}\n onClick={() => onClick && !disabled && onClick({ nr, type })}\n onKeyDown={onKeyDown}\n />\n )\n}\n\ntype SelectRangeEvent = {\n day: DayObject\n event?: React.MouseEvent<HTMLButtonElement>\n startDate?: Date\n endDate?: Date\n resetDate?: boolean\n isRange?: boolean\n onSelect?: DatePickerCalendarProps['onSelect']\n}\n\nfunction onSelectRange({\n day,\n isRange,\n startDate,\n endDate,\n onSelect,\n resetDate,\n event,\n}: SelectRangeEvent) {\n event.persist()\n\n if (!isRange) {\n // set only date\n return onSelect({\n startDate: startOfDay(day.date),\n endDate: startOfDay(day.date),\n event,\n })\n\n // for setting date new on every selection, do this here\n }\n\n if (!startDate || (resetDate && startDate && endDate)) {\n // set startDate\n // user is selecting startDate\n return onSelect({\n startDate: startOfDay(day.date),\n endDate: undefined,\n event,\n })\n }\n\n // set either startDate or endDate\n const daysToStartDate = Math.abs(\n differenceInCalendarDays(startDate, day.date)\n )\n const daysToEndDate = Math.abs(\n differenceInCalendarDays(endDate, day.date)\n )\n\n const range = toRange(\n endDate && !resetDate && daysToStartDate < daysToEndDate\n ? endDate\n : startDate,\n day.date\n )\n\n return onSelect({\n startDate: startOfDay(range.startDate),\n endDate: startOfDay(range.endDate),\n event,\n })\n}\n\nfunction onHoverDay({\n day,\n hoverDate,\n onHover,\n}: {\n day: CalendarDay\n hoverDate?: Date\n onHover: DatePickerCalendarProps['onHover']\n}) {\n if (!isSameDay(day.date, hoverDate) && onHover) {\n onHover(day.date)\n }\n}\n\nfunction buildDayClassNames(day: DayObject) {\n return classnames(\n {\n 'dnb-date-picker__day--start-date': day.isStartDate,\n 'dnb-date-picker__day--end-date': day.isEndDate,\n 'dnb-date-picker__day--preview': day.isPreview,\n 'dnb-date-picker__day--within-selection': day.isWithinSelection,\n 'dnb-date-picker__day--selectable': day.isSelectable,\n 'dnb-date-picker__day--inactive': day.isInactive,\n 'dnb-date-picker__day--disabled': day.isDisabled,\n 'dnb-date-picker__day--today': day.isToday,\n },\n day.className\n )\n}\n"],"mappings":"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"}
@@ -1,3 +1,27 @@
1
- export default DatePickerContext;
2
- declare const DatePickerContext: React.Context<{}>;
1
+ /**
2
+ * Web DatePicker Context
3
+ *
4
+ */
3
5
  import React from 'react';
6
+ import { DatePickerProps, DisplayPickerEvent } from './DatePicker';
7
+ import { ContextProps } from '../../shared/Context';
8
+ import { DatePickerChangeEvent, DatePickerProviderState, GetReturnObjectParams, ReturnObject } from './DatePickerProvider';
9
+ import { DatePickerDateProps, DatePickerDates } from './hooks/useDates';
10
+ import { CalendarView } from './hooks/useViews';
11
+ export type DateType = Date | string;
12
+ export type DatePickerContextValues = ContextProps & DatePickerDates & {
13
+ props: DatePickerProps;
14
+ translation: ContextProps['translation'];
15
+ views: Array<CalendarView>;
16
+ hasHadValidDate: boolean;
17
+ previousDates: DatePickerDateProps;
18
+ updateDates: (dates: DatePickerDates, callback?: (dates: DatePickerDates) => void) => void;
19
+ setState?: (state: DatePickerProviderState) => void;
20
+ setViews: (views: Array<CalendarView>, callback?: () => void) => void;
21
+ forceViewMonthChange: () => void;
22
+ callOnChangeHandler: <E>(event: DatePickerChangeEvent<E>) => void;
23
+ hidePicker: (event: DisplayPickerEvent) => void;
24
+ getReturnObject: <E>(params: GetReturnObjectParams<E>) => ReturnObject<E>;
25
+ };
26
+ declare const DatePickerContext: React.Context<DatePickerContextValues>;
27
+ export default DatePickerContext;
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerContext.js","names":["React","DatePickerContext","createContext"],"sources":["../../../../src/components/date-picker/DatePickerContext.js"],"sourcesContent":["/**\n * Web DatePicker Context\n *\n */\n\nimport React from 'react'\n\nconst DatePickerContext = React.createContext({})\n\nexport default DatePickerContext\n"],"mappings":"AAKA,OAAOA,KAAK,MAAM,OAAO;AAEzB,MAAMC,iBAAiB,GAAGD,KAAK,CAACE,aAAa,CAAC,CAAC,CAAC,CAAC;AAEjD,eAAeD,iBAAiB"}
1
+ {"version":3,"file":"DatePickerContext.js","names":["React","DatePickerContext","createContext"],"sources":["../../../../src/components/date-picker/DatePickerContext.ts"],"sourcesContent":["/**\n * Web DatePicker Context\n *\n */\n\nimport React from 'react'\nimport { DatePickerProps, DisplayPickerEvent } from './DatePicker'\nimport { ContextProps } from '../../shared/Context'\nimport {\n DatePickerChangeEvent,\n DatePickerProviderState,\n GetReturnObjectParams,\n ReturnObject,\n} from './DatePickerProvider'\nimport { DatePickerDateProps, DatePickerDates } from './hooks/useDates'\nimport { CalendarView } from './hooks/useViews'\n\nexport type DateType = Date | string\n\nexport type DatePickerContextValues = ContextProps &\n DatePickerDates & {\n props: DatePickerProps\n translation: ContextProps['translation']\n views: Array<CalendarView>\n hasHadValidDate: boolean\n previousDates: DatePickerDateProps\n updateDates: (\n dates: DatePickerDates,\n callback?: (dates: DatePickerDates) => void\n ) => void\n setState?: (state: DatePickerProviderState) => void\n setViews: (views: Array<CalendarView>, callback?: () => void) => void\n forceViewMonthChange: () => void\n callOnChangeHandler: <E>(event: DatePickerChangeEvent<E>) => void\n hidePicker: (event: DisplayPickerEvent) => void\n getReturnObject: <E>(\n params: GetReturnObjectParams<E>\n ) => ReturnObject<E>\n }\n\nconst DatePickerContext = React.createContext<DatePickerContextValues>(\n {} as DatePickerContextValues\n)\n\nexport default DatePickerContext\n"],"mappings":"AAKA,OAAOA,KAAK,MAAM,OAAO;AAmCzB,MAAMC,iBAAiB,GAAGD,KAAK,CAACE,aAAa,CAC3C,CAAC,CACH,CAAC;AAED,eAAeD,iBAAiB"}
@@ -1,18 +1,20 @@
1
- import * as React from 'react';
2
- export interface DatePickerFooterProps
3
- extends React.HTMLProps<HTMLElement> {
4
- isRange: boolean;
5
- onSubmit?: (...args: any[]) => any;
6
- onCancel?: (...args: any[]) => any;
7
- onReset?: (...args: any[]) => any;
8
- submitButtonText?: string;
9
- cancelButtonText?: string;
10
- resetButtonText?: string;
11
- }
12
- export default class DatePickerFooter extends React.Component<
13
- DatePickerFooterProps,
14
- any
15
- > {
16
- static defaultProps: object;
17
- render(): JSX.Element;
18
- }
1
+ /**
2
+ * Web DatePicker Component
3
+ *
4
+ */
5
+ import React from 'react';
6
+ import { DatePickerInputDates } from './hooks/useDates';
7
+ type DatePickerFooterEvent = React.MouseEvent<HTMLButtonElement> & DatePickerInputDates & {
8
+ event: React.MouseEvent<HTMLButtonElement>;
9
+ };
10
+ export type DatePickerFooterProps = Omit<React.HTMLProps<HTMLElement>, 'onSubmit' | 'onCancel' | 'onReset'> & {
11
+ isRange: boolean;
12
+ onSubmit?: (event: DatePickerFooterEvent) => void;
13
+ onCancel?: (event: DatePickerFooterEvent) => void;
14
+ onReset?: (event: DatePickerFooterEvent) => void;
15
+ submitButtonText?: string;
16
+ cancelButtonText?: string;
17
+ resetButtonText?: string;
18
+ };
19
+ declare function DatePickerFooter({ isRange, submitButtonText, cancelButtonText, resetButtonText, onSubmit, onCancel, onReset, }: DatePickerFooterProps): import("react/jsx-runtime").JSX.Element;
20
+ export default DatePickerFooter;
@@ -1,126 +1,100 @@
1
+ "use client";
2
+
1
3
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
4
  var _span, _span2, _span3;
3
- import React from 'react';
4
- import PropTypes from 'prop-types';
5
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
7
+ import React, { useContext, useCallback } from 'react';
5
8
  import Button from '../button/Button';
6
9
  import DatePickerContext from './DatePickerContext';
7
- import { isTrue } from '../../shared/component-helper';
8
10
  import { convertStringToDate } from './DatePickerCalc';
9
- export default class DatePickerFooter extends React.PureComponent {
10
- constructor() {
11
- super(...arguments);
12
- _defineProperty(this, "onSubmitHandler", args => {
13
- const {
14
- onSubmit
15
- } = this.props;
16
- if (onSubmit) {
17
- onSubmit(args);
18
- }
19
- });
20
- _defineProperty(this, "onCancelHandler", args => {
21
- const {
22
- date_format
23
- } = this.context.props;
24
- const startDate = this.context._startDate ? convertStringToDate(this.context._startDate, {
25
- date_format
26
- }) : null;
27
- const endDate = this.context._endDate ? convertStringToDate(this.context._endDate, {
28
- date_format
29
- }) : startDate;
30
- if (args && args.event) {
31
- args.event.persist();
32
- }
33
- this.context.updateState({
34
- startDate,
35
- endDate
36
- }, () => {
37
- const {
38
- onCancel
39
- } = this.props;
40
- if (onCancel) {
41
- onCancel(args);
42
- }
43
- });
44
- });
45
- _defineProperty(this, "onResetHandler", args => {
46
- if (args && args.event) {
47
- args.event.persist();
48
- }
49
- this.context.updateState({
50
- date: undefined,
51
- startDate: undefined,
52
- endDate: undefined
53
- }, () => {
54
- const {
55
- onReset
56
- } = this.props;
57
- if (onReset) {
58
- onReset(args);
59
- }
60
- });
11
+ import { useTranslation } from '../../shared';
12
+ function DatePickerFooter(_ref) {
13
+ let {
14
+ isRange,
15
+ submitButtonText,
16
+ cancelButtonText,
17
+ resetButtonText,
18
+ onSubmit,
19
+ onCancel,
20
+ onReset
21
+ } = _ref;
22
+ const {
23
+ updateDates,
24
+ previousDates,
25
+ props: contextProps
26
+ } = useContext(DatePickerContext);
27
+ const {
28
+ show_reset_button,
29
+ show_cancel_button,
30
+ show_submit_button,
31
+ date_format
32
+ } = contextProps;
33
+ const {
34
+ submit_button_text: submit_button_text_translation,
35
+ cancel_button_text: cancel_button_text_translation,
36
+ reset_button_text: reset_button_text_translation
37
+ } = useTranslation().DatePicker;
38
+ const onSubmitHandler = useCallback(args => {
39
+ onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit(args);
40
+ }, [onSubmit]);
41
+ const onCancelHandler = useCallback(args => {
42
+ if (args && args.event) {
43
+ args.event.persist();
44
+ }
45
+ const startDate = previousDates.startDate ? convertStringToDate(previousDates.startDate, {
46
+ date_format
47
+ }) : previousDates.date ? convertStringToDate(previousDates.date, {
48
+ date_format
49
+ }) : null;
50
+ const endDate = previousDates.endDate ? convertStringToDate(previousDates.endDate, {
51
+ date_format
52
+ }) : startDate;
53
+ updateDates({
54
+ startDate,
55
+ endDate
56
+ }, dates => {
57
+ onCancel === null || onCancel === void 0 ? void 0 : onCancel(_objectSpread(_objectSpread({}, args), dates));
61
58
  });
62
- }
63
- render() {
64
- const {
65
- isRange,
66
- resetButtonText,
67
- submitButtonText,
68
- cancelButtonText
69
- } = this.props;
70
- const {
71
- show_reset_button,
72
- show_cancel_button,
73
- show_submit_button
74
- } = this.context.props;
75
- if (!isRange && !isTrue(show_submit_button) && !isTrue(show_cancel_button) && !isTrue(show_reset_button)) {
76
- return React.createElement(React.Fragment, null);
59
+ }, [date_format, updateDates, previousDates, onCancel]);
60
+ const onResetHandler = useCallback(args => {
61
+ if (args && args.event) {
62
+ args.event.persist();
77
63
  }
78
- const {
79
- submit_button_text: submit_button_text_translation,
80
- cancel_button_text: cancel_button_text_translation,
81
- reset_button_text: reset_button_text_translation
82
- } = this.context.translation.DatePicker;
83
- return React.createElement("div", {
84
- className: "dnb-date-picker__footer"
85
- }, (isRange || isTrue(show_submit_button)) && React.createElement(Button, {
86
- text: submitButtonText || submit_button_text_translation,
87
- onClick: this.onSubmitHandler,
88
- "data-testid": "submit"
89
- }) || _span || (_span = React.createElement("span", null)), React.createElement("span", null, isTrue(show_reset_button) && React.createElement(Button, {
90
- text: resetButtonText || reset_button_text_translation,
91
- icon: "reset",
92
- icon_position: "left",
93
- variant: "tertiary",
94
- onClick: this.onResetHandler,
95
- "data-testid": "reset",
96
- right: "0.5rem"
97
- }) || _span2 || (_span2 = React.createElement("span", null)), (isRange || isTrue(show_cancel_button)) && React.createElement(Button, {
98
- text: cancelButtonText || cancel_button_text_translation,
99
- icon: "close",
100
- icon_position: "left",
101
- variant: "tertiary",
102
- onClick: this.onCancelHandler,
103
- "data-testid": "cancel",
104
- right: "0.5rem"
105
- }) || _span3 || (_span3 = React.createElement("span", null))));
64
+ updateDates({
65
+ date: undefined,
66
+ startDate: undefined,
67
+ endDate: undefined
68
+ }, dates => {
69
+ onReset === null || onReset === void 0 ? void 0 : onReset(_objectSpread(_objectSpread({}, args), dates));
70
+ });
71
+ }, [updateDates, onReset]);
72
+ if (!isRange && !show_submit_button && !show_cancel_button && !show_reset_button) {
73
+ return React.createElement(React.Fragment, null);
106
74
  }
75
+ return React.createElement("div", {
76
+ className: "dnb-date-picker__footer"
77
+ }, (isRange || show_submit_button) && React.createElement(Button, {
78
+ text: submitButtonText || submit_button_text_translation,
79
+ onClick: onSubmitHandler,
80
+ "data-testid": "submit"
81
+ }) || _span || (_span = React.createElement("span", null)), React.createElement("span", null, show_reset_button && React.createElement(Button, {
82
+ text: resetButtonText || reset_button_text_translation,
83
+ icon: "reset",
84
+ icon_position: "left",
85
+ variant: "tertiary",
86
+ onClick: onResetHandler,
87
+ "data-testid": "reset",
88
+ right: "0.5rem"
89
+ }) || _span2 || (_span2 = React.createElement("span", null)), (isRange || show_cancel_button) && React.createElement(Button, {
90
+ text: cancelButtonText || cancel_button_text_translation,
91
+ icon: "close",
92
+ icon_position: "left",
93
+ variant: "tertiary",
94
+ onClick: onCancelHandler,
95
+ "data-testid": "cancel",
96
+ right: "0.5rem"
97
+ }) || _span3 || (_span3 = React.createElement("span", null))));
107
98
  }
108
- _defineProperty(DatePickerFooter, "contextType", DatePickerContext);
109
- _defineProperty(DatePickerFooter, "defaultProps", {
110
- onSubmit: null,
111
- onCancel: null,
112
- onReset: null,
113
- submitButtonText: null,
114
- cancelButtonText: null,
115
- resetButtonText: null
116
- });
117
- process.env.NODE_ENV !== "production" ? DatePickerFooter.propTypes = {
118
- isRange: PropTypes.bool.isRequired,
119
- onSubmit: PropTypes.func,
120
- onCancel: PropTypes.func,
121
- onReset: PropTypes.func,
122
- submitButtonText: PropTypes.string,
123
- cancelButtonText: PropTypes.string,
124
- resetButtonText: PropTypes.string
125
- } : void 0;
99
+ export default DatePickerFooter;
126
100
  //# sourceMappingURL=DatePickerFooter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerFooter.js","names":["React","PropTypes","Button","DatePickerContext","isTrue","convertStringToDate","DatePickerFooter","PureComponent","constructor","arguments","_defineProperty","args","onSubmit","props","date_format","context","startDate","_startDate","endDate","_endDate","event","persist","updateState","onCancel","date","undefined","onReset","render","isRange","resetButtonText","submitButtonText","cancelButtonText","show_reset_button","show_cancel_button","show_submit_button","createElement","Fragment","submit_button_text","submit_button_text_translation","cancel_button_text","cancel_button_text_translation","reset_button_text","reset_button_text_translation","translation","DatePicker","className","text","onClick","onSubmitHandler","_span","icon","icon_position","variant","onResetHandler","right","_span2","onCancelHandler","_span3","process","env","NODE_ENV","propTypes","bool","isRequired","func","string"],"sources":["../../../../src/components/date-picker/DatePickerFooter.js"],"sourcesContent":["/**\n * Web DatePicker Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport Button from '../button/Button'\nimport DatePickerContext from './DatePickerContext'\nimport { isTrue } from '../../shared/component-helper'\nimport { convertStringToDate } from './DatePickerCalc'\n\nexport default class DatePickerFooter extends React.PureComponent {\n static contextType = DatePickerContext\n\n static propTypes = {\n isRange: PropTypes.bool.isRequired,\n\n onSubmit: PropTypes.func,\n onCancel: PropTypes.func,\n onReset: PropTypes.func,\n\n submitButtonText: PropTypes.string,\n cancelButtonText: PropTypes.string,\n resetButtonText: PropTypes.string,\n }\n\n static defaultProps = {\n onSubmit: null,\n onCancel: null,\n onReset: null,\n submitButtonText: null,\n cancelButtonText: null,\n resetButtonText: null,\n }\n\n onSubmitHandler = (args) => {\n const { onSubmit } = this.props\n if (onSubmit) {\n onSubmit(args)\n }\n }\n\n onCancelHandler = (args) => {\n const { date_format } = this.context.props\n\n const startDate = this.context._startDate\n ? convertStringToDate(this.context._startDate, {\n date_format,\n })\n : null\n const endDate = this.context._endDate\n ? convertStringToDate(this.context._endDate, {\n date_format,\n })\n : startDate\n\n if (args && args.event) {\n args.event.persist()\n }\n\n this.context.updateState(\n {\n startDate,\n endDate,\n },\n () => {\n const { onCancel } = this.props\n if (onCancel) {\n onCancel(args)\n }\n }\n )\n }\n\n onResetHandler = (args) => {\n if (args && args.event) {\n args.event.persist()\n }\n\n this.context.updateState(\n {\n date: undefined,\n startDate: undefined,\n endDate: undefined,\n },\n () => {\n const { onReset } = this.props\n if (onReset) {\n onReset(args)\n }\n }\n )\n }\n\n render() {\n const {\n isRange,\n resetButtonText,\n submitButtonText,\n cancelButtonText,\n } = this.props\n\n const { show_reset_button, show_cancel_button, show_submit_button } =\n this.context.props\n\n if (\n !isRange &&\n !isTrue(show_submit_button) &&\n !isTrue(show_cancel_button) &&\n !isTrue(show_reset_button)\n ) {\n return <></>\n }\n\n const {\n submit_button_text: submit_button_text_translation,\n cancel_button_text: cancel_button_text_translation,\n reset_button_text: reset_button_text_translation,\n } = this.context.translation.DatePicker\n\n return (\n <div className=\"dnb-date-picker__footer\">\n {((isRange || isTrue(show_submit_button)) && (\n <Button\n text={submitButtonText || submit_button_text_translation}\n onClick={this.onSubmitHandler}\n data-testid=\"submit\"\n />\n )) || <span />}\n\n <span>\n {(isTrue(show_reset_button) && (\n <Button\n text={resetButtonText || reset_button_text_translation}\n icon=\"reset\"\n icon_position=\"left\"\n variant=\"tertiary\"\n onClick={this.onResetHandler}\n data-testid=\"reset\"\n right=\"0.5rem\"\n />\n )) || <span />}\n\n {((isRange || isTrue(show_cancel_button)) && (\n <Button\n text={cancelButtonText || cancel_button_text_translation}\n icon=\"close\"\n icon_position=\"left\"\n variant=\"tertiary\"\n onClick={this.onCancelHandler}\n data-testid=\"cancel\"\n right=\"0.5rem\"\n />\n )) || <span />}\n </span>\n </div>\n )\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"DatePickerFooter.js","names":["React","useContext","useCallback","Button","DatePickerContext","convertStringToDate","useTranslation","DatePickerFooter","_ref","isRange","submitButtonText","cancelButtonText","resetButtonText","onSubmit","onCancel","onReset","updateDates","previousDates","props","contextProps","show_reset_button","show_cancel_button","show_submit_button","date_format","submit_button_text","submit_button_text_translation","cancel_button_text","cancel_button_text_translation","reset_button_text","reset_button_text_translation","DatePicker","onSubmitHandler","args","onCancelHandler","event","persist","startDate","date","endDate","dates","_objectSpread","onResetHandler","undefined","createElement","Fragment","className","text","onClick","_span","icon","icon_position","variant","right","_span2","_span3"],"sources":["../../../../src/components/date-picker/DatePickerFooter.tsx"],"sourcesContent":["/**\n * Web DatePicker Component\n *\n */\n\nimport React, { useContext, useCallback } from 'react'\nimport Button from '../button/Button'\nimport DatePickerContext from './DatePickerContext'\nimport { convertStringToDate } from './DatePickerCalc'\nimport { useTranslation } from '../../shared'\nimport { DatePickerInputDates } from './hooks/useDates'\n\ntype DatePickerFooterEvent = React.MouseEvent<HTMLButtonElement> &\n DatePickerInputDates & {\n event: React.MouseEvent<HTMLButtonElement>\n }\n\nexport type DatePickerFooterProps = Omit<\n React.HTMLProps<HTMLElement>,\n 'onSubmit' | 'onCancel' | 'onReset'\n> & {\n isRange: boolean\n onSubmit?: (event: DatePickerFooterEvent) => void\n onCancel?: (event: DatePickerFooterEvent) => void\n onReset?: (event: DatePickerFooterEvent) => void\n submitButtonText?: string\n cancelButtonText?: string\n resetButtonText?: string\n}\n\nfunction DatePickerFooter({\n isRange,\n submitButtonText,\n cancelButtonText,\n resetButtonText,\n onSubmit,\n onCancel,\n onReset,\n}: DatePickerFooterProps) {\n const {\n updateDates,\n previousDates,\n props: contextProps,\n } = useContext(DatePickerContext)\n\n const {\n show_reset_button,\n show_cancel_button,\n show_submit_button,\n date_format,\n } = contextProps\n\n const {\n submit_button_text: submit_button_text_translation,\n cancel_button_text: cancel_button_text_translation,\n reset_button_text: reset_button_text_translation,\n } = useTranslation().DatePicker\n\n const onSubmitHandler = useCallback(\n (args: DatePickerFooterEvent) => {\n onSubmit?.(args)\n },\n [onSubmit]\n )\n\n const onCancelHandler = useCallback(\n (args: DatePickerFooterEvent) => {\n if (args && args.event) {\n args.event.persist()\n }\n\n const startDate = previousDates.startDate\n ? convertStringToDate(previousDates.startDate, {\n date_format,\n })\n : previousDates.date\n ? convertStringToDate(previousDates.date, {\n date_format,\n })\n : null\n\n const endDate = previousDates.endDate\n ? convertStringToDate(previousDates.endDate, {\n date_format,\n })\n : startDate\n\n updateDates(\n {\n startDate,\n endDate,\n },\n (dates) => {\n onCancel?.({ ...args, ...dates })\n }\n )\n },\n [date_format, updateDates, previousDates, onCancel]\n )\n\n const onResetHandler = useCallback(\n (args: DatePickerFooterEvent) => {\n if (args && args.event) {\n args.event.persist()\n }\n\n updateDates(\n {\n date: undefined,\n startDate: undefined,\n endDate: undefined,\n },\n (dates) => {\n onReset?.({ ...args, ...dates })\n }\n )\n },\n [updateDates, onReset]\n )\n\n if (\n !isRange &&\n !show_submit_button &&\n !show_cancel_button &&\n !show_reset_button\n ) {\n return <></>\n }\n\n return (\n <div className=\"dnb-date-picker__footer\">\n {((isRange || show_submit_button) && (\n <Button\n text={submitButtonText || submit_button_text_translation}\n onClick={onSubmitHandler}\n data-testid=\"submit\"\n />\n )) || <span />}\n\n <span>\n {(show_reset_button && (\n <Button\n text={resetButtonText || reset_button_text_translation}\n icon=\"reset\"\n icon_position=\"left\"\n variant=\"tertiary\"\n onClick={onResetHandler}\n data-testid=\"reset\"\n right=\"0.5rem\"\n />\n )) || <span />}\n\n {((isRange || show_cancel_button) && (\n <Button\n text={cancelButtonText || cancel_button_text_translation}\n icon=\"close\"\n icon_position=\"left\"\n variant=\"tertiary\"\n onClick={onCancelHandler}\n data-testid=\"cancel\"\n right=\"0.5rem\"\n />\n )) || <span />}\n </span>\n </div>\n )\n}\n\nexport default DatePickerFooter\n"],"mappings":"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"}