@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,11 +1,11 @@
1
1
  "use strict";
2
+ "use client";
2
3
 
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
7
  exports.default = void 0;
7
- var _react = _interopRequireDefault(require("react"));
8
- var _propTypes = _interopRequireDefault(require("prop-types"));
8
+ var _react = _interopRequireWildcard(require("react"));
9
9
  var _addDays = _interopRequireDefault(require("date-fns/addDays"));
10
10
  var _addMonths = _interopRequireDefault(require("date-fns/addMonths"));
11
11
  var _addYears = _interopRequireDefault(require("date-fns/addYears"));
@@ -18,480 +18,537 @@ var _Input = _interopRequireWildcard(require("../input/Input"));
18
18
  var _componentHelper = require("../../shared/component-helper");
19
19
  var _DatePickerCalc = require("./DatePickerCalc");
20
20
  var _DatePickerContext = _interopRequireDefault(require("./DatePickerContext"));
21
- const _excluded = ["id", "title", "submitAttributes", "isRange", "maskOrder", "maskPlaceholder", "separatorRexExp", "onChange", "onFocus", "onSubmit", "onBlur", "selectedDateTitle", "showInput", "input_element", "locale", "disabled", "skeleton", "opened", "size", "status", "status_state", "status_props"],
22
- _excluded2 = ["className", "value"];
21
+ var _shared = require("../../shared");
23
22
  var _span;
23
+ const _excluded = ["isRange", "maskOrder", "separatorRexExp", "id", "title", "submitAttributes", "maskPlaceholder", "onFocus", "onBlur", "onChange", "onSubmit", "selectedDateTitle", "showInput", "input_element", "lang", "disabled", "skeleton", "opened", "size", "status", "status_state", "status_props"],
24
+ _excluded2 = ["className", "value"];
25
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
24
26
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
25
27
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
26
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
28
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
27
29
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
28
30
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
29
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
30
31
  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; }
31
32
  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; }
32
33
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
33
34
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
34
35
  function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
