@dnb/eufemia 10.4.2 → 10.6.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 (1473) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/cjs/components/accordion/Accordion.d.ts +240 -136
  3. package/cjs/components/accordion/Accordion.js +217 -252
  4. package/cjs/components/accordion/Accordion.js.map +1 -1
  5. package/cjs/components/accordion/AccordionContent.d.ts +12 -14
  6. package/cjs/components/accordion/AccordionContent.js +3 -15
  7. package/cjs/components/accordion/AccordionContent.js.map +1 -1
  8. package/cjs/components/accordion/AccordionContext.d.ts +17 -2
  9. package/cjs/components/accordion/AccordionContext.js.map +1 -1
  10. package/cjs/components/accordion/AccordionGroup.d.ts +10 -12
  11. package/cjs/components/accordion/AccordionGroup.js +63 -72
  12. package/cjs/components/accordion/AccordionGroup.js.map +1 -1
  13. package/cjs/components/accordion/AccordionHeader.d.ts +62 -92
  14. package/cjs/components/accordion/AccordionHeader.js +178 -251
  15. package/cjs/components/accordion/AccordionHeader.js.map +1 -1
  16. package/cjs/components/accordion/AccordionProviderContext.d.ts +16 -2
  17. package/cjs/components/accordion/AccordionProviderContext.js.map +1 -1
  18. package/cjs/components/accordion/AccordionStore.d.ts +7 -6
  19. package/cjs/components/accordion/AccordionStore.js +1 -1
  20. package/cjs/components/accordion/AccordionStore.js.map +1 -1
  21. package/cjs/components/accordion/defaultProps.d.ts +2 -0
  22. package/cjs/components/accordion/defaultProps.js +12 -0
  23. package/cjs/components/accordion/defaultProps.js.map +1 -0
  24. package/cjs/components/anchor/style/anchor-mixins.scss +26 -27
  25. package/cjs/components/anchor/style/dnb-anchor.css +27 -16
  26. package/cjs/components/anchor/style/dnb-anchor.min.css +1 -1
  27. package/cjs/components/anchor/style/dnb-anchor.scss +1 -1
  28. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +97 -44
  29. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  30. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +48 -22
  31. package/cjs/components/anchor/style/themes/dnb-anchor-theme-ui.css +20 -10
  32. package/cjs/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
  33. package/cjs/components/anchor/style/themes/dnb-anchor-theme-ui.scss +4 -9
  34. package/cjs/components/autocomplete/Autocomplete.js +2 -2
  35. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  36. package/cjs/components/button/style/themes/button-mixins.scss +23 -4
  37. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.css +80 -82
  38. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.min.css +3 -1
  39. package/cjs/components/button/style/themes/dnb-button-theme-sbanken.scss +82 -54
  40. package/cjs/components/date-picker/DatePicker.js.map +1 -1
  41. package/cjs/components/date-picker/DatePickerCalendar.js.map +1 -1
  42. package/cjs/components/dialog/Dialog.d.ts +1 -1
  43. package/cjs/components/dialog/DialogContent.d.ts +1 -1
  44. package/cjs/components/dialog/DialogContent.js +4 -2
  45. package/cjs/components/dialog/DialogContent.js.map +1 -1
  46. package/cjs/components/dialog/parts/DialogAction.d.ts +5 -1
  47. package/cjs/components/dialog/parts/DialogAction.js +3 -2
  48. package/cjs/components/dialog/parts/DialogAction.js.map +1 -1
  49. package/cjs/components/form-row/FormRow.js.map +1 -1
  50. package/cjs/components/form-row/style/dnb-form-row.scss +2 -2
  51. package/cjs/components/form-set/FormSet.js.map +1 -1
  52. package/cjs/components/height-animation/HeightAnimation.d.ts +1 -1
  53. package/cjs/components/height-animation/HeightAnimation.js.map +1 -1
  54. package/cjs/components/height-animation/useHeightAnimation.js.map +1 -1
  55. package/cjs/components/icon/lib/SvgComparison.js.map +1 -1
  56. package/cjs/components/input/style/dnb-input.css +5 -0
  57. package/cjs/components/input/style/dnb-input.min.css +1 -1
  58. package/cjs/components/input/style/dnb-input.scss +7 -1
  59. package/cjs/components/input/style/themes/dnb-input-theme-sbanken.css +104 -0
  60. package/cjs/components/input/style/themes/dnb-input-theme-sbanken.min.css +1 -0
  61. package/cjs/components/input/style/themes/dnb-input-theme-sbanken.scss +126 -0
  62. package/cjs/components/input-masked/InputMaskedUtils.js.map +1 -1
  63. package/cjs/components/input-masked/TextMask.js.map +1 -1
  64. package/cjs/components/modal/Modal.js +0 -2
  65. package/cjs/components/modal/Modal.js.map +1 -1
  66. package/cjs/components/modal/bodyScrollLock.js.map +1 -1
  67. package/cjs/components/number-format/NumberUtils.js +8 -6
  68. package/cjs/components/number-format/NumberUtils.js.map +1 -1
  69. package/cjs/components/number-format/style/dnb-number-format.css +0 -7
  70. package/cjs/components/number-format/style/dnb-number-format.scss +0 -1
  71. package/cjs/components/pagination/PaginationInfinity.js.map +1 -1
  72. package/cjs/components/radio/Radio.js.map +1 -1
  73. package/cjs/components/section/style/themes/dnb-section-theme-ui.css +14 -7
  74. package/cjs/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  75. package/cjs/components/slider/hooks/useSliderEvents.js.map +1 -1
  76. package/cjs/components/slider/types.d.ts +1 -1
  77. package/cjs/components/slider/types.js.map +1 -1
  78. package/cjs/components/space/Space.d.ts +2 -2
  79. package/cjs/components/space/SpacingHelper.js.map +1 -1
  80. package/cjs/components/step-indicator/StepIndicatorProps.d.ts +1 -1
  81. package/cjs/components/table/TableAccordion.js.map +1 -1
  82. package/cjs/components/table/TableTr.js.map +1 -1
  83. package/cjs/components/textarea/Textarea.js.map +1 -1
  84. package/cjs/components/textarea/style/dnb-textarea.css +39 -1
  85. package/cjs/components/textarea/style/dnb-textarea.min.css +1 -1
  86. package/cjs/components/textarea/style/dnb-textarea.scss +20 -1
  87. package/cjs/components/textarea/style/themes/dnb-textarea-theme-sbanken.css +61 -0
  88. package/cjs/components/textarea/style/themes/dnb-textarea-theme-sbanken.min.css +1 -0
  89. package/cjs/components/textarea/style/themes/dnb-textarea-theme-sbanken.scss +72 -0
  90. package/cjs/components/textarea/style/themes/dnb-textarea-theme-ui.css +0 -41
  91. package/cjs/components/textarea/style/themes/dnb-textarea-theme-ui.min.css +1 -1
  92. package/cjs/components/textarea/style/themes/dnb-textarea-theme-ui.scss +0 -22
  93. package/cjs/components/toggle-button/ToggleButton.js.map +1 -1
  94. package/cjs/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  95. package/cjs/components/tooltip/TooltipContainer.js.map +1 -1
  96. package/cjs/components/upload/Upload.js +2 -2
  97. package/cjs/components/upload/Upload.js.map +1 -1
  98. package/cjs/components/upload/useUpload.d.ts +1 -1
  99. package/cjs/components/upload/useUpload.js +2 -2
  100. package/cjs/components/upload/useUpload.js.map +1 -1
  101. package/cjs/elements/blockquote/Blockquote.d.ts +1 -1
  102. package/cjs/elements/blockquote/Blockquote.js.map +1 -1
  103. package/cjs/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +0 -2
  104. package/cjs/extensions/forms/DataContext/At.d.ts +13 -0
  105. package/cjs/extensions/forms/DataContext/At.js +60 -0
  106. package/cjs/extensions/forms/DataContext/At.js.map +1 -0
  107. package/cjs/extensions/forms/DataContext/Context.d.ts +19 -0
  108. package/cjs/extensions/forms/DataContext/Context.js +25 -0
  109. package/cjs/extensions/forms/DataContext/Context.js.map +1 -0
  110. package/cjs/extensions/forms/DataContext/Provider.d.ts +19 -0
  111. package/cjs/extensions/forms/DataContext/Provider.js +112 -0
  112. package/cjs/extensions/forms/DataContext/Provider.js.map +1 -0
  113. package/cjs/extensions/forms/DataContext/SubmitButton.d.ts +9 -0
  114. package/cjs/extensions/forms/DataContext/SubmitButton.js +30 -0
  115. package/cjs/extensions/forms/DataContext/SubmitButton.js.map +1 -0
  116. package/cjs/extensions/forms/DataContext/index.d.ts +13 -0
  117. package/cjs/extensions/forms/DataContext/index.js +20 -0
  118. package/cjs/extensions/forms/DataContext/index.js.map +1 -0
  119. package/cjs/extensions/forms/Field/ArraySelection.d.ts +12 -0
  120. package/cjs/extensions/forms/Field/ArraySelection.js +68 -0
  121. package/cjs/extensions/forms/Field/ArraySelection.js.map +1 -0
  122. package/cjs/extensions/forms/Field/BankAccountNumber.d.ts +10 -0
  123. package/cjs/extensions/forms/Field/BankAccountNumber.js +40 -0
  124. package/cjs/extensions/forms/Field/BankAccountNumber.js.map +1 -0
  125. package/cjs/extensions/forms/Field/Boolean.d.ts +10 -0
  126. package/cjs/extensions/forms/Field/Boolean.js +34 -0
  127. package/cjs/extensions/forms/Field/Boolean.js.map +1 -0
  128. package/cjs/extensions/forms/Field/Currency.d.ts +10 -0
  129. package/cjs/extensions/forms/Field/Currency.js +61 -0
  130. package/cjs/extensions/forms/Field/Currency.js.map +1 -0
  131. package/cjs/extensions/forms/Field/Date.d.ts +8 -0
  132. package/cjs/extensions/forms/Field/Date.js +59 -0
  133. package/cjs/extensions/forms/Field/Date.js.map +1 -0
  134. package/cjs/extensions/forms/Field/Email.d.ts +7 -0
  135. package/cjs/extensions/forms/Field/Email.js +34 -0
  136. package/cjs/extensions/forms/Field/Email.js.map +1 -0
  137. package/cjs/extensions/forms/Field/FirstName.d.ts +7 -0
  138. package/cjs/extensions/forms/Field/FirstName.js +31 -0
  139. package/cjs/extensions/forms/Field/FirstName.js.map +1 -0
  140. package/cjs/extensions/forms/Field/LastName.d.ts +7 -0
  141. package/cjs/extensions/forms/Field/LastName.js +31 -0
  142. package/cjs/extensions/forms/Field/LastName.js.map +1 -0
  143. package/cjs/extensions/forms/Field/NationalIdentityNumber.d.ts +10 -0
  144. package/cjs/extensions/forms/Field/NationalIdentityNumber.js +39 -0
  145. package/cjs/extensions/forms/Field/NationalIdentityNumber.js.map +1 -0
  146. package/cjs/extensions/forms/Field/Number.d.ts +31 -0
  147. package/cjs/extensions/forms/Field/Number.js +111 -0
  148. package/cjs/extensions/forms/Field/Number.js.map +1 -0
  149. package/cjs/extensions/forms/Field/Option.d.ts +9 -0
  150. package/cjs/extensions/forms/Field/Option.js +22 -0
  151. package/cjs/extensions/forms/Field/Option.js.map +1 -0
  152. package/cjs/extensions/forms/Field/OrganizationNumber.d.ts +10 -0
  153. package/cjs/extensions/forms/Field/OrganizationNumber.js +40 -0
  154. package/cjs/extensions/forms/Field/OrganizationNumber.js.map +1 -0
  155. package/cjs/extensions/forms/Field/PhoneNumber.d.ts +12 -0
  156. package/cjs/extensions/forms/Field/PhoneNumber.js +101 -0
  157. package/cjs/extensions/forms/Field/PhoneNumber.js.map +1 -0
  158. package/cjs/extensions/forms/Field/PostalCodeAndCity.d.ts +10 -0
  159. package/cjs/extensions/forms/Field/PostalCodeAndCity.js +59 -0
  160. package/cjs/extensions/forms/Field/PostalCodeAndCity.js.map +1 -0
  161. package/cjs/extensions/forms/Field/SelectCountry.d.ts +7 -0
  162. package/cjs/extensions/forms/Field/SelectCountry.js +38 -0
  163. package/cjs/extensions/forms/Field/SelectCountry.js.map +1 -0
  164. package/cjs/extensions/forms/Field/Selection.d.ts +13 -0
  165. package/cjs/extensions/forms/Field/Selection.js +120 -0
  166. package/cjs/extensions/forms/Field/Selection.js.map +1 -0
  167. package/cjs/extensions/forms/Field/String.d.ts +32 -0
  168. package/cjs/extensions/forms/Field/String.js +135 -0
  169. package/cjs/extensions/forms/Field/String.js.map +1 -0
  170. package/cjs/extensions/forms/Field/Toggle.d.ts +14 -0
  171. package/cjs/extensions/forms/Field/Toggle.js +129 -0
  172. package/cjs/extensions/forms/Field/Toggle.js.map +1 -0
  173. package/cjs/extensions/forms/Field/fields.scss +2 -0
  174. package/cjs/extensions/forms/Field/hooks/index.d.ts +1 -0
  175. package/cjs/extensions/forms/Field/hooks/index.js +14 -0
  176. package/cjs/extensions/forms/Field/hooks/index.js.map +1 -0
  177. package/cjs/extensions/forms/Field/hooks/useField.d.ts +11 -0
  178. package/cjs/extensions/forms/Field/hooks/useField.js +163 -0
  179. package/cjs/extensions/forms/Field/hooks/useField.js.map +1 -0
  180. package/cjs/extensions/forms/Field/index.d.ts +39 -0
  181. package/cjs/extensions/forms/Field/index.js +48 -0
  182. package/cjs/extensions/forms/Field/index.js.map +1 -0
  183. package/cjs/extensions/forms/Field/style/dnb-number.css +11 -0
  184. package/cjs/extensions/forms/Field/style/dnb-number.min.css +1 -0
  185. package/cjs/extensions/forms/Field/style/dnb-number.scss +19 -0
  186. package/cjs/extensions/forms/Field/style/dnb-phone-number.css +23 -0
  187. package/cjs/extensions/forms/Field/style/dnb-phone-number.min.css +1 -0
  188. package/cjs/extensions/forms/Field/style/dnb-phone-number.scss +28 -0
  189. package/cjs/extensions/forms/Field/style/dnb-postal-code-and-city.css +19 -0
  190. package/cjs/extensions/forms/Field/style/dnb-postal-code-and-city.min.css +1 -0
  191. package/cjs/extensions/forms/Field/style/dnb-postal-code-and-city.scss +25 -0
  192. package/cjs/extensions/forms/Field/style/dnb-selection.css +6 -0
  193. package/cjs/extensions/forms/Field/style/dnb-selection.min.css +1 -0
  194. package/cjs/extensions/forms/Field/style/dnb-selection.scss +15 -0
  195. package/cjs/extensions/forms/Field/style/dnb-string.css +11 -0
  196. package/cjs/extensions/forms/Field/style/dnb-string.min.css +1 -0
  197. package/cjs/extensions/forms/Field/style/dnb-string.scss +19 -0
  198. package/cjs/extensions/forms/Field/style/index.d.ts +6 -0
  199. package/cjs/extensions/forms/Field/style/index.js +5 -0
  200. package/cjs/extensions/forms/Field/style/index.js.map +1 -0
  201. package/cjs/extensions/forms/Field/style/index.scss +5 -0
  202. package/cjs/extensions/forms/Field/style.d.ts +5 -0
  203. package/cjs/extensions/forms/Field/style.js +4 -0
  204. package/cjs/extensions/forms/Field/style.js.map +1 -0
  205. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +12 -0
  206. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +77 -0
  207. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -0
  208. package/cjs/extensions/forms/FieldBlock/index.d.ts +1 -0
  209. package/cjs/extensions/forms/FieldBlock/index.js +14 -0
  210. package/cjs/extensions/forms/FieldBlock/index.js.map +1 -0
  211. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +15 -0
  212. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -0
  213. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +19 -0
  214. package/cjs/extensions/forms/FieldBlock/style/index.d.ts +5 -0
  215. package/cjs/extensions/forms/FieldBlock/style/index.js +4 -0
  216. package/cjs/extensions/forms/FieldBlock/style/index.js.map +1 -0
  217. package/cjs/extensions/forms/FieldBlock/style.d.ts +5 -0
  218. package/cjs/extensions/forms/FieldBlock/style.js +4 -0
  219. package/cjs/extensions/forms/FieldBlock/style.js.map +1 -0
  220. package/cjs/extensions/forms/FieldGroup/FieldGroup.d.ts +17 -0
  221. package/cjs/extensions/forms/FieldGroup/FieldGroup.js +95 -0
  222. package/cjs/extensions/forms/FieldGroup/FieldGroup.js.map +1 -0
  223. package/cjs/extensions/forms/FieldGroup/index.d.ts +2 -0
  224. package/cjs/extensions/forms/FieldGroup/index.js +27 -0
  225. package/cjs/extensions/forms/FieldGroup/index.js.map +1 -0
  226. package/cjs/extensions/forms/Forms.d.ts +3 -0
  227. package/cjs/extensions/forms/Forms.js +22 -0
  228. package/cjs/extensions/forms/Forms.js.map +1 -0
  229. package/cjs/extensions/forms/Layout/ButtonRow.d.ts +10 -0
  230. package/cjs/extensions/forms/Layout/ButtonRow.js +25 -0
  231. package/cjs/extensions/forms/Layout/ButtonRow.js.map +1 -0
  232. package/cjs/extensions/forms/Layout/Card.d.ts +14 -0
  233. package/cjs/extensions/forms/Layout/Card.js +45 -0
  234. package/cjs/extensions/forms/Layout/Card.js.map +1 -0
  235. package/cjs/extensions/forms/Layout/Column.d.ts +7 -0
  236. package/cjs/extensions/forms/Layout/Column.js +26 -0
  237. package/cjs/extensions/forms/Layout/Column.js.map +1 -0
  238. package/cjs/extensions/forms/Layout/FlexContainer.d.ts +23 -0
  239. package/cjs/extensions/forms/Layout/FlexContainer.js +104 -0
  240. package/cjs/extensions/forms/Layout/FlexContainer.js.map +1 -0
  241. package/cjs/extensions/forms/Layout/FlexItem.d.ts +12 -0
  242. package/cjs/extensions/forms/Layout/FlexItem.js +28 -0
  243. package/cjs/extensions/forms/Layout/FlexItem.js.map +1 -0
  244. package/cjs/extensions/forms/Layout/InfoCardSection.d.ts +8 -0
  245. package/cjs/extensions/forms/Layout/InfoCardSection.js +25 -0
  246. package/cjs/extensions/forms/Layout/InfoCardSection.js.map +1 -0
  247. package/cjs/extensions/forms/Layout/MainHeading.d.ts +10 -0
  248. package/cjs/extensions/forms/Layout/MainHeading.js +27 -0
  249. package/cjs/extensions/forms/Layout/MainHeading.js.map +1 -0
  250. package/cjs/extensions/forms/Layout/Row.d.ts +7 -0
  251. package/cjs/extensions/forms/Layout/Row.js +26 -0
  252. package/cjs/extensions/forms/Layout/Row.js.map +1 -0
  253. package/cjs/extensions/forms/Layout/Section.d.ts +13 -0
  254. package/cjs/extensions/forms/Layout/Section.js +29 -0
  255. package/cjs/extensions/forms/Layout/Section.js.map +1 -0
  256. package/cjs/extensions/forms/Layout/SubHeading.d.ts +10 -0
  257. package/cjs/extensions/forms/Layout/SubHeading.js +26 -0
  258. package/cjs/extensions/forms/Layout/SubHeading.js.map +1 -0
  259. package/cjs/extensions/forms/Layout/index.d.ts +23 -0
  260. package/cjs/extensions/forms/Layout/index.js +32 -0
  261. package/cjs/extensions/forms/Layout/index.js.map +1 -0
  262. package/cjs/extensions/forms/Layout/style/dnb-button-row.css +7 -0
  263. package/cjs/extensions/forms/Layout/style/dnb-button-row.min.css +1 -0
  264. package/cjs/extensions/forms/Layout/style/dnb-button-row.scss +5 -0
  265. package/cjs/extensions/forms/Layout/style/dnb-card.css +13 -0
  266. package/cjs/extensions/forms/Layout/style/dnb-card.min.css +1 -0
  267. package/cjs/extensions/forms/Layout/style/dnb-card.scss +15 -0
  268. package/cjs/extensions/forms/Layout/style/dnb-flex-container.css +63 -0
  269. package/cjs/extensions/forms/Layout/style/dnb-flex-container.min.css +1 -0
  270. package/cjs/extensions/forms/Layout/style/dnb-flex-container.scss +84 -0
  271. package/cjs/extensions/forms/Layout/style/dnb-flex-item.css +6 -0
  272. package/cjs/extensions/forms/Layout/style/dnb-flex-item.min.css +1 -0
  273. package/cjs/extensions/forms/Layout/style/dnb-flex-item.scss +9 -0
  274. package/cjs/extensions/forms/Layout/style/dnb-section.css +3 -0
  275. package/cjs/extensions/forms/Layout/style/dnb-section.min.css +1 -0
  276. package/cjs/extensions/forms/Layout/style/dnb-section.scss +3 -0
  277. package/cjs/extensions/forms/Layout/style/index.d.ts +9 -0
  278. package/cjs/extensions/forms/Layout/style/index.js +8 -0
  279. package/cjs/extensions/forms/Layout/style/index.js.map +1 -0
  280. package/cjs/extensions/forms/Layout/style/index.scss +5 -0
  281. package/cjs/extensions/forms/Layout/style.d.ts +5 -0
  282. package/cjs/extensions/forms/Layout/style.js +4 -0
  283. package/cjs/extensions/forms/Layout/style.js.map +1 -0
  284. package/cjs/extensions/forms/StepsLayout/Buttons.d.ts +9 -0
  285. package/cjs/extensions/forms/StepsLayout/Buttons.js +27 -0
  286. package/cjs/extensions/forms/StepsLayout/Buttons.js.map +1 -0
  287. package/cjs/extensions/forms/StepsLayout/NextButton.d.ts +10 -0
  288. package/cjs/extensions/forms/StepsLayout/NextButton.js +37 -0
  289. package/cjs/extensions/forms/StepsLayout/NextButton.js.map +1 -0
  290. package/cjs/extensions/forms/StepsLayout/PreviousButton.d.ts +10 -0
  291. package/cjs/extensions/forms/StepsLayout/PreviousButton.js +37 -0
  292. package/cjs/extensions/forms/StepsLayout/PreviousButton.js.map +1 -0
  293. package/cjs/extensions/forms/StepsLayout/Step.d.ts +15 -0
  294. package/cjs/extensions/forms/StepsLayout/Step.js +37 -0
  295. package/cjs/extensions/forms/StepsLayout/Step.js.map +1 -0
  296. package/cjs/extensions/forms/StepsLayout/StepsContext.d.ts +8 -0
  297. package/cjs/extensions/forms/StepsLayout/StepsContext.js +12 -0
  298. package/cjs/extensions/forms/StepsLayout/StepsContext.js.map +1 -0
  299. package/cjs/extensions/forms/StepsLayout/StepsLayout.d.ts +19 -0
  300. package/cjs/extensions/forms/StepsLayout/StepsLayout.js +116 -0
  301. package/cjs/extensions/forms/StepsLayout/StepsLayout.js.map +1 -0
  302. package/cjs/extensions/forms/StepsLayout/index.d.ts +3 -0
  303. package/cjs/extensions/forms/StepsLayout/index.js +18 -0
  304. package/cjs/extensions/forms/StepsLayout/index.js.map +1 -0
  305. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.css +25 -0
  306. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -0
  307. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +23 -0
  308. package/cjs/extensions/forms/StepsLayout/style/index.d.ts +5 -0
  309. package/cjs/extensions/forms/StepsLayout/style/index.js +4 -0
  310. package/cjs/extensions/forms/StepsLayout/style/index.js.map +1 -0
  311. package/cjs/extensions/forms/StepsLayout/style/index.scss +1 -0
  312. package/cjs/extensions/forms/StepsLayout/style.d.ts +5 -0
  313. package/cjs/extensions/forms/StepsLayout/style.js +4 -0
  314. package/cjs/extensions/forms/StepsLayout/style.js.map +1 -0
  315. package/cjs/extensions/forms/Value/BankAccountNumber.d.ts +7 -0
  316. package/cjs/extensions/forms/Value/BankAccountNumber.js +32 -0
  317. package/cjs/extensions/forms/Value/BankAccountNumber.js.map +1 -0
  318. package/cjs/extensions/forms/Value/Boolean.d.ts +8 -0
  319. package/cjs/extensions/forms/Value/Boolean.js +37 -0
  320. package/cjs/extensions/forms/Value/Boolean.js.map +1 -0
  321. package/cjs/extensions/forms/Value/Currency.d.ts +7 -0
  322. package/cjs/extensions/forms/Value/Currency.js +26 -0
  323. package/cjs/extensions/forms/Value/Currency.js.map +1 -0
  324. package/cjs/extensions/forms/Value/Date.d.ts +7 -0
  325. package/cjs/extensions/forms/Value/Date.js +28 -0
  326. package/cjs/extensions/forms/Value/Date.js.map +1 -0
  327. package/cjs/extensions/forms/Value/Email.d.ts +7 -0
  328. package/cjs/extensions/forms/Value/Email.js +28 -0
  329. package/cjs/extensions/forms/Value/Email.js.map +1 -0
  330. package/cjs/extensions/forms/Value/FirstName.d.ts +7 -0
  331. package/cjs/extensions/forms/Value/FirstName.js +28 -0
  332. package/cjs/extensions/forms/Value/FirstName.js.map +1 -0
  333. package/cjs/extensions/forms/Value/LastName.d.ts +7 -0
  334. package/cjs/extensions/forms/Value/LastName.js +28 -0
  335. package/cjs/extensions/forms/Value/LastName.js.map +1 -0
  336. package/cjs/extensions/forms/Value/NationalIdentityNumber.d.ts +7 -0
  337. package/cjs/extensions/forms/Value/NationalIdentityNumber.js +32 -0
  338. package/cjs/extensions/forms/Value/NationalIdentityNumber.js.map +1 -0
  339. package/cjs/extensions/forms/Value/Number.d.ts +14 -0
  340. package/cjs/extensions/forms/Value/Number.js +44 -0
  341. package/cjs/extensions/forms/Value/Number.js.map +1 -0
  342. package/cjs/extensions/forms/Value/PhoneNumber.d.ts +7 -0
  343. package/cjs/extensions/forms/Value/PhoneNumber.js +32 -0
  344. package/cjs/extensions/forms/Value/PhoneNumber.js.map +1 -0
  345. package/cjs/extensions/forms/Value/String.d.ts +8 -0
  346. package/cjs/extensions/forms/Value/String.js +34 -0
  347. package/cjs/extensions/forms/Value/String.js.map +1 -0
  348. package/cjs/extensions/forms/Value/hooks/index.d.ts +1 -0
  349. package/cjs/extensions/forms/Value/hooks/index.js +14 -0
  350. package/cjs/extensions/forms/Value/hooks/index.js.map +1 -0
  351. package/cjs/extensions/forms/Value/hooks/useValue.d.ts +2 -0
  352. package/cjs/extensions/forms/Value/hooks/useValue.js +31 -0
  353. package/cjs/extensions/forms/Value/hooks/useValue.js.map +1 -0
  354. package/cjs/extensions/forms/Value/index.d.ts +25 -0
  355. package/cjs/extensions/forms/Value/index.js +34 -0
  356. package/cjs/extensions/forms/Value/index.js.map +1 -0
  357. package/cjs/extensions/forms/ValueBlock/ValueBlock.d.ts +11 -0
  358. package/cjs/extensions/forms/ValueBlock/ValueBlock.js +38 -0
  359. package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -0
  360. package/cjs/extensions/forms/ValueBlock/index.d.ts +1 -0
  361. package/cjs/extensions/forms/ValueBlock/index.js +14 -0
  362. package/cjs/extensions/forms/ValueBlock/index.js.map +1 -0
  363. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.css +16 -0
  364. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -0
  365. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.scss +19 -0
  366. package/cjs/extensions/forms/ValueBlock/style/index.d.ts +5 -0
  367. package/cjs/extensions/forms/ValueBlock/style/index.js +4 -0
  368. package/cjs/extensions/forms/ValueBlock/style/index.js.map +1 -0
  369. package/cjs/extensions/forms/ValueBlock/style/index.scss +1 -0
  370. package/cjs/extensions/forms/ValueBlock/style.d.ts +5 -0
  371. package/cjs/extensions/forms/ValueBlock/style.js +4 -0
  372. package/cjs/extensions/forms/ValueBlock/style.js.map +1 -0
  373. package/cjs/extensions/forms/Visibility/Visibility.d.ts +24 -0
  374. package/cjs/extensions/forms/Visibility/Visibility.js +55 -0
  375. package/cjs/extensions/forms/Visibility/Visibility.js.map +1 -0
  376. package/cjs/extensions/forms/Visibility/index.d.ts +1 -0
  377. package/cjs/extensions/forms/Visibility/index.js +14 -0
  378. package/cjs/extensions/forms/Visibility/index.js.map +1 -0
  379. package/cjs/extensions/forms/component-types.d.ts +4 -0
  380. package/cjs/extensions/forms/component-types.js +1 -0
  381. package/cjs/extensions/forms/component-types.js.map +1 -0
  382. package/cjs/extensions/forms/constants/countries.d.ts +6 -0
  383. package/cjs/extensions/forms/constants/countries.js +969 -0
  384. package/cjs/extensions/forms/constants/countries.js.map +1 -0
  385. package/cjs/extensions/forms/field-types.d.ts +52 -0
  386. package/cjs/extensions/forms/field-types.js +1 -0
  387. package/cjs/extensions/forms/field-types.js.map +1 -0
  388. package/cjs/extensions/forms/index.d.ts +13 -0
  389. package/cjs/extensions/forms/index.js +110 -0
  390. package/cjs/extensions/forms/index.js.map +1 -0
  391. package/cjs/extensions/forms/style/dnb-forms.css +237 -0
  392. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -0
  393. package/cjs/extensions/forms/style/dnb-forms.scss +6 -0
  394. package/cjs/extensions/forms/style.d.ts +5 -0
  395. package/cjs/extensions/forms/style.js +4 -0
  396. package/cjs/extensions/forms/style.js.map +1 -0
  397. package/cjs/extensions/forms/types.d.ts +11 -0
  398. package/cjs/extensions/forms/types.js +20 -0
  399. package/cjs/extensions/forms/types.js.map +1 -0
  400. package/cjs/extensions/forms/utils/TestElement/TestElement.d.ts +6 -0
  401. package/cjs/extensions/forms/utils/TestElement/TestElement.js +17 -0
  402. package/cjs/extensions/forms/utils/TestElement/TestElement.js.map +1 -0
  403. package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.css +6 -0
  404. package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -0
  405. package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.scss +6 -0
  406. package/cjs/extensions/forms/utils/TestElement/style/index.d.ts +5 -0
  407. package/cjs/extensions/forms/utils/TestElement/style/index.js +4 -0
  408. package/cjs/extensions/forms/utils/TestElement/style/index.js.map +1 -0
  409. package/cjs/extensions/forms/utils/TestElement/style.d.ts +5 -0
  410. package/cjs/extensions/forms/utils/TestElement/style.js +4 -0
  411. package/cjs/extensions/forms/utils/TestElement/style.js.map +1 -0
  412. package/cjs/extensions/forms/utils/ajv.d.ts +14 -0
  413. package/cjs/extensions/forms/utils/ajv.js +69 -0
  414. package/cjs/extensions/forms/utils/ajv.js.map +1 -0
  415. package/cjs/extensions/forms/utils/components.d.ts +3 -0
  416. package/cjs/extensions/forms/utils/components.js +32 -0
  417. package/cjs/extensions/forms/utils/components.js.map +1 -0
  418. package/cjs/extensions/forms/utils/index.d.ts +3 -0
  419. package/cjs/extensions/forms/utils/index.js +41 -0
  420. package/cjs/extensions/forms/utils/index.js.map +1 -0
  421. package/cjs/extensions/forms/utils/numbers.d.ts +17 -0
  422. package/cjs/extensions/forms/utils/numbers.js +42 -0
  423. package/cjs/extensions/forms/utils/numbers.js.map +1 -0
  424. package/cjs/extensions/forms/value-types.d.ts +15 -0
  425. package/cjs/extensions/forms/value-types.js +1 -0
  426. package/cjs/extensions/forms/value-types.js.map +1 -0
  427. package/cjs/extensions/index.d.ts +2 -1
  428. package/cjs/extensions/index.js +7 -0
  429. package/cjs/extensions/index.js.map +1 -1
  430. package/cjs/extensions/lib.d.ts +22 -1
  431. package/cjs/extensions/lib.js +8 -0
  432. package/cjs/extensions/lib.js.map +1 -1
  433. package/cjs/extensions/payment-card/utils/Types.js.map +1 -1
  434. package/cjs/fragments/drawer-list/DrawerList.js.map +1 -1
  435. package/cjs/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  436. package/cjs/shared/Context.d.ts +2 -0
  437. package/cjs/shared/Context.js.map +1 -1
  438. package/cjs/shared/Eufemia.d.ts +1 -1
  439. package/cjs/shared/Eufemia.js +2 -2
  440. package/cjs/shared/Eufemia.js.map +1 -1
  441. package/cjs/shared/VisibilityByTheme.d.ts +1 -1
  442. package/cjs/shared/VisibilityByTheme.js.map +1 -1
  443. package/cjs/shared/helpers.d.ts +2 -2
  444. package/cjs/shared/helpers.js.map +1 -1
  445. package/cjs/shared/locales/en-GB.d.ts +39 -0
  446. package/cjs/shared/locales/en-GB.js +39 -0
  447. package/cjs/shared/locales/en-GB.js.map +1 -1
  448. package/cjs/shared/locales/en-US.d.ts +39 -0
  449. package/cjs/shared/locales/index.d.ts +78 -0
  450. package/cjs/shared/locales/nb-NO.d.ts +39 -0
  451. package/cjs/shared/locales/nb-NO.js +39 -0
  452. package/cjs/shared/locales/nb-NO.js.map +1 -1
  453. package/cjs/style/core/utilities.scss +40 -8
  454. package/cjs/style/dnb-ui-components.css +71 -24
  455. package/cjs/style/dnb-ui-components.min.css +1 -1
  456. package/cjs/style/dnb-ui-extensions.css +238 -0
  457. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  458. package/cjs/style/dnb-ui-extensions.scss +1 -0
  459. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +17 -11
  460. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  461. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +105 -82
  462. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  463. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +238 -0
  464. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  465. package/cjs/style/themes/theme-sbanken/properties.js +4 -4
  466. package/cjs/style/themes/theme-sbanken/properties.js.map +1 -1
  467. package/cjs/style/themes/theme-sbanken/properties.scss +4 -4
  468. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +4 -11
  469. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  470. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +429 -333
  471. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -1
  472. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.scss +2 -2
  473. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +0 -7
  474. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +238 -0
  475. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  476. package/cjs/style/themes/theme-ui/ui-theme-basis.css +17 -11
  477. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  478. package/cjs/style/themes/theme-ui/ui-theme-components.css +105 -82
  479. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  480. package/cjs/style/themes/theme-ui/ui-theme-elements.css +17 -11
  481. package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  482. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +238 -0
  483. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  484. package/cjs/style/themes/theme-ui/ui-theme-tags.css +24 -12
  485. package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  486. package/components/accordion/Accordion.d.ts +240 -136
  487. package/components/accordion/Accordion.js +214 -251
  488. package/components/accordion/Accordion.js.map +1 -1
  489. package/components/accordion/AccordionContent.d.ts +12 -14
  490. package/components/accordion/AccordionContent.js +5 -17
  491. package/components/accordion/AccordionContent.js.map +1 -1
  492. package/components/accordion/AccordionContext.d.ts +17 -2
  493. package/components/accordion/AccordionContext.js.map +1 -1
  494. package/components/accordion/AccordionGroup.d.ts +10 -12
  495. package/components/accordion/AccordionGroup.js +60 -71
  496. package/components/accordion/AccordionGroup.js.map +1 -1
  497. package/components/accordion/AccordionHeader.d.ts +62 -92
  498. package/components/accordion/AccordionHeader.js +175 -251
  499. package/components/accordion/AccordionHeader.js.map +1 -1
  500. package/components/accordion/AccordionProviderContext.d.ts +16 -2
  501. package/components/accordion/AccordionProviderContext.js.map +1 -1
  502. package/components/accordion/AccordionStore.d.ts +7 -6
  503. package/components/accordion/AccordionStore.js +2 -2
  504. package/components/accordion/AccordionStore.js.map +1 -1
  505. package/components/accordion/defaultProps.d.ts +2 -0
  506. package/components/accordion/defaultProps.js +5 -0
  507. package/components/accordion/defaultProps.js.map +1 -0
  508. package/components/anchor/style/anchor-mixins.scss +26 -27
  509. package/components/anchor/style/dnb-anchor.css +27 -16
  510. package/components/anchor/style/dnb-anchor.min.css +1 -1
  511. package/components/anchor/style/dnb-anchor.scss +1 -1
  512. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +97 -44
  513. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  514. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +48 -22
  515. package/components/anchor/style/themes/dnb-anchor-theme-ui.css +20 -10
  516. package/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
  517. package/components/anchor/style/themes/dnb-anchor-theme-ui.scss +4 -9
  518. package/components/autocomplete/Autocomplete.js +2 -2
  519. package/components/autocomplete/Autocomplete.js.map +1 -1
  520. package/components/button/style/themes/button-mixins.scss +23 -4
  521. package/components/button/style/themes/dnb-button-theme-sbanken.css +80 -82
  522. package/components/button/style/themes/dnb-button-theme-sbanken.min.css +3 -1
  523. package/components/button/style/themes/dnb-button-theme-sbanken.scss +82 -54
  524. package/components/date-picker/DatePicker.js.map +1 -1
  525. package/components/date-picker/DatePickerCalendar.js.map +1 -1
  526. package/components/dialog/Dialog.d.ts +1 -1
  527. package/components/dialog/DialogContent.d.ts +1 -1
  528. package/components/dialog/DialogContent.js +4 -2
  529. package/components/dialog/DialogContent.js.map +1 -1
  530. package/components/dialog/parts/DialogAction.d.ts +5 -1
  531. package/components/dialog/parts/DialogAction.js +3 -2
  532. package/components/dialog/parts/DialogAction.js.map +1 -1
  533. package/components/form-row/FormRow.js.map +1 -1
  534. package/components/form-row/style/dnb-form-row.scss +2 -2
  535. package/components/form-set/FormSet.js.map +1 -1
  536. package/components/height-animation/HeightAnimation.d.ts +1 -1
  537. package/components/height-animation/HeightAnimation.js.map +1 -1
  538. package/components/height-animation/useHeightAnimation.js.map +1 -1
  539. package/components/icon/lib/SvgComparison.js.map +1 -1
  540. package/components/input/style/dnb-input.css +5 -0
  541. package/components/input/style/dnb-input.min.css +1 -1
  542. package/components/input/style/dnb-input.scss +7 -1
  543. package/components/input/style/themes/dnb-input-theme-sbanken.css +104 -0
  544. package/components/input/style/themes/dnb-input-theme-sbanken.min.css +1 -0
  545. package/components/input/style/themes/dnb-input-theme-sbanken.scss +126 -0
  546. package/components/input-masked/InputMaskedUtils.js.map +1 -1
  547. package/components/input-masked/TextMask.js.map +1 -1
  548. package/components/modal/Modal.js +0 -2
  549. package/components/modal/Modal.js.map +1 -1
  550. package/components/modal/bodyScrollLock.js.map +1 -1
  551. package/components/number-format/NumberUtils.js +8 -6
  552. package/components/number-format/NumberUtils.js.map +1 -1
  553. package/components/number-format/style/dnb-number-format.css +0 -7
  554. package/components/number-format/style/dnb-number-format.scss +0 -1
  555. package/components/pagination/PaginationInfinity.js.map +1 -1
  556. package/components/radio/Radio.js.map +1 -1
  557. package/components/section/style/themes/dnb-section-theme-ui.css +14 -7
  558. package/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  559. package/components/slider/hooks/useSliderEvents.js.map +1 -1
  560. package/components/slider/types.d.ts +1 -1
  561. package/components/slider/types.js.map +1 -1
  562. package/components/space/Space.d.ts +2 -2
  563. package/components/space/SpacingHelper.js.map +1 -1
  564. package/components/step-indicator/StepIndicatorProps.d.ts +1 -1
  565. package/components/table/TableAccordion.js.map +1 -1
  566. package/components/table/TableTr.js.map +1 -1
  567. package/components/textarea/Textarea.js.map +1 -1
  568. package/components/textarea/style/dnb-textarea.css +39 -1
  569. package/components/textarea/style/dnb-textarea.min.css +1 -1
  570. package/components/textarea/style/dnb-textarea.scss +20 -1
  571. package/components/textarea/style/themes/dnb-textarea-theme-sbanken.css +61 -0
  572. package/components/textarea/style/themes/dnb-textarea-theme-sbanken.min.css +1 -0
  573. package/components/textarea/style/themes/dnb-textarea-theme-sbanken.scss +72 -0
  574. package/components/textarea/style/themes/dnb-textarea-theme-ui.css +0 -41
  575. package/components/textarea/style/themes/dnb-textarea-theme-ui.min.css +1 -1
  576. package/components/textarea/style/themes/dnb-textarea-theme-ui.scss +0 -22
  577. package/components/toggle-button/ToggleButton.js.map +1 -1
  578. package/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  579. package/components/tooltip/TooltipContainer.js.map +1 -1
  580. package/components/upload/Upload.js +2 -2
  581. package/components/upload/Upload.js.map +1 -1
  582. package/components/upload/useUpload.d.ts +1 -1
  583. package/components/upload/useUpload.js +2 -2
  584. package/components/upload/useUpload.js.map +1 -1
  585. package/elements/blockquote/Blockquote.d.ts +1 -1
  586. package/elements/blockquote/Blockquote.js.map +1 -1
  587. package/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +0 -2
  588. package/es/components/accordion/Accordion.d.ts +240 -136
  589. package/es/components/accordion/Accordion.js +210 -244
  590. package/es/components/accordion/Accordion.js.map +1 -1
  591. package/es/components/accordion/AccordionContent.d.ts +12 -14
  592. package/es/components/accordion/AccordionContent.js +5 -17
  593. package/es/components/accordion/AccordionContent.js.map +1 -1
  594. package/es/components/accordion/AccordionContext.d.ts +17 -2
  595. package/es/components/accordion/AccordionContext.js.map +1 -1
  596. package/es/components/accordion/AccordionGroup.d.ts +10 -12
  597. package/es/components/accordion/AccordionGroup.js +60 -71
  598. package/es/components/accordion/AccordionGroup.js.map +1 -1
  599. package/es/components/accordion/AccordionHeader.d.ts +62 -92
  600. package/es/components/accordion/AccordionHeader.js +176 -253
  601. package/es/components/accordion/AccordionHeader.js.map +1 -1
  602. package/es/components/accordion/AccordionProviderContext.d.ts +16 -2
  603. package/es/components/accordion/AccordionProviderContext.js.map +1 -1
  604. package/es/components/accordion/AccordionStore.d.ts +7 -6
  605. package/es/components/accordion/AccordionStore.js +2 -2
  606. package/es/components/accordion/AccordionStore.js.map +1 -1
  607. package/es/components/accordion/defaultProps.d.ts +2 -0
  608. package/es/components/accordion/defaultProps.js +5 -0
  609. package/es/components/accordion/defaultProps.js.map +1 -0
  610. package/es/components/anchor/style/anchor-mixins.scss +26 -27
  611. package/es/components/anchor/style/dnb-anchor.css +27 -16
  612. package/es/components/anchor/style/dnb-anchor.min.css +1 -1
  613. package/es/components/anchor/style/dnb-anchor.scss +1 -1
  614. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.css +97 -44
  615. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.min.css +1 -1
  616. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +48 -22
  617. package/es/components/anchor/style/themes/dnb-anchor-theme-ui.css +20 -10
  618. package/es/components/anchor/style/themes/dnb-anchor-theme-ui.min.css +1 -1
  619. package/es/components/anchor/style/themes/dnb-anchor-theme-ui.scss +4 -9
  620. package/es/components/autocomplete/Autocomplete.js +2 -2
  621. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  622. package/es/components/button/style/themes/button-mixins.scss +23 -4
  623. package/es/components/button/style/themes/dnb-button-theme-sbanken.css +80 -82
  624. package/es/components/button/style/themes/dnb-button-theme-sbanken.min.css +3 -1
  625. package/es/components/button/style/themes/dnb-button-theme-sbanken.scss +82 -54
  626. package/es/components/date-picker/DatePicker.js.map +1 -1
  627. package/es/components/date-picker/DatePickerCalendar.js.map +1 -1
  628. package/es/components/dialog/Dialog.d.ts +1 -1
  629. package/es/components/dialog/DialogContent.d.ts +1 -1
  630. package/es/components/dialog/DialogContent.js +4 -2
  631. package/es/components/dialog/DialogContent.js.map +1 -1
  632. package/es/components/dialog/parts/DialogAction.d.ts +5 -1
  633. package/es/components/dialog/parts/DialogAction.js +3 -2
  634. package/es/components/dialog/parts/DialogAction.js.map +1 -1
  635. package/es/components/form-row/FormRow.js.map +1 -1
  636. package/es/components/form-row/style/dnb-form-row.scss +2 -2
  637. package/es/components/form-set/FormSet.js.map +1 -1
  638. package/es/components/height-animation/HeightAnimation.d.ts +1 -1
  639. package/es/components/height-animation/HeightAnimation.js.map +1 -1
  640. package/es/components/height-animation/useHeightAnimation.js.map +1 -1
  641. package/es/components/icon/lib/SvgComparison.js.map +1 -1
  642. package/es/components/input/style/dnb-input.css +5 -0
  643. package/es/components/input/style/dnb-input.min.css +1 -1
  644. package/es/components/input/style/dnb-input.scss +7 -1
  645. package/es/components/input/style/themes/dnb-input-theme-sbanken.css +104 -0
  646. package/es/components/input/style/themes/dnb-input-theme-sbanken.min.css +1 -0
  647. package/es/components/input/style/themes/dnb-input-theme-sbanken.scss +126 -0
  648. package/es/components/input-masked/InputMaskedUtils.js.map +1 -1
  649. package/es/components/input-masked/TextMask.js.map +1 -1
  650. package/es/components/modal/Modal.js +0 -2
  651. package/es/components/modal/Modal.js.map +1 -1
  652. package/es/components/modal/bodyScrollLock.js.map +1 -1
  653. package/es/components/number-format/NumberUtils.js +8 -6
  654. package/es/components/number-format/NumberUtils.js.map +1 -1
  655. package/es/components/number-format/style/dnb-number-format.css +0 -7
  656. package/es/components/number-format/style/dnb-number-format.scss +0 -1
  657. package/es/components/pagination/PaginationInfinity.js.map +1 -1
  658. package/es/components/radio/Radio.js.map +1 -1
  659. package/es/components/section/style/themes/dnb-section-theme-ui.css +14 -7
  660. package/es/components/section/style/themes/dnb-section-theme-ui.min.css +1 -1
  661. package/es/components/slider/hooks/useSliderEvents.js.map +1 -1
  662. package/es/components/slider/types.d.ts +1 -1
  663. package/es/components/slider/types.js.map +1 -1
  664. package/es/components/space/Space.d.ts +2 -2
  665. package/es/components/space/SpacingHelper.js.map +1 -1
  666. package/es/components/step-indicator/StepIndicatorProps.d.ts +1 -1
  667. package/es/components/table/TableAccordion.js.map +1 -1
  668. package/es/components/table/TableTr.js.map +1 -1
  669. package/es/components/textarea/Textarea.js.map +1 -1
  670. package/es/components/textarea/style/dnb-textarea.css +39 -1
  671. package/es/components/textarea/style/dnb-textarea.min.css +1 -1
  672. package/es/components/textarea/style/dnb-textarea.scss +20 -1
  673. package/es/components/textarea/style/themes/dnb-textarea-theme-sbanken.css +61 -0
  674. package/es/components/textarea/style/themes/dnb-textarea-theme-sbanken.min.css +1 -0
  675. package/es/components/textarea/style/themes/dnb-textarea-theme-sbanken.scss +72 -0
  676. package/es/components/textarea/style/themes/dnb-textarea-theme-ui.css +0 -41
  677. package/es/components/textarea/style/themes/dnb-textarea-theme-ui.min.css +1 -1
  678. package/es/components/textarea/style/themes/dnb-textarea-theme-ui.scss +0 -22
  679. package/es/components/toggle-button/ToggleButton.js.map +1 -1
  680. package/es/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  681. package/es/components/tooltip/TooltipContainer.js.map +1 -1
  682. package/es/components/upload/Upload.js +2 -2
  683. package/es/components/upload/Upload.js.map +1 -1
  684. package/es/components/upload/useUpload.d.ts +1 -1
  685. package/es/components/upload/useUpload.js +2 -2
  686. package/es/components/upload/useUpload.js.map +1 -1
  687. package/es/elements/blockquote/Blockquote.d.ts +1 -1
  688. package/es/elements/blockquote/Blockquote.js.map +1 -1
  689. package/es/elements/blockquote/style/themes/dnb-blockquote-theme-sbanken.scss +0 -2
  690. package/es/extensions/forms/DataContext/At.d.ts +13 -0
  691. package/es/extensions/forms/DataContext/At.js +48 -0
  692. package/es/extensions/forms/DataContext/At.js.map +1 -0
  693. package/es/extensions/forms/DataContext/Context.d.ts +19 -0
  694. package/es/extensions/forms/DataContext/Context.js +16 -0
  695. package/es/extensions/forms/DataContext/Context.js.map +1 -0
  696. package/es/extensions/forms/DataContext/Provider.d.ts +19 -0
  697. package/es/extensions/forms/DataContext/Provider.js +102 -0
  698. package/es/extensions/forms/DataContext/Provider.js.map +1 -0
  699. package/es/extensions/forms/DataContext/SubmitButton.d.ts +9 -0
  700. package/es/extensions/forms/DataContext/SubmitButton.js +20 -0
  701. package/es/extensions/forms/DataContext/SubmitButton.js.map +1 -0
  702. package/es/extensions/forms/DataContext/index.d.ts +13 -0
  703. package/es/extensions/forms/DataContext/index.js +12 -0
  704. package/es/extensions/forms/DataContext/index.js.map +1 -0
  705. package/es/extensions/forms/Field/ArraySelection.d.ts +12 -0
  706. package/es/extensions/forms/Field/ArraySelection.js +60 -0
  707. package/es/extensions/forms/Field/ArraySelection.js.map +1 -0
  708. package/es/extensions/forms/Field/BankAccountNumber.d.ts +10 -0
  709. package/es/extensions/forms/Field/BankAccountNumber.js +28 -0
  710. package/es/extensions/forms/Field/BankAccountNumber.js.map +1 -0
  711. package/es/extensions/forms/Field/Boolean.d.ts +10 -0
  712. package/es/extensions/forms/Field/Boolean.js +23 -0
  713. package/es/extensions/forms/Field/Boolean.js.map +1 -0
  714. package/es/extensions/forms/Field/Currency.d.ts +10 -0
  715. package/es/extensions/forms/Field/Currency.js +50 -0
  716. package/es/extensions/forms/Field/Currency.js.map +1 -0
  717. package/es/extensions/forms/Field/Date.d.ts +8 -0
  718. package/es/extensions/forms/Field/Date.js +46 -0
  719. package/es/extensions/forms/Field/Date.js.map +1 -0
  720. package/es/extensions/forms/Field/Email.d.ts +7 -0
  721. package/es/extensions/forms/Field/Email.js +22 -0
  722. package/es/extensions/forms/Field/Email.js.map +1 -0
  723. package/es/extensions/forms/Field/FirstName.d.ts +7 -0
  724. package/es/extensions/forms/Field/FirstName.js +19 -0
  725. package/es/extensions/forms/Field/FirstName.js.map +1 -0
  726. package/es/extensions/forms/Field/LastName.d.ts +7 -0
  727. package/es/extensions/forms/Field/LastName.js +19 -0
  728. package/es/extensions/forms/Field/LastName.js.map +1 -0
  729. package/es/extensions/forms/Field/NationalIdentityNumber.d.ts +10 -0
  730. package/es/extensions/forms/Field/NationalIdentityNumber.js +27 -0
  731. package/es/extensions/forms/Field/NationalIdentityNumber.js.map +1 -0
  732. package/es/extensions/forms/Field/Number.d.ts +31 -0
  733. package/es/extensions/forms/Field/Number.js +100 -0
  734. package/es/extensions/forms/Field/Number.js.map +1 -0
  735. package/es/extensions/forms/Field/Option.d.ts +9 -0
  736. package/es/extensions/forms/Field/Option.js +14 -0
  737. package/es/extensions/forms/Field/Option.js.map +1 -0
  738. package/es/extensions/forms/Field/OrganizationNumber.d.ts +10 -0
  739. package/es/extensions/forms/Field/OrganizationNumber.js +28 -0
  740. package/es/extensions/forms/Field/OrganizationNumber.js.map +1 -0
  741. package/es/extensions/forms/Field/PhoneNumber.d.ts +12 -0
  742. package/es/extensions/forms/Field/PhoneNumber.js +87 -0
  743. package/es/extensions/forms/Field/PhoneNumber.js.map +1 -0
  744. package/es/extensions/forms/Field/PostalCodeAndCity.d.ts +10 -0
  745. package/es/extensions/forms/Field/PostalCodeAndCity.js +46 -0
  746. package/es/extensions/forms/Field/PostalCodeAndCity.js.map +1 -0
  747. package/es/extensions/forms/Field/SelectCountry.d.ts +7 -0
  748. package/es/extensions/forms/Field/SelectCountry.js +26 -0
  749. package/es/extensions/forms/Field/SelectCountry.js.map +1 -0
  750. package/es/extensions/forms/Field/Selection.d.ts +13 -0
  751. package/es/extensions/forms/Field/Selection.js +107 -0
  752. package/es/extensions/forms/Field/Selection.js.map +1 -0
  753. package/es/extensions/forms/Field/String.d.ts +32 -0
  754. package/es/extensions/forms/Field/String.js +122 -0
  755. package/es/extensions/forms/Field/String.js.map +1 -0
  756. package/es/extensions/forms/Field/Toggle.d.ts +14 -0
  757. package/es/extensions/forms/Field/Toggle.js +116 -0
  758. package/es/extensions/forms/Field/Toggle.js.map +1 -0
  759. package/es/extensions/forms/Field/fields.scss +2 -0
  760. package/es/extensions/forms/Field/hooks/index.d.ts +1 -0
  761. package/es/extensions/forms/Field/hooks/index.js +1 -0
  762. package/es/extensions/forms/Field/hooks/index.js.map +1 -0
  763. package/es/extensions/forms/Field/hooks/useField.d.ts +11 -0
  764. package/es/extensions/forms/Field/hooks/useField.js +150 -0
  765. package/es/extensions/forms/Field/hooks/useField.js.map +1 -0
  766. package/es/extensions/forms/Field/index.d.ts +39 -0
  767. package/es/extensions/forms/Field/index.js +40 -0
  768. package/es/extensions/forms/Field/index.js.map +1 -0
  769. package/es/extensions/forms/Field/style/dnb-number.css +11 -0
  770. package/es/extensions/forms/Field/style/dnb-number.min.css +1 -0
  771. package/es/extensions/forms/Field/style/dnb-number.scss +19 -0
  772. package/es/extensions/forms/Field/style/dnb-phone-number.css +23 -0
  773. package/es/extensions/forms/Field/style/dnb-phone-number.min.css +1 -0
  774. package/es/extensions/forms/Field/style/dnb-phone-number.scss +28 -0
  775. package/es/extensions/forms/Field/style/dnb-postal-code-and-city.css +19 -0
  776. package/es/extensions/forms/Field/style/dnb-postal-code-and-city.min.css +1 -0
  777. package/es/extensions/forms/Field/style/dnb-postal-code-and-city.scss +25 -0
  778. package/es/extensions/forms/Field/style/dnb-selection.css +6 -0
  779. package/es/extensions/forms/Field/style/dnb-selection.min.css +1 -0
  780. package/es/extensions/forms/Field/style/dnb-selection.scss +15 -0
  781. package/es/extensions/forms/Field/style/dnb-string.css +11 -0
  782. package/es/extensions/forms/Field/style/dnb-string.min.css +1 -0
  783. package/es/extensions/forms/Field/style/dnb-string.scss +19 -0
  784. package/es/extensions/forms/Field/style/index.d.ts +6 -0
  785. package/es/extensions/forms/Field/style/index.js +3 -0
  786. package/es/extensions/forms/Field/style/index.js.map +1 -0
  787. package/es/extensions/forms/Field/style/index.scss +5 -0
  788. package/es/extensions/forms/Field/style.d.ts +5 -0
  789. package/es/extensions/forms/Field/style.js +1 -0
  790. package/es/extensions/forms/Field/style.js.map +1 -0
  791. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +12 -0
  792. package/es/extensions/forms/FieldBlock/FieldBlock.js +69 -0
  793. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -0
  794. package/es/extensions/forms/FieldBlock/index.d.ts +1 -0
  795. package/es/extensions/forms/FieldBlock/index.js +1 -0
  796. package/es/extensions/forms/FieldBlock/index.js.map +1 -0
  797. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +15 -0
  798. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -0
  799. package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +19 -0
  800. package/es/extensions/forms/FieldBlock/style/index.d.ts +5 -0
  801. package/es/extensions/forms/FieldBlock/style/index.js +1 -0
  802. package/es/extensions/forms/FieldBlock/style/index.js.map +1 -0
  803. package/es/extensions/forms/FieldBlock/style.d.ts +5 -0
  804. package/es/extensions/forms/FieldBlock/style.js +1 -0
  805. package/es/extensions/forms/FieldBlock/style.js.map +1 -0
  806. package/es/extensions/forms/FieldGroup/FieldGroup.d.ts +17 -0
  807. package/es/extensions/forms/FieldGroup/FieldGroup.js +77 -0
  808. package/es/extensions/forms/FieldGroup/FieldGroup.js.map +1 -0
  809. package/es/extensions/forms/FieldGroup/index.d.ts +2 -0
  810. package/es/extensions/forms/FieldGroup/index.js +3 -0
  811. package/es/extensions/forms/FieldGroup/index.js.map +1 -0
  812. package/es/extensions/forms/Forms.d.ts +3 -0
  813. package/es/extensions/forms/Forms.js +4 -0
  814. package/es/extensions/forms/Forms.js.map +1 -0
  815. package/es/extensions/forms/Layout/ButtonRow.d.ts +10 -0
  816. package/es/extensions/forms/Layout/ButtonRow.js +17 -0
  817. package/es/extensions/forms/Layout/ButtonRow.js.map +1 -0
  818. package/es/extensions/forms/Layout/Card.d.ts +14 -0
  819. package/es/extensions/forms/Layout/Card.js +37 -0
  820. package/es/extensions/forms/Layout/Card.js.map +1 -0
  821. package/es/extensions/forms/Layout/Column.d.ts +7 -0
  822. package/es/extensions/forms/Layout/Column.js +17 -0
  823. package/es/extensions/forms/Layout/Column.js.map +1 -0
  824. package/es/extensions/forms/Layout/FlexContainer.d.ts +23 -0
  825. package/es/extensions/forms/Layout/FlexContainer.js +91 -0
  826. package/es/extensions/forms/Layout/FlexContainer.js.map +1 -0
  827. package/es/extensions/forms/Layout/FlexItem.d.ts +12 -0
  828. package/es/extensions/forms/Layout/FlexItem.js +20 -0
  829. package/es/extensions/forms/Layout/FlexItem.js.map +1 -0
  830. package/es/extensions/forms/Layout/InfoCardSection.d.ts +8 -0
  831. package/es/extensions/forms/Layout/InfoCardSection.js +17 -0
  832. package/es/extensions/forms/Layout/InfoCardSection.js.map +1 -0
  833. package/es/extensions/forms/Layout/MainHeading.d.ts +10 -0
  834. package/es/extensions/forms/Layout/MainHeading.js +19 -0
  835. package/es/extensions/forms/Layout/MainHeading.js.map +1 -0
  836. package/es/extensions/forms/Layout/Row.d.ts +7 -0
  837. package/es/extensions/forms/Layout/Row.js +17 -0
  838. package/es/extensions/forms/Layout/Row.js.map +1 -0
  839. package/es/extensions/forms/Layout/Section.d.ts +13 -0
  840. package/es/extensions/forms/Layout/Section.js +21 -0
  841. package/es/extensions/forms/Layout/Section.js.map +1 -0
  842. package/es/extensions/forms/Layout/SubHeading.d.ts +10 -0
  843. package/es/extensions/forms/Layout/SubHeading.js +18 -0
  844. package/es/extensions/forms/Layout/SubHeading.js.map +1 -0
  845. package/es/extensions/forms/Layout/index.d.ts +23 -0
  846. package/es/extensions/forms/Layout/index.js +24 -0
  847. package/es/extensions/forms/Layout/index.js.map +1 -0
  848. package/es/extensions/forms/Layout/style/dnb-button-row.css +7 -0
  849. package/es/extensions/forms/Layout/style/dnb-button-row.min.css +1 -0
  850. package/es/extensions/forms/Layout/style/dnb-button-row.scss +5 -0
  851. package/es/extensions/forms/Layout/style/dnb-card.css +13 -0
  852. package/es/extensions/forms/Layout/style/dnb-card.min.css +1 -0
  853. package/es/extensions/forms/Layout/style/dnb-card.scss +15 -0
  854. package/es/extensions/forms/Layout/style/dnb-flex-container.css +63 -0
  855. package/es/extensions/forms/Layout/style/dnb-flex-container.min.css +1 -0
  856. package/es/extensions/forms/Layout/style/dnb-flex-container.scss +84 -0
  857. package/es/extensions/forms/Layout/style/dnb-flex-item.css +6 -0
  858. package/es/extensions/forms/Layout/style/dnb-flex-item.min.css +1 -0
  859. package/es/extensions/forms/Layout/style/dnb-flex-item.scss +9 -0
  860. package/es/extensions/forms/Layout/style/dnb-section.css +3 -0
  861. package/es/extensions/forms/Layout/style/dnb-section.min.css +1 -0
  862. package/es/extensions/forms/Layout/style/dnb-section.scss +3 -0
  863. package/es/extensions/forms/Layout/style/index.d.ts +9 -0
  864. package/es/extensions/forms/Layout/style/index.js +6 -0
  865. package/es/extensions/forms/Layout/style/index.js.map +1 -0
  866. package/es/extensions/forms/Layout/style/index.scss +5 -0
  867. package/es/extensions/forms/Layout/style.d.ts +5 -0
  868. package/es/extensions/forms/Layout/style.js +1 -0
  869. package/es/extensions/forms/Layout/style.js.map +1 -0
  870. package/es/extensions/forms/StepsLayout/Buttons.d.ts +9 -0
  871. package/es/extensions/forms/StepsLayout/Buttons.js +19 -0
  872. package/es/extensions/forms/StepsLayout/Buttons.js.map +1 -0
  873. package/es/extensions/forms/StepsLayout/NextButton.d.ts +10 -0
  874. package/es/extensions/forms/StepsLayout/NextButton.js +27 -0
  875. package/es/extensions/forms/StepsLayout/NextButton.js.map +1 -0
  876. package/es/extensions/forms/StepsLayout/PreviousButton.d.ts +10 -0
  877. package/es/extensions/forms/StepsLayout/PreviousButton.js +27 -0
  878. package/es/extensions/forms/StepsLayout/PreviousButton.js.map +1 -0
  879. package/es/extensions/forms/StepsLayout/Step.d.ts +15 -0
  880. package/es/extensions/forms/StepsLayout/Step.js +27 -0
  881. package/es/extensions/forms/StepsLayout/Step.js.map +1 -0
  882. package/es/extensions/forms/StepsLayout/StepsContext.d.ts +8 -0
  883. package/es/extensions/forms/StepsLayout/StepsContext.js +4 -0
  884. package/es/extensions/forms/StepsLayout/StepsContext.js.map +1 -0
  885. package/es/extensions/forms/StepsLayout/StepsLayout.d.ts +19 -0
  886. package/es/extensions/forms/StepsLayout/StepsLayout.js +105 -0
  887. package/es/extensions/forms/StepsLayout/StepsLayout.js.map +1 -0
  888. package/es/extensions/forms/StepsLayout/index.d.ts +3 -0
  889. package/es/extensions/forms/StepsLayout/index.js +4 -0
  890. package/es/extensions/forms/StepsLayout/index.js.map +1 -0
  891. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.css +25 -0
  892. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -0
  893. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +23 -0
  894. package/es/extensions/forms/StepsLayout/style/index.d.ts +5 -0
  895. package/es/extensions/forms/StepsLayout/style/index.js +1 -0
  896. package/es/extensions/forms/StepsLayout/style/index.js.map +1 -0
  897. package/es/extensions/forms/StepsLayout/style/index.scss +1 -0
  898. package/es/extensions/forms/StepsLayout/style.d.ts +5 -0
  899. package/es/extensions/forms/StepsLayout/style.js +1 -0
  900. package/es/extensions/forms/StepsLayout/style.js.map +1 -0
  901. package/es/extensions/forms/Value/BankAccountNumber.d.ts +7 -0
  902. package/es/extensions/forms/Value/BankAccountNumber.js +20 -0
  903. package/es/extensions/forms/Value/BankAccountNumber.js.map +1 -0
  904. package/es/extensions/forms/Value/Boolean.d.ts +8 -0
  905. package/es/extensions/forms/Value/Boolean.js +27 -0
  906. package/es/extensions/forms/Value/Boolean.js.map +1 -0
  907. package/es/extensions/forms/Value/Currency.d.ts +7 -0
  908. package/es/extensions/forms/Value/Currency.js +16 -0
  909. package/es/extensions/forms/Value/Currency.js.map +1 -0
  910. package/es/extensions/forms/Value/Date.d.ts +7 -0
  911. package/es/extensions/forms/Value/Date.js +16 -0
  912. package/es/extensions/forms/Value/Date.js.map +1 -0
  913. package/es/extensions/forms/Value/Email.d.ts +7 -0
  914. package/es/extensions/forms/Value/Email.js +16 -0
  915. package/es/extensions/forms/Value/Email.js.map +1 -0
  916. package/es/extensions/forms/Value/FirstName.d.ts +7 -0
  917. package/es/extensions/forms/Value/FirstName.js +16 -0
  918. package/es/extensions/forms/Value/FirstName.js.map +1 -0
  919. package/es/extensions/forms/Value/LastName.d.ts +7 -0
  920. package/es/extensions/forms/Value/LastName.js +16 -0
  921. package/es/extensions/forms/Value/LastName.js.map +1 -0
  922. package/es/extensions/forms/Value/NationalIdentityNumber.d.ts +7 -0
  923. package/es/extensions/forms/Value/NationalIdentityNumber.js +20 -0
  924. package/es/extensions/forms/Value/NationalIdentityNumber.js.map +1 -0
  925. package/es/extensions/forms/Value/Number.d.ts +14 -0
  926. package/es/extensions/forms/Value/Number.js +36 -0
  927. package/es/extensions/forms/Value/Number.js.map +1 -0
  928. package/es/extensions/forms/Value/PhoneNumber.d.ts +7 -0
  929. package/es/extensions/forms/Value/PhoneNumber.js +20 -0
  930. package/es/extensions/forms/Value/PhoneNumber.js.map +1 -0
  931. package/es/extensions/forms/Value/String.d.ts +8 -0
  932. package/es/extensions/forms/Value/String.js +26 -0
  933. package/es/extensions/forms/Value/String.js.map +1 -0
  934. package/es/extensions/forms/Value/hooks/index.d.ts +1 -0
  935. package/es/extensions/forms/Value/hooks/index.js +1 -0
  936. package/es/extensions/forms/Value/hooks/index.js.map +1 -0
  937. package/es/extensions/forms/Value/hooks/useValue.d.ts +2 -0
  938. package/es/extensions/forms/Value/hooks/useValue.js +22 -0
  939. package/es/extensions/forms/Value/hooks/useValue.js.map +1 -0
  940. package/es/extensions/forms/Value/index.d.ts +25 -0
  941. package/es/extensions/forms/Value/index.js +26 -0
  942. package/es/extensions/forms/Value/index.js.map +1 -0
  943. package/es/extensions/forms/ValueBlock/ValueBlock.d.ts +11 -0
  944. package/es/extensions/forms/ValueBlock/ValueBlock.js +30 -0
  945. package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -0
  946. package/es/extensions/forms/ValueBlock/index.d.ts +1 -0
  947. package/es/extensions/forms/ValueBlock/index.js +1 -0
  948. package/es/extensions/forms/ValueBlock/index.js.map +1 -0
  949. package/es/extensions/forms/ValueBlock/style/dnb-value-block.css +16 -0
  950. package/es/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -0
  951. package/es/extensions/forms/ValueBlock/style/dnb-value-block.scss +19 -0
  952. package/es/extensions/forms/ValueBlock/style/index.d.ts +5 -0
  953. package/es/extensions/forms/ValueBlock/style/index.js +1 -0
  954. package/es/extensions/forms/ValueBlock/style/index.js.map +1 -0
  955. package/es/extensions/forms/ValueBlock/style/index.scss +1 -0
  956. package/es/extensions/forms/ValueBlock/style.d.ts +5 -0
  957. package/es/extensions/forms/ValueBlock/style.js +1 -0
  958. package/es/extensions/forms/ValueBlock/style.js.map +1 -0
  959. package/es/extensions/forms/Visibility/Visibility.d.ts +24 -0
  960. package/es/extensions/forms/Visibility/Visibility.js +44 -0
  961. package/es/extensions/forms/Visibility/Visibility.js.map +1 -0
  962. package/es/extensions/forms/Visibility/index.d.ts +1 -0
  963. package/es/extensions/forms/Visibility/index.js +1 -0
  964. package/es/extensions/forms/Visibility/index.js.map +1 -0
  965. package/es/extensions/forms/component-types.d.ts +4 -0
  966. package/es/extensions/forms/component-types.js +1 -0
  967. package/es/extensions/forms/component-types.js.map +1 -0
  968. package/es/extensions/forms/constants/countries.d.ts +6 -0
  969. package/es/extensions/forms/constants/countries.js +962 -0
  970. package/es/extensions/forms/constants/countries.js.map +1 -0
  971. package/es/extensions/forms/field-types.d.ts +52 -0
  972. package/es/extensions/forms/field-types.js +1 -0
  973. package/es/extensions/forms/field-types.js.map +1 -0
  974. package/es/extensions/forms/index.d.ts +13 -0
  975. package/es/extensions/forms/index.js +12 -0
  976. package/es/extensions/forms/index.js.map +1 -0
  977. package/es/extensions/forms/style/dnb-forms.css +237 -0
  978. package/es/extensions/forms/style/dnb-forms.min.css +1 -0
  979. package/es/extensions/forms/style/dnb-forms.scss +6 -0
  980. package/es/extensions/forms/style.d.ts +5 -0
  981. package/es/extensions/forms/style.js +1 -0
  982. package/es/extensions/forms/style.js.map +1 -0
  983. package/es/extensions/forms/types.d.ts +11 -0
  984. package/es/extensions/forms/types.js +11 -0
  985. package/es/extensions/forms/types.js.map +1 -0
  986. package/es/extensions/forms/utils/TestElement/TestElement.d.ts +6 -0
  987. package/es/extensions/forms/utils/TestElement/TestElement.js +9 -0
  988. package/es/extensions/forms/utils/TestElement/TestElement.js.map +1 -0
  989. package/es/extensions/forms/utils/TestElement/style/dnb-test-element.css +6 -0
  990. package/es/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -0
  991. package/es/extensions/forms/utils/TestElement/style/dnb-test-element.scss +6 -0
  992. package/es/extensions/forms/utils/TestElement/style/index.d.ts +5 -0
  993. package/es/extensions/forms/utils/TestElement/style/index.js +1 -0
  994. package/es/extensions/forms/utils/TestElement/style/index.js.map +1 -0
  995. package/es/extensions/forms/utils/TestElement/style.d.ts +5 -0
  996. package/es/extensions/forms/utils/TestElement/style.js +1 -0
  997. package/es/extensions/forms/utils/TestElement/style.js.map +1 -0
  998. package/es/extensions/forms/utils/ajv.d.ts +14 -0
  999. package/es/extensions/forms/utils/ajv.js +56 -0
  1000. package/es/extensions/forms/utils/ajv.js.map +1 -0
  1001. package/es/extensions/forms/utils/components.d.ts +3 -0
  1002. package/es/extensions/forms/utils/components.js +23 -0
  1003. package/es/extensions/forms/utils/components.js.map +1 -0
  1004. package/es/extensions/forms/utils/index.d.ts +3 -0
  1005. package/es/extensions/forms/utils/index.js +4 -0
  1006. package/es/extensions/forms/utils/index.js.map +1 -0
  1007. package/es/extensions/forms/utils/numbers.d.ts +17 -0
  1008. package/es/extensions/forms/utils/numbers.js +35 -0
  1009. package/es/extensions/forms/utils/numbers.js.map +1 -0
  1010. package/es/extensions/forms/value-types.d.ts +15 -0
  1011. package/es/extensions/forms/value-types.js +1 -0
  1012. package/es/extensions/forms/value-types.js.map +1 -0
  1013. package/es/extensions/index.d.ts +2 -1
  1014. package/es/extensions/index.js +2 -1
  1015. package/es/extensions/index.js.map +1 -1
  1016. package/es/extensions/lib.d.ts +22 -1
  1017. package/es/extensions/lib.js +3 -1
  1018. package/es/extensions/lib.js.map +1 -1
  1019. package/es/extensions/payment-card/utils/Types.js.map +1 -1
  1020. package/es/fragments/drawer-list/DrawerList.js.map +1 -1
  1021. package/es/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  1022. package/es/shared/Context.d.ts +2 -0
  1023. package/es/shared/Context.js.map +1 -1
  1024. package/es/shared/Eufemia.d.ts +1 -1
  1025. package/es/shared/Eufemia.js +2 -2
  1026. package/es/shared/Eufemia.js.map +1 -1
  1027. package/es/shared/VisibilityByTheme.d.ts +1 -1
  1028. package/es/shared/VisibilityByTheme.js.map +1 -1
  1029. package/es/shared/helpers.d.ts +2 -2
  1030. package/es/shared/helpers.js.map +1 -1
  1031. package/es/shared/locales/en-GB.d.ts +39 -0
  1032. package/es/shared/locales/en-GB.js +39 -0
  1033. package/es/shared/locales/en-GB.js.map +1 -1
  1034. package/es/shared/locales/en-US.d.ts +39 -0
  1035. package/es/shared/locales/index.d.ts +78 -0
  1036. package/es/shared/locales/nb-NO.d.ts +39 -0
  1037. package/es/shared/locales/nb-NO.js +39 -0
  1038. package/es/shared/locales/nb-NO.js.map +1 -1
  1039. package/es/style/core/utilities.scss +40 -8
  1040. package/es/style/dnb-ui-components.css +71 -24
  1041. package/es/style/dnb-ui-components.min.css +1 -1
  1042. package/es/style/dnb-ui-extensions.css +238 -0
  1043. package/es/style/dnb-ui-extensions.min.css +1 -1
  1044. package/es/style/dnb-ui-extensions.scss +1 -0
  1045. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +17 -11
  1046. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  1047. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +105 -82
  1048. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  1049. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +238 -0
  1050. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  1051. package/es/style/themes/theme-sbanken/properties.js +4 -4
  1052. package/es/style/themes/theme-sbanken/properties.js.map +1 -1
  1053. package/es/style/themes/theme-sbanken/properties.scss +4 -4
  1054. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +4 -11
  1055. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  1056. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +429 -333
  1057. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -1
  1058. package/es/style/themes/theme-sbanken/sbanken-theme-components.scss +2 -2
  1059. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +0 -7
  1060. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +238 -0
  1061. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  1062. package/es/style/themes/theme-ui/ui-theme-basis.css +17 -11
  1063. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  1064. package/es/style/themes/theme-ui/ui-theme-components.css +105 -82
  1065. package/es/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  1066. package/es/style/themes/theme-ui/ui-theme-elements.css +17 -11
  1067. package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  1068. package/es/style/themes/theme-ui/ui-theme-extensions.css +238 -0
  1069. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  1070. package/es/style/themes/theme-ui/ui-theme-tags.css +24 -12
  1071. package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  1072. package/esm/dnb-ui-basis.min.mjs +1 -1
  1073. package/esm/dnb-ui-components.min.mjs +1 -1
  1074. package/esm/dnb-ui-elements.min.mjs +1 -1
  1075. package/esm/dnb-ui-extensions.min.mjs +7 -1
  1076. package/esm/dnb-ui-lib.min.mjs +1 -1
  1077. package/extensions/forms/DataContext/At.d.ts +13 -0
  1078. package/extensions/forms/DataContext/At.js +48 -0
  1079. package/extensions/forms/DataContext/At.js.map +1 -0
  1080. package/extensions/forms/DataContext/Context.d.ts +19 -0
  1081. package/extensions/forms/DataContext/Context.js +16 -0
  1082. package/extensions/forms/DataContext/Context.js.map +1 -0
  1083. package/extensions/forms/DataContext/Provider.d.ts +19 -0
  1084. package/extensions/forms/DataContext/Provider.js +103 -0
  1085. package/extensions/forms/DataContext/Provider.js.map +1 -0
  1086. package/extensions/forms/DataContext/SubmitButton.d.ts +9 -0
  1087. package/extensions/forms/DataContext/SubmitButton.js +20 -0
  1088. package/extensions/forms/DataContext/SubmitButton.js.map +1 -0
  1089. package/extensions/forms/DataContext/index.d.ts +13 -0
  1090. package/extensions/forms/DataContext/index.js +12 -0
  1091. package/extensions/forms/DataContext/index.js.map +1 -0
  1092. package/extensions/forms/Field/ArraySelection.d.ts +12 -0
  1093. package/extensions/forms/Field/ArraySelection.js +60 -0
  1094. package/extensions/forms/Field/ArraySelection.js.map +1 -0
  1095. package/extensions/forms/Field/BankAccountNumber.d.ts +10 -0
  1096. package/extensions/forms/Field/BankAccountNumber.js +28 -0
  1097. package/extensions/forms/Field/BankAccountNumber.js.map +1 -0
  1098. package/extensions/forms/Field/Boolean.d.ts +10 -0
  1099. package/extensions/forms/Field/Boolean.js +23 -0
  1100. package/extensions/forms/Field/Boolean.js.map +1 -0
  1101. package/extensions/forms/Field/Currency.d.ts +10 -0
  1102. package/extensions/forms/Field/Currency.js +51 -0
  1103. package/extensions/forms/Field/Currency.js.map +1 -0
  1104. package/extensions/forms/Field/Date.d.ts +8 -0
  1105. package/extensions/forms/Field/Date.js +47 -0
  1106. package/extensions/forms/Field/Date.js.map +1 -0
  1107. package/extensions/forms/Field/Email.d.ts +7 -0
  1108. package/extensions/forms/Field/Email.js +22 -0
  1109. package/extensions/forms/Field/Email.js.map +1 -0
  1110. package/extensions/forms/Field/FirstName.d.ts +7 -0
  1111. package/extensions/forms/Field/FirstName.js +19 -0
  1112. package/extensions/forms/Field/FirstName.js.map +1 -0
  1113. package/extensions/forms/Field/LastName.d.ts +7 -0
  1114. package/extensions/forms/Field/LastName.js +19 -0
  1115. package/extensions/forms/Field/LastName.js.map +1 -0
  1116. package/extensions/forms/Field/NationalIdentityNumber.d.ts +10 -0
  1117. package/extensions/forms/Field/NationalIdentityNumber.js +27 -0
  1118. package/extensions/forms/Field/NationalIdentityNumber.js.map +1 -0
  1119. package/extensions/forms/Field/Number.d.ts +31 -0
  1120. package/extensions/forms/Field/Number.js +101 -0
  1121. package/extensions/forms/Field/Number.js.map +1 -0
  1122. package/extensions/forms/Field/Option.d.ts +9 -0
  1123. package/extensions/forms/Field/Option.js +15 -0
  1124. package/extensions/forms/Field/Option.js.map +1 -0
  1125. package/extensions/forms/Field/OrganizationNumber.d.ts +10 -0
  1126. package/extensions/forms/Field/OrganizationNumber.js +28 -0
  1127. package/extensions/forms/Field/OrganizationNumber.js.map +1 -0
  1128. package/extensions/forms/Field/PhoneNumber.d.ts +12 -0
  1129. package/extensions/forms/Field/PhoneNumber.js +89 -0
  1130. package/extensions/forms/Field/PhoneNumber.js.map +1 -0
  1131. package/extensions/forms/Field/PostalCodeAndCity.d.ts +10 -0
  1132. package/extensions/forms/Field/PostalCodeAndCity.js +46 -0
  1133. package/extensions/forms/Field/PostalCodeAndCity.js.map +1 -0
  1134. package/extensions/forms/Field/SelectCountry.d.ts +7 -0
  1135. package/extensions/forms/Field/SelectCountry.js +26 -0
  1136. package/extensions/forms/Field/SelectCountry.js.map +1 -0
  1137. package/extensions/forms/Field/Selection.d.ts +13 -0
  1138. package/extensions/forms/Field/Selection.js +110 -0
  1139. package/extensions/forms/Field/Selection.js.map +1 -0
  1140. package/extensions/forms/Field/String.d.ts +32 -0
  1141. package/extensions/forms/Field/String.js +123 -0
  1142. package/extensions/forms/Field/String.js.map +1 -0
  1143. package/extensions/forms/Field/Toggle.d.ts +14 -0
  1144. package/extensions/forms/Field/Toggle.js +117 -0
  1145. package/extensions/forms/Field/Toggle.js.map +1 -0
  1146. package/extensions/forms/Field/fields.scss +2 -0
  1147. package/extensions/forms/Field/hooks/index.d.ts +1 -0
  1148. package/extensions/forms/Field/hooks/index.js +1 -0
  1149. package/extensions/forms/Field/hooks/index.js.map +1 -0
  1150. package/extensions/forms/Field/hooks/useField.d.ts +11 -0
  1151. package/extensions/forms/Field/hooks/useField.js +152 -0
  1152. package/extensions/forms/Field/hooks/useField.js.map +1 -0
  1153. package/extensions/forms/Field/index.d.ts +39 -0
  1154. package/extensions/forms/Field/index.js +40 -0
  1155. package/extensions/forms/Field/index.js.map +1 -0
  1156. package/extensions/forms/Field/style/dnb-number.css +11 -0
  1157. package/extensions/forms/Field/style/dnb-number.min.css +1 -0
  1158. package/extensions/forms/Field/style/dnb-number.scss +19 -0
  1159. package/extensions/forms/Field/style/dnb-phone-number.css +23 -0
  1160. package/extensions/forms/Field/style/dnb-phone-number.min.css +1 -0
  1161. package/extensions/forms/Field/style/dnb-phone-number.scss +28 -0
  1162. package/extensions/forms/Field/style/dnb-postal-code-and-city.css +19 -0
  1163. package/extensions/forms/Field/style/dnb-postal-code-and-city.min.css +1 -0
  1164. package/extensions/forms/Field/style/dnb-postal-code-and-city.scss +25 -0
  1165. package/extensions/forms/Field/style/dnb-selection.css +6 -0
  1166. package/extensions/forms/Field/style/dnb-selection.min.css +1 -0
  1167. package/extensions/forms/Field/style/dnb-selection.scss +15 -0
  1168. package/extensions/forms/Field/style/dnb-string.css +11 -0
  1169. package/extensions/forms/Field/style/dnb-string.min.css +1 -0
  1170. package/extensions/forms/Field/style/dnb-string.scss +19 -0
  1171. package/extensions/forms/Field/style/index.d.ts +6 -0
  1172. package/extensions/forms/Field/style/index.js +3 -0
  1173. package/extensions/forms/Field/style/index.js.map +1 -0
  1174. package/extensions/forms/Field/style/index.scss +5 -0
  1175. package/extensions/forms/Field/style.d.ts +5 -0
  1176. package/extensions/forms/Field/style.js +1 -0
  1177. package/extensions/forms/Field/style.js.map +1 -0
  1178. package/extensions/forms/FieldBlock/FieldBlock.d.ts +12 -0
  1179. package/extensions/forms/FieldBlock/FieldBlock.js +69 -0
  1180. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -0
  1181. package/extensions/forms/FieldBlock/index.d.ts +1 -0
  1182. package/extensions/forms/FieldBlock/index.js +1 -0
  1183. package/extensions/forms/FieldBlock/index.js.map +1 -0
  1184. package/extensions/forms/FieldBlock/style/dnb-field-block.css +15 -0
  1185. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -0
  1186. package/extensions/forms/FieldBlock/style/dnb-field-block.scss +19 -0
  1187. package/extensions/forms/FieldBlock/style/index.d.ts +5 -0
  1188. package/extensions/forms/FieldBlock/style/index.js +1 -0
  1189. package/extensions/forms/FieldBlock/style/index.js.map +1 -0
  1190. package/extensions/forms/FieldBlock/style.d.ts +5 -0
  1191. package/extensions/forms/FieldBlock/style.js +1 -0
  1192. package/extensions/forms/FieldBlock/style.js.map +1 -0
  1193. package/extensions/forms/FieldGroup/FieldGroup.d.ts +17 -0
  1194. package/extensions/forms/FieldGroup/FieldGroup.js +83 -0
  1195. package/extensions/forms/FieldGroup/FieldGroup.js.map +1 -0
  1196. package/extensions/forms/FieldGroup/index.d.ts +2 -0
  1197. package/extensions/forms/FieldGroup/index.js +3 -0
  1198. package/extensions/forms/FieldGroup/index.js.map +1 -0
  1199. package/extensions/forms/Forms.d.ts +3 -0
  1200. package/extensions/forms/Forms.js +4 -0
  1201. package/extensions/forms/Forms.js.map +1 -0
  1202. package/extensions/forms/Layout/ButtonRow.d.ts +10 -0
  1203. package/extensions/forms/Layout/ButtonRow.js +17 -0
  1204. package/extensions/forms/Layout/ButtonRow.js.map +1 -0
  1205. package/extensions/forms/Layout/Card.d.ts +14 -0
  1206. package/extensions/forms/Layout/Card.js +37 -0
  1207. package/extensions/forms/Layout/Card.js.map +1 -0
  1208. package/extensions/forms/Layout/Column.d.ts +7 -0
  1209. package/extensions/forms/Layout/Column.js +17 -0
  1210. package/extensions/forms/Layout/Column.js.map +1 -0
  1211. package/extensions/forms/Layout/FlexContainer.d.ts +23 -0
  1212. package/extensions/forms/Layout/FlexContainer.js +91 -0
  1213. package/extensions/forms/Layout/FlexContainer.js.map +1 -0
  1214. package/extensions/forms/Layout/FlexItem.d.ts +12 -0
  1215. package/extensions/forms/Layout/FlexItem.js +20 -0
  1216. package/extensions/forms/Layout/FlexItem.js.map +1 -0
  1217. package/extensions/forms/Layout/InfoCardSection.d.ts +8 -0
  1218. package/extensions/forms/Layout/InfoCardSection.js +17 -0
  1219. package/extensions/forms/Layout/InfoCardSection.js.map +1 -0
  1220. package/extensions/forms/Layout/MainHeading.d.ts +10 -0
  1221. package/extensions/forms/Layout/MainHeading.js +19 -0
  1222. package/extensions/forms/Layout/MainHeading.js.map +1 -0
  1223. package/extensions/forms/Layout/Row.d.ts +7 -0
  1224. package/extensions/forms/Layout/Row.js +17 -0
  1225. package/extensions/forms/Layout/Row.js.map +1 -0
  1226. package/extensions/forms/Layout/Section.d.ts +13 -0
  1227. package/extensions/forms/Layout/Section.js +21 -0
  1228. package/extensions/forms/Layout/Section.js.map +1 -0
  1229. package/extensions/forms/Layout/SubHeading.d.ts +10 -0
  1230. package/extensions/forms/Layout/SubHeading.js +18 -0
  1231. package/extensions/forms/Layout/SubHeading.js.map +1 -0
  1232. package/extensions/forms/Layout/index.d.ts +23 -0
  1233. package/extensions/forms/Layout/index.js +24 -0
  1234. package/extensions/forms/Layout/index.js.map +1 -0
  1235. package/extensions/forms/Layout/style/dnb-button-row.css +7 -0
  1236. package/extensions/forms/Layout/style/dnb-button-row.min.css +1 -0
  1237. package/extensions/forms/Layout/style/dnb-button-row.scss +5 -0
  1238. package/extensions/forms/Layout/style/dnb-card.css +13 -0
  1239. package/extensions/forms/Layout/style/dnb-card.min.css +1 -0
  1240. package/extensions/forms/Layout/style/dnb-card.scss +15 -0
  1241. package/extensions/forms/Layout/style/dnb-flex-container.css +63 -0
  1242. package/extensions/forms/Layout/style/dnb-flex-container.min.css +1 -0
  1243. package/extensions/forms/Layout/style/dnb-flex-container.scss +84 -0
  1244. package/extensions/forms/Layout/style/dnb-flex-item.css +6 -0
  1245. package/extensions/forms/Layout/style/dnb-flex-item.min.css +1 -0
  1246. package/extensions/forms/Layout/style/dnb-flex-item.scss +9 -0
  1247. package/extensions/forms/Layout/style/dnb-section.css +3 -0
  1248. package/extensions/forms/Layout/style/dnb-section.min.css +1 -0
  1249. package/extensions/forms/Layout/style/dnb-section.scss +3 -0
  1250. package/extensions/forms/Layout/style/index.d.ts +9 -0
  1251. package/extensions/forms/Layout/style/index.js +6 -0
  1252. package/extensions/forms/Layout/style/index.js.map +1 -0
  1253. package/extensions/forms/Layout/style/index.scss +5 -0
  1254. package/extensions/forms/Layout/style.d.ts +5 -0
  1255. package/extensions/forms/Layout/style.js +1 -0
  1256. package/extensions/forms/Layout/style.js.map +1 -0
  1257. package/extensions/forms/StepsLayout/Buttons.d.ts +9 -0
  1258. package/extensions/forms/StepsLayout/Buttons.js +19 -0
  1259. package/extensions/forms/StepsLayout/Buttons.js.map +1 -0
  1260. package/extensions/forms/StepsLayout/NextButton.d.ts +10 -0
  1261. package/extensions/forms/StepsLayout/NextButton.js +27 -0
  1262. package/extensions/forms/StepsLayout/NextButton.js.map +1 -0
  1263. package/extensions/forms/StepsLayout/PreviousButton.d.ts +10 -0
  1264. package/extensions/forms/StepsLayout/PreviousButton.js +27 -0
  1265. package/extensions/forms/StepsLayout/PreviousButton.js.map +1 -0
  1266. package/extensions/forms/StepsLayout/Step.d.ts +15 -0
  1267. package/extensions/forms/StepsLayout/Step.js +27 -0
  1268. package/extensions/forms/StepsLayout/Step.js.map +1 -0
  1269. package/extensions/forms/StepsLayout/StepsContext.d.ts +8 -0
  1270. package/extensions/forms/StepsLayout/StepsContext.js +4 -0
  1271. package/extensions/forms/StepsLayout/StepsContext.js.map +1 -0
  1272. package/extensions/forms/StepsLayout/StepsLayout.d.ts +19 -0
  1273. package/extensions/forms/StepsLayout/StepsLayout.js +106 -0
  1274. package/extensions/forms/StepsLayout/StepsLayout.js.map +1 -0
  1275. package/extensions/forms/StepsLayout/index.d.ts +3 -0
  1276. package/extensions/forms/StepsLayout/index.js +4 -0
  1277. package/extensions/forms/StepsLayout/index.js.map +1 -0
  1278. package/extensions/forms/StepsLayout/style/dnb-steps-layout.css +25 -0
  1279. package/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -0
  1280. package/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +23 -0
  1281. package/extensions/forms/StepsLayout/style/index.d.ts +5 -0
  1282. package/extensions/forms/StepsLayout/style/index.js +1 -0
  1283. package/extensions/forms/StepsLayout/style/index.js.map +1 -0
  1284. package/extensions/forms/StepsLayout/style/index.scss +1 -0
  1285. package/extensions/forms/StepsLayout/style.d.ts +5 -0
  1286. package/extensions/forms/StepsLayout/style.js +1 -0
  1287. package/extensions/forms/StepsLayout/style.js.map +1 -0
  1288. package/extensions/forms/Value/BankAccountNumber.d.ts +7 -0
  1289. package/extensions/forms/Value/BankAccountNumber.js +20 -0
  1290. package/extensions/forms/Value/BankAccountNumber.js.map +1 -0
  1291. package/extensions/forms/Value/Boolean.d.ts +8 -0
  1292. package/extensions/forms/Value/Boolean.js +27 -0
  1293. package/extensions/forms/Value/Boolean.js.map +1 -0
  1294. package/extensions/forms/Value/Currency.d.ts +7 -0
  1295. package/extensions/forms/Value/Currency.js +16 -0
  1296. package/extensions/forms/Value/Currency.js.map +1 -0
  1297. package/extensions/forms/Value/Date.d.ts +7 -0
  1298. package/extensions/forms/Value/Date.js +16 -0
  1299. package/extensions/forms/Value/Date.js.map +1 -0
  1300. package/extensions/forms/Value/Email.d.ts +7 -0
  1301. package/extensions/forms/Value/Email.js +16 -0
  1302. package/extensions/forms/Value/Email.js.map +1 -0
  1303. package/extensions/forms/Value/FirstName.d.ts +7 -0
  1304. package/extensions/forms/Value/FirstName.js +16 -0
  1305. package/extensions/forms/Value/FirstName.js.map +1 -0
  1306. package/extensions/forms/Value/LastName.d.ts +7 -0
  1307. package/extensions/forms/Value/LastName.js +16 -0
  1308. package/extensions/forms/Value/LastName.js.map +1 -0
  1309. package/extensions/forms/Value/NationalIdentityNumber.d.ts +7 -0
  1310. package/extensions/forms/Value/NationalIdentityNumber.js +20 -0
  1311. package/extensions/forms/Value/NationalIdentityNumber.js.map +1 -0
  1312. package/extensions/forms/Value/Number.d.ts +14 -0
  1313. package/extensions/forms/Value/Number.js +36 -0
  1314. package/extensions/forms/Value/Number.js.map +1 -0
  1315. package/extensions/forms/Value/PhoneNumber.d.ts +7 -0
  1316. package/extensions/forms/Value/PhoneNumber.js +20 -0
  1317. package/extensions/forms/Value/PhoneNumber.js.map +1 -0
  1318. package/extensions/forms/Value/String.d.ts +8 -0
  1319. package/extensions/forms/Value/String.js +26 -0
  1320. package/extensions/forms/Value/String.js.map +1 -0
  1321. package/extensions/forms/Value/hooks/index.d.ts +1 -0
  1322. package/extensions/forms/Value/hooks/index.js +1 -0
  1323. package/extensions/forms/Value/hooks/index.js.map +1 -0
  1324. package/extensions/forms/Value/hooks/useValue.d.ts +2 -0
  1325. package/extensions/forms/Value/hooks/useValue.js +22 -0
  1326. package/extensions/forms/Value/hooks/useValue.js.map +1 -0
  1327. package/extensions/forms/Value/index.d.ts +25 -0
  1328. package/extensions/forms/Value/index.js +26 -0
  1329. package/extensions/forms/Value/index.js.map +1 -0
  1330. package/extensions/forms/ValueBlock/ValueBlock.d.ts +11 -0
  1331. package/extensions/forms/ValueBlock/ValueBlock.js +30 -0
  1332. package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -0
  1333. package/extensions/forms/ValueBlock/index.d.ts +1 -0
  1334. package/extensions/forms/ValueBlock/index.js +1 -0
  1335. package/extensions/forms/ValueBlock/index.js.map +1 -0
  1336. package/extensions/forms/ValueBlock/style/dnb-value-block.css +16 -0
  1337. package/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -0
  1338. package/extensions/forms/ValueBlock/style/dnb-value-block.scss +19 -0
  1339. package/extensions/forms/ValueBlock/style/index.d.ts +5 -0
  1340. package/extensions/forms/ValueBlock/style/index.js +1 -0
  1341. package/extensions/forms/ValueBlock/style/index.js.map +1 -0
  1342. package/extensions/forms/ValueBlock/style/index.scss +1 -0
  1343. package/extensions/forms/ValueBlock/style.d.ts +5 -0
  1344. package/extensions/forms/ValueBlock/style.js +1 -0
  1345. package/extensions/forms/ValueBlock/style.js.map +1 -0
  1346. package/extensions/forms/Visibility/Visibility.d.ts +24 -0
  1347. package/extensions/forms/Visibility/Visibility.js +45 -0
  1348. package/extensions/forms/Visibility/Visibility.js.map +1 -0
  1349. package/extensions/forms/Visibility/index.d.ts +1 -0
  1350. package/extensions/forms/Visibility/index.js +1 -0
  1351. package/extensions/forms/Visibility/index.js.map +1 -0
  1352. package/extensions/forms/component-types.d.ts +4 -0
  1353. package/extensions/forms/component-types.js +1 -0
  1354. package/extensions/forms/component-types.js.map +1 -0
  1355. package/extensions/forms/constants/countries.d.ts +6 -0
  1356. package/extensions/forms/constants/countries.js +962 -0
  1357. package/extensions/forms/constants/countries.js.map +1 -0
  1358. package/extensions/forms/field-types.d.ts +52 -0
  1359. package/extensions/forms/field-types.js +1 -0
  1360. package/extensions/forms/field-types.js.map +1 -0
  1361. package/extensions/forms/index.d.ts +13 -0
  1362. package/extensions/forms/index.js +12 -0
  1363. package/extensions/forms/index.js.map +1 -0
  1364. package/extensions/forms/style/dnb-forms.css +237 -0
  1365. package/extensions/forms/style/dnb-forms.min.css +1 -0
  1366. package/extensions/forms/style/dnb-forms.scss +6 -0
  1367. package/extensions/forms/style.d.ts +5 -0
  1368. package/extensions/forms/style.js +1 -0
  1369. package/extensions/forms/style.js.map +1 -0
  1370. package/extensions/forms/types.d.ts +11 -0
  1371. package/extensions/forms/types.js +11 -0
  1372. package/extensions/forms/types.js.map +1 -0
  1373. package/extensions/forms/utils/TestElement/TestElement.d.ts +6 -0
  1374. package/extensions/forms/utils/TestElement/TestElement.js +10 -0
  1375. package/extensions/forms/utils/TestElement/TestElement.js.map +1 -0
  1376. package/extensions/forms/utils/TestElement/style/dnb-test-element.css +6 -0
  1377. package/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -0
  1378. package/extensions/forms/utils/TestElement/style/dnb-test-element.scss +6 -0
  1379. package/extensions/forms/utils/TestElement/style/index.d.ts +5 -0
  1380. package/extensions/forms/utils/TestElement/style/index.js +1 -0
  1381. package/extensions/forms/utils/TestElement/style/index.js.map +1 -0
  1382. package/extensions/forms/utils/TestElement/style.d.ts +5 -0
  1383. package/extensions/forms/utils/TestElement/style.js +1 -0
  1384. package/extensions/forms/utils/TestElement/style.js.map +1 -0
  1385. package/extensions/forms/utils/ajv.d.ts +14 -0
  1386. package/extensions/forms/utils/ajv.js +56 -0
  1387. package/extensions/forms/utils/ajv.js.map +1 -0
  1388. package/extensions/forms/utils/components.d.ts +3 -0
  1389. package/extensions/forms/utils/components.js +23 -0
  1390. package/extensions/forms/utils/components.js.map +1 -0
  1391. package/extensions/forms/utils/index.d.ts +3 -0
  1392. package/extensions/forms/utils/index.js +4 -0
  1393. package/extensions/forms/utils/index.js.map +1 -0
  1394. package/extensions/forms/utils/numbers.d.ts +17 -0
  1395. package/extensions/forms/utils/numbers.js +35 -0
  1396. package/extensions/forms/utils/numbers.js.map +1 -0
  1397. package/extensions/forms/value-types.d.ts +15 -0
  1398. package/extensions/forms/value-types.js +1 -0
  1399. package/extensions/forms/value-types.js.map +1 -0
  1400. package/extensions/index.d.ts +2 -1
  1401. package/extensions/index.js +2 -1
  1402. package/extensions/index.js.map +1 -1
  1403. package/extensions/lib.d.ts +22 -1
  1404. package/extensions/lib.js +3 -1
  1405. package/extensions/lib.js.map +1 -1
  1406. package/extensions/payment-card/utils/Types.js.map +1 -1
  1407. package/fragments/drawer-list/DrawerList.js.map +1 -1
  1408. package/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  1409. package/package.json +4 -1
  1410. package/shared/Context.d.ts +2 -0
  1411. package/shared/Context.js.map +1 -1
  1412. package/shared/Eufemia.d.ts +1 -1
  1413. package/shared/Eufemia.js +2 -2
  1414. package/shared/Eufemia.js.map +1 -1
  1415. package/shared/VisibilityByTheme.d.ts +1 -1
  1416. package/shared/VisibilityByTheme.js.map +1 -1
  1417. package/shared/helpers.d.ts +2 -2
  1418. package/shared/helpers.js.map +1 -1
  1419. package/shared/locales/en-GB.d.ts +39 -0
  1420. package/shared/locales/en-GB.js +39 -0
  1421. package/shared/locales/en-GB.js.map +1 -1
  1422. package/shared/locales/en-US.d.ts +39 -0
  1423. package/shared/locales/index.d.ts +78 -0
  1424. package/shared/locales/nb-NO.d.ts +39 -0
  1425. package/shared/locales/nb-NO.js +39 -0
  1426. package/shared/locales/nb-NO.js.map +1 -1
  1427. package/style/core/utilities.scss +40 -8
  1428. package/style/dnb-ui-components.css +71 -24
  1429. package/style/dnb-ui-components.min.css +1 -1
  1430. package/style/dnb-ui-extensions.css +238 -0
  1431. package/style/dnb-ui-extensions.min.css +1 -1
  1432. package/style/dnb-ui-extensions.scss +1 -0
  1433. package/style/themes/theme-eiendom/eiendom-theme-basis.css +17 -11
  1434. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  1435. package/style/themes/theme-eiendom/eiendom-theme-components.css +105 -82
  1436. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +1 -1
  1437. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +238 -0
  1438. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  1439. package/style/themes/theme-sbanken/properties.js +4 -4
  1440. package/style/themes/theme-sbanken/properties.js.map +1 -1
  1441. package/style/themes/theme-sbanken/properties.scss +4 -4
  1442. package/style/themes/theme-sbanken/sbanken-theme-basis.css +4 -11
  1443. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  1444. package/style/themes/theme-sbanken/sbanken-theme-components.css +429 -333
  1445. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -1
  1446. package/style/themes/theme-sbanken/sbanken-theme-components.scss +2 -2
  1447. package/style/themes/theme-sbanken/sbanken-theme-elements.css +0 -7
  1448. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +238 -0
  1449. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  1450. package/style/themes/theme-ui/ui-theme-basis.css +17 -11
  1451. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  1452. package/style/themes/theme-ui/ui-theme-components.css +105 -82
  1453. package/style/themes/theme-ui/ui-theme-components.min.css +1 -1
  1454. package/style/themes/theme-ui/ui-theme-elements.css +17 -11
  1455. package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  1456. package/style/themes/theme-ui/ui-theme-extensions.css +238 -0
  1457. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  1458. package/style/themes/theme-ui/ui-theme-tags.css +24 -12
  1459. package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  1460. package/umd/dnb-ui-basis.min.js +1 -1
  1461. package/umd/dnb-ui-components.min.js +1 -1
  1462. package/umd/dnb-ui-elements.min.js +1 -1
  1463. package/umd/dnb-ui-extensions.min.js +7 -1
  1464. package/umd/dnb-ui-lib.min.js +1 -1
  1465. package/cjs/components/accordion/AccordionPropTypes.d.ts +0 -79
  1466. package/cjs/components/accordion/AccordionPropTypes.js +0 -85
  1467. package/cjs/components/accordion/AccordionPropTypes.js.map +0 -1
  1468. package/components/accordion/AccordionPropTypes.d.ts +0 -79
  1469. package/components/accordion/AccordionPropTypes.js +0 -74
  1470. package/components/accordion/AccordionPropTypes.js.map +0 -1
  1471. package/es/components/accordion/AccordionPropTypes.d.ts +0 -79
  1472. package/es/components/accordion/AccordionPropTypes.js +0 -74
  1473. package/es/components/accordion/AccordionPropTypes.js.map +0 -1
