@dnb/eufemia 10.19.0 → 10.20.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 (759) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/cjs/components/accordion/AccordionContent.d.ts +1 -1
  3. package/cjs/components/accordion/AccordionContent.js.map +1 -1
  4. package/cjs/components/accordion/style/dnb-accordion.css +0 -3
  5. package/cjs/components/accordion/style/dnb-accordion.min.css +1 -1
  6. package/cjs/components/accordion/style/dnb-accordion.scss +0 -5
  7. package/cjs/components/breadcrumb/Breadcrumb.js +11 -2
  8. package/cjs/components/breadcrumb/Breadcrumb.js.map +1 -1
  9. package/cjs/components/breadcrumb/BreadcrumbItem.js +11 -8
  10. package/cjs/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  11. package/cjs/components/card/Card.d.ts +6 -4
  12. package/cjs/components/card/Card.js +11 -15
  13. package/cjs/components/card/Card.js.map +1 -1
  14. package/cjs/components/card/style/dnb-card.css +29 -0
  15. package/cjs/components/card/style/dnb-card.min.css +1 -1
  16. package/cjs/components/card/style/dnb-card.scss +41 -0
  17. package/cjs/components/card/style/themes/dnb-card-theme-ui.css +1 -19
  18. package/cjs/components/card/style/themes/dnb-card-theme-ui.min.css +1 -1
  19. package/cjs/components/card/style/themes/dnb-card-theme-ui.scss +1 -27
  20. package/cjs/components/date-picker/DatePickerProvider.js +10 -10
  21. package/cjs/components/date-picker/DatePickerProvider.js.map +1 -1
  22. package/cjs/components/flex/Container.js +1 -1
  23. package/cjs/components/flex/Container.js.map +1 -1
  24. package/cjs/components/flex/Item.js +8 -13
  25. package/cjs/components/flex/Item.js.map +1 -1
  26. package/cjs/components/flex/style/dnb-flex.css +3 -0
  27. package/cjs/components/flex/style/dnb-flex.min.css +1 -1
  28. package/cjs/components/flex/style/flex-container.scss +3 -0
  29. package/cjs/components/flex/utils.d.ts +35 -7
  30. package/cjs/components/flex/utils.js +65 -33
  31. package/cjs/components/flex/utils.js.map +1 -1
  32. package/cjs/components/form-status/FormStatus.d.ts +5 -1
  33. package/cjs/components/form-status/FormStatus.js +38 -44
  34. package/cjs/components/form-status/FormStatus.js.map +1 -1
  35. package/cjs/components/form-status/style/dnb-form-status.css +0 -18
  36. package/cjs/components/form-status/style/dnb-form-status.min.css +1 -1
  37. package/cjs/components/form-status/style/dnb-form-status.scss +0 -45
  38. package/cjs/components/global-status/GlobalStatus.js +52 -138
  39. package/cjs/components/global-status/GlobalStatus.js.map +1 -1
  40. package/cjs/components/global-status/style/dnb-global-status.css +6 -16
  41. package/cjs/components/global-status/style/dnb-global-status.min.css +1 -1
  42. package/cjs/components/global-status/style/dnb-global-status.scss +11 -23
  43. package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.css +0 -3
  44. package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
  45. package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.scss +0 -10
  46. package/cjs/components/height-animation/HeightAnimation.d.ts +12 -4
  47. package/cjs/components/height-animation/HeightAnimation.js +31 -14
  48. package/cjs/components/height-animation/HeightAnimation.js.map +1 -1
  49. package/cjs/components/height-animation/HeightAnimationInstance.d.ts +35 -18
  50. package/cjs/components/height-animation/HeightAnimationInstance.js +186 -158
  51. package/cjs/components/height-animation/HeightAnimationInstance.js.map +1 -1
  52. package/cjs/components/height-animation/style/dnb-height-animation.css +16 -2
  53. package/cjs/components/height-animation/style/dnb-height-animation.min.css +1 -1
  54. package/cjs/components/height-animation/style/dnb-height-animation.scss +18 -2
  55. package/cjs/components/height-animation/useHeightAnimation.d.ts +6 -1
  56. package/cjs/components/height-animation/useHeightAnimation.js +125 -92
  57. package/cjs/components/height-animation/useHeightAnimation.js.map +1 -1
  58. package/cjs/components/number-format/NumberFormat.d.ts +7 -12
  59. package/cjs/components/step-indicator/StepIndicatorItem.js +3 -21
  60. package/cjs/components/step-indicator/StepIndicatorItem.js.map +1 -1
  61. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js +2 -16
  62. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  63. package/cjs/components/step-indicator/style/dnb-step-indicator.css +0 -5
  64. package/cjs/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
  65. package/cjs/components/step-indicator/style/dnb-step-indicator.scss +0 -7
  66. package/cjs/components/table/TableAccordionContent.js +51 -23
  67. package/cjs/components/table/TableAccordionContent.js.map +1 -1
  68. package/cjs/components/table/style/dnb-table.css +6 -3
  69. package/cjs/components/table/style/dnb-table.min.css +1 -1
  70. package/cjs/components/table/style/table-accordion.scss +6 -3
  71. package/cjs/components/tabs/Tabs.js +2 -1
  72. package/cjs/components/tabs/Tabs.js.map +1 -1
  73. package/cjs/components/tabs/TabsContentWrapper.d.ts +1 -0
  74. package/cjs/components/tabs/TabsContentWrapper.js +8 -6
  75. package/cjs/components/tabs/TabsContentWrapper.js.map +1 -1
  76. package/cjs/components/upload/Upload.js +15 -18
  77. package/cjs/components/upload/Upload.js.map +1 -1
  78. package/cjs/components/upload/UploadFileInput.js +3 -1
  79. package/cjs/components/upload/UploadFileInput.js.map +1 -1
  80. package/cjs/components/upload/UploadFileList.js +1 -1
  81. package/cjs/components/upload/UploadFileList.js.map +1 -1
  82. package/cjs/components/upload/UploadStatus.js +6 -2
  83. package/cjs/components/upload/UploadStatus.js.map +1 -1
  84. package/cjs/components/upload/useUpload.js +5 -6
  85. package/cjs/components/upload/useUpload.js.map +1 -1
  86. package/cjs/elements/lib.d.ts +6 -0
  87. package/cjs/elements/typography/H1.d.ts +1 -0
  88. package/cjs/elements/typography/H1.js +1 -1
  89. package/cjs/elements/typography/H1.js.map +1 -1
  90. package/cjs/elements/typography/H2.d.ts +1 -0
  91. package/cjs/elements/typography/H2.js +1 -1
  92. package/cjs/elements/typography/H2.js.map +1 -1
  93. package/cjs/elements/typography/H3.d.ts +1 -0
  94. package/cjs/elements/typography/H3.js +1 -1
  95. package/cjs/elements/typography/H3.js.map +1 -1
  96. package/cjs/elements/typography/H4.d.ts +1 -0
  97. package/cjs/elements/typography/H4.js +1 -1
  98. package/cjs/elements/typography/H4.js.map +1 -1
  99. package/cjs/elements/typography/H5.d.ts +1 -0
  100. package/cjs/elements/typography/H5.js +1 -1
  101. package/cjs/elements/typography/H5.js.map +1 -1
  102. package/cjs/elements/typography/H6.d.ts +1 -0
  103. package/cjs/elements/typography/H6.js +1 -1
  104. package/cjs/elements/typography/H6.js.map +1 -1
  105. package/cjs/extensions/forms/DataContext/Context.d.ts +18 -5
  106. package/cjs/extensions/forms/DataContext/Context.js +9 -0
  107. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  108. package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +57 -19
  109. package/cjs/extensions/forms/DataContext/Provider/Provider.js +127 -57
  110. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  111. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +3 -2
  112. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  113. package/cjs/extensions/forms/Field/Date/Date.js +4 -3
  114. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  115. package/cjs/extensions/forms/Field/Email/Email.js +3 -2
  116. package/cjs/extensions/forms/Field/Email/Email.js.map +1 -1
  117. package/cjs/extensions/forms/Field/Expiry/Expiry.js +4 -3
  118. package/cjs/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  119. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +3 -2
  120. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  121. package/cjs/extensions/forms/Field/Number/Number.d.ts +2 -4
  122. package/cjs/extensions/forms/Field/Number/Number.js +14 -15
  123. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  124. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +3 -2
  125. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  126. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +3 -2
  127. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  128. package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +9 -0
  129. package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
  130. package/cjs/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +7 -0
  131. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js +3 -2
  132. package/cjs/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  133. package/cjs/extensions/forms/Field/String/String.d.ts +2 -2
  134. package/cjs/extensions/forms/Field/String/String.js +5 -3
  135. package/cjs/extensions/forms/Field/String/String.js.map +1 -1
  136. package/cjs/extensions/forms/Field/Toggle/Toggle.js +5 -2
  137. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  138. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +2 -4
  139. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  140. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +19 -5
  141. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  142. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +25 -1
  143. package/cjs/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  144. package/cjs/extensions/forms/Form/Handler/Handler.js +7 -1
  145. package/cjs/extensions/forms/Form/Handler/Handler.js.map +1 -1
  146. package/cjs/extensions/forms/Form/Visibility/Visibility.d.ts +6 -1
  147. package/cjs/extensions/forms/Form/Visibility/Visibility.js +54 -39
  148. package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  149. package/cjs/extensions/forms/Form/data-context/getData.d.ts +8 -0
  150. package/cjs/extensions/forms/Form/data-context/getData.js +21 -0
  151. package/cjs/extensions/forms/Form/data-context/getData.js.map +1 -0
  152. package/cjs/extensions/forms/Form/data-context/setData.d.ts +2 -0
  153. package/cjs/extensions/forms/Form/data-context/setData.js +12 -0
  154. package/cjs/extensions/forms/Form/data-context/setData.js.map +1 -0
  155. package/cjs/extensions/forms/Form/data-context/useData.d.ts +22 -0
  156. package/cjs/extensions/forms/Form/data-context/useData.js +65 -0
  157. package/cjs/extensions/forms/Form/data-context/useData.js.map +1 -0
  158. package/cjs/extensions/forms/Form/data-context/useError.d.ts +5 -0
  159. package/cjs/extensions/forms/Form/data-context/useError.js +18 -0
  160. package/cjs/extensions/forms/Form/data-context/useError.js.map +1 -0
  161. package/cjs/extensions/forms/Form/index.d.ts +4 -1
  162. package/cjs/extensions/forms/Form/index.js +22 -1
  163. package/cjs/extensions/forms/Form/index.js.map +1 -1
  164. package/cjs/extensions/forms/Iterate/Array/Array.d.ts +2 -2
  165. package/cjs/extensions/forms/Iterate/Array/Array.js.map +1 -1
  166. package/cjs/extensions/forms/StepsLayout/StepsLayout.d.ts +3 -0
  167. package/cjs/extensions/forms/StepsLayout/StepsLayout.js +30 -21
  168. package/cjs/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  169. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.css +6 -0
  170. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  171. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +7 -0
  172. package/cjs/extensions/forms/Value/Currency/Currency.js +2 -3
  173. package/cjs/extensions/forms/Value/Currency/Currency.js.map +1 -1
  174. package/cjs/extensions/forms/Value/Number/Number.d.ts +6 -10
  175. package/cjs/extensions/forms/Value/Number/Number.js +25 -27
  176. package/cjs/extensions/forms/Value/Number/Number.js.map +1 -1
  177. package/cjs/extensions/forms/Value/PhoneNumber/PhoneNumber.js +6 -4
  178. package/cjs/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
  179. package/cjs/extensions/forms/hooks/index.d.ts +1 -0
  180. package/cjs/extensions/forms/hooks/index.js +7 -0
  181. package/cjs/extensions/forms/hooks/index.js.map +1 -1
  182. package/cjs/extensions/forms/hooks/useDataValue.d.ts +6 -1
  183. package/cjs/extensions/forms/hooks/useDataValue.js +76 -21
  184. package/cjs/extensions/forms/hooks/useDataValue.js.map +1 -1
  185. package/cjs/extensions/forms/hooks/useErrorMessage.d.ts +10 -0
  186. package/cjs/extensions/forms/hooks/useErrorMessage.js +23 -0
  187. package/cjs/extensions/forms/hooks/useErrorMessage.js.map +1 -0
  188. package/cjs/extensions/forms/index.d.ts +1 -0
  189. package/cjs/extensions/forms/index.js +9 -1
  190. package/cjs/extensions/forms/index.js.map +1 -1
  191. package/cjs/extensions/forms/style/dnb-forms.css +34 -5
  192. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  193. package/cjs/extensions/forms/types.d.ts +22 -7
  194. package/cjs/extensions/forms/types.js.map +1 -1
  195. package/cjs/extensions/forms/utils/ajv.d.ts +47 -6
  196. package/cjs/extensions/forms/utils/ajv.js +29 -13
  197. package/cjs/extensions/forms/utils/ajv.js.map +1 -1
  198. package/cjs/extensions/forms/utils/index.d.ts +0 -1
  199. package/cjs/extensions/forms/utils/index.js +0 -12
  200. package/cjs/extensions/forms/utils/index.js.map +1 -1
  201. package/cjs/shared/Eufemia.d.ts +1 -1
  202. package/cjs/shared/Eufemia.js +2 -2
  203. package/cjs/shared/Eufemia.js.map +1 -1
  204. package/cjs/shared/component-helper.js +0 -3
  205. package/cjs/shared/component-helper.js.map +1 -1
  206. package/cjs/shared/helpers/useSharedState.d.ts +28 -7
  207. package/cjs/shared/helpers/useSharedState.js +62 -43
  208. package/cjs/shared/helpers/useSharedState.js.map +1 -1
  209. package/cjs/shared/locales/en-GB.d.ts +1 -0
  210. package/cjs/shared/locales/en-GB.js +1 -0
  211. package/cjs/shared/locales/en-GB.js.map +1 -1
  212. package/cjs/shared/locales/en-US.d.ts +1 -0
  213. package/cjs/shared/locales/index.d.ts +2 -0
  214. package/cjs/shared/locales/nb-NO.d.ts +1 -0
  215. package/cjs/shared/locales/nb-NO.js +1 -0
  216. package/cjs/shared/locales/nb-NO.js.map +1 -1
  217. package/cjs/style/core/utilities.scss +1 -1
  218. package/cjs/style/dnb-ui-components.css +94 -52
  219. package/cjs/style/dnb-ui-components.min.css +3 -3
  220. package/cjs/style/dnb-ui-extensions.css +34 -5
  221. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  222. package/cjs/style/dnb-ui-forms.css +34 -5
  223. package/cjs/style/dnb-ui-forms.min.css +1 -1
  224. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +129 -79
  225. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  226. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +34 -5
  227. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  228. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +34 -5
  229. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  230. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +129 -76
  231. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
  232. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +34 -5
  233. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  234. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +34 -5
  235. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  236. package/cjs/style/themes/theme-ui/ui-theme-components.css +129 -79
  237. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  238. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +34 -5
  239. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  240. package/cjs/style/themes/theme-ui/ui-theme-forms.css +34 -5
  241. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  242. package/components/accordion/AccordionContent.d.ts +1 -1
  243. package/components/accordion/AccordionContent.js.map +1 -1
  244. package/components/accordion/style/dnb-accordion.css +0 -3
  245. package/components/accordion/style/dnb-accordion.min.css +1 -1
  246. package/components/accordion/style/dnb-accordion.scss +0 -5
  247. package/components/breadcrumb/Breadcrumb.js +11 -2
  248. package/components/breadcrumb/Breadcrumb.js.map +1 -1
  249. package/components/breadcrumb/BreadcrumbItem.js +11 -8
  250. package/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  251. package/components/card/Card.d.ts +6 -4
  252. package/components/card/Card.js +11 -15
  253. package/components/card/Card.js.map +1 -1
  254. package/components/card/style/dnb-card.css +29 -0
  255. package/components/card/style/dnb-card.min.css +1 -1
  256. package/components/card/style/dnb-card.scss +41 -0
  257. package/components/card/style/themes/dnb-card-theme-ui.css +1 -19
  258. package/components/card/style/themes/dnb-card-theme-ui.min.css +1 -1
  259. package/components/card/style/themes/dnb-card-theme-ui.scss +1 -27
  260. package/components/date-picker/DatePickerProvider.js +10 -10
  261. package/components/date-picker/DatePickerProvider.js.map +1 -1
  262. package/components/flex/Container.js +1 -1
  263. package/components/flex/Container.js.map +1 -1
  264. package/components/flex/Item.js +8 -11
  265. package/components/flex/Item.js.map +1 -1
  266. package/components/flex/style/dnb-flex.css +3 -0
  267. package/components/flex/style/dnb-flex.min.css +1 -1
  268. package/components/flex/style/flex-container.scss +3 -0
  269. package/components/flex/utils.d.ts +35 -7
  270. package/components/flex/utils.js +56 -24
  271. package/components/flex/utils.js.map +1 -1
  272. package/components/form-status/FormStatus.d.ts +5 -1
  273. package/components/form-status/FormStatus.js +38 -44
  274. package/components/form-status/FormStatus.js.map +1 -1
  275. package/components/form-status/style/dnb-form-status.css +0 -18
  276. package/components/form-status/style/dnb-form-status.min.css +1 -1
  277. package/components/form-status/style/dnb-form-status.scss +0 -45
  278. package/components/global-status/GlobalStatus.js +53 -139
  279. package/components/global-status/GlobalStatus.js.map +1 -1
  280. package/components/global-status/style/dnb-global-status.css +6 -16
  281. package/components/global-status/style/dnb-global-status.min.css +1 -1
  282. package/components/global-status/style/dnb-global-status.scss +11 -23
  283. package/components/global-status/style/themes/dnb-global-status-theme-ui.css +0 -3
  284. package/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
  285. package/components/global-status/style/themes/dnb-global-status-theme-ui.scss +0 -10
  286. package/components/height-animation/HeightAnimation.d.ts +12 -4
  287. package/components/height-animation/HeightAnimation.js +27 -14
  288. package/components/height-animation/HeightAnimation.js.map +1 -1
  289. package/components/height-animation/HeightAnimationInstance.d.ts +35 -18
  290. package/components/height-animation/HeightAnimationInstance.js +186 -158
  291. package/components/height-animation/HeightAnimationInstance.js.map +1 -1
  292. package/components/height-animation/style/dnb-height-animation.css +16 -2
  293. package/components/height-animation/style/dnb-height-animation.min.css +1 -1
  294. package/components/height-animation/style/dnb-height-animation.scss +18 -2
  295. package/components/height-animation/useHeightAnimation.d.ts +6 -1
  296. package/components/height-animation/useHeightAnimation.js +124 -92
  297. package/components/height-animation/useHeightAnimation.js.map +1 -1
  298. package/components/number-format/NumberFormat.d.ts +7 -12
  299. package/components/step-indicator/StepIndicatorItem.js +4 -22
  300. package/components/step-indicator/StepIndicatorItem.js.map +1 -1
  301. package/components/step-indicator/StepIndicatorTriggerButton.js +3 -17
  302. package/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  303. package/components/step-indicator/style/dnb-step-indicator.css +0 -5
  304. package/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
  305. package/components/step-indicator/style/dnb-step-indicator.scss +0 -7
  306. package/components/table/TableAccordionContent.js +48 -23
  307. package/components/table/TableAccordionContent.js.map +1 -1
  308. package/components/table/style/dnb-table.css +6 -3
  309. package/components/table/style/dnb-table.min.css +1 -1
  310. package/components/table/style/table-accordion.scss +6 -3
  311. package/components/tabs/Tabs.js +2 -1
  312. package/components/tabs/Tabs.js.map +1 -1
  313. package/components/tabs/TabsContentWrapper.d.ts +1 -0
  314. package/components/tabs/TabsContentWrapper.js +8 -6
  315. package/components/tabs/TabsContentWrapper.js.map +1 -1
  316. package/components/upload/Upload.js +13 -18
  317. package/components/upload/Upload.js.map +1 -1
  318. package/components/upload/UploadFileInput.js +3 -1
  319. package/components/upload/UploadFileInput.js.map +1 -1
  320. package/components/upload/UploadFileList.js +1 -1
  321. package/components/upload/UploadFileList.js.map +1 -1
  322. package/components/upload/UploadStatus.js +6 -2
  323. package/components/upload/UploadStatus.js.map +1 -1
  324. package/components/upload/useUpload.js +5 -7
  325. package/components/upload/useUpload.js.map +1 -1
  326. package/elements/lib.d.ts +6 -0
  327. package/elements/typography/H1.d.ts +1 -0
  328. package/elements/typography/H1.js +1 -1
  329. package/elements/typography/H1.js.map +1 -1
  330. package/elements/typography/H2.d.ts +1 -0
  331. package/elements/typography/H2.js +1 -1
  332. package/elements/typography/H2.js.map +1 -1
  333. package/elements/typography/H3.d.ts +1 -0
  334. package/elements/typography/H3.js +1 -1
  335. package/elements/typography/H3.js.map +1 -1
  336. package/elements/typography/H4.d.ts +1 -0
  337. package/elements/typography/H4.js +1 -1
  338. package/elements/typography/H4.js.map +1 -1
  339. package/elements/typography/H5.d.ts +1 -0
  340. package/elements/typography/H5.js +1 -1
  341. package/elements/typography/H5.js.map +1 -1
  342. package/elements/typography/H6.d.ts +1 -0
  343. package/elements/typography/H6.js +1 -1
  344. package/elements/typography/H6.js.map +1 -1
  345. package/es/components/accordion/AccordionContent.d.ts +1 -1
  346. package/es/components/accordion/AccordionContent.js.map +1 -1
  347. package/es/components/accordion/style/dnb-accordion.css +0 -3
  348. package/es/components/accordion/style/dnb-accordion.min.css +1 -1
  349. package/es/components/accordion/style/dnb-accordion.scss +0 -5
  350. package/es/components/breadcrumb/Breadcrumb.js +11 -2
  351. package/es/components/breadcrumb/Breadcrumb.js.map +1 -1
  352. package/es/components/breadcrumb/BreadcrumbItem.js +11 -8
  353. package/es/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  354. package/es/components/card/Card.d.ts +6 -4
  355. package/es/components/card/Card.js +11 -15
  356. package/es/components/card/Card.js.map +1 -1
  357. package/es/components/card/style/dnb-card.css +29 -0
  358. package/es/components/card/style/dnb-card.min.css +1 -1
  359. package/es/components/card/style/dnb-card.scss +41 -0
  360. package/es/components/card/style/themes/dnb-card-theme-ui.css +1 -19
  361. package/es/components/card/style/themes/dnb-card-theme-ui.min.css +1 -1
  362. package/es/components/card/style/themes/dnb-card-theme-ui.scss +1 -27
  363. package/es/components/date-picker/DatePickerProvider.js +10 -10
  364. package/es/components/date-picker/DatePickerProvider.js.map +1 -1
  365. package/es/components/flex/Container.js +1 -1
  366. package/es/components/flex/Container.js.map +1 -1
  367. package/es/components/flex/Item.js +8 -11
  368. package/es/components/flex/Item.js.map +1 -1
  369. package/es/components/flex/style/dnb-flex.css +3 -0
  370. package/es/components/flex/style/dnb-flex.min.css +1 -1
  371. package/es/components/flex/style/flex-container.scss +3 -0
  372. package/es/components/flex/utils.d.ts +35 -7
  373. package/es/components/flex/utils.js +55 -24
  374. package/es/components/flex/utils.js.map +1 -1
  375. package/es/components/form-status/FormStatus.d.ts +5 -1
  376. package/es/components/form-status/FormStatus.js +38 -44
  377. package/es/components/form-status/FormStatus.js.map +1 -1
  378. package/es/components/form-status/style/dnb-form-status.css +0 -18
  379. package/es/components/form-status/style/dnb-form-status.min.css +1 -1
  380. package/es/components/form-status/style/dnb-form-status.scss +0 -45
  381. package/es/components/global-status/GlobalStatus.js +51 -133
  382. package/es/components/global-status/GlobalStatus.js.map +1 -1
  383. package/es/components/global-status/style/dnb-global-status.css +6 -16
  384. package/es/components/global-status/style/dnb-global-status.min.css +1 -1
  385. package/es/components/global-status/style/dnb-global-status.scss +11 -23
  386. package/es/components/global-status/style/themes/dnb-global-status-theme-ui.css +0 -3
  387. package/es/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
  388. package/es/components/global-status/style/themes/dnb-global-status-theme-ui.scss +0 -10
  389. package/es/components/height-animation/HeightAnimation.d.ts +12 -4
  390. package/es/components/height-animation/HeightAnimation.js +27 -14
  391. package/es/components/height-animation/HeightAnimation.js.map +1 -1
  392. package/es/components/height-animation/HeightAnimationInstance.d.ts +35 -18
  393. package/es/components/height-animation/HeightAnimationInstance.js +188 -155
  394. package/es/components/height-animation/HeightAnimationInstance.js.map +1 -1
  395. package/es/components/height-animation/style/dnb-height-animation.css +16 -2
  396. package/es/components/height-animation/style/dnb-height-animation.min.css +1 -1
  397. package/es/components/height-animation/style/dnb-height-animation.scss +18 -2
  398. package/es/components/height-animation/useHeightAnimation.d.ts +6 -1
  399. package/es/components/height-animation/useHeightAnimation.js +124 -92
  400. package/es/components/height-animation/useHeightAnimation.js.map +1 -1
  401. package/es/components/number-format/NumberFormat.d.ts +7 -12
  402. package/es/components/step-indicator/StepIndicatorItem.js +4 -22
  403. package/es/components/step-indicator/StepIndicatorItem.js.map +1 -1
  404. package/es/components/step-indicator/StepIndicatorTriggerButton.js +3 -17
  405. package/es/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  406. package/es/components/step-indicator/style/dnb-step-indicator.css +0 -5
  407. package/es/components/step-indicator/style/dnb-step-indicator.min.css +1 -1
  408. package/es/components/step-indicator/style/dnb-step-indicator.scss +0 -7
  409. package/es/components/table/TableAccordionContent.js +47 -23
  410. package/es/components/table/TableAccordionContent.js.map +1 -1
  411. package/es/components/table/style/dnb-table.css +6 -3
  412. package/es/components/table/style/dnb-table.min.css +1 -1
  413. package/es/components/table/style/table-accordion.scss +6 -3
  414. package/es/components/tabs/Tabs.js +2 -1
  415. package/es/components/tabs/Tabs.js.map +1 -1
  416. package/es/components/tabs/TabsContentWrapper.d.ts +1 -0
  417. package/es/components/tabs/TabsContentWrapper.js +8 -6
  418. package/es/components/tabs/TabsContentWrapper.js.map +1 -1
  419. package/es/components/upload/Upload.js +13 -18
  420. package/es/components/upload/Upload.js.map +1 -1
  421. package/es/components/upload/UploadFileInput.js +3 -1
  422. package/es/components/upload/UploadFileInput.js.map +1 -1
  423. package/es/components/upload/UploadFileList.js +1 -1
  424. package/es/components/upload/UploadFileList.js.map +1 -1
  425. package/es/components/upload/UploadStatus.js +6 -2
  426. package/es/components/upload/UploadStatus.js.map +1 -1
  427. package/es/components/upload/useUpload.js +5 -7
  428. package/es/components/upload/useUpload.js.map +1 -1
  429. package/es/elements/lib.d.ts +6 -0
  430. package/es/elements/typography/H1.d.ts +1 -0
  431. package/es/elements/typography/H1.js +1 -1
  432. package/es/elements/typography/H1.js.map +1 -1
  433. package/es/elements/typography/H2.d.ts +1 -0
  434. package/es/elements/typography/H2.js +1 -1
  435. package/es/elements/typography/H2.js.map +1 -1
  436. package/es/elements/typography/H3.d.ts +1 -0
  437. package/es/elements/typography/H3.js +1 -1
  438. package/es/elements/typography/H3.js.map +1 -1
  439. package/es/elements/typography/H4.d.ts +1 -0
  440. package/es/elements/typography/H4.js +1 -1
  441. package/es/elements/typography/H4.js.map +1 -1
  442. package/es/elements/typography/H5.d.ts +1 -0
  443. package/es/elements/typography/H5.js +1 -1
  444. package/es/elements/typography/H5.js.map +1 -1
  445. package/es/elements/typography/H6.d.ts +1 -0
  446. package/es/elements/typography/H6.js +1 -1
  447. package/es/elements/typography/H6.js.map +1 -1
  448. package/es/extensions/forms/DataContext/Context.d.ts +18 -5
  449. package/es/extensions/forms/DataContext/Context.js +9 -0
  450. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  451. package/es/extensions/forms/DataContext/Provider/Provider.d.ts +57 -19
  452. package/es/extensions/forms/DataContext/Provider/Provider.js +126 -58
  453. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  454. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +3 -2
  455. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  456. package/es/extensions/forms/Field/Date/Date.js +4 -3
  457. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  458. package/es/extensions/forms/Field/Email/Email.js +4 -3
  459. package/es/extensions/forms/Field/Email/Email.js.map +1 -1
  460. package/es/extensions/forms/Field/Expiry/Expiry.js +5 -4
  461. package/es/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  462. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +3 -2
  463. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  464. package/es/extensions/forms/Field/Number/Number.d.ts +2 -4
  465. package/es/extensions/forms/Field/Number/Number.js +14 -15
  466. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  467. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +3 -2
  468. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  469. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +3 -2
  470. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  471. package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +9 -0
  472. package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
  473. package/es/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +7 -0
  474. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js +3 -2
  475. package/es/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  476. package/es/extensions/forms/Field/String/String.d.ts +2 -2
  477. package/es/extensions/forms/Field/String/String.js +5 -3
  478. package/es/extensions/forms/Field/String/String.js.map +1 -1
  479. package/es/extensions/forms/Field/Toggle/Toggle.js +5 -2
  480. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  481. package/es/extensions/forms/FieldBlock/FieldBlock.js +2 -4
  482. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  483. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +19 -5
  484. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  485. package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +25 -1
  486. package/es/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  487. package/es/extensions/forms/Form/Handler/Handler.js +7 -1
  488. package/es/extensions/forms/Form/Handler/Handler.js.map +1 -1
  489. package/es/extensions/forms/Form/Visibility/Visibility.d.ts +6 -1
  490. package/es/extensions/forms/Form/Visibility/Visibility.js +55 -40
  491. package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  492. package/es/extensions/forms/Form/data-context/getData.d.ts +8 -0
  493. package/es/extensions/forms/Form/data-context/getData.js +15 -0
  494. package/es/extensions/forms/Form/data-context/getData.js.map +1 -0
  495. package/es/extensions/forms/Form/data-context/setData.d.ts +2 -0
  496. package/es/extensions/forms/Form/data-context/setData.js +6 -0
  497. package/es/extensions/forms/Form/data-context/setData.js.map +1 -0
  498. package/es/extensions/forms/Form/data-context/useData.d.ts +22 -0
  499. package/es/extensions/forms/Form/data-context/useData.js +58 -0
  500. package/es/extensions/forms/Form/data-context/useData.js.map +1 -0
  501. package/es/extensions/forms/Form/data-context/useError.d.ts +5 -0
  502. package/es/extensions/forms/Form/data-context/useError.js +13 -0
  503. package/es/extensions/forms/Form/data-context/useError.js.map +1 -0
  504. package/es/extensions/forms/Form/index.d.ts +4 -1
  505. package/es/extensions/forms/Form/index.js +4 -1
  506. package/es/extensions/forms/Form/index.js.map +1 -1
  507. package/es/extensions/forms/Iterate/Array/Array.d.ts +2 -2
  508. package/es/extensions/forms/Iterate/Array/Array.js.map +1 -1
  509. package/es/extensions/forms/StepsLayout/StepsLayout.d.ts +3 -0
  510. package/es/extensions/forms/StepsLayout/StepsLayout.js +31 -22
  511. package/es/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  512. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.css +6 -0
  513. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  514. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +7 -0
  515. package/es/extensions/forms/Value/Currency/Currency.js +2 -3
  516. package/es/extensions/forms/Value/Currency/Currency.js.map +1 -1
  517. package/es/extensions/forms/Value/Number/Number.d.ts +6 -10
  518. package/es/extensions/forms/Value/Number/Number.js +22 -27
  519. package/es/extensions/forms/Value/Number/Number.js.map +1 -1
  520. package/es/extensions/forms/Value/PhoneNumber/PhoneNumber.js +6 -4
  521. package/es/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
  522. package/es/extensions/forms/hooks/index.d.ts +1 -0
  523. package/es/extensions/forms/hooks/index.js +1 -0
  524. package/es/extensions/forms/hooks/index.js.map +1 -1
  525. package/es/extensions/forms/hooks/useDataValue.d.ts +6 -1
  526. package/es/extensions/forms/hooks/useDataValue.js +72 -19
  527. package/es/extensions/forms/hooks/useDataValue.js.map +1 -1
  528. package/es/extensions/forms/hooks/useErrorMessage.d.ts +10 -0
  529. package/es/extensions/forms/hooks/useErrorMessage.js +15 -0
  530. package/es/extensions/forms/hooks/useErrorMessage.js.map +1 -0
  531. package/es/extensions/forms/index.d.ts +1 -0
  532. package/es/extensions/forms/index.js +1 -0
  533. package/es/extensions/forms/index.js.map +1 -1
  534. package/es/extensions/forms/style/dnb-forms.css +34 -5
  535. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  536. package/es/extensions/forms/types.d.ts +22 -7
  537. package/es/extensions/forms/types.js.map +1 -1
  538. package/es/extensions/forms/utils/ajv.d.ts +47 -6
  539. package/es/extensions/forms/utils/ajv.js +23 -15
  540. package/es/extensions/forms/utils/ajv.js.map +1 -1
  541. package/es/extensions/forms/utils/index.d.ts +0 -1
  542. package/es/extensions/forms/utils/index.js +0 -1
  543. package/es/extensions/forms/utils/index.js.map +1 -1
  544. package/es/shared/Eufemia.d.ts +1 -1
  545. package/es/shared/Eufemia.js +2 -2
  546. package/es/shared/Eufemia.js.map +1 -1
  547. package/es/shared/component-helper.js +0 -3
  548. package/es/shared/component-helper.js.map +1 -1
  549. package/es/shared/helpers/useSharedState.d.ts +28 -7
  550. package/es/shared/helpers/useSharedState.js +62 -43
  551. package/es/shared/helpers/useSharedState.js.map +1 -1
  552. package/es/shared/locales/en-GB.d.ts +1 -0
  553. package/es/shared/locales/en-GB.js +1 -0
  554. package/es/shared/locales/en-GB.js.map +1 -1
  555. package/es/shared/locales/en-US.d.ts +1 -0
  556. package/es/shared/locales/index.d.ts +2 -0
  557. package/es/shared/locales/nb-NO.d.ts +1 -0
  558. package/es/shared/locales/nb-NO.js +1 -0
  559. package/es/shared/locales/nb-NO.js.map +1 -1
  560. package/es/style/core/utilities.scss +1 -1
  561. package/es/style/dnb-ui-components.css +94 -52
  562. package/es/style/dnb-ui-components.min.css +3 -3
  563. package/es/style/dnb-ui-extensions.css +34 -5
  564. package/es/style/dnb-ui-extensions.min.css +1 -1
  565. package/es/style/dnb-ui-forms.css +34 -5
  566. package/es/style/dnb-ui-forms.min.css +1 -1
  567. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +129 -79
  568. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  569. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +34 -5
  570. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  571. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +34 -5
  572. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  573. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +129 -76
  574. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
  575. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +34 -5
  576. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  577. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +34 -5
  578. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  579. package/es/style/themes/theme-ui/ui-theme-components.css +129 -79
  580. package/es/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  581. package/es/style/themes/theme-ui/ui-theme-extensions.css +34 -5
  582. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  583. package/es/style/themes/theme-ui/ui-theme-forms.css +34 -5
  584. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  585. package/esm/dnb-ui-basis.min.mjs +1 -1
  586. package/esm/dnb-ui-components.min.mjs +1 -1
  587. package/esm/dnb-ui-elements.min.mjs +1 -1
  588. package/esm/dnb-ui-extensions.min.mjs +3 -3
  589. package/esm/dnb-ui-lib.min.mjs +1 -1
  590. package/extensions/forms/DataContext/Context.d.ts +18 -5
  591. package/extensions/forms/DataContext/Context.js +9 -0
  592. package/extensions/forms/DataContext/Context.js.map +1 -1
  593. package/extensions/forms/DataContext/Provider/Provider.d.ts +57 -19
  594. package/extensions/forms/DataContext/Provider/Provider.js +128 -58
  595. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  596. package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js +3 -2
  597. package/extensions/forms/Field/BankAccountNumber/BankAccountNumber.js.map +1 -1
  598. package/extensions/forms/Field/Date/Date.js +4 -3
  599. package/extensions/forms/Field/Date/Date.js.map +1 -1
  600. package/extensions/forms/Field/Email/Email.js +4 -3
  601. package/extensions/forms/Field/Email/Email.js.map +1 -1
  602. package/extensions/forms/Field/Expiry/Expiry.js +5 -4
  603. package/extensions/forms/Field/Expiry/Expiry.js.map +1 -1
  604. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js +3 -2
  605. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumber.js.map +1 -1
  606. package/extensions/forms/Field/Number/Number.d.ts +2 -4
  607. package/extensions/forms/Field/Number/Number.js +14 -15
  608. package/extensions/forms/Field/Number/Number.js.map +1 -1
  609. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js +3 -2
  610. package/extensions/forms/Field/OrganizationNumber/OrganizationNumber.js.map +1 -1
  611. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +3 -2
  612. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  613. package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.css +9 -0
  614. package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.min.css +1 -1
  615. package/extensions/forms/Field/PostalCodeAndCity/style/dnb-postal-code-and-city.scss +7 -0
  616. package/extensions/forms/Field/SelectCountry/SelectCountry.js +3 -2
  617. package/extensions/forms/Field/SelectCountry/SelectCountry.js.map +1 -1
  618. package/extensions/forms/Field/String/String.d.ts +2 -2
  619. package/extensions/forms/Field/String/String.js +5 -3
  620. package/extensions/forms/Field/String/String.js.map +1 -1
  621. package/extensions/forms/Field/Toggle/Toggle.js +5 -2
  622. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  623. package/extensions/forms/FieldBlock/FieldBlock.js +2 -4
  624. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  625. package/extensions/forms/FieldBlock/style/dnb-field-block.css +19 -5
  626. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  627. package/extensions/forms/FieldBlock/style/dnb-field-block.scss +25 -1
  628. package/extensions/forms/Form/Handler/Handler.d.ts +1 -1
  629. package/extensions/forms/Form/Handler/Handler.js +7 -1
  630. package/extensions/forms/Form/Handler/Handler.js.map +1 -1
  631. package/extensions/forms/Form/Visibility/Visibility.d.ts +6 -1
  632. package/extensions/forms/Form/Visibility/Visibility.js +53 -39
  633. package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  634. package/extensions/forms/Form/data-context/getData.d.ts +8 -0
  635. package/extensions/forms/Form/data-context/getData.js +15 -0
  636. package/extensions/forms/Form/data-context/getData.js.map +1 -0
  637. package/extensions/forms/Form/data-context/setData.d.ts +2 -0
  638. package/extensions/forms/Form/data-context/setData.js +6 -0
  639. package/extensions/forms/Form/data-context/setData.js.map +1 -0
  640. package/extensions/forms/Form/data-context/useData.d.ts +22 -0
  641. package/extensions/forms/Form/data-context/useData.js +59 -0
  642. package/extensions/forms/Form/data-context/useData.js.map +1 -0
  643. package/extensions/forms/Form/data-context/useError.d.ts +5 -0
  644. package/extensions/forms/Form/data-context/useError.js +13 -0
  645. package/extensions/forms/Form/data-context/useError.js.map +1 -0
  646. package/extensions/forms/Form/index.d.ts +4 -1
  647. package/extensions/forms/Form/index.js +4 -1
  648. package/extensions/forms/Form/index.js.map +1 -1
  649. package/extensions/forms/Iterate/Array/Array.d.ts +2 -2
  650. package/extensions/forms/Iterate/Array/Array.js.map +1 -1
  651. package/extensions/forms/StepsLayout/StepsLayout.d.ts +3 -0
  652. package/extensions/forms/StepsLayout/StepsLayout.js +31 -22
  653. package/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  654. package/extensions/forms/StepsLayout/style/dnb-steps-layout.css +6 -0
  655. package/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  656. package/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +7 -0
  657. package/extensions/forms/Value/Currency/Currency.js +2 -3
  658. package/extensions/forms/Value/Currency/Currency.js.map +1 -1
  659. package/extensions/forms/Value/Number/Number.d.ts +6 -10
  660. package/extensions/forms/Value/Number/Number.js +22 -27
  661. package/extensions/forms/Value/Number/Number.js.map +1 -1
  662. package/extensions/forms/Value/PhoneNumber/PhoneNumber.js +6 -4
  663. package/extensions/forms/Value/PhoneNumber/PhoneNumber.js.map +1 -1
  664. package/extensions/forms/hooks/index.d.ts +1 -0
  665. package/extensions/forms/hooks/index.js +1 -0
  666. package/extensions/forms/hooks/index.js.map +1 -1
  667. package/extensions/forms/hooks/useDataValue.d.ts +6 -1
  668. package/extensions/forms/hooks/useDataValue.js +74 -19
  669. package/extensions/forms/hooks/useDataValue.js.map +1 -1
  670. package/extensions/forms/hooks/useErrorMessage.d.ts +10 -0
  671. package/extensions/forms/hooks/useErrorMessage.js +15 -0
  672. package/extensions/forms/hooks/useErrorMessage.js.map +1 -0
  673. package/extensions/forms/index.d.ts +1 -0
  674. package/extensions/forms/index.js +1 -0
  675. package/extensions/forms/index.js.map +1 -1
  676. package/extensions/forms/style/dnb-forms.css +34 -5
  677. package/extensions/forms/style/dnb-forms.min.css +1 -1
  678. package/extensions/forms/types.d.ts +22 -7
  679. package/extensions/forms/types.js.map +1 -1
  680. package/extensions/forms/utils/ajv.d.ts +47 -6
  681. package/extensions/forms/utils/ajv.js +23 -15
  682. package/extensions/forms/utils/ajv.js.map +1 -1
  683. package/extensions/forms/utils/index.d.ts +0 -1
  684. package/extensions/forms/utils/index.js +0 -1
  685. package/extensions/forms/utils/index.js.map +1 -1
  686. package/package.json +1 -1
  687. package/shared/Eufemia.d.ts +1 -1
  688. package/shared/Eufemia.js +2 -2
  689. package/shared/Eufemia.js.map +1 -1
  690. package/shared/component-helper.js +0 -3
  691. package/shared/component-helper.js.map +1 -1
  692. package/shared/helpers/useSharedState.d.ts +28 -7
  693. package/shared/helpers/useSharedState.js +62 -43
  694. package/shared/helpers/useSharedState.js.map +1 -1
  695. package/shared/locales/en-GB.d.ts +1 -0
  696. package/shared/locales/en-GB.js +1 -0
  697. package/shared/locales/en-GB.js.map +1 -1
  698. package/shared/locales/en-US.d.ts +1 -0
  699. package/shared/locales/index.d.ts +2 -0
  700. package/shared/locales/nb-NO.d.ts +1 -0
  701. package/shared/locales/nb-NO.js +1 -0
  702. package/shared/locales/nb-NO.js.map +1 -1
  703. package/style/core/utilities.scss +1 -1
  704. package/style/dnb-ui-components.css +94 -52
  705. package/style/dnb-ui-components.min.css +3 -3
  706. package/style/dnb-ui-extensions.css +34 -5
  707. package/style/dnb-ui-extensions.min.css +1 -1
  708. package/style/dnb-ui-forms.css +34 -5
  709. package/style/dnb-ui-forms.min.css +1 -1
  710. package/style/themes/theme-eiendom/eiendom-theme-components.css +129 -79
  711. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  712. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +34 -5
  713. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  714. package/style/themes/theme-eiendom/eiendom-theme-forms.css +34 -5
  715. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  716. package/style/themes/theme-sbanken/sbanken-theme-components.css +129 -76
  717. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
  718. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +34 -5
  719. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  720. package/style/themes/theme-sbanken/sbanken-theme-forms.css +34 -5
  721. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  722. package/style/themes/theme-ui/ui-theme-components.css +129 -79
  723. package/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  724. package/style/themes/theme-ui/ui-theme-extensions.css +34 -5
  725. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  726. package/style/themes/theme-ui/ui-theme-forms.css +34 -5
  727. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  728. package/umd/dnb-ui-basis.min.js +1 -1
  729. package/umd/dnb-ui-components.min.js +1 -1
  730. package/umd/dnb-ui-elements.min.js +1 -1
  731. package/umd/dnb-ui-extensions.min.js +3 -3
  732. package/umd/dnb-ui-lib.min.js +1 -1
  733. package/cjs/components/global-status/AnimationHelper.d.ts +0 -12
  734. package/cjs/components/global-status/AnimationHelper.js +0 -109
  735. package/cjs/components/global-status/AnimationHelper.js.map +0 -1
  736. package/cjs/extensions/forms/Form/hooks/useData.d.ts +0 -10
  737. package/cjs/extensions/forms/Form/hooks/useData.js +0 -39
  738. package/cjs/extensions/forms/Form/hooks/useData.js.map +0 -1
  739. package/cjs/extensions/forms/utils/numbers.d.ts +0 -17
  740. package/cjs/extensions/forms/utils/numbers.js +0 -42
  741. package/cjs/extensions/forms/utils/numbers.js.map +0 -1
  742. package/components/global-status/AnimationHelper.d.ts +0 -12
  743. package/components/global-status/AnimationHelper.js +0 -100
  744. package/components/global-status/AnimationHelper.js.map +0 -1
  745. package/es/components/global-status/AnimationHelper.d.ts +0 -12
  746. package/es/components/global-status/AnimationHelper.js +0 -100
  747. package/es/components/global-status/AnimationHelper.js.map +0 -1
  748. package/es/extensions/forms/Form/hooks/useData.d.ts +0 -10
  749. package/es/extensions/forms/Form/hooks/useData.js +0 -32
  750. package/es/extensions/forms/Form/hooks/useData.js.map +0 -1
  751. package/es/extensions/forms/utils/numbers.d.ts +0 -17
  752. package/es/extensions/forms/utils/numbers.js +0 -35
  753. package/es/extensions/forms/utils/numbers.js.map +0 -1
  754. package/extensions/forms/Form/hooks/useData.d.ts +0 -10
  755. package/extensions/forms/Form/hooks/useData.js +0 -33
  756. package/extensions/forms/Form/hooks/useData.js.map +0 -1
  757. package/extensions/forms/utils/numbers.d.ts +0 -17
  758. package/extensions/forms/utils/numbers.js +0 -35
  759. package/extensions/forms/utils/numbers.js.map +0 -1
