@dnb/eufemia 10.7.0 → 10.9.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 (1468) hide show
  1. package/CHANGELOG.md +72 -0
  2. package/cjs/components/accordion/Accordion.d.ts +1 -1
  3. package/cjs/components/accordion/AccordionHeader.d.ts +4 -4
  4. package/cjs/components/accordion/AccordionHeader.js +18 -5
  5. package/cjs/components/accordion/AccordionHeader.js.map +1 -1
  6. package/cjs/components/accordion/style/dnb-accordion.css +22 -17
  7. package/cjs/components/accordion/style/dnb-accordion.min.css +1 -1
  8. package/cjs/components/accordion/style/dnb-accordion.scss +40 -18
  9. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +124 -0
  10. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -0
  11. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +125 -0
  12. package/cjs/components/anchor/Anchor.js +1 -1
  13. package/cjs/components/anchor/Anchor.js.map +1 -1
  14. package/cjs/components/anchor/style/anchor-mixins.scss +9 -3
  15. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +3 -1
  16. package/cjs/components/autocomplete/Autocomplete.js +4 -2
  17. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  18. package/cjs/components/avatar/style/index.d.ts +1 -1
  19. package/cjs/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +2 -1
  20. package/cjs/components/breadcrumb/Breadcrumb.js +2 -2
  21. package/cjs/components/breadcrumb/Breadcrumb.js.map +1 -1
  22. package/cjs/components/breadcrumb/BreadcrumbItem.js +24 -2
  23. package/cjs/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  24. package/cjs/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.css +23 -0
  25. package/cjs/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.min.css +1 -0
  26. package/cjs/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.scss +33 -0
  27. package/cjs/components/button/style/themes/dnb-button-theme-ui.scss +3 -1
  28. package/cjs/components/checkbox/Checkbox.d.ts +4 -0
  29. package/cjs/components/checkbox/Checkbox.js +6 -4
  30. package/cjs/components/checkbox/Checkbox.js.map +1 -1
  31. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +3 -1
  32. package/cjs/components/date-picker/DatePickerInput.js.map +1 -1
  33. package/cjs/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +6 -2
  34. package/cjs/components/drawer/Drawer.d.ts +1 -1
  35. package/cjs/components/drawer/Drawer.js +3 -1
  36. package/cjs/components/drawer/Drawer.js.map +1 -1
  37. package/cjs/components/form-status/FormStatus.d.ts +2 -0
  38. package/cjs/components/form-status/FormStatus.js +70 -53
  39. package/cjs/components/form-status/FormStatus.js.map +1 -1
  40. package/cjs/components/form-status/style/dnb-form-status.scss +4 -2
  41. package/cjs/components/form-status/style/themes/dnb-form-status-theme-sbanken.css +37 -0
  42. package/cjs/components/form-status/style/themes/dnb-form-status-theme-sbanken.min.css +1 -0
  43. package/cjs/components/form-status/style/themes/dnb-form-status-theme-sbanken.scss +35 -0
  44. package/cjs/components/global-status/GlobalStatus.d.ts +1 -1
  45. package/cjs/components/global-status/GlobalStatus.js +17 -7
  46. package/cjs/components/global-status/GlobalStatus.js.map +1 -1
  47. package/cjs/components/global-status/style/dnb-global-status.scss +2 -1
  48. package/cjs/components/global-status/style/themes/dnb-global-status-theme-sbanken.css +22 -0
  49. package/cjs/components/global-status/style/themes/dnb-global-status-theme-sbanken.min.css +1 -0
  50. package/cjs/components/global-status/style/themes/dnb-global-status-theme-sbanken.scss +28 -0
  51. package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.css +6 -3
  52. package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
  53. package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.scss +13 -6
  54. package/cjs/components/heading/Heading.d.ts +8 -8
  55. package/cjs/components/heading/Heading.js +8 -16
  56. package/cjs/components/heading/Heading.js.map +1 -1
  57. package/cjs/components/heading/HeadingHelpers.d.ts +5 -1
  58. package/cjs/components/heading/HeadingHelpers.js +42 -1
  59. package/cjs/components/heading/HeadingHelpers.js.map +1 -1
  60. package/cjs/components/info-card/index.js.map +1 -1
  61. package/cjs/components/info-card/style.js.map +1 -1
  62. package/cjs/components/input/style/themes/dnb-input-theme-ui.css +1 -1
  63. package/cjs/components/input/style/themes/dnb-input-theme-ui.min.css +1 -1
  64. package/cjs/components/input/style/themes/dnb-input-theme-ui.scss +9 -3
  65. package/cjs/components/input-masked/InputMaskedHooks.js +1 -1
  66. package/cjs/components/input-masked/InputMaskedHooks.js.map +1 -1
  67. package/cjs/components/input-masked/InputMaskedUtils.js +1 -1
  68. package/cjs/components/input-masked/InputMaskedUtils.js.map +1 -1
  69. package/cjs/components/modal/Modal.js.map +1 -1
  70. package/cjs/components/modal/ModalContent.js +3 -1
  71. package/cjs/components/modal/ModalContent.js.map +1 -1
  72. package/cjs/components/modal/parts/ModalHeaderBar.js +0 -4
  73. package/cjs/components/modal/parts/ModalHeaderBar.js.map +1 -1
  74. package/cjs/components/pagination/Pagination.js.map +1 -1
  75. package/cjs/components/progress-indicator/style/dnb-progress-indicator.css +59 -2
  76. package/cjs/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
  77. package/cjs/components/progress-indicator/style/dnb-progress-indicator.scss +70 -2
  78. package/cjs/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.css +18 -0
  79. package/cjs/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.min.css +9 -0
  80. package/cjs/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.scss +19 -0
  81. package/cjs/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.css +5 -64
  82. package/cjs/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.min.css +1 -1
  83. package/cjs/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.scss +4 -86
  84. package/cjs/components/radio/Radio.d.ts +4 -0
  85. package/cjs/components/radio/Radio.js +6 -4
  86. package/cjs/components/radio/Radio.js.map +1 -1
  87. package/cjs/components/radio/style/themes/dnb-radio-theme-ui.scss +15 -5
  88. package/cjs/components/section/Section.d.ts +21 -1
  89. package/cjs/components/section/Section.js +1 -1
  90. package/cjs/components/section/Section.js.map +1 -1
  91. package/cjs/components/section/style/dnb-section.css +1 -1
  92. package/cjs/components/section/style/dnb-section.scss +8 -3
  93. package/cjs/components/section/style/themes/dnb-section-theme-sbanken.scss +3 -4
  94. package/cjs/components/section/style/themes/dnb-section-theme-ui.css +9 -0
  95. package/cjs/components/section/style/themes/dnb-section-theme-ui.scss +28 -14
  96. package/cjs/components/skeleton/style/dnb-skeleton.css +50 -0
  97. package/cjs/components/skeleton/style/dnb-skeleton.min.css +1 -1
  98. package/cjs/components/skeleton/style/dnb-skeleton.scss +74 -5
  99. package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.css +7 -0
  100. package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.min.css +0 -0
  101. package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.scss +7 -0
  102. package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-ui.css +5 -60
  103. package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-ui.min.css +0 -1
  104. package/cjs/components/skeleton/style/themes/dnb-skeleton-theme-ui.scss +4 -86
  105. package/cjs/components/slider/style/dnb-slider.scss +4 -2
  106. package/cjs/components/space/SpacingUtils.js.map +1 -1
  107. package/cjs/components/step-indicator/StepIndicator.d.ts +89 -75
  108. package/cjs/components/step-indicator/StepIndicator.js +31 -26
  109. package/cjs/components/step-indicator/StepIndicator.js.map +1 -1
  110. package/cjs/components/step-indicator/StepIndicatorContext.d.ts +45 -15
  111. package/cjs/components/step-indicator/StepIndicatorContext.js +102 -121
  112. package/cjs/components/step-indicator/StepIndicatorContext.js.map +1 -1
  113. package/cjs/components/step-indicator/StepIndicatorItem.d.ts +59 -61
  114. package/cjs/components/step-indicator/StepIndicatorItem.js +183 -231
  115. package/cjs/components/step-indicator/StepIndicatorItem.js.map +1 -1
  116. package/cjs/components/step-indicator/StepIndicatorList.d.ts +6 -8
  117. package/cjs/components/step-indicator/StepIndicatorList.js +45 -50
  118. package/cjs/components/step-indicator/StepIndicatorList.js.map +1 -1
  119. package/cjs/components/step-indicator/StepIndicatorModal.d.ts +6 -14
  120. package/cjs/components/step-indicator/StepIndicatorModal.js +41 -53
  121. package/cjs/components/step-indicator/StepIndicatorModal.js.map +1 -1
  122. package/cjs/components/step-indicator/StepIndicatorProps.d.ts +2 -55
  123. package/cjs/components/step-indicator/StepIndicatorProps.js +4 -50
  124. package/cjs/components/step-indicator/StepIndicatorProps.js.map +1 -1
  125. package/cjs/components/step-indicator/StepIndicatorSidebar.d.ts +27 -21
  126. package/cjs/components/step-indicator/StepIndicatorSidebar.js +41 -51
  127. package/cjs/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  128. package/cjs/components/step-indicator/StepIndicatorTriggerButton.d.ts +16 -17
  129. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js +65 -78
  130. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  131. package/cjs/components/switch/Switch.d.ts +4 -0
  132. package/cjs/components/switch/Switch.js +6 -4
  133. package/cjs/components/switch/Switch.js.map +1 -1
  134. package/cjs/components/switch/style/themes/dnb-switch-theme-ui.scss +3 -1
  135. package/cjs/components/table/TableContainer.js.map +1 -1
  136. package/cjs/components/table/style/table-accordion.scss +18 -6
  137. package/cjs/components/table/style/table-header-buttons.scss +3 -1
  138. package/cjs/components/table/style/table-tr.scss +6 -2
  139. package/cjs/components/table/style/themes/dnb-table-theme-ui.scss +3 -1
  140. package/cjs/components/timeline/TimelineItem.d.ts +3 -2
  141. package/cjs/components/timeline/TimelineItem.js +96 -62
  142. package/cjs/components/timeline/TimelineItem.js.map +1 -1
  143. package/cjs/components/timeline/style/themes/dnb-timeline-theme-ui.css +3 -2
  144. package/cjs/components/timeline/style/themes/dnb-timeline-theme-ui.min.css +3 -1
  145. package/cjs/components/timeline/style/themes/dnb-timeline-theme-ui.scss +3 -2
  146. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +3 -1
  147. package/cjs/components/tooltip/style/dnb-tooltip.css +10 -0
  148. package/cjs/components/tooltip/style/dnb-tooltip.min.css +1 -1
  149. package/cjs/components/tooltip/style/dnb-tooltip.scss +14 -0
  150. package/cjs/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.css +9 -0
  151. package/cjs/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.min.css +1 -0
  152. package/cjs/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.scss +10 -0
  153. package/cjs/components/tooltip/style/themes/dnb-tooltip-theme-ui.css +3 -11
  154. package/cjs/components/tooltip/style/themes/dnb-tooltip-theme-ui.min.css +1 -1
  155. package/cjs/components/tooltip/style/themes/dnb-tooltip-theme-ui.scss +3 -15
  156. package/cjs/elements/blockquote/style/blockquote-mixins.scss +22 -11
  157. package/cjs/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +20 -11
  158. package/cjs/elements/lib.d.ts +1 -1
  159. package/cjs/elements/typography/H.d.ts +5 -3
  160. package/cjs/elements/typography/H.js +7 -3
  161. package/cjs/elements/typography/H.js.map +1 -1
  162. package/cjs/elements/typography/H1.js +2 -2
  163. package/cjs/elements/typography/H1.js.map +1 -1
  164. package/cjs/elements/typography/H2.js +2 -2
  165. package/cjs/elements/typography/H2.js.map +1 -1
  166. package/cjs/elements/typography/H3.js +2 -2
  167. package/cjs/elements/typography/H3.js.map +1 -1
  168. package/cjs/elements/typography/H4.js +2 -2
  169. package/cjs/elements/typography/H4.js.map +1 -1
  170. package/cjs/elements/typography/H5.js +2 -2
  171. package/cjs/elements/typography/H5.js.map +1 -1
  172. package/cjs/elements/typography/H6.js +2 -2
  173. package/cjs/elements/typography/H6.js.map +1 -1
  174. package/cjs/elements/typography/style/dnb-typography.scss +3 -0
  175. package/cjs/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +13 -2
  176. package/cjs/elements/typography/style/typography-mixins.scss +5 -0
  177. package/cjs/extensions/forms/DataContext/At.d.ts +1 -1
  178. package/cjs/extensions/forms/DataContext/At.js.map +1 -1
  179. package/cjs/extensions/forms/DataContext/Context.d.ts +1 -0
  180. package/cjs/extensions/forms/DataContext/Context.js +2 -1
  181. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  182. package/cjs/extensions/forms/DataContext/Provider.js +7 -3
  183. package/cjs/extensions/forms/DataContext/Provider.js.map +1 -1
  184. package/cjs/extensions/forms/DataContext/index.d.ts +0 -2
  185. package/cjs/extensions/forms/DataContext/index.js +0 -2
  186. package/cjs/extensions/forms/DataContext/index.js.map +1 -1
  187. package/cjs/extensions/forms/Field/ArraySelection.d.ts +4 -4
  188. package/cjs/extensions/forms/Field/ArraySelection.js +55 -35
  189. package/cjs/extensions/forms/Field/ArraySelection.js.map +1 -1
  190. package/cjs/extensions/forms/Field/CountryCode.d.ts +9 -0
  191. package/cjs/extensions/forms/Field/CountryCode.js +77 -0
  192. package/cjs/extensions/forms/Field/CountryCode.js.map +1 -0
  193. package/cjs/extensions/forms/Field/Currency.d.ts +2 -3
  194. package/cjs/extensions/forms/Field/Currency.js +6 -38
  195. package/cjs/extensions/forms/Field/Currency.js.map +1 -1
  196. package/cjs/extensions/forms/Field/Date.d.ts +2 -3
  197. package/cjs/extensions/forms/Field/Date.js +14 -10
  198. package/cjs/extensions/forms/Field/Date.js.map +1 -1
  199. package/cjs/extensions/forms/Field/Number.d.ts +7 -4
  200. package/cjs/extensions/forms/Field/Number.js +48 -23
  201. package/cjs/extensions/forms/Field/Number.js.map +1 -1
  202. package/cjs/extensions/forms/Field/Option.d.ts +2 -3
  203. package/cjs/extensions/forms/Field/Option.js.map +1 -1
  204. package/cjs/extensions/forms/Field/PhoneNumber.d.ts +8 -4
  205. package/cjs/extensions/forms/Field/PhoneNumber.js +45 -44
  206. package/cjs/extensions/forms/Field/PhoneNumber.js.map +1 -1
  207. package/cjs/extensions/forms/Field/PostalCodeAndCity.d.ts +3 -3
  208. package/cjs/extensions/forms/Field/PostalCodeAndCity.js +4 -4
  209. package/cjs/extensions/forms/Field/PostalCodeAndCity.js.map +1 -1
  210. package/cjs/extensions/forms/Field/Selection.d.ts +6 -5
  211. package/cjs/extensions/forms/Field/Selection.js +90 -40
  212. package/cjs/extensions/forms/Field/Selection.js.map +1 -1
  213. package/cjs/extensions/forms/Field/String.d.ts +3 -4
  214. package/cjs/extensions/forms/Field/String.js +28 -16
  215. package/cjs/extensions/forms/Field/String.js.map +1 -1
  216. package/cjs/extensions/forms/Field/Toggle.d.ts +2 -3
  217. package/cjs/extensions/forms/Field/Toggle.js +16 -14
  218. package/cjs/extensions/forms/Field/Toggle.js.map +1 -1
  219. package/cjs/extensions/forms/Field/fields.scss +2 -2
  220. package/cjs/extensions/forms/Field/index.d.ts +2 -4
  221. package/cjs/extensions/forms/Field/index.js +3 -5
  222. package/cjs/extensions/forms/Field/index.js.map +1 -1
  223. package/cjs/extensions/forms/Field/style/dnb-array-selection.css +13 -0
  224. package/cjs/extensions/forms/Field/style/dnb-array-selection.min.css +1 -0
  225. package/cjs/extensions/forms/Field/style/dnb-array-selection.scss +15 -0
  226. package/cjs/extensions/forms/Field/style/dnb-country-code.css +12 -0
  227. package/cjs/extensions/forms/Field/style/dnb-country-code.min.css +1 -0
  228. package/cjs/extensions/forms/Field/style/dnb-country-code.scss +19 -0
  229. package/cjs/extensions/forms/Field/style/dnb-phone-number.css +3 -7
  230. package/cjs/extensions/forms/Field/style/dnb-phone-number.min.css +1 -1
  231. package/cjs/extensions/forms/Field/style/dnb-phone-number.scss +3 -8
  232. package/cjs/extensions/forms/Field/style/dnb-postal-code-and-city.css +5 -2
  233. package/cjs/extensions/forms/Field/style/dnb-postal-code-and-city.min.css +1 -1
  234. package/cjs/extensions/forms/Field/style/dnb-postal-code-and-city.scss +5 -1
  235. package/cjs/extensions/forms/Field/style/dnb-selection.css +5 -2
  236. package/cjs/extensions/forms/Field/style/dnb-selection.min.css +1 -1
  237. package/cjs/extensions/forms/Field/style/dnb-selection.scss +7 -1
  238. package/cjs/extensions/forms/Field/style/index.scss +2 -0
  239. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +5 -5
  240. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +88 -15
  241. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  242. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.d.ts +8 -0
  243. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.js +12 -0
  244. package/cjs/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -0
  245. package/cjs/extensions/forms/FieldBlock/index.d.ts +1 -0
  246. package/cjs/extensions/forms/FieldBlock/index.js +15 -2
  247. package/cjs/extensions/forms/FieldBlock/index.js.map +1 -1
  248. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +31 -8
  249. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  250. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +46 -13
  251. package/cjs/extensions/forms/Form/FormElement.d.ts +4 -0
  252. package/cjs/extensions/forms/Form/FormElement.js +39 -0
  253. package/cjs/extensions/forms/Form/FormElement.js.map +1 -0
  254. package/cjs/extensions/forms/Form/FormHandler.d.ts +6 -0
  255. package/cjs/extensions/forms/Form/FormHandler.js +41 -0
  256. package/cjs/extensions/forms/Form/FormHandler.js.map +1 -0
  257. package/cjs/extensions/forms/{DataContext → Form}/SubmitButton.d.ts +3 -4
  258. package/cjs/extensions/forms/Form/SubmitButton.js +36 -0
  259. package/cjs/extensions/forms/Form/SubmitButton.js.map +1 -0
  260. package/cjs/extensions/forms/Form/index.d.ts +9 -0
  261. package/cjs/extensions/forms/Form/index.js +18 -0
  262. package/cjs/extensions/forms/Form/index.js.map +1 -0
  263. package/cjs/extensions/forms/Iterate/Array.d.ts +17 -0
  264. package/cjs/extensions/forms/Iterate/Array.js +91 -0
  265. package/cjs/extensions/forms/Iterate/Array.js.map +1 -0
  266. package/cjs/extensions/forms/Iterate/ArrayPushButton.d.ts +10 -0
  267. package/cjs/extensions/forms/Iterate/ArrayPushButton.js +53 -0
  268. package/cjs/extensions/forms/Iterate/ArrayPushButton.js.map +1 -0
  269. package/cjs/extensions/forms/Iterate/ArrayRemoveElementButton.d.ts +8 -0
  270. package/cjs/extensions/forms/{DataContext/SubmitButton.js → Iterate/ArrayRemoveElementButton.js} +25 -15
  271. package/cjs/extensions/forms/Iterate/ArrayRemoveElementButton.js.map +1 -0
  272. package/cjs/extensions/forms/Iterate/IterateElementContext.d.ts +11 -0
  273. package/cjs/extensions/forms/Iterate/IterateElementContext.js +12 -0
  274. package/cjs/extensions/forms/Iterate/IterateElementContext.js.map +1 -0
  275. package/cjs/extensions/forms/Iterate/index.d.ts +11 -0
  276. package/cjs/extensions/forms/Iterate/index.js +25 -0
  277. package/cjs/extensions/forms/Iterate/index.js.map +1 -0
  278. package/cjs/extensions/forms/Layout/ButtonRow.d.ts +1 -1
  279. package/cjs/extensions/forms/Layout/ButtonRow.js +2 -2
  280. package/cjs/extensions/forms/Layout/ButtonRow.js.map +1 -1
  281. package/cjs/extensions/forms/Layout/Card.d.ts +1 -1
  282. package/cjs/extensions/forms/Layout/Card.js +5 -5
  283. package/cjs/extensions/forms/Layout/Card.js.map +1 -1
  284. package/cjs/extensions/forms/Layout/FlexContainer.d.ts +2 -1
  285. package/cjs/extensions/forms/Layout/FlexContainer.js +6 -5
  286. package/cjs/extensions/forms/Layout/FlexContainer.js.map +1 -1
  287. package/cjs/extensions/forms/Layout/FlexItem.d.ts +2 -1
  288. package/cjs/extensions/forms/Layout/FlexItem.js +4 -3
  289. package/cjs/extensions/forms/Layout/FlexItem.js.map +1 -1
  290. package/cjs/extensions/forms/Layout/MainHeading.d.ts +4 -2
  291. package/cjs/extensions/forms/Layout/MainHeading.js +11 -4
  292. package/cjs/extensions/forms/Layout/MainHeading.js.map +1 -1
  293. package/cjs/extensions/forms/Layout/Section.d.ts +1 -1
  294. package/cjs/extensions/forms/Layout/Section.js +2 -2
  295. package/cjs/extensions/forms/Layout/Section.js.map +1 -1
  296. package/cjs/extensions/forms/Layout/SubHeading.d.ts +4 -2
  297. package/cjs/extensions/forms/Layout/SubHeading.js +11 -4
  298. package/cjs/extensions/forms/Layout/SubHeading.js.map +1 -1
  299. package/cjs/extensions/forms/Layout/index.d.ts +0 -2
  300. package/cjs/extensions/forms/Layout/index.js +1 -3
  301. package/cjs/extensions/forms/Layout/index.js.map +1 -1
  302. package/cjs/extensions/forms/Layout/style/dnb-card.css +3 -3
  303. package/cjs/extensions/forms/Layout/style/dnb-card.min.css +1 -1
  304. package/cjs/extensions/forms/Layout/style/dnb-card.scss +6 -4
  305. package/cjs/extensions/forms/Layout/style/dnb-flex-container.css +9 -0
  306. package/cjs/extensions/forms/Layout/style/dnb-flex-container.min.css +1 -1
  307. package/cjs/extensions/forms/Layout/style/dnb-flex-container.scss +14 -0
  308. package/cjs/extensions/forms/Layout/style/dnb-flex-item.css +9 -0
  309. package/cjs/extensions/forms/Layout/style/dnb-flex-item.min.css +1 -1
  310. package/cjs/extensions/forms/Layout/style/dnb-flex-item.scss +14 -0
  311. package/cjs/extensions/forms/StepsLayout/Buttons.d.ts +1 -1
  312. package/cjs/extensions/forms/StepsLayout/Buttons.js +2 -2
  313. package/cjs/extensions/forms/StepsLayout/Buttons.js.map +1 -1
  314. package/cjs/extensions/forms/StepsLayout/NextButton.d.ts +1 -1
  315. package/cjs/extensions/forms/StepsLayout/NextButton.js.map +1 -1
  316. package/cjs/extensions/forms/StepsLayout/PreviousButton.d.ts +1 -1
  317. package/cjs/extensions/forms/StepsLayout/PreviousButton.js.map +1 -1
  318. package/cjs/extensions/forms/StepsLayout/Step.d.ts +1 -1
  319. package/cjs/extensions/forms/StepsLayout/Step.js +2 -2
  320. package/cjs/extensions/forms/StepsLayout/Step.js.map +1 -1
  321. package/cjs/extensions/forms/StepsLayout/StepsLayout.d.ts +1 -1
  322. package/cjs/extensions/forms/StepsLayout/StepsLayout.js +3 -3
  323. package/cjs/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  324. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.css +11 -5
  325. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  326. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +10 -3
  327. package/cjs/extensions/forms/Value/Boolean.d.ts +2 -3
  328. package/cjs/extensions/forms/Value/Boolean.js +4 -4
  329. package/cjs/extensions/forms/Value/Boolean.js.map +1 -1
  330. package/cjs/extensions/forms/Value/Number.d.ts +2 -3
  331. package/cjs/extensions/forms/Value/Number.js +4 -3
  332. package/cjs/extensions/forms/Value/Number.js.map +1 -1
  333. package/cjs/extensions/forms/Value/String.d.ts +2 -3
  334. package/cjs/extensions/forms/Value/String.js +4 -4
  335. package/cjs/extensions/forms/Value/String.js.map +1 -1
  336. package/cjs/extensions/forms/Value/index.d.ts +0 -4
  337. package/cjs/extensions/forms/Value/index.js +0 -4
  338. package/cjs/extensions/forms/Value/index.js.map +1 -1
  339. package/cjs/extensions/forms/ValueBlock/ValueBlock.d.ts +2 -3
  340. package/cjs/extensions/forms/ValueBlock/ValueBlock.js +2 -2
  341. package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  342. package/cjs/extensions/forms/ValueBlock/index.js.map +1 -1
  343. package/cjs/extensions/forms/hooks/index.d.ts +1 -0
  344. package/cjs/extensions/forms/{Field/hooks → hooks}/index.js +3 -3
  345. package/cjs/extensions/forms/hooks/index.js.map +1 -0
  346. package/cjs/extensions/forms/hooks/useDataValue.d.ts +12 -0
  347. package/cjs/extensions/forms/{Field/hooks/useField.js → hooks/useDataValue.js} +91 -56
  348. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -0
  349. package/cjs/extensions/forms/index.d.ts +4 -4
  350. package/cjs/extensions/forms/index.js +20 -12
  351. package/cjs/extensions/forms/index.js.map +1 -1
  352. package/cjs/extensions/forms/style/dnb-forms.css +105 -29
  353. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  354. package/cjs/extensions/forms/style/index.d.ts +1 -0
  355. package/cjs/extensions/forms/style/index.js +4 -0
  356. package/cjs/extensions/forms/style/index.js.map +1 -0
  357. package/cjs/extensions/forms/types.d.ts +95 -2
  358. package/cjs/extensions/forms/types.js +71 -0
  359. package/cjs/extensions/forms/types.js.map +1 -1
  360. package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.css +2 -2
  361. package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -1
  362. package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.scss +2 -2
  363. package/cjs/extensions/forms/utils/index.d.ts +0 -1
  364. package/cjs/extensions/forms/utils/index.js +0 -12
  365. package/cjs/extensions/forms/utils/index.js.map +1 -1
  366. package/cjs/extensions/forms/utils/useWasChanged.d.ts +5 -0
  367. package/cjs/extensions/forms/utils/useWasChanged.js +62 -0
  368. package/cjs/extensions/forms/utils/useWasChanged.js.map +1 -0
  369. package/cjs/extensions/forms/variables.scss +3 -0
  370. package/cjs/extensions/lib.d.ts +1 -2
  371. package/cjs/extensions/payment-card/PaymentCard.js.map +1 -1
  372. package/cjs/extensions/payment-card/style/dnb-payment-card.css +7 -7
  373. package/cjs/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  374. package/cjs/extensions/payment-card/style/dnb-payment-card.scss +7 -7
  375. package/cjs/extensions/payment-card/utils/backgrounds/ung.js +1 -1
  376. package/cjs/extensions/payment-card/utils/backgrounds/ung.js.map +1 -1
  377. package/cjs/extensions/payment-card/utils/backgrounds/youth.js +1 -1
  378. package/cjs/extensions/payment-card/utils/backgrounds/youth.js.map +1 -1
  379. package/cjs/fragments/drawer-list/DrawerList.js +1 -1
  380. package/cjs/fragments/drawer-list/DrawerList.js.map +1 -1
  381. package/cjs/fragments/drawer-list/DrawerListPortal.js +2 -2
  382. package/cjs/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  383. package/cjs/fragments/drawer-list/style/dnb-drawer-list.scss +3 -1
  384. package/cjs/shared/Context.d.ts +2 -0
  385. package/cjs/shared/Context.js.map +1 -1
  386. package/cjs/shared/Eufemia.d.ts +1 -1
  387. package/cjs/shared/Eufemia.js +2 -2
  388. package/cjs/shared/Eufemia.js.map +1 -1
  389. package/cjs/shared/helpers/withCamelCaseProps.js.map +1 -1
  390. package/cjs/shared/helpers/withSnakeCaseProps.js.map +1 -1
  391. package/cjs/shared/libs/Shortcuts.js.map +1 -1
  392. package/cjs/shared/locales/en-GB.d.ts +1 -0
  393. package/cjs/shared/locales/en-GB.js +1 -0
  394. package/cjs/shared/locales/en-GB.js.map +1 -1
  395. package/cjs/shared/locales/en-US.d.ts +1 -0
  396. package/cjs/shared/locales/index.d.ts +2 -0
  397. package/cjs/shared/locales/nb-NO.d.ts +1 -0
  398. package/cjs/shared/locales/nb-NO.js +1 -0
  399. package/cjs/shared/locales/nb-NO.js.map +1 -1
  400. package/cjs/shared/useMedia.js +33 -23
  401. package/cjs/shared/useMedia.js.map +1 -1
  402. package/cjs/style/core/reset.scss +13 -3
  403. package/cjs/style/core/utilities.scss +3 -1
  404. package/cjs/style/dnb-ui-components.css +142 -20
  405. package/cjs/style/dnb-ui-components.min.css +1 -1
  406. package/cjs/style/dnb-ui-elements.css +23 -11
  407. package/cjs/style/dnb-ui-elements.min.css +1 -1
  408. package/cjs/style/dnb-ui-extensions.css +112 -36
  409. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  410. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +25 -11
  411. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  412. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +173 -160
  413. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -1
  414. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +112 -36
  415. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  416. package/cjs/style/themes/theme-sbanken/customisations.scss +3 -7
  417. package/cjs/style/themes/theme-sbanken/properties.js +6 -6
  418. package/cjs/style/themes/theme-sbanken/properties.js.map +1 -1
  419. package/cjs/style/themes/theme-sbanken/properties.scss +6 -6
  420. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +67 -47
  421. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  422. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +386 -392
  423. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +12 -2
  424. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.scss +7 -6
  425. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +59 -23
  426. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  427. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +112 -36
  428. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  429. package/cjs/style/themes/theme-ui/fonts.scss +8 -4
  430. package/cjs/style/themes/theme-ui/ui-theme-basis.css +25 -11
  431. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  432. package/cjs/style/themes/theme-ui/ui-theme-basis.scss +4 -0
  433. package/cjs/style/themes/theme-ui/ui-theme-components.css +173 -160
  434. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +4 -2
  435. package/cjs/style/themes/theme-ui/ui-theme-elements.css +23 -11
  436. package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  437. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +112 -36
  438. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  439. package/cjs/style/themes/theme-ui/ui-theme-tags.css +20 -11
  440. package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  441. package/cjs/style/themes/theme-ui/ui-theme-tags.scss +9 -4
  442. package/components/accordion/Accordion.d.ts +1 -1
  443. package/components/accordion/AccordionHeader.d.ts +4 -4
  444. package/components/accordion/AccordionHeader.js +18 -5
  445. package/components/accordion/AccordionHeader.js.map +1 -1
  446. package/components/accordion/style/dnb-accordion.css +22 -17
  447. package/components/accordion/style/dnb-accordion.min.css +1 -1
  448. package/components/accordion/style/dnb-accordion.scss +40 -18
  449. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +124 -0
  450. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -0
  451. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +125 -0
  452. package/components/anchor/Anchor.js +1 -1
  453. package/components/anchor/Anchor.js.map +1 -1
  454. package/components/anchor/style/anchor-mixins.scss +9 -3
  455. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +3 -1
  456. package/components/autocomplete/Autocomplete.js +4 -2
  457. package/components/autocomplete/Autocomplete.js.map +1 -1
  458. package/components/avatar/style/index.d.ts +1 -1
  459. package/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +2 -1
  460. package/components/breadcrumb/Breadcrumb.js +2 -2
  461. package/components/breadcrumb/Breadcrumb.js.map +1 -1
  462. package/components/breadcrumb/BreadcrumbItem.js +24 -2
  463. package/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  464. package/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.css +23 -0
  465. package/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.min.css +1 -0
  466. package/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.scss +33 -0
  467. package/components/button/style/themes/dnb-button-theme-ui.scss +3 -1
  468. package/components/checkbox/Checkbox.d.ts +4 -0
  469. package/components/checkbox/Checkbox.js +6 -4
  470. package/components/checkbox/Checkbox.js.map +1 -1
  471. package/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +3 -1
  472. package/components/date-picker/DatePickerInput.js.map +1 -1
  473. package/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +6 -2
  474. package/components/drawer/Drawer.d.ts +1 -1
  475. package/components/drawer/Drawer.js +3 -1
  476. package/components/drawer/Drawer.js.map +1 -1
  477. package/components/form-status/FormStatus.d.ts +2 -0
  478. package/components/form-status/FormStatus.js +70 -53
  479. package/components/form-status/FormStatus.js.map +1 -1
  480. package/components/form-status/style/dnb-form-status.scss +4 -2
  481. package/components/form-status/style/themes/dnb-form-status-theme-sbanken.css +37 -0
  482. package/components/form-status/style/themes/dnb-form-status-theme-sbanken.min.css +1 -0
  483. package/components/form-status/style/themes/dnb-form-status-theme-sbanken.scss +35 -0
  484. package/components/global-status/GlobalStatus.d.ts +1 -1
  485. package/components/global-status/GlobalStatus.js +18 -8
  486. package/components/global-status/GlobalStatus.js.map +1 -1
  487. package/components/global-status/style/dnb-global-status.scss +2 -1
  488. package/components/global-status/style/themes/dnb-global-status-theme-sbanken.css +22 -0
  489. package/components/global-status/style/themes/dnb-global-status-theme-sbanken.min.css +1 -0
  490. package/components/global-status/style/themes/dnb-global-status-theme-sbanken.scss +28 -0
  491. package/components/global-status/style/themes/dnb-global-status-theme-ui.css +6 -3
  492. package/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
  493. package/components/global-status/style/themes/dnb-global-status-theme-ui.scss +13 -6
  494. package/components/heading/Heading.d.ts +8 -8
  495. package/components/heading/Heading.js +9 -15
  496. package/components/heading/Heading.js.map +1 -1
  497. package/components/heading/HeadingHelpers.d.ts +5 -1
  498. package/components/heading/HeadingHelpers.js +39 -0
  499. package/components/heading/HeadingHelpers.js.map +1 -1
  500. package/components/info-card/index.js.map +1 -1
  501. package/components/info-card/style.js.map +1 -1
  502. package/components/input/style/themes/dnb-input-theme-ui.css +1 -1
  503. package/components/input/style/themes/dnb-input-theme-ui.min.css +1 -1
  504. package/components/input/style/themes/dnb-input-theme-ui.scss +9 -3
  505. package/components/input-masked/InputMaskedHooks.js +1 -1
  506. package/components/input-masked/InputMaskedHooks.js.map +1 -1
  507. package/components/input-masked/InputMaskedUtils.js +1 -1
  508. package/components/input-masked/InputMaskedUtils.js.map +1 -1
  509. package/components/modal/Modal.js.map +1 -1
  510. package/components/modal/ModalContent.js +3 -1
  511. package/components/modal/ModalContent.js.map +1 -1
  512. package/components/modal/parts/ModalHeaderBar.js +0 -4
  513. package/components/modal/parts/ModalHeaderBar.js.map +1 -1
  514. package/components/pagination/Pagination.js.map +1 -1
  515. package/components/progress-indicator/style/dnb-progress-indicator.css +59 -2
  516. package/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
  517. package/components/progress-indicator/style/dnb-progress-indicator.scss +70 -2
  518. package/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.css +18 -0
  519. package/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.min.css +9 -0
  520. package/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.scss +19 -0
  521. package/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.css +5 -64
  522. package/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.min.css +1 -1
  523. package/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.scss +4 -86
  524. package/components/radio/Radio.d.ts +4 -0
  525. package/components/radio/Radio.js +6 -4
  526. package/components/radio/Radio.js.map +1 -1
  527. package/components/radio/style/themes/dnb-radio-theme-ui.scss +15 -5
  528. package/components/section/Section.d.ts +21 -1
  529. package/components/section/Section.js +1 -1
  530. package/components/section/Section.js.map +1 -1
  531. package/components/section/style/dnb-section.css +1 -1
  532. package/components/section/style/dnb-section.scss +8 -3
  533. package/components/section/style/themes/dnb-section-theme-sbanken.scss +3 -4
  534. package/components/section/style/themes/dnb-section-theme-ui.css +9 -0
  535. package/components/section/style/themes/dnb-section-theme-ui.scss +28 -14
  536. package/components/skeleton/style/dnb-skeleton.css +50 -0
  537. package/components/skeleton/style/dnb-skeleton.min.css +1 -1
  538. package/components/skeleton/style/dnb-skeleton.scss +74 -5
  539. package/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.css +7 -0
  540. package/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.min.css +0 -0
  541. package/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.scss +7 -0
  542. package/components/skeleton/style/themes/dnb-skeleton-theme-ui.css +5 -60
  543. package/components/skeleton/style/themes/dnb-skeleton-theme-ui.min.css +0 -1
  544. package/components/skeleton/style/themes/dnb-skeleton-theme-ui.scss +4 -86
  545. package/components/slider/style/dnb-slider.scss +4 -2
  546. package/components/space/SpacingUtils.js.map +1 -1
  547. package/components/step-indicator/StepIndicator.d.ts +89 -75
  548. package/components/step-indicator/StepIndicator.js +29 -25
  549. package/components/step-indicator/StepIndicator.js.map +1 -1
  550. package/components/step-indicator/StepIndicatorContext.d.ts +45 -15
  551. package/components/step-indicator/StepIndicatorContext.js +98 -120
  552. package/components/step-indicator/StepIndicatorContext.js.map +1 -1
  553. package/components/step-indicator/StepIndicatorItem.d.ts +59 -61
  554. package/components/step-indicator/StepIndicatorItem.js +177 -227
  555. package/components/step-indicator/StepIndicatorItem.js.map +1 -1
  556. package/components/step-indicator/StepIndicatorList.d.ts +6 -8
  557. package/components/step-indicator/StepIndicatorList.js +43 -48
  558. package/components/step-indicator/StepIndicatorList.js.map +1 -1
  559. package/components/step-indicator/StepIndicatorModal.d.ts +6 -14
  560. package/components/step-indicator/StepIndicatorModal.js +38 -50
  561. package/components/step-indicator/StepIndicatorModal.js.map +1 -1
  562. package/components/step-indicator/StepIndicatorProps.d.ts +2 -55
  563. package/components/step-indicator/StepIndicatorProps.js +3 -45
  564. package/components/step-indicator/StepIndicatorProps.js.map +1 -1
  565. package/components/step-indicator/StepIndicatorSidebar.d.ts +27 -21
  566. package/components/step-indicator/StepIndicatorSidebar.js +39 -52
  567. package/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  568. package/components/step-indicator/StepIndicatorTriggerButton.d.ts +16 -17
  569. package/components/step-indicator/StepIndicatorTriggerButton.js +62 -78
  570. package/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  571. package/components/switch/Switch.d.ts +4 -0
  572. package/components/switch/Switch.js +6 -4
  573. package/components/switch/Switch.js.map +1 -1
  574. package/components/switch/style/themes/dnb-switch-theme-ui.scss +3 -1
  575. package/components/table/TableContainer.js.map +1 -1
  576. package/components/table/style/table-accordion.scss +18 -6
  577. package/components/table/style/table-header-buttons.scss +3 -1
  578. package/components/table/style/table-tr.scss +6 -2
  579. package/components/table/style/themes/dnb-table-theme-ui.scss +3 -1
  580. package/components/timeline/TimelineItem.d.ts +3 -2
  581. package/components/timeline/TimelineItem.js +95 -61
  582. package/components/timeline/TimelineItem.js.map +1 -1
  583. package/components/timeline/style/themes/dnb-timeline-theme-ui.css +3 -2
  584. package/components/timeline/style/themes/dnb-timeline-theme-ui.min.css +3 -1
  585. package/components/timeline/style/themes/dnb-timeline-theme-ui.scss +3 -2
  586. package/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +3 -1
  587. package/components/tooltip/style/dnb-tooltip.css +10 -0
  588. package/components/tooltip/style/dnb-tooltip.min.css +1 -1
  589. package/components/tooltip/style/dnb-tooltip.scss +14 -0
  590. package/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.css +9 -0
  591. package/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.min.css +1 -0
  592. package/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.scss +10 -0
  593. package/components/tooltip/style/themes/dnb-tooltip-theme-ui.css +3 -11
  594. package/components/tooltip/style/themes/dnb-tooltip-theme-ui.min.css +1 -1
  595. package/components/tooltip/style/themes/dnb-tooltip-theme-ui.scss +3 -15
  596. package/elements/blockquote/style/blockquote-mixins.scss +22 -11
  597. package/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +20 -11
  598. package/elements/lib.d.ts +1 -1
  599. package/elements/typography/H.d.ts +5 -3
  600. package/elements/typography/H.js +8 -4
  601. package/elements/typography/H.js.map +1 -1
  602. package/elements/typography/H1.js +2 -2
  603. package/elements/typography/H1.js.map +1 -1
  604. package/elements/typography/H2.js +2 -2
  605. package/elements/typography/H2.js.map +1 -1
  606. package/elements/typography/H3.js +2 -2
  607. package/elements/typography/H3.js.map +1 -1
  608. package/elements/typography/H4.js +2 -2
  609. package/elements/typography/H4.js.map +1 -1
  610. package/elements/typography/H5.js +2 -2
  611. package/elements/typography/H5.js.map +1 -1
  612. package/elements/typography/H6.js +2 -2
  613. package/elements/typography/H6.js.map +1 -1
  614. package/elements/typography/style/dnb-typography.scss +3 -0
  615. package/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +13 -2
  616. package/elements/typography/style/typography-mixins.scss +5 -0
  617. package/es/components/accordion/Accordion.d.ts +1 -1
  618. package/es/components/accordion/AccordionHeader.d.ts +4 -4
  619. package/es/components/accordion/AccordionHeader.js +18 -5
  620. package/es/components/accordion/AccordionHeader.js.map +1 -1
  621. package/es/components/accordion/style/dnb-accordion.css +22 -17
  622. package/es/components/accordion/style/dnb-accordion.min.css +1 -1
  623. package/es/components/accordion/style/dnb-accordion.scss +40 -18
  624. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +124 -0
  625. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -0
  626. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +125 -0
  627. package/es/components/anchor/Anchor.js +1 -1
  628. package/es/components/anchor/Anchor.js.map +1 -1
  629. package/es/components/anchor/style/anchor-mixins.scss +9 -3
  630. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +3 -1
  631. package/es/components/autocomplete/Autocomplete.js +4 -2
  632. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  633. package/es/components/avatar/style/index.d.ts +1 -1
  634. package/es/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +2 -1
  635. package/es/components/breadcrumb/Breadcrumb.js +2 -2
  636. package/es/components/breadcrumb/Breadcrumb.js.map +1 -1
  637. package/es/components/breadcrumb/BreadcrumbItem.js +24 -2
  638. package/es/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  639. package/es/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.css +23 -0
  640. package/es/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.min.css +1 -0
  641. package/es/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.scss +33 -0
  642. package/es/components/button/style/themes/dnb-button-theme-ui.scss +3 -1
  643. package/es/components/checkbox/Checkbox.d.ts +4 -0
  644. package/es/components/checkbox/Checkbox.js +6 -4
  645. package/es/components/checkbox/Checkbox.js.map +1 -1
  646. package/es/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +3 -1
  647. package/es/components/date-picker/DatePickerInput.js.map +1 -1
  648. package/es/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +6 -2
  649. package/es/components/drawer/Drawer.d.ts +1 -1
  650. package/es/components/drawer/Drawer.js +3 -1
  651. package/es/components/drawer/Drawer.js.map +1 -1
  652. package/es/components/form-status/FormStatus.d.ts +2 -0
  653. package/es/components/form-status/FormStatus.js +70 -53
  654. package/es/components/form-status/FormStatus.js.map +1 -1
  655. package/es/components/form-status/style/dnb-form-status.scss +4 -2
  656. package/es/components/form-status/style/themes/dnb-form-status-theme-sbanken.css +37 -0
  657. package/es/components/form-status/style/themes/dnb-form-status-theme-sbanken.min.css +1 -0
  658. package/es/components/form-status/style/themes/dnb-form-status-theme-sbanken.scss +35 -0
  659. package/es/components/global-status/GlobalStatus.d.ts +1 -1
  660. package/es/components/global-status/GlobalStatus.js +18 -8
  661. package/es/components/global-status/GlobalStatus.js.map +1 -1
  662. package/es/components/global-status/style/dnb-global-status.scss +2 -1
  663. package/es/components/global-status/style/themes/dnb-global-status-theme-sbanken.css +22 -0
  664. package/es/components/global-status/style/themes/dnb-global-status-theme-sbanken.min.css +1 -0
  665. package/es/components/global-status/style/themes/dnb-global-status-theme-sbanken.scss +28 -0
  666. package/es/components/global-status/style/themes/dnb-global-status-theme-ui.css +6 -3
  667. package/es/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
  668. package/es/components/global-status/style/themes/dnb-global-status-theme-ui.scss +13 -6
  669. package/es/components/heading/Heading.d.ts +8 -8
  670. package/es/components/heading/Heading.js +9 -15
  671. package/es/components/heading/Heading.js.map +1 -1
  672. package/es/components/heading/HeadingHelpers.d.ts +5 -1
  673. package/es/components/heading/HeadingHelpers.js +39 -0
  674. package/es/components/heading/HeadingHelpers.js.map +1 -1
  675. package/es/components/info-card/index.js.map +1 -1
  676. package/es/components/info-card/style.js.map +1 -1
  677. package/es/components/input/style/themes/dnb-input-theme-ui.css +1 -1
  678. package/es/components/input/style/themes/dnb-input-theme-ui.min.css +1 -1
  679. package/es/components/input/style/themes/dnb-input-theme-ui.scss +9 -3
  680. package/es/components/input-masked/InputMaskedHooks.js +1 -1
  681. package/es/components/input-masked/InputMaskedHooks.js.map +1 -1
  682. package/es/components/input-masked/InputMaskedUtils.js +1 -1
  683. package/es/components/input-masked/InputMaskedUtils.js.map +1 -1
  684. package/es/components/modal/Modal.js.map +1 -1
  685. package/es/components/modal/ModalContent.js +3 -1
  686. package/es/components/modal/ModalContent.js.map +1 -1
  687. package/es/components/modal/parts/ModalHeaderBar.js +0 -4
  688. package/es/components/modal/parts/ModalHeaderBar.js.map +1 -1
  689. package/es/components/pagination/Pagination.js.map +1 -1
  690. package/es/components/progress-indicator/style/dnb-progress-indicator.css +59 -2
  691. package/es/components/progress-indicator/style/dnb-progress-indicator.min.css +1 -1
  692. package/es/components/progress-indicator/style/dnb-progress-indicator.scss +70 -2
  693. package/es/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.css +18 -0
  694. package/es/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.min.css +9 -0
  695. package/es/components/progress-indicator/style/themes/dnb-progress-indicator-theme-sbanken.scss +19 -0
  696. package/es/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.css +5 -64
  697. package/es/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.min.css +1 -1
  698. package/es/components/progress-indicator/style/themes/dnb-progress-indicator-theme-ui.scss +4 -86
  699. package/es/components/radio/Radio.d.ts +4 -0
  700. package/es/components/radio/Radio.js +6 -4
  701. package/es/components/radio/Radio.js.map +1 -1
  702. package/es/components/radio/style/themes/dnb-radio-theme-ui.scss +15 -5
  703. package/es/components/section/Section.d.ts +21 -1
  704. package/es/components/section/Section.js +1 -1
  705. package/es/components/section/Section.js.map +1 -1
  706. package/es/components/section/style/dnb-section.css +1 -1
  707. package/es/components/section/style/dnb-section.scss +8 -3
  708. package/es/components/section/style/themes/dnb-section-theme-sbanken.scss +3 -4
  709. package/es/components/section/style/themes/dnb-section-theme-ui.css +9 -0
  710. package/es/components/section/style/themes/dnb-section-theme-ui.scss +28 -14
  711. package/es/components/skeleton/style/dnb-skeleton.css +50 -0
  712. package/es/components/skeleton/style/dnb-skeleton.min.css +1 -1
  713. package/es/components/skeleton/style/dnb-skeleton.scss +74 -5
  714. package/es/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.css +7 -0
  715. package/es/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.min.css +0 -0
  716. package/es/components/skeleton/style/themes/dnb-skeleton-theme-sbanken.scss +7 -0
  717. package/es/components/skeleton/style/themes/dnb-skeleton-theme-ui.css +5 -60
  718. package/es/components/skeleton/style/themes/dnb-skeleton-theme-ui.min.css +0 -1
  719. package/es/components/skeleton/style/themes/dnb-skeleton-theme-ui.scss +4 -86
  720. package/es/components/slider/style/dnb-slider.scss +4 -2
  721. package/es/components/space/SpacingUtils.js.map +1 -1
  722. package/es/components/step-indicator/StepIndicator.d.ts +89 -75
  723. package/es/components/step-indicator/StepIndicator.js +29 -25
  724. package/es/components/step-indicator/StepIndicator.js.map +1 -1
  725. package/es/components/step-indicator/StepIndicatorContext.d.ts +45 -15
  726. package/es/components/step-indicator/StepIndicatorContext.js +94 -114
  727. package/es/components/step-indicator/StepIndicatorContext.js.map +1 -1
  728. package/es/components/step-indicator/StepIndicatorItem.d.ts +59 -61
  729. package/es/components/step-indicator/StepIndicatorItem.js +173 -223
  730. package/es/components/step-indicator/StepIndicatorItem.js.map +1 -1
  731. package/es/components/step-indicator/StepIndicatorList.d.ts +6 -8
  732. package/es/components/step-indicator/StepIndicatorList.js +43 -48
  733. package/es/components/step-indicator/StepIndicatorList.js.map +1 -1
  734. package/es/components/step-indicator/StepIndicatorModal.d.ts +6 -14
  735. package/es/components/step-indicator/StepIndicatorModal.js +38 -48
  736. package/es/components/step-indicator/StepIndicatorModal.js.map +1 -1
  737. package/es/components/step-indicator/StepIndicatorProps.d.ts +2 -55
  738. package/es/components/step-indicator/StepIndicatorProps.js +3 -45
  739. package/es/components/step-indicator/StepIndicatorProps.js.map +1 -1
  740. package/es/components/step-indicator/StepIndicatorSidebar.d.ts +27 -21
  741. package/es/components/step-indicator/StepIndicatorSidebar.js +39 -52
  742. package/es/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  743. package/es/components/step-indicator/StepIndicatorTriggerButton.d.ts +16 -17
  744. package/es/components/step-indicator/StepIndicatorTriggerButton.js +62 -78
  745. package/es/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  746. package/es/components/switch/Switch.d.ts +4 -0
  747. package/es/components/switch/Switch.js +6 -4
  748. package/es/components/switch/Switch.js.map +1 -1
  749. package/es/components/switch/style/themes/dnb-switch-theme-ui.scss +3 -1
  750. package/es/components/table/TableContainer.js.map +1 -1
  751. package/es/components/table/style/table-accordion.scss +18 -6
  752. package/es/components/table/style/table-header-buttons.scss +3 -1
  753. package/es/components/table/style/table-tr.scss +6 -2
  754. package/es/components/table/style/themes/dnb-table-theme-ui.scss +3 -1
  755. package/es/components/timeline/TimelineItem.d.ts +3 -2
  756. package/es/components/timeline/TimelineItem.js +89 -58
  757. package/es/components/timeline/TimelineItem.js.map +1 -1
  758. package/es/components/timeline/style/themes/dnb-timeline-theme-ui.css +3 -2
  759. package/es/components/timeline/style/themes/dnb-timeline-theme-ui.min.css +3 -1
  760. package/es/components/timeline/style/themes/dnb-timeline-theme-ui.scss +3 -2
  761. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +3 -1
  762. package/es/components/tooltip/style/dnb-tooltip.css +10 -0
  763. package/es/components/tooltip/style/dnb-tooltip.min.css +1 -1
  764. package/es/components/tooltip/style/dnb-tooltip.scss +14 -0
  765. package/es/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.css +9 -0
  766. package/es/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.min.css +1 -0
  767. package/es/components/tooltip/style/themes/dnb-tooltip-theme-sbanken.scss +10 -0
  768. package/es/components/tooltip/style/themes/dnb-tooltip-theme-ui.css +3 -11
  769. package/es/components/tooltip/style/themes/dnb-tooltip-theme-ui.min.css +1 -1
  770. package/es/components/tooltip/style/themes/dnb-tooltip-theme-ui.scss +3 -15
  771. package/es/elements/blockquote/style/blockquote-mixins.scss +22 -11
  772. package/es/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +20 -11
  773. package/es/elements/lib.d.ts +1 -1
  774. package/es/elements/typography/H.d.ts +5 -3
  775. package/es/elements/typography/H.js +8 -4
  776. package/es/elements/typography/H.js.map +1 -1
  777. package/es/elements/typography/H1.js +2 -2
  778. package/es/elements/typography/H1.js.map +1 -1
  779. package/es/elements/typography/H2.js +2 -2
  780. package/es/elements/typography/H2.js.map +1 -1
  781. package/es/elements/typography/H3.js +2 -2
  782. package/es/elements/typography/H3.js.map +1 -1
  783. package/es/elements/typography/H4.js +2 -2
  784. package/es/elements/typography/H4.js.map +1 -1
  785. package/es/elements/typography/H5.js +2 -2
  786. package/es/elements/typography/H5.js.map +1 -1
  787. package/es/elements/typography/H6.js +2 -2
  788. package/es/elements/typography/H6.js.map +1 -1
  789. package/es/elements/typography/style/dnb-typography.scss +3 -0
  790. package/es/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +13 -2
  791. package/es/elements/typography/style/typography-mixins.scss +5 -0
  792. package/es/extensions/forms/DataContext/At.d.ts +1 -1
  793. package/es/extensions/forms/DataContext/At.js.map +1 -1
  794. package/es/extensions/forms/DataContext/Context.d.ts +1 -0
  795. package/es/extensions/forms/DataContext/Context.js +2 -1
  796. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  797. package/es/extensions/forms/DataContext/Provider.js +7 -3
  798. package/es/extensions/forms/DataContext/Provider.js.map +1 -1
  799. package/es/extensions/forms/DataContext/index.d.ts +0 -2
  800. package/es/extensions/forms/DataContext/index.js +0 -2
  801. package/es/extensions/forms/DataContext/index.js.map +1 -1
  802. package/es/extensions/forms/Field/ArraySelection.d.ts +4 -4
  803. package/es/extensions/forms/Field/ArraySelection.js +52 -36
  804. package/es/extensions/forms/Field/ArraySelection.js.map +1 -1
  805. package/es/extensions/forms/Field/CountryCode.d.ts +9 -0
  806. package/es/extensions/forms/Field/CountryCode.js +66 -0
  807. package/es/extensions/forms/Field/CountryCode.js.map +1 -0
  808. package/es/extensions/forms/Field/Currency.d.ts +2 -3
  809. package/es/extensions/forms/Field/Currency.js +6 -37
  810. package/es/extensions/forms/Field/Currency.js.map +1 -1
  811. package/es/extensions/forms/Field/Date.d.ts +2 -3
  812. package/es/extensions/forms/Field/Date.js +15 -11
  813. package/es/extensions/forms/Field/Date.js.map +1 -1
  814. package/es/extensions/forms/Field/Number.d.ts +7 -4
  815. package/es/extensions/forms/Field/Number.js +47 -24
  816. package/es/extensions/forms/Field/Number.js.map +1 -1
  817. package/es/extensions/forms/Field/Option.d.ts +2 -3
  818. package/es/extensions/forms/Field/Option.js.map +1 -1
  819. package/es/extensions/forms/Field/PhoneNumber.d.ts +8 -4
  820. package/es/extensions/forms/Field/PhoneNumber.js +46 -43
  821. package/es/extensions/forms/Field/PhoneNumber.js.map +1 -1
  822. package/es/extensions/forms/Field/PostalCodeAndCity.d.ts +3 -3
  823. package/es/extensions/forms/Field/PostalCodeAndCity.js +4 -4
  824. package/es/extensions/forms/Field/PostalCodeAndCity.js.map +1 -1
  825. package/es/extensions/forms/Field/Selection.d.ts +6 -5
  826. package/es/extensions/forms/Field/Selection.js +88 -41
  827. package/es/extensions/forms/Field/Selection.js.map +1 -1
  828. package/es/extensions/forms/Field/String.d.ts +3 -4
  829. package/es/extensions/forms/Field/String.js +29 -17
  830. package/es/extensions/forms/Field/String.js.map +1 -1
  831. package/es/extensions/forms/Field/Toggle.d.ts +2 -3
  832. package/es/extensions/forms/Field/Toggle.js +16 -14
  833. package/es/extensions/forms/Field/Toggle.js.map +1 -1
  834. package/es/extensions/forms/Field/fields.scss +2 -2
  835. package/es/extensions/forms/Field/index.d.ts +2 -4
  836. package/es/extensions/forms/Field/index.js +3 -5
  837. package/es/extensions/forms/Field/index.js.map +1 -1
  838. package/es/extensions/forms/Field/style/dnb-array-selection.css +13 -0
  839. package/es/extensions/forms/Field/style/dnb-array-selection.min.css +1 -0
  840. package/es/extensions/forms/Field/style/dnb-array-selection.scss +15 -0
  841. package/es/extensions/forms/Field/style/dnb-country-code.css +12 -0
  842. package/es/extensions/forms/Field/style/dnb-country-code.min.css +1 -0
  843. package/es/extensions/forms/Field/style/dnb-country-code.scss +19 -0
  844. package/es/extensions/forms/Field/style/dnb-phone-number.css +3 -7
  845. package/es/extensions/forms/Field/style/dnb-phone-number.min.css +1 -1
  846. package/es/extensions/forms/Field/style/dnb-phone-number.scss +3 -8
  847. package/es/extensions/forms/Field/style/dnb-postal-code-and-city.css +5 -2
  848. package/es/extensions/forms/Field/style/dnb-postal-code-and-city.min.css +1 -1
  849. package/es/extensions/forms/Field/style/dnb-postal-code-and-city.scss +5 -1
  850. package/es/extensions/forms/Field/style/dnb-selection.css +5 -2
  851. package/es/extensions/forms/Field/style/dnb-selection.min.css +1 -1
  852. package/es/extensions/forms/Field/style/dnb-selection.scss +7 -1
  853. package/es/extensions/forms/Field/style/index.scss +2 -0
  854. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +5 -5
  855. package/es/extensions/forms/FieldBlock/FieldBlock.js +80 -16
  856. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  857. package/es/extensions/forms/FieldBlock/FieldBlockContext.d.ts +8 -0
  858. package/es/extensions/forms/FieldBlock/FieldBlockContext.js +4 -0
  859. package/es/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -0
  860. package/es/extensions/forms/FieldBlock/index.d.ts +1 -0
  861. package/es/extensions/forms/FieldBlock/index.js +3 -1
  862. package/es/extensions/forms/FieldBlock/index.js.map +1 -1
  863. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +31 -8
  864. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  865. package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +46 -13
  866. package/es/extensions/forms/Form/FormElement.d.ts +4 -0
  867. package/es/extensions/forms/Form/FormElement.js +31 -0
  868. package/es/extensions/forms/Form/FormElement.js.map +1 -0
  869. package/es/extensions/forms/Form/FormHandler.d.ts +6 -0
  870. package/es/extensions/forms/Form/FormHandler.js +33 -0
  871. package/es/extensions/forms/Form/FormHandler.js.map +1 -0
  872. package/es/extensions/forms/{DataContext → Form}/SubmitButton.d.ts +3 -4
  873. package/es/extensions/forms/Form/SubmitButton.js +25 -0
  874. package/es/extensions/forms/Form/SubmitButton.js.map +1 -0
  875. package/es/extensions/forms/Form/index.d.ts +9 -0
  876. package/es/extensions/forms/Form/index.js +10 -0
  877. package/es/extensions/forms/Form/index.js.map +1 -0
  878. package/es/extensions/forms/Iterate/Array.d.ts +17 -0
  879. package/es/extensions/forms/Iterate/Array.js +80 -0
  880. package/es/extensions/forms/Iterate/Array.js.map +1 -0
  881. package/es/extensions/forms/Iterate/ArrayPushButton.d.ts +10 -0
  882. package/es/extensions/forms/Iterate/ArrayPushButton.js +42 -0
  883. package/es/extensions/forms/Iterate/ArrayPushButton.js.map +1 -0
  884. package/es/extensions/forms/Iterate/ArrayRemoveElementButton.d.ts +8 -0
  885. package/es/extensions/forms/Iterate/ArrayRemoveElementButton.js +30 -0
  886. package/es/extensions/forms/Iterate/ArrayRemoveElementButton.js.map +1 -0
  887. package/es/extensions/forms/Iterate/IterateElementContext.d.ts +11 -0
  888. package/es/extensions/forms/Iterate/IterateElementContext.js +4 -0
  889. package/es/extensions/forms/Iterate/IterateElementContext.js.map +1 -0
  890. package/es/extensions/forms/Iterate/index.d.ts +11 -0
  891. package/es/extensions/forms/Iterate/index.js +12 -0
  892. package/es/extensions/forms/Iterate/index.js.map +1 -0
  893. package/es/extensions/forms/Layout/ButtonRow.d.ts +1 -1
  894. package/es/extensions/forms/Layout/ButtonRow.js +2 -2
  895. package/es/extensions/forms/Layout/ButtonRow.js.map +1 -1
  896. package/es/extensions/forms/Layout/Card.d.ts +1 -1
  897. package/es/extensions/forms/Layout/Card.js +5 -5
  898. package/es/extensions/forms/Layout/Card.js.map +1 -1
  899. package/es/extensions/forms/Layout/FlexContainer.d.ts +2 -1
  900. package/es/extensions/forms/Layout/FlexContainer.js +6 -5
  901. package/es/extensions/forms/Layout/FlexContainer.js.map +1 -1
  902. package/es/extensions/forms/Layout/FlexItem.d.ts +2 -1
  903. package/es/extensions/forms/Layout/FlexItem.js +4 -3
  904. package/es/extensions/forms/Layout/FlexItem.js.map +1 -1
  905. package/es/extensions/forms/Layout/MainHeading.d.ts +4 -2
  906. package/es/extensions/forms/Layout/MainHeading.js +10 -4
  907. package/es/extensions/forms/Layout/MainHeading.js.map +1 -1
  908. package/es/extensions/forms/Layout/Section.d.ts +1 -1
  909. package/es/extensions/forms/Layout/Section.js +2 -2
  910. package/es/extensions/forms/Layout/Section.js.map +1 -1
  911. package/es/extensions/forms/Layout/SubHeading.d.ts +4 -2
  912. package/es/extensions/forms/Layout/SubHeading.js +10 -4
  913. package/es/extensions/forms/Layout/SubHeading.js.map +1 -1
  914. package/es/extensions/forms/Layout/index.d.ts +0 -2
  915. package/es/extensions/forms/Layout/index.js +1 -3
  916. package/es/extensions/forms/Layout/index.js.map +1 -1
  917. package/es/extensions/forms/Layout/style/dnb-card.css +3 -3
  918. package/es/extensions/forms/Layout/style/dnb-card.min.css +1 -1
  919. package/es/extensions/forms/Layout/style/dnb-card.scss +6 -4
  920. package/es/extensions/forms/Layout/style/dnb-flex-container.css +9 -0
  921. package/es/extensions/forms/Layout/style/dnb-flex-container.min.css +1 -1
  922. package/es/extensions/forms/Layout/style/dnb-flex-container.scss +14 -0
  923. package/es/extensions/forms/Layout/style/dnb-flex-item.css +9 -0
  924. package/es/extensions/forms/Layout/style/dnb-flex-item.min.css +1 -1
  925. package/es/extensions/forms/Layout/style/dnb-flex-item.scss +14 -0
  926. package/es/extensions/forms/StepsLayout/Buttons.d.ts +1 -1
  927. package/es/extensions/forms/StepsLayout/Buttons.js +2 -2
  928. package/es/extensions/forms/StepsLayout/Buttons.js.map +1 -1
  929. package/es/extensions/forms/StepsLayout/NextButton.d.ts +1 -1
  930. package/es/extensions/forms/StepsLayout/NextButton.js.map +1 -1
  931. package/es/extensions/forms/StepsLayout/PreviousButton.d.ts +1 -1
  932. package/es/extensions/forms/StepsLayout/PreviousButton.js.map +1 -1
  933. package/es/extensions/forms/StepsLayout/Step.d.ts +1 -1
  934. package/es/extensions/forms/StepsLayout/Step.js +2 -2
  935. package/es/extensions/forms/StepsLayout/Step.js.map +1 -1
  936. package/es/extensions/forms/StepsLayout/StepsLayout.d.ts +1 -1
  937. package/es/extensions/forms/StepsLayout/StepsLayout.js +3 -3
  938. package/es/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  939. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.css +11 -5
  940. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  941. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +10 -3
  942. package/es/extensions/forms/Value/Boolean.d.ts +2 -3
  943. package/es/extensions/forms/Value/Boolean.js +4 -4
  944. package/es/extensions/forms/Value/Boolean.js.map +1 -1
  945. package/es/extensions/forms/Value/Number.d.ts +2 -3
  946. package/es/extensions/forms/Value/Number.js +5 -4
  947. package/es/extensions/forms/Value/Number.js.map +1 -1
  948. package/es/extensions/forms/Value/String.d.ts +2 -3
  949. package/es/extensions/forms/Value/String.js +4 -4
  950. package/es/extensions/forms/Value/String.js.map +1 -1
  951. package/es/extensions/forms/Value/index.d.ts +0 -4
  952. package/es/extensions/forms/Value/index.js +0 -4
  953. package/es/extensions/forms/Value/index.js.map +1 -1
  954. package/es/extensions/forms/ValueBlock/ValueBlock.d.ts +2 -3
  955. package/es/extensions/forms/ValueBlock/ValueBlock.js +2 -2
  956. package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  957. package/es/extensions/forms/ValueBlock/index.js.map +1 -1
  958. package/es/extensions/forms/hooks/index.d.ts +1 -0
  959. package/es/extensions/forms/hooks/index.js +1 -0
  960. package/es/extensions/forms/hooks/index.js.map +1 -0
  961. package/es/extensions/forms/hooks/useDataValue.d.ts +12 -0
  962. package/{extensions/forms/Field/hooks/useField.js → es/extensions/forms/hooks/useDataValue.js} +90 -55
  963. package/es/extensions/forms/hooks/useDataValue.js.map +1 -0
  964. package/es/extensions/forms/index.d.ts +4 -4
  965. package/es/extensions/forms/index.js +3 -2
  966. package/es/extensions/forms/index.js.map +1 -1
  967. package/es/extensions/forms/style/dnb-forms.css +105 -29
  968. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  969. package/es/extensions/forms/style/index.d.ts +1 -0
  970. package/es/extensions/forms/style/index.js +1 -0
  971. package/es/extensions/forms/style/index.js.map +1 -0
  972. package/es/extensions/forms/types.d.ts +95 -2
  973. package/es/extensions/forms/types.js +42 -0
  974. package/es/extensions/forms/types.js.map +1 -1
  975. package/es/extensions/forms/utils/TestElement/style/dnb-test-element.css +2 -2
  976. package/es/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -1
  977. package/es/extensions/forms/utils/TestElement/style/dnb-test-element.scss +2 -2
  978. package/es/extensions/forms/utils/index.d.ts +0 -1
  979. package/es/extensions/forms/utils/index.js +0 -1
  980. package/es/extensions/forms/utils/index.js.map +1 -1
  981. package/es/extensions/forms/utils/useWasChanged.d.ts +5 -0
  982. package/es/extensions/forms/utils/useWasChanged.js +51 -0
  983. package/es/extensions/forms/utils/useWasChanged.js.map +1 -0
  984. package/es/extensions/forms/variables.scss +3 -0
  985. package/es/extensions/lib.d.ts +1 -2
  986. package/es/extensions/payment-card/PaymentCard.js.map +1 -1
  987. package/es/extensions/payment-card/style/dnb-payment-card.css +7 -7
  988. package/es/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  989. package/es/extensions/payment-card/style/dnb-payment-card.scss +7 -7
  990. package/es/extensions/payment-card/utils/backgrounds/ung.js +1 -1
  991. package/es/extensions/payment-card/utils/backgrounds/ung.js.map +1 -1
  992. package/es/extensions/payment-card/utils/backgrounds/youth.js +1 -1
  993. package/es/extensions/payment-card/utils/backgrounds/youth.js.map +1 -1
  994. package/es/fragments/drawer-list/DrawerList.js +1 -1
  995. package/es/fragments/drawer-list/DrawerList.js.map +1 -1
  996. package/es/fragments/drawer-list/DrawerListPortal.js +2 -2
  997. package/es/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  998. package/es/fragments/drawer-list/style/dnb-drawer-list.scss +3 -1
  999. package/es/shared/Context.d.ts +2 -0
  1000. package/es/shared/Context.js.map +1 -1
  1001. package/es/shared/Eufemia.d.ts +1 -1
  1002. package/es/shared/Eufemia.js +2 -2
  1003. package/es/shared/Eufemia.js.map +1 -1
  1004. package/es/shared/helpers/withCamelCaseProps.js.map +1 -1
  1005. package/es/shared/helpers/withSnakeCaseProps.js.map +1 -1
  1006. package/es/shared/libs/Shortcuts.js.map +1 -1
  1007. package/es/shared/locales/en-GB.d.ts +1 -0
  1008. package/es/shared/locales/en-GB.js +1 -0
  1009. package/es/shared/locales/en-GB.js.map +1 -1
  1010. package/es/shared/locales/en-US.d.ts +1 -0
  1011. package/es/shared/locales/index.d.ts +2 -0
  1012. package/es/shared/locales/nb-NO.d.ts +1 -0
  1013. package/es/shared/locales/nb-NO.js +1 -0
  1014. package/es/shared/locales/nb-NO.js.map +1 -1
  1015. package/es/shared/useMedia.js +30 -21
  1016. package/es/shared/useMedia.js.map +1 -1
  1017. package/es/style/core/reset.scss +13 -3
  1018. package/es/style/core/utilities.scss +3 -1
  1019. package/es/style/dnb-ui-components.css +142 -20
  1020. package/es/style/dnb-ui-components.min.css +1 -1
  1021. package/es/style/dnb-ui-elements.css +23 -11
  1022. package/es/style/dnb-ui-elements.min.css +1 -1
  1023. package/es/style/dnb-ui-extensions.css +112 -36
  1024. package/es/style/dnb-ui-extensions.min.css +1 -1
  1025. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +25 -11
  1026. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  1027. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +173 -160
  1028. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -1
  1029. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +112 -36
  1030. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  1031. package/es/style/themes/theme-sbanken/customisations.scss +3 -7
  1032. package/es/style/themes/theme-sbanken/properties.js +6 -6
  1033. package/es/style/themes/theme-sbanken/properties.js.map +1 -1
  1034. package/es/style/themes/theme-sbanken/properties.scss +6 -6
  1035. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +67 -47
  1036. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  1037. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +386 -392
  1038. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +12 -2
  1039. package/es/style/themes/theme-sbanken/sbanken-theme-components.scss +7 -6
  1040. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +59 -23
  1041. package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  1042. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +112 -36
  1043. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  1044. package/es/style/themes/theme-ui/fonts.scss +8 -4
  1045. package/es/style/themes/theme-ui/ui-theme-basis.css +25 -11
  1046. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  1047. package/es/style/themes/theme-ui/ui-theme-basis.scss +4 -0
  1048. package/es/style/themes/theme-ui/ui-theme-components.css +173 -160
  1049. package/es/style/themes/theme-ui/ui-theme-components.min.css +4 -2
  1050. package/es/style/themes/theme-ui/ui-theme-elements.css +23 -11
  1051. package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  1052. package/es/style/themes/theme-ui/ui-theme-extensions.css +112 -36
  1053. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  1054. package/es/style/themes/theme-ui/ui-theme-tags.css +20 -11
  1055. package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  1056. package/es/style/themes/theme-ui/ui-theme-tags.scss +9 -4
  1057. package/esm/dnb-ui-basis.min.mjs +1 -1
  1058. package/esm/dnb-ui-components.min.mjs +1 -1
  1059. package/esm/dnb-ui-elements.min.mjs +1 -1
  1060. package/esm/dnb-ui-extensions.min.mjs +6 -6
  1061. package/esm/dnb-ui-lib.min.mjs +1 -1
  1062. package/extensions/forms/DataContext/At.d.ts +1 -1
  1063. package/extensions/forms/DataContext/At.js.map +1 -1
  1064. package/extensions/forms/DataContext/Context.d.ts +1 -0
  1065. package/extensions/forms/DataContext/Context.js +2 -1
  1066. package/extensions/forms/DataContext/Context.js.map +1 -1
  1067. package/extensions/forms/DataContext/Provider.js +7 -3
  1068. package/extensions/forms/DataContext/Provider.js.map +1 -1
  1069. package/extensions/forms/DataContext/index.d.ts +0 -2
  1070. package/extensions/forms/DataContext/index.js +0 -2
  1071. package/extensions/forms/DataContext/index.js.map +1 -1
  1072. package/extensions/forms/Field/ArraySelection.d.ts +4 -4
  1073. package/extensions/forms/Field/ArraySelection.js +52 -36
  1074. package/extensions/forms/Field/ArraySelection.js.map +1 -1
  1075. package/extensions/forms/Field/CountryCode.d.ts +9 -0
  1076. package/extensions/forms/Field/CountryCode.js +67 -0
  1077. package/extensions/forms/Field/CountryCode.js.map +1 -0
  1078. package/extensions/forms/Field/Currency.d.ts +2 -3
  1079. package/extensions/forms/Field/Currency.js +6 -38
  1080. package/extensions/forms/Field/Currency.js.map +1 -1
  1081. package/extensions/forms/Field/Date.d.ts +2 -3
  1082. package/extensions/forms/Field/Date.js +15 -11
  1083. package/extensions/forms/Field/Date.js.map +1 -1
  1084. package/extensions/forms/Field/Number.d.ts +7 -4
  1085. package/extensions/forms/Field/Number.js +47 -24
  1086. package/extensions/forms/Field/Number.js.map +1 -1
  1087. package/extensions/forms/Field/Option.d.ts +2 -3
  1088. package/extensions/forms/Field/Option.js.map +1 -1
  1089. package/extensions/forms/Field/PhoneNumber.d.ts +8 -4
  1090. package/extensions/forms/Field/PhoneNumber.js +46 -45
  1091. package/extensions/forms/Field/PhoneNumber.js.map +1 -1
  1092. package/extensions/forms/Field/PostalCodeAndCity.d.ts +3 -3
  1093. package/extensions/forms/Field/PostalCodeAndCity.js +4 -4
  1094. package/extensions/forms/Field/PostalCodeAndCity.js.map +1 -1
  1095. package/extensions/forms/Field/Selection.d.ts +6 -5
  1096. package/extensions/forms/Field/Selection.js +90 -42
  1097. package/extensions/forms/Field/Selection.js.map +1 -1
  1098. package/extensions/forms/Field/String.d.ts +3 -4
  1099. package/extensions/forms/Field/String.js +29 -17
  1100. package/extensions/forms/Field/String.js.map +1 -1
  1101. package/extensions/forms/Field/Toggle.d.ts +2 -3
  1102. package/extensions/forms/Field/Toggle.js +16 -14
  1103. package/extensions/forms/Field/Toggle.js.map +1 -1
  1104. package/extensions/forms/Field/fields.scss +2 -2
  1105. package/extensions/forms/Field/index.d.ts +2 -4
  1106. package/extensions/forms/Field/index.js +3 -5
  1107. package/extensions/forms/Field/index.js.map +1 -1
  1108. package/extensions/forms/Field/style/dnb-array-selection.css +13 -0
  1109. package/extensions/forms/Field/style/dnb-array-selection.min.css +1 -0
  1110. package/extensions/forms/Field/style/dnb-array-selection.scss +15 -0
  1111. package/extensions/forms/Field/style/dnb-country-code.css +12 -0
  1112. package/extensions/forms/Field/style/dnb-country-code.min.css +1 -0
  1113. package/extensions/forms/Field/style/dnb-country-code.scss +19 -0
  1114. package/extensions/forms/Field/style/dnb-phone-number.css +3 -7
  1115. package/extensions/forms/Field/style/dnb-phone-number.min.css +1 -1
  1116. package/extensions/forms/Field/style/dnb-phone-number.scss +3 -8
  1117. package/extensions/forms/Field/style/dnb-postal-code-and-city.css +5 -2
  1118. package/extensions/forms/Field/style/dnb-postal-code-and-city.min.css +1 -1
  1119. package/extensions/forms/Field/style/dnb-postal-code-and-city.scss +5 -1
  1120. package/extensions/forms/Field/style/dnb-selection.css +5 -2
  1121. package/extensions/forms/Field/style/dnb-selection.min.css +1 -1
  1122. package/extensions/forms/Field/style/dnb-selection.scss +7 -1
  1123. package/extensions/forms/Field/style/index.scss +2 -0
  1124. package/extensions/forms/FieldBlock/FieldBlock.d.ts +5 -5
  1125. package/extensions/forms/FieldBlock/FieldBlock.js +86 -16
  1126. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  1127. package/extensions/forms/FieldBlock/FieldBlockContext.d.ts +8 -0
  1128. package/extensions/forms/FieldBlock/FieldBlockContext.js +4 -0
  1129. package/extensions/forms/FieldBlock/FieldBlockContext.js.map +1 -0
  1130. package/extensions/forms/FieldBlock/index.d.ts +1 -0
  1131. package/extensions/forms/FieldBlock/index.js +3 -1
  1132. package/extensions/forms/FieldBlock/index.js.map +1 -1
  1133. package/extensions/forms/FieldBlock/style/dnb-field-block.css +31 -8
  1134. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  1135. package/extensions/forms/FieldBlock/style/dnb-field-block.scss +46 -13
  1136. package/extensions/forms/Form/FormElement.d.ts +4 -0
  1137. package/extensions/forms/Form/FormElement.js +31 -0
  1138. package/extensions/forms/Form/FormElement.js.map +1 -0
  1139. package/extensions/forms/Form/FormHandler.d.ts +6 -0
  1140. package/extensions/forms/Form/FormHandler.js +33 -0
  1141. package/extensions/forms/Form/FormHandler.js.map +1 -0
  1142. package/extensions/forms/{DataContext → Form}/SubmitButton.d.ts +3 -4
  1143. package/extensions/forms/Form/SubmitButton.js +25 -0
  1144. package/extensions/forms/Form/SubmitButton.js.map +1 -0
  1145. package/extensions/forms/Form/index.d.ts +9 -0
  1146. package/extensions/forms/Form/index.js +10 -0
  1147. package/extensions/forms/Form/index.js.map +1 -0
  1148. package/extensions/forms/Iterate/Array.d.ts +17 -0
  1149. package/extensions/forms/Iterate/Array.js +81 -0
  1150. package/extensions/forms/Iterate/Array.js.map +1 -0
  1151. package/extensions/forms/Iterate/ArrayPushButton.d.ts +10 -0
  1152. package/extensions/forms/Iterate/ArrayPushButton.js +42 -0
  1153. package/extensions/forms/Iterate/ArrayPushButton.js.map +1 -0
  1154. package/extensions/forms/Iterate/ArrayRemoveElementButton.d.ts +8 -0
  1155. package/extensions/forms/Iterate/ArrayRemoveElementButton.js +30 -0
  1156. package/extensions/forms/Iterate/ArrayRemoveElementButton.js.map +1 -0
  1157. package/extensions/forms/Iterate/IterateElementContext.d.ts +11 -0
  1158. package/extensions/forms/Iterate/IterateElementContext.js +4 -0
  1159. package/extensions/forms/Iterate/IterateElementContext.js.map +1 -0
  1160. package/extensions/forms/Iterate/index.d.ts +11 -0
  1161. package/extensions/forms/Iterate/index.js +12 -0
  1162. package/extensions/forms/Iterate/index.js.map +1 -0
  1163. package/extensions/forms/Layout/ButtonRow.d.ts +1 -1
  1164. package/extensions/forms/Layout/ButtonRow.js +2 -2
  1165. package/extensions/forms/Layout/ButtonRow.js.map +1 -1
  1166. package/extensions/forms/Layout/Card.d.ts +1 -1
  1167. package/extensions/forms/Layout/Card.js +5 -5
  1168. package/extensions/forms/Layout/Card.js.map +1 -1
  1169. package/extensions/forms/Layout/FlexContainer.d.ts +2 -1
  1170. package/extensions/forms/Layout/FlexContainer.js +6 -5
  1171. package/extensions/forms/Layout/FlexContainer.js.map +1 -1
  1172. package/extensions/forms/Layout/FlexItem.d.ts +2 -1
  1173. package/extensions/forms/Layout/FlexItem.js +4 -3
  1174. package/extensions/forms/Layout/FlexItem.js.map +1 -1
  1175. package/extensions/forms/Layout/MainHeading.d.ts +4 -2
  1176. package/extensions/forms/Layout/MainHeading.js +10 -4
  1177. package/extensions/forms/Layout/MainHeading.js.map +1 -1
  1178. package/extensions/forms/Layout/Section.d.ts +1 -1
  1179. package/extensions/forms/Layout/Section.js +2 -2
  1180. package/extensions/forms/Layout/Section.js.map +1 -1
  1181. package/extensions/forms/Layout/SubHeading.d.ts +4 -2
  1182. package/extensions/forms/Layout/SubHeading.js +10 -4
  1183. package/extensions/forms/Layout/SubHeading.js.map +1 -1
  1184. package/extensions/forms/Layout/index.d.ts +0 -2
  1185. package/extensions/forms/Layout/index.js +1 -3
  1186. package/extensions/forms/Layout/index.js.map +1 -1
  1187. package/extensions/forms/Layout/style/dnb-card.css +3 -3
  1188. package/extensions/forms/Layout/style/dnb-card.min.css +1 -1
  1189. package/extensions/forms/Layout/style/dnb-card.scss +6 -4
  1190. package/extensions/forms/Layout/style/dnb-flex-container.css +9 -0
  1191. package/extensions/forms/Layout/style/dnb-flex-container.min.css +1 -1
  1192. package/extensions/forms/Layout/style/dnb-flex-container.scss +14 -0
  1193. package/extensions/forms/Layout/style/dnb-flex-item.css +9 -0
  1194. package/extensions/forms/Layout/style/dnb-flex-item.min.css +1 -1
  1195. package/extensions/forms/Layout/style/dnb-flex-item.scss +14 -0
  1196. package/extensions/forms/StepsLayout/Buttons.d.ts +1 -1
  1197. package/extensions/forms/StepsLayout/Buttons.js +2 -2
  1198. package/extensions/forms/StepsLayout/Buttons.js.map +1 -1
  1199. package/extensions/forms/StepsLayout/NextButton.d.ts +1 -1
  1200. package/extensions/forms/StepsLayout/NextButton.js.map +1 -1
  1201. package/extensions/forms/StepsLayout/PreviousButton.d.ts +1 -1
  1202. package/extensions/forms/StepsLayout/PreviousButton.js.map +1 -1
  1203. package/extensions/forms/StepsLayout/Step.d.ts +1 -1
  1204. package/extensions/forms/StepsLayout/Step.js +2 -2
  1205. package/extensions/forms/StepsLayout/Step.js.map +1 -1
  1206. package/extensions/forms/StepsLayout/StepsLayout.d.ts +1 -1
  1207. package/extensions/forms/StepsLayout/StepsLayout.js +3 -3
  1208. package/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  1209. package/extensions/forms/StepsLayout/style/dnb-steps-layout.css +11 -5
  1210. package/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  1211. package/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +10 -3
  1212. package/extensions/forms/Value/Boolean.d.ts +2 -3
  1213. package/extensions/forms/Value/Boolean.js +4 -4
  1214. package/extensions/forms/Value/Boolean.js.map +1 -1
  1215. package/extensions/forms/Value/Number.d.ts +2 -3
  1216. package/extensions/forms/Value/Number.js +5 -4
  1217. package/extensions/forms/Value/Number.js.map +1 -1
  1218. package/extensions/forms/Value/String.d.ts +2 -3
  1219. package/extensions/forms/Value/String.js +4 -4
  1220. package/extensions/forms/Value/String.js.map +1 -1
  1221. package/extensions/forms/Value/index.d.ts +0 -4
  1222. package/extensions/forms/Value/index.js +0 -4
  1223. package/extensions/forms/Value/index.js.map +1 -1
  1224. package/extensions/forms/ValueBlock/ValueBlock.d.ts +2 -3
  1225. package/extensions/forms/ValueBlock/ValueBlock.js +2 -2
  1226. package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  1227. package/extensions/forms/ValueBlock/index.js.map +1 -1
  1228. package/extensions/forms/hooks/index.d.ts +1 -0
  1229. package/extensions/forms/hooks/index.js +1 -0
  1230. package/extensions/forms/hooks/index.js.map +1 -0
  1231. package/extensions/forms/hooks/useDataValue.d.ts +12 -0
  1232. package/{es/extensions/forms/Field/hooks/useField.js → extensions/forms/hooks/useDataValue.js} +90 -53
  1233. package/extensions/forms/hooks/useDataValue.js.map +1 -0
  1234. package/extensions/forms/index.d.ts +4 -4
  1235. package/extensions/forms/index.js +3 -2
  1236. package/extensions/forms/index.js.map +1 -1
  1237. package/extensions/forms/style/dnb-forms.css +105 -29
  1238. package/extensions/forms/style/dnb-forms.min.css +1 -1
  1239. package/extensions/forms/style/index.d.ts +1 -0
  1240. package/extensions/forms/style/index.js +1 -0
  1241. package/extensions/forms/style/index.js.map +1 -0
  1242. package/extensions/forms/types.d.ts +95 -2
  1243. package/extensions/forms/types.js +60 -0
  1244. package/extensions/forms/types.js.map +1 -1
  1245. package/extensions/forms/utils/TestElement/style/dnb-test-element.css +2 -2
  1246. package/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -1
  1247. package/extensions/forms/utils/TestElement/style/dnb-test-element.scss +2 -2
  1248. package/extensions/forms/utils/index.d.ts +0 -1
  1249. package/extensions/forms/utils/index.js +0 -1
  1250. package/extensions/forms/utils/index.js.map +1 -1
  1251. package/extensions/forms/utils/useWasChanged.d.ts +5 -0
  1252. package/extensions/forms/utils/useWasChanged.js +56 -0
  1253. package/extensions/forms/utils/useWasChanged.js.map +1 -0
  1254. package/extensions/forms/variables.scss +3 -0
  1255. package/extensions/lib.d.ts +1 -2
  1256. package/extensions/payment-card/PaymentCard.js.map +1 -1
  1257. package/extensions/payment-card/style/dnb-payment-card.css +7 -7
  1258. package/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  1259. package/extensions/payment-card/style/dnb-payment-card.scss +7 -7
  1260. package/extensions/payment-card/utils/backgrounds/ung.js +1 -1
  1261. package/extensions/payment-card/utils/backgrounds/ung.js.map +1 -1
  1262. package/extensions/payment-card/utils/backgrounds/youth.js +1 -1
  1263. package/extensions/payment-card/utils/backgrounds/youth.js.map +1 -1
  1264. package/fragments/drawer-list/DrawerList.js +1 -1
  1265. package/fragments/drawer-list/DrawerList.js.map +1 -1
  1266. package/fragments/drawer-list/DrawerListPortal.js +2 -2
  1267. package/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  1268. package/fragments/drawer-list/style/dnb-drawer-list.scss +3 -1
  1269. package/package.json +2 -1
  1270. package/shared/Context.d.ts +2 -0
  1271. package/shared/Context.js.map +1 -1
  1272. package/shared/Eufemia.d.ts +1 -1
  1273. package/shared/Eufemia.js +2 -2
  1274. package/shared/Eufemia.js.map +1 -1
  1275. package/shared/helpers/withCamelCaseProps.js.map +1 -1
  1276. package/shared/helpers/withSnakeCaseProps.js.map +1 -1
  1277. package/shared/libs/Shortcuts.js.map +1 -1
  1278. package/shared/locales/en-GB.d.ts +1 -0
  1279. package/shared/locales/en-GB.js +1 -0
  1280. package/shared/locales/en-GB.js.map +1 -1
  1281. package/shared/locales/en-US.d.ts +1 -0
  1282. package/shared/locales/index.d.ts +2 -0
  1283. package/shared/locales/nb-NO.d.ts +1 -0
  1284. package/shared/locales/nb-NO.js +1 -0
  1285. package/shared/locales/nb-NO.js.map +1 -1
  1286. package/shared/useMedia.js +33 -23
  1287. package/shared/useMedia.js.map +1 -1
  1288. package/style/core/reset.scss +13 -3
  1289. package/style/core/utilities.scss +3 -1
  1290. package/style/dnb-ui-components.css +142 -20
  1291. package/style/dnb-ui-components.min.css +1 -1
  1292. package/style/dnb-ui-elements.css +23 -11
  1293. package/style/dnb-ui-elements.min.css +1 -1
  1294. package/style/dnb-ui-extensions.css +112 -36
  1295. package/style/dnb-ui-extensions.min.css +1 -1
  1296. package/style/themes/theme-eiendom/eiendom-theme-basis.css +25 -11
  1297. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  1298. package/style/themes/theme-eiendom/eiendom-theme-components.css +173 -160
  1299. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -1
  1300. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +112 -36
  1301. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  1302. package/style/themes/theme-sbanken/customisations.scss +3 -7
  1303. package/style/themes/theme-sbanken/properties.js +6 -6
  1304. package/style/themes/theme-sbanken/properties.js.map +1 -1
  1305. package/style/themes/theme-sbanken/properties.scss +6 -6
  1306. package/style/themes/theme-sbanken/sbanken-theme-basis.css +67 -47
  1307. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  1308. package/style/themes/theme-sbanken/sbanken-theme-components.css +386 -392
  1309. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +12 -2
  1310. package/style/themes/theme-sbanken/sbanken-theme-components.scss +7 -6
  1311. package/style/themes/theme-sbanken/sbanken-theme-elements.css +59 -23
  1312. package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  1313. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +112 -36
  1314. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  1315. package/style/themes/theme-ui/fonts.scss +8 -4
  1316. package/style/themes/theme-ui/ui-theme-basis.css +25 -11
  1317. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  1318. package/style/themes/theme-ui/ui-theme-basis.scss +4 -0
  1319. package/style/themes/theme-ui/ui-theme-components.css +173 -160
  1320. package/style/themes/theme-ui/ui-theme-components.min.css +4 -2
  1321. package/style/themes/theme-ui/ui-theme-elements.css +23 -11
  1322. package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  1323. package/style/themes/theme-ui/ui-theme-extensions.css +112 -36
  1324. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  1325. package/style/themes/theme-ui/ui-theme-tags.css +20 -11
  1326. package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  1327. package/style/themes/theme-ui/ui-theme-tags.scss +9 -4
  1328. package/umd/dnb-ui-basis.min.js +1 -1
  1329. package/umd/dnb-ui-components.min.js +1 -1
  1330. package/umd/dnb-ui-elements.min.js +1 -1
  1331. package/umd/dnb-ui-extensions.min.js +6 -6
  1332. package/umd/dnb-ui-lib.min.js +1 -1
  1333. package/cjs/extensions/forms/DataContext/SubmitButton.js.map +0 -1
  1334. package/cjs/extensions/forms/Field/FirstName.d.ts +0 -7
  1335. package/cjs/extensions/forms/Field/FirstName.js +0 -31
  1336. package/cjs/extensions/forms/Field/FirstName.js.map +0 -1
  1337. package/cjs/extensions/forms/Field/LastName.d.ts +0 -7
  1338. package/cjs/extensions/forms/Field/LastName.js +0 -31
  1339. package/cjs/extensions/forms/Field/LastName.js.map +0 -1
  1340. package/cjs/extensions/forms/Field/hooks/index.d.ts +0 -1
  1341. package/cjs/extensions/forms/Field/hooks/index.js.map +0 -1
  1342. package/cjs/extensions/forms/Field/hooks/useField.d.ts +0 -11
  1343. package/cjs/extensions/forms/Field/hooks/useField.js.map +0 -1
  1344. package/cjs/extensions/forms/FieldGroup/FieldGroup.d.ts +0 -17
  1345. package/cjs/extensions/forms/FieldGroup/FieldGroup.js +0 -95
  1346. package/cjs/extensions/forms/FieldGroup/FieldGroup.js.map +0 -1
  1347. package/cjs/extensions/forms/FieldGroup/index.d.ts +0 -2
  1348. package/cjs/extensions/forms/FieldGroup/index.js +0 -27
  1349. package/cjs/extensions/forms/FieldGroup/index.js.map +0 -1
  1350. package/cjs/extensions/forms/Layout/InfoCardSection.d.ts +0 -8
  1351. package/cjs/extensions/forms/Layout/InfoCardSection.js +0 -25
  1352. package/cjs/extensions/forms/Layout/InfoCardSection.js.map +0 -1
  1353. package/cjs/extensions/forms/Value/FirstName.d.ts +0 -7
  1354. package/cjs/extensions/forms/Value/FirstName.js +0 -28
  1355. package/cjs/extensions/forms/Value/FirstName.js.map +0 -1
  1356. package/cjs/extensions/forms/Value/LastName.d.ts +0 -7
  1357. package/cjs/extensions/forms/Value/LastName.js +0 -28
  1358. package/cjs/extensions/forms/Value/LastName.js.map +0 -1
  1359. package/cjs/extensions/forms/Value/hooks/index.d.ts +0 -1
  1360. package/cjs/extensions/forms/Value/hooks/index.js +0 -14
  1361. package/cjs/extensions/forms/Value/hooks/index.js.map +0 -1
  1362. package/cjs/extensions/forms/Value/hooks/useValue.d.ts +0 -2
  1363. package/cjs/extensions/forms/Value/hooks/useValue.js +0 -31
  1364. package/cjs/extensions/forms/Value/hooks/useValue.js.map +0 -1
  1365. package/cjs/extensions/forms/component-types.d.ts +0 -4
  1366. package/cjs/extensions/forms/component-types.js +0 -1
  1367. package/cjs/extensions/forms/component-types.js.map +0 -1
  1368. package/cjs/extensions/forms/field-types.d.ts +0 -52
  1369. package/cjs/extensions/forms/field-types.js +0 -1
  1370. package/cjs/extensions/forms/field-types.js.map +0 -1
  1371. package/cjs/extensions/forms/utils/components.d.ts +0 -3
  1372. package/cjs/extensions/forms/utils/components.js +0 -32
  1373. package/cjs/extensions/forms/utils/components.js.map +0 -1
  1374. package/cjs/extensions/forms/value-types.d.ts +0 -15
  1375. package/cjs/extensions/forms/value-types.js +0 -1
  1376. package/cjs/extensions/forms/value-types.js.map +0 -1
  1377. package/es/extensions/forms/DataContext/SubmitButton.js +0 -20
  1378. package/es/extensions/forms/DataContext/SubmitButton.js.map +0 -1
  1379. package/es/extensions/forms/Field/FirstName.d.ts +0 -7
  1380. package/es/extensions/forms/Field/FirstName.js +0 -19
  1381. package/es/extensions/forms/Field/FirstName.js.map +0 -1
  1382. package/es/extensions/forms/Field/LastName.d.ts +0 -7
  1383. package/es/extensions/forms/Field/LastName.js +0 -19
  1384. package/es/extensions/forms/Field/LastName.js.map +0 -1
  1385. package/es/extensions/forms/Field/hooks/index.d.ts +0 -1
  1386. package/es/extensions/forms/Field/hooks/index.js +0 -1
  1387. package/es/extensions/forms/Field/hooks/index.js.map +0 -1
  1388. package/es/extensions/forms/Field/hooks/useField.d.ts +0 -11
  1389. package/es/extensions/forms/Field/hooks/useField.js.map +0 -1
  1390. package/es/extensions/forms/FieldGroup/FieldGroup.d.ts +0 -17
  1391. package/es/extensions/forms/FieldGroup/FieldGroup.js +0 -77
  1392. package/es/extensions/forms/FieldGroup/FieldGroup.js.map +0 -1
  1393. package/es/extensions/forms/FieldGroup/index.d.ts +0 -2
  1394. package/es/extensions/forms/FieldGroup/index.js +0 -3
  1395. package/es/extensions/forms/FieldGroup/index.js.map +0 -1
  1396. package/es/extensions/forms/Layout/InfoCardSection.d.ts +0 -8
  1397. package/es/extensions/forms/Layout/InfoCardSection.js +0 -17
  1398. package/es/extensions/forms/Layout/InfoCardSection.js.map +0 -1
  1399. package/es/extensions/forms/Value/FirstName.d.ts +0 -7
  1400. package/es/extensions/forms/Value/FirstName.js +0 -16
  1401. package/es/extensions/forms/Value/FirstName.js.map +0 -1
  1402. package/es/extensions/forms/Value/LastName.d.ts +0 -7
  1403. package/es/extensions/forms/Value/LastName.js +0 -16
  1404. package/es/extensions/forms/Value/LastName.js.map +0 -1
  1405. package/es/extensions/forms/Value/hooks/index.d.ts +0 -1
  1406. package/es/extensions/forms/Value/hooks/index.js +0 -1
  1407. package/es/extensions/forms/Value/hooks/index.js.map +0 -1
  1408. package/es/extensions/forms/Value/hooks/useValue.d.ts +0 -2
  1409. package/es/extensions/forms/Value/hooks/useValue.js +0 -22
  1410. package/es/extensions/forms/Value/hooks/useValue.js.map +0 -1
  1411. package/es/extensions/forms/component-types.d.ts +0 -4
  1412. package/es/extensions/forms/component-types.js +0 -1
  1413. package/es/extensions/forms/component-types.js.map +0 -1
  1414. package/es/extensions/forms/field-types.d.ts +0 -52
  1415. package/es/extensions/forms/field-types.js +0 -1
  1416. package/es/extensions/forms/field-types.js.map +0 -1
  1417. package/es/extensions/forms/utils/components.d.ts +0 -3
  1418. package/es/extensions/forms/utils/components.js +0 -23
  1419. package/es/extensions/forms/utils/components.js.map +0 -1
  1420. package/es/extensions/forms/value-types.d.ts +0 -15
  1421. package/es/extensions/forms/value-types.js +0 -1
  1422. package/es/extensions/forms/value-types.js.map +0 -1
  1423. package/extensions/forms/DataContext/SubmitButton.js +0 -20
  1424. package/extensions/forms/DataContext/SubmitButton.js.map +0 -1
  1425. package/extensions/forms/Field/FirstName.d.ts +0 -7
  1426. package/extensions/forms/Field/FirstName.js +0 -19
  1427. package/extensions/forms/Field/FirstName.js.map +0 -1
  1428. package/extensions/forms/Field/LastName.d.ts +0 -7
  1429. package/extensions/forms/Field/LastName.js +0 -19
  1430. package/extensions/forms/Field/LastName.js.map +0 -1
  1431. package/extensions/forms/Field/hooks/index.d.ts +0 -1
  1432. package/extensions/forms/Field/hooks/index.js +0 -1
  1433. package/extensions/forms/Field/hooks/index.js.map +0 -1
  1434. package/extensions/forms/Field/hooks/useField.d.ts +0 -11
  1435. package/extensions/forms/Field/hooks/useField.js.map +0 -1
  1436. package/extensions/forms/FieldGroup/FieldGroup.d.ts +0 -17
  1437. package/extensions/forms/FieldGroup/FieldGroup.js +0 -83
  1438. package/extensions/forms/FieldGroup/FieldGroup.js.map +0 -1
  1439. package/extensions/forms/FieldGroup/index.d.ts +0 -2
  1440. package/extensions/forms/FieldGroup/index.js +0 -3
  1441. package/extensions/forms/FieldGroup/index.js.map +0 -1
  1442. package/extensions/forms/Layout/InfoCardSection.d.ts +0 -8
  1443. package/extensions/forms/Layout/InfoCardSection.js +0 -17
  1444. package/extensions/forms/Layout/InfoCardSection.js.map +0 -1
  1445. package/extensions/forms/Value/FirstName.d.ts +0 -7
  1446. package/extensions/forms/Value/FirstName.js +0 -16
  1447. package/extensions/forms/Value/FirstName.js.map +0 -1
  1448. package/extensions/forms/Value/LastName.d.ts +0 -7
  1449. package/extensions/forms/Value/LastName.js +0 -16
  1450. package/extensions/forms/Value/LastName.js.map +0 -1
  1451. package/extensions/forms/Value/hooks/index.d.ts +0 -1
  1452. package/extensions/forms/Value/hooks/index.js +0 -1
  1453. package/extensions/forms/Value/hooks/index.js.map +0 -1
  1454. package/extensions/forms/Value/hooks/useValue.d.ts +0 -2
  1455. package/extensions/forms/Value/hooks/useValue.js +0 -22
  1456. package/extensions/forms/Value/hooks/useValue.js.map +0 -1
  1457. package/extensions/forms/component-types.d.ts +0 -4
  1458. package/extensions/forms/component-types.js +0 -1
  1459. package/extensions/forms/component-types.js.map +0 -1
  1460. package/extensions/forms/field-types.d.ts +0 -52
  1461. package/extensions/forms/field-types.js +0 -1
  1462. package/extensions/forms/field-types.js.map +0 -1
  1463. package/extensions/forms/utils/components.d.ts +0 -3
  1464. package/extensions/forms/utils/components.js +0 -23
  1465. package/extensions/forms/utils/components.js.map +0 -1
  1466. package/extensions/forms/value-types.d.ts +0 -15
  1467. package/extensions/forms/value-types.js +0 -1
  1468. package/extensions/forms/value-types.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerInput.js","names":["React","PropTypes","addDays","addMonths","addYears","isValid","parseISO","classnames","TextMask","Button","Input","SubmitButton","keycode","warn","validateDOMAttributes","dispatchCustomElementEvent","convertStringToDate","DatePickerContext","DatePickerInput","PureComponent","constructor","props","_defineProperty","_listenForPropChanges","focusState","e","focusMode","success","clipboardData","window","getData","preventDefault","separators","possibleFormats","forEach","date","sep","push","replace","split","reverse","join","i","l","length","date_format","mode","state","context","setState","updateState","hoverDate","hasHadValidDate","startDate","endDate","event","_objectSpread","callOnChangeHandler","changeMonthViews","isRange","getDates","reduce","acc","returnObject","getReturnObject","is_valid","is_valid_start_date","is_valid_end_date","typedDates","start_date","end_date","keyCode","target","isDate","getAttribute","match","isInRange","count","callOnChange","wait","selectAll","focus","setSelectionRange","selectionStart","selectionEnd","selectStart","persist","prepareCounting","size","parseFloat","firstSelectionStart","secondSelectionStart","test","index","refList","findIndex","current","nextSibling","prevSibling","endPos","value","setDate","type","fallback","year","getFullYear","month","getMonth","day","getDate","Date","isValidDate","callOnChangeAsInvalid","callOnType","params","id","startDateList","generateDateList","endDateList","createElement","className","_span","maskOrder","separatorRexExp","maskList","cur","shift","_startDayRef","createRef","_startMonthRef","_startYearRef","_endDayRef","_endMonthRef","_endYearRef","componentWillUnmount","_shortcuts","remove","osShortcut","getPlaceholderChar","indexOf","maskPlaceholder","map","slice","placeholderChar","input_element","translation","DatePicker","isRangeLabel","onKeyDown","onKeyDownHandler","onPaste","shortcutHandler","onFocus","onFocusHandler","onBlur","onBlurHandler","DateField","isValidElement","InputElement","inputSizeClassName","Fragment","key","_extends","mask","inputRef","onChange","hidden","formatDate","open_picker_text","selectedDateTitle","render","_this$props","title","submitAttributes","onSubmit","showInput","locale","disabled","skeleton","opened","status","status_state","status_props","attributes","_objectWithoutProperties","_excluded","UsedButton","innerRef","ref","lang","code","label","input_state","renderInputElement","submit_element","icon","variant","on_submit","on_click","process","env","NODE_ENV","propTypes","string","instanceOf","RegExp","object","bool","oneOf","oneOfType","func","node","select","guide","showMask","keepCharPositions","autoComplete","autoCapitalize","spellCheck","autoCorrect","t","Promise","r","setTimeout"],"sources":["../../../../src/components/date-picker/DatePickerInput.js"],"sourcesContent":["/**\n * Web DatePicker Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\n\n// date-fns\nimport addDays from 'date-fns/addDays'\nimport addMonths from 'date-fns/addMonths'\nimport addYears from 'date-fns/addYears'\nimport isValid from 'date-fns/isValid'\nimport parseISO from 'date-fns/parseISO'\n\nimport classnames from 'classnames'\nimport TextMask from '../input-masked/TextMask'\nimport Button from '../button/Button'\nimport Input, { SubmitButton } from '../input/Input'\nimport keycode from 'keycode'\nimport {\n warn,\n validateDOMAttributes,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport { convertStringToDate } from './DatePickerCalc'\nimport DatePickerContext from './DatePickerContext'\n\nexport default class DatePickerInput extends React.PureComponent {\n static contextType = DatePickerContext\n\n static propTypes = {\n id: PropTypes.string,\n title: PropTypes.string,\n selectedDateTitle: PropTypes.string,\n maskOrder: PropTypes.string,\n maskPlaceholder: PropTypes.string,\n separatorRexExp: PropTypes.instanceOf(RegExp),\n submitAttributes: PropTypes.object,\n isRange: PropTypes.bool,\n size: PropTypes.oneOf(['default', 'small', 'medium', 'large']),\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n input_element: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n locale: PropTypes.object,\n disabled: PropTypes.bool,\n skeleton: PropTypes.bool,\n opened: PropTypes.bool,\n showInput: PropTypes.bool,\n onChange: PropTypes.func,\n onSubmit: PropTypes.func,\n onFocus: PropTypes.func,\n }\n\n static defaultProps = {\n id: null,\n title: null,\n selectedDateTitle: null,\n maskOrder: 'dd/mm/yyyy',\n maskPlaceholder: 'dd/mm/åååå',\n separatorRexExp: /[-/ ]/g,\n submitAttributes: null,\n isRange: null,\n size: null,\n status: null,\n status_state: 'error',\n status_props: null,\n input_element: null,\n disabled: null,\n locale: null,\n skeleton: null,\n opened: false,\n showInput: null,\n onChange: null,\n onSubmit: null,\n onFocus: null,\n }\n\n state = {\n _listenForPropChanges: true,\n focusState: 'virgin',\n }\n\n constructor(props) {\n super(props)\n\n const separators = props.maskOrder.match(props.separatorRexExp)\n this.maskList = props.maskOrder\n .split(props.separatorRexExp)\n .reduce((acc, cur) => {\n if (cur) {\n acc.push(cur)\n if (separators.length > 0) {\n acc.push(separators.shift())\n }\n }\n return acc\n }, [])\n\n this._startDayRef = React.createRef()\n this._startMonthRef = React.createRef()\n this._startYearRef = React.createRef()\n this._endDayRef = React.createRef()\n this._endMonthRef = React.createRef()\n this._endYearRef = React.createRef()\n }\n\n componentWillUnmount() {\n if (this._shortcuts) {\n this._shortcuts.remove(this.osShortcut)\n }\n }\n\n shortcutHandler = async (e) => {\n if (this.focusMode) {\n const success = (\n e.clipboardData ||\n (typeof window !== 'undefined' && window.clipboardData)\n ).getData('text')\n if (success) {\n e.preventDefault()\n try {\n const separators = ['.', '/']\n const possibleFormats = ['yyyy-MM-dd']\n\n possibleFormats.forEach((date) => {\n separators.forEach((sep) => {\n possibleFormats.push(date.replace(/-/g, sep))\n })\n })\n possibleFormats.forEach((date) => {\n possibleFormats.push(date.split('').reverse().join(''))\n })\n\n let date\n for (let i = 0, l = possibleFormats.length; i < l; ++i) {\n date = convertStringToDate(success, {\n date_format: possibleFormats[i],\n })\n if (date) {\n break\n }\n }\n const mode = this.focusMode === 'start' ? 'startDate' : 'endDate'\n if (date && !this.state[mode]) {\n this.context.setState({\n [mode]: date,\n })\n }\n } catch (e) {\n warn(e)\n }\n }\n }\n }\n\n callOnChangeAsInvalid = (state) => {\n this.context.updateState(\n {\n hoverDate: null,\n },\n () => {\n if (this.context.hasHadValidDate) {\n const { startDate, endDate, event } = {\n ...this.context,\n ...state,\n }\n this.context.callOnChangeHandler({ startDate, endDate, event })\n }\n }\n )\n }\n\n callOnChange = ({ startDate, endDate, event }) => {\n const state = { changeMonthViews: true }\n if (typeof startDate !== 'undefined' && isValid(startDate)) {\n state.startDate = startDate\n }\n if (!this.props.isRange) {\n endDate = startDate\n }\n if (typeof endDate !== 'undefined' && isValid(endDate)) {\n state.endDate = endDate\n }\n\n this.context.updateState(state, () => {\n if (\n (typeof startDate !== 'undefined' && isValid(startDate)) ||\n (typeof endDate !== 'undefined' && isValid(endDate))\n ) {\n this.context.callOnChangeHandler({ event })\n }\n })\n }\n\n callOnType = ({ event }) => {\n const getDates = () =>\n ['start', 'end'].reduce((acc, mode) => {\n acc[`${mode}Date`] = [\n this[`_${mode}Year`] || this.context[`__${mode}Year`] || 'yyyy',\n this[`_${mode}Month`] || this.context[`__${mode}Month`] || 'mm',\n this[`_${mode}Day`] || this.context[`__${mode}Day`] || 'dd',\n ].join('-')\n return acc\n }, {})\n\n // Get the typed dates, so we can ...\n let { startDate, endDate } = getDates()\n\n startDate = parseISO(startDate)\n endDate = parseISO(endDate)\n\n // ... check if they where valid\n if (!isValid(startDate)) {\n startDate = null\n }\n if (!isValid(endDate)) {\n endDate = null\n }\n\n let returnObject = this.context.getReturnObject({\n startDate,\n endDate,\n event,\n })\n\n // Now, lets correct\n if (\n returnObject.is_valid === false ||\n returnObject.is_valid_start_date === false ||\n returnObject.is_valid_end_date === false\n ) {\n const { startDate, endDate } = getDates()\n\n const typedDates = this.props.isRange\n ? {\n start_date: startDate,\n end_date: endDate,\n }\n : { date: startDate }\n\n returnObject = {\n ...returnObject,\n ...typedDates,\n }\n }\n\n dispatchCustomElementEvent(this.context, 'on_type', returnObject)\n }\n\n prepareCounting = async ({ keyCode, target, event }) => {\n try {\n const isDate = target\n .getAttribute('class')\n .match(/__input--([day|month|year]+)($|\\s)/)[1]\n\n const isInRange = target\n .getAttribute('id')\n .match(/-([start|end]+)-/)[1]\n\n let date =\n isInRange === 'start'\n ? this.context.startDate\n : this.context.endDate\n\n // do nothing if date is not set yet\n if (!date) {\n return\n }\n\n const count = keyCode === 'up' ? 1 : -1\n\n if (keyCode === 'up' || keyCode === 'down') {\n switch (isDate) {\n case 'day':\n date = addDays(date, count)\n break\n case 'month':\n date = addMonths(date, count)\n break\n case 'year':\n date = addYears(date, count)\n break\n }\n }\n\n this.callOnChange({\n [isInRange === 'start' ? 'startDate' : 'endDate']: date,\n event,\n })\n\n await wait(1) // to get the correct position afterwards\n\n selectAll(target)\n } catch (e) {\n warn(e)\n }\n }\n\n selectStart = (target) => {\n target.focus()\n target.setSelectionRange(0, 0)\n }\n\n onFocusHandler = (event) => {\n try {\n selectAll(event.target)\n } catch (e) {\n warn(e)\n }\n\n this.setState({\n focusState: 'focus',\n _listenForPropChanges: false,\n })\n }\n\n onBlurHandler = () => {\n this.focusMode = null\n this.setState({\n focusState: 'blur',\n _listenForPropChanges: false,\n })\n }\n\n onKeyDownHandler = async (event) => {\n const keyCode = keycode(event)\n const target = event.target\n\n if (target.selectionStart !== target.selectionEnd) {\n this.selectStart(target)\n }\n\n // only to process key up and down press\n switch (keyCode) {\n case 'up':\n case 'down':\n event.persist()\n event.preventDefault()\n this.prepareCounting({ event, keyCode, target })\n return false\n case 'tab':\n // case 'backspace': // We need backspace down here\n return false\n }\n\n // the rest is for value entry\n\n const size = parseFloat(target.getAttribute('size'))\n const firstSelectionStart = target.selectionStart\n\n await wait(1) // to get the correct position afterwards\n\n const secondSelectionStart = target.selectionStart\n const isValid = /[0-9]/.test(keyCode)\n const index = this.refList.findIndex(\n ({ current }) => current === target\n )\n\n if (\n index < this.refList.length - 1 &&\n ((secondSelectionStart === size &&\n isValid &&\n keyCode !== 'left' &&\n keyCode !== 'backspace') ||\n (firstSelectionStart === size && keyCode === 'right'))\n ) {\n try {\n // stop in case there is no next input element\n if (!this.refList[index + 1].current) {\n return\n }\n const nextSibling = this.refList[index + 1].current\n if (nextSibling) {\n nextSibling.focus()\n nextSibling.setSelectionRange(0, 0)\n }\n } catch (e) {\n warn(e)\n }\n } else if (firstSelectionStart === 0 && index > 0) {\n switch (keyCode) {\n case 'left':\n case 'backspace':\n try {\n const prevSibling = this.refList[index - 1].current\n if (prevSibling) {\n const endPos = prevSibling.value.length\n prevSibling.focus()\n prevSibling.setSelectionRange(endPos, endPos)\n }\n } catch (e) {\n warn(e)\n }\n break\n }\n }\n }\n\n set_startDay = (event) => {\n this.setDate(event, 'start', 'Day')\n }\n\n set_startMonth = (event) => {\n this.setDate(event, 'start', 'Month')\n }\n\n set_startYear = (event) => {\n this.setDate(event, 'start', 'Year')\n }\n\n set_endDay = (event) => {\n this.setDate(event, 'end', 'Day')\n }\n\n set_endMonth = (event) => {\n this.setDate(event, 'end', 'Month')\n }\n\n set_endYear = (event) => {\n this.setDate(event, 'end', 'Year')\n }\n\n setDate = (event, mode, type) => {\n event.persist() // since we have later a state update and afterwards the callback\n\n const value = event.target.value\n\n this[`_${mode}${type}`] = value\n\n if (this.context[`${mode}Date`]) {\n this[`tmp_${mode}Date`] = this.context[`${mode}Date`]\n }\n\n const fallback = this[`tmp_${mode}Date`]\n\n // provide fallbacks to create a temp fallback\n const year =\n this[`_${mode}Year`] || (fallback && fallback.getFullYear())\n const month =\n this[`_${mode}Month`] || (fallback && fallback.getMonth() + 1)\n const day = this[`_${mode}Day`] || (fallback && fallback.getDate())\n\n // calculate new date\n const date = new Date(\n parseFloat(year),\n parseFloat(month) - 1,\n parseFloat(day)\n )\n\n const isValidDate =\n !/[^0-9]/.test(day) &&\n !/[^0-9]/.test(month) &&\n !/[^0-9]/.test(year) &&\n isValid(date) &&\n date.getDate() == parseFloat(day) &&\n date.getMonth() + 1 == parseFloat(month) &&\n date.getFullYear() == parseFloat(year)\n\n // update the date\n if (isValidDate) {\n this.callOnChange({\n [`${mode}Date`]: date,\n event,\n })\n } else {\n this.context.updateState({ [`${mode}Date`]: null })\n this.context.updateState({ [`__${mode}${type}`]: value })\n\n this.callOnChangeAsInvalid({\n [`${mode}Date`]: null,\n event,\n })\n }\n\n this.callOnType({\n event,\n })\n }\n\n renderInputElement = (params) => {\n const { id, isRange } = this.props\n this.refList = []\n const startDateList = this.generateDateList(params, 'start')\n const endDateList = this.generateDateList(params, 'end')\n return (\n <span id={`${id}-input`} className=\"dnb-date-picker__input__wrapper\">\n {startDateList}\n {isRange && (\n <span className=\"dnb-date-picker--separator\" aria-hidden>\n {' – '}\n </span>\n )}\n {isRange && endDateList}\n </span>\n )\n }\n\n getPlaceholderChar(value) {\n const index = this.props.maskOrder.indexOf(value)\n return this.props.maskPlaceholder[index]\n }\n\n generateDateList(params, mode) {\n return this.maskList.map((value, i) => {\n const state = value.slice(0, 1)\n const placeholderChar = this.getPlaceholderChar(value)\n const { input_element, separatorRexExp, isRange, size } = this.props\n const { day, month, year } = this.context.translation.DatePicker\n const isRangeLabel = isRange\n ? `${this.context.translation.DatePicker[mode]} `\n : ''\n\n if (!separatorRexExp.test(value)) {\n if (!input_element) {\n params = {\n ...params,\n onKeyDown: this.onKeyDownHandler,\n onPaste: this.shortcutHandler,\n onFocus: (e) => {\n this.focusMode = mode\n this.onFocusHandler(e)\n },\n onBlur: this.onBlurHandler,\n placeholderChar,\n }\n }\n\n // this makes it possible to use a vanilla <input /> like: input_element=\"input\"\n const DateField =\n input_element && React.isValidElement(input_element)\n ? input_element\n : InputElement\n\n const inputSizeClassName =\n size && `dnb-date-picker__input--${size}`\n\n switch (state) {\n case 'd':\n this.refList.push(this[`_${mode}DayRef`])\n\n return (\n <React.Fragment key={'dd' + i}>\n <DateField\n {...params}\n id={`${this.props.id}-${mode}-day`}\n key={'di' + i}\n className={classnames(\n params.className,\n 'dnb-date-picker__input',\n 'dnb-date-picker__input--day',\n inputSizeClassName\n )}\n size=\"2\"\n mask={[/[0-3]/, /[0-9]/]}\n inputRef={this[`_${mode}DayRef`]}\n onChange={this[`set_${mode}Day`]}\n value={this.context[`__${mode}Day`] || ''}\n aria-labelledby={`${this.props.id}-${mode}-day-label`}\n />\n <label\n key={'dl' + i}\n hidden\n id={`${this.props.id}-${mode}-day-label`}\n >\n {isRangeLabel + day}\n </label>\n </React.Fragment>\n )\n case 'm':\n this.refList.push(this[`_${mode}MonthRef`])\n\n return (\n <React.Fragment key={'mm' + i}>\n <DateField\n {...params}\n id={`${this.props.id}-${mode}-month`}\n key={'mi' + i}\n className={classnames(\n params.className,\n 'dnb-date-picker__input',\n 'dnb-date-picker__input--month',\n inputSizeClassName\n )}\n size=\"2\"\n mask={[/[0-1]/, /[0-9]/]}\n inputRef={this[`_${mode}MonthRef`]}\n onChange={this[`set_${mode}Month`]}\n value={this.context[`__${mode}Month`] || ''}\n aria-labelledby={`${this.props.id}-${mode}-month-label`}\n />\n <label\n key={'ml' + i}\n hidden\n id={`${this.props.id}-${mode}-month-label`}\n >\n {isRangeLabel + month}\n </label>\n </React.Fragment>\n )\n case 'y':\n this.refList.push(this[`_${mode}YearRef`])\n\n return (\n <React.Fragment key={'yy' + i}>\n <DateField\n {...params}\n id={`${this.props.id}-${mode}-year`}\n key={'yi' + i}\n className={classnames(\n params.className,\n 'dnb-date-picker__input',\n 'dnb-date-picker__input--year',\n inputSizeClassName\n )}\n size=\"4\"\n mask={[/[1-2]/, /[0-9]/, /[0-9]/, /[0-9]/]}\n inputRef={this[`_${mode}YearRef`]}\n onChange={this[`set_${mode}Year`]}\n value={this.context[`__${mode}Year`] || ''}\n aria-labelledby={`${this.props.id}-${mode}-year-label`}\n />\n <label\n key={'yl' + i}\n hidden\n id={`${this.props.id}-${mode}-year-label`}\n >\n {isRangeLabel + year}\n </label>\n </React.Fragment>\n )\n }\n }\n return (\n <span\n key={'s' + i}\n className=\"dnb-date-picker--separator\"\n aria-hidden\n >\n {placeholderChar}\n </span>\n )\n })\n }\n\n formatDate() {\n const { open_picker_text } = this.context.translation.DatePicker\n\n const { selectedDateTitle } = this.props\n\n return selectedDateTitle\n ? `${selectedDateTitle}, ${open_picker_text}`\n : open_picker_text\n }\n\n render() {\n const {\n id,\n title,\n\n submitAttributes,\n isRange, // eslint-disable-line\n maskOrder, // eslint-disable-line\n maskPlaceholder, // eslint-disable-line\n separatorRexExp, // eslint-disable-line\n onChange, // eslint-disable-line\n onFocus, // eslint-disable-line\n onSubmit, // eslint-disable-line\n selectedDateTitle, // eslint-disable-line\n showInput, // eslint-disable-line\n input_element,\n locale,\n disabled,\n skeleton,\n opened,\n size,\n status,\n status_state,\n status_props,\n\n ...attributes\n } = this.props\n\n const { focusState } = this.state\n\n validateDOMAttributes(this.props, attributes)\n validateDOMAttributes(null, submitAttributes)\n\n const UsedButton = showInput ? SubmitButton : Button\n if (!showInput) {\n // Use Button inner ref\n submitAttributes.innerRef = submitAttributes.ref\n submitAttributes.ref = null\n }\n\n return (\n <fieldset className=\"dnb-date-picker__fieldset\" lang={locale?.code}>\n {this.context.props.label && (\n <legend className=\"dnb-sr-only\">\n {this.context.props.label}\n </legend>\n )}\n <Input\n id={`${id}__input`}\n input_state={disabled ? 'disabled' : focusState}\n input_element={\n input_element && typeof input_element !== 'string'\n ? typeof input_element === 'function'\n ? input_element(this.props)\n : input_element\n : this.renderInputElement\n }\n disabled={disabled || skeleton}\n skeleton={skeleton}\n size={size}\n status={!opened ? status : null}\n status_state={status_state}\n {...status_props}\n submit_element={\n <UsedButton\n id={id}\n disabled={disabled}\n skeleton={skeleton}\n className={classnames(\n showInput && 'dnb-button--input-button',\n opened ? 'dnb-button--active' : null\n )}\n aria-label={this.formatDate()}\n title={title}\n size={size}\n status={status}\n status_state={status_state}\n type=\"button\"\n icon=\"calendar\"\n variant=\"secondary\"\n on_submit={onSubmit}\n on_click={onSubmit}\n {...submitAttributes}\n {...status_props}\n />\n }\n lang={locale?.code}\n {...attributes}\n />\n </fieldset>\n )\n }\n}\n\nconst selectAll = (target) => {\n target.focus()\n target.select()\n}\n\nconst InputElement = (props) => {\n return (\n <TextMask\n guide={true}\n showMask={true}\n keepCharPositions={false} // so we can overwrite next value, if it already exists\n autoComplete=\"off\"\n autoCapitalize=\"none\"\n spellCheck={false}\n autoCorrect=\"off\"\n {...props}\n />\n )\n}\n\nconst wait = (t) => new Promise((r) => setTimeout(r, t))\n"],"mappings":"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"}
1
+ {"version":3,"file":"DatePickerInput.js","names":["React","PropTypes","addDays","addMonths","addYears","isValid","parseISO","classnames","TextMask","Button","Input","SubmitButton","keycode","warn","validateDOMAttributes","dispatchCustomElementEvent","convertStringToDate","DatePickerContext","DatePickerInput","PureComponent","constructor","props","_defineProperty","_listenForPropChanges","focusState","e","focusMode","success","clipboardData","window","getData","preventDefault","separators","possibleFormats","forEach","date","sep","push","replace","split","reverse","join","i","l","length","date_format","mode","state","context","setState","updateState","hoverDate","hasHadValidDate","startDate","endDate","event","_objectSpread","callOnChangeHandler","changeMonthViews","isRange","getDates","reduce","acc","returnObject","getReturnObject","is_valid","is_valid_start_date","is_valid_end_date","typedDates","start_date","end_date","keyCode","target","isDate","getAttribute","match","isInRange","count","callOnChange","wait","selectAll","focus","setSelectionRange","selectionStart","selectionEnd","selectStart","persist","prepareCounting","size","parseFloat","firstSelectionStart","secondSelectionStart","test","index","refList","findIndex","current","nextSibling","prevSibling","endPos","value","setDate","type","fallback","year","getFullYear","month","getMonth","day","getDate","Date","isValidDate","callOnChangeAsInvalid","callOnType","params","id","startDateList","generateDateList","endDateList","createElement","className","_span","maskOrder","separatorRexExp","maskList","cur","shift","_startDayRef","createRef","_startMonthRef","_startYearRef","_endDayRef","_endMonthRef","_endYearRef","componentWillUnmount","_shortcuts","remove","osShortcut","getPlaceholderChar","indexOf","maskPlaceholder","map","slice","placeholderChar","input_element","translation","DatePicker","isRangeLabel","onKeyDown","onKeyDownHandler","onPaste","shortcutHandler","onFocus","onFocusHandler","onBlur","onBlurHandler","DateField","isValidElement","InputElement","inputSizeClassName","Fragment","key","_extends","mask","inputRef","onChange","hidden","formatDate","open_picker_text","selectedDateTitle","render","_this$props","title","submitAttributes","onSubmit","showInput","locale","disabled","skeleton","opened","status","status_state","status_props","attributes","_objectWithoutProperties","_excluded","UsedButton","innerRef","ref","lang","code","label","input_state","renderInputElement","submit_element","icon","variant","on_submit","on_click","process","env","NODE_ENV","propTypes","string","instanceOf","RegExp","object","bool","oneOf","oneOfType","func","node","select","guide","showMask","keepCharPositions","autoComplete","autoCapitalize","spellCheck","autoCorrect","t","Promise","r","setTimeout"],"sources":["../../../../src/components/date-picker/DatePickerInput.js"],"sourcesContent":["/**\n * Web DatePicker Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\n\n// date-fns\nimport addDays from 'date-fns/addDays'\nimport addMonths from 'date-fns/addMonths'\nimport addYears from 'date-fns/addYears'\nimport isValid from 'date-fns/isValid'\nimport parseISO from 'date-fns/parseISO'\n\nimport classnames from 'classnames'\nimport TextMask from '../input-masked/TextMask'\nimport Button from '../button/Button'\nimport Input, { SubmitButton } from '../input/Input'\nimport keycode from 'keycode'\nimport {\n warn,\n validateDOMAttributes,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport { convertStringToDate } from './DatePickerCalc'\nimport DatePickerContext from './DatePickerContext'\n\nexport default class DatePickerInput extends React.PureComponent {\n static contextType = DatePickerContext\n\n static propTypes = {\n id: PropTypes.string,\n title: PropTypes.string,\n selectedDateTitle: PropTypes.string,\n maskOrder: PropTypes.string,\n maskPlaceholder: PropTypes.string,\n separatorRexExp: PropTypes.instanceOf(RegExp),\n submitAttributes: PropTypes.object,\n isRange: PropTypes.bool,\n size: PropTypes.oneOf(['default', 'small', 'medium', 'large']),\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n input_element: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n locale: PropTypes.object,\n disabled: PropTypes.bool,\n skeleton: PropTypes.bool,\n opened: PropTypes.bool,\n showInput: PropTypes.bool,\n onChange: PropTypes.func,\n onSubmit: PropTypes.func,\n onFocus: PropTypes.func,\n }\n\n static defaultProps = {\n id: null,\n title: null,\n selectedDateTitle: null,\n maskOrder: 'dd/mm/yyyy',\n maskPlaceholder: 'dd/mm/åååå',\n separatorRexExp: /[-/ ]/g,\n submitAttributes: null,\n isRange: null,\n size: null,\n status: null,\n status_state: 'error',\n status_props: null,\n input_element: null,\n disabled: null,\n locale: null,\n skeleton: null,\n opened: false,\n showInput: null,\n onChange: null,\n onSubmit: null,\n onFocus: null,\n }\n\n state = {\n _listenForPropChanges: true,\n focusState: 'virgin',\n }\n\n constructor(props) {\n super(props)\n\n const separators = props.maskOrder.match(props.separatorRexExp)\n this.maskList = props.maskOrder\n .split(props.separatorRexExp)\n .reduce((acc, cur) => {\n if (cur) {\n acc.push(cur)\n if (separators.length > 0) {\n acc.push(separators.shift())\n }\n }\n return acc\n }, [])\n\n this._startDayRef = React.createRef()\n this._startMonthRef = React.createRef()\n this._startYearRef = React.createRef()\n this._endDayRef = React.createRef()\n this._endMonthRef = React.createRef()\n this._endYearRef = React.createRef()\n }\n\n componentWillUnmount() {\n if (this._shortcuts) {\n this._shortcuts.remove(this.osShortcut)\n }\n }\n\n shortcutHandler = async (e) => {\n if (this.focusMode) {\n const success = (\n e.clipboardData ||\n (typeof window !== 'undefined' && window.clipboardData)\n ).getData('text')\n if (success) {\n e.preventDefault()\n try {\n const separators = ['.', '/']\n const possibleFormats = ['yyyy-MM-dd']\n\n possibleFormats.forEach((date) => {\n separators.forEach((sep) => {\n possibleFormats.push(date.replace(/-/g, sep))\n })\n })\n possibleFormats.forEach((date) => {\n possibleFormats.push(date.split('').reverse().join(''))\n })\n\n let date\n for (let i = 0, l = possibleFormats.length; i < l; ++i) {\n date = convertStringToDate(success, {\n date_format: possibleFormats[i],\n })\n if (date) {\n break\n }\n }\n const mode = this.focusMode === 'start' ? 'startDate' : 'endDate'\n if (date && !this.state[mode]) {\n this.context.setState({\n [mode]: date,\n })\n }\n } catch (e) {\n warn(e)\n }\n }\n }\n }\n\n callOnChangeAsInvalid = (state) => {\n this.context.updateState(\n {\n hoverDate: null,\n },\n () => {\n if (this.context.hasHadValidDate) {\n const { startDate, endDate, event } = {\n ...this.context,\n ...state,\n }\n this.context.callOnChangeHandler({ startDate, endDate, event })\n }\n }\n )\n }\n\n callOnChange = ({ startDate, endDate, event }) => {\n const state = { changeMonthViews: true }\n if (typeof startDate !== 'undefined' && isValid(startDate)) {\n state.startDate = startDate\n }\n if (!this.props.isRange) {\n endDate = startDate\n }\n if (typeof endDate !== 'undefined' && isValid(endDate)) {\n state.endDate = endDate\n }\n\n this.context.updateState(state, () => {\n if (\n (typeof startDate !== 'undefined' && isValid(startDate)) ||\n (typeof endDate !== 'undefined' && isValid(endDate))\n ) {\n this.context.callOnChangeHandler({ event })\n }\n })\n }\n\n callOnType = ({ event }) => {\n const getDates = () =>\n ['start', 'end'].reduce((acc, mode) => {\n acc[`${mode}Date`] = [\n this[`_${mode}Year`] || this.context[`__${mode}Year`] || 'yyyy',\n this[`_${mode}Month`] || this.context[`__${mode}Month`] || 'mm',\n this[`_${mode}Day`] || this.context[`__${mode}Day`] || 'dd',\n ].join('-')\n return acc\n }, {})\n\n // Get the typed dates, so we can ...\n let { startDate, endDate } = getDates()\n\n startDate = parseISO(startDate)\n endDate = parseISO(endDate)\n\n // ... check if they were valid\n if (!isValid(startDate)) {\n startDate = null\n }\n if (!isValid(endDate)) {\n endDate = null\n }\n\n let returnObject = this.context.getReturnObject({\n startDate,\n endDate,\n event,\n })\n\n // Now, lets correct\n if (\n returnObject.is_valid === false ||\n returnObject.is_valid_start_date === false ||\n returnObject.is_valid_end_date === false\n ) {\n const { startDate, endDate } = getDates()\n\n const typedDates = this.props.isRange\n ? {\n start_date: startDate,\n end_date: endDate,\n }\n : { date: startDate }\n\n returnObject = {\n ...returnObject,\n ...typedDates,\n }\n }\n\n dispatchCustomElementEvent(this.context, 'on_type', returnObject)\n }\n\n prepareCounting = async ({ keyCode, target, event }) => {\n try {\n const isDate = target\n .getAttribute('class')\n .match(/__input--([day|month|year]+)($|\\s)/)[1]\n\n const isInRange = target\n .getAttribute('id')\n .match(/-([start|end]+)-/)[1]\n\n let date =\n isInRange === 'start'\n ? this.context.startDate\n : this.context.endDate\n\n // do nothing if date is not set yet\n if (!date) {\n return\n }\n\n const count = keyCode === 'up' ? 1 : -1\n\n if (keyCode === 'up' || keyCode === 'down') {\n switch (isDate) {\n case 'day':\n date = addDays(date, count)\n break\n case 'month':\n date = addMonths(date, count)\n break\n case 'year':\n date = addYears(date, count)\n break\n }\n }\n\n this.callOnChange({\n [isInRange === 'start' ? 'startDate' : 'endDate']: date,\n event,\n })\n\n await wait(1) // to get the correct position afterwards\n\n selectAll(target)\n } catch (e) {\n warn(e)\n }\n }\n\n selectStart = (target) => {\n target.focus()\n target.setSelectionRange(0, 0)\n }\n\n onFocusHandler = (event) => {\n try {\n selectAll(event.target)\n } catch (e) {\n warn(e)\n }\n\n this.setState({\n focusState: 'focus',\n _listenForPropChanges: false,\n })\n }\n\n onBlurHandler = () => {\n this.focusMode = null\n this.setState({\n focusState: 'blur',\n _listenForPropChanges: false,\n })\n }\n\n onKeyDownHandler = async (event) => {\n const keyCode = keycode(event)\n const target = event.target\n\n if (target.selectionStart !== target.selectionEnd) {\n this.selectStart(target)\n }\n\n // only to process key up and down press\n switch (keyCode) {\n case 'up':\n case 'down':\n event.persist()\n event.preventDefault()\n this.prepareCounting({ event, keyCode, target })\n return false\n case 'tab':\n // case 'backspace': // We need backspace down here\n return false\n }\n\n // the rest is for value entry\n\n const size = parseFloat(target.getAttribute('size'))\n const firstSelectionStart = target.selectionStart\n\n await wait(1) // to get the correct position afterwards\n\n const secondSelectionStart = target.selectionStart\n const isValid = /[0-9]/.test(keyCode)\n const index = this.refList.findIndex(\n ({ current }) => current === target\n )\n\n if (\n index < this.refList.length - 1 &&\n ((secondSelectionStart === size &&\n isValid &&\n keyCode !== 'left' &&\n keyCode !== 'backspace') ||\n (firstSelectionStart === size && keyCode === 'right'))\n ) {\n try {\n // stop in case there is no next input element\n if (!this.refList[index + 1].current) {\n return\n }\n const nextSibling = this.refList[index + 1].current\n if (nextSibling) {\n nextSibling.focus()\n nextSibling.setSelectionRange(0, 0)\n }\n } catch (e) {\n warn(e)\n }\n } else if (firstSelectionStart === 0 && index > 0) {\n switch (keyCode) {\n case 'left':\n case 'backspace':\n try {\n const prevSibling = this.refList[index - 1].current\n if (prevSibling) {\n const endPos = prevSibling.value.length\n prevSibling.focus()\n prevSibling.setSelectionRange(endPos, endPos)\n }\n } catch (e) {\n warn(e)\n }\n break\n }\n }\n }\n\n set_startDay = (event) => {\n this.setDate(event, 'start', 'Day')\n }\n\n set_startMonth = (event) => {\n this.setDate(event, 'start', 'Month')\n }\n\n set_startYear = (event) => {\n this.setDate(event, 'start', 'Year')\n }\n\n set_endDay = (event) => {\n this.setDate(event, 'end', 'Day')\n }\n\n set_endMonth = (event) => {\n this.setDate(event, 'end', 'Month')\n }\n\n set_endYear = (event) => {\n this.setDate(event, 'end', 'Year')\n }\n\n setDate = (event, mode, type) => {\n event.persist() // since we have later a state update and afterwards the callback\n\n const value = event.target.value\n\n this[`_${mode}${type}`] = value\n\n if (this.context[`${mode}Date`]) {\n this[`tmp_${mode}Date`] = this.context[`${mode}Date`]\n }\n\n const fallback = this[`tmp_${mode}Date`]\n\n // provide fallbacks to create a temp fallback\n const year =\n this[`_${mode}Year`] || (fallback && fallback.getFullYear())\n const month =\n this[`_${mode}Month`] || (fallback && fallback.getMonth() + 1)\n const day = this[`_${mode}Day`] || (fallback && fallback.getDate())\n\n // calculate new date\n const date = new Date(\n parseFloat(year),\n parseFloat(month) - 1,\n parseFloat(day)\n )\n\n const isValidDate =\n !/[^0-9]/.test(day) &&\n !/[^0-9]/.test(month) &&\n !/[^0-9]/.test(year) &&\n isValid(date) &&\n date.getDate() == parseFloat(day) &&\n date.getMonth() + 1 == parseFloat(month) &&\n date.getFullYear() == parseFloat(year)\n\n // update the date\n if (isValidDate) {\n this.callOnChange({\n [`${mode}Date`]: date,\n event,\n })\n } else {\n this.context.updateState({ [`${mode}Date`]: null })\n this.context.updateState({ [`__${mode}${type}`]: value })\n\n this.callOnChangeAsInvalid({\n [`${mode}Date`]: null,\n event,\n })\n }\n\n this.callOnType({\n event,\n })\n }\n\n renderInputElement = (params) => {\n const { id, isRange } = this.props\n this.refList = []\n const startDateList = this.generateDateList(params, 'start')\n const endDateList = this.generateDateList(params, 'end')\n return (\n <span id={`${id}-input`} className=\"dnb-date-picker__input__wrapper\">\n {startDateList}\n {isRange && (\n <span className=\"dnb-date-picker--separator\" aria-hidden>\n {' – '}\n </span>\n )}\n {isRange && endDateList}\n </span>\n )\n }\n\n getPlaceholderChar(value) {\n const index = this.props.maskOrder.indexOf(value)\n return this.props.maskPlaceholder[index]\n }\n\n generateDateList(params, mode) {\n return this.maskList.map((value, i) => {\n const state = value.slice(0, 1)\n const placeholderChar = this.getPlaceholderChar(value)\n const { input_element, separatorRexExp, isRange, size } = this.props\n const { day, month, year } = this.context.translation.DatePicker\n const isRangeLabel = isRange\n ? `${this.context.translation.DatePicker[mode]} `\n : ''\n\n if (!separatorRexExp.test(value)) {\n if (!input_element) {\n params = {\n ...params,\n onKeyDown: this.onKeyDownHandler,\n onPaste: this.shortcutHandler,\n onFocus: (e) => {\n this.focusMode = mode\n this.onFocusHandler(e)\n },\n onBlur: this.onBlurHandler,\n placeholderChar,\n }\n }\n\n // this makes it possible to use a vanilla <input /> like: input_element=\"input\"\n const DateField =\n input_element && React.isValidElement(input_element)\n ? input_element\n : InputElement\n\n const inputSizeClassName =\n size && `dnb-date-picker__input--${size}`\n\n switch (state) {\n case 'd':\n this.refList.push(this[`_${mode}DayRef`])\n\n return (\n <React.Fragment key={'dd' + i}>\n <DateField\n {...params}\n id={`${this.props.id}-${mode}-day`}\n key={'di' + i}\n className={classnames(\n params.className,\n 'dnb-date-picker__input',\n 'dnb-date-picker__input--day',\n inputSizeClassName\n )}\n size=\"2\"\n mask={[/[0-3]/, /[0-9]/]}\n inputRef={this[`_${mode}DayRef`]}\n onChange={this[`set_${mode}Day`]}\n value={this.context[`__${mode}Day`] || ''}\n aria-labelledby={`${this.props.id}-${mode}-day-label`}\n />\n <label\n key={'dl' + i}\n hidden\n id={`${this.props.id}-${mode}-day-label`}\n >\n {isRangeLabel + day}\n </label>\n </React.Fragment>\n )\n case 'm':\n this.refList.push(this[`_${mode}MonthRef`])\n\n return (\n <React.Fragment key={'mm' + i}>\n <DateField\n {...params}\n id={`${this.props.id}-${mode}-month`}\n key={'mi' + i}\n className={classnames(\n params.className,\n 'dnb-date-picker__input',\n 'dnb-date-picker__input--month',\n inputSizeClassName\n )}\n size=\"2\"\n mask={[/[0-1]/, /[0-9]/]}\n inputRef={this[`_${mode}MonthRef`]}\n onChange={this[`set_${mode}Month`]}\n value={this.context[`__${mode}Month`] || ''}\n aria-labelledby={`${this.props.id}-${mode}-month-label`}\n />\n <label\n key={'ml' + i}\n hidden\n id={`${this.props.id}-${mode}-month-label`}\n >\n {isRangeLabel + month}\n </label>\n </React.Fragment>\n )\n case 'y':\n this.refList.push(this[`_${mode}YearRef`])\n\n return (\n <React.Fragment key={'yy' + i}>\n <DateField\n {...params}\n id={`${this.props.id}-${mode}-year`}\n key={'yi' + i}\n className={classnames(\n params.className,\n 'dnb-date-picker__input',\n 'dnb-date-picker__input--year',\n inputSizeClassName\n )}\n size=\"4\"\n mask={[/[1-2]/, /[0-9]/, /[0-9]/, /[0-9]/]}\n inputRef={this[`_${mode}YearRef`]}\n onChange={this[`set_${mode}Year`]}\n value={this.context[`__${mode}Year`] || ''}\n aria-labelledby={`${this.props.id}-${mode}-year-label`}\n />\n <label\n key={'yl' + i}\n hidden\n id={`${this.props.id}-${mode}-year-label`}\n >\n {isRangeLabel + year}\n </label>\n </React.Fragment>\n )\n }\n }\n return (\n <span\n key={'s' + i}\n className=\"dnb-date-picker--separator\"\n aria-hidden\n >\n {placeholderChar}\n </span>\n )\n })\n }\n\n formatDate() {\n const { open_picker_text } = this.context.translation.DatePicker\n\n const { selectedDateTitle } = this.props\n\n return selectedDateTitle\n ? `${selectedDateTitle}, ${open_picker_text}`\n : open_picker_text\n }\n\n render() {\n const {\n id,\n title,\n\n submitAttributes,\n isRange, // eslint-disable-line\n maskOrder, // eslint-disable-line\n maskPlaceholder, // eslint-disable-line\n separatorRexExp, // eslint-disable-line\n onChange, // eslint-disable-line\n onFocus, // eslint-disable-line\n onSubmit, // eslint-disable-line\n selectedDateTitle, // eslint-disable-line\n showInput, // eslint-disable-line\n input_element,\n locale,\n disabled,\n skeleton,\n opened,\n size,\n status,\n status_state,\n status_props,\n\n ...attributes\n } = this.props\n\n const { focusState } = this.state\n\n validateDOMAttributes(this.props, attributes)\n validateDOMAttributes(null, submitAttributes)\n\n const UsedButton = showInput ? SubmitButton : Button\n if (!showInput) {\n // Use Button inner ref\n submitAttributes.innerRef = submitAttributes.ref\n submitAttributes.ref = null\n }\n\n return (\n <fieldset className=\"dnb-date-picker__fieldset\" lang={locale?.code}>\n {this.context.props.label && (\n <legend className=\"dnb-sr-only\">\n {this.context.props.label}\n </legend>\n )}\n <Input\n id={`${id}__input`}\n input_state={disabled ? 'disabled' : focusState}\n input_element={\n input_element && typeof input_element !== 'string'\n ? typeof input_element === 'function'\n ? input_element(this.props)\n : input_element\n : this.renderInputElement\n }\n disabled={disabled || skeleton}\n skeleton={skeleton}\n size={size}\n status={!opened ? status : null}\n status_state={status_state}\n {...status_props}\n submit_element={\n <UsedButton\n id={id}\n disabled={disabled}\n skeleton={skeleton}\n className={classnames(\n showInput && 'dnb-button--input-button',\n opened ? 'dnb-button--active' : null\n )}\n aria-label={this.formatDate()}\n title={title}\n size={size}\n status={status}\n status_state={status_state}\n type=\"button\"\n icon=\"calendar\"\n variant=\"secondary\"\n on_submit={onSubmit}\n on_click={onSubmit}\n {...submitAttributes}\n {...status_props}\n />\n }\n lang={locale?.code}\n {...attributes}\n />\n </fieldset>\n )\n }\n}\n\nconst selectAll = (target) => {\n target.focus()\n target.select()\n}\n\nconst InputElement = (props) => {\n return (\n <TextMask\n guide={true}\n showMask={true}\n keepCharPositions={false} // so we can overwrite next value, if it already exists\n autoComplete=\"off\"\n autoCapitalize=\"none\"\n spellCheck={false}\n autoCorrect=\"off\"\n {...props}\n />\n )\n}\n\nconst wait = (t) => new Promise((r) => setTimeout(r, t))\n"],"mappings":"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"}
@@ -93,8 +93,12 @@
93
93
  background-color: transparent;
94
94
  }
95
95
 
96
- &--preview:not(#{&}--inactive):not(#{&}--start-date):not(#{&}--end-date),
97
- &--within-selection:not(#{&}--inactive):not(#{&}--start-date):not(#{&}--end-date) {
96
+ &--preview:not(#{&}--inactive):not(#{&}--start-date):not(
97
+ #{&}--end-date
98
+ ),
99
+ &--within-selection:not(#{&}--inactive):not(#{&}--start-date):not(
100
+ #{&}--end-date
101
+ ) {
98
102
  background-color: var(--color-mint-green-50);
99
103
  }
100
104
 
@@ -3,7 +3,7 @@ import DrawerHeader from './parts/DrawerHeader';
3
3
  import DrawerNavigation from './parts/DrawerNavigation';
4
4
  import { DrawerProps, DrawerContentProps } from './types';
5
5
  export type DrawerAllProps = DrawerProps & DrawerContentProps;
6
- declare function Drawer({ id, rootId, contentId, focusSelector, labelledBy, directDomReturn, hideCloseButton, disabled, title, dialogTitle, closeTitle, containerPlacement, spacing, noAnimation, noAnimationOnMobile, animationDuration, fullscreen, onOpen, onClose, onClosePrevent, openModal, closeModal, preventClose, preventOverlayClose, openState, openDelay, omitTriggerButton, trigger, triggerAttributes, overlayClass, contentClass, contentRef, scrollRef, top, bottom, left, right, space, ...props }: DrawerAllProps): JSX.Element;
6
+ declare function Drawer({ id, rootId, contentId, focusSelector, labelledBy, directDomReturn, hideCloseButton, disabled, title, dialogTitle, closeTitle, containerPlacement, spacing, noAnimation, noAnimationOnMobile, animationDuration, fullscreen, onOpen, onClose, onClosePrevent, openModal, closeModal, preventClose, preventOverlayClose, openState, openDelay, omitTriggerButton, trigger, triggerAttributes, closeButtonAttributes, overlayClass, contentClass, contentRef, scrollRef, top, bottom, left, right, space, ...props }: DrawerAllProps): JSX.Element;
7
7
  declare namespace Drawer {
8
8
  var Body: typeof DrawerBody;
9
9
  var Header: typeof DrawerHeader;
@@ -1,7 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
- const _excluded = ["id", "rootId", "contentId", "focusSelector", "labelledBy", "directDomReturn", "hideCloseButton", "disabled", "title", "dialogTitle", "closeTitle", "containerPlacement", "spacing", "noAnimation", "noAnimationOnMobile", "animationDuration", "fullscreen", "onOpen", "onClose", "onClosePrevent", "openModal", "closeModal", "preventClose", "preventOverlayClose", "openState", "openDelay", "omitTriggerButton", "trigger", "triggerAttributes", "overlayClass", "contentClass", "contentRef", "scrollRef", "top", "bottom", "left", "right", "space"];
4
+ const _excluded = ["id", "rootId", "contentId", "focusSelector", "labelledBy", "directDomReturn", "hideCloseButton", "disabled", "title", "dialogTitle", "closeTitle", "containerPlacement", "spacing", "noAnimation", "noAnimationOnMobile", "animationDuration", "fullscreen", "onOpen", "onClose", "onClosePrevent", "openModal", "closeModal", "preventClose", "preventOverlayClose", "openState", "openDelay", "omitTriggerButton", "trigger", "triggerAttributes", "closeButtonAttributes", "overlayClass", "contentClass", "contentRef", "scrollRef", "top", "bottom", "left", "right", "space"];
5
5
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
6
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
7
7
  import React, { useContext } from 'react';
@@ -44,6 +44,7 @@ function Drawer(_ref) {
44
44
  omitTriggerButton,
45
45
  trigger,
46
46
  triggerAttributes,
47
+ closeButtonAttributes,
47
48
  overlayClass,
48
49
  contentClass,
49
50
  contentRef,
@@ -86,6 +87,7 @@ function Drawer(_ref) {
86
87
  omitTriggerButton,
87
88
  trigger,
88
89
  triggerAttributes,
90
+ closeButtonAttributes,
89
91
  overlayClass,
90
92
  contentRef,
91
93
  scrollRef,
@@ -1 +1 @@
1
- {"version":3,"file":"Drawer.js","names":["React","useContext","Modal","DrawerContent","DrawerBody","DrawerHeader","DrawerNavigation","classnames","Context","removeUndefinedProps","Drawer","_ref","id","rootId","contentId","focusSelector","labelledBy","directDomReturn","hideCloseButton","disabled","title","dialogTitle","closeTitle","containerPlacement","spacing","noAnimation","noAnimationOnMobile","animationDuration","fullscreen","onOpen","onClose","onClosePrevent","openModal","closeModal","preventClose","preventOverlayClose","openState","openDelay","omitTriggerButton","trigger","triggerAttributes","overlayClass","contentClass","contentRef","scrollRef","top","bottom","left","right","space","props","_objectWithoutProperties","_excluded","context","modalProps","drawerProps","_objectSpread","createElement","_extends","Body","Header","Navigation"],"sources":["../../../../src/components/drawer/Drawer.tsx"],"sourcesContent":["/**\n * Web Drawer Component\n *\n */\nimport React, { useContext } from 'react'\nimport Modal from '../modal/Modal'\nimport DrawerContent from './DrawerContent'\nimport DrawerBody from './parts/DrawerBody'\nimport DrawerHeader from './parts/DrawerHeader'\nimport DrawerNavigation from './parts/DrawerNavigation'\nimport classnames from 'classnames'\nimport Context from '../../shared/Context'\nimport { DrawerProps, DrawerContentProps } from './types'\nimport { removeUndefinedProps } from '../../shared/component-helper'\n\nexport type DrawerAllProps = DrawerProps & DrawerContentProps\n\nfunction Drawer({\n id,\n rootId,\n contentId,\n focusSelector,\n labelledBy,\n directDomReturn,\n hideCloseButton,\n disabled,\n\n title,\n dialogTitle,\n closeTitle,\n containerPlacement = 'right',\n spacing = true,\n noAnimation,\n noAnimationOnMobile,\n animationDuration,\n fullscreen = 'auto',\n\n onOpen,\n onClose,\n onClosePrevent,\n openModal,\n closeModal,\n preventClose,\n preventOverlayClose,\n openState,\n openDelay,\n\n omitTriggerButton,\n trigger,\n triggerAttributes,\n overlayClass,\n contentClass,\n contentRef,\n scrollRef,\n\n top,\n bottom,\n left,\n right,\n space,\n\n ...props\n}: DrawerAllProps): JSX.Element {\n const context = useContext(Context)\n\n const modalProps = removeUndefinedProps({\n title,\n id,\n focusSelector,\n labelledBy,\n disabled,\n spacing,\n openDelay,\n contentId,\n dialogTitle,\n closeTitle,\n hideCloseButton,\n preventClose,\n preventOverlayClose,\n animationDuration,\n noAnimation,\n noAnimationOnMobile,\n fullscreen,\n containerPlacement,\n openState,\n directDomReturn,\n rootId,\n onOpen,\n onClose,\n onClosePrevent,\n openModal,\n closeModal,\n omitTriggerButton,\n trigger,\n triggerAttributes,\n overlayClass,\n contentRef,\n scrollRef,\n top,\n bottom,\n left,\n right,\n space,\n })\n\n const drawerProps = removeUndefinedProps({\n ...props,\n noAnimation,\n noAnimationOnMobile,\n fullscreen,\n spacing,\n containerPlacement,\n })\n\n return (\n <Modal\n {...context.Drawer}\n {...modalProps}\n contentClass={classnames('dnb-drawer__root', contentClass)}\n >\n <DrawerContent {...context.Drawer} {...drawerProps} />\n </Modal>\n )\n}\n\nDrawer.Body = DrawerBody\nDrawer.Header = DrawerHeader\nDrawer.Navigation = DrawerNavigation\n\nexport default Drawer\n"],"mappings":";;;;;;AAIA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,OAAOC,KAAK,MAAM,gBAAgB;AAClC,OAAOC,aAAa,MAAM,iBAAiB;AAC3C,OAAOC,UAAU,MAAM,oBAAoB;AAC3C,OAAOC,YAAY,MAAM,sBAAsB;AAC/C,OAAOC,gBAAgB,MAAM,0BAA0B;AACvD,OAAOC,UAAU,MAAM,YAAY;AACnC,OAAOC,OAAO,MAAM,sBAAsB;AAE1C,SAASC,oBAAoB,QAAQ,+BAA+B;AAIpE,SAASC,MAAMA,CAAAC,IAAA,EA6CiB;EAAA,IA7ChB;MACdC,EAAE;MACFC,MAAM;MACNC,SAAS;MACTC,aAAa;MACbC,UAAU;MACVC,eAAe;MACfC,eAAe;MACfC,QAAQ;MAERC,KAAK;MACLC,WAAW;MACXC,UAAU;MACVC,kBAAkB,GAAG,OAAO;MAC5BC,OAAO,GAAG,IAAI;MACdC,WAAW;MACXC,mBAAmB;MACnBC,iBAAiB;MACjBC,UAAU,GAAG,MAAM;MAEnBC,MAAM;MACNC,OAAO;MACPC,cAAc;MACdC,SAAS;MACTC,UAAU;MACVC,YAAY;MACZC,mBAAmB;MACnBC,SAAS;MACTC,SAAS;MAETC,iBAAiB;MACjBC,OAAO;MACPC,iBAAiB;MACjBC,YAAY;MACZC,YAAY;MACZC,UAAU;MACVC,SAAS;MAETC,GAAG;MACHC,MAAM;MACNC,IAAI;MACJC,KAAK;MACLC;IAGc,CAAC,GAAAtC,IAAA;IADZuC,KAAK,GAAAC,wBAAA,CAAAxC,IAAA,EAAAyC,SAAA;EAER,MAAMC,OAAO,GAAGpD,UAAU,CAACO,OAAO,CAAC;EAEnC,MAAM8C,UAAU,GAAG7C,oBAAoB,CAAC;IACtCW,KAAK;IACLR,EAAE;IACFG,aAAa;IACbC,UAAU;IACVG,QAAQ;IACRK,OAAO;IACPa,SAAS;IACTvB,SAAS;IACTO,WAAW;IACXC,UAAU;IACVJ,eAAe;IACfgB,YAAY;IACZC,mBAAmB;IACnBR,iBAAiB;IACjBF,WAAW;IACXC,mBAAmB;IACnBE,UAAU;IACVL,kBAAkB;IAClBa,SAAS;IACTnB,eAAe;IACfJ,MAAM;IACNgB,MAAM;IACNC,OAAO;IACPC,cAAc;IACdC,SAAS;IACTC,UAAU;IACVK,iBAAiB;IACjBC,OAAO;IACPC,iBAAiB;IACjBC,YAAY;IACZE,UAAU;IACVC,SAAS;IACTC,GAAG;IACHC,MAAM;IACNC,IAAI;IACJC,KAAK;IACLC;EACF,CAAC,CAAC;EAEF,MAAMM,WAAW,GAAG9C,oBAAoB,CAAA+C,aAAA,CAAAA,aAAA,KACnCN,KAAK;IACRzB,WAAW;IACXC,mBAAmB;IACnBE,UAAU;IACVJ,OAAO;IACPD;EAAkB,EACnB,CAAC;EAEF,OACEvB,KAAA,CAAAyD,aAAA,CAACvD,KAAK,EAAAwD,QAAA,KACAL,OAAO,CAAC3C,MAAM,EACd4C,UAAU;IACdZ,YAAY,EAAEnC,UAAU,CAAC,kBAAkB,EAAEmC,YAAY;EAAE,IAE3D1C,KAAA,CAAAyD,aAAA,CAACtD,aAAa,EAAAuD,QAAA,KAAKL,OAAO,CAAC3C,MAAM,EAAM6C,WAAW,CAAG,CAChD,CAAC;AAEZ;AAEA7C,MAAM,CAACiD,IAAI,GAAGvD,UAAU;AACxBM,MAAM,CAACkD,MAAM,GAAGvD,YAAY;AAC5BK,MAAM,CAACmD,UAAU,GAAGvD,gBAAgB;AAEpC,eAAeI,MAAM"}
1
+ {"version":3,"file":"Drawer.js","names":["React","useContext","Modal","DrawerContent","DrawerBody","DrawerHeader","DrawerNavigation","classnames","Context","removeUndefinedProps","Drawer","_ref","id","rootId","contentId","focusSelector","labelledBy","directDomReturn","hideCloseButton","disabled","title","dialogTitle","closeTitle","containerPlacement","spacing","noAnimation","noAnimationOnMobile","animationDuration","fullscreen","onOpen","onClose","onClosePrevent","openModal","closeModal","preventClose","preventOverlayClose","openState","openDelay","omitTriggerButton","trigger","triggerAttributes","closeButtonAttributes","overlayClass","contentClass","contentRef","scrollRef","top","bottom","left","right","space","props","_objectWithoutProperties","_excluded","context","modalProps","drawerProps","_objectSpread","createElement","_extends","Body","Header","Navigation"],"sources":["../../../../src/components/drawer/Drawer.tsx"],"sourcesContent":["/**\n * Web Drawer Component\n *\n */\nimport React, { useContext } from 'react'\nimport Modal from '../modal/Modal'\nimport DrawerContent from './DrawerContent'\nimport DrawerBody from './parts/DrawerBody'\nimport DrawerHeader from './parts/DrawerHeader'\nimport DrawerNavigation from './parts/DrawerNavigation'\nimport classnames from 'classnames'\nimport Context from '../../shared/Context'\nimport { DrawerProps, DrawerContentProps } from './types'\nimport { removeUndefinedProps } from '../../shared/component-helper'\n\nexport type DrawerAllProps = DrawerProps & DrawerContentProps\n\nfunction Drawer({\n id,\n rootId,\n contentId,\n focusSelector,\n labelledBy,\n directDomReturn,\n hideCloseButton,\n disabled,\n\n title,\n dialogTitle,\n closeTitle,\n containerPlacement = 'right',\n spacing = true,\n noAnimation,\n noAnimationOnMobile,\n animationDuration,\n fullscreen = 'auto',\n\n onOpen,\n onClose,\n onClosePrevent,\n openModal,\n closeModal,\n preventClose,\n preventOverlayClose,\n openState,\n openDelay,\n\n omitTriggerButton,\n trigger,\n triggerAttributes,\n closeButtonAttributes,\n overlayClass,\n contentClass,\n contentRef,\n scrollRef,\n\n top,\n bottom,\n left,\n right,\n space,\n\n ...props\n}: DrawerAllProps): JSX.Element {\n const context = useContext(Context)\n\n const modalProps = removeUndefinedProps({\n title,\n id,\n focusSelector,\n labelledBy,\n disabled,\n spacing,\n openDelay,\n contentId,\n dialogTitle,\n closeTitle,\n hideCloseButton,\n preventClose,\n preventOverlayClose,\n animationDuration,\n noAnimation,\n noAnimationOnMobile,\n fullscreen,\n containerPlacement,\n openState,\n directDomReturn,\n rootId,\n onOpen,\n onClose,\n onClosePrevent,\n openModal,\n closeModal,\n omitTriggerButton,\n trigger,\n triggerAttributes,\n closeButtonAttributes,\n overlayClass,\n contentRef,\n scrollRef,\n top,\n bottom,\n left,\n right,\n space,\n })\n\n const drawerProps = removeUndefinedProps({\n ...props,\n noAnimation,\n noAnimationOnMobile,\n fullscreen,\n spacing,\n containerPlacement,\n })\n\n return (\n <Modal\n {...context.Drawer}\n {...modalProps}\n contentClass={classnames('dnb-drawer__root', contentClass)}\n >\n <DrawerContent {...context.Drawer} {...drawerProps} />\n </Modal>\n )\n}\n\nDrawer.Body = DrawerBody\nDrawer.Header = DrawerHeader\nDrawer.Navigation = DrawerNavigation\n\nexport default Drawer\n"],"mappings":";;;;;;AAIA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,OAAOC,KAAK,MAAM,gBAAgB;AAClC,OAAOC,aAAa,MAAM,iBAAiB;AAC3C,OAAOC,UAAU,MAAM,oBAAoB;AAC3C,OAAOC,YAAY,MAAM,sBAAsB;AAC/C,OAAOC,gBAAgB,MAAM,0BAA0B;AACvD,OAAOC,UAAU,MAAM,YAAY;AACnC,OAAOC,OAAO,MAAM,sBAAsB;AAE1C,SAASC,oBAAoB,QAAQ,+BAA+B;AAIpE,SAASC,MAAMA,CAAAC,IAAA,EA8CiB;EAAA,IA9ChB;MACdC,EAAE;MACFC,MAAM;MACNC,SAAS;MACTC,aAAa;MACbC,UAAU;MACVC,eAAe;MACfC,eAAe;MACfC,QAAQ;MAERC,KAAK;MACLC,WAAW;MACXC,UAAU;MACVC,kBAAkB,GAAG,OAAO;MAC5BC,OAAO,GAAG,IAAI;MACdC,WAAW;MACXC,mBAAmB;MACnBC,iBAAiB;MACjBC,UAAU,GAAG,MAAM;MAEnBC,MAAM;MACNC,OAAO;MACPC,cAAc;MACdC,SAAS;MACTC,UAAU;MACVC,YAAY;MACZC,mBAAmB;MACnBC,SAAS;MACTC,SAAS;MAETC,iBAAiB;MACjBC,OAAO;MACPC,iBAAiB;MACjBC,qBAAqB;MACrBC,YAAY;MACZC,YAAY;MACZC,UAAU;MACVC,SAAS;MAETC,GAAG;MACHC,MAAM;MACNC,IAAI;MACJC,KAAK;MACLC;IAGc,CAAC,GAAAvC,IAAA;IADZwC,KAAK,GAAAC,wBAAA,CAAAzC,IAAA,EAAA0C,SAAA;EAER,MAAMC,OAAO,GAAGrD,UAAU,CAACO,OAAO,CAAC;EAEnC,MAAM+C,UAAU,GAAG9C,oBAAoB,CAAC;IACtCW,KAAK;IACLR,EAAE;IACFG,aAAa;IACbC,UAAU;IACVG,QAAQ;IACRK,OAAO;IACPa,SAAS;IACTvB,SAAS;IACTO,WAAW;IACXC,UAAU;IACVJ,eAAe;IACfgB,YAAY;IACZC,mBAAmB;IACnBR,iBAAiB;IACjBF,WAAW;IACXC,mBAAmB;IACnBE,UAAU;IACVL,kBAAkB;IAClBa,SAAS;IACTnB,eAAe;IACfJ,MAAM;IACNgB,MAAM;IACNC,OAAO;IACPC,cAAc;IACdC,SAAS;IACTC,UAAU;IACVK,iBAAiB;IACjBC,OAAO;IACPC,iBAAiB;IACjBC,qBAAqB;IACrBC,YAAY;IACZE,UAAU;IACVC,SAAS;IACTC,GAAG;IACHC,MAAM;IACNC,IAAI;IACJC,KAAK;IACLC;EACF,CAAC,CAAC;EAEF,MAAMM,WAAW,GAAG/C,oBAAoB,CAAAgD,aAAA,CAAAA,aAAA,KACnCN,KAAK;IACR1B,WAAW;IACXC,mBAAmB;IACnBE,UAAU;IACVJ,OAAO;IACPD;EAAkB,EACnB,CAAC;EAEF,OACEvB,KAAA,CAAA0D,aAAA,CAACxD,KAAK,EAAAyD,QAAA,KACAL,OAAO,CAAC5C,MAAM,EACd6C,UAAU;IACdZ,YAAY,EAAEpC,UAAU,CAAC,kBAAkB,EAAEoC,YAAY;EAAE,IAE3D3C,KAAA,CAAA0D,aAAA,CAACvD,aAAa,EAAAwD,QAAA,KAAKL,OAAO,CAAC5C,MAAM,EAAM8C,WAAW,CAAG,CAChD,CAAC;AAEZ;AAEA9C,MAAM,CAACkD,IAAI,GAAGxD,UAAU;AACxBM,MAAM,CAACmD,MAAM,GAAGxD,YAAY;AAC5BK,MAAM,CAACoD,UAAU,GAAGxD,gBAAgB;AAEpC,eAAeI,MAAM"}
@@ -14,6 +14,7 @@ export type FormStatusState =
14
14
  | 'error'