@@ -1,14 +1,14 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
2
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
3
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
4
  var _AccordionHeader;
5
- const _excluded = ["variant", "className", "class", "prerender", "prevent_rerender", "prevent_rerender_conditional", "single_container", "remember_state", "disabled", "skeleton", "no_animation", "expanded_ssr", "children", "id", "group", "expanded", "title", "description", "left_component", "icon", "icon_position", "icon_size", "on_change", "on_state_update", "contentRef"];
5
+ const _excluded = ["variant", "icon_size"],
6
+ _excluded2 = ["variant", "className", "class", "prerender", "prevent_rerender", "prevent_rerender_conditional", "single_container", "remember_state", "disabled", "skeleton", "no_animation", "expanded_ssr", "children", "id", "group", "title", "description", "left_component", "icon", "icon_position", "icon_size", "on_change", "on_state_update", "contentRef"];
6
7
  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
8
  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; }
8
- import React from 'react';
9
- import PropTypes from 'prop-types';
9
+ import React, { useContext, useState, useEffect, useRef } from 'react';
10
10
  import classnames from 'classnames';
11
- import { isTrue, makeUniqueId, findElementInChildren, extendPropsWithContextInClassComponent, validateDOMAttributes, dispatchCustomElementEvent } from '../../shared/component-helper';
11
+ import { makeUniqueId, findElementInChildren, extendPropsWithContext, validateDOMAttributes, dispatchCustomElementEvent } from '../../shared/component-helper';
12
12
  import { createSpacingClasses } from '../space/SpacingHelper';