@@ -17,7 +17,7 @@ function UploadFileList() {
17
17
  setFiles,
18
18
  setInternalFiles
19
19
  } = useUpload(id);
20
- if (files == null || files.length < 1) {
20
+ if (files === null || files.length < 1) {
21
21
  return null;
22
22
  }
23
23
  return React.createElement("ul", {
@@ -1 +1 @@
1
- {"version":3,"file":"UploadFileList.js","names":["React","UploadContext","UploadFileListCell","useUpload","UploadFileList","context","useContext","id","fileListAriaLabel","deleteButton","loadingText","onFileDelete","onChange","files","setFiles","setInternalFiles","length","createElement","className","map","uploadFile","index","onDeleteHandler","fileItem","cleanedFiles","filter","fileListElement","file","key","onDelete","deleteButtonText"],"sources":["../../../../src/components/upload/UploadFileList.tsx"],"sourcesContent":["import React from 'react'\nimport { UploadFile } from './types'\nimport { UploadContext } from './UploadContext'\nimport UploadFileListCell from './UploadFileListCell'\nimport useUpload from './useUpload'\n\nfunction UploadFileList() {\n const context = React.useContext(UploadContext)\n\n const {\n id,\n fileListAriaLabel,\n deleteButton,\n loadingText,\n onFileDelete,\n onChange,\n } = context\n\n const { files, setFiles, setInternalFiles } = useUpload(id)\n\n if (files == null || files.length < 1) {\n return null\n }\n\n return (\n <ul className=\"dnb-upload__file-list\" aria-label={fileListAriaLabel}>\n {files.map((uploadFile: UploadFile, index: number) => {\n const onDeleteHandler = () => {\n if (typeof onFileDelete === 'function') {\n onFileDelete({ fileItem: uploadFile })\n }\n\n const cleanedFiles = files.filter(\n (fileListElement) => fileListElement.file != uploadFile.file\n )\n\n setFiles(cleanedFiles)\n setInternalFiles(cleanedFiles)\n\n if (typeof onChange === 'function') {\n onChange({ files: cleanedFiles })\n }\n }\n\n return (\n <UploadFileListCell\n key={index}\n id={id}\n uploadFile={uploadFile}\n onDelete={onDeleteHandler}\n deleteButtonText={deleteButton}\n loadingText={loadingText}\n />\n )\n })}\n </ul>\n )\n}\n\nexport default UploadFileList\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,OAAOC,kBAAkB,MAAM,sBAAsB;AACrD,OAAOC,SAAS,MAAM,aAAa;AAEnC,SAASC,cAAcA,CAAA,EAAG;EACxB,MAAMC,OAAO,GAAGL,KAAK,CAACM,UAAU,CAACL,aAAa,CAAC;EAE/C,MAAM;IACJM,EAAE;IACFC,iBAAiB;IACjBC,YAAY;IACZC,WAAW;IACXC,YAAY;IACZC;EACF,CAAC,GAAGP,OAAO;EAEX,MAAM;IAAEQ,KAAK;IAAEC,QAAQ;IAAEC;EAAiB,CAAC,GAAGZ,SAAS,CAACI,EAAE,CAAC;EAE3D,IAAIM,KAAK,IAAI,IAAI,IAAIA,KAAK,CAACG,MAAM,GAAG,CAAC,EAAE;IACrC,OAAO,IAAI;EACb;EAEA,OACEhB,KAAA,CAAAiB,aAAA;IAAIC,SAAS,EAAC,uBAAuB;IAAC,cAAYV;EAAkB,GACjEK,KAAK,CAACM,GAAG,CAAC,CAACC,UAAsB,EAAEC,KAAa,KAAK;IACpD,MAAMC,eAAe,GAAGA,CAAA,KAAM;MAC5B,IAAI,OAAOX,YAAY,KAAK,UAAU,EAAE;QACtCA,YAAY,CAAC;UAAEY,QAAQ,EAAEH;QAAW,CAAC,CAAC;MACxC;MAEA,MAAMI,YAAY,GAAGX,KAAK,CAACY,MAAM,CAC9BC,eAAe,IAAKA,eAAe,CAACC,IAAI,IAAIP,UAAU,CAACO,IAC1D,CAAC;MAEDb,QAAQ,CAACU,YAAY,CAAC;MACtBT,gBAAgB,CAACS,YAAY,CAAC;MAE9B,IAAI,OAAOZ,QAAQ,KAAK,UAAU,EAAE;QAClCA,QAAQ,CAAC;UAAEC,KAAK,EAAEW;QAAa,CAAC,CAAC;MACnC;IACF,CAAC;IAED,OACExB,KAAA,CAAAiB,aAAA,CAACf,kBAAkB;MACjB0B,GAAG,EAAEP,KAAM;MACXd,EAAE,EAAEA,EAAG;MACPa,UAAU,EAAEA,UAAW;MACvBS,QAAQ,EAAEP,eAAgB;MAC1BQ,gBAAgB,EAAErB,YAAa;MAC/BC,WAAW,EAAEA;IAAY,CAC1B,CAAC;EAEN,CAAC,CACC,CAAC;AAET;AAEA,eAAeN,cAAc"}
1
+ {"version":3,"file":"UploadFileList.js","names":["React","UploadContext","UploadFileListCell","useUpload","UploadFileList","context","useContext","id","fileListAriaLabel","deleteButton","loadingText","onFileDelete","onChange","files","setFiles","setInternalFiles","length","createElement","className","map","uploadFile","index","onDeleteHandler","fileItem","cleanedFiles","filter","fileListElement","file","key","onDelete","deleteButtonText"],"sources":["../../../../src/components/upload/UploadFileList.tsx"],"sourcesContent":["import React from 'react'\nimport { UploadFile } from './types'\nimport { UploadContext } from './UploadContext'\nimport UploadFileListCell from './UploadFileListCell'\nimport useUpload from './useUpload'\n\nfunction UploadFileList() {\n const context = React.useContext(UploadContext)\n\n const {\n id,\n fileListAriaLabel,\n deleteButton,\n loadingText,\n onFileDelete,\n onChange,\n } = context\n\n const { files, setFiles, setInternalFiles } = useUpload(id)\n\n if (files === null || files.length < 1) {\n return null\n }\n\n return (\n <ul className=\"dnb-upload__file-list\" aria-label={fileListAriaLabel}>\n {files.map((uploadFile: UploadFile, index: number) => {\n const onDeleteHandler = () => {\n if (typeof onFileDelete === 'function') {\n onFileDelete({ fileItem: uploadFile })\n }\n\n const cleanedFiles = files.filter(\n (fileListElement) => fileListElement.file != uploadFile.file\n )\n\n setFiles(cleanedFiles)\n setInternalFiles(cleanedFiles)\n\n if (typeof onChange === 'function') {\n onChange({ files: cleanedFiles })\n }\n }\n\n return (\n <UploadFileListCell\n key={index}\n id={id}\n uploadFile={uploadFile}\n onDelete={onDeleteHandler}\n deleteButtonText={deleteButton}\n loadingText={loadingText}\n />\n )\n })}\n </ul>\n )\n}\n\nexport default UploadFileList\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,OAAOC,kBAAkB,MAAM,sBAAsB;AACrD,OAAOC,SAAS,MAAM,aAAa;AAEnC,SAASC,cAAcA,CAAA,EAAG;EACxB,MAAMC,OAAO,GAAGL,KAAK,CAACM,UAAU,CAACL,aAAa,CAAC;EAE/C,MAAM;IACJM,EAAE;IACFC,iBAAiB;IACjBC,YAAY;IACZC,WAAW;IACXC,YAAY;IACZC;EACF,CAAC,GAAGP,OAAO;EAEX,MAAM;IAAEQ,KAAK;IAAEC,QAAQ;IAAEC;EAAiB,CAAC,GAAGZ,SAAS,CAACI,EAAE,CAAC;EAE3D,IAAIM,KAAK,KAAK,IAAI,IAAIA,KAAK,CAACG,MAAM,GAAG,CAAC,EAAE;IACtC,OAAO,IAAI;EACb;EAEA,OACEhB,KAAA,CAAAiB,aAAA;IAAIC,SAAS,EAAC,uBAAuB;IAAC,cAAYV;EAAkB,GACjEK,KAAK,CAACM,GAAG,CAAC,CAACC,UAAsB,EAAEC,KAAa,KAAK;IACpD,MAAMC,eAAe,GAAGA,CAAA,KAAM;MAC5B,IAAI,OAAOX,YAAY,KAAK,UAAU,EAAE;QACtCA,YAAY,CAAC;UAAEY,QAAQ,EAAEH;QAAW,CAAC,CAAC;MACxC;MAEA,MAAMI,YAAY,GAAGX,KAAK,CAACY,MAAM,CAC9BC,eAAe,IAAKA,eAAe,CAACC,IAAI,IAAIP,UAAU,CAACO,IAC1D,CAAC;MAEDb,QAAQ,CAACU,YAAY,CAAC;MACtBT,gBAAgB,CAACS,YAAY,CAAC;MAE9B,IAAI,OAAOZ,QAAQ,KAAK,UAAU,EAAE;QAClCA,QAAQ,CAAC;UAAEC,KAAK,EAAEW;QAAa,CAAC,CAAC;MACnC;IACF,CAAC;IAED,OACExB,KAAA,CAAAiB,aAAA,CAACf,kBAAkB;MACjB0B,GAAG,EAAEP,KAAM;MACXd,EAAE,EAAEA,EAAG;MACPa,UAAU,EAAEA,UAAW;MACvBS,QAAQ,EAAEP,eAAgB;MAC1BQ,gBAAgB,EAAErB,YAAa;MAC/BC,WAAW,EAAEA;IAAY,CAC1B,CAAC;EAEN,CAAC,CACC,CAAC;AAET;AAEA,eAAeN,cAAc"}
@@ -13,10 +13,14 @@ const UploadStatus = () => {
13
13
  const {
14
14
  internalFiles
15
15
  } = useUpload(id);
16
+ const open = internalFiles.length > filesAmountLimit;
16
17
  return React.createElement(HeightAnimation, {
17
- open: internalFiles.length > filesAmountLimit
18
+ open: open,
19
+ delay: 500
18
20
  }, React.createElement(FormStatus, {
19
- top: true,
21
+ shellSpace: {
22
+ top: 'small'
23
+ },
20
24
  stretch: true
21
25
  }, String(errorAmountLimit).replace('%amount', String(filesAmountLimit))));
22
26
  };
@@ -1 +1 @@
1
- {"version":3,"file":"UploadStatus.js","names":["React","UploadContext","FormStatus","useUpload","HeightAnimation","UploadStatus","context","useContext","id","filesAmountLimit","errorAmountLimit","internalFiles","createElement","open","length","top","stretch","String","replace"],"sources":["../../../../src/components/upload/UploadStatus.tsx"],"sourcesContent":["import React from 'react'\nimport { UploadContext } from './UploadContext'\nimport FormStatus from '../FormStatus'\nimport useUpload from './useUpload'\nimport HeightAnimation from '../height-animation/HeightAnimation'\n\nconst UploadStatus = () => {\n const context = React.useContext(UploadContext)\n\n const { id, filesAmountLimit, errorAmountLimit } = context\n\n const { internalFiles } = useUpload(id)\n\n return (\n <HeightAnimation open={internalFiles.length > filesAmountLimit}>\n <FormStatus top stretch>\n {String(errorAmountLimit).replace(\n '%amount',\n String(filesAmountLimit)\n )}\n </FormStatus>\n </HeightAnimation>\n )\n}\n\nexport default UploadStatus\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,OAAOC,UAAU,MAAM,eAAe;AACtC,OAAOC,SAAS,MAAM,aAAa;AACnC,OAAOC,eAAe,MAAM,qCAAqC;AAEjE,MAAMC,YAAY,GAAGA,CAAA,KAAM;EACzB,MAAMC,OAAO,GAAGN,KAAK,CAACO,UAAU,CAACN,aAAa,CAAC;EAE/C,MAAM;IAAEO,EAAE;IAAEC,gBAAgB;IAAEC;EAAiB,CAAC,GAAGJ,OAAO;EAE1D,MAAM;IAAEK;EAAc,CAAC,GAAGR,SAAS,CAACK,EAAE,CAAC;EAEvC,OACER,KAAA,CAAAY,aAAA,CAACR,eAAe;IAACS,IAAI,EAAEF,aAAa,CAACG,MAAM,GAAGL;EAAiB,GAC7DT,KAAA,CAAAY,aAAA,CAACV,UAAU;IAACa,GAAG;IAACC,OAAO;EAAA,GACpBC,MAAM,CAACP,gBAAgB,CAAC,CAACQ,OAAO,CAC/B,SAAS,EACTD,MAAM,CAACR,gBAAgB,CACzB,CACU,CACG,CAAC;AAEtB,CAAC;AAED,eAAeJ,YAAY"}
1
+ {"version":3,"file":"UploadStatus.js","names":["React","UploadContext","FormStatus","useUpload","HeightAnimation","UploadStatus","context","useContext","id","filesAmountLimit","errorAmountLimit","internalFiles","open","length","createElement","delay","shellSpace","top","stretch","String","replace"],"sources":["../../../../src/components/upload/UploadStatus.tsx"],"sourcesContent":["import React from 'react'\nimport { UploadContext } from './UploadContext'\nimport FormStatus from '../FormStatus'\nimport useUpload from './useUpload'\nimport HeightAnimation from '../height-animation/HeightAnimation'\n\nconst UploadStatus = () => {\n const context = React.useContext(UploadContext)\n\n const { id, filesAmountLimit, errorAmountLimit } = context\n const { internalFiles } = useUpload(id)\n const open = internalFiles.length > filesAmountLimit\n\n return (\n <HeightAnimation\n open={open}\n delay={\n 500 /* delay the animation to avoid flickering while each file animates */\n }\n >\n <FormStatus shellSpace={{ top: 'small' }} stretch>\n {String(errorAmountLimit).replace(\n '%amount',\n String(filesAmountLimit)\n )}\n </FormStatus>\n </HeightAnimation>\n )\n}\n\nexport default UploadStatus\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,OAAOC,UAAU,MAAM,eAAe;AACtC,OAAOC,SAAS,MAAM,aAAa;AACnC,OAAOC,eAAe,MAAM,qCAAqC;AAEjE,MAAMC,YAAY,GAAGA,CAAA,KAAM;EACzB,MAAMC,OAAO,GAAGN,KAAK,CAACO,UAAU,CAACN,aAAa,CAAC;EAE/C,MAAM;IAAEO,EAAE;IAAEC,gBAAgB;IAAEC;EAAiB,CAAC,GAAGJ,OAAO;EAC1D,MAAM;IAAEK;EAAc,CAAC,GAAGR,SAAS,CAACK,EAAE,CAAC;EACvC,MAAMI,IAAI,GAAGD,aAAa,CAACE,MAAM,GAAGJ,gBAAgB;EAEpD,OACET,KAAA,CAAAc,aAAA,CAACV,eAAe;IACdQ,IAAI,EAAEA,IAAK;IACXG,KAAK,EACH;EACD,GAEDf,KAAA,CAAAc,aAAA,CAACZ,UAAU;IAACc,UAAU,EAAE;MAAEC,GAAG,EAAE;IAAQ,CAAE;IAACC,OAAO;EAAA,GAC9CC,MAAM,CAACT,gBAAgB,CAAC,CAACU,OAAO,CAC/B,SAAS,EACTD,MAAM,CAACV,gBAAgB,CACzB,CACU,CACG,CAAC;AAEtB,CAAC;AAED,eAAeJ,YAAY"}
@@ -1,18 +1,16 @@
1
- "use client";
2
-
3
- import { useEventEmitter } from '../../shared/component-helper';
1
+ import { useSharedState } from '../../shared/helpers/useSharedState';
4
2
  function useUpload(id) {
5
3
  const {
6
4
  data,
7
- update
8
- } = useEventEmitter(id);
5
+ extend
6
+ } = useSharedState(id);
9
7
  const setFiles = files => {
10
- update({
8
+ extend({
11
9
  files
12
10
  });
13
11
  };
14
12
  const setInternalFiles = internalFiles => {
15
- update({
13
+ extend({
16
14
  internalFiles
17
15
  });
18
16
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useUpload.js","names":["useEventEmitter","useUpload","id","data","update","setFiles","files","setInternalFiles","internalFiles","getExistingFile","file","fileItems","arguments","length","undefined","find","_ref","f","name","size","lastModified"],"sources":["../../../../src/components/upload/useUpload.ts"],"sourcesContent":["import { useEventEmitter } from '../../shared/component-helper'\nimport type { UploadFile } from './types'\n\nexport type useUploadReturn = {\n files: UploadFile[]\n setFiles: (files: UploadFile[]) => void\n internalFiles: UploadFile[]\n setInternalFiles: (files: UploadFile[]) => void\n getExistingFile: (file: File, fileItems?: UploadFile[]) => UploadFile\n}\n\n/**\n * Use together with Upload with the same id to manage the files from outside the component.\n */\nfunction useUpload(id: string): useUploadReturn {\n const { data, update } = useEventEmitter(id)\n\n const setFiles = (files: UploadFile[]) => {\n update({ files })\n }\n\n const setInternalFiles = (internalFiles: UploadFile[]) => {\n update({ internalFiles })\n }\n\n const files = data?.files || []\n const internalFiles = data?.internalFiles || []\n\n const getExistingFile = (\n file: File,\n fileItems: UploadFile[] = files\n ) => {\n return fileItems.find(({ file: f }) => {\n return (\n f.name === file.name &&\n f.size === file.size &&\n f.lastModified === file.lastModified\n )\n })\n }\n\n return {\n files,\n setFiles,\n internalFiles,\n setInternalFiles,\n getExistingFile,\n }\n}\n\nexport default useUpload\n"],"mappings":";;AAAA,SAASA,eAAe,QAAQ,+BAA+B;AAc/D,SAASC,SAASA,CAACC,EAAU,EAAmB;EAC9C,MAAM;IAAEC,IAAI;IAAEC;EAAO,CAAC,GAAGJ,eAAe,CAACE,EAAE,CAAC;EAE5C,MAAMG,QAAQ,GAAIC,KAAmB,IAAK;IACxCF,MAAM,CAAC;MAAEE;IAAM,CAAC,CAAC;EACnB,CAAC;EAED,MAAMC,gBAAgB,GAAIC,aAA2B,IAAK;IACxDJ,MAAM,CAAC;MAAEI;IAAc,CAAC,CAAC;EAC3B,CAAC;EAED,MAAMF,KAAK,GAAG,CAAAH,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEG,KAAK,KAAI,EAAE;EAC/B,MAAME,aAAa,GAAG,CAAAL,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEK,aAAa,KAAI,EAAE;EAE/C,MAAMC,eAAe,GAAG,SAAAA,CACtBC,IAAU,EAEP;IAAA,IADHC,SAAuB,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAGN,KAAK;IAE/B,OAAOK,SAAS,CAACI,IAAI,CAACC,IAAA,IAAiB;MAAA,IAAhB;QAAEN,IAAI,EAAEO;MAAE,CAAC,GAAAD,IAAA;MAChC,OACEC,CAAC,CAACC,IAAI,KAAKR,IAAI,CAACQ,IAAI,IACpBD,CAAC,CAACE,IAAI,KAAKT,IAAI,CAACS,IAAI,IACpBF,CAAC,CAACG,YAAY,KAAKV,IAAI,CAACU,YAAY;IAExC,CAAC,CAAC;EACJ,CAAC;EAED,OAAO;IACLd,KAAK;IACLD,QAAQ;IACRG,aAAa;IACbD,gBAAgB;IAChBE;EACF,CAAC;AACH;AAEA,eAAeR,SAAS"}
1
+ {"version":3,"file":"useUpload.js","names":["useSharedState","useUpload","id","data","extend","setFiles","files","setInternalFiles","internalFiles","getExistingFile","file","fileItems","arguments","length","undefined","find","_ref","f","name","size","lastModified"],"sources":["../../../../src/components/upload/useUpload.ts"],"sourcesContent":["import { useSharedState } from '../../shared/helpers/useSharedState'\nimport type { UploadFile } from './types'\n\nexport type useUploadReturn = {\n files: UploadFile[]\n setFiles: (files: UploadFile[]) => void\n internalFiles: UploadFile[]\n setInternalFiles: (files: UploadFile[]) => void\n getExistingFile: (file: File, fileItems?: UploadFile[]) => UploadFile\n}\n\n/**\n * Use together with Upload with the same id to manage the files from outside the component.\n */\nfunction useUpload(id: string): useUploadReturn {\n const { data, extend } = useSharedState<{\n files?: UploadFile[]\n internalFiles?: UploadFile[]\n }>(id)\n\n const setFiles = (files: UploadFile[]) => {\n extend({ files })\n }\n\n const setInternalFiles = (internalFiles: UploadFile[]) => {\n extend({ internalFiles })\n }\n\n const files = data?.files || []\n const internalFiles = data?.internalFiles || []\n\n const getExistingFile = (\n file: File,\n fileItems: UploadFile[] = files\n ) => {\n return fileItems.find(({ file: f }) => {\n return (\n f.name === file.name &&\n f.size === file.size &&\n f.lastModified === file.lastModified\n )\n })\n }\n\n return {\n files,\n setFiles,\n internalFiles,\n setInternalFiles,\n getExistingFile,\n }\n}\n\nexport default useUpload\n"],"mappings":"AAAA,SAASA,cAAc,QAAQ,qCAAqC;AAcpE,SAASC,SAASA,CAACC,EAAU,EAAmB;EAC9C,MAAM;IAAEC,IAAI;IAAEC;EAAO,CAAC,GAAGJ,cAAc,CAGpCE,EAAE,CAAC;EAEN,MAAMG,QAAQ,GAAIC,KAAmB,IAAK;IACxCF,MAAM,CAAC;MAAEE;IAAM,CAAC,CAAC;EACnB,CAAC;EAED,MAAMC,gBAAgB,GAAIC,aAA2B,IAAK;IACxDJ,MAAM,CAAC;MAAEI;IAAc,CAAC,CAAC;EAC3B,CAAC;EAED,MAAMF,KAAK,GAAG,CAAAH,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEG,KAAK,KAAI,EAAE;EAC/B,MAAME,aAAa,GAAG,CAAAL,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEK,aAAa,KAAI,EAAE;EAE/C,MAAMC,eAAe,GAAG,SAAAA,CACtBC,IAAU,EAEP;IAAA,IADHC,SAAuB,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAGN,KAAK;IAE/B,OAAOK,SAAS,CAACI,IAAI,CAACC,IAAA,IAAiB;MAAA,IAAhB;QAAEN,IAAI,EAAEO;MAAE,CAAC,GAAAD,IAAA;MAChC,OACEC,CAAC,CAACC,IAAI,KAAKR,IAAI,CAACQ,IAAI,IACpBD,CAAC,CAACE,IAAI,KAAKT,IAAI,CAACS,IAAI,IACpBF,CAAC,CAACG,YAAY,KAAKV,IAAI,CAACU,YAAY;IAExC,CAAC,CAAC;EACJ,CAAC;EAED,OAAO;IACLd,KAAK;IACLD,QAAQ;IACRG,aAAa;IACbD,gBAAgB;IAChBE;EACF,CAAC;AACH;AAEA,eAAeR,SAAS"}
package/elements/lib.d.ts CHANGED
@@ -89,26 +89,32 @@ export declare const getElements: () => {
89
89
  H1: {
90
90
  ({ size, ...props }: import("./H").SharedHProps): import("react/jsx-runtime").JSX.Element;
91
91
  _isHeadingElement: boolean;
92
+ _supportsSpacingProps: boolean;
92
93
  };
93
94
  H2: {
94
95
  ({ size, ...props }: import("./H").SharedHProps): import("react/jsx-runtime").JSX.Element;
95
96
  _isHeadingElement: boolean;
97
+ _supportsSpacingProps: boolean;
96
98
  };
97
99
  H3: {
98
100
  ({ size, ...props }: import("./H").SharedHProps): import("react/jsx-runtime").JSX.Element;
99
101
  _isHeadingElement: boolean;
102
+ _supportsSpacingProps: boolean;
100
103
  };
101
104
  H4: {
102
105
  ({ size, ...props }: import("./H").SharedHProps): import("react/jsx-runtime").JSX.Element;
103
106
  _isHeadingElement: boolean;
107
+ _supportsSpacingProps: boolean;
104
108
  };
105
109
  H5: {
106
110
  ({ size, ...props }: import("./H").SharedHProps): import("react/jsx-runtime").JSX.Element;
107
111
  _isHeadingElement: boolean;
112
+ _supportsSpacingProps: boolean;
108
113
  };
109
114
  H6: {
110
115
  ({ size, ...props }: import("./H").SharedHProps): import("react/jsx-runtime").JSX.Element;
111
116
  _isHeadingElement: boolean;
117
+ _supportsSpacingProps: boolean;
112
118
  };
113
119
  Hr: {
114
120
  ({ fullscreen, light, medium, className, ...props }?: import("../shared/types").SpacingElementProps & {
@@ -2,5 +2,6 @@ import type { SharedHProps } from './H';
2
2
  declare const H1: {
3
3
  ({ size, ...props }: SharedHProps): import("react/jsx-runtime").JSX.Element;
4
4
  _isHeadingElement: boolean;
5
+ _supportsSpacingProps: boolean;
5
6
  };
6
7
  export default H1;
@@ -14,6 +14,6 @@ const H1 = _ref => {
14
14
  }, props));
15
15
  };
16
16
  H1._isHeadingElement = true;
17
- H._supportsSpacingProps = true;
17
+ H1._supportsSpacingProps = true;
18
18
  export default H1;
19
19
  //# sourceMappingURL=H1.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"H1.js","names":["React","H","H1","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H1.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H1 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h1\" size={size || 'auto'} {...props} />\n)\n\nH1._isHeadingElement = true\nH._supportsSpacingProps = true\n\nexport default H1\n"],"mappings":";;;AAIA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,CAAC,MAAM,KAAK;AAEnB,MAAMC,EAAE,GAAGC,IAAA;EAAA,IAAC;MAAEC;IAA6B,CAAC,GAAAD,IAAA;IAArBE,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAAA,OAC1BP,KAAA,CAAAQ,aAAA,CAACP,CAAC,EAAAQ,QAAA;IAACC,EAAE,EAAC,IAAI;IAACN,IAAI,EAAEA,IAAI,IAAI;EAAO,GAAKC,KAAK,CAAG,CAAC;AAAA,CAC/C;AAEDH,EAAE,CAACS,iBAAiB,GAAG,IAAI;AAC3BV,CAAC,CAACW,qBAAqB,GAAG,IAAI;AAE9B,eAAeV,EAAE"}
1
+ {"version":3,"file":"H1.js","names":["React","H","H1","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H1.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H1 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h1\" size={size || 'auto'} {...props} />\n)\n\nH1._isHeadingElement = true\nH1._supportsSpacingProps = true\n\nexport default H1\n"],"mappings":";;;AAIA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,CAAC,MAAM,KAAK;AAEnB,MAAMC,EAAE,GAAGC,IAAA;EAAA,IAAC;MAAEC;IAA6B,CAAC,GAAAD,IAAA;IAArBE,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAAA,OAC1BP,KAAA,CAAAQ,aAAA,CAACP,CAAC,EAAAQ,QAAA;IAACC,EAAE,EAAC,IAAI;IAACN,IAAI,EAAEA,IAAI,IAAI;EAAO,GAAKC,KAAK,CAAG,CAAC;AAAA,CAC/C;AAEDH,EAAE,CAACS,iBAAiB,GAAG,IAAI;AAC3BT,EAAE,CAACU,qBAAqB,GAAG,IAAI;AAE/B,eAAeV,EAAE"}
@@ -2,5 +2,6 @@ import type { SharedHProps } from './H';
2
2
  declare const H2: {
3
3
  ({ size, ...props }: SharedHProps): import("react/jsx-runtime").JSX.Element;
4
4
  _isHeadingElement: boolean;
5
+ _supportsSpacingProps: boolean;
5
6
  };
6
7
  export default H2;
@@ -14,6 +14,6 @@ const H2 = _ref => {
14
14
  }, props));
15
15
  };
16
16
  H2._isHeadingElement = true;
17
- H._supportsSpacingProps = true;
17
+ H2._supportsSpacingProps = true;
18
18
  export default H2;
19
19
  //# sourceMappingURL=H2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"H2.js","names":["React","H","H2","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H2.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H2 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h2\" size={size || 'auto'} {...props} />\n)\n\nH2._isHeadingElement = true\nH._supportsSpacingProps = true\n\nexport default H2\n"],"mappings":";;;AAIA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,CAAC,MAAM,KAAK;AAEnB,MAAMC,EAAE,GAAGC,IAAA;EAAA,IAAC;MAAEC;IAA6B,CAAC,GAAAD,IAAA;IAArBE,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAAA,OAC1BP,KAAA,CAAAQ,aAAA,CAACP,CAAC,EAAAQ,QAAA;IAACC,EAAE,EAAC,IAAI;IAACN,IAAI,EAAEA,IAAI,IAAI;EAAO,GAAKC,KAAK,CAAG,CAAC;AAAA,CAC/C;AAEDH,EAAE,CAACS,iBAAiB,GAAG,IAAI;AAC3BV,CAAC,CAACW,qBAAqB,GAAG,IAAI;AAE9B,eAAeV,EAAE"}
1
+ {"version":3,"file":"H2.js","names":["React","H","H2","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H2.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H2 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h2\" size={size || 'auto'} {...props} />\n)\n\nH2._isHeadingElement = true\nH2._supportsSpacingProps = true\n\nexport default H2\n"],"mappings":";;;AAIA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,CAAC,MAAM,KAAK;AAEnB,MAAMC,EAAE,GAAGC,IAAA;EAAA,IAAC;MAAEC;IAA6B,CAAC,GAAAD,IAAA;IAArBE,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAAA,OAC1BP,KAAA,CAAAQ,aAAA,CAACP,CAAC,EAAAQ,QAAA;IAACC,EAAE,EAAC,IAAI;IAACN,IAAI,EAAEA,IAAI,IAAI;EAAO,GAAKC,KAAK,CAAG,CAAC;AAAA,CAC/C;AAEDH,EAAE,CAACS,iBAAiB,GAAG,IAAI;AAC3BT,EAAE,CAACU,qBAAqB,GAAG,IAAI;AAE/B,eAAeV,EAAE"}
@@ -2,5 +2,6 @@ import type { SharedHProps } from './H';
2
2
  declare const H3: {
3
3
  ({ size, ...props }: SharedHProps): import("react/jsx-runtime").JSX.Element;
4
4
  _isHeadingElement: boolean;
5
+ _supportsSpacingProps: boolean;
5
6
  };
6
7
  export default H3;
@@ -14,6 +14,6 @@ const H3 = _ref => {
14
14
  }, props));
15
15
  };
16
16
  H3._isHeadingElement = true;
17
- H._supportsSpacingProps = true;
17
+ H3._supportsSpacingProps = true;
18
18
  export default H3;
19
19
  //# sourceMappingURL=H3.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"H3.js","names":["React","H","H3","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H3.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H3 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h3\" size={size || 'auto'} {...props} />\n)\n\nH3._isHeadingElement = true\nH._supportsSpacingProps = true\n\nexport default H3\n"],"mappings":";;;AAIA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,CAAC,MAAM,KAAK;AAEnB,MAAMC,EAAE,GAAGC,IAAA;EAAA,IAAC;MAAEC;IAA6B,CAAC,GAAAD,IAAA;IAArBE,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAAA,OAC1BP,KAAA,CAAAQ,aAAA,CAACP,CAAC,EAAAQ,QAAA;IAACC,EAAE,EAAC,IAAI;IAACN,IAAI,EAAEA,IAAI,IAAI;EAAO,GAAKC,KAAK,CAAG,CAAC;AAAA,CAC/C;AAEDH,EAAE,CAACS,iBAAiB,GAAG,IAAI;AAC3BV,CAAC,CAACW,qBAAqB,GAAG,IAAI;AAE9B,eAAeV,EAAE"}
1
+ {"version":3,"file":"H3.js","names":["React","H","H3","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H3.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H3 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h3\" size={size || 'auto'} {...props} />\n)\n\nH3._isHeadingElement = true\nH3._supportsSpacingProps = true\n\nexport default H3\n"],"mappings":";;;AAIA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,CAAC,MAAM,KAAK;AAEnB,MAAMC,EAAE,GAAGC,IAAA;EAAA,IAAC;MAAEC;IAA6B,CAAC,GAAAD,IAAA;IAArBE,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAAA,OAC1BP,KAAA,CAAAQ,aAAA,CAACP,CAAC,EAAAQ,QAAA;IAACC,EAAE,EAAC,IAAI;IAACN,IAAI,EAAEA,IAAI,IAAI;EAAO,GAAKC,KAAK,CAAG,CAAC;AAAA,CAC/C;AAEDH,EAAE,CAACS,iBAAiB,GAAG,IAAI;AAC3BT,EAAE,CAACU,qBAAqB,GAAG,IAAI;AAE/B,eAAeV,EAAE"}
@@ -2,5 +2,6 @@ import type { SharedHProps } from './H';
2
2
  declare const H4: {
3
3
  ({ size, ...props }: SharedHProps): import("react/jsx-runtime").JSX.Element;
4
4
  _isHeadingElement: boolean;
5
+ _supportsSpacingProps: boolean;
5
6
  };
6
7
  export default H4;
@@ -14,6 +14,6 @@ const H4 = _ref => {
14
14
  }, props));
15
15
  };
16
16
  H4._isHeadingElement = true;
17
- H._supportsSpacingProps = true;
17
+ H4._supportsSpacingProps = true;
18
18
  export default H4;
19
19
  //# sourceMappingURL=H4.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"H4.js","names":["React","H","H4","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H4.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H4 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h4\" size={size || 'auto'} {...props} />\n)\n\nH4._isHeadingElement = true\nH._supportsSpacingProps = true\n\nexport default H4\n"],"mappings":";;;AAIA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,CAAC,MAAM,KAAK;AAEnB,MAAMC,EAAE,GAAGC,IAAA;EAAA,IAAC;MAAEC;IAA6B,CAAC,GAAAD,IAAA;IAArBE,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAAA,OAC1BP,KAAA,CAAAQ,aAAA,CAACP,CAAC,EAAAQ,QAAA;IAACC,EAAE,EAAC,IAAI;IAACN,IAAI,EAAEA,IAAI,IAAI;EAAO,GAAKC,KAAK,CAAG,CAAC;AAAA,CAC/C;AAEDH,EAAE,CAACS,iBAAiB,GAAG,IAAI;AAC3BV,CAAC,CAACW,qBAAqB,GAAG,IAAI;AAE9B,eAAeV,EAAE"}
1
+ {"version":3,"file":"H4.js","names":["React","H","H4","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H4.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H4 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h4\" size={size || 'auto'} {...props} />\n)\n\nH4._isHeadingElement = true\nH4._supportsSpacingProps = true\n\nexport default H4\n"],"mappings":";;;AAIA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,CAAC,MAAM,KAAK;AAEnB,MAAMC,EAAE,GAAGC,IAAA;EAAA,IAAC;MAAEC;IAA6B,CAAC,GAAAD,IAAA;IAArBE,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAAA,OAC1BP,KAAA,CAAAQ,aAAA,CAACP,CAAC,EAAAQ,QAAA;IAACC,EAAE,EAAC,IAAI;IAACN,IAAI,EAAEA,IAAI,IAAI;EAAO,GAAKC,KAAK,CAAG,CAAC;AAAA,CAC/C;AAEDH,EAAE,CAACS,iBAAiB,GAAG,IAAI;AAC3BT,EAAE,CAACU,qBAAqB,GAAG,IAAI;AAE/B,eAAeV,EAAE"}
@@ -2,5 +2,6 @@ import type { SharedHProps } from './H';
2
2
  declare const H5: {
3
3
  ({ size, ...props }: SharedHProps): import("react/jsx-runtime").JSX.Element;
4
4
  _isHeadingElement: boolean;
5
+ _supportsSpacingProps: boolean;
5
6
  };
6
7
  export default H5;
@@ -14,6 +14,6 @@ const H5 = _ref => {
14
14
  }, props));
15
15
  };
16
16
  H5._isHeadingElement = true;
17
- H._supportsSpacingProps = true;
17
+ H5._supportsSpacingProps = true;
18
18
  export default H5;
19
19
  //# sourceMappingURL=H5.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"H5.js","names":["React","H","H5","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H5.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H5 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h5\" size={size || 'auto'} {...props} />\n)\n\nH5._isHeadingElement = true\nH._supportsSpacingProps = true\n\nexport default H5\n"],"mappings":";;;AAIA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,CAAC,MAAM,KAAK;AAEnB,MAAMC,EAAE,GAAGC,IAAA;EAAA,IAAC;MAAEC;IAA6B,CAAC,GAAAD,IAAA;IAArBE,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAAA,OAC1BP,KAAA,CAAAQ,aAAA,CAACP,CAAC,EAAAQ,QAAA;IAACC,EAAE,EAAC,IAAI;IAACN,IAAI,EAAEA,IAAI,IAAI;EAAO,GAAKC,KAAK,CAAG,CAAC;AAAA,CAC/C;AAEDH,EAAE,CAACS,iBAAiB,GAAG,IAAI;AAC3BV,CAAC,CAACW,qBAAqB,GAAG,IAAI;AAE9B,eAAeV,EAAE"}
1
+ {"version":3,"file":"H5.js","names":["React","H","H5","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H5.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H5 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h5\" size={size || 'auto'} {...props} />\n)\n\nH5._isHeadingElement = true\nH5._supportsSpacingProps = true\n\nexport default H5\n"],"mappings":";;;AAIA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,CAAC,MAAM,KAAK;AAEnB,MAAMC,EAAE,GAAGC,IAAA;EAAA,IAAC;MAAEC;IAA6B,CAAC,GAAAD,IAAA;IAArBE,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAAA,OAC1BP,KAAA,CAAAQ,aAAA,CAACP,CAAC,EAAAQ,QAAA;IAACC,EAAE,EAAC,IAAI;IAACN,IAAI,EAAEA,IAAI,IAAI;EAAO,GAAKC,KAAK,CAAG,CAAC;AAAA,CAC/C;AAEDH,EAAE,CAACS,iBAAiB,GAAG,IAAI;AAC3BT,EAAE,CAACU,qBAAqB,GAAG,IAAI;AAE/B,eAAeV,EAAE"}
@@ -2,5 +2,6 @@ import type { SharedHProps } from './H';
2
2
  declare const H6: {
3
3
  ({ size, ...props }: SharedHProps): import("react/jsx-runtime").JSX.Element;
4
4
  _isHeadingElement: boolean;
5
+ _supportsSpacingProps: boolean;
5
6
  };
6
7
  export default H6;
@@ -14,6 +14,6 @@ const H6 = _ref => {
14
14
  }, props));