15
15
  | 'warn'
16
16
  | 'info'
17
+ | 'success'
17
18
  | 'marketing';
18
19
  export type FormStatusVariant = 'flat' | 'outlined';
19
20
  export type FormStatusSize = 'default' | 'large';
@@ -115,6 +116,7 @@ export interface InfoIconProps {
115
116
  * The `title` attribute in the status.
116
117
  */
117
118
  title?: string;
119
+ theme?: string;
118
120
  }
119
121
  export declare const InfoIcon: React.FC<InfoIconProps>;
120
122
  export interface MarketingIconProps {
@@ -1,7 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
3
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
- var _path, _path2, _path3, _path4, _path5, _path6, _path7, _circle, _path8, _path9;
4
+ var _path, _path2, _path3, _path4, _path5, _path6, _circle, _path7, _path8;
5
5
  const _excluded = ["show", "title", "state", "size", "variant", "className", "no_animation", "stretch", "class", "text_id", "label", "status_id", "globalStatus", "id", "text", "icon", "icon_size", "skeleton", "children", "role"];
6
6
  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; }
7
7
  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; }
@@ -40,33 +40,37 @@ export default class FormStatus extends React.PureComponent {
40
40
  static getIcon({
41
41
  state,
42
42
  icon,
43
- icon_size
43
+ icon_size,
44
+ theme
44
45
  }) {
45
- if (typeof icon === 'string') {
46
- let IconToLoad = icon;
47
- switch (FormStatus.correctStatus(state)) {
48
- case 'info':
49
- IconToLoad = InfoIcon;
50
- break;
51
- case 'warn':
52
- IconToLoad = WarnIcon;
53
- break;
54
- case 'marketing':
55
- IconToLoad = MarketingIcon;
56
- break;
57
- case 'error':
58
- default:
59
- IconToLoad = ErrorIcon;
60
- }
61
- icon = React.createElement(Icon, {
62
- icon: React.createElement(IconToLoad, {
63
- title: null
64
- }),
65
- size: icon_size,
66
- inherit_color: false
67
- });
46
+ if (typeof icon !== 'string') {
47
+ return icon;
68
48
  }
69
- return icon;
49
+ let IconToLoad = icon;
50
+ switch (FormStatus.correctStatus(state)) {
51
+ case 'info':
52
+ case 'success':
53
+ IconToLoad = InfoIcon;
54
+ break;
55
+ case 'warn':
56
+ IconToLoad = WarnIcon;
57
+ break;
58
+ case 'marketing':
59
+ IconToLoad = MarketingIcon;
60
+ break;
61
+ case 'error':
62
+ default:
63
+ IconToLoad = ErrorIcon;
64
+ }
65
+ return React.createElement(Icon, {
66
+ icon: React.createElement(IconToLoad, {
67
+ title: null,
68
+ state: state,
69
+ theme: theme
70
+ }),
71
+ size: icon_size,
72
+ inherit_color: false
73
+ });
70
74
  }
71
75
  static getDerivedStateFromProps(props, state) {
72
76
  if (state._id !== props.id && props.id) {
@@ -209,6 +213,7 @@ export default class FormStatus extends React.PureComponent {
209
213
  return isTrue(props.show) && FormStatus.getContent(props) ? true : false;
210
214
  }
211
215
  render() {
216
+ var _this$context, _this$context$theme;
212
217
  const isReadyToGetVisible = this.isReadyToGetVisible();
213
218
  if (!isReadyToGetVisible && !this.state.keepContentInDom) {
214
219
  return null;
@@ -243,7 +248,8 @@ export default class FormStatus extends React.PureComponent {
243
248
  const iconToRender = FormStatus.getIcon({
244
249
  state,
245
250
  icon,
246
- icon_size
251
+ icon_size,
252
+ theme: (_this$context = this.context) === null || _this$context === void 0 ? void 0 : (_this$context$theme = _this$context.theme) === null || _this$context$theme === void 0 ? void 0 : _this$context$theme.name
247
253
  });
248
254
  const contentToRender = this.state.keepContentInDom && this._cachedContent ? this._cachedContent : FormStatus.getContent(this.props);
249
255
  if (!this.state.isAnimating) {
@@ -380,41 +386,52 @@ process.env.NODE_ENV !== "production" ? WarnIcon.propTypes = {
380
386
  WarnIcon.defaultProps = {
381
387
  title: 'error'
382
388
  };
383
- export const InfoIcon = props => React.createElement("svg", _extends({
384
- width: "24",
385
- height: "24",
386
- viewBox: "0 0 24 24",
387
- fill: "none"
388
- }, props), props && props.title && React.createElement("title", null, props.title), _path7 || (_path7 = React.createElement("path", {
389
- fillRule: "evenodd",
390
- clipRule: "evenodd",
391
- d: "M11.268 0a11.25 11.25 0 105.566 21.017l6.112 2.91a.75.75 0 001-1l-2.911-6.112A11.234 11.234 0 0011.268 0z",
392
- fill: "#007272"
393
- })), _circle || (_circle = React.createElement("circle", {
394
- cx: "11",
395
- cy: "6.5",
396
- r: ".5",
397
- fill: "#fff",
398
- stroke: "#fff"
399
- })), _path8 || (_path8 = React.createElement("path", {
400
- d: "M13.75 16H13a1.5 1.5 0 01-1.5-1.5v-3.75a.75.75 0 00-.75-.75H10",
401
- stroke: "#fff",
402
- strokeWidth: "1.5",
403
- strokeLinecap: "round",
404
- strokeLinejoin: "round"
405
- })));
389
+ export const InfoIcon = props => {
390
+ const isSbankenTheme = props && (props === null || props === void 0 ? void 0 : props.theme) === 'sbanken';
391
+ let fill = isSbankenTheme ? '#000' : '#007272';
392
+ if (props && (props === null || props === void 0 ? void 0 : props.state) === 'success') {
393
+ fill = isSbankenTheme ? '#02A56A' : '#28B482';
394
+ }
395
+ return React.createElement("svg", _extends({
396
+ width: "24",
397
+ height: "24",
398
+ viewBox: "0 0 24 24",
399
+ fill: "none"
400
+ }, props), props && props.title && React.createElement("title", null, props.title), React.createElement("path", {
401
+ fillRule: "evenodd",
402
+ clipRule: "evenodd",
403
+ d: "M11.268 0a11.25 11.25 0 105.566 21.017l6.112 2.91a.75.75 0 001-1l-2.911-6.112A11.234 11.234 0 0011.268 0z",
404
+ fill: fill
405
+ }), _circle || (_circle = React.createElement("circle", {
406
+ cx: "11",
407
+ cy: "6.5",
408
+ r: ".5",
409
+ fill: "#fff",
410
+ stroke: "#fff"
411
+ })), _path7 || (_path7 = React.createElement("path", {
412
+ d: "M13.75 16H13a1.5 1.5 0 01-1.5-1.5v-3.75a.75.75 0 00-.75-.75H10",
413
+ stroke: "#fff",
414
+ strokeWidth: "1.5",
415
+ strokeLinecap: "round",
416
+ strokeLinejoin: "round"
417
+ })));
418
+ };
406
419
  process.env.NODE_ENV !== "production" ? InfoIcon.propTypes = {
407
- title: PropTypes.string
420
+ title: PropTypes.string,
421
+ state: PropTypes.string,
422
+ theme: PropTypes.string
408
423
  } : void 0;
409
424
  InfoIcon.defaultProps = {
410
- title: 'info'
425
+ title: 'info',
426
+ state: 'info',
427
+ theme: 'ui'
411
428
  };
412
429
  export const MarketingIcon = props => React.createElement("svg", _extends({
413
430
  width: "24",
414
431
  height: "24",
415
432
  fill: "none",
416
433
  xmlns: "http://www.w3.org/2000/svg"
417
- }, props), props && props.title && React.createElement("title", null, props.title), _path9 || (_path9 = React.createElement("path", {
434
+ }, props), props && props.title && React.createElement("title", null, props.title), _path8 || (_path8 = React.createElement("path", {
418
435
  d: "M6 15.25H4.5c-2.042 0-3.75-1.707-3.75-3.75S2.458 7.75 4.5 7.75H6v7.5ZM7.5 15.25c4.801 0 8.846 1.897 12.75 4.5V3.25c-3.904 2.603-7.949 4.5-12.75 4.5v7.5ZM23.25 10a.75.75 0 0 0-1.5 0h1.5Zm-1.5 3a.75.75 0 0 0 1.5 0h-1.5ZM8.483 21.043a.75.75 0 1 0 1.034-1.086l-1.034 1.086ZM21.75 10v3h1.5v-3h-1.5ZM6 15.25a8.058 8.058 0 0 0 2.483 5.793l1.034-1.086A6.559 6.559 0 0 1 7.5 15.25H6Z",
419
436
  fill: "#333"
420
437
  })));