13
13
  import AccordionGroup from './AccordionGroup';
14
14
  import AccordionHeader from './AccordionHeader';
@@ -16,275 +16,240 @@ import AccordionContent from './AccordionContent';
16
16
  import AccordionContext from './AccordionContext';
17
17
  import AccordionProviderContext from './AccordionProviderContext';
18
18
  import Context from '../../shared/Context';
19
- import { accordionPropTypes, accordionDefaultProps } from './AccordionPropTypes';
20
19
  import { AccordionStore, Store, rememberWarning } from './AccordionStore';
21
- export default class Accordion extends React.PureComponent {
22
- static getDerivedStateFromProps(props, state) {
23
- if (state._listenForPropChanges) {
24
- if (props.expanded !== state._expanded) {
25
- state.expanded = isTrue(props.expanded);
26
- state._expanded = props.expanded;
27
- }
28
- if (props.group && !state.group) {
29
- state.group = props.group;
30
- }
31
- }
32
- state._listenForPropChanges = true;
33
- return state;
20
+ import { accordionDefaultProps } from './defaultProps';
21
+ function Accordion(_ref) {
22
+ let {
23
+ variant = 'outlined',
24
+ icon_size = 'medium'
25
+ } = _ref,
26
+ restOfProps = _objectWithoutProperties(_ref, _excluded);
27
+ const props = _objectSpread({
28
+ variant,
29
+ icon_size
30
+ }, restOfProps);
31
+ const context = useContext(AccordionProviderContext);
32
+ const group = props.group || (context === null || context === void 0 ? void 0 : context.group);
33
+ const id = useRef(props.id || makeUniqueId()).current;
34
+ const store = new Store({
35
+ id: props.id,
36
+ group
37
+ });
38
+ const [previousExpanded, setPreviousExpanded] = useState(props.expanded);
39
+ const [expanded, setExpanded] = useState(getInitialExpandedState());
40
+ if (props.expanded !== previousExpanded) {
41
+ setExpanded(props.expanded !== undefined ? props.expanded : false);
42
+ setPreviousExpanded(props.expanded);
34
43
  }
35
- constructor(props, context) {
36
- super(props);
37
- _defineProperty(this, "handleDisabledClick", e => {
38
- e.preventDefault();
39
- return false;
40
- });
41
- _defineProperty(this, "callOnChangeHandler", (...params) => {
42
- var _this$context;
43
- this.callOnChange(...params);
44
- if ((_this$context = this.context) !== null && _this$context !== void 0 && _this$context.onChange) {
45
- var _this$context2;
46
- (_this$context2 = this.context) === null || _this$context2 === void 0 ? void 0 : _this$context2.onChange(...params);
47
- }
48
- if (this.state.group && typeof window !== 'undefined') {
49
- var _window, _window$__dnbAccordio;
50
- (_window = window) === null || _window === void 0 ? void 0 : (_window$__dnbAccordio = _window.__dnbAccordion[this.state.group]) === null || _window$__dnbAccordio === void 0 ? void 0 : _window$__dnbAccordio.onChange(...params);
51
- }
52
- });
53
- _defineProperty(this, "callOnChange", ({
44
+ const thisInstance = {
45
+ _id: id,
46
+ context,
47
+ handleDisabledClick,
48
+ callOnChange,
49
+ callOnChangeHandler,
50
+ close,
51
+ setExpandedState,
52
+ state: {
54
53
  expanded,
55
- event
56
- }) => {
57
- this.changeOpened(expanded, event);
58
- dispatchCustomElementEvent(this, 'on_change', {
59
- expanded,
60
- event
61
- });
62
- });
63
- this._id = props.id || makeUniqueId();
64
- this.state = {
65
- _expanded: props.expanded,
66
- expanded: props.expanded !== null ? isTrue(props.expanded) : isTrue(context === null || context === void 0 ? void 0 : context.expanded),
67
- group: props.group || (context === null || context === void 0 ? void 0 : context.group),
68
- _listenForPropChanges: false
69
- };
70
- if (typeof window === 'undefined' && isTrue(props.expanded_ssr || (context === null || context === void 0 ? void 0 : context.expanded_ssr))) {
71
- this.state.expanded = true;
54
+ group
55
+ },
56
+ props,
57
+ store
58
+ };
59
+ useEffect(() => {
60
+ if (group && typeof window !== 'undefined') {
61
+ window['__dnbAccordion'] = window['__dnbAccordion'] || {};
62
+ window['__dnbAccordion'][group] = window['__dnbAccordion'][group] || new AccordionStore(group);
63
+ window['__dnbAccordion'][group].addInstance(thisInstance);
72
64
  }
73
- if (this.state.group && typeof window !== 'undefined') {
74
- window.__dnbAccordion = window.__dnbAccordion || {};
75
- window.__dnbAccordion[this.state.group] = window.__dnbAccordion[this.state.group] || new AccordionStore(this.state.group);
76
- window.__dnbAccordion[this.state.group].addInstance(this);
65
+ if (context && typeof (context === null || context === void 0 ? void 0 : context.onInit) === 'function') {
66
+ context.onInit(thisInstance);
77
67
  }
78
- this.store = new Store({
79
- id: props.id,
80
- group: this.state.group
81
- });
82
- if (isTrue(props.remember_state || context.remember_state) && isTrue(props.expanded)) {
83
- const expanded = this.store.getState();
84
- if (expanded === false) {
85
- this.state.expanded = false;
68
+ return () => {
69
+ if (group && typeof window !== 'undefined') {
70
+ var _window, _window$__dnbAccordio;
71
+ (_window = window) === null || _window === void 0 ? void 0 : (_window$__dnbAccordio = _window['__dnbAccordion'][group]) === null || _window$__dnbAccordio === void 0 ? void 0 : _window$__dnbAccordio.removeInstance(thisInstance);
86
72
  }
73
+ };
74
+ }, []);
75
+ useEffect(() => {
76
+ if (context.flush_remembered_state) {
77
+ store.flush();
78
+ setExpanded(props.expanded);
87
79
  }
88
- if (context && typeof (context === null || context === void 0 ? void 0 : context.onInit) === 'function') {
89
- context.onInit(this);
80
+ if (context !== null && context !== void 0 && context.expanded_id && context.expanded_id === props.id) {
81
+ setExpanded(true);
90
82
  }
91
- if (typeof window !== 'undefined' && isTrue(props.expanded_ssr || (context === null || context === void 0 ? void 0 : context.expanded_ssr))) {
92
- this.state.expanded = false;
83
+ }, [context.flush_remembered_state, context.expanded_id]);
84
+ function getInitialExpandedState() {
85
+ if (props.expanded_ssr || context !== null && context !== void 0 && context.expanded_ssr) {
86
+ return typeof window === 'undefined';
93
87
  }
94
- if (isTrue(this.props.remember_state || context.remember_state)) {
95
- const expanded = this.store.getState();
96
- if (expanded) {
97
- this.state.expanded = true;
88
+ if (props.remember_state || context.remember_state) {
89
+ const storedExpanded = store.getState();
90
+ if (props.expanded && storedExpanded === false) {
91
+ return false;
92
+ }
93
+ if (storedExpanded) {
94
+ return true;
98
95
  }
99
96
  }
97
+ return props.expanded !== undefined ? props.expanded : (context === null || context === void 0 ? void 0 : context.expanded) !== undefined ? context.expanded : false;
100
98
  }
101
- componentDidMount() {
102
- this._isMounted = true;
99
+ function setExpandedState(expanded) {
100
+ setExpanded(expanded);
103
101
  }
104
- componentWillUnmount() {
105
- this._isMounted = false;
106
- clearTimeout(this._animationState);
107
- clearTimeout(this._openTimeout);
108
- clearTimeout(this._changeOpenState);
109
- if (this.state.group && typeof window !== 'undefined') {
110
- var _window2, _window2$__dnbAccordi;
111
- (_window2 = window) === null || _window2 === void 0 ? void 0 : (_window2$__dnbAccordi = _window2.__dnbAccordion[this.state.group]) === null || _window2$__dnbAccordi === void 0 ? void 0 : _window2$__dnbAccordi.removeInstance(this);
102
+ function close() {
103
+ changeOpened(false);
104
+ }
105
+ function changeOpened(expanded) {
106
+ setExpanded(expanded);
107
+ if (props.remember_state || context.remember_state) {
108
+ store.saveState(expanded);
112
109
  }
113
110
  }
114
- componentDidUpdate(props) {
115
- var _this$context3;
116
- if (isTrue(this.context.flush_remembered_state)) {
117
- this.store.flush();
118
- this.setState({
119
- expanded: isTrue(this.props.expanded)
120
- });
111
+ function handleDisabledClick(e) {
112
+ e.preventDefault();
113
+ return false;
114
+ }
115
+ function callOnChangeHandler(...params) {
116
+ callOnChange(...params);
117
+ if (context !== null && context !== void 0 && context.onChange) {
118
+ context === null || context === void 0 ? void 0 : context.onChange(...params);
121
119
  }
122
- if ((_this$context3 = this.context) !== null && _this$context3 !== void 0 && _this$context3.expanded_id && this.context.expanded_id === props.id) {
123
- this.setState({
124
- expanded: true
125
- });
120
+ if (group && typeof window !== 'undefined') {
121
+ var _window2, _window2$__dnbAccordi;
122
+ (_window2 = window) === null || _window2 === void 0 ? void 0 : (_window2$__dnbAccordi = _window2['__dnbAccordion'][group]) === null || _window2$__dnbAccordi === void 0 ? void 0 : _window2$__dnbAccordi.onChange(...params);
126
123
  }
127
124
  }
128
- setExpandedState(expanded) {
129
- this.setState({
125
+ function callOnChange(...params) {
126
+ const {
130
127
  expanded,
131
- _listenForPropChanges: false
132
- });
133
- }
134
- close() {
135
- this.changeOpened(false);
136
- }
137
- changeOpened(expanded) {
138
- if (!this._isMounted) {
139
- return;
140
- }
141
- this.setState({
128
+ event
129
+ } = params[0];
130
+ changeOpened(expanded);
131
+ dispatchCustomElementEvent(thisInstance, 'on_change', {
142
132
  expanded,
143
- _listenForPropChanges: false
133
+ event
144
134
  });
145
- if (isTrue(this.props.remember_state) || isTrue(this.context.remember_state)) {
146
- this.store.saveState(expanded);
147
- }
148
- }
149
- render() {
150
- return React.createElement(Context.Consumer, null, globalContext => React.createElement(AccordionContext.Consumer, null, nestedContext => {
151
- let {
152
- expanded
153
- } = this.state;
154
- const props = extendPropsWithContextInClassComponent(this.props, Accordion.defaultProps, this.context, nestedContext, {
155
- skeleton: globalContext === null || globalContext === void 0 ? void 0 : globalContext.skeleton
156
- }, globalContext.accordion, globalContext.translation.Accordion);
157
- if (expanded === null && globalContext.accordion) {
158
- if (globalContext.accordion.expanded) {
159
- expanded = isTrue(props.expanded);
160
- }
161
- }
162
- const {
163
- variant,
164
- className,
165
- class: _className,
166
- prerender,
167
- prevent_rerender,
168
- prevent_rerender_conditional,
169
- single_container,
170
- remember_state,
171
- disabled,
172
- skeleton,
173
- no_animation,
174
- expanded_ssr: _expanded_ssr,
175
- children,
176
- id: _id,
177
- group: _group,
178
- expanded: _expanded,
179
- title,
180
- description,
181
- left_component,
182
- icon,
183
- icon_position,
184
- icon_size,
185
- on_change,
186
- on_state_update,
187
- contentRef
188
- } = props,
189
- rest = _objectWithoutProperties(props, _excluded);
190
- const id = this._id;
191
- const mainParams = {
192
- id,
193
- className: classnames('dnb-accordion', createSpacingClasses(props), className, _className, expanded && 'dnb-accordion--expanded', variant && `dnb-accordion__variant--${variant}`, isTrue(prerender) && 'dnb-accordion--prerender')
194
- };
195
- if (this.state.open) {
196
- mainParams.open = true;
197
- }
198
- validateDOMAttributes(this.props, rest);
199
- const extendProps = extendPropsWithContextInClassComponent(this.props, Accordion.defaultProps, this.state, this.context);
200
- const context = _objectSpread(_objectSpread({}, extendProps), {}, {
201
- id,
202
- expanded,
203
- prerender: isTrue(prerender),
204
- prevent_rerender: isTrue(prevent_rerender),
205
- prevent_rerender_conditional: isTrue(prevent_rerender_conditional),
206
- single_container: isTrue(single_container),
207
- remember_state: isTrue(remember_state),
208
- disabled: isTrue(disabled),
209
- skeleton: isTrue(skeleton),
210
- no_animation: isTrue(no_animation),
211
- callOnChange: this.callOnChangeHandler
212
- });
213
- if (isTrue(disabled)) {
214
- mainParams.onClick = this.handleDisabledClick;
215
- }
216
- return React.createElement(AccordionContext.Provider, {
217
- value: context
218
- }, React.createElement("div", mainParams, findElementInChildren(children, cur => cur.type === AccordionHeader) ? null : _AccordionHeader || (_AccordionHeader = React.createElement(AccordionHeader, null)), findElementInChildren(children, cur => cur.type === AccordionContent) ? children : React.createElement(AccordionContent, null, children)));
219
- }));
220
135
  }
221
- }
222
- _defineProperty(Accordion, "contextType", AccordionProviderContext);
223
- _defineProperty(Accordion, "Provider", AccordionGroup);
224
- _defineProperty(Accordion, "Header", AccordionHeader);
225
- _defineProperty(Accordion, "Content", AccordionContent);
226
- _defineProperty(Accordion, "defaultProps", _objectSpread({}, accordionDefaultProps));
227
- process.env.NODE_ENV !== "production" ? Accordion.propTypes = _objectSpread({}, accordionPropTypes) : void 0;
228
- class Group extends React.PureComponent {
229
- constructor(props) {
230
- super(props);
231
- _defineProperty(this, "state", {});
232
- _defineProperty(this, "onInit", instance => {
233
- if (instance.props.id && !this._IDs.includes(instance.props.id)) {
234
- this._IDs.push(instance.props.id);
136
+ return React.createElement(Context.Consumer, null, globalContext => React.createElement(AccordionContext.Consumer, null, nestedContext => {
137
+ let expandedState = expanded;
138
+ const extendedProps = extendPropsWithContext(props, accordionDefaultProps, context, nestedContext, {
139
+ skeleton: globalContext === null || globalContext === void 0 ? void 0 : globalContext.skeleton
140
+ }, globalContext.Accordion, globalContext.translation.Accordion);
141
+ if (expandedState === undefined && globalContext.Accordion) {
142
+ if (globalContext.Accordion.expanded) {
143
+ expandedState = extendedProps.expanded;
235
144
  }
236
- });
237
- let group;
238
- if (props.id) {
239
- group = props.id;
240
- } else if (!props.group) {
241
- group = '#' + makeUniqueId();
242
145
  }
243
- this.state.group = group;
244
- this.store = new Store({
146
+ const {
147
+ variant,
148
+ className,
149
+ class: _className,
150
+ prerender,
151
+ prevent_rerender,
152
+ prevent_rerender_conditional,
153
+ single_container,
154
+ remember_state,
155
+ disabled,
156
+ skeleton,
157
+ no_animation,
158
+ expanded_ssr: _expanded_ssr,
159
+ children,
160
+ id: _id,
161
+ group: _group,
162
+ title,
163
+ description,
164
+ left_component,
165
+ icon,
166
+ icon_position,
167
+ icon_size,
168
+ on_change,
169
+ on_state_update,
170
+ contentRef
171
+ } = extendedProps,
172
+ restOfExtendedProps = _objectWithoutProperties(extendedProps, _excluded2);
173
+ const mainParams = {
174
+ id,
175
+ className: classnames('dnb-accordion', createSpacingClasses(extendedProps), className, _className, expandedState && 'dnb-accordion--expanded', variant && `dnb-accordion__variant--${variant}`, prerender && 'dnb-accordion--prerender')
176
+ };
177
+ if (disabled) {
178
+ mainParams.onClick = handleDisabledClick;
179
+ }
180
+ validateDOMAttributes(props, restOfExtendedProps);
181
+ const extendedPropsForContext = extendPropsWithContext(props, accordionDefaultProps, {
182
+ expanded,
245
183
  group
184
+ }, context);
185
+ const accordionContext = _objectSpread(_objectSpread({}, extendedPropsForContext), {}, {
186
+ id,
187
+ expanded: expandedState,
188
+ prerender: prerender,
189
+ prevent_rerender: prevent_rerender,
190
+ prevent_rerender_conditional: prevent_rerender_conditional,
191
+ single_container: single_container,
192
+ remember_state: remember_state,
193
+ disabled: disabled,
194
+ skeleton: skeleton,
195
+ no_animation: no_animation,
196
+ callOnChange: callOnChangeHandler
246
197
  });
247
- this._IDs = [];
248
- if (isTrue(props.remember_state) && !props.id) {
249
- rememberWarning('accordion group');
250
- }
198
+ return React.createElement(AccordionContext.Provider, {
199
+ value: accordionContext
200
+ }, React.createElement("div", mainParams, findElementInChildren(children, cur => cur.type === AccordionHeader) ? null : _AccordionHeader || (_AccordionHeader = React.createElement(AccordionHeader, null)), findElementInChildren(children, cur => cur.type === AccordionContent) ? children : React.createElement(AccordionContent, null, children)));
201
+ }));
202
+ }
203
+ Accordion.defaultProps = accordionDefaultProps;
204
+ const Group = props => {
205
+ if (props.remember_state && !props.id) {
206
+ rememberWarning('accordion group');
251
207
  }
252
- componentDidMount() {
253
- const storedData = this.store.getData();
254
- if (storedData !== null && storedData !== void 0 && storedData.id) {
255
- if (!this._IDs.includes(storedData.id)) {
256
- const expanded_id = this._IDs[0];
257
- if (expanded_id) {
258
- this.setState({
259
- expanded_id
260
- }, () => {
261
- this.store.saveState(true, expanded_id);
262
- this.setState({
263
- expanded_id: null
264
- });
265
- });
266
- }
267
- }
208
+ const [expandedId, setExpandedId] = useState(null);
209
+ const instanceIDs = useRef([]);
210
+ const group = props !== null && props !== void 0 && props.id ? props.id : !props.group ? '#' + makeUniqueId() : undefined;
211
+ const store = new Store({
212
+ group
213
+ });
214
+ useEffect(() => {
215
+ const storedData = store.getData();
216
+ const currentIDs = instanceIDs === null || instanceIDs === void 0 ? void 0 : instanceIDs.current;
217
+ if (!(storedData !== null && storedData !== void 0 && storedData.id)) {
218
+ return;
219
+ }
220
+ if (currentIDs.includes(storedData === null || storedData === void 0 ? void 0 : storedData.id)) {
221
+ return;
222
+ }
223
+ const fallbackId = currentIDs[0];
224
+ if (!fallbackId) {
225
+ return;
226
+ }
227
+ setExpandedId(fallbackId);
228
+ }, []);
229
+ useEffect(() => {
230
+ if (!expandedId) {
231
+ return;
232
+ }
233
+ store.saveState(true, expandedId);
234
+ setExpandedId(null);
235
+ }, [expandedId]);
236
+ function onInit(instance) {
237
+ if (instance.props.id && !instanceIDs.current.includes(instance.props.id)) {
238
+ instanceIDs.current.push(instance.props.id);
268
239
  }
269
240
  }
270
- render() {
271
- return React.createElement(AccordionGroup, _extends({
272
- onInit: this.onInit
273
- }, this.props, this.state));
274
- }
275
- }
276
- _defineProperty(Group, "defaultProps", {
277
- id: null,
278
- group: null,
279
- remember_state: null
280
- });
281
- process.env.NODE_ENV !== "production" ? Group.propTypes = {
282
- id: PropTypes.string,
283
- group: PropTypes.string,
284
- remember_state: PropTypes.oneOfType([PropTypes.string, PropTypes.bool])
285
- } : void 0;
241
+ return React.createElement(AccordionGroup, _extends({
242
+ onInit: onInit
243
+ }, props, {
244
+ group: group,
245
+ expanded_id: expandedId || props.expanded_id
246
+ }));
247
+ };
248
+ Accordion.Provider = AccordionGroup;
249
+ Accordion.Header = AccordionHeader;
250
+ Accordion.Content = AccordionContent;
286
251
  Accordion.Group = Group;
287
- Accordion.Group.Store = (group, id = null) => {
252
+ Group.Store = (group, id = null) => {
288
253
  return new Store({
289
254
  group,
290
255
  id
@@ -295,4 +260,5 @@ Accordion.Store = id => {
295
260
  id
296
261
  });
297
262
  };
263
+ export default Accordion;
298
264
  //# sourceMappingURL=Accordion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Accordion.js","names":["React","PropTypes","classnames","isTrue","makeUniqueId","findElementInChildren","extendPropsWithContextInClassComponent","validateDOMAttributes","dispatchCustomElementEvent","createSpacingClasses","AccordionGroup","AccordionHeader","AccordionContent","AccordionContext","AccordionProviderContext","Context","accordionPropTypes","accordionDefaultProps","AccordionStore","Store","rememberWarning","Accordion","PureComponent","getDerivedStateFromProps","props","state","_listenForPropChanges","expanded","_expanded","group","constructor","context","_defineProperty","e","preventDefault","params","_this$context","callOnChange","onChange","_this$context2","window","_window","_window$__dnbAccordio","__dnbAccordion","event","changeOpened","_id","id","expanded_ssr","addInstance","store","remember_state","getState","onInit","componentDidMount","_isMounted","componentWillUnmount","clearTimeout","_animationState","_openTimeout","_changeOpenState","_window2","_window2$__dnbAccordi","removeInstance","componentDidUpdate","_this$context3","flush_remembered_state","flush","setState","expanded_id","setExpandedState","close","saveState","render","createElement","Consumer","globalContext","nestedContext","defaultProps","skeleton","accordion","translation","variant","className","class","_className","prerender","prevent_rerender","prevent_rerender_conditional","single_container","disabled","no_animation","_expanded_ssr","children","_group","title","description","left_component","icon","icon_position","icon_size","on_change","on_state_update","contentRef","rest","_objectWithoutProperties","_excluded","mainParams","open","extendProps","_objectSpread","callOnChangeHandler","onClick","handleDisabledClick","Provider","value","cur","type","_AccordionHeader","process","env","NODE_ENV","propTypes","Group","instance","_IDs","includes","push","storedData","getData","_extends","string","oneOfType","bool"],"sources":["../../../../src/components/accordion/Accordion.js"],"sourcesContent":["/**\n * Web Accordion Component\n *\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport {\n isTrue,\n makeUniqueId,\n findElementInChildren,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport { createSpacingClasses } from '../space/SpacingHelper'\n\nimport AccordionGroup from './AccordionGroup'\nimport AccordionHeader from './AccordionHeader'\nimport AccordionContent from './AccordionContent'\nimport AccordionContext from './AccordionContext'\nimport AccordionProviderContext from './AccordionProviderContext'\nimport Context from '../../shared/Context'\nimport {\n accordionPropTypes,\n accordionDefaultProps,\n} from './AccordionPropTypes'\nimport { AccordionStore, Store, rememberWarning } from './AccordionStore'\n\nexport default class Accordion extends React.PureComponent {\n static contextType = AccordionProviderContext\n static Provider = AccordionGroup // Provider and Group is \"the same\", except that Accordion.Group has a layer above/before in class Group with additional logic.\n static Header = AccordionHeader\n static Content = AccordionContent\n\n static propTypes = {\n ...accordionPropTypes,\n }\n\n static defaultProps = {\n ...accordionDefaultProps,\n }\n\n static getDerivedStateFromProps(props, state) {\n if (state._listenForPropChanges) {\n if (props.expanded !== state._expanded) {\n state.expanded = isTrue(props.expanded)\n state._expanded = props.expanded\n }\n\n if (props.group && !state.group) {\n state.group = props.group\n }\n }\n state._listenForPropChanges = true\n\n return state\n }\n\n constructor(props, context) {\n super(props)\n this._id = props.id || makeUniqueId() // cause we need an id anyway\n\n this.state = {\n _expanded: props.expanded,\n expanded:\n props.expanded !== null\n ? isTrue(props.expanded)\n : isTrue(context?.expanded),\n group: props.group || context?.group,\n _listenForPropChanges: false, // make sure to not run DerivedState\n }\n\n if (\n typeof window === 'undefined' &&\n isTrue(props.expanded_ssr || context?.expanded_ssr)\n ) {\n this.state.expanded = true\n }\n\n if (this.state.group && typeof window !== 'undefined') {\n window.__dnbAccordion = window.__dnbAccordion || {}\n window.__dnbAccordion[this.state.group] =\n window.__dnbAccordion[this.state.group] ||\n new AccordionStore(this.state.group)\n\n window.__dnbAccordion[this.state.group].addInstance(this)\n }\n\n this.store = new Store({ id: props.id, group: this.state.group })\n\n if (\n isTrue(props.remember_state || context.remember_state) &&\n isTrue(props.expanded)\n ) {\n const expanded = this.store.getState()\n if (expanded === false) {\n this.state.expanded = false\n }\n }\n\n if (context && typeof context?.onInit === 'function') {\n context.onInit(this)\n }\n\n if (\n typeof window !== 'undefined' &&\n isTrue(props.expanded_ssr || context?.expanded_ssr)\n ) {\n this.state.expanded = false\n }\n\n if (isTrue(this.props.remember_state || context.remember_state)) {\n const expanded = this.store.getState()\n if (expanded) {\n this.state.expanded = true\n }\n }\n }\n\n componentDidMount() {\n this._isMounted = true\n }\n\n componentWillUnmount() {\n this._isMounted = false\n\n clearTimeout(this._animationState)\n clearTimeout(this._openTimeout)\n clearTimeout(this._changeOpenState)\n\n if (this.state.group && typeof window !== 'undefined') {\n window?.__dnbAccordion[this.state.group]?.removeInstance(this)\n }\n }\n\n componentDidUpdate(props) {\n if (isTrue(this.context.flush_remembered_state)) {\n this.store.flush()\n this.setState({\n expanded: isTrue(this.props.expanded),\n })\n }\n\n if (\n this.context?.expanded_id &&\n this.context.expanded_id === props.id\n ) {\n this.setState({\n expanded: true,\n })\n }\n }\n\n setExpandedState(expanded) {\n this.setState({\n expanded,\n _listenForPropChanges: false,\n })\n }\n\n close() {\n this.changeOpened(false)\n }\n\n changeOpened(expanded) {\n if (!this._isMounted) {\n return\n }\n\n this.setState({\n expanded,\n _listenForPropChanges: false,\n })\n\n // check if a event exists, because, then it's a user click\n if (\n isTrue(this.props.remember_state) ||\n isTrue(this.context.remember_state)\n ) {\n this.store.saveState(expanded)\n }\n }\n\n handleDisabledClick = (e) => {\n e.preventDefault()\n return false\n }\n\n callOnChangeHandler = (...params) => {\n this.callOnChange(...params)\n if (this.context?.onChange) {\n this.context?.onChange(...params)\n }\n if (this.state.group && typeof window !== 'undefined') {\n window?.__dnbAccordion[this.state.group]?.onChange(...params)\n }\n }\n\n callOnChange = ({ expanded, event }) => {\n this.changeOpened(expanded, event)\n\n dispatchCustomElementEvent(this, 'on_change', {\n expanded,\n event,\n })\n }\n\n render() {\n return (\n <Context.Consumer>\n {(globalContext) => (\n <AccordionContext.Consumer>\n {(nestedContext) => {\n let { expanded } = this.state\n\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n Accordion.defaultProps,\n this.context, // group context\n nestedContext, // internal context\n { skeleton: globalContext?.skeleton },\n globalContext.accordion, // global context\n globalContext.translation.Accordion\n )\n\n if (expanded === null && globalContext.accordion) {\n if (globalContext.accordion.expanded) {\n expanded = isTrue(props.expanded)\n }\n }\n\n const {\n variant,\n className,\n class: _className,\n prerender,\n prevent_rerender,\n prevent_rerender_conditional,\n single_container,\n remember_state,\n disabled,\n skeleton,\n no_animation,\n expanded_ssr: _expanded_ssr, // eslint-disable-line\n children,\n\n id: _id, // eslint-disable-line\n group: _group, // eslint-disable-line\n expanded: _expanded, // eslint-disable-line\n\n title, // eslint-disable-line\n description, // eslint-disable-line\n left_component, // eslint-disable-line\n icon, // eslint-disable-line\n icon_position, // eslint-disable-line\n icon_size, // eslint-disable-line\n on_change, // eslint-disable-line\n on_state_update, // eslint-disable-line\n\n contentRef, // eslint-disable-line\n\n ...rest\n } = props\n\n const id = this._id\n\n const mainParams = {\n id,\n className: classnames(\n 'dnb-accordion',\n expanded && 'dnb-accordion--expanded',\n variant && `dnb-accordion__variant--${variant}`,\n isTrue(prerender) && 'dnb-accordion--prerender',\n createSpacingClasses(props),\n className,\n _className\n ),\n }\n\n if (this.state.open) {\n mainParams.open = true\n }\n\n // to remove spacing props\n validateDOMAttributes(this.props, rest)\n\n const extendProps = extendPropsWithContextInClassComponent(\n this.props,\n Accordion.defaultProps,\n this.state,\n this.context\n )\n\n const context = {\n ...extendProps,\n id,\n expanded,\n prerender: isTrue(prerender),\n prevent_rerender: isTrue(prevent_rerender),\n prevent_rerender_conditional: isTrue(\n prevent_rerender_conditional\n ),\n single_container: isTrue(single_container),\n remember_state: isTrue(remember_state),\n disabled: isTrue(disabled),\n skeleton: isTrue(skeleton),\n no_animation: isTrue(no_animation),\n callOnChange: this.callOnChangeHandler,\n }\n\n if (isTrue(disabled)) {\n mainParams.onClick = this.handleDisabledClick\n }\n\n return (\n <AccordionContext.Provider value={context}>\n <div {...mainParams}>\n {findElementInChildren(\n children,\n (cur) => cur.type === AccordionHeader\n ) ? null : (\n <AccordionHeader />\n )}\n {findElementInChildren(\n children,\n (cur) => cur.type === AccordionContent\n ) ? (\n children\n ) : (\n <AccordionContent>{children}</AccordionContent>\n )}\n </div>\n </AccordionContext.Provider>\n )\n }}\n </AccordionContext.Consumer>\n )}\n </Context.Consumer>\n )\n }\n}\n\nclass Group extends React.PureComponent {\n static propTypes = {\n id: PropTypes.string,\n group: PropTypes.string,\n remember_state: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n }\n\n static defaultProps = {\n id: null,\n group: null,\n remember_state: null,\n }\n\n state = {}\n\n constructor(props) {\n super(props)\n\n let group\n\n if (props.id) {\n group = props.id\n } else if (!props.group) {\n group = '#' + makeUniqueId()\n }\n this.state.group = group\n\n this.store = new Store({ group })\n this._IDs = []\n\n if (isTrue(props.remember_state) && !props.id) {\n rememberWarning('accordion group')\n }\n }\n\n onInit = (instance) => {\n if (instance.props.id && !this._IDs.includes(instance.props.id)) {\n this._IDs.push(instance.props.id)\n }\n }\n\n componentDidMount() {\n const storedData = this.store.getData()\n if (storedData?.id) {\n if (!this._IDs.includes(storedData.id)) {\n // 1. get the fallback id\n const expanded_id = this._IDs[0]\n\n if (expanded_id) {\n // 2. set the fallback id\n this.setState(\n {\n expanded_id,\n },\n () => {\n // 3. save the fallback id\n this.store.saveState(true, expanded_id)\n\n // 4. and reset the fallback id\n this.setState({\n expanded_id: null,\n })\n }\n )\n }\n }\n }\n }\n\n render() {\n return (\n <AccordionGroup\n onInit={this.onInit}\n {...this.props}\n {...this.state}\n />\n )\n }\n}\n\nAccordion.Group = Group\nAccordion.Group.Store = (group, id = null) => {\n return new Store({ group, id })\n}\nAccordion.Store = (id) => {\n return new Store({ id })\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Accordion.js","names":["React","useContext","useState","useEffect","useRef","classnames","makeUniqueId","findElementInChildren","extendPropsWithContext","validateDOMAttributes","dispatchCustomElementEvent","createSpacingClasses","AccordionGroup","AccordionHeader","AccordionContent","AccordionContext","AccordionProviderContext","Context","AccordionStore","Store","rememberWarning","accordionDefaultProps","Accordion","_ref","variant","icon_size","restOfProps","_objectWithoutProperties","_excluded","props","_objectSpread","context","group","id","current","store","previousExpanded","setPreviousExpanded","expanded","setExpanded","getInitialExpandedState","undefined","thisInstance","_id","handleDisabledClick","callOnChange","callOnChangeHandler","close","setExpandedState","state","window","addInstance","onInit","_window","_window$__dnbAccordio","removeInstance","flush_remembered_state","flush","expanded_id","expanded_ssr","remember_state","storedExpanded","getState","changeOpened","saveState","e","preventDefault","params","onChange","_window2","_window2$__dnbAccordi","event","createElement","Consumer","globalContext","nestedContext","expandedState","extendedProps","skeleton","translation","className","class","_className","prerender","prevent_rerender","prevent_rerender_conditional","single_container","disabled","no_animation","_expanded_ssr","children","_group","title","description","left_component","icon","icon_position","on_change","on_state_update","contentRef","restOfExtendedProps","_excluded2","mainParams","onClick","extendedPropsForContext","accordionContext","Provider","value","cur","type","_AccordionHeader","defaultProps","Group","expandedId","setExpandedId","instanceIDs","storedData","getData","currentIDs","includes","fallbackId","instance","push","_extends","Header","Content"],"sources":["../../../../src/components/accordion/Accordion.tsx"],"sourcesContent":["/**\n * Web Accordion Component\n *\n */\n\nimport React, {\n useContext,\n useState,\n useEffect,\n useRef,\n HTMLProps,\n} from 'react'\n\nimport classnames from 'classnames'\nimport {\n makeUniqueId,\n findElementInChildren,\n extendPropsWithContext,\n validateDOMAttributes,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport { createSpacingClasses } from '../space/SpacingHelper'\n\nimport type { ButtonIconPosition } from '../Button'\nimport type { HeadingLevel } from '../Heading'\nimport type { IconIcon, IconSize } from '../Icon'\nimport type { SkeletonShow } from '../Skeleton'\nimport type { SpacingProps } from '../space/types'\n\nimport AccordionGroup from './AccordionGroup'\nimport AccordionHeader from './AccordionHeader'\nimport AccordionContent from './AccordionContent'\nimport AccordionContext from './AccordionContext'\nimport AccordionProviderContext from './AccordionProviderContext'\nimport Context from '../../shared/Context'\n\nimport { AccordionStore, Store, rememberWarning } from './AccordionStore'\nimport { accordionDefaultProps } from './defaultProps'\n\nexport type AccordionVariant = 'plain' | 'default' | 'outlined' | 'filled'\n\nexport type AccordionHeading = boolean | React.ReactNode\n\nexport type AccordionIcon =\n | IconIcon\n | {\n closed?: React.ReactNode | ((...args: any[]) => any)\n /**\n * If set to `true` the accordion will be expanded as its initial state.\n */\n expanded?: React.ReactNode | ((...args: any[]) => any)\n }\n\nexport type AccordionAttributes = string | Record<string, unknown>\n\nexport type AccordionIconPosition = ButtonIconPosition\n\nexport type AccordionProps = Omit<React.HTMLProps<HTMLElement>, 'ref'> &\n SpacingProps & {\n /**\n * A title as a string or React element. It will be used as the button text.\n */\n title?: React.ReactNode\n description?: React.ReactNode\n /**\n * If set to `true` the accordion will be expanded as its initial state.\n */\n expanded?: boolean\n /**\n * If set to `true`, the open and close animation will be omitted.\n */\n no_animation?: boolean\n /**\n * If set to `true` the accordion will be expanded during SSR. Can be potentially useful for SEO, although it will disturb client hydration, where React expects the same state. But that&#39;s mainly a technical aspect to consider.\n */\n expanded_ssr?: boolean\n /**\n */\n prerender?: boolean\n /**\n * If set to `true` the accordion component will not re-render its content – can be useful for widgets you don&#39;t have control of storing the temporary state during an interaction.\n */\n prevent_rerender?: boolean\n /**\n * Use this prop together with `prevent_rerender` – and if it is to `true`, the accordion component will re-render if the children are a new React element and does not match the previous one anymore.\n */\n prevent_rerender_conditional?: boolean\n /**\n * If set to `true`, it will remember a changed state initiated by the user. It requires a unique `id`. It will store the sate in the local storage.\n */\n remember_state?: boolean\n /**\n * Send along a custom React Ref for `.dnb-accordion__content`.\n */\n contentRef?: React.MutableRefObject<unknown>\n /**\n * If set to `true`, the saved (remembered) will be removed and the initial component state will be used and set.\n */\n flush_remembered_state?: boolean\n /**\n * If set to `true`, a group of accordions will be wrapped to sidebar looking menu for medium and larger screens.\n */\n single_container?: boolean\n /**\n * Defines the used styling. As of now, only `outlined` is available. Use `plain` for no styles. It defaults to `outlined`.\n */\n variant?: AccordionVariant\n /**\n * Will add a React element on the left side of the `title`, inside `AccordionHeaderContainer`.\n */\n left_component?: React.ReactNode\n /**\n * If set to `true`, the accordion button will be disabled (dimmed).\n */\n disabled?: boolean\n /**\n * If set to `true`, an overlaying skeleton with animation will be shown.\n */\n skeleton?: SkeletonShow\n /**\n * A unique `id` that will be used on the button element. If you use `remember_state`, an id is required.\n */\n id?: string\n group?: string\n /**\n * Gives you the option to replace the used `button` element. Provide a React element, including a string (HTML element). Defaults to a `div` with all the needed accessibility features included.\n */\n element?: React.ReactNode\n /**\n * If set to `true`, level 2 (h2) will be used. You can provide your own HTML heading (`h3`), or provide a `heading_level` property.\n */\n heading?: AccordionHeading\n /**\n * If `heading` is set to `true`, you can provide a numeric value to define a different heading level. Defaults to `2`.\n */\n heading_level?: HeadingLevel\n /**\n * Will replace the `chevron` icon. The icon will still rotate (by CSS). You can use an object to use two different icons, one for the closed state and one for the expanded state `{ closed, expanded }`.\n */\n icon?: AccordionIcon\n /**\n * Will set the placement of the icon. Defaults to `left`.\n */\n icon_position?: AccordionIconPosition\n /**\n * Define a different icon size. Defaults to `medium` (1.5rem).\n */\n icon_size?: IconSize\n attributes?: AccordionAttributes\n class?: string\n className?: string\n children?: React.ReactNode\n /**\n * Will be called by user click interaction. Returns an object with a boolean state `expanded` inside `{ expanded, id, event, ...event }`.\n */\n on_change?: (...args: any[]) => any\n on_state_update?: (...args: any[]) => any\n }\n\nfunction Accordion({\n variant = 'outlined',\n icon_size = 'medium',\n ...restOfProps\n}: AccordionProps) {\n const props = { variant, icon_size, ...restOfProps }\n\n const context = useContext(AccordionProviderContext)\n\n const group = props.group || context?.group\n const id = useRef(props.id || makeUniqueId()).current\n\n const store = new Store({ id: props.id, group })\n\n // States ordered last here to make sure that the getInitialExpandedState have access to the store\n const [previousExpanded, setPreviousExpanded] = useState(props.expanded)\n const [expanded, setExpanded] = useState<boolean>(\n getInitialExpandedState()\n )\n\n // replacement for getDerivedStateFromProps\n if (props.expanded !== previousExpanded) {\n setExpanded(props.expanded !== undefined ? props.expanded : false)\n setPreviousExpanded(props.expanded)\n }\n\n const thisInstance = {\n _id: id,\n context,\n handleDisabledClick,\n callOnChange,\n callOnChangeHandler,\n close,\n setExpandedState,\n state: { expanded, group },\n props,\n store,\n }\n\n // Constructor\n useEffect(() => {\n if (group && typeof window !== 'undefined') {\n window['__dnbAccordion'] = window['__dnbAccordion'] || {}\n window['__dnbAccordion'][group] =\n window['__dnbAccordion'][group] || new AccordionStore(group)\n\n window['__dnbAccordion'][group].addInstance(thisInstance)\n }\n\n if (context && typeof context?.onInit === 'function') {\n context.onInit(thisInstance)\n }\n\n return () => {\n if (group && typeof window !== 'undefined') {\n window?.['__dnbAccordion'][group]?.removeInstance(thisInstance)\n }\n }\n }, [])\n\n // componentDidUpdate\n useEffect(() => {\n if (context.flush_remembered_state) {\n store.flush()\n setExpanded(props.expanded)\n }\n\n if (context?.expanded_id && context.expanded_id === props.id) {\n setExpanded(true)\n }\n }, [context.flush_remembered_state, context.expanded_id])\n\n // Gets the initial expanded sate, to prevent the opening and closing of Accordion\n // That happens when if we put this logic in a useEffect that runs after the inital expanded state is set\n // Since useEffect runs after every render\n function getInitialExpandedState() {\n if (props.expanded_ssr || context?.expanded_ssr) {\n return typeof window === 'undefined'\n }\n\n if (props.remember_state || context.remember_state) {\n const storedExpanded = store.getState()\n\n if (props.expanded && storedExpanded === false) {\n return false\n }\n\n if (storedExpanded) {\n return true\n }\n }\n\n return props.expanded !== undefined\n ? props.expanded\n : context?.expanded !== undefined\n ? context.expanded\n : false\n }\n\n function setExpandedState(expanded: boolean) {\n setExpanded(expanded)\n }\n\n function close() {\n changeOpened(false)\n }\n\n function changeOpened(expanded: boolean) {\n setExpanded(expanded)\n\n // check if a event exists, because, then it's a user click\n if (props.remember_state || context.remember_state) {\n store.saveState(expanded)\n }\n }\n\n function handleDisabledClick(e: React.MouseEvent<HTMLElement>) {\n e.preventDefault()\n return false\n }\n\n function callOnChangeHandler(...params: any[]) {\n callOnChange(...params)\n if (context?.onChange) {\n context?.onChange(...params)\n }\n if (group && typeof window !== 'undefined') {\n window?.['__dnbAccordion'][group]?.onChange(...params)\n }\n }\n\n function callOnChange(...params: any[]) {\n const { expanded, event } = params[0]\n\n changeOpened(expanded)\n\n dispatchCustomElementEvent(thisInstance, 'on_change', {\n expanded,\n event,\n })\n }\n\n return (\n <Context.Consumer>\n {(globalContext) => (\n <AccordionContext.Consumer>\n {(nestedContext) => {\n // use only the props from context, who are available here anyway\n let expandedState = expanded\n\n const extendedProps = extendPropsWithContext(\n props,\n accordionDefaultProps,\n context, // group context\n nestedContext as Record<string, unknown>, // internal context\n { skeleton: globalContext?.skeleton },\n globalContext.Accordion, // global context\n globalContext.translation.Accordion\n )\n\n if (expandedState === undefined && globalContext.Accordion) {\n if (globalContext.Accordion.expanded) {\n expandedState = extendedProps.expanded\n }\n }\n\n const {\n variant,\n className,\n class: _className,\n prerender,\n prevent_rerender,\n prevent_rerender_conditional,\n single_container,\n remember_state,\n disabled,\n skeleton,\n no_animation,\n expanded_ssr: _expanded_ssr, // eslint-disable-line\n children,\n\n id: _id, // eslint-disable-line\n group: _group, // eslint-disable-line\n // expanded: _expanded, // eslint-disable-line\n\n title, // eslint-disable-line\n description, // eslint-disable-line\n left_component, // eslint-disable-line\n icon, // eslint-disable-line\n icon_position, // eslint-disable-line\n icon_size, // eslint-disable-line\n on_change, // eslint-disable-line\n on_state_update, // eslint-disable-line\n\n contentRef, // eslint-disable-line\n\n ...restOfExtendedProps\n } = extendedProps\n\n const mainParams = {\n id,\n className: classnames(\n 'dnb-accordion',\n expandedState && 'dnb-accordion--expanded',\n variant && `dnb-accordion__variant--${variant}`,\n prerender && 'dnb-accordion--prerender',\n createSpacingClasses(extendedProps),\n className,\n _className\n ),\n } as HTMLProps<HTMLDivElement>\n\n if (disabled) {\n mainParams.onClick = handleDisabledClick\n }\n\n // to remove spacing props\n validateDOMAttributes(props, restOfExtendedProps)\n\n const extendedPropsForContext = extendPropsWithContext(\n props,\n accordionDefaultProps,\n { expanded, group },\n context\n )\n\n const accordionContext = {\n ...extendedPropsForContext,\n id,\n expanded: expandedState,\n prerender: prerender,\n prevent_rerender: prevent_rerender,\n prevent_rerender_conditional: prevent_rerender_conditional,\n single_container: single_container,\n remember_state: remember_state,\n disabled: disabled,\n skeleton: skeleton,\n no_animation: no_animation,\n callOnChange: callOnChangeHandler,\n }\n\n return (\n <AccordionContext.Provider value={accordionContext}>\n <div {...mainParams}>\n {findElementInChildren(\n children,\n (cur) => cur.type === AccordionHeader\n ) ? null : (\n <AccordionHeader />\n )}\n {findElementInChildren(\n children,\n (cur) => cur.type === AccordionContent\n ) ? (\n children\n ) : (\n <AccordionContent>{children}</AccordionContent>\n )}\n </div>\n </AccordionContext.Provider>\n )\n }}\n </AccordionContext.Consumer>\n )}\n </Context.Consumer>\n )\n}\n// TEMPORARY SOLUTION (defaultProps will be deprecated at one point). Needs to replacement with default prop parameters for example \"({expaned: null})\"\n// Only solved this way to prevent tests from failing, for when expanded is undefined instead of null\nAccordion.defaultProps = accordionDefaultProps\n\nexport type GroupProps = AccordionProps & {\n allow_close_all?: boolean\n expanded_id?: string\n}\n\nconst Group = (props: GroupProps) => {\n if (props.remember_state && !props.id) {\n rememberWarning('accordion group')\n }\n\n const [expandedId, setExpandedId] = useState<string | null>(null)\n\n const instanceIDs = useRef<string[]>([])\n\n const group = props?.id\n ? props.id\n : !props.group\n ? '#' + makeUniqueId()\n : undefined\n\n const store = new Store({ group })\n\n // Set stored expanded_id on mount\n useEffect(() => {\n const storedData = store.getData()\n const currentIDs = instanceIDs?.current\n\n if (!storedData?.id) {\n return\n }\n\n if (currentIDs.includes(storedData?.id)) {\n return\n }\n\n // 1. get the fallback id\n const fallbackId = currentIDs[0]\n\n if (!fallbackId) {\n return\n }\n\n // 2. set the fallback ids\n setExpandedId(fallbackId)\n }, [])\n\n // Store and reset fallback id\n useEffect(() => {\n if (!expandedId) {\n return\n }\n\n // 3. save the fallback id\n store.saveState(true, expandedId)\n\n // 4. and reset the fallback id\n setExpandedId(null)\n }, [expandedId])\n\n function onInit(instance) {\n if (\n instance.props.id &&\n !instanceIDs.current.includes(instance.props.id)\n ) {\n instanceIDs.current.push(instance.props.id)\n }\n }\n\n return (\n <AccordionGroup\n onInit={onInit}\n {...props}\n group={group}\n expanded_id={expandedId || props.expanded_id}\n />\n )\n}\n\nAccordion.Provider = AccordionGroup\nAccordion.Header = AccordionHeader\nAccordion.Content = AccordionContent\n\nAccordion.Group = Group\n\nGroup.Store = (group: string, id: string = null) => {\n return new Store({ group, id })\n}\n\nAccordion.Store = (id: string) => {\n return new Store({ id })\n}\n\nexport default Accordion\n"],"mappings":"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"}