15
15
  };
16
16
  H6._isHeadingElement = true;
17
- H._supportsSpacingProps = true;
17
+ H6._supportsSpacingProps = true;
18
18
  export default H6;
19
19
  //# sourceMappingURL=H6.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"H6.js","names":["React","H","H6","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H6.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H6 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h6\" size={size || 'auto'} {...props} />\n)\n\nH6._isHeadingElement = true\nH._supportsSpacingProps = true\n\nexport default H6\n"],"mappings":";;;AAIA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,CAAC,MAAM,KAAK;AAEnB,MAAMC,EAAE,GAAGC,IAAA;EAAA,IAAC;MAAEC;IAA6B,CAAC,GAAAD,IAAA;IAArBE,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAAA,OAC1BP,KAAA,CAAAQ,aAAA,CAACP,CAAC,EAAAQ,QAAA;IAACC,EAAE,EAAC,IAAI;IAACN,IAAI,EAAEA,IAAI,IAAI;EAAO,GAAKC,KAAK,CAAG,CAAC;AAAA,CAC/C;AAEDH,EAAE,CAACS,iBAAiB,GAAG,IAAI;AAC3BV,CAAC,CAACW,qBAAqB,GAAG,IAAI;AAE9B,eAAeV,EAAE"}
1
+ {"version":3,"file":"H6.js","names":["React","H","H6","_ref","size","props","_objectWithoutProperties","_excluded","createElement","_extends","as","_isHeadingElement","_supportsSpacingProps"],"sources":["../../../../src/elements/typography/H6.tsx"],"sourcesContent":["/**\n * HTML Element\n *\n */\nimport React from 'react'\nimport type { SharedHProps } from './H'\nimport H from './H'\n\nconst H6 = ({ size, ...props }: SharedHProps) => (\n <H as=\"h6\" size={size || 'auto'} {...props} />\n)\n\nH6._isHeadingElement = true\nH6._supportsSpacingProps = true\n\nexport default H6\n"],"mappings":";;;AAIA,OAAOA,KAAK,MAAM,OAAO;AAEzB,OAAOC,CAAC,MAAM,KAAK;AAEnB,MAAMC,EAAE,GAAGC,IAAA;EAAA,IAAC;MAAEC;IAA6B,CAAC,GAAAD,IAAA;IAArBE,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAAA,OAC1BP,KAAA,CAAAQ,aAAA,CAACP,CAAC,EAAAQ,QAAA;IAACC,EAAE,EAAC,IAAI;IAACN,IAAI,EAAEA,IAAI,IAAI;EAAO,GAAKC,KAAK,CAAG,CAAC;AAAA,CAC/C;AAEDH,EAAE,CAACS,iBAAiB,GAAG,IAAI;AAC3BT,EAAE,CAACU,qBAAqB,GAAG,IAAI;AAE/B,eAAeV,EAAE"}
@@ -4,7 +4,7 @@
4
4
  */