35
- class DatePickerInput extends _react.default.PureComponent {
36
- constructor(props) {
37
- super(props);
38
- _defineProperty(this, "state", {
39
- _listenForPropChanges: true,
40
- focusState: 'virgin',
41
- partialStartDate: '',
42
- partialEndDate: ''
43
- });
44
- _defineProperty(this, "shortcutHandler", async e => {
45
- if (this.focusMode) {
46
- const success = (e.clipboardData || typeof window !== 'undefined' && window.clipboardData).getData('text');
47
- if (success) {
48
- e.preventDefault();
49
- try {
50
- const separators = ['.', '/'];
51
- const possibleFormats = ['yyyy-MM-dd'];
52
- possibleFormats.forEach(date => {
53
- separators.forEach(sep => {
54
- possibleFormats.push(date.replace(/-/g, sep));
55
- });
56
- });
57
- possibleFormats.forEach(date => {
58
- possibleFormats.push(date.split('').reverse().join(''));
59
- });
60
- let date;
61
- for (let i = 0, l = possibleFormats.length; i < l; ++i) {
62
- date = (0, _DatePickerCalc.convertStringToDate)(success, {
63
- date_format: possibleFormats[i]
64
- });
65
- if (date) {
66
- break;
67
- }
68
- }
69
- const mode = this.focusMode === 'start' ? 'startDate' : 'endDate';
70
- if (date && !this.state[mode]) {
71
- this.context.setState({
72
- [mode]: date
73
- });
74
- }
75
- } catch (e) {
76
- (0, _componentHelper.warn)(e);
77
- }
78
- }
79
- }
80
- });
81
- _defineProperty(this, "callOnChangeAsInvalid", state => {
82
- this.context.updateState({
83
- hoverDate: null
84
- }, () => {
85
- if (this.context.hasHadValidDate) {
86
- const {
87
- startDate,
88
- endDate,
89
- event
90
- } = _objectSpread(_objectSpread({}, this.context), state);
91
- this.context.callOnChangeHandler({
92
- startDate,
93
- endDate,
94
- event
95
- });
96
- }
97
- });
98
- });
99
- _defineProperty(this, "callOnChange", _ref => {
100
- let {
101
- startDate,
102
- endDate,
103
- event
104
- } = _ref;
105
- const state = {
106
- changeMonthViews: true
107
- };
108
- if (typeof startDate !== 'undefined' && (0, _isValid.default)(startDate)) {
109
- state.startDate = startDate;
110
- }
111
- if (!this.props.isRange) {
112
- endDate = startDate;
36
+ const defaultProps = {
37
+ maskOrder: 'dd/mm/yyyy',
38
+ maskPlaceholder: 'dd/mm/åååå',
39
+ separatorRexExp: /[-/ ]/g,
40
+ status_state: 'error',
41
+ opened: false
42
+ };
43
+ function DatePickerInput(externalProps) {
44
+ const props = _objectSpread(_objectSpread({}, defaultProps), externalProps);
45
+ const {
46
+ isRange,
47
+ maskOrder,
48
+ separatorRexExp,
49
+ id,
50
+ title,
51
+ submitAttributes,
52
+ maskPlaceholder,
53
+ onFocus,
54
+ onBlur,
55
+ onChange,
56
+ onSubmit,
57
+ selectedDateTitle,
58
+ showInput,
59
+ input_element,
60
+ lang,
61
+ disabled,
62
+ skeleton,
63
+ opened,
64
+ size,
65
+ status,
66
+ status_state,
67
+ status_props
68
+ } = props,
69
+ attributes = _objectWithoutProperties(props, _excluded);
70
+ const [focusState, setFocusState] = (0, _react.useState)('virgin');
71
+ const [partialDates, setPartialDates] = (0, _react.useState)({
72
+ partialStartDate: '',
73
+ partialEndDate: ''
74
+ });
75
+ const {
76
+ updateDates,
77
+ callOnChangeHandler,
78
+ hasHadValidDate,
79
+ getReturnObject,
80
+ __startDay,
81
+ __startMonth,
82
+ __startYear,
83
+ __endDay,
84
+ __endMonth,
85
+ __endYear,
86
+ startDate,
87
+ endDate,
88
+ props: {
89
+ on_type,
90
+ label
91
+ }
92
+ } = (0, _react.useContext)(_DatePickerContext.default);
93
+ const translation = (0, _shared.useTranslation)().DatePicker;
94
+ const modeDate = (0, _react.useMemo)(() => ({
95
+ startDate,
96
+ endDate
97
+ }), [startDate, endDate]);
98
+ const inputDates = (0, _react.useMemo)(() => ({
99
+ __startDay,
100
+ __startMonth,
101
+ __startYear,
102
+ __endDay,
103
+ __endMonth,
104
+ __endYear
105
+ }), [__startDay, __startMonth, __startYear, __endDay, __endMonth, __endYear]);
106
+ const startDayRef = (0, _react.useRef)();
107
+ const startMonthRef = (0, _react.useRef)();
108
+ const startYearRef = (0, _react.useRef)();
109
+ const endDayRef = (0, _react.useRef)();
110
+ const endMonthRef = (0, _react.useRef)();
111
+ const endYearRef = (0, _react.useRef)();
112
+ const inputRefs = (0, _react.useMemo)(() => ({
113
+ startDayRef,
114
+ startMonthRef,
115
+ startYearRef,
116
+ endDayRef,
117
+ endMonthRef,
118
+ endYearRef
119
+ }), []);
120
+ const startDayDateRef = (0, _react.useRef)();
121
+ const endDayDateRef = (0, _react.useRef)();
122
+ const startMonthDateRef = (0, _react.useRef)();
123
+ const endMonthDateRef = (0, _react.useRef)();
124
+ const startYearDateRef = (0, _react.useRef)();
125
+ const endYearDateRef = (0, _react.useRef)();
126
+ const dateRefs = (0, _react.useMemo)(() => ({
127
+ startDay: startDayDateRef,
128
+ startMonth: endDayDateRef,
129
+ startYear: startMonthDateRef,
130
+ endDay: endMonthDateRef,
131
+ endMonth: startYearDateRef,
132
+ endYear: endYearDateRef
133
+ }), []);
134
+ const startDateRef = (0, _react.useRef)();
135
+ const endDateRef = (0, _react.useRef)();
136
+ const temporaryDates = (0, _react.useMemo)(() => ({
137
+ startDate: startDateRef,
138
+ endDate: endDateRef
139
+ }), []);
140
+ const refList = (0, _react.useRef)();
141
+ const focusMode = (0, _react.useRef)();
142
+ const maskList = (0, _react.useMemo)(() => {
143
+ const separators = maskOrder.match(separatorRexExp);
144
+ return maskOrder.split(separatorRexExp).reduce((acc, cur) => {
145
+ if (!cur) {
146
+ return acc;
113
147
  }
114
- if (typeof endDate !== 'undefined' && (0, _isValid.default)(endDate)) {
115
- state.endDate = endDate;
148
+ acc.push(cur);
149
+ if (separators.length > 0) {
150
+ acc.push(separators.shift());
116
151
  }
117
- this.context.updateState(state, () => {
118
- if (typeof startDate !== 'undefined' && (0, _isValid.default)(startDate) || typeof endDate !== 'undefined' && (0, _isValid.default)(endDate)) {
119
- this.context.callOnChangeHandler({
120
- event
121
- });
122
- }
152
+ return acc;
153
+ }, []);
154
+ }, [maskOrder, separatorRexExp]);
155
+ const pasteHandler = (0, _react.useCallback)(async event => {
156
+ if (!focusMode.current) {
157
+ return;
158
+ }
159
+ const success = (event.clipboardData || typeof window !== 'undefined' && window['clipboardData']).getData('text');
160
+ if (!success) {
161
+ return;
162
+ }
163
+ event.preventDefault();
164
+ try {
165
+ const separators = ['.', '/'];
166
+ const possibleFormats = ['yyyy-MM-dd'];
167
+ possibleFormats.forEach(date => {
168
+ separators.forEach(sep => {
169
+ possibleFormats.push(date.replace(/-/g, sep));
170
+ });
123
171
  });
124
- });
125
- _defineProperty(this, "callOnType", _ref2 => {
126
- let {
127
- event
128
- } = _ref2;
129
- const getDates = () => ['start', 'end'].reduce((acc, mode) => {
130
- acc[`${mode}Date`] = [this[`_${mode}Year`] || this.context[`__${mode}Year`] || 'yyyy', this[`_${mode}Month`] || this.context[`__${mode}Month`] || 'mm', this[`_${mode}Day`] || this.context[`__${mode}Day`] || 'dd'].join('-');
131
- return acc;
132
- }, {});
133
- let {
134
- startDate,
135
- endDate
136
- } = getDates();
137
- const partialStartDate = startDate;
138
- const partialEndDate = endDate;
139
- this.setState({
140
- partialStartDate,
141
- partialEndDate
172
+ possibleFormats.forEach(date => {
173
+ possibleFormats.push(date.split('').reverse().join(''));
142
174
  });
143
- startDate = (0, _parseISO.default)(startDate);
144
- endDate = (0, _parseISO.default)(endDate);
145
- if (!(0, _isValid.default)(startDate)) {
146
- startDate = null;
175
+ let date;
176
+ let index = 0;
177
+ for (index; index < possibleFormats.length; ++index) {
178
+ date = (0, _DatePickerCalc.convertStringToDate)(success, {
179
+ date_format: possibleFormats[index]
180
+ });
181
+ if (date) {
182
+ break;
183
+ }
147
184
  }
148
- if (!(0, _isValid.default)(endDate)) {
149
- endDate = null;
185
+ const mode = focusMode.current === 'start' ? 'startDate' : 'endDate';
186
+ if (date) {
187
+ updateDates({
188
+ [mode]: date
189
+ });
150
190
  }
151
- let returnObject = this.context.getReturnObject({
152
- startDate,
153
- endDate,
154
- event,
155
- partialStartDate,
156
- partialEndDate
157
- });
158
- if (returnObject.is_valid === false || returnObject.is_valid_start_date === false || returnObject.is_valid_end_date === false) {
191
+ } catch (error) {
192
+ (0, _componentHelper.warn)(error);
193
+ }
194
+ }, [updateDates]);
195
+ const callOnChangeAsInvalid = (0, _react.useCallback)(state => {
196
+ updateDates({
197
+ hoverDate: null
198
+ }, dates => {
199
+ if (hasHadValidDate) {
159
200
  const {
160
201
  startDate,
161
- endDate
162
- } = getDates();
163
- const typedDates = this.props.isRange ? {
164
- start_date: startDate,
165
- end_date: endDate
166
- } : {
167
- date: startDate
168
- };
169
- returnObject = _objectSpread(_objectSpread({}, returnObject), typedDates);
170
- }
171
- (0, _componentHelper.dispatchCustomElementEvent)(this.context, 'on_type', returnObject);
172
- });
173
- _defineProperty(this, "prepareCounting", async _ref3 => {
174
- let {
175
- keyCode,
176
- target,
177
- event
178
- } = _ref3;
179
- try {
180
- const isDate = target.getAttribute('class').match(/__input--([day|month|year]+)($|\s)/)[1];
181
- const isInRange = target.getAttribute('id').match(/-([start|end]+)-/)[1];
182
- let date = isInRange === 'start' ? this.context.startDate : this.context.endDate;
183
- if (!date) {
184
- return;
185
- }
186
- const count = keyCode === 'up' ? 1 : -1;
187
- if (keyCode === 'up' || keyCode === 'down') {
188
- switch (isDate) {
189
- case 'day':
190
- date = (0, _addDays.default)(date, count);
191
- break;
192
- case 'month':
193
- date = (0, _addMonths.default)(date, count);
194
- break;
195
- case 'year':
196
- date = (0, _addYears.default)(date, count);
197
- break;
198
- }
199
- }
200
- this.callOnChange({
201
- [isInRange === 'start' ? 'startDate' : 'endDate']: date,
202
+ endDate,
203
+ event
204
+ } = _objectSpread(_objectSpread({}, state), dates);
205
+ callOnChangeHandler({
206
+ startDate,
207
+ endDate,
202
208
  event
203
209
  });
204
- await wait(1);
205
- selectAll(target);
206
- } catch (e) {
207
- (0, _componentHelper.warn)(e);
208
210
  }
209
211
  });
210
- _defineProperty(this, "selectStart", target => {
211
- target.focus();
212
- target.setSelectionRange(0, 0);
213
- });
214
- _defineProperty(this, "onFocusHandler", event => {
215
- try {
216
- selectAll(event.target);
217
- } catch (e) {
218
- (0, _componentHelper.warn)(e);
219
- }
220
- this.setState({
221
- focusState: 'focus',
222
- _listenForPropChanges: false
223
- });
224
- if (this.props.onFocus) {
225
- this.props.onFocus(_objectSpread(_objectSpread({}, event), this.context.getReturnObject({
212
+ }, [updateDates, callOnChangeHandler, hasHadValidDate]);
213
+ const callOnChange = (0, _react.useCallback)(_ref => {
214
+ let {
215
+ startDate,
216
+ endDate,
217
+ event
218
+ } = _ref;
219
+ const state = {};
220
+ if (typeof startDate !== 'undefined' && (0, _isValid.default)(startDate)) {
221
+ state['startDate'] = startDate;
222
+ }
223
+ if (!isRange) {
224
+ endDate = startDate;
225
+ }
226
+ if (typeof endDate !== 'undefined' && (0, _isValid.default)(endDate)) {
227
+ state['endDate'] = endDate;
228
+ }
229
+ updateDates(state, dates => {
230
+ if (typeof startDate !== 'undefined' && (0, _isValid.default)(startDate) || typeof endDate !== 'undefined' && (0, _isValid.default)(endDate)) {
231
+ callOnChangeHandler(_objectSpread({
226
232
  event
227
- })));
233
+ }, dates));
228
234
  }
229
235
  });
230
- _defineProperty(this, "onBlurHandler", event => {
231
- const {
232
- partialStartDate,
233
- partialEndDate
234
- } = this.state;
235
- this.focusMode = null;
236
- this.setState({
237
- focusState: 'blur',
238
- _listenForPropChanges: false
239
- });
240
- if (this.props.onBlur) {
241
- this.props.onBlur(_objectSpread(_objectSpread({}, event), this.context.getReturnObject({
242
- event,
243
- partialStartDate,
244
- partialEndDate
245
- })));
246
- }
236
+ }, [updateDates, callOnChangeHandler, isRange]);
237
+ const callOnType = (0, _react.useCallback)(_ref2 => {
238
+ let {
239
+ event
240
+ } = _ref2;
241
+ const getDates = () => ['start', 'end'].reduce((acc, mode) => {
242
+ acc[`${mode}Date`] = [dateRefs[`${mode}Year`].current || inputDates[`__${mode}Year`] || 'yyyy', dateRefs[`${mode}Month`].current || inputDates[`__${mode}Month`] || 'mm', dateRefs[`${mode}Day`].current || inputDates[`__${mode}Day`] || 'dd'].join('-');
243
+ return acc;
244
+ }, {
245
+ startDate: undefined,
246
+ endDate: undefined
247
247
  });
248
- _defineProperty(this, "onKeyDownHandler", async event => {
249
- const keyCode = (0, _componentHelper.keycode)(event);
250
- const target = event.target;
251
- if (target.selectionStart !== target.selectionEnd) {
252
- this.selectStart(target);
253
- }
254
- switch (keyCode) {
255
- case 'up':
256
- case 'down':
257
- event.persist();
258
- event.preventDefault();
259
- this.prepareCounting({
260
- event,
261
- keyCode,
262
- target
263
- });
264
- return false;
265
- case 'tab':
266
- return false;
248
+ let {
249
+ startDate,
250
+ endDate
251
+ } = getDates();
252
+ const partialStartDate = startDate;
253
+ const partialEndDate = endDate;
254
+ setPartialDates({
255
+ partialStartDate,
256
+ partialEndDate
257
+ });
258
+ startDate = (0, _parseISO.default)(startDate);
259
+ endDate = (0, _parseISO.default)(endDate);
260
+ if (!(0, _isValid.default)(startDate)) {
261
+ startDate = null;
262
+ }
263
+ if (!(0, _isValid.default)(endDate)) {
264
+ endDate = null;
265
+ }
266
+ let returnObject = getReturnObject({
267
+ startDate,
268
+ endDate,
269
+ event,
270
+ partialStartDate,
271
+ partialEndDate
272
+ });
273
+ if (returnObject.is_valid === false || returnObject.is_valid_start_date === false || returnObject.is_valid_end_date === false) {
274
+ const {
275
+ startDate,
276
+ endDate
277
+ } = getDates();
278
+ const typedDates = isRange ? {
279
+ start_date: startDate,
280
+ end_date: endDate
281
+ } : {
282
+ date: startDate
283
+ };
284
+ returnObject = _objectSpread(_objectSpread({}, returnObject), typedDates);
285
+ }
286
+ on_type === null || on_type === void 0 ? void 0 : on_type(_objectSpread({}, returnObject));
287
+ }, [isRange, dateRefs, getReturnObject, inputDates, on_type]);
288
+ const prepareCounting = (0, _react.useCallback)(async _ref3 => {
289
+ let {
290
+ keyCode,
291
+ target,
292
+ event
293
+ } = _ref3;
294
+ try {
295
+ const isDate = target.getAttribute('class').match(/__input--([day|month|year]+)($|\s)/)[1];
296
+ const isInRange = target.getAttribute('id').match(/-([start|end]+)-/)[1];
297
+ let date = isInRange === 'start' ? startDate : endDate;
298
+ if (!date) {
299
+ return;
267
300
  }
268
- const size = parseFloat(target.getAttribute('size'));
269
- const firstSelectionStart = target.selectionStart;
270
- await wait(1);
271
- const secondSelectionStart = target.selectionStart;
272
- const isValid = /[0-9]/.test(keyCode);
273
- const index = this.refList.findIndex(_ref4 => {
274
- let {
275
- current
276
- } = _ref4;
277
- return current === target;
278
- });
279
- if (index < this.refList.length - 1 && (secondSelectionStart === size && isValid && keyCode !== 'left' && keyCode !== 'backspace' || firstSelectionStart === size && keyCode === 'right')) {
280
- try {
281
- if (!this.refList[index + 1].current) {
282
- return;
283
- }
284
- const nextSibling = this.refList[index + 1].current;
285
- if (nextSibling) {
286
- nextSibling.focus();
287
- nextSibling.setSelectionRange(0, 0);
288
- }
289
- } catch (e) {
290
- (0, _componentHelper.warn)(e);
291
- }
292
- } else if (firstSelectionStart === 0 && index > 0) {
293
- switch (keyCode) {
294
- case 'left':
295
- case 'backspace':
296
- try {
297
- const prevSibling = this.refList[index - 1].current;
298
- if (prevSibling) {
299
- const endPos = prevSibling.value.length;
300
- prevSibling.focus();
301
- prevSibling.setSelectionRange(endPos, endPos);
302
- }
303
- } catch (e) {
304
- (0, _componentHelper.warn)(e);
305
- }
301
+ const count = keyCode === 'ArrowUp' ? 1 : -1;
302
+ if (keyCode === 'ArrowUp' || keyCode === 'ArrowDown') {
303
+ switch (isDate) {
304
+ case 'day':
305
+ date = (0, _addDays.default)(date, count);
306
+ break;
307
+ case 'month':
308
+ date = (0, _addMonths.default)(date, count);
309
+ break;
310
+ case 'year':
311
+ date = (0, _addYears.default)(date, count);
306
312
  break;
307
313
  }
308
314
  }
315
+ callOnChange({
316
+ [isInRange === 'start' ? 'startDate' : 'endDate']: date,
317
+ event
318
+ });
319
+ await wait(1);
320
+ selectAll(target);
321
+ } catch (e) {
322
+ (0, _componentHelper.warn)(e);
323
+ }
324
+ }, [startDate, endDate, callOnChange]);
325
+ const selectStart = (0, _react.useCallback)(target => {
326
+ target.focus();
327
+ target.setSelectionRange(0, 0);
328
+ }, []);
329
+ const onFocusHandler = (0, _react.useCallback)(event => {
330
+ try {
331
+ selectAll(event.target);
332
+ } catch (e) {
333
+ (0, _componentHelper.warn)(e);
334
+ }
335
+ setFocusState('focus');
336
+ onFocus === null || onFocus === void 0 ? void 0 : onFocus(_objectSpread(_objectSpread({}, event), getReturnObject({
337
+ event
338
+ })));
339
+ }, [getReturnObject, onFocus]);
340
+ const onBlurHandler = (0, _react.useCallback)(event => {
341
+ focusMode.current = null;
342
+ setFocusState('blur');
343
+ onBlur === null || onBlur === void 0 ? void 0 : onBlur(_objectSpread(_objectSpread(_objectSpread({}, event), getReturnObject({
344
+ event
345
+ })), partialDates));
346
+ }, [onBlur, getReturnObject, partialDates]);
347
+ const onKeyDownHandler = (0, _react.useCallback)(async event => {
348
+ const keyCode = event.key;
349
+ const target = event.target;
350
+ if (target.selectionStart !== target.selectionEnd) {
351
+ selectStart(target);
352
+ }
353
+ switch (keyCode) {
354
+ case 'ArrowUp':
355
+ case 'ArrowDown':
356
+ event.persist();
357
+ event.preventDefault();
358
+ prepareCounting({
359
+ event,
360
+ keyCode,
361
+ target
362
+ });
363
+ return false;
364
+ case 'Tab':
365
+ return false;
366
+ }
367
+ const size = parseFloat(target.getAttribute('size'));
368
+ const firstSelectionStart = target.selectionStart;
369
+ await wait(1);
370
+ const secondSelectionStart = target.selectionStart;
371
+ const isValid = /[0-9]/g.test(keyCode);
372
+ const refListArray = refList.current;
373
+ const index = refListArray.findIndex(_ref4 => {
374
+ let {
375
+ current
376
+ } = _ref4;
377
+ return current === target;
309
378
  });
310
- _defineProperty(this, "set_startDay", event => {
311
- this.setDate(event, 'start', 'Day');
312
- });
313
- _defineProperty(this, "set_startMonth", event => {
314
- this.setDate(event, 'start', 'Month');
315
- });
316
- _defineProperty(this, "set_startYear", event => {
317
- this.setDate(event, 'start', 'Year');
318
- });
319
- _defineProperty(this, "set_endDay", event => {
320
- this.setDate(event, 'end', 'Day');
321
- });
322
- _defineProperty(this, "set_endMonth", event => {
323
- this.setDate(event, 'end', 'Month');
324
- });
325
- _defineProperty(this, "set_endYear", event => {
326
- this.setDate(event, 'end', 'Year');
327
- });
328
- _defineProperty(this, "setDate", (event, mode, type) => {
329
- event.persist();
330
- const value = event.target.value;
331
- this[`_${mode}${type}`] = value;
332
- if (this.context[`${mode}Date`]) {
333
- this[`tmp_${mode}Date`] = this.context[`${mode}Date`];
379
+ if (index < refListArray.length - 1 && (secondSelectionStart === size && isValid && keyCode !== 'ArrowLeft' && keyCode !== 'Backspace' || firstSelectionStart === size && keyCode === 'ArrowRight')) {
380
+ try {
381
+ if (!refListArray[index + 1].current) {
382
+ return;
383
+ }
384
+ const nextSibling = refListArray[index + 1].current;
385
+ if (nextSibling) {
386
+ nextSibling.focus();
387
+ nextSibling.setSelectionRange(0, 0);
388
+ }
389
+ } catch (e) {
390
+ (0, _componentHelper.warn)(e);
334
391
  }
335
- const fallback = this[`tmp_${mode}Date`];
336
- const year = this[`_${mode}Year`] || fallback && fallback.getFullYear();
337
- const month = this[`_${mode}Month`] || fallback && fallback.getMonth() + 1;
338
- const day = this[`_${mode}Day`] || fallback && fallback.getDate();
339
- const date = new Date(parseFloat(year), parseFloat(month) - 1, parseFloat(day));
340
- const isValidDate = !/[^0-9]/.test(day) && !/[^0-9]/.test(month) && !/[^0-9]/.test(year) && (0, _isValid.default)(date) && date.getDate() == parseFloat(day) && date.getMonth() + 1 == parseFloat(month) && date.getFullYear() == parseFloat(year);
341
- if (isValidDate) {
342
- this.callOnChange({
343
- [`${mode}Date`]: date,
344
- event
345
- });
346
- } else {
347
- this.context.updateState({
348
- [`${mode}Date`]: null
349
- });
350
- this.context.updateState({
351
- [`__${mode}${type}`]: value
352
- });
353
- this.callOnChangeAsInvalid({
354
- [`${mode}Date`]: null,
355
- event
356
- });
392
+ } else if (firstSelectionStart === 0 && index > 0) {
393
+ switch (keyCode) {
394
+ case 'ArrowLeft':
395
+ case 'Backspace':
396
+ try {
397
+ const prevSibling = refListArray[index - 1].current;
398
+ if (prevSibling) {
399
+ const endPos = prevSibling.value.length;
400
+ prevSibling.focus();
401
+ prevSibling.setSelectionRange(endPos, endPos);
402
+ }
403
+ } catch (e) {
404
+ (0, _componentHelper.warn)(e);
405
+ }
406
+ break;
357
407
  }
358
- this.callOnType({
408
+ }
409
+ }, [prepareCounting, selectStart]);
410
+ const setDate = (0, _react.useCallback)((event, mode, type) => {
411
+ var _dateRefs, _dateRefs2, _dateRefs3;
412
+ event.persist();
413
+ const value = event.target.value;
414
+ dateRefs[`${mode}${type}`].current = value;
415
+ if (modeDate[`${mode}Date`]) {
416
+ temporaryDates[`${mode}Date`].current = modeDate[`${mode}Date`];
417
+ }
418
+ const fallback = temporaryDates[`${mode}Date`].current;
419
+ const year = ((_dateRefs = dateRefs[`${mode}Year`]) === null || _dateRefs === void 0 ? void 0 : _dateRefs.current) || fallback && fallback.getFullYear();
420
+ const month = ((_dateRefs2 = dateRefs[`${mode}Month`]) === null || _dateRefs2 === void 0 ? void 0 : _dateRefs2.current) || fallback && fallback.getMonth() + 1;
421
+ const day = ((_dateRefs3 = dateRefs[`${mode}Day`]) === null || _dateRefs3 === void 0 ? void 0 : _dateRefs3.current) || fallback && fallback.getDate();
422
+ const date = new Date(parseFloat(String(year)), parseFloat(String(month)) - 1, parseFloat(String(day)));
423
+ const isValidDate = !/[^0-9]/.test(String(day)) && !/[^0-9]/.test(String(month)) && !/[^0-9]/.test(String(year)) && (0, _isValid.default)(date) && date.getDate() == parseFloat(String(day)) && date.getMonth() + 1 == parseFloat(String(month)) && date.getFullYear() == parseFloat(String(year));
424
+ if (isValidDate) {
425
+ callOnChange({
426
+ [`${mode}Date`]: date,
359
427
  event
360
428
  });
429
+ } else {
430
+ updateDates({
431
+ [`${mode}Date`]: null,
432
+ [`__${mode}${type}`]: value
433
+ });
434
+ callOnChangeAsInvalid({
435
+ [`${mode}Date`]: null,
436
+ event
437
+ });
438
+ }
439
+ callOnType({
440
+ event
361
441
  });
362
- _defineProperty(this, "renderInputElement", params => {
363
- const {
364
- id,
365
- isRange
366
- } = this.props;
367
- this.refList = [];
368
- const startDateList = this.generateDateList(params, 'start');
369
- const endDateList = this.generateDateList(params, 'end');
370
- return _react.default.createElement("span", {
371
- id: `${id}-input`,
372
- className: "dnb-date-picker__input__wrapper"
373
- }, startDateList, isRange && (_span || (_span = _react.default.createElement("span", {
374
- className: "dnb-date-picker--separator",
375
- "aria-hidden": true
376
- }, ' – '))), isRange && endDateList);
377
- });
378
- const _separators = props.maskOrder.match(props.separatorRexExp);
379
- this.maskList = props.maskOrder.split(props.separatorRexExp).reduce((acc, cur) => {
380
- if (cur) {
381
- acc.push(cur);
382
- if (_separators.length > 0) {
383
- acc.push(_separators.shift());
384
- }
385
- }
386
- return acc;
387
- }, []);
388
- this._startDayRef = _react.default.createRef();
389
- this._startMonthRef = _react.default.createRef();
390
- this._startYearRef = _react.default.createRef();
391
- this._endDayRef = _react.default.createRef();
392
- this._endMonthRef = _react.default.createRef();
393
- this._endYearRef = _react.default.createRef();
394
- }
395
- componentWillUnmount() {
396
- if (this._shortcuts) {
397
- this._shortcuts.remove(this.osShortcut);
442
+ }, [updateDates, callOnChange, callOnChangeAsInvalid, callOnType, modeDate, dateRefs, temporaryDates]);
443
+ const dateSetters = (0, _react.useMemo)(() => ({
444
+ set_startDay: event => {
445
+ setDate(event, 'start', 'Day');
446
+ },
447
+ set_startMonth: event => {
448
+ setDate(event, 'start', 'Month');
449
+ },
450
+ set_startYear: event => {
451
+ setDate(event, 'start', 'Year');
452
+ },
453
+ set_endDay: event => {
454
+ setDate(event, 'end', 'Day');
455
+ },
456
+ set_endMonth: event => {
457
+ setDate(event, 'end', 'Month');
458
+ },
459
+ set_endYear: event => {
460
+ setDate(event, 'end', 'Year');
398
461
  }
399
- }
400
- getPlaceholderChar(value) {
401
- const index = this.props.maskOrder.indexOf(value);
402
- return this.props.maskPlaceholder[index];
403
- }
404
- generateDateList(params, mode) {
405
- return this.maskList.map((value, i) => {
462
+ }), [setDate]);
463
+ const getPlaceholderChar = (0, _react.useCallback)(value => {
464
+ const index = maskOrder.indexOf(value);
465
+ return maskPlaceholder[index];
466
+ }, [maskOrder, maskPlaceholder]);
467
+ const generateDateList = (0, _react.useCallback)((element, mode) => {
468
+ return maskList.map((value, i) => {
406
469
  const state = value.slice(0, 1);
407
- const placeholderChar = this.getPlaceholderChar(value);
408
- const {
409
- input_element,
410
- separatorRexExp,
411
- isRange,
412
- size
413
- } = this.props;
470
+ const placeholderChar = getPlaceholderChar(value);
414
471
  const {
415
472
  day,
416
473
  month,
417
474
  year
418
- } = this.context.translation.DatePicker;
419
- const isRangeLabel = isRange ? `${this.context.translation.DatePicker[mode]} ` : '';
475
+ } = translation;
476
+ const isRangeLabel = isRange ? `${translation[mode]} ` : '';
420
477
  if (!separatorRexExp.test(value)) {
421
478
  if (!input_element) {
422
- params = _objectSpread(_objectSpread({}, params), {}, {
423
- onKeyDown: this.onKeyDownHandler,
424
- onPaste: this.shortcutHandler,
479
+ element = _objectSpread(_objectSpread({}, element), {}, {
480
+ onKeyDown: onKeyDownHandler,
481
+ onPaste: pasteHandler,
425
482
  onFocus: e => {
426
- this.focusMode = mode;
427
- this.onFocusHandler(e);
483
+ focusMode.current = mode;
484
+ onFocusHandler(e);
428
485
  },
429
- onBlur: this.onBlurHandler,
486
+ onBlur: onBlurHandler,
430
487
  placeholderChar
431
488
  });
432
489
  }
433
- const DateField = input_element && _react.default.isValidElement(input_element) ? input_element : InputElement;
490
+ const DateField = input_element && _react.default.isValidElement(input_element) ? input_element.type : InputElement;
434
491
  const inputSizeClassName = size && `dnb-date-picker__input--${size}`;
435
492
  switch (state) {
436
493
  case 'd':
437
- this.refList.push(this[`_${mode}DayRef`]);
494
+ refList.current.push(inputRefs[`${mode}DayRef`]);
438
495
  return _react.default.createElement(_react.default.Fragment, {
439
496
  key: 'dd' + i
440
- }, _react.default.createElement(DateField, _extends({}, params, {
441
- id: `${this.props.id}-${mode}-day`,
497
+ }, _react.default.createElement(DateField, _extends({}, element, {
498
+ id: `${id}-${mode}-day`,
442
499
  key: 'di' + i,
443
- className: (0, _classnames.default)("dnb-date-picker__input dnb-date-picker__input--day", params.className, inputSizeClassName),
444
- size: "2",
500
+ className: (0, _classnames.default)("dnb-date-picker__input dnb-date-picker__input--day", element.className, inputSizeClassName),
501
+ size: 2,
445
502
  mask: [/[0-3]/, /[0-9]/],
446
- inputRef: this[`_${mode}DayRef`],
447
- onChange: this[`set_${mode}Day`],
448
- value: this.context[`__${mode}Day`] || '',
449
- "aria-labelledby": `${this.props.id}-${mode}-day-label`
503
+ inputRef: inputRefs[`${mode}DayRef`],
504
+ onChange: dateSetters[`set_${mode}Day`],
505
+ value: inputDates[`__${mode}Day`] || '',
506
+ "aria-labelledby": `${id}-${mode}-day-label`
450
507
  })), _react.default.createElement("label", {
451
508
  key: 'dl' + i,
452
509
  hidden: true,
453
- id: `${this.props.id}-${mode}-day-label`,
454
- htmlFor: `${this.props.id}-${mode}-day`
510
+ id: `${id}-${mode}-day-label`,
511
+ htmlFor: `${id}-${mode}-day`
455
512
  }, isRangeLabel + day));
456
513
  case 'm':
457
- this.refList.push(this[`_${mode}MonthRef`]);
514
+ refList.current.push(inputRefs[`${mode}MonthRef`]);
458
515
  return _react.default.createElement(_react.default.Fragment, {
459
516
  key: 'mm' + i
460
- }, _react.default.createElement(DateField, _extends({}, params, {
461
- id: `${this.props.id}-${mode}-month`,
517
+ }, _react.default.createElement(DateField, _extends({}, element, {
518
+ id: `${id}-${mode}-month`,
462
519
  key: 'mi' + i,
463
- className: (0, _classnames.default)("dnb-date-picker__input dnb-date-picker__input--month", params.className, inputSizeClassName),
464
- size: "2",
520
+ className: (0, _classnames.default)("dnb-date-picker__input dnb-date-picker__input--month", element.className, inputSizeClassName),
521
+ size: 2,
465
522
  mask: [/[0-1]/, /[0-9]/],
466
- inputRef: this[`_${mode}MonthRef`],
467
- onChange: this[`set_${mode}Month`],
468
- value: this.context[`__${mode}Month`] || '',
469
- "aria-labelledby": `${this.props.id}-${mode}-month-label`
523
+ inputRef: inputRefs[`${mode}MonthRef`],
524
+ onChange: dateSetters[`set_${mode}Month`],
525
+ value: inputDates[`__${mode}Month`] || '',
526
+ "aria-labelledby": `${id}-${mode}-month-label`
470
527
  })), _react.default.createElement("label", {
471
528
  key: 'ml' + i,
472
529
  hidden: true,
473
- id: `${this.props.id}-${mode}-month-label`,
474
- htmlFor: `${this.props.id}-${mode}-month`
530
+ id: `${id}-${mode}-month-label`,
531
+ htmlFor: `${id}-${mode}-month`
475
532
  }, isRangeLabel + month));
476
533
  case 'y':
477
- this.refList.push(this[`_${mode}YearRef`]);
534
+ refList.current.push(inputRefs[`${mode}YearRef`]);
478
535
  return _react.default.createElement(_react.default.Fragment, {
479
536
  key: 'yy' + i
480
- }, _react.default.createElement(DateField, _extends({}, params, {
481
- id: `${this.props.id}-${mode}-year`,
537
+ }, _react.default.createElement(DateField, _extends({}, element, {
538
+ id: `${id}-${mode}-year`,
482
539
  key: 'yi' + i,
483
- className: (0, _classnames.default)("dnb-date-picker__input dnb-date-picker__input--year", params.className, inputSizeClassName),
484
- size: "4",
540
+ className: (0, _classnames.default)("dnb-date-picker__input dnb-date-picker__input--year", element.className, inputSizeClassName),
541
+ size: 4,
485
542
  mask: [/[1-2]/, /[0-9]/, /[0-9]/, /[0-9]/],
486
- inputRef: this[`_${mode}YearRef`],
487
- onChange: this[`set_${mode}Year`],
488
- value: this.context[`__${mode}Year`] || '',
489
- "aria-labelledby": `${this.props.id}-${mode}-year-label`
543
+ inputRef: inputRefs[`${mode}YearRef`],
544
+ onChange: dateSetters[`set_${mode}Year`],
545
+ value: inputDates[`__${mode}Year`] || '',
546
+ "aria-labelledby": `${id}-${mode}-year-label`
490
547
  })), _react.default.createElement("label", {
491
548
  key: 'yl' + i,
492
549
  hidden: true,
493
- id: `${this.props.id}-${mode}-year-label`,
494
- htmlFor: `${this.props.id}-${mode}-year`
550
+ id: `${id}-${mode}-year-label`,
551
+ htmlFor: `${id}-${mode}-year`
495
552
  }, isRangeLabel + year));
496
553
  }
497
554
  }
@@ -501,143 +558,68 @@ class DatePickerInput extends _react.default.PureComponent {
501
558
  "aria-hidden": true
502
559
  }, placeholderChar);
503
560
  });
561
+ }, [id, input_element, isRange, size, translation, separatorRexExp, dateSetters, inputRefs, maskList, onBlurHandler, onFocusHandler, getPlaceholderChar, pasteHandler, onKeyDownHandler, inputDates]);
562
+ const renderInputElement = (0, _react.useCallback)(element => {
563
+ refList.current = [];
564
+ const startDateList = generateDateList(element, 'start');
565
+ const endDateList = generateDateList(element, 'end');
566
+ return _react.default.createElement("span", {
567
+ id: `${id}-input`,
568
+ className: "dnb-date-picker__input__wrapper"
569
+ }, startDateList, isRange && (_span || (_span = _react.default.createElement("span", {
570
+ className: "dnb-date-picker--separator",
571
+ "aria-hidden": true
572
+ }, ' – '))), isRange && endDateList);
573
+ }, [id, isRange, generateDateList]);
574
+ const formatDate = (0, _react.useMemo)(() => selectedDateTitle ? `${selectedDateTitle}, ${translation.open_picker_text}` : translation.open_picker_text, [selectedDateTitle, translation]);
575
+ (0, _componentHelper.validateDOMAttributes)(props, attributes);
576
+ (0, _componentHelper.validateDOMAttributes)(null, submitAttributes);
577
+ const SubmitElement = (0, _react.useMemo)(() => showInput ? _Input.SubmitButton : _Button.default, [showInput]);
578
+ if (!showInput) {
579
+ submitAttributes.innerRef = submitAttributes.ref;
580
+ submitAttributes.ref = null;
504
581
  }
505
- formatDate() {
506
- const {
507
- open_picker_text
508
- } = this.context.translation.DatePicker;
509
- const {
510
- selectedDateTitle
511
- } = this.props;
512
- return selectedDateTitle ? `${selectedDateTitle}, ${open_picker_text}` : open_picker_text;
513
- }
514
- render() {
515
- const _this$props = this.props,
516
- {
517
- id,
518
- title,
519
- submitAttributes,
520
- isRange,
521
- maskOrder,
522
- maskPlaceholder,
523
- separatorRexExp,
524
- onChange,
525
- onFocus,
526
- onSubmit,
527
- onBlur,
528
- selectedDateTitle,
529
- showInput,
530
- input_element,
531
- locale,
532
- disabled,
533
- skeleton,
534
- opened,
535
- size,
536
- status,
537
- status_state,
538
- status_props
539
- } = _this$props,
540
- attributes = _objectWithoutProperties(_this$props, _excluded);
541
- const {
542
- focusState
543
- } = this.state;
544
- (0, _componentHelper.validateDOMAttributes)(this.props, attributes);
545
- (0, _componentHelper.validateDOMAttributes)(null, submitAttributes);
546
- const UsedButton = showInput ? _Input.SubmitButton : _Button.default;
547
- if (!showInput) {
548
- submitAttributes.innerRef = submitAttributes.ref;
549
- submitAttributes.ref = null;
550
- }
551
- return _react.default.createElement("fieldset", {
552
- className: "dnb-date-picker__fieldset",
553
- lang: locale === null || locale === void 0 ? void 0 : locale.code
554
- }, this.context.props.label && _react.default.createElement("legend", {
555
- className: "dnb-sr-only"
556
- }, this.context.props.label), _react.default.createElement(_Input.default, _extends({
557
- id: `${id}__input`,
558
- input_state: disabled ? 'disabled' : focusState,
559
- input_element: input_element && typeof input_element !== 'string' ? typeof input_element === 'function' ? input_element(this.props) : input_element : this.renderInputElement,
560
- disabled: disabled || skeleton,
582
+ return _react.default.createElement("fieldset", {
583
+ className: "dnb-date-picker__fieldset",
584
+ lang: lang
585
+ }, label && _react.default.createElement("legend", {
586
+ className: "dnb-sr-only"
587
+ }, label), _react.default.createElement(_Input.default, _extends({
588
+ id: `${id}__input`,
589
+ input_state: disabled ? 'disabled' : focusState,
590
+ input_element: input_element && typeof input_element !== 'string' ? typeof input_element === 'function' ? input_element(props) : input_element : renderInputElement,
591
+ disabled: disabled || skeleton,
592
+ skeleton: skeleton,
593
+ size: size,
594
+ status: !opened ? status : null,
595
+ status_state: status_state
596
+ }, status_props, {
597
+ submit_element: _react.default.createElement(SubmitElement, _extends({
598
+ id: id,
599
+ disabled: disabled,
561
600
  skeleton: skeleton,
601
+ className: (0, _classnames.default)(showInput && 'dnb-button--input-button', opened && 'dnb-button--active'),
602
+ "aria-label": formatDate,
603
+ title: title,
562
604
  size: size,
563
- status: !opened ? status : null,
564
- status_state: status_state
565
- }, status_props, {
566
- submit_element: _react.default.createElement(UsedButton, _extends({
567
- id: id,
568
- disabled: disabled,
569
- skeleton: skeleton,
570
- className: (0, _classnames.default)(showInput && 'dnb-button--input-button', opened && 'dnb-button--active'),
571
- "aria-label": this.formatDate(),
572
- title: title,
573
- size: size,
574
- status: status,
575
- status_state: status_state,
576
- type: "button",
577
- icon: "calendar",
578
- variant: "secondary",
579
- on_submit: onSubmit,
580
- on_click: onSubmit
581
- }, submitAttributes, status_props)),
582
- lang: locale === null || locale === void 0 ? void 0 : locale.code
583
- }, attributes)));
584
- }
605
+ status: status,
606
+ status_state: status_state,
607
+ type: "button",
608
+ icon: "calendar",
609
+ variant: "secondary",
610
+ on_submit: onSubmit,
611
+ on_click: onSubmit
612
+ }, submitAttributes, status_props)),
613
+ lang: lang
614
+ }, attributes)));
585
615
  }
586
- exports.default = DatePickerInput;
587
- _defineProperty(DatePickerInput, "contextType", _DatePickerContext.default);
588
- _defineProperty(DatePickerInput, "defaultProps", {
589
- id: null,
590
- title: null,
591
- selectedDateTitle: null,
592
- maskOrder: 'dd/mm/yyyy',
593
- maskPlaceholder: 'dd/mm/åååå',
594
- separatorRexExp: /[-/ ]/g,
595
- submitAttributes: null,
596
- isRange: null,
597
- size: null,
598
- status: null,
599
- status_state: 'error',
600
- status_props: null,
601
- input_element: null,
602
- disabled: null,
603
- locale: null,
604
- skeleton: null,
605
- opened: false,
606
- showInput: null,
607
- onChange: null,
608
- onSubmit: null,
609
- onFocus: null,
610
- onBlur: null
611
- });
612
- process.env.NODE_ENV !== "production" ? DatePickerInput.propTypes = {
613
- id: _propTypes.default.string,
614
- title: _propTypes.default.string,
615
- selectedDateTitle: _propTypes.default.string,
616
- maskOrder: _propTypes.default.string,
617
- maskPlaceholder: _propTypes.default.string,
618
- separatorRexExp: _propTypes.default.instanceOf(RegExp),
619
- submitAttributes: _propTypes.default.object,
620
- isRange: _propTypes.default.bool,
621
- size: _propTypes.default.oneOf(['default', 'small', 'medium', 'large']),
622
- status: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.bool, _propTypes.default.func, _propTypes.default.node]),
623
- status_state: _propTypes.default.string,
624
- status_props: _propTypes.default.object,
625
- input_element: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.func, _propTypes.default.node]),
626
- locale: _propTypes.default.object,
627
- disabled: _propTypes.default.bool,
628
- skeleton: _propTypes.default.bool,
629
- opened: _propTypes.default.bool,
630
- showInput: _propTypes.default.bool,
631
- onChange: _propTypes.default.func,
632
- onSubmit: _propTypes.default.func,
633
- onFocus: _propTypes.default.func,
634
- onBlur: _propTypes.default.func
635
- } : void 0;
636
- const selectAll = target => {
616
+ var _default = DatePickerInput;
617
+ exports.default = _default;
618
+ function selectAll(target) {
637
619
  target.focus();
638
620
  target.select();
639
- };
640
- const InputElement = _ref5 => {
621
+ }
622
+ function InputElement(_ref5) {
641
623
  let {
642
624
  className,
643
625
  value
@@ -651,9 +633,9 @@ const InputElement = _ref5 => {
651
633
  autoCapitalize: "none",
652
634
  spellCheck: false,
653
635
  autoCorrect: "off",
654
- className: (0, _classnames.default)(className, /\d+/.test(value) && 'dnb-date-picker__input--highlight'),
636
+ className: (0, _classnames.default)(className, /\d+/.test(String(value)) && 'dnb-date-picker__input--highlight'),
655
637
  value: value
656
638
  }, props));
657
- };
658
- const wait = t => new Promise(r => setTimeout(r, t));
639
+ }
640
+ const wait = duration => new Promise(r => setTimeout(r, duration));
659
641
  //# sourceMappingURL=DatePickerInput.js.map