5
5
  import React from 'react';
6
6
  import { SpacingProps } from '../space/types';
7
- export type AccordionContentProps = Omit<React.HTMLProps<HTMLElement>, 'onAnimationEnd' | 'children'> & SpacingProps & {
7
+ export type AccordionContentProps = Omit<React.HTMLProps<HTMLElement>, 'onAnimationStart' | 'onAnimationEnd' | 'children'> & SpacingProps & {
8
8
  instance?: React.MutableRefObject<unknown>;
9
9
  className?: string;
10
10
  children?: React.ReactNode | ((...args: any[]) => any);
@@ -1 +1 @@
1
- {"version":3,"file":"AccordionContent.js","names":["React","classnames","warn","validateDOMAttributes","processChildren","getPreviousSibling","useMediaQuery","AccordionContext","createSpacingClasses","HeightAnimation","AccordionContent","props","context","useContext","id","expanded","prerender","prevent_rerender","single_container","disabled","no_animation","contentRef","className","children","instance","rest","_objectWithoutProperties","_excluded","elementRef","useRef","cacheRef","setContainerHeight","contentElem","current","style","height","containerElement","transitionDuration","minHeight","offsetHeight","offsetTop","e","renderContent","prevent_rerender_conditional","content","createElement","useEffect","useState","Object","prototype","hasOwnProperty","call","isSmallScreen","when","max","wrapperParams","_objectSpread","keepInDOM","innerParams","animate","_extends","open","innerRef","_supportsSpacingProps"],"sources":["../../../../src/components/accordion/AccordionContent.tsx"],"sourcesContent":["/**\n * Web Accordion Component\n *\n */\n\nimport React, { HTMLProps } from 'react'\nimport classnames from 'classnames'\nimport {\n warn,\n validateDOMAttributes,\n processChildren,\n getPreviousSibling,\n} from '../../shared/component-helper'\nimport { useMediaQuery } from '../../shared'\nimport AccordionContext, {\n AccordionContextProps,\n} from './AccordionContext'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport HeightAnimation from '../height-animation/HeightAnimation'\nimport { SpacingProps } from '../space/types'\n\nexport type AccordionContentProps = Omit<\n React.HTMLProps<HTMLElement>,\n 'onAnimationEnd' | 'children'\n> &\n SpacingProps & {\n instance?: React.MutableRefObject<unknown>\n className?: string\n children?: React.ReactNode | ((...args: any[]) => any)\n }\n\nexport default function AccordionContent(props: AccordionContentProps) {\n const context = React.useContext<AccordionContextProps>(AccordionContext)\n\n const {\n id,\n expanded,\n prerender,\n prevent_rerender,\n single_container,\n disabled,\n no_animation,\n contentRef,\n } = context\n\n const { className, children, instance, ...rest } = props\n\n let elementRef = React.useRef(null)\n const cacheRef = React.useRef(null)\n\n if (contentRef) {\n elementRef = contentRef\n }\n\n const setContainerHeight = () => {\n const { single_container } = context\n\n if (single_container) {\n const contentElem = elementRef.current\n if (contentElem) {\n try {\n contentElem.style.height = ''\n\n const containerElement = getPreviousSibling(\n 'dnb-accordion-group--single-container',\n contentElem\n ) as HTMLElement\n\n if (no_animation) {\n containerElement.style.transitionDuration = '1ms'\n }\n\n const minHeight =\n (contentElem.offsetHeight + contentElem.offsetTop) / 16\n containerElement.style.minHeight = `${minHeight}rem`\n } catch (e) {\n warn(e)\n }\n }\n }\n }\n\n const renderContent = () => {\n const children = processChildren(props)\n\n const {\n expanded,\n prerender,\n prevent_rerender,\n prevent_rerender_conditional,\n } = context\n\n let content = children\n\n if (typeof content === 'string') {\n content = <p className=\"dnb-p\">{content}</p>\n }\n\n if (prevent_rerender) {\n /**\n * Ensure we do not render, if it is not expanded\n */\n if (!(expanded || prerender)) {\n content = null\n }\n\n // update the cache if children is not the same anymore\n if (prevent_rerender_conditional && cacheRef.current !== content) {\n cacheRef.current = content\n }\n\n if (cacheRef.current) {\n content = cacheRef.current\n } else {\n cacheRef.current = content\n }\n }\n\n return content\n }\n\n React.useEffect(() => {\n if (expanded && single_container) {\n setContainerHeight()\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [children, expanded, single_container])\n\n React.useState(() => {\n if (\n instance &&\n Object.prototype.hasOwnProperty.call(instance, 'current')\n ) {\n instance.current = { setContainerHeight }\n }\n })\n\n const isSmallScreen = useMediaQuery({\n when: { max: 'small' },\n })\n\n const content = renderContent()\n\n const wrapperParams = {\n className: classnames('dnb-accordion__content', className),\n ...rest,\n }\n\n const keepInDOM = prerender || prevent_rerender\n\n const innerParams = {\n id: `${id}-content`,\n 'aria-labelledby': `${id}-header`,\n className: classnames(\n 'dnb-accordion__content__inner',\n createSpacingClasses(rest)\n ),\n } as HTMLProps<HTMLElement>\n\n if (expanded) {\n innerParams['aria-expanded'] = true\n }\n\n if (!expanded || disabled) {\n innerParams.disabled = true\n innerParams['aria-hidden'] = true\n }\n\n // to remove spacing props\n validateDOMAttributes(props, wrapperParams)\n validateDOMAttributes(null, innerParams)\n\n const animate =\n !no_animation && (single_container ? isSmallScreen : true)\n\n return (\n <HeightAnimation\n {...wrapperParams}\n open={expanded}\n animate={animate}\n keepInDOM={keepInDOM}\n innerRef={elementRef}\n >\n <section {...innerParams}>{content}</section>\n </HeightAnimation>\n )\n}\n\nAccordionContent._supportsSpacingProps = true\n"],"mappings":"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"}
1
+ {"version":3,"file":"AccordionContent.js","names":["React","classnames","warn","validateDOMAttributes","processChildren","getPreviousSibling","useMediaQuery","AccordionContext","createSpacingClasses","HeightAnimation","AccordionContent","props","context","useContext","id","expanded","prerender","prevent_rerender","single_container","disabled","no_animation","contentRef","className","children","instance","rest","_objectWithoutProperties","_excluded","elementRef","useRef","cacheRef","setContainerHeight","contentElem","current","style","height","containerElement","transitionDuration","minHeight","offsetHeight","offsetTop","e","renderContent","prevent_rerender_conditional","content","createElement","useEffect","useState","Object","prototype","hasOwnProperty","call","isSmallScreen","when","max","wrapperParams","_objectSpread","keepInDOM","innerParams","animate","_extends","open","innerRef","_supportsSpacingProps"],"sources":["../../../../src/components/accordion/AccordionContent.tsx"],"sourcesContent":["/**\n * Web Accordion Component\n *\n */\n\nimport React, { HTMLProps } from 'react'\nimport classnames from 'classnames'\nimport {\n warn,\n validateDOMAttributes,\n processChildren,\n getPreviousSibling,\n} from '../../shared/component-helper'\nimport { useMediaQuery } from '../../shared'\nimport AccordionContext, {\n AccordionContextProps,\n} from './AccordionContext'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport HeightAnimation from '../height-animation/HeightAnimation'\nimport { SpacingProps } from '../space/types'\n\nexport type AccordionContentProps = Omit<\n React.HTMLProps<HTMLElement>,\n 'onAnimationStart' | 'onAnimationEnd' | 'children'\n> &\n SpacingProps & {\n instance?: React.MutableRefObject<unknown>\n className?: string\n children?: React.ReactNode | ((...args: any[]) => any)\n }\n\nexport default function AccordionContent(props: AccordionContentProps) {\n const context = React.useContext<AccordionContextProps>(AccordionContext)\n\n const {\n id,\n expanded,\n prerender,\n prevent_rerender,\n single_container,\n disabled,\n no_animation,\n contentRef,\n } = context\n\n const { className, children, instance, ...rest } = props\n\n let elementRef = React.useRef(null)\n const cacheRef = React.useRef(null)\n\n if (contentRef) {\n elementRef = contentRef\n }\n\n const setContainerHeight = () => {\n const { single_container } = context\n\n if (single_container) {\n const contentElem = elementRef.current\n if (contentElem) {\n try {\n contentElem.style.height = ''\n\n const containerElement = getPreviousSibling(\n 'dnb-accordion-group--single-container',\n contentElem\n ) as HTMLElement\n\n if (no_animation) {\n containerElement.style.transitionDuration = '1ms'\n }\n\n const minHeight =\n (contentElem.offsetHeight + contentElem.offsetTop) / 16\n containerElement.style.minHeight = `${minHeight}rem`\n } catch (e) {\n warn(e)\n }\n }\n }\n }\n\n const renderContent = () => {\n const children = processChildren(props)\n\n const {\n expanded,\n prerender,\n prevent_rerender,\n prevent_rerender_conditional,\n } = context\n\n let content = children\n\n if (typeof content === 'string') {\n content = <p className=\"dnb-p\">{content}</p>\n }\n\n if (prevent_rerender) {\n /**\n * Ensure we do not render, if it is not expanded\n */\n if (!(expanded || prerender)) {\n content = null\n }\n\n // update the cache if children is not the same anymore\n if (prevent_rerender_conditional && cacheRef.current !== content) {\n cacheRef.current = content\n }\n\n if (cacheRef.current) {\n content = cacheRef.current\n } else {\n cacheRef.current = content\n }\n }\n\n return content\n }\n\n React.useEffect(() => {\n if (expanded && single_container) {\n setContainerHeight()\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [children, expanded, single_container])\n\n React.useState(() => {\n if (\n instance &&\n Object.prototype.hasOwnProperty.call(instance, 'current')\n ) {\n instance.current = { setContainerHeight }\n }\n })\n\n const isSmallScreen = useMediaQuery({\n when: { max: 'small' },\n })\n\n const content = renderContent()\n\n const wrapperParams = {\n className: classnames('dnb-accordion__content', className),\n ...rest,\n }\n\n const keepInDOM = prerender || prevent_rerender\n\n const innerParams = {\n id: `${id}-content`,\n 'aria-labelledby': `${id}-header`,\n className: classnames(\n 'dnb-accordion__content__inner',\n createSpacingClasses(rest)\n ),\n } as HTMLProps<HTMLElement>\n\n if (expanded) {\n innerParams['aria-expanded'] = true\n }\n\n if (!expanded || disabled) {\n innerParams.disabled = true\n innerParams['aria-hidden'] = true\n }\n\n // to remove spacing props\n validateDOMAttributes(props, wrapperParams)\n validateDOMAttributes(null, innerParams)\n\n const animate =\n !no_animation && (single_container ? isSmallScreen : true)\n\n return (\n <HeightAnimation\n {...wrapperParams}\n open={expanded}\n animate={animate}\n keepInDOM={keepInDOM}\n innerRef={elementRef}\n >\n <section {...innerParams}>{content}</section>\n </HeightAnimation>\n )\n}\n\nAccordionContent._supportsSpacingProps = true\n"],"mappings":";;;;;;;;AAKA,OAAOA,KAAK,MAAqB,OAAO;AACxC,OAAOC,UAAU,MAAM,YAAY;AACnC,SACEC,IAAI,EACJC,qBAAqB,EACrBC,eAAe,EACfC,kBAAkB,QACb,+BAA+B;AACtC,SAASC,aAAa,QAAQ,cAAc;AAC5C,OAAOC,gBAAgB,MAEhB,oBAAoB;AAC3B,SAASC,oBAAoB,QAAQ,wBAAwB;AAC7D,OAAOC,eAAe,MAAM,qCAAqC;AAajE,eAAe,SAASC,gBAAgBA,CAACC,KAA4B,EAAE;EACrE,MAAMC,OAAO,GAAGZ,KAAK,CAACa,UAAU,CAAwBN,gBAAgB,CAAC;EAEzE,MAAM;IACJO,EAAE;IACFC,QAAQ;IACRC,SAAS;IACTC,gBAAgB;IAChBC,gBAAgB;IAChBC,QAAQ;IACRC,YAAY;IACZC;EACF,CAAC,GAAGT,OAAO;EAEX,MAAM;MAAEU,SAAS;MAAEC,QAAQ;MAAEC;IAAkB,CAAC,GAAGb,KAAK;IAAdc,IAAI,GAAAC,wBAAA,CAAKf,KAAK,EAAAgB,SAAA;EAExD,IAAIC,UAAU,GAAG5B,KAAK,CAAC6B,MAAM,CAAC,IAAI,CAAC;EACnC,MAAMC,QAAQ,GAAG9B,KAAK,CAAC6B,MAAM,CAAC,IAAI,CAAC;EAEnC,IAAIR,UAAU,EAAE;IACdO,UAAU,GAAGP,UAAU;EACzB;EAEA,MAAMU,kBAAkB,GAAGA,CAAA,KAAM;IAC/B,MAAM;MAAEb;IAAiB,CAAC,GAAGN,OAAO;IAEpC,IAAIM,gBAAgB,EAAE;MACpB,MAAMc,WAAW,GAAGJ,UAAU,CAACK,OAAO;MACtC,IAAID,WAAW,EAAE;QACf,IAAI;UACFA,WAAW,CAACE,KAAK,CAACC,MAAM,GAAG,EAAE;UAE7B,MAAMC,gBAAgB,GAAG/B,kBAAkB,CACzC,uCAAuC,EACvC2B,WACF,CAAgB;UAEhB,IAAIZ,YAAY,EAAE;YAChBgB,gBAAgB,CAACF,KAAK,CAACG,kBAAkB,GAAG,KAAK;UACnD;UAEA,MAAMC,SAAS,GACb,CAACN,WAAW,CAACO,YAAY,GAAGP,WAAW,CAACQ,SAAS,IAAI,EAAE;UACzDJ,gBAAgB,CAACF,KAAK,CAACI,SAAS,GAAI,GAAEA,SAAU,KAAI;QACtD,CAAC,CAAC,OAAOG,CAAC,EAAE;UACVvC,IAAI,CAACuC,CAAC,CAAC;QACT;MACF;IACF;EACF,CAAC;EAED,MAAMC,aAAa,GAAGA,CAAA,KAAM;IAC1B,MAAMnB,QAAQ,GAAGnB,eAAe,CAACO,KAAK,CAAC;IAEvC,MAAM;MACJI,QAAQ;MACRC,SAAS;MACTC,gBAAgB;MAChB0B;IACF,CAAC,GAAG/B,OAAO;IAEX,IAAIgC,OAAO,GAAGrB,QAAQ;IAEtB,IAAI,OAAOqB,OAAO,KAAK,QAAQ,EAAE;MAC/BA,OAAO,GAAG5C,KAAA,CAAA6C,aAAA;QAAGvB,SAAS,EAAC;MAAO,GAAEsB,OAAW,CAAC;IAC9C;IAEA,IAAI3B,gBAAgB,EAAE;MAIpB,IAAI,EAAEF,QAAQ,IAAIC,SAAS,CAAC,EAAE;QAC5B4B,OAAO,GAAG,IAAI;MAChB;MAGA,IAAID,4BAA4B,IAAIb,QAAQ,CAACG,OAAO,KAAKW,OAAO,EAAE;QAChEd,QAAQ,CAACG,OAAO,GAAGW,OAAO;MAC5B;MAEA,IAAId,QAAQ,CAACG,OAAO,EAAE;QACpBW,OAAO,GAAGd,QAAQ,CAACG,OAAO;MAC5B,CAAC,MAAM;QACLH,QAAQ,CAACG,OAAO,GAAGW,OAAO;MAC5B;IACF;IAEA,OAAOA,OAAO;EAChB,CAAC;EAED5C,KAAK,CAAC8C,SAAS,CAAC,MAAM;IACpB,IAAI/B,QAAQ,IAAIG,gBAAgB,EAAE;MAChCa,kBAAkB,CAAC,CAAC;IACtB;EAEF,CAAC,EAAE,CAACR,QAAQ,EAAER,QAAQ,EAAEG,gBAAgB,CAAC,CAAC;EAE1ClB,KAAK,CAAC+C,QAAQ,CAAC,MAAM;IACnB,IACEvB,QAAQ,IACRwB,MAAM,CAACC,SAAS,CAACC,cAAc,CAACC,IAAI,CAAC3B,QAAQ,EAAE,SAAS,CAAC,EACzD;MACAA,QAAQ,CAACS,OAAO,GAAG;QAAEF;MAAmB,CAAC;IAC3C;EACF,CAAC,CAAC;EAEF,MAAMqB,aAAa,GAAG9C,aAAa,CAAC;IAClC+C,IAAI,EAAE;MAAEC,GAAG,EAAE;IAAQ;EACvB,CAAC,CAAC;EAEF,MAAMV,OAAO,GAAGF,aAAa,CAAC,CAAC;EAE/B,MAAMa,aAAa,GAAAC,aAAA;IACjBlC,SAAS,EAAErB,UAAU,CAAC,wBAAwB,EAAEqB,SAAS;EAAC,GACvDG,IAAI,CACR;EAED,MAAMgC,SAAS,GAAGzC,SAAS,IAAIC,gBAAgB;EAE/C,MAAMyC,WAAW,GAAG;IAClB5C,EAAE,EAAG,GAAEA,EAAG,UAAS;IACnB,iBAAiB,EAAG,GAAEA,EAAG,SAAQ;IACjCQ,SAAS,EAAErB,UAAU,CACnB,+BAA+B,EAC/BO,oBAAoB,CAACiB,IAAI,CAC3B;EACF,CAA2B;EAE3B,IAAIV,QAAQ,EAAE;IACZ2C,WAAW,CAAC,eAAe,CAAC,GAAG,IAAI;EACrC;EAEA,IAAI,CAAC3C,QAAQ,IAAII,QAAQ,EAAE;IACzBuC,WAAW,CAACvC,QAAQ,GAAG,IAAI;IAC3BuC,WAAW,CAAC,aAAa,CAAC,GAAG,IAAI;EACnC;EAGAvD,qBAAqB,CAACQ,KAAK,EAAE4C,aAAa,CAAC;EAC3CpD,qBAAqB,CAAC,IAAI,EAAEuD,WAAW,CAAC;EAExC,MAAMC,OAAO,GACX,CAACvC,YAAY,KAAKF,gBAAgB,GAAGkC,aAAa,GAAG,IAAI,CAAC;EAE5D,OACEpD,KAAA,CAAA6C,aAAA,CAACpC,eAAe,EAAAmD,QAAA,KACVL,aAAa;IACjBM,IAAI,EAAE9C,QAAS;IACf4C,OAAO,EAAEA,OAAQ;IACjBF,SAAS,EAAEA,SAAU;IACrBK,QAAQ,EAAElC;EAAW,IAErB5B,KAAA,CAAA6C,aAAA,YAAaa,WAAW,EAAGd,OAAiB,CAC7B,CAAC;AAEtB;AAEAlC,gBAAgB,CAACqD,qBAAqB,GAAG,IAAI"}
@@ -122,9 +122,6 @@
122
122
  width: 100%;
123
123
  margin-top: 1rem;
124
124
  }
125
- .dnb-accordion__content.dnb-height-animation--hidden .dnb-accordion__content__inner {
126
- display: none;
127
- }
128
125
  .dnb-accordion-group--single-container {
129
126
  transition: min-height 1s var(--accordion-easing);
130
127
  }
@@ -1,3 +1,3 @@
1
1
  .dnb-accordion{--accordion-border-width:0.0625rem;--accordion-border-radius:0.5rem;--accordion-easing:var(--easing-default);--accordion-header-margin-vertical:1.25rem;--accordion-header-margin-vertical--description:0.75rem;--accordion-header-wrapper-margin:1rem;--accordion-header-wrapper-margin--icon-right:1rem;--accordion-header-icon-gutter:1rem;--accordion-header-icon-margin:1rem;--accordion-title-font-weight:var(--font-weight-basis);--accordion-title-font-weight--expanded:var(--font-weight-medium);display:flex;flex-direction:column;font-size:var(--font-size-small);line-height:var(--line-height-basis);position:relative}.dnb-accordion__header{align-items:center;border:var(--accordion-border-width) solid transparent;border-radius:var(--accordion-border-radius);cursor:pointer;display:flex;outline:none}.dnb-accordion__header:focus{-webkit-user-select:none;user-select:none}.dnb-accordion__header *{pointer-events:none}.dnb-accordion__header--prevent-click{pointer-events:none;-webkit-user-select:none;user-select:none}.dnb-accordion__header__wrapper{display:flex;flex-direction:column;margin:var(--accordion-header-margin-vertical) var(--accordion-header-wrapper-margin) var(--accordion-header-margin-vertical) 0;width:100%}.dnb-accordion__header--description .dnb-accordion__header__wrapper{margin-bottom:var(--accordion-header-margin-vertical--description);margin-top:var(--accordion-header-margin-vertical--description)}.dnb-accordion__header__container{margin:0 1rem}.dnb-accordion__header__icon{align-self:flex-start;font-size:var(--font-size-small);line-height:var(--line-height-small);margin:var(--accordion-header-margin-vertical) var(--accordion-header-icon-gutter) var(--accordion-header-margin-vertical) var(--accordion-header-icon-margin);transition:transform .4s var(--accordion-easing)}.dnb-accordion__header--description .dnb-accordion__header__icon{margin-top:var(--accordion-header-margin-vertical--description)}.dnb-accordion__header--icon-right{justify-content:space-between}.dnb-accordion__header--icon-right .dnb-accordion__header__icon{margin-left:var(--accordion-header-icon-gutter);margin-right:var(--accordion-header-icon-margin);order:3}.dnb-accordion__header--icon-right .dnb-accordion__header__container{order:1}.dnb-accordion__header--icon-right .dnb-accordion__header__wrapper{margin-left:var(--accordion-header-wrapper-margin--icon-right);margin-right:0;order:2}.dnb-accordion__header--icon-right .dnb-accordion__header__wrapper+.dnb-accordion__header__container{margin-right:0}.dnb-accordion__header--icon-right .dnb-accordion__header__container+.dnb-accordion__header__wrapper{margin-left:0}.dnb-accordion__header--expanded{--accordion-title-font-weight:var(
2
2
  --accordion-title-font-weight--expanded
3
- )}.dnb-accordion__header__title{font-size:var(--font-size-basis);font-weight:var(--accordion-title-font-weight);line-height:var(--line-height-basis)}.dnb-accordion__header__description{font-size:var(--font-size-small);font-weight:var(--font-weight-basis);line-height:var(--line-height-small)}.dnb-accordion__header__description+.dnb-accordion__header__title,.dnb-accordion__header__title+.dnb-accordion__header__description{margin-top:.25rem}.dnb-accordion--expanded>.dnb-accordion__header .dnb-accordion__header__icon{transform:rotate(-180deg)}.dnb-accordion__content{display:flex;transition:height .4s var(--accordion-easing),opacity .6s var(--accordion-easing);width:100%;will-change:height}.dnb-accordion__content__inner{margin-top:1rem;width:100%}.dnb-accordion__content.dnb-height-animation--hidden .dnb-accordion__content__inner{display:none}.dnb-accordion-group--single-container{transition:min-height 1s var(--accordion-easing)}.dnb-accordion-group--single-container .dnb-accordion{max-width:60rem;position:static}@media screen and (min-width:40em){.dnb-accordion-group--single-container .dnb-accordion__header{width:40%}.dnb-accordion-group--single-container .dnb-accordion__content{margin-left:1rem;transition:opacity 1s var(--accordion-easing)}.dnb-accordion-group--single-container .dnb-accordion__content__inner{margin-top:0}.dnb-accordion-group--single-container .dnb-accordion>.dnb-accordion__header .dnb-accordion__header__icon{transform:rotate(-90deg)}}.dnb-accordion-group--single-container .dnb-accordion-group__children{max-width:60rem}@media screen and (min-width:40em){.dnb-accordion-group--single-container .dnb-accordion-group__children{display:flex;flex-direction:column;position:relative}.dnb-accordion-group--single-container .dnb-accordion-group__children .dnb-accordion__content{position:absolute;right:0;top:0;width:60%;z-index:10}}.dnb-accordion>.dnb-accordion__header--no-animation .dnb-accordion__header__icon,html[data-visual-test] .dnb-accordion .dnb-accordion__header .dnb-accordion__header__icon{transition:none}
3
+ )}.dnb-accordion__header__title{font-size:var(--font-size-basis);font-weight:var(--accordion-title-font-weight);line-height:var(--line-height-basis)}.dnb-accordion__header__description{font-size:var(--font-size-small);font-weight:var(--font-weight-basis);line-height:var(--line-height-small)}.dnb-accordion__header__description+.dnb-accordion__header__title,.dnb-accordion__header__title+.dnb-accordion__header__description{margin-top:.25rem}.dnb-accordion--expanded>.dnb-accordion__header .dnb-accordion__header__icon{transform:rotate(-180deg)}.dnb-accordion__content{display:flex;transition:height .4s var(--accordion-easing),opacity .6s var(--accordion-easing);width:100%;will-change:height}.dnb-accordion__content__inner{margin-top:1rem;width:100%}.dnb-accordion-group--single-container{transition:min-height 1s var(--accordion-easing)}.dnb-accordion-group--single-container .dnb-accordion{max-width:60rem;position:static}@media screen and (min-width:40em){.dnb-accordion-group--single-container .dnb-accordion__header{width:40%}.dnb-accordion-group--single-container .dnb-accordion__content{margin-left:1rem;transition:opacity 1s var(--accordion-easing)}.dnb-accordion-group--single-container .dnb-accordion__content__inner{margin-top:0}.dnb-accordion-group--single-container .dnb-accordion>.dnb-accordion__header .dnb-accordion__header__icon{transform:rotate(-90deg)}}.dnb-accordion-group--single-container .dnb-accordion-group__children{max-width:60rem}@media screen and (min-width:40em){.dnb-accordion-group--single-container .dnb-accordion-group__children{display:flex;flex-direction:column;position:relative}.dnb-accordion-group--single-container .dnb-accordion-group__children .dnb-accordion__content{position:absolute;right:0;top:0;width:60%;z-index:10}}.dnb-accordion>.dnb-accordion__header--no-animation .dnb-accordion__header__icon,html[data-visual-test] .dnb-accordion .dnb-accordion__header .dnb-accordion__header__icon{transition:none}
@@ -157,11 +157,6 @@
157
157
  width: 100%;
158
158
  margin-top: 1rem;
159
159
  }
160
-
161
- // When "prerender" prop is true
162
- &.dnb-height-animation--hidden &__inner {
163
- display: none;
164
- }
165
160
  }
166
161
 
167
162
  &-group--single-container {
@@ -13,6 +13,7 @@ import Context from '../../shared/Context';
13
13
  import BreadcrumbItem from './BreadcrumbItem';
14
14
  import { convertJsxToString, isTrue, validateDOMAttributes, extendPropsWithContext } from '../../shared/component-helper';
15
15
  import { BreadcrumbMultiple } from './BreadcrumbMultiple';
16
+ import { useMedia } from '../../shared';
16
17
  export const defaultProps = {
17
18
  skeleton: false,
18
19
  navText: 'Back',
@@ -52,6 +53,9 @@ const Breadcrumb = localProps => {
52
53
  const skeletonClasses = createSkeletonClass('font', skeleton, context);
53
54
  const spacingClasses = createSpacingClasses(props);
54
55
  const [isCollapsed, setCollapse] = useState(overrideIsCollapsed);
56
+ const {
57
+ isLarge
58
+ } = useMedia();
55
59
  let currentVariant = variant;
56
60
  if (!variant) {
57
61
  if (items || data) {
@@ -63,15 +67,20 @@ const Breadcrumb = localProps => {
63
67
  useEffect(() => {
64
68
  setCollapse(overrideIsCollapsed);
65
69
  }, [overrideIsCollapsed]);
70
+ useEffect(() => {
71
+ if (isLarge && overrideIsCollapsed !== false) {
72
+ setCollapse(true);
73
+ }
74
+ }, [isLarge]);
66
75
  validateDOMAttributes(allProps, props);
67
- const innerSpacing = isTrue(spacing) ? 'small' : spacing;
76
+ const innerSpace = isTrue(spacing) ? 'small' : spacing;
68
77
  return React.createElement("nav", _extends({
69
78
  "aria-label": convertJsxToString(navText),
70
79
  className: classnames(`dnb-breadcrumb dnb-breadcrumb--variant-${currentVariant}`, skeletonClasses, spacingClasses, className)
71
80
  }, props), React.createElement(Section, {
72
81
  className: "dnb-breadcrumb__bar",
73
82
  style_type: styleType || 'transparent',
74
- spacing: innerSpacing
83
+ innerSpace: innerSpace
75
84
  }, currentVariant === 'single' ? React.createElement(Button, {
76
85
  text: goBackText,
77
86
  variant: "tertiary",
@@ -1 +1 @@
1
- {"version":3,"file":"Breadcrumb.js","names":["React","useEffect","useState","classnames","createSkeletonClass","createSpacingClasses","Section","Button","Context","BreadcrumbItem","convertJsxToString","isTrue","validateDOMAttributes","extendPropsWithContext","BreadcrumbMultiple","defaultProps","skeleton","navText","goBackText","homeText","backToText","isCollapsed","styleType","collapsedStyleType","spacing","Breadcrumb","localProps","_context$translation","context","useContext","allProps","translation","className","children","items","variant","onClick","overrideIsCollapsed","noAnimation","data","href","props","_objectWithoutProperties","_excluded","skeletonClasses","spacingClasses","setCollapse","currentVariant","innerSpacing","createElement","_extends","style_type","text","icon","icon_position","Fragment","Item","_supportsSpacingProps"],"sources":["../../../../src/components/breadcrumb/Breadcrumb.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react'\nimport classnames from 'classnames'\n\n// Components\nimport { createSkeletonClass } from '../skeleton/SkeletonHelper'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport Section, {\n SectionSpacing,\n SectionStyleTypes,\n} from '../section/Section'\nimport Button from '../button/Button'\n\n// Shared\nimport Context from '../../shared/Context'\nimport type { SpacingProps } from '../../shared/types'\nimport type { SkeletonShow } from '../skeleton/Skeleton'\n\n// Internal\nimport BreadcrumbItem, { BreadcrumbItemProps } from './BreadcrumbItem'\nimport {\n convertJsxToString,\n isTrue,\n validateDOMAttributes,\n extendPropsWithContext,\n} from '../../shared/component-helper'\nimport { BreadcrumbMultiple } from './BreadcrumbMultiple'\n\nexport type BreadcrumbProps = {\n /**\n * Custom className on the component root\n * Default: null\n */\n className?: string\n\n /**\n * Skeleton should be applied when loading content\n * Default: null\n */\n skeleton?: SkeletonShow\n\n /**\n * Pass in a list of your pages as objects of breadcrumbitem to render them as breadcrumbitems.\n * Default: null\n */\n data?: Array<BreadcrumbItemProps>\n\n /**\n * The content of the component. Can be used instead of prop \"data\".\n * Default: null\n */\n children?:\n | React.ReactElement<BreadcrumbItemProps>\n | Array<React.ReactElement<BreadcrumbItemProps>>\n\n /**\n * The variant of the component.\n * Default: When children and data is not defined, it defaults to \"single\". If they are defined, the variant depends on the viewport.\n */\n variant?: 'single' | 'multiple' | 'collapse'\n\n /**\n * Handle the click event on 'single'/'collapse'\n * Default: null\n */\n onClick?: React.MouseEventHandler<HTMLButtonElement>\n\n /**\n * For variant 'single', use href (or onClick) to set href when clicking \"Back\"\n * Default: null\n */\n href?: string\n\n /**\n * Every <nav> on a page needs an unique aria-label text\n * Default: Page hierarchy\n */\n navText?: React.ReactNode\n\n /**\n * Add custom 'Back' text for variant 'single'\n * Default: 'Back' or defined by Context translation\n */\n goBackText?: React.ReactNode\n\n /**\n * Add custom 'Home' text\n * Default: 'Home' or defined by Context translation\n */\n homeText?: React.ReactNode\n\n /**\n * Add custom 'Back to...' text, for variant collapse\n * Default 'Back to...' or defined by Context translation\n */\n backToText?: React.ReactNode\n\n /**\n * If variant='collapse', you can override isCollapsed for the collapsed content by updating this value.\n * Default: null\n */\n isCollapsed?: boolean\n\n /**\n * Use one of the Section component style types (style_type)\n * Default: transparent\n */\n styleType?: SectionStyleTypes\n\n /**\n * Use one of the Section component style types (style_type)\n * Default: pistachio\n */\n collapsedStyleType?: SectionStyleTypes\n\n /**\n * Include spacing properties from the Section component in breadcrumb. If only `true` is given, the spacing will be `small`.\n * Default: false\n */\n spacing?: SectionSpacing\n\n /**\n * Will disable the height animation\n * Default: false\n */\n noAnimation?: boolean\n}\n\nexport const defaultProps = {\n skeleton: false,\n navText: 'Back',\n goBackText: 'Back',\n homeText: 'Home',\n backToText: 'Back to...',\n isCollapsed: true,\n styleType: 'transparent',\n collapsedStyleType: 'info',\n spacing: false,\n}\n\nconst Breadcrumb = (localProps: BreadcrumbProps & SpacingProps) => {\n // Every component should have a context\n const context = React.useContext(Context)\n\n // Extract additional props from global context\n const allProps = extendPropsWithContext(\n localProps,\n defaultProps,\n context?.translation?.Breadcrumb,\n context?.Breadcrumb,\n { skeleton: context?.skeleton }\n )\n\n const {\n className,\n skeleton,\n children: items,\n variant,\n onClick,\n navText, // has a translation in context\n goBackText, // has a translation in context\n homeText, // eslint-disable-line\n backToText, // has a translation in context\n styleType,\n collapsedStyleType,\n isCollapsed: overrideIsCollapsed,\n spacing,\n noAnimation,\n data,\n href,\n ...props\n } = allProps\n const skeletonClasses = createSkeletonClass('font', skeleton, context)\n const spacingClasses = createSpacingClasses(props)\n\n const [isCollapsed, setCollapse] = useState(overrideIsCollapsed)\n\n let currentVariant = variant\n if (!variant) {\n if (items || data) {\n currentVariant = 'multiple'\n } else {\n currentVariant = 'single'\n }\n }\n\n useEffect(() => {\n setCollapse(overrideIsCollapsed)\n }, [overrideIsCollapsed])\n\n validateDOMAttributes(allProps, props)\n\n const innerSpacing = isTrue(spacing) ? 'small' : spacing\n\n return (\n <nav\n aria-label={convertJsxToString(navText)}\n className={classnames(\n 'dnb-breadcrumb',\n `dnb-breadcrumb--variant-${currentVariant}`,\n skeletonClasses,\n spacingClasses,\n className\n )}\n {...props}\n >\n <Section\n className=\"dnb-breadcrumb__bar\"\n style_type={styleType || 'transparent'}\n spacing={innerSpacing}\n >\n {currentVariant === 'single' ? (\n <Button\n text={goBackText}\n variant=\"tertiary\"\n icon=\"chevron_left\"\n icon_position=\"left\"\n onClick={onClick}\n href={href}\n />\n ) : (\n <>\n <Button\n className=\"dnb-breadcrumb__toggle\"\n text={backToText}\n variant=\"tertiary\"\n icon=\"chevron_left\"\n icon_position=\"left\"\n onClick={\n onClick ||\n (() => {\n setCollapse(!isCollapsed)\n })\n }\n aria-expanded={!isCollapsed}\n />\n\n {currentVariant !== 'collapse' && (\n <BreadcrumbMultiple\n data={data}\n items={items}\n isCollapsed={false}\n noAnimation={noAnimation}\n />\n )}\n </>\n )}\n </Section>\n\n <Section\n variant={collapsedStyleType}\n className=\"dnb-breadcrumb__collapse\"\n >\n <BreadcrumbMultiple\n data={data}\n items={items}\n isCollapsed={isCollapsed}\n noAnimation={noAnimation}\n />\n </Section>\n </nav>\n )\n}\n\nBreadcrumb.Item = BreadcrumbItem\nBreadcrumb._supportsSpacingProps = true\n\nexport { BreadcrumbItem }\nexport default Breadcrumb\n"],"mappings":"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"}
1
+ {"version":3,"file":"Breadcrumb.js","names":["React","useEffect","useState","classnames","createSkeletonClass","createSpacingClasses","Section","Button","Context","BreadcrumbItem","convertJsxToString","isTrue","validateDOMAttributes","extendPropsWithContext","BreadcrumbMultiple","useMedia","defaultProps","skeleton","navText","goBackText","homeText","backToText","isCollapsed","styleType","collapsedStyleType","spacing","Breadcrumb","localProps","_context$translation","context","useContext","allProps","translation","className","children","items","variant","onClick","overrideIsCollapsed","noAnimation","data","href","props","_objectWithoutProperties","_excluded","skeletonClasses","spacingClasses","setCollapse","isLarge","currentVariant","innerSpace","createElement","_extends","style_type","text","icon","icon_position","Fragment","Item","_supportsSpacingProps"],"sources":["../../../../src/components/breadcrumb/Breadcrumb.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react'\nimport classnames from 'classnames'\n\n// Components\nimport { createSkeletonClass } from '../skeleton/SkeletonHelper'\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport Section, {\n SectionSpacing,\n SectionStyleTypes,\n} from '../section/Section'\nimport Button from '../button/Button'\n\n// Shared\nimport Context from '../../shared/Context'\nimport type { SpacingProps } from '../../shared/types'\nimport type { SkeletonShow } from '../skeleton/Skeleton'\n\n// Internal\nimport BreadcrumbItem, { BreadcrumbItemProps } from './BreadcrumbItem'\nimport {\n convertJsxToString,\n isTrue,\n validateDOMAttributes,\n extendPropsWithContext,\n} from '../../shared/component-helper'\nimport { BreadcrumbMultiple } from './BreadcrumbMultiple'\nimport { useMedia } from '../../shared'\n\nexport type BreadcrumbProps = {\n /**\n * Custom className on the component root\n * Default: null\n */\n className?: string\n\n /**\n * Skeleton should be applied when loading content\n * Default: null\n */\n skeleton?: SkeletonShow\n\n /**\n * Pass in a list of your pages as objects of breadcrumbitem to render them as breadcrumbitems.\n * Default: null\n */\n data?: Array<BreadcrumbItemProps>\n\n /**\n * The content of the component. Can be used instead of prop \"data\".\n * Default: null\n */\n children?:\n | React.ReactElement<BreadcrumbItemProps>\n | Array<React.ReactElement<BreadcrumbItemProps>>\n\n /**\n * The variant of the component.\n * Default: When children and data is not defined, it defaults to \"single\". If they are defined, the variant depends on the viewport.\n */\n variant?: 'single' | 'multiple' | 'collapse'\n\n /**\n * Handle the click event on 'single'/'collapse'\n * Default: null\n */\n onClick?: React.MouseEventHandler<HTMLButtonElement>\n\n /**\n * For variant 'single', use href (or onClick) to set href when clicking \"Back\"\n * Default: null\n */\n href?: string\n\n /**\n * Every <nav> on a page needs an unique aria-label text\n * Default: Page hierarchy\n */\n navText?: React.ReactNode\n\n /**\n * Add custom 'Back' text for variant 'single'\n * Default: 'Back' or defined by Context translation\n */\n goBackText?: React.ReactNode\n\n /**\n * Add custom 'Home' text\n * Default: 'Home' or defined by Context translation\n */\n homeText?: React.ReactNode\n\n /**\n * Add custom 'Back to...' text, for variant collapse\n * Default 'Back to...' or defined by Context translation\n */\n backToText?: React.ReactNode\n\n /**\n * If variant='collapse', you can override isCollapsed for the collapsed content by updating this value.\n * Default: null\n */\n isCollapsed?: boolean\n\n /**\n * Use one of the Section component style types (style_type)\n * Default: transparent\n */\n styleType?: SectionStyleTypes\n\n /**\n * Use one of the Section component style types (style_type)\n * Default: pistachio\n */\n collapsedStyleType?: SectionStyleTypes\n\n /**\n * Include spacing properties from the Section component in breadcrumb. If only `true` is given, the spacing will be `small`.\n * Default: false\n */\n spacing?: SectionSpacing\n\n /**\n * Will disable the height animation\n * Default: false\n */\n noAnimation?: boolean\n}\n\nexport const defaultProps = {\n skeleton: false,\n navText: 'Back',\n goBackText: 'Back',\n homeText: 'Home',\n backToText: 'Back to...',\n isCollapsed: true,\n styleType: 'transparent',\n collapsedStyleType: 'info',\n spacing: false,\n}\n\nconst Breadcrumb = (localProps: BreadcrumbProps & SpacingProps) => {\n // Every component should have a context\n const context = React.useContext(Context)\n\n // Extract additional props from global context\n const allProps = extendPropsWithContext(\n localProps,\n defaultProps,\n context?.translation?.Breadcrumb,\n context?.Breadcrumb,\n { skeleton: context?.skeleton }\n )\n\n const {\n className,\n skeleton,\n children: items,\n variant,\n onClick,\n navText, // has a translation in context\n goBackText, // has a translation in context\n homeText, // eslint-disable-line\n backToText, // has a translation in context\n styleType,\n collapsedStyleType,\n isCollapsed: overrideIsCollapsed,\n spacing,\n noAnimation,\n data,\n href,\n ...props\n } = allProps\n const skeletonClasses = createSkeletonClass('font', skeleton, context)\n const spacingClasses = createSpacingClasses(props)\n\n const [isCollapsed, setCollapse] = useState(overrideIsCollapsed)\n\n const { isLarge } = useMedia()\n\n let currentVariant = variant\n if (!variant) {\n if (items || data) {\n currentVariant = 'multiple'\n } else {\n currentVariant = 'single'\n }\n }\n\n useEffect(() => {\n setCollapse(overrideIsCollapsed)\n }, [overrideIsCollapsed])\n\n // Auto-collapse breadcrumbs if going from small screen to large screen.\n useEffect(() => {\n if (isLarge && overrideIsCollapsed !== false) {\n setCollapse(true)\n }\n }, [isLarge])\n\n validateDOMAttributes(allProps, props)\n\n const innerSpace = isTrue(spacing) ? 'small' : spacing\n\n return (\n <nav\n aria-label={convertJsxToString(navText)}\n className={classnames(\n 'dnb-breadcrumb',\n `dnb-breadcrumb--variant-${currentVariant}`,\n skeletonClasses,\n spacingClasses,\n className\n )}\n {...props}\n >\n <Section\n className=\"dnb-breadcrumb__bar\"\n style_type={styleType || 'transparent'}\n innerSpace={innerSpace}\n >\n {currentVariant === 'single' ? (\n <Button\n text={goBackText}\n variant=\"tertiary\"\n icon=\"chevron_left\"\n icon_position=\"left\"\n onClick={onClick}\n href={href}\n />\n ) : (\n <>\n <Button\n className=\"dnb-breadcrumb__toggle\"\n text={backToText}\n variant=\"tertiary\"\n icon=\"chevron_left\"\n icon_position=\"left\"\n onClick={\n onClick ||\n (() => {\n setCollapse(!isCollapsed)\n })\n }\n aria-expanded={!isCollapsed}\n />\n\n {currentVariant !== 'collapse' && (\n <BreadcrumbMultiple\n data={data}\n items={items}\n isCollapsed={false}\n noAnimation={noAnimation}\n />\n )}\n </>\n )}\n </Section>\n\n <Section\n variant={collapsedStyleType}\n className=\"dnb-breadcrumb__collapse\"\n >\n <BreadcrumbMultiple\n data={data}\n items={items}\n isCollapsed={isCollapsed}\n noAnimation={noAnimation}\n />\n </Section>\n </nav>\n )\n}\n\nBreadcrumb.Item = BreadcrumbItem\nBreadcrumb._supportsSpacingProps = true\n\nexport { BreadcrumbItem }\nexport default Breadcrumb\n"],"mappings":"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"}
@@ -23,7 +23,7 @@ const defaultProps = {
23
23
  const determineSbankenIcon = (variant, isSmallScreen) => {
24
24
  switch (variant) {
25
25
  case 'home':
26
- return homeIcon;
26
+ return 'home-icon';
27
27
  case 'single':
28
28
  case 'collapse':
29
29
  return 'chevron_left';
@@ -58,13 +58,15 @@ const BreadcrumbItem = localProps => {
58
58
  max: 'medium'
59
59
  }
60
60
  });
61
- const [currentIcon, setCurrentIcon] = React.useState(null);
61
+ const [currentIcon, setCurrentIcon] = React.useState('chevron_left');
62
62
  useLayoutEffect(() => {
63
63
  if (!icon && (theme === null || theme === void 0 ? void 0 : theme.name) === 'sbanken') {
64
- const currentIcon = determineSbankenIcon(variant, isSmallScreen);
65
- setCurrentIcon(currentIcon);
64
+ const icon = determineSbankenIcon(variant, isSmallScreen);
65
+ setCurrentIcon(icon);
66
66
  } else {
67
- setCurrentIcon(icon || variant === 'home' && homeIcon || 'chevron_left');
67
+ if (variant !== 'home') {
68
+ setCurrentIcon(icon !== null && icon !== void 0 ? icon : 'chevron_left');
69
+ }
68
70
  }
69
71
  }, [icon, isSmallScreen, theme === null || theme === void 0 ? void 0 : theme.name, variant]);
70
72
  const currentText = text || variant === 'home' && homeText || '';
@@ -72,6 +74,7 @@ const BreadcrumbItem = localProps => {
72
74
  const style = {
73
75
  '--delay': String(itemNr)
74
76
  };
77
+ const iconToUse = variant === 'home' || currentIcon === 'home-icon' ? homeIcon : currentIcon;
75
78
  return React.createElement("li", {
76
79
  className: "dnb-breadcrumb__item",
77
80
  "aria-current": variant === 'current' ? 'page' : undefined,
@@ -79,15 +82,15 @@ const BreadcrumbItem = localProps => {
79
82
  }, isInteractive ? React.createElement(Button, _extends({
80
83
  variant: "tertiary",
81
84
  href: href,
82
- icon: currentIcon,
85
+ icon: iconToUse,
83
86
  icon_position: "left",
84
87
  on_click: onClick,
85
88
  text: currentText,
86
89
  skeleton: skeleton
87
90
  }, props)) : React.createElement("span", _extends({
88
91
  className: "dnb-breadcrumb__item__span"
89
- }, filterProps(props, key => !key.includes('-'))), currentIcon && React.createElement(IconPrimary, {
90
- icon: currentIcon,
92
+ }, filterProps(props, key => !key.includes('-'))), React.createElement(IconPrimary, {
93
+ icon: iconToUse,
91
94
  className: "dnb-breadcrumb__item__span__icon"
92
95
  }), React.createElement(P, {
93
96
  space: "0"