@dnb/eufemia 10.75.1 → 10.75.3

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 (689) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/cjs/components/accordion/Accordion.js +2 -3
  3. package/cjs/components/accordion/Accordion.js.map +1 -1
  4. package/cjs/components/accordion/AccordionContext.d.ts +0 -4
  5. package/cjs/components/accordion/AccordionContext.js.map +1 -1
  6. package/cjs/components/accordion/AccordionGroup.js +1 -3
  7. package/cjs/components/accordion/AccordionGroup.js.map +1 -1
  8. package/cjs/components/accordion/AccordionProviderContext.d.ts +0 -4
  9. package/cjs/components/accordion/AccordionProviderContext.js +3 -1
  10. package/cjs/components/accordion/AccordionProviderContext.js.map +1 -1
  11. package/cjs/components/accordion/AccordionStore.js +1 -2
  12. package/cjs/components/accordion/AccordionStore.js.map +1 -1
  13. package/cjs/components/accordion/style/dnb-accordion.css +0 -6
  14. package/cjs/components/accordion/style/dnb-accordion.min.css +1 -1
  15. package/cjs/components/accordion/style/dnb-accordion.scss +0 -5
  16. package/cjs/components/autocomplete/Autocomplete.d.ts +1 -1
  17. package/cjs/components/autocomplete/Autocomplete.js +2 -2
  18. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  19. package/cjs/components/autocomplete/AutocompleteDocs.js +1 -1
  20. package/cjs/components/autocomplete/AutocompleteDocs.js.map +1 -1
  21. package/cjs/components/button/Button.js +8 -7
  22. package/cjs/components/button/Button.js.map +1 -1
  23. package/cjs/components/date-picker/DatePickerDocs.js +3 -3
  24. package/cjs/components/date-picker/DatePickerDocs.js.map +1 -1
  25. package/cjs/components/date-picker/DatePickerInput.js +2 -2
  26. package/cjs/components/date-picker/DatePickerInput.js.map +1 -1
  27. package/cjs/components/date-picker/style/dnb-date-picker.css +0 -1
  28. package/cjs/components/date-picker/style/dnb-date-picker.min.css +1 -1
  29. package/cjs/components/dialog/style/dnb-dialog.css +0 -4
  30. package/cjs/components/dialog/style/dnb-dialog.min.css +1 -1
  31. package/cjs/components/dialog/style/dnb-dialog.scss +0 -5
  32. package/cjs/components/drawer/DrawerDocs.js +2 -2
  33. package/cjs/components/drawer/DrawerDocs.js.map +1 -1
  34. package/cjs/components/drawer/style/dnb-drawer.css +0 -4
  35. package/cjs/components/drawer/style/dnb-drawer.min.css +1 -1
  36. package/cjs/components/drawer/style/dnb-drawer.scss +0 -5
  37. package/cjs/components/dropdown/Dropdown.js +1 -1
  38. package/cjs/components/dropdown/Dropdown.js.map +1 -1
  39. package/cjs/components/form-label/style/dnb-form-label.css +0 -1
  40. package/cjs/components/form-label/style/dnb-form-label.min.css +1 -1
  41. package/cjs/components/form-row/FormRow.d.ts +1 -1
  42. package/cjs/components/form-row/FormRowDocs.js +1 -1
  43. package/cjs/components/form-row/FormRowDocs.js.map +1 -1
  44. package/cjs/components/input-masked/style/dnb-input-masked.css +0 -1
  45. package/cjs/components/input-masked/style/dnb-input-masked.min.css +1 -1
  46. package/cjs/components/list-format/ListFormatDocs.js +2 -2
  47. package/cjs/components/list-format/ListFormatDocs.js.map +1 -1
  48. package/cjs/components/modal/style/dnb-modal.css +0 -4
  49. package/cjs/components/modal/style/dnb-modal.min.css +1 -1
  50. package/cjs/components/modal/style/dnb-modal.scss +0 -5
  51. package/cjs/components/pagination/PaginationDocs.js +2 -2
  52. package/cjs/components/pagination/PaginationDocs.js.map +1 -1
  53. package/cjs/components/slider/SliderDocs.js +1 -1
  54. package/cjs/components/slider/SliderDocs.js.map +1 -1
  55. package/cjs/components/step-indicator/StepIndicatorDocs.js +4 -4
  56. package/cjs/components/step-indicator/StepIndicatorDocs.js.map +1 -1
  57. package/cjs/components/timeline/TimelineItem.js +5 -5
  58. package/cjs/components/timeline/TimelineItem.js.map +1 -1
  59. package/cjs/components/toggle-button/ToggleButton.d.ts +1 -1
  60. package/cjs/components/toggle-button/ToggleButtonDocs.js +2 -2
  61. package/cjs/components/toggle-button/ToggleButtonDocs.js.map +1 -1
  62. package/cjs/components/upload/Upload.js +5 -2
  63. package/cjs/components/upload/Upload.js.map +1 -1
  64. package/cjs/components/upload/UploadFileInput.d.ts +2 -1
  65. package/cjs/components/upload/UploadFileInput.js +7 -4
  66. package/cjs/components/upload/UploadFileInput.js.map +1 -1
  67. package/cjs/components/upload/style/dnb-upload.css +0 -1
  68. package/cjs/components/upload/style/dnb-upload.min.css +1 -1
  69. package/cjs/core/jest/jestSetupScreenshots.css +6 -0
  70. package/cjs/extensions/forms/DataContext/Context.d.ts +5 -2
  71. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  72. package/cjs/extensions/forms/DataContext/Provider/Provider.js +22 -4
  73. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  74. package/cjs/extensions/forms/DataContext/Provider/useEventListener.d.ts +3 -0
  75. package/cjs/extensions/forms/DataContext/Provider/useEventListener.js +29 -0
  76. package/cjs/extensions/forms/DataContext/Provider/useEventListener.js.map +1 -0
  77. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js +8 -2
  78. package/cjs/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js.map +1 -1
  79. package/cjs/extensions/forms/Field/Date/Date.js +10 -4
  80. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  81. package/cjs/extensions/forms/Field/Indeterminate/Indeterminate.js +4 -2
  82. package/cjs/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
  83. package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.d.ts +1 -0
  84. package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.js +12 -5
  85. package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  86. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js +8 -2
  87. package/cjs/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js.map +1 -1
  88. package/cjs/extensions/forms/Field/Number/NumberDocs.js +1 -1
  89. package/cjs/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
  90. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js +8 -2
  91. package/cjs/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js.map +1 -1
  92. package/cjs/extensions/forms/Field/Password/PasswordDocs.js +8 -2
  93. package/cjs/extensions/forms/Field/Password/PasswordDocs.js.map +1 -1
  94. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +1 -1
  95. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  96. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js +9 -0
  97. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js.map +1 -1
  98. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +1 -1
  99. package/cjs/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -1
  100. package/cjs/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
  101. package/cjs/extensions/forms/Field/Selection/SelectionDocs.js +1 -1
  102. package/cjs/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
  103. package/cjs/extensions/forms/Field/String/StringDocs.js +7 -7
  104. package/cjs/extensions/forms/Field/String/StringDocs.js.map +1 -1
  105. package/cjs/extensions/forms/Field/Toggle/Toggle.js +2 -2
  106. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  107. package/cjs/extensions/forms/Field/Upload/Upload.d.ts +1 -1
  108. package/cjs/extensions/forms/Field/Upload/Upload.js +3 -1
  109. package/cjs/extensions/forms/Field/Upload/Upload.js.map +1 -1
  110. package/cjs/extensions/forms/Field/Upload/UploadDocs.js.map +1 -1
  111. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +2 -2
  112. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  113. package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.js +1 -1
  114. package/cjs/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
  115. package/cjs/extensions/forms/Form/Isolation/IsolatedContainer.js +4 -6
  116. package/cjs/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -1
  117. package/cjs/extensions/forms/Form/Isolation/Isolation.js +2 -3
  118. package/cjs/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  119. package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +4 -2
  120. package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.js +20 -4
  121. package/cjs/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -1
  122. package/cjs/extensions/forms/Form/Isolation/IsolationDocs.js +1 -1
  123. package/cjs/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  124. package/cjs/extensions/forms/Form/Isolation/IsolationResetButton.js +2 -1
  125. package/cjs/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -1
  126. package/cjs/extensions/forms/Form/Isolation/useDataContextSnapshot.js +15 -8
  127. package/cjs/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -1
  128. package/cjs/extensions/forms/Form/Isolation/useHandleStatus.d.ts +2 -1
  129. package/cjs/extensions/forms/Form/Isolation/useHandleStatus.js +10 -3
  130. package/cjs/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -1
  131. package/cjs/extensions/forms/Form/Isolation/useHasContentChanged.d.ts +3 -1
  132. package/cjs/extensions/forms/Form/Isolation/useHasContentChanged.js +4 -1
  133. package/cjs/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -1
  134. package/cjs/extensions/forms/Form/Isolation/useReportError.d.ts +1 -1
  135. package/cjs/extensions/forms/Form/Isolation/useReportError.js +22 -7
  136. package/cjs/extensions/forms/Form/Isolation/useReportError.js.map +1 -1
  137. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +6 -6
  138. package/cjs/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
  139. package/cjs/extensions/forms/Iterate/EditContainer/ResetButton.js +3 -1
  140. package/cjs/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
  141. package/cjs/extensions/forms/Iterate/ItemNo/{useIItemNo.js → useIterateItemNo.js} +2 -2
  142. package/cjs/extensions/forms/Iterate/ItemNo/useIterateItemNo.js.map +1 -0
  143. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +3 -1
  144. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js +7 -3
  145. package/cjs/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  146. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +6 -1
  147. package/cjs/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  148. package/cjs/extensions/forms/Tools/Errors.d.ts +5 -0
  149. package/cjs/extensions/forms/Tools/Errors.js +46 -0
  150. package/cjs/extensions/forms/Tools/Errors.js.map +1 -0
  151. package/cjs/extensions/forms/Tools/index.d.ts +1 -0
  152. package/cjs/extensions/forms/Tools/index.js +7 -0
  153. package/cjs/extensions/forms/Tools/index.js.map +1 -1
  154. package/cjs/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js +2 -4
  155. package/cjs/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js.map +1 -1
  156. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +11 -5
  157. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  158. package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  159. package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  160. package/cjs/extensions/forms/Wizard/Context/WizardContext.d.ts +2 -1
  161. package/cjs/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  162. package/cjs/extensions/forms/Wizard/Step/Step.js +1 -1
  163. package/cjs/extensions/forms/Wizard/Step/Step.js.map +1 -1
  164. package/cjs/extensions/forms/Wizard/hooks/useStep.js +13 -5
  165. package/cjs/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  166. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +4 -3
  167. package/cjs/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  168. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  169. package/cjs/extensions/forms/constants/locales/en-GB.js +2 -1
  170. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
  171. package/cjs/extensions/forms/constants/locales/en-US.d.ts +1 -0
  172. package/cjs/extensions/forms/constants/locales/index.d.ts +2 -0
  173. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  174. package/cjs/extensions/forms/constants/locales/nb-NO.js +2 -1
  175. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  176. package/cjs/extensions/forms/constants/locales/sv-SE.d.ts +1 -0
  177. package/cjs/extensions/forms/constants/locales/sv-SE.js +2 -1
  178. package/cjs/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  179. package/cjs/extensions/forms/hooks/useFieldProps.js +6 -6
  180. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  181. package/cjs/extensions/payment-card/PaymentCard.js +8 -1
  182. package/cjs/extensions/payment-card/PaymentCard.js.map +1 -1
  183. package/cjs/extensions/payment-card/icons/brandLogos/DNB.js +2 -2
  184. package/cjs/extensions/payment-card/icons/brandLogos/DNB.js.map +1 -1
  185. package/cjs/extensions/payment-card/icons/providers/BankAxept.js +2 -2
  186. package/cjs/extensions/payment-card/icons/providers/BankAxept.js.map +1 -1
  187. package/cjs/extensions/payment-card/icons/providers/ClickToPay.js +2 -2
  188. package/cjs/extensions/payment-card/icons/providers/ClickToPay.js.map +1 -1
  189. package/cjs/extensions/payment-card/icons/providers/MastercardDefault.js +2 -2
  190. package/cjs/extensions/payment-card/icons/providers/MastercardDefault.js.map +1 -1
  191. package/cjs/extensions/payment-card/icons/providers/VisaDefault.js +2 -2
  192. package/cjs/extensions/payment-card/icons/providers/VisaDefault.js.map +1 -1
  193. package/cjs/extensions/payment-card/icons/providers/VisaPlatinum.js +2 -2
  194. package/cjs/extensions/payment-card/icons/providers/VisaPlatinum.js.map +1 -1
  195. package/cjs/fragments/drawer-list/DrawerListHelpers.js +2 -1
  196. package/cjs/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  197. package/cjs/shared/AlignmentHelper.d.ts +14 -8
  198. package/cjs/shared/AlignmentHelper.js +4 -8
  199. package/cjs/shared/AlignmentHelper.js.map +1 -1
  200. package/cjs/shared/BuildInfo.d.cts +2 -0
  201. package/cjs/shared/BuildInfo.js +5 -0
  202. package/cjs/shared/BuildInfo.js.map +1 -0
  203. package/cjs/shared/Eufemia.d.ts +14 -1
  204. package/cjs/shared/Eufemia.js +31 -3
  205. package/cjs/shared/Eufemia.js.map +1 -1
  206. package/cjs/shared/helpers/runCssVersionMismatchWarning.d.ts +0 -7
  207. package/cjs/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
  208. package/cjs/shared/useMedia.js +66 -55
  209. package/cjs/shared/useMedia.js.map +1 -1
  210. package/cjs/style/core/helper-classes/helper-classes.scss +3 -0
  211. package/cjs/style/core/scopes.scss +1 -1
  212. package/cjs/style/core/utilities.scss +3 -1
  213. package/cjs/style/dnb-ui-basis.css +13 -2
  214. package/cjs/style/dnb-ui-basis.min.css +1 -1
  215. package/cjs/style/dnb-ui-body.css +1 -2
  216. package/cjs/style/dnb-ui-body.min.css +1 -1
  217. package/cjs/style/dnb-ui-components.css +0 -22
  218. package/cjs/style/dnb-ui-components.min.css +3 -3
  219. package/cjs/style/dnb-ui-core.css +13 -3
  220. package/cjs/style/dnb-ui-core.min.css +1 -1
  221. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +0 -22
  222. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -3
  223. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +0 -22
  224. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  225. package/cjs/style/themes/theme-ui/ui-theme-components.css +0 -22
  226. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  227. package/components/accordion/Accordion.js +2 -3
  228. package/components/accordion/Accordion.js.map +1 -1
  229. package/components/accordion/AccordionContext.d.ts +0 -4
  230. package/components/accordion/AccordionContext.js.map +1 -1
  231. package/components/accordion/AccordionGroup.js +1 -3
  232. package/components/accordion/AccordionGroup.js.map +1 -1
  233. package/components/accordion/AccordionProviderContext.d.ts +0 -4
  234. package/components/accordion/AccordionProviderContext.js +3 -1
  235. package/components/accordion/AccordionProviderContext.js.map +1 -1
  236. package/components/accordion/AccordionStore.js +1 -2
  237. package/components/accordion/AccordionStore.js.map +1 -1
  238. package/components/accordion/style/dnb-accordion.css +0 -6
  239. package/components/accordion/style/dnb-accordion.min.css +1 -1
  240. package/components/accordion/style/dnb-accordion.scss +0 -5
  241. package/components/autocomplete/Autocomplete.d.ts +1 -1
  242. package/components/autocomplete/Autocomplete.js +2 -2
  243. package/components/autocomplete/Autocomplete.js.map +1 -1
  244. package/components/autocomplete/AutocompleteDocs.js +1 -1
  245. package/components/autocomplete/AutocompleteDocs.js.map +1 -1
  246. package/components/button/Button.js +8 -7
  247. package/components/button/Button.js.map +1 -1
  248. package/components/date-picker/DatePickerDocs.js +3 -3
  249. package/components/date-picker/DatePickerDocs.js.map +1 -1
  250. package/components/date-picker/DatePickerInput.js +2 -2
  251. package/components/date-picker/DatePickerInput.js.map +1 -1
  252. package/components/date-picker/style/dnb-date-picker.css +0 -1
  253. package/components/date-picker/style/dnb-date-picker.min.css +1 -1
  254. package/components/dialog/style/dnb-dialog.css +0 -4
  255. package/components/dialog/style/dnb-dialog.min.css +1 -1
  256. package/components/dialog/style/dnb-dialog.scss +0 -5
  257. package/components/drawer/DrawerDocs.js +2 -2
  258. package/components/drawer/DrawerDocs.js.map +1 -1
  259. package/components/drawer/style/dnb-drawer.css +0 -4
  260. package/components/drawer/style/dnb-drawer.min.css +1 -1
  261. package/components/drawer/style/dnb-drawer.scss +0 -5
  262. package/components/dropdown/Dropdown.js +2 -2
  263. package/components/dropdown/Dropdown.js.map +1 -1
  264. package/components/form-label/style/dnb-form-label.css +0 -1
  265. package/components/form-label/style/dnb-form-label.min.css +1 -1
  266. package/components/form-row/FormRow.d.ts +1 -1
  267. package/components/form-row/FormRowDocs.js +1 -1
  268. package/components/form-row/FormRowDocs.js.map +1 -1
  269. package/components/input-masked/style/dnb-input-masked.css +0 -1
  270. package/components/input-masked/style/dnb-input-masked.min.css +1 -1
  271. package/components/list-format/ListFormatDocs.js +2 -2
  272. package/components/list-format/ListFormatDocs.js.map +1 -1
  273. package/components/modal/style/dnb-modal.css +0 -4
  274. package/components/modal/style/dnb-modal.min.css +1 -1
  275. package/components/modal/style/dnb-modal.scss +0 -5
  276. package/components/pagination/PaginationDocs.js +2 -2
  277. package/components/pagination/PaginationDocs.js.map +1 -1
  278. package/components/slider/SliderDocs.js +1 -1
  279. package/components/slider/SliderDocs.js.map +1 -1
  280. package/components/step-indicator/StepIndicatorDocs.js +4 -4
  281. package/components/step-indicator/StepIndicatorDocs.js.map +1 -1
  282. package/components/timeline/TimelineItem.js +5 -5
  283. package/components/timeline/TimelineItem.js.map +1 -1
  284. package/components/toggle-button/ToggleButton.d.ts +1 -1
  285. package/components/toggle-button/ToggleButtonDocs.js +2 -2
  286. package/components/toggle-button/ToggleButtonDocs.js.map +1 -1
  287. package/components/upload/Upload.js +5 -2
  288. package/components/upload/Upload.js.map +1 -1
  289. package/components/upload/UploadFileInput.d.ts +2 -1
  290. package/components/upload/UploadFileInput.js +7 -4
  291. package/components/upload/UploadFileInput.js.map +1 -1
  292. package/components/upload/style/dnb-upload.css +0 -1
  293. package/components/upload/style/dnb-upload.min.css +1 -1
  294. package/core/jest/jestSetupScreenshots.css +6 -0
  295. package/es/components/accordion/Accordion.js +2 -3
  296. package/es/components/accordion/Accordion.js.map +1 -1
  297. package/es/components/accordion/AccordionContext.d.ts +0 -4
  298. package/es/components/accordion/AccordionContext.js.map +1 -1
  299. package/es/components/accordion/AccordionGroup.js +1 -3
  300. package/es/components/accordion/AccordionGroup.js.map +1 -1
  301. package/es/components/accordion/AccordionProviderContext.d.ts +0 -4
  302. package/es/components/accordion/AccordionProviderContext.js +3 -1
  303. package/es/components/accordion/AccordionProviderContext.js.map +1 -1
  304. package/es/components/accordion/AccordionStore.js +1 -2
  305. package/es/components/accordion/AccordionStore.js.map +1 -1
  306. package/es/components/accordion/style/dnb-accordion.css +0 -6
  307. package/es/components/accordion/style/dnb-accordion.min.css +1 -1
  308. package/es/components/accordion/style/dnb-accordion.scss +0 -5
  309. package/es/components/autocomplete/Autocomplete.d.ts +1 -1
  310. package/es/components/autocomplete/Autocomplete.js +2 -2
  311. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  312. package/es/components/autocomplete/AutocompleteDocs.js +1 -1
  313. package/es/components/autocomplete/AutocompleteDocs.js.map +1 -1
  314. package/es/components/button/Button.js +8 -7
  315. package/es/components/button/Button.js.map +1 -1
  316. package/es/components/date-picker/DatePickerDocs.js +3 -3
  317. package/es/components/date-picker/DatePickerDocs.js.map +1 -1
  318. package/es/components/date-picker/DatePickerInput.js +2 -2
  319. package/es/components/date-picker/DatePickerInput.js.map +1 -1
  320. package/es/components/date-picker/style/dnb-date-picker.css +0 -1
  321. package/es/components/date-picker/style/dnb-date-picker.min.css +1 -1
  322. package/es/components/dialog/style/dnb-dialog.css +0 -4
  323. package/es/components/dialog/style/dnb-dialog.min.css +1 -1
  324. package/es/components/dialog/style/dnb-dialog.scss +0 -5
  325. package/es/components/drawer/DrawerDocs.js +2 -2
  326. package/es/components/drawer/DrawerDocs.js.map +1 -1
  327. package/es/components/drawer/style/dnb-drawer.css +0 -4
  328. package/es/components/drawer/style/dnb-drawer.min.css +1 -1
  329. package/es/components/drawer/style/dnb-drawer.scss +0 -5
  330. package/es/components/dropdown/Dropdown.js +2 -2
  331. package/es/components/dropdown/Dropdown.js.map +1 -1
  332. package/es/components/form-label/style/dnb-form-label.css +0 -1
  333. package/es/components/form-label/style/dnb-form-label.min.css +1 -1
  334. package/es/components/form-row/FormRow.d.ts +1 -1
  335. package/es/components/form-row/FormRowDocs.js +1 -1
  336. package/es/components/form-row/FormRowDocs.js.map +1 -1
  337. package/es/components/input-masked/style/dnb-input-masked.css +0 -1
  338. package/es/components/input-masked/style/dnb-input-masked.min.css +1 -1
  339. package/es/components/list-format/ListFormatDocs.js +2 -2
  340. package/es/components/list-format/ListFormatDocs.js.map +1 -1
  341. package/es/components/modal/style/dnb-modal.css +0 -4
  342. package/es/components/modal/style/dnb-modal.min.css +1 -1
  343. package/es/components/modal/style/dnb-modal.scss +0 -5
  344. package/es/components/pagination/PaginationDocs.js +2 -2
  345. package/es/components/pagination/PaginationDocs.js.map +1 -1
  346. package/es/components/slider/SliderDocs.js +1 -1
  347. package/es/components/slider/SliderDocs.js.map +1 -1
  348. package/es/components/step-indicator/StepIndicatorDocs.js +4 -4
  349. package/es/components/step-indicator/StepIndicatorDocs.js.map +1 -1
  350. package/es/components/timeline/TimelineItem.js +5 -5
  351. package/es/components/timeline/TimelineItem.js.map +1 -1
  352. package/es/components/toggle-button/ToggleButton.d.ts +1 -1
  353. package/es/components/toggle-button/ToggleButtonDocs.js +2 -2
  354. package/es/components/toggle-button/ToggleButtonDocs.js.map +1 -1
  355. package/es/components/upload/Upload.js +5 -2
  356. package/es/components/upload/Upload.js.map +1 -1
  357. package/es/components/upload/UploadFileInput.d.ts +2 -1
  358. package/es/components/upload/UploadFileInput.js +7 -4
  359. package/es/components/upload/UploadFileInput.js.map +1 -1
  360. package/es/components/upload/style/dnb-upload.css +0 -1
  361. package/es/components/upload/style/dnb-upload.min.css +1 -1
  362. package/es/core/jest/jestSetupScreenshots.css +6 -0
  363. package/es/extensions/forms/DataContext/Context.d.ts +5 -2
  364. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  365. package/es/extensions/forms/DataContext/Provider/Provider.js +22 -4
  366. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  367. package/es/extensions/forms/DataContext/Provider/useEventListener.d.ts +3 -0
  368. package/es/extensions/forms/DataContext/Provider/useEventListener.js +22 -0
  369. package/es/extensions/forms/DataContext/Provider/useEventListener.js.map +1 -0
  370. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js +6 -2
  371. package/es/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js.map +1 -1
  372. package/es/extensions/forms/Field/Date/Date.js +10 -4
  373. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  374. package/es/extensions/forms/Field/Indeterminate/Indeterminate.js +4 -2
  375. package/es/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
  376. package/es/extensions/forms/Field/Indeterminate/useDependencePaths.d.ts +1 -0
  377. package/es/extensions/forms/Field/Indeterminate/useDependencePaths.js +12 -5
  378. package/es/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  379. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js +6 -2
  380. package/es/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js.map +1 -1
  381. package/es/extensions/forms/Field/Number/NumberDocs.js +1 -1
  382. package/es/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
  383. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js +6 -2
  384. package/es/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js.map +1 -1
  385. package/es/extensions/forms/Field/Password/PasswordDocs.js +6 -2
  386. package/es/extensions/forms/Field/Password/PasswordDocs.js.map +1 -1
  387. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +1 -1
  388. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  389. package/es/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js +7 -0
  390. package/es/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js.map +1 -1
  391. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +1 -1
  392. package/es/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -1
  393. package/es/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
  394. package/es/extensions/forms/Field/Selection/SelectionDocs.js +1 -1
  395. package/es/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
  396. package/es/extensions/forms/Field/String/StringDocs.js +7 -7
  397. package/es/extensions/forms/Field/String/StringDocs.js.map +1 -1
  398. package/es/extensions/forms/Field/Toggle/Toggle.js +1 -1
  399. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  400. package/es/extensions/forms/Field/Upload/Upload.d.ts +1 -1
  401. package/es/extensions/forms/Field/Upload/Upload.js +3 -1
  402. package/es/extensions/forms/Field/Upload/Upload.js.map +1 -1
  403. package/es/extensions/forms/Field/Upload/UploadDocs.js.map +1 -1
  404. package/es/extensions/forms/FieldBlock/FieldBlock.js +1 -1
  405. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  406. package/es/extensions/forms/FieldBlock/FieldBlockDocs.js +1 -1
  407. package/es/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
  408. package/es/extensions/forms/Form/Isolation/IsolatedContainer.js +4 -6
  409. package/es/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -1
  410. package/es/extensions/forms/Form/Isolation/Isolation.js +2 -3
  411. package/es/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  412. package/es/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +4 -2
  413. package/es/extensions/forms/Form/Isolation/IsolationDataReference.js +18 -4
  414. package/es/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -1
  415. package/es/extensions/forms/Form/Isolation/IsolationDocs.js +1 -1
  416. package/es/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  417. package/es/extensions/forms/Form/Isolation/IsolationResetButton.js +2 -1
  418. package/es/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -1
  419. package/es/extensions/forms/Form/Isolation/useDataContextSnapshot.js +14 -8
  420. package/es/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -1
  421. package/es/extensions/forms/Form/Isolation/useHandleStatus.d.ts +2 -1
  422. package/es/extensions/forms/Form/Isolation/useHandleStatus.js +10 -3
  423. package/es/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -1
  424. package/es/extensions/forms/Form/Isolation/useHasContentChanged.d.ts +3 -1
  425. package/es/extensions/forms/Form/Isolation/useHasContentChanged.js +4 -2
  426. package/es/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -1
  427. package/es/extensions/forms/Form/Isolation/useReportError.d.ts +1 -1
  428. package/es/extensions/forms/Form/Isolation/useReportError.js +22 -7
  429. package/es/extensions/forms/Form/Isolation/useReportError.js.map +1 -1
  430. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +6 -6
  431. package/es/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
  432. package/es/extensions/forms/Iterate/EditContainer/ResetButton.js +3 -1
  433. package/es/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
  434. package/es/extensions/forms/Iterate/ItemNo/{useIItemNo.js → useIterateItemNo.js} +2 -2
  435. package/es/extensions/forms/Iterate/ItemNo/useIterateItemNo.js.map +1 -0
  436. package/es/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +3 -1
  437. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js +7 -3
  438. package/es/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  439. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +6 -1
  440. package/es/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  441. package/es/extensions/forms/Tools/Errors.d.ts +5 -0
  442. package/es/extensions/forms/Tools/Errors.js +37 -0
  443. package/es/extensions/forms/Tools/Errors.js.map +1 -0
  444. package/es/extensions/forms/Tools/index.d.ts +1 -0
  445. package/es/extensions/forms/Tools/index.js +1 -0
  446. package/es/extensions/forms/Tools/index.js.map +1 -1
  447. package/es/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js +2 -4
  448. package/es/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js.map +1 -1
  449. package/es/extensions/forms/Wizard/Container/WizardContainer.js +11 -5
  450. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  451. package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  452. package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  453. package/es/extensions/forms/Wizard/Context/WizardContext.d.ts +2 -1
  454. package/es/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  455. package/es/extensions/forms/Wizard/Step/Step.js +1 -1
  456. package/es/extensions/forms/Wizard/Step/Step.js.map +1 -1
  457. package/es/extensions/forms/Wizard/hooks/useStep.js +13 -5
  458. package/es/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  459. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +4 -3
  460. package/es/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  461. package/es/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  462. package/es/extensions/forms/constants/locales/en-GB.js +2 -1
  463. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
  464. package/es/extensions/forms/constants/locales/en-US.d.ts +1 -0
  465. package/es/extensions/forms/constants/locales/index.d.ts +2 -0
  466. package/es/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  467. package/es/extensions/forms/constants/locales/nb-NO.js +2 -1
  468. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  469. package/es/extensions/forms/constants/locales/sv-SE.d.ts +1 -0
  470. package/es/extensions/forms/constants/locales/sv-SE.js +2 -1
  471. package/es/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  472. package/es/extensions/forms/hooks/useFieldProps.js +8 -8
  473. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  474. package/es/extensions/payment-card/PaymentCard.js +1 -0
  475. package/es/extensions/payment-card/PaymentCard.js.map +1 -1
  476. package/es/extensions/payment-card/icons/brandLogos/DNB.js +2 -2
  477. package/es/extensions/payment-card/icons/brandLogos/DNB.js.map +1 -1
  478. package/es/extensions/payment-card/icons/providers/BankAxept.js +2 -2
  479. package/es/extensions/payment-card/icons/providers/BankAxept.js.map +1 -1
  480. package/es/extensions/payment-card/icons/providers/ClickToPay.js +2 -2
  481. package/es/extensions/payment-card/icons/providers/ClickToPay.js.map +1 -1
  482. package/es/extensions/payment-card/icons/providers/MastercardDefault.js +2 -2
  483. package/es/extensions/payment-card/icons/providers/MastercardDefault.js.map +1 -1
  484. package/es/extensions/payment-card/icons/providers/VisaDefault.js +2 -2
  485. package/es/extensions/payment-card/icons/providers/VisaDefault.js.map +1 -1
  486. package/es/extensions/payment-card/icons/providers/VisaPlatinum.js +2 -2
  487. package/es/extensions/payment-card/icons/providers/VisaPlatinum.js.map +1 -1
  488. package/es/fragments/drawer-list/DrawerListHelpers.js +2 -1
  489. package/es/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  490. package/es/shared/AlignmentHelper.d.ts +14 -8
  491. package/es/shared/AlignmentHelper.js +4 -8
  492. package/es/shared/AlignmentHelper.js.map +1 -1
  493. package/es/shared/BuildInfo.cjs +6 -0
  494. package/es/shared/BuildInfo.d.cts +2 -0
  495. package/es/shared/Eufemia.d.ts +14 -1
  496. package/es/shared/Eufemia.js +27 -2
  497. package/es/shared/Eufemia.js.map +1 -1
  498. package/es/shared/helpers/runCssVersionMismatchWarning.d.ts +0 -7
  499. package/es/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
  500. package/es/shared/useMedia.js +66 -55
  501. package/es/shared/useMedia.js.map +1 -1
  502. package/es/style/core/helper-classes/helper-classes.scss +3 -0
  503. package/es/style/core/scopes.scss +1 -1
  504. package/es/style/core/utilities.scss +3 -1
  505. package/es/style/dnb-ui-basis.css +13 -2
  506. package/es/style/dnb-ui-basis.min.css +1 -1
  507. package/es/style/dnb-ui-body.css +1 -2
  508. package/es/style/dnb-ui-body.min.css +1 -1
  509. package/es/style/dnb-ui-components.css +0 -22
  510. package/es/style/dnb-ui-components.min.css +3 -3
  511. package/es/style/dnb-ui-core.css +13 -3
  512. package/es/style/dnb-ui-core.min.css +1 -1
  513. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +0 -22
  514. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -3
  515. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +0 -22
  516. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  517. package/es/style/themes/theme-ui/ui-theme-components.css +0 -22
  518. package/es/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  519. package/esm/dnb-ui-components.min.mjs +1 -1
  520. package/esm/dnb-ui-elements.min.mjs +1 -1
  521. package/esm/dnb-ui-extensions.min.mjs +3 -3
  522. package/esm/dnb-ui-lib.min.mjs +1 -1
  523. package/extensions/forms/DataContext/Context.d.ts +5 -2
  524. package/extensions/forms/DataContext/Context.js.map +1 -1
  525. package/extensions/forms/DataContext/Provider/Provider.js +22 -4
  526. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  527. package/extensions/forms/DataContext/Provider/useEventListener.d.ts +3 -0
  528. package/extensions/forms/DataContext/Provider/useEventListener.js +23 -0
  529. package/extensions/forms/DataContext/Provider/useEventListener.js.map +1 -0
  530. package/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js +6 -2
  531. package/extensions/forms/Field/BankAccountNumber/BankAccountNumberDocs.js.map +1 -1
  532. package/extensions/forms/Field/Date/Date.js +10 -4
  533. package/extensions/forms/Field/Date/Date.js.map +1 -1
  534. package/extensions/forms/Field/Indeterminate/Indeterminate.js +4 -2
  535. package/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
  536. package/extensions/forms/Field/Indeterminate/useDependencePaths.d.ts +1 -0
  537. package/extensions/forms/Field/Indeterminate/useDependencePaths.js +12 -5
  538. package/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  539. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js +6 -2
  540. package/extensions/forms/Field/NationalIdentityNumber/NationalIdentityNumberDocs.js.map +1 -1
  541. package/extensions/forms/Field/Number/NumberDocs.js +1 -1
  542. package/extensions/forms/Field/Number/NumberDocs.js.map +1 -1
  543. package/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js +6 -2
  544. package/extensions/forms/Field/OrganizationNumber/OrganizationNumberDocs.js.map +1 -1
  545. package/extensions/forms/Field/Password/PasswordDocs.js +6 -2
  546. package/extensions/forms/Field/Password/PasswordDocs.js.map +1 -1
  547. package/extensions/forms/Field/PhoneNumber/PhoneNumber.d.ts +1 -1
  548. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  549. package/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js +7 -0
  550. package/extensions/forms/Field/PhoneNumber/PhoneNumberDocs.js.map +1 -1
  551. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js +1 -1
  552. package/extensions/forms/Field/PostalCodeAndCity/PostalCodeAndCityDocs.js.map +1 -1
  553. package/extensions/forms/Field/Provider/useFieldProvider.d.ts +3 -3
  554. package/extensions/forms/Field/Selection/SelectionDocs.js +1 -1
  555. package/extensions/forms/Field/Selection/SelectionDocs.js.map +1 -1
  556. package/extensions/forms/Field/String/StringDocs.js +7 -7
  557. package/extensions/forms/Field/String/StringDocs.js.map +1 -1
  558. package/extensions/forms/Field/Toggle/Toggle.js +1 -1
  559. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  560. package/extensions/forms/Field/Upload/Upload.d.ts +1 -1
  561. package/extensions/forms/Field/Upload/Upload.js +3 -1
  562. package/extensions/forms/Field/Upload/Upload.js.map +1 -1
  563. package/extensions/forms/Field/Upload/UploadDocs.js.map +1 -1
  564. package/extensions/forms/FieldBlock/FieldBlock.js +1 -1
  565. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  566. package/extensions/forms/FieldBlock/FieldBlockDocs.js +1 -1
  567. package/extensions/forms/FieldBlock/FieldBlockDocs.js.map +1 -1
  568. package/extensions/forms/Form/Isolation/IsolatedContainer.js +4 -6
  569. package/extensions/forms/Form/Isolation/IsolatedContainer.js.map +1 -1
  570. package/extensions/forms/Form/Isolation/Isolation.js +2 -3
  571. package/extensions/forms/Form/Isolation/Isolation.js.map +1 -1
  572. package/extensions/forms/Form/Isolation/IsolationDataReference.d.ts +4 -2
  573. package/extensions/forms/Form/Isolation/IsolationDataReference.js +20 -4
  574. package/extensions/forms/Form/Isolation/IsolationDataReference.js.map +1 -1
  575. package/extensions/forms/Form/Isolation/IsolationDocs.js +1 -1
  576. package/extensions/forms/Form/Isolation/IsolationDocs.js.map +1 -1
  577. package/extensions/forms/Form/Isolation/IsolationResetButton.js +2 -1
  578. package/extensions/forms/Form/Isolation/IsolationResetButton.js.map +1 -1
  579. package/extensions/forms/Form/Isolation/useDataContextSnapshot.js +15 -8
  580. package/extensions/forms/Form/Isolation/useDataContextSnapshot.js.map +1 -1
  581. package/extensions/forms/Form/Isolation/useHandleStatus.d.ts +2 -1
  582. package/extensions/forms/Form/Isolation/useHandleStatus.js +10 -3
  583. package/extensions/forms/Form/Isolation/useHandleStatus.js.map +1 -1
  584. package/extensions/forms/Form/Isolation/useHasContentChanged.d.ts +3 -1
  585. package/extensions/forms/Form/Isolation/useHasContentChanged.js +4 -1
  586. package/extensions/forms/Form/Isolation/useHasContentChanged.js.map +1 -1
  587. package/extensions/forms/Form/Isolation/useReportError.d.ts +1 -1
  588. package/extensions/forms/Form/Isolation/useReportError.js +22 -7
  589. package/extensions/forms/Form/Isolation/useReportError.js.map +1 -1
  590. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js +6 -6
  591. package/extensions/forms/Form/SubmitConfirmation/SubmitConfirmation.js.map +1 -1
  592. package/extensions/forms/Iterate/EditContainer/ResetButton.js +3 -1
  593. package/extensions/forms/Iterate/EditContainer/ResetButton.js.map +1 -1
  594. package/extensions/forms/Iterate/ItemNo/{useIItemNo.js → useIterateItemNo.js} +2 -2
  595. package/extensions/forms/Iterate/ItemNo/useIterateItemNo.js.map +1 -0
  596. package/extensions/forms/Iterate/PushContainer/PushContainer.d.ts +3 -1
  597. package/extensions/forms/Iterate/PushContainer/PushContainer.js +7 -3
  598. package/extensions/forms/Iterate/PushContainer/PushContainer.js.map +1 -1
  599. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js +6 -1
  600. package/extensions/forms/Iterate/PushContainer/PushContainerDocs.js.map +1 -1
  601. package/extensions/forms/Tools/Errors.d.ts +5 -0
  602. package/extensions/forms/Tools/Errors.js +38 -0
  603. package/extensions/forms/Tools/Errors.js.map +1 -0
  604. package/extensions/forms/Tools/index.d.ts +1 -0
  605. package/extensions/forms/Tools/index.js +1 -0
  606. package/extensions/forms/Tools/index.js.map +1 -1
  607. package/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js +2 -4
  608. package/extensions/forms/Wizard/Container/PrerenderFieldPropsOfOtherSteps.js.map +1 -1
  609. package/extensions/forms/Wizard/Container/WizardContainer.js +11 -5
  610. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  611. package/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  612. package/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  613. package/extensions/forms/Wizard/Context/WizardContext.d.ts +2 -1
  614. package/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  615. package/extensions/forms/Wizard/Step/Step.js +1 -1
  616. package/extensions/forms/Wizard/Step/Step.js.map +1 -1
  617. package/extensions/forms/Wizard/hooks/useStep.js +13 -5
  618. package/extensions/forms/Wizard/hooks/useStep.js.map +1 -1
  619. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js +4 -3
  620. package/extensions/forms/blocks/ChildrenWithAge/ChildrenWithAge.js.map +1 -1
  621. package/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  622. package/extensions/forms/constants/locales/en-GB.js +2 -1
  623. package/extensions/forms/constants/locales/en-GB.js.map +1 -1
  624. package/extensions/forms/constants/locales/en-US.d.ts +1 -0
  625. package/extensions/forms/constants/locales/index.d.ts +2 -0
  626. package/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  627. package/extensions/forms/constants/locales/nb-NO.js +2 -1
  628. package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  629. package/extensions/forms/constants/locales/sv-SE.d.ts +1 -0
  630. package/extensions/forms/constants/locales/sv-SE.js +2 -1
  631. package/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  632. package/extensions/forms/hooks/useFieldProps.js +8 -8
  633. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  634. package/extensions/payment-card/PaymentCard.js +1 -0
  635. package/extensions/payment-card/PaymentCard.js.map +1 -1
  636. package/extensions/payment-card/icons/brandLogos/DNB.js +2 -2
  637. package/extensions/payment-card/icons/brandLogos/DNB.js.map +1 -1
  638. package/extensions/payment-card/icons/providers/BankAxept.js +2 -2
  639. package/extensions/payment-card/icons/providers/BankAxept.js.map +1 -1
  640. package/extensions/payment-card/icons/providers/ClickToPay.js +2 -2
  641. package/extensions/payment-card/icons/providers/ClickToPay.js.map +1 -1
  642. package/extensions/payment-card/icons/providers/MastercardDefault.js +2 -2
  643. package/extensions/payment-card/icons/providers/MastercardDefault.js.map +1 -1
  644. package/extensions/payment-card/icons/providers/VisaDefault.js +2 -2
  645. package/extensions/payment-card/icons/providers/VisaDefault.js.map +1 -1
  646. package/extensions/payment-card/icons/providers/VisaPlatinum.js +2 -2
  647. package/extensions/payment-card/icons/providers/VisaPlatinum.js.map +1 -1
  648. package/fragments/drawer-list/DrawerListHelpers.js +2 -1
  649. package/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  650. package/package.json +1 -1
  651. package/shared/AlignmentHelper.d.ts +14 -8
  652. package/shared/AlignmentHelper.js +4 -8
  653. package/shared/AlignmentHelper.js.map +1 -1
  654. package/shared/BuildInfo.cjs +6 -0
  655. package/shared/BuildInfo.d.cts +2 -0
  656. package/shared/Eufemia.d.ts +14 -1
  657. package/shared/Eufemia.js +27 -2
  658. package/shared/Eufemia.js.map +1 -1
  659. package/shared/helpers/runCssVersionMismatchWarning.d.ts +0 -7
  660. package/shared/helpers/runCssVersionMismatchWarning.js.map +1 -1
  661. package/shared/useMedia.js +67 -56
  662. package/shared/useMedia.js.map +1 -1
  663. package/style/core/helper-classes/helper-classes.scss +3 -0
  664. package/style/core/scopes.scss +1 -1
  665. package/style/core/utilities.scss +3 -1
  666. package/style/dnb-ui-basis.css +13 -2
  667. package/style/dnb-ui-basis.min.css +1 -1
  668. package/style/dnb-ui-body.css +1 -2
  669. package/style/dnb-ui-body.min.css +1 -1
  670. package/style/dnb-ui-components.css +0 -22
  671. package/style/dnb-ui-components.min.css +3 -3
  672. package/style/dnb-ui-core.css +13 -3
  673. package/style/dnb-ui-core.min.css +1 -1
  674. package/style/themes/theme-eiendom/eiendom-theme-components.css +0 -22
  675. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -3
  676. package/style/themes/theme-sbanken/sbanken-theme-components.css +0 -22
  677. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +3 -3
  678. package/style/themes/theme-ui/ui-theme-components.css +0 -22
  679. package/style/themes/theme-ui/ui-theme-components.min.css +3 -3
  680. package/umd/dnb-ui-components.min.js +1 -1
  681. package/umd/dnb-ui-elements.min.js +1 -1
  682. package/umd/dnb-ui-extensions.min.js +1 -1
  683. package/umd/dnb-ui-lib.min.js +1 -1
  684. package/cjs/extensions/forms/Iterate/ItemNo/useIItemNo.js.map +0 -1
  685. package/es/extensions/forms/Iterate/ItemNo/useIItemNo.js.map +0 -1
  686. package/extensions/forms/Iterate/ItemNo/useIItemNo.js.map +0 -1
  687. /package/cjs/extensions/forms/Iterate/ItemNo/{useIItemNo.d.ts → useIterateItemNo.d.ts} +0 -0
  688. /package/es/extensions/forms/Iterate/ItemNo/{useIItemNo.d.ts → useIterateItemNo.d.ts} +0 -0
  689. /package/extensions/forms/Iterate/ItemNo/{useIItemNo.d.ts → useIterateItemNo.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"StepIndicatorDocs.js","names":["StepIndicatorProperties","mode","doc","type","status","data","current_step","overview_title","step_title","hide_numbers","no_animation","expandedInitially","outset","status_state","skeleton","sidebar_id","step_title_extended","on_item_render","StepIndicatorEvents","on_click","on_change","StepIndicatorStepProperties","title","is_current","inactive","disabled","on_render","StepIndicatorStepEvents"],"sources":["../../../../src/components/step-indicator/StepIndicatorDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../shared/types'\n\nexport const StepIndicatorProperties: PropertiesTableProps = {\n mode: {\n doc: 'Defines how the StepIndicator should work. Use `static` for non-interactive steps. Use `strict` for a chronological step order, also, the user can navigate between visited steps. Use `loose` if the user should be able to navigate freely.',\n type: [`'static'`, `'strict'`, `'loose'`],\n status: 'required',\n },\n data: {\n doc: 'Defines the data/steps showing up in a JavaScript Array or JSON format like `[{title,is_current}]`. See below for properties of `STEP_DATA`.',\n type: ['[Step Item](#step-item-properties)[]', 'string[]'],\n status: 'required',\n },\n current_step: {\n doc: 'Defines the initial step starting from 0. Also defines the furthest step visited when `mode=\"strict\"`. Will update to the new step if changed (but will not trigger the `on_change` event). Defaults to `0`.',\n type: 'number',\n status: 'optional',\n },\n overview_title: {\n doc: 'The title shown inside the `<StepIndicatorModal />` supplemental screen reader text for the `<StepIndicatorTriggerButton />`. Defaults to `Steps Overview`.',\n type: 'string',\n status: 'optional',\n },\n step_title: {\n doc: 'Label for `<StepIndicatorTriggerButton />` and screen reader text for `<StepIndicatorItem />`. Must contain `%step` and `%count` to interpolate `current_step` and `stepCount` into the text. Defaults to `Step %step of %count`.',\n type: 'string',\n status: 'optional',\n },\n hide_numbers: {\n doc: 'Define whether to show automatically counted numbers or not. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n no_animation: {\n doc: 'If set to `true`, the height animation on step change and list expansion will be omitted. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n expandedInitially: {\n doc: 'Set to `true` to have the list be expanded initially. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n outset: {\n doc: 'Same as `outset` in [Card](/uilib/components/card/properties). Defaults to `false`',\n type: 'boolean',\n status: 'optional',\n },\n status: {\n doc: 'Text for status shown below the step indicator when it is not expanded. Defaults to `undefined`',\n type: 'string',\n status: 'optional',\n },\n status_state: {\n doc: 'The type of status shown when the `status` prop is set. Defaults to `warn`.',\n type: `['warn', 'info', 'error']`,\n status: 'optional',\n },\n skeleton: {\n doc: 'If set to `true`, an overlaying skeleton with animation will be shown.',\n type: 'boolean',\n status: 'optional',\n },\n '[Space](/uilib/layout/space/properties)': {\n doc: 'Spacing properties like `top` or `bottom` are supported.',\n type: ['string', 'object'],\n status: 'optional',\n },\n sidebar_id: {\n doc: 'A unique string-based ID in order to bind together the main component and the sidebar (`<StepIndicator.Sidebar />`). Both have to get the same ID.',\n type: 'string',\n status: 'deprecated',\n },\n step_title_extended: {\n doc: 'Descriptive label for `<StepIndicatorModal />`. Must contain `%step` and `%count` to interpolate `current_step` and `stepCount` into the text. Defaults to `You are on step %step of %count`.',\n type: 'string',\n status: 'deprecated',\n },\n on_item_render: {\n doc: 'Deprecated, just use step item `title`. Callback function whose return is rendered inside each step instead of the default render. Has to return a React Node. Receives parameter `{ StepItem, element, attributes, props, context }`, where `props` also includes all props from the step object (like `title` or `status`) and the `<StepItem>` is a component that can be used to wrap your returned content.',\n type: 'function',\n status: 'deprecated',\n },\n}\n\nexport const StepIndicatorEvents: PropertiesTableProps = {\n on_click: {\n doc: 'Will be called when the user clicks on any clickable step in the list. Is called right before `on_change`. Receives parameter `{ event, item, current_step, currentStep }`',\n type: 'function',\n status: 'optional',\n },\n on_change: {\n doc: 'Will be called when the user changes step by clicking in the steps list (changing the `current_step` prop does not trigger the event). Receives parameter `{ event, item, current_step, currentStep }`',\n type: 'function',\n status: 'optional',\n },\n}\n\nexport const StepIndicatorStepProperties: PropertiesTableProps = {\n title: {\n doc: 'The title of the step.',\n type: ['string', 'React.ReactNode'],\n status: 'required',\n },\n is_current: {\n doc: 'If set to `true`, this item step will be set as the current selected step. This can be used instead of `current_step` on the main component.',\n type: 'boolean',\n status: 'optional',\n },\n inactive: {\n doc: 'If set to `true`, this item step will be handled as an inactive step and will not be clickable. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n disabled: {\n doc: 'If set to `true`, this step will be handled the same as `inactive` as well as getting a disabled mouseover and `aria-disabled=\"true`. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n status: {\n doc: 'Is used to set the status text.',\n type: ['string', 'React.ReactNode'],\n status: 'optional',\n },\n status_state: {\n doc: 'In case the status state should be `info` or `error`. Defaults to `warn`.',\n type: [`'warn'`, `'info'`, `'error'`],\n status: 'optional',\n },\n on_render: {\n doc: 'Deprecated, just use `title`. Callback function whose return is rendered inside the step instead of the default render (or `on_item_render`). Has to return a React Node. <br/> Receives parameter `{ StepItem, element, attributes, props, context }`, where `props` also includes all props in the step object (like `title` or `status`) and the `<StepItem>` is a component that can be used to wrap your returned content.',\n type: 'function',\n status: 'deprecated',\n },\n}\n\nexport const StepIndicatorStepEvents: PropertiesTableProps = {\n on_click: {\n doc: \"Called when user clicks the step. Is called right before the main component's `on_click`. Receives parameter `{ event, item, current_step, currentStep }`\",\n type: 'function',\n status: 'optional',\n },\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"StepIndicatorDocs.js","names":["StepIndicatorProperties","mode","doc","type","status","data","current_step","overview_title","step_title","hide_numbers","no_animation","expandedInitially","outset","status_state","skeleton","sidebar_id","step_title_extended","on_item_render","StepIndicatorEvents","on_click","on_change","StepIndicatorStepProperties","title","is_current","inactive","disabled","on_render","StepIndicatorStepEvents"],"sources":["../../../../src/components/step-indicator/StepIndicatorDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../shared/types'\n\nexport const StepIndicatorProperties: PropertiesTableProps = {\n mode: {\n doc: 'Defines how the StepIndicator should work. Use `static` for non-interactive steps. Use `strict` for a chronological step order, also, the user can navigate between visited steps. Use `loose` if the user should be able to navigate freely.',\n type: [`'static'`, `'strict'`, `'loose'`],\n status: 'required',\n },\n data: {\n doc: 'Defines the data/steps showing up in a JavaScript Array or JSON format like `[{title,is_current}]`. See below for properties of `STEP_DATA`.',\n type: ['[Step Item](#step-item-properties)[]', 'string[]'],\n status: 'required',\n },\n current_step: {\n doc: 'Defines the initial step starting from 0. Also defines the furthest step visited when `mode=\"strict\"`. Will update to the new step if changed (but will not trigger the `on_change` event). Defaults to `0`.',\n type: 'number',\n status: 'optional',\n },\n overview_title: {\n doc: 'The title shown inside the `<StepIndicatorModal />` supplemental screen reader text for the `<StepIndicatorTriggerButton />`. Defaults to `Steps Overview`.',\n type: 'string',\n status: 'optional',\n },\n step_title: {\n doc: 'Label for `<StepIndicatorTriggerButton />` and screen reader text for `<StepIndicatorItem />`. Must contain `%step` and `%count` to interpolate `current_step` and `stepCount` into the text. Defaults to `Step %step of %count`.',\n type: 'string',\n status: 'optional',\n },\n hide_numbers: {\n doc: 'Define whether to show automatically counted numbers or not. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n no_animation: {\n doc: 'If set to `true`, the height animation on step change and list expansion will be omitted. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n expandedInitially: {\n doc: 'Set to `true` to have the list be expanded initially. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n outset: {\n doc: 'Same as `outset` in [Card](/uilib/components/card/properties). Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n status: {\n doc: 'Text for status shown below the step indicator when it is not expanded. Defaults to `undefined`.',\n type: 'string',\n status: 'optional',\n },\n status_state: {\n doc: 'The type of status shown when the `status` prop is set. Defaults to `warn`.',\n type: `['warn', 'info', 'error']`,\n status: 'optional',\n },\n skeleton: {\n doc: 'If set to `true`, an overlaying skeleton with animation will be shown.',\n type: 'boolean',\n status: 'optional',\n },\n '[Space](/uilib/layout/space/properties)': {\n doc: 'Spacing properties like `top` or `bottom` are supported.',\n type: ['string', 'object'],\n status: 'optional',\n },\n sidebar_id: {\n doc: 'A unique string-based ID in order to bind together the main component and the sidebar (`<StepIndicator.Sidebar />`). Both have to get the same ID.',\n type: 'string',\n status: 'deprecated',\n },\n step_title_extended: {\n doc: 'Descriptive label for `<StepIndicatorModal />`. Must contain `%step` and `%count` to interpolate `current_step` and `stepCount` into the text. Defaults to `You are on step %step of %count`.',\n type: 'string',\n status: 'deprecated',\n },\n on_item_render: {\n doc: 'Deprecated, just use step item `title`. Callback function whose return is rendered inside each step instead of the default render. Has to return a React Node. Receives parameter `{ StepItem, element, attributes, props, context }`, where `props` also includes all props from the step object (like `title` or `status`) and the `<StepItem>` is a component that can be used to wrap your returned content.',\n type: 'function',\n status: 'deprecated',\n },\n}\n\nexport const StepIndicatorEvents: PropertiesTableProps = {\n on_click: {\n doc: 'Will be called when the user clicks on any clickable step in the list. Is called right before `on_change`. Receives parameter `{ event, item, current_step, currentStep }`.',\n type: 'function',\n status: 'optional',\n },\n on_change: {\n doc: 'Will be called when the user changes step by clicking in the steps list (changing the `current_step` prop does not trigger the event). Receives parameter `{ event, item, current_step, currentStep }`.',\n type: 'function',\n status: 'optional',\n },\n}\n\nexport const StepIndicatorStepProperties: PropertiesTableProps = {\n title: {\n doc: 'The title of the step.',\n type: ['string', 'React.ReactNode'],\n status: 'required',\n },\n is_current: {\n doc: 'If set to `true`, this item step will be set as the current selected step. This can be used instead of `current_step` on the main component.',\n type: 'boolean',\n status: 'optional',\n },\n inactive: {\n doc: 'If set to `true`, this item step will be handled as an inactive step and will not be clickable. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n disabled: {\n doc: 'If set to `true`, this step will be handled the same as `inactive` as well as getting a disabled mouseover and `aria-disabled=\"true`. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n status: {\n doc: 'Is used to set the status text.',\n type: ['string', 'React.ReactNode'],\n status: 'optional',\n },\n status_state: {\n doc: 'In case the status state should be `info` or `error`. Defaults to `warn`.',\n type: [`'warn'`, `'info'`, `'error'`],\n status: 'optional',\n },\n on_render: {\n doc: 'Deprecated, just use `title`. Callback function whose return is rendered inside the step instead of the default render (or `on_item_render`). Has to return a React Node. <br/> Receives parameter `{ StepItem, element, attributes, props, context }`, where `props` also includes all props in the step object (like `title` or `status`) and the `<StepItem>` is a component that can be used to wrap your returned content.',\n type: 'function',\n status: 'deprecated',\n },\n}\n\nexport const StepIndicatorStepEvents: PropertiesTableProps = {\n on_click: {\n doc: \"Called when user clicks the step. Is called right before the main component's `on_click`. Receives parameter `{ event, item, current_step, currentStep }`\",\n type: 'function',\n status: 'optional',\n },\n}\n"],"mappings":"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","ignoreList":[]}
@@ -2,7 +2,7 @@
2
2
 
3
3
  import _extends from "@babel/runtime/helpers/esm/extends";
4
4
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
5
- var _span;
5
+ var _AlignmentHelper;
6
6
  const _excluded = ["icon", "iconAlt", "title", "subtitle", "infoMessage", "state", "skeleton"],
7
7
  _excluded2 = ["title"];
8
8
  import React from 'react';
@@ -15,6 +15,7 @@ import calendarIcon from '../../icons/calendar';
15
15
  import pinIcon from '../../icons/pin';
16
16
  import Context from '../../shared/Context';
17
17
  import { extendPropsWithContext } from '../../shared/component-helper';
18
+ import AlignmentHelper from '../../shared/AlignmentHelper';
18
19
  const defaultProps = {
19
20
  icon: null,
20
21
  iconAlt: null,
@@ -94,10 +95,9 @@ const TimelineItemIcon = _ref2 => {
94
95
  const currentAltLabel = iconAlt || labels[state];
95
96
  return React.createElement("span", {
96
97
  className: "dnb-timeline__item__label__icon"
97
- }, _span || (_span = React.createElement("span", {
98
- key: "icon-alignment",
99
- "aria-hidden": true
100
- }, "\u200C")), !skeleton && currentIcon && React.createElement(IconPrimary, {
98
+ }, _AlignmentHelper || (_AlignmentHelper = React.createElement(AlignmentHelper, {
99
+ pseudoElementOnly: true
100
+ })), !skeleton && currentIcon && React.createElement(IconPrimary, {
101
101
  icon: currentIcon,
102
102
  alt: currentAltLabel,
103
103
  size: state === 'current' ? undefined : 'small'
@@ -1 +1 @@
1
- {"version":3,"file":"TimelineItem.js","names":["React","classnames","FormStatus","IconPrimary","createSkeletonClass","checkIcon","calendarIcon","pinIcon","Context","extendPropsWithContext","defaultProps","icon","iconAlt","title","subtitle","infoMessage","state","skeleton","TimelineItem","localProps","context","useContext","allProps","props","_objectWithoutProperties","_excluded","skeletonClasses","classes","createElement","_extends","className","undefined","TimelineItemLabel","translations","translation","TimelineItemContent","_ref","iconProps","_excluded2","TimelineItemIcon","TimelineItemTitle","_ref2","alt_label_completed","alt_label_current","alt_label_upcoming","icons","completed","current","upcoming","labels","currentIcon","currentAltLabel","_span","key","alt","size","_ref3","_ref4","_TimelineItemSubtitle","renderSubtitles","Array","isArray","map","i","TimelineItemSubtitle","text","stretch","_ref5"],"sources":["../../../../src/components/timeline/TimelineItem.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\n\n// Components\nimport FormStatus from '../form-status/FormStatus'\nimport IconPrimary from '../icon-primary/IconPrimary'\nimport type { IconIcon } from '../icon/Icon'\nimport { createSkeletonClass } from '../skeleton/SkeletonHelper'\n\n// Icons\nimport checkIcon from '../../icons/check'\nimport calendarIcon from '../../icons/calendar'\nimport pinIcon from '../../icons/pin'\n\n// Shared\nimport Context from '../../shared/Context'\nimport type { SkeletonShow } from '../skeleton/Skeleton'\nimport { extendPropsWithContext } from '../../shared/component-helper'\n\nexport type TimeLineItemStates = 'completed' | 'current' | 'upcoming'\n\nexport type TimelineItemProps = {\n /**\n * Icon displaying on the left side.\n * Default: `check` for state `completed`, `pin` for state `current`, and `calendar` for state `upcoming` .\n */\n icon?: IconIcon\n\n /**\n * Text displaying the title of the item's corresponding page.\n * Default: translations based on the icon.\n */\n iconAlt?: string\n\n /**\n * Text displaying the title of the timeline item.\n */\n title: React.ReactNode\n\n /**\n * Text displaying the subtitle of the timeline item.\n */\n subtitle?: React.ReactNode | React.ReactNode[]\n\n /**\n * Text displaying info message of the timeline item.\n */\n infoMessage?: React.ReactNode\n\n /**\n * The component state. State 'completed', 'current' or 'upcoming'.\n * Default: null\n */\n state: TimeLineItemStates\n\n /**\n * Skeleton should be applied when loading content\n * Default: null\n */\n skeleton?: SkeletonShow\n}\n\nexport type TimelineItemAllProps = TimelineItemProps &\n Omit<React.AllHTMLAttributes<HTMLLIElement>, 'title' | 'name'>\n\nconst defaultProps = {\n icon: null,\n iconAlt: null,\n title: null,\n subtitle: null,\n infoMessage: null,\n state: null,\n skeleton: false,\n}\n\nconst TimelineItem = (localProps: TimelineItemAllProps) => {\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?.TimelineItem,\n { skeleton: context?.skeleton }\n )\n\n const {\n icon,\n iconAlt,\n title,\n subtitle,\n infoMessage,\n state,\n skeleton,\n ...props\n } = allProps\n\n const skeletonClasses = createSkeletonClass('font', skeleton, context)\n const classes = classnames(\n 'dnb-timeline__item',\n skeletonClasses,\n `dnb-timeline__item--${state}`\n )\n\n return (\n <li\n className={classes}\n aria-current={state === 'current' ? 'step' : undefined}\n {...props}\n >\n <TimelineItemLabel\n state={state}\n title={title}\n icon={icon}\n iconAlt={iconAlt}\n skeleton={skeleton}\n translations={\n context.translation.TimelineItem as TimeLineIconAltTranslations\n }\n />\n <TimelineItemContent subtitle={subtitle} infoMessage={infoMessage} />\n </li>\n )\n}\n\n// Label\n\ntype TimelineItemLabelProps = TimeLineIconProps & TimelineItemTitleProps\n\nconst TimelineItemLabel = ({\n title,\n ...iconProps\n}: TimelineItemLabelProps) => {\n return (\n <span className=\"dnb-timeline__item__label\">\n <TimelineItemIcon {...iconProps} />\n <TimelineItemTitle title={title} />\n </span>\n )\n}\n\ntype TimeLineIconProps = Pick<\n TimelineItemProps,\n 'icon' | 'iconAlt' | 'state' | 'skeleton'\n> & { translations: TimeLineIconAltTranslations }\n\ntype TimeLineIconAltTranslations = {\n alt_label_completed: string\n alt_label_current: string\n alt_label_upcoming: string\n}\n\nconst TimelineItemIcon = ({\n icon,\n state,\n iconAlt,\n skeleton,\n translations,\n}: TimeLineIconProps) => {\n const { alt_label_completed, alt_label_current, alt_label_upcoming } =\n translations\n\n const icons: Record<TimeLineItemStates, IconIcon> = {\n completed: checkIcon,\n current: pinIcon,\n upcoming: calendarIcon,\n }\n\n const labels: Record<TimeLineItemStates, string> = {\n completed: alt_label_completed,\n current: alt_label_current,\n upcoming: alt_label_upcoming,\n }\n\n const currentIcon = icon || icons[state]\n const currentAltLabel = iconAlt || labels[state]\n\n return (\n <span className=\"dnb-timeline__item__label__icon\">\n <span key=\"icon-alignment\" aria-hidden>\n &zwnj;\n </span>\n {!skeleton && currentIcon && (\n <IconPrimary\n icon={currentIcon}\n alt={currentAltLabel}\n size={state === 'current' ? undefined : 'small'}\n />\n )}\n </span>\n )\n}\n\ntype TimelineItemTitleProps = Pick<TimelineItemProps, 'title'>\n\nconst TimelineItemTitle = ({ title }: TimelineItemTitleProps) => {\n return <span className=\"dnb-timeline__item__label__title\">{title}</span>\n}\n\n// Content\n\ntype TimeLineItemContentProps = Pick<\n TimelineItemProps,\n 'subtitle' | 'infoMessage'\n>\n\nconst TimelineItemContent = ({\n subtitle,\n infoMessage,\n}: TimeLineItemContentProps) => {\n const renderSubtitles = () => {\n if (!subtitle) {\n return null\n }\n\n if (Array.isArray(subtitle)) {\n return subtitle.map((subtitle, i) => (\n <TimelineItemSubtitle key={i} subtitle={subtitle} />\n ))\n }\n return <TimelineItemSubtitle subtitle={subtitle} />\n }\n\n return (\n <div className=\"dnb-timeline__item__content\">\n {renderSubtitles()}\n {infoMessage && (\n <FormStatus\n text={infoMessage}\n state=\"info\"\n className=\"dnb-timeline__item__content__info\"\n stretch\n />\n )}\n </div>\n )\n}\n\ntype TimelineItemSubtitleProps = {\n subtitle: React.ReactNode\n}\n\nconst TimelineItemSubtitle = ({ subtitle }: TimelineItemSubtitleProps) => (\n <div className=\"dnb-timeline__item__content__subtitle\">{subtitle}</div>\n)\n\nexport default TimelineItem\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"TimelineItem.js","names":["React","classnames","FormStatus","IconPrimary","createSkeletonClass","checkIcon","calendarIcon","pinIcon","Context","extendPropsWithContext","AlignmentHelper","defaultProps","icon","iconAlt","title","subtitle","infoMessage","state","skeleton","TimelineItem","localProps","context","useContext","allProps","props","_objectWithoutProperties","_excluded","skeletonClasses","classes","createElement","_extends","className","undefined","TimelineItemLabel","translations","translation","TimelineItemContent","_ref","iconProps","_excluded2","TimelineItemIcon","TimelineItemTitle","_ref2","alt_label_completed","alt_label_current","alt_label_upcoming","icons","completed","current","upcoming","labels","currentIcon","currentAltLabel","_AlignmentHelper","pseudoElementOnly","alt","size","_ref3","_ref4","_TimelineItemSubtitle","renderSubtitles","Array","isArray","map","i","TimelineItemSubtitle","key","text","stretch","_ref5"],"sources":["../../../../src/components/timeline/TimelineItem.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\n\n// Components\nimport FormStatus from '../form-status/FormStatus'\nimport IconPrimary from '../icon-primary/IconPrimary'\nimport type { IconIcon } from '../icon/Icon'\nimport { createSkeletonClass } from '../skeleton/SkeletonHelper'\n\n// Icons\nimport checkIcon from '../../icons/check'\nimport calendarIcon from '../../icons/calendar'\nimport pinIcon from '../../icons/pin'\n\n// Shared\nimport Context from '../../shared/Context'\nimport type { SkeletonShow } from '../skeleton/Skeleton'\nimport { extendPropsWithContext } from '../../shared/component-helper'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\n\nexport type TimeLineItemStates = 'completed' | 'current' | 'upcoming'\n\nexport type TimelineItemProps = {\n /**\n * Icon displaying on the left side.\n * Default: `check` for state `completed`, `pin` for state `current`, and `calendar` for state `upcoming` .\n */\n icon?: IconIcon\n\n /**\n * Text displaying the title of the item's corresponding page.\n * Default: translations based on the icon.\n */\n iconAlt?: string\n\n /**\n * Text displaying the title of the timeline item.\n */\n title: React.ReactNode\n\n /**\n * Text displaying the subtitle of the timeline item.\n */\n subtitle?: React.ReactNode | React.ReactNode[]\n\n /**\n * Text displaying info message of the timeline item.\n */\n infoMessage?: React.ReactNode\n\n /**\n * The component state. State 'completed', 'current' or 'upcoming'.\n * Default: null\n */\n state: TimeLineItemStates\n\n /**\n * Skeleton should be applied when loading content\n * Default: null\n */\n skeleton?: SkeletonShow\n}\n\nexport type TimelineItemAllProps = TimelineItemProps &\n Omit<React.AllHTMLAttributes<HTMLLIElement>, 'title' | 'name'>\n\nconst defaultProps = {\n icon: null,\n iconAlt: null,\n title: null,\n subtitle: null,\n infoMessage: null,\n state: null,\n skeleton: false,\n}\n\nconst TimelineItem = (localProps: TimelineItemAllProps) => {\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?.TimelineItem,\n { skeleton: context?.skeleton }\n )\n\n const {\n icon,\n iconAlt,\n title,\n subtitle,\n infoMessage,\n state,\n skeleton,\n ...props\n } = allProps\n\n const skeletonClasses = createSkeletonClass('font', skeleton, context)\n const classes = classnames(\n 'dnb-timeline__item',\n skeletonClasses,\n `dnb-timeline__item--${state}`\n )\n\n return (\n <li\n className={classes}\n aria-current={state === 'current' ? 'step' : undefined}\n {...props}\n >\n <TimelineItemLabel\n state={state}\n title={title}\n icon={icon}\n iconAlt={iconAlt}\n skeleton={skeleton}\n translations={\n context.translation.TimelineItem as TimeLineIconAltTranslations\n }\n />\n <TimelineItemContent subtitle={subtitle} infoMessage={infoMessage} />\n </li>\n )\n}\n\n// Label\n\ntype TimelineItemLabelProps = TimeLineIconProps & TimelineItemTitleProps\n\nconst TimelineItemLabel = ({\n title,\n ...iconProps\n}: TimelineItemLabelProps) => {\n return (\n <span className=\"dnb-timeline__item__label\">\n <TimelineItemIcon {...iconProps} />\n <TimelineItemTitle title={title} />\n </span>\n )\n}\n\ntype TimeLineIconProps = Pick<\n TimelineItemProps,\n 'icon' | 'iconAlt' | 'state' | 'skeleton'\n> & { translations: TimeLineIconAltTranslations }\n\ntype TimeLineIconAltTranslations = {\n alt_label_completed: string\n alt_label_current: string\n alt_label_upcoming: string\n}\n\nconst TimelineItemIcon = ({\n icon,\n state,\n iconAlt,\n skeleton,\n translations,\n}: TimeLineIconProps) => {\n const { alt_label_completed, alt_label_current, alt_label_upcoming } =\n translations\n\n const icons: Record<TimeLineItemStates, IconIcon> = {\n completed: checkIcon,\n current: pinIcon,\n upcoming: calendarIcon,\n }\n\n const labels: Record<TimeLineItemStates, string> = {\n completed: alt_label_completed,\n current: alt_label_current,\n upcoming: alt_label_upcoming,\n }\n\n const currentIcon = icon || icons[state]\n const currentAltLabel = iconAlt || labels[state]\n\n return (\n <span className=\"dnb-timeline__item__label__icon\">\n <AlignmentHelper pseudoElementOnly />\n {!skeleton && currentIcon && (\n <IconPrimary\n icon={currentIcon}\n alt={currentAltLabel}\n size={state === 'current' ? undefined : 'small'}\n />\n )}\n </span>\n )\n}\n\ntype TimelineItemTitleProps = Pick<TimelineItemProps, 'title'>\n\nconst TimelineItemTitle = ({ title }: TimelineItemTitleProps) => {\n return <span className=\"dnb-timeline__item__label__title\">{title}</span>\n}\n\n// Content\n\ntype TimeLineItemContentProps = Pick<\n TimelineItemProps,\n 'subtitle' | 'infoMessage'\n>\n\nconst TimelineItemContent = ({\n subtitle,\n infoMessage,\n}: TimeLineItemContentProps) => {\n const renderSubtitles = () => {\n if (!subtitle) {\n return null\n }\n\n if (Array.isArray(subtitle)) {\n return subtitle.map((subtitle, i) => (\n <TimelineItemSubtitle key={i} subtitle={subtitle} />\n ))\n }\n return <TimelineItemSubtitle subtitle={subtitle} />\n }\n\n return (\n <div className=\"dnb-timeline__item__content\">\n {renderSubtitles()}\n {infoMessage && (\n <FormStatus\n text={infoMessage}\n state=\"info\"\n className=\"dnb-timeline__item__content__info\"\n stretch\n />\n )}\n </div>\n )\n}\n\ntype TimelineItemSubtitleProps = {\n subtitle: React.ReactNode\n}\n\nconst TimelineItemSubtitle = ({ subtitle }: TimelineItemSubtitleProps) => (\n <div className=\"dnb-timeline__item__content__subtitle\">{subtitle}</div>\n)\n\nexport default TimelineItem\n"],"mappings":";;;;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AAGnC,OAAOC,UAAU,MAAM,2BAA2B;AAClD,OAAOC,WAAW,MAAM,6BAA6B;AAErD,SAASC,mBAAmB,QAAQ,4BAA4B;AAGhE,OAAOC,SAAS,MAAM,mBAAmB;AACzC,OAAOC,YAAY,MAAM,sBAAsB;AAC/C,OAAOC,OAAO,MAAM,iBAAiB;AAGrC,OAAOC,OAAO,MAAM,sBAAsB;AAE1C,SAASC,sBAAsB,QAAQ,+BAA+B;AACtE,OAAOC,eAAe,MAAM,8BAA8B;AAgD1D,MAAMC,YAAY,GAAG;EACnBC,IAAI,EAAE,IAAI;EACVC,OAAO,EAAE,IAAI;EACbC,KAAK,EAAE,IAAI;EACXC,QAAQ,EAAE,IAAI;EACdC,WAAW,EAAE,IAAI;EACjBC,KAAK,EAAE,IAAI;EACXC,QAAQ,EAAE;AACZ,CAAC;AAED,MAAMC,YAAY,GAAIC,UAAgC,IAAK;EAEzD,MAAMC,OAAO,GAAGrB,KAAK,CAACsB,UAAU,CAACd,OAAO,CAAC;EAGzC,MAAMe,QAAQ,GAAGd,sBAAsB,CACrCW,UAAU,EACVT,YAAY,EACZU,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEF,YAAY,EACrB;IAAED,QAAQ,EAAEG,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEH;EAAS,CAChC,CAAC;EAED,MAAM;MACJN,IAAI;MACJC,OAAO;MACPC,KAAK;MACLC,QAAQ;MACRC,WAAW;MACXC,KAAK;MACLC;IAEF,CAAC,GAAGK,QAAQ;IADPC,KAAK,GAAAC,wBAAA,CACNF,QAAQ,EAAAG,SAAA;EAEZ,MAAMC,eAAe,GAAGvB,mBAAmB,CAAC,MAAM,EAAEc,QAAQ,EAAEG,OAAO,CAAC;EACtE,MAAMO,OAAO,GAAG3B,UAAU,2CAGDgB,KAAK,IAD5BU,eAEF,CAAC;EAED,OACE3B,KAAA,CAAA6B,aAAA,OAAAC,QAAA;IACEC,SAAS,EAAEH,OAAQ;IACnB,gBAAcX,KAAK,KAAK,SAAS,GAAG,MAAM,GAAGe;EAAU,GACnDR,KAAK,GAETxB,KAAA,CAAA6B,aAAA,CAACI,iBAAiB;IAChBhB,KAAK,EAAEA,KAAM;IACbH,KAAK,EAAEA,KAAM;IACbF,IAAI,EAAEA,IAAK;IACXC,OAAO,EAAEA,OAAQ;IACjBK,QAAQ,EAAEA,QAAS;IACnBgB,YAAY,EACVb,OAAO,CAACc,WAAW,CAAChB;EACrB,CACF,CAAC,EACFnB,KAAA,CAAA6B,aAAA,CAACO,mBAAmB;IAACrB,QAAQ,EAAEA,QAAS;IAACC,WAAW,EAAEA;EAAY,CAAE,CAClE,CAAC;AAET,CAAC;AAMD,MAAMiB,iBAAiB,GAAGI,IAAA,IAGI;EAAA,IAHH;MACzBvB;IAEsB,CAAC,GAAAuB,IAAA;IADpBC,SAAS,GAAAb,wBAAA,CAAAY,IAAA,EAAAE,UAAA;EAEZ,OACEvC,KAAA,CAAA6B,aAAA;IAAME,SAAS,EAAC;EAA2B,GACzC/B,KAAA,CAAA6B,aAAA,CAACW,gBAAgB,EAAKF,SAAY,CAAC,EACnCtC,KAAA,CAAA6B,aAAA,CAACY,iBAAiB;IAAC3B,KAAK,EAAEA;EAAM,CAAE,CAC9B,CAAC;AAEX,CAAC;AAaD,MAAM0B,gBAAgB,GAAGE,KAAA,IAMA;EAAA,IANC;IACxB9B,IAAI;IACJK,KAAK;IACLJ,OAAO;IACPK,QAAQ;IACRgB;EACiB,CAAC,GAAAQ,KAAA;EAClB,MAAM;IAAEC,mBAAmB;IAAEC,iBAAiB;IAAEC;EAAmB,CAAC,GAClEX,YAAY;EAEd,MAAMY,KAA2C,GAAG;IAClDC,SAAS,EAAE1C,SAAS;IACpB2C,OAAO,EAAEzC,OAAO;IAChB0C,QAAQ,EAAE3C;EACZ,CAAC;EAED,MAAM4C,MAA0C,GAAG;IACjDH,SAAS,EAAEJ,mBAAmB;IAC9BK,OAAO,EAAEJ,iBAAiB;IAC1BK,QAAQ,EAAEJ;EACZ,CAAC;EAED,MAAMM,WAAW,GAAGvC,IAAI,IAAIkC,KAAK,CAAC7B,KAAK,CAAC;EACxC,MAAMmC,eAAe,GAAGvC,OAAO,IAAIqC,MAAM,CAACjC,KAAK,CAAC;EAEhD,OACEjB,KAAA,CAAA6B,aAAA;IAAME,SAAS,EAAC;EAAiC,GAAAsB,gBAAA,KAAAA,gBAAA,GAC/CrD,KAAA,CAAA6B,aAAA,CAACnB,eAAe;IAAC4C,iBAAiB;EAAA,CAAE,CAAC,GACpC,CAACpC,QAAQ,IAAIiC,WAAW,IACvBnD,KAAA,CAAA6B,aAAA,CAAC1B,WAAW;IACVS,IAAI,EAAEuC,WAAY;IAClBI,GAAG,EAAEH,eAAgB;IACrBI,IAAI,EAAEvC,KAAK,KAAK,SAAS,GAAGe,SAAS,GAAG;EAAQ,CACjD,CAEC,CAAC;AAEX,CAAC;AAID,MAAMS,iBAAiB,GAAGgB,KAAA,IAAuC;EAAA,IAAtC;IAAE3C;EAA8B,CAAC,GAAA2C,KAAA;EAC1D,OAAOzD,KAAA,CAAA6B,aAAA;IAAME,SAAS,EAAC;EAAkC,GAAEjB,KAAY,CAAC;AAC1E,CAAC;AASD,MAAMsB,mBAAmB,GAAGsB,KAAA,IAGI;EAAA,IAAAC,qBAAA;EAAA,IAHH;IAC3B5C,QAAQ;IACRC;EACwB,CAAC,GAAA0C,KAAA;EACzB,MAAME,eAAe,GAAGA,CAAA,KAAM;IAC5B,IAAI,CAAC7C,QAAQ,EAAE;MACb,OAAO,IAAI;IACb;IAEA,IAAI8C,KAAK,CAACC,OAAO,CAAC/C,QAAQ,CAAC,EAAE;MAC3B,OAAOA,QAAQ,CAACgD,GAAG,CAAC,CAAChD,QAAQ,EAAEiD,CAAC,KAC9BhE,KAAA,CAAA6B,aAAA,CAACoC,oBAAoB;QAACC,GAAG,EAAEF,CAAE;QAACjD,QAAQ,EAAEA;MAAS,CAAE,CACpD,CAAC;IACJ;IACA,OAAA4C,qBAAA,KAAAA,qBAAA,GAAO3D,KAAA,CAAA6B,aAAA,CAACoC,oBAAoB;MAAClD,QAAQ,EAAEA;IAAS,CAAE,CAAC;EACrD,CAAC;EAED,OACEf,KAAA,CAAA6B,aAAA;IAAKE,SAAS,EAAC;EAA6B,GACzC6B,eAAe,CAAC,CAAC,EACjB5C,WAAW,IACVhB,KAAA,CAAA6B,aAAA,CAAC3B,UAAU;IACTiE,IAAI,EAAEnD,WAAY;IAClBC,KAAK,EAAC,MAAM;IACZc,SAAS,EAAC,mCAAmC;IAC7CqC,OAAO;EAAA,CACR,CAEA,CAAC;AAEV,CAAC;AAMD,MAAMH,oBAAoB,GAAGI,KAAA;EAAA,IAAC;IAAEtD;EAAoC,CAAC,GAAAsD,KAAA;EAAA,OACnErE,KAAA,CAAA6B,aAAA;IAAKE,SAAS,EAAC;EAAuC,GAAEhB,QAAc,CAAC;AAAA,CACxE;AAED,eAAeI,YAAY","ignoreList":[]}
@@ -98,7 +98,7 @@ export interface ToggleButtonProps
98
98
  */
99
99
  icon_position?: ButtonIconPosition;
100
100
  /**
101
- * Define icon width and height. Defaults to 16px.
101
+ * Define icon width and height. Defaults to `16px`.
102
102
  */
103
103
  icon_size?: IconSize;
104
104
  attributes?: ToggleButtonAttributes;
@@ -36,7 +36,7 @@ export const ToggleButtonProperties = {
36
36
  status: 'optional'
37
37
  },
38
38
  icon_size: {
39
- doc: 'Define icon width and height. Defaults to 16px.',
39
+ doc: 'Define icon width and height. Defaults to `16px`.',
40
40
  type: 'string',
41
41
  status: 'optional'
42
42
  },
@@ -80,7 +80,7 @@ export const ToggleButtonProperties = {
80
80
  };
81
81
  export const ToggleButtonEvents = {
82
82
  on_change: {
83
- doc: 'will be called on state changes made by the user. Returns a boolean and string `{ checked, value, event }`',
83
+ doc: 'will be called on state changes made by the user. Returns a boolean and string `{ checked, value, event }`.',
84
84
  type: 'function',
85
85
  status: 'optional'
86
86
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ToggleButtonDocs.js","names":["ButtonProperties","ToggleButtonProperties","value","doc","type","status","text","checked","title","label","icon","icon_position","icon_size","tooltip","size","status_state","status_props","globalStatus","suffix","skeleton","ToggleButtonEvents","on_change"],"sources":["../../../../src/components/toggle-button/ToggleButtonDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../shared/types'\nimport { ButtonProperties } from '../button/ButtonDocs'\n\nexport const ToggleButtonProperties: PropertiesTableProps = {\n value: {\n doc: 'Defines the `value` as a string. Use it to get the value during the `on_change` event listener callback in the **ToggleButtonGroup**.',\n type: 'string',\n status: 'required',\n },\n text: {\n doc: 'The text shown in the ToggleButton.',\n type: 'string',\n status: 'required',\n },\n checked: {\n doc: 'Determine whether the ToggleButton is checked or not. The default will be `false`.',\n type: 'boolean',\n status: 'optional',\n },\n title: {\n doc: 'The `title` of the input - describing it a bit further for accessibility reasons.',\n type: 'string',\n status: 'optional',\n },\n label: {\n doc: 'Use either the `label` property or provide a custom one.',\n type: 'string',\n status: 'optional',\n },\n icon: {\n doc: 'Icon to be included in the toggle button.',\n type: ['string', 'React.ReactNode'],\n status: 'optional',\n },\n icon_position: {\n doc: 'Position of the icon inside the toggle button. Set to `left` or `right`. Defaults to `right` if not set.',\n type: ['left', 'right'],\n status: 'optional',\n },\n icon_size: {\n doc: 'Define icon width and height. Defaults to 16px.',\n type: 'string',\n status: 'optional',\n },\n tooltip: ButtonProperties.tooltip,\n size: ButtonProperties.size,\n status: {\n doc: 'Text with a status message. The style defaults to an error message. You can use `true` to only get the status color, without a message.',\n type: ['error', 'info', 'boolean'],\n status: 'optional',\n },\n status_state: {\n doc: 'Defines the state of the status. Currently, there are two statuses `[error, info]`. Defaults to `error`.',\n type: ['error', 'info'],\n status: 'optional',\n },\n status_props: {\n doc: 'Use an object to define additional FormStatus properties.',\n type: 'object',\n status: 'optional',\n },\n globalStatus: {\n doc: 'The [configuration](/uilib/components/global-status/properties/#configuration-object) used for the target [GlobalStatus](/uilib/components/global-status).',\n type: 'object',\n status: 'optional',\n },\n suffix: {\n doc: 'Text describing the content of the ToggleButton more than the label. You can also send in a React component, so it gets wrapped inside the ToggleButton component.',\n type: ['string', 'React.ReactNode'],\n status: 'optional',\n },\n skeleton: {\n doc: 'If set to `true`, an overlaying skeleton with animation will be shown.',\n type: 'boolean',\n status: 'optional',\n },\n '[Space](/uilib/layout/space/properties)': {\n doc: 'Spacing properties like `top` or `bottom` are supported.',\n type: ['string', 'object'],\n status: 'optional',\n },\n}\n\nexport const ToggleButtonEvents: PropertiesTableProps = {\n on_change: {\n doc: 'will be called on state changes made by the user. Returns a boolean and string `{ checked, value, event }`',\n type: 'function',\n status: 'optional',\n },\n}\n"],"mappings":"AACA,SAASA,gBAAgB,QAAQ,sBAAsB;AAEvD,OAAO,MAAMC,sBAA4C,GAAG;EAC1DC,KAAK,EAAE;IACLC,GAAG,EAAE,uIAAuI;IAC5IC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDC,IAAI,EAAE;IACJH,GAAG,EAAE,qCAAqC;IAC1CC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDE,OAAO,EAAE;IACPJ,GAAG,EAAE,oFAAoF;IACzFC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDG,KAAK,EAAE;IACLL,GAAG,EAAE,mFAAmF;IACxFC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDI,KAAK,EAAE;IACLN,GAAG,EAAE,0DAA0D;IAC/DC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDK,IAAI,EAAE;IACJP,GAAG,EAAE,2CAA2C;IAChDC,IAAI,EAAE,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACnCC,MAAM,EAAE;EACV,CAAC;EACDM,aAAa,EAAE;IACbR,GAAG,EAAE,0GAA0G;IAC/GC,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;IACvBC,MAAM,EAAE;EACV,CAAC;EACDO,SAAS,EAAE;IACTT,GAAG,EAAE,iDAAiD;IACtDC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDQ,OAAO,EAAEb,gBAAgB,CAACa,OAAO;EACjCC,IAAI,EAAEd,gBAAgB,CAACc,IAAI;EAC3BT,MAAM,EAAE;IACNF,GAAG,EAAE,yIAAyI;IAC9IC,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC;IAClCC,MAAM,EAAE;EACV,CAAC;EACDU,YAAY,EAAE;IACZZ,GAAG,EAAE,0GAA0G;IAC/GC,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;IACvBC,MAAM,EAAE;EACV,CAAC;EACDW,YAAY,EAAE;IACZb,GAAG,EAAE,2DAA2D;IAChEC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDY,YAAY,EAAE;IACZd,GAAG,EAAE,4JAA4J;IACjKC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDa,MAAM,EAAE;IACNf,GAAG,EAAE,oKAAoK;IACzKC,IAAI,EAAE,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACnCC,MAAM,EAAE;EACV,CAAC;EACDc,QAAQ,EAAE;IACRhB,GAAG,EAAE,wEAAwE;IAC7EC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACD,yCAAyC,EAAE;IACzCF,GAAG,EAAE,0DAA0D;IAC/DC,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC1BC,MAAM,EAAE;EACV;AACF,CAAC;AAED,OAAO,MAAMe,kBAAwC,GAAG;EACtDC,SAAS,EAAE;IACTlB,GAAG,EAAE,4GAA4G;IACjHC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"ToggleButtonDocs.js","names":["ButtonProperties","ToggleButtonProperties","value","doc","type","status","text","checked","title","label","icon","icon_position","icon_size","tooltip","size","status_state","status_props","globalStatus","suffix","skeleton","ToggleButtonEvents","on_change"],"sources":["../../../../src/components/toggle-button/ToggleButtonDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../shared/types'\nimport { ButtonProperties } from '../button/ButtonDocs'\n\nexport const ToggleButtonProperties: PropertiesTableProps = {\n value: {\n doc: 'Defines the `value` as a string. Use it to get the value during the `on_change` event listener callback in the **ToggleButtonGroup**.',\n type: 'string',\n status: 'required',\n },\n text: {\n doc: 'The text shown in the ToggleButton.',\n type: 'string',\n status: 'required',\n },\n checked: {\n doc: 'Determine whether the ToggleButton is checked or not. The default will be `false`.',\n type: 'boolean',\n status: 'optional',\n },\n title: {\n doc: 'The `title` of the input - describing it a bit further for accessibility reasons.',\n type: 'string',\n status: 'optional',\n },\n label: {\n doc: 'Use either the `label` property or provide a custom one.',\n type: 'string',\n status: 'optional',\n },\n icon: {\n doc: 'Icon to be included in the toggle button.',\n type: ['string', 'React.ReactNode'],\n status: 'optional',\n },\n icon_position: {\n doc: 'Position of the icon inside the toggle button. Set to `left` or `right`. Defaults to `right` if not set.',\n type: ['left', 'right'],\n status: 'optional',\n },\n icon_size: {\n doc: 'Define icon width and height. Defaults to `16px`.',\n type: 'string',\n status: 'optional',\n },\n tooltip: ButtonProperties.tooltip,\n size: ButtonProperties.size,\n status: {\n doc: 'Text with a status message. The style defaults to an error message. You can use `true` to only get the status color, without a message.',\n type: ['error', 'info', 'boolean'],\n status: 'optional',\n },\n status_state: {\n doc: 'Defines the state of the status. Currently, there are two statuses `[error, info]`. Defaults to `error`.',\n type: ['error', 'info'],\n status: 'optional',\n },\n status_props: {\n doc: 'Use an object to define additional FormStatus properties.',\n type: 'object',\n status: 'optional',\n },\n globalStatus: {\n doc: 'The [configuration](/uilib/components/global-status/properties/#configuration-object) used for the target [GlobalStatus](/uilib/components/global-status).',\n type: 'object',\n status: 'optional',\n },\n suffix: {\n doc: 'Text describing the content of the ToggleButton more than the label. You can also send in a React component, so it gets wrapped inside the ToggleButton component.',\n type: ['string', 'React.ReactNode'],\n status: 'optional',\n },\n skeleton: {\n doc: 'If set to `true`, an overlaying skeleton with animation will be shown.',\n type: 'boolean',\n status: 'optional',\n },\n '[Space](/uilib/layout/space/properties)': {\n doc: 'Spacing properties like `top` or `bottom` are supported.',\n type: ['string', 'object'],\n status: 'optional',\n },\n}\n\nexport const ToggleButtonEvents: PropertiesTableProps = {\n on_change: {\n doc: 'will be called on state changes made by the user. Returns a boolean and string `{ checked, value, event }`.',\n type: 'function',\n status: 'optional',\n },\n}\n"],"mappings":"AACA,SAASA,gBAAgB,QAAQ,sBAAsB;AAEvD,OAAO,MAAMC,sBAA4C,GAAG;EAC1DC,KAAK,EAAE;IACLC,GAAG,EAAE,uIAAuI;IAC5IC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDC,IAAI,EAAE;IACJH,GAAG,EAAE,qCAAqC;IAC1CC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDE,OAAO,EAAE;IACPJ,GAAG,EAAE,oFAAoF;IACzFC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACDG,KAAK,EAAE;IACLL,GAAG,EAAE,mFAAmF;IACxFC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDI,KAAK,EAAE;IACLN,GAAG,EAAE,0DAA0D;IAC/DC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDK,IAAI,EAAE;IACJP,GAAG,EAAE,2CAA2C;IAChDC,IAAI,EAAE,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACnCC,MAAM,EAAE;EACV,CAAC;EACDM,aAAa,EAAE;IACbR,GAAG,EAAE,0GAA0G;IAC/GC,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;IACvBC,MAAM,EAAE;EACV,CAAC;EACDO,SAAS,EAAE;IACTT,GAAG,EAAE,mDAAmD;IACxDC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDQ,OAAO,EAAEb,gBAAgB,CAACa,OAAO;EACjCC,IAAI,EAAEd,gBAAgB,CAACc,IAAI;EAC3BT,MAAM,EAAE;IACNF,GAAG,EAAE,yIAAyI;IAC9IC,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC;IAClCC,MAAM,EAAE;EACV,CAAC;EACDU,YAAY,EAAE;IACZZ,GAAG,EAAE,0GAA0G;IAC/GC,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;IACvBC,MAAM,EAAE;EACV,CAAC;EACDW,YAAY,EAAE;IACZb,GAAG,EAAE,2DAA2D;IAChEC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDY,YAAY,EAAE;IACZd,GAAG,EAAE,4JAA4J;IACjKC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE;EACV,CAAC;EACDa,MAAM,EAAE;IACNf,GAAG,EAAE,oKAAoK;IACzKC,IAAI,EAAE,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACnCC,MAAM,EAAE;EACV,CAAC;EACDc,QAAQ,EAAE;IACRhB,GAAG,EAAE,wEAAwE;IAC7EC,IAAI,EAAE,SAAS;IACfC,MAAM,EAAE;EACV,CAAC;EACD,yCAAyC,EAAE;IACzCF,GAAG,EAAE,0DAA0D;IAC/DC,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC1BC,MAAM,EAAE;EACV;AACF,CAAC;AAED,OAAO,MAAMe,kBAAwC,GAAG;EACtDC,SAAS,EAAE;IACTlB,GAAG,EAAE,6GAA6G;IAClHC,IAAI,EAAE,UAAU;IAChBC,MAAM,EAAE;EACV;AACF,CAAC","ignoreList":[]}
@@ -1,5 +1,6 @@
1
1
  "use client";
2
2
 
3
+ import _extends from "@babel/runtime/helpers/esm/extends";
3
4
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
4
5
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
5
6
  var _UploadInfo, _UploadFileList;
@@ -108,7 +109,7 @@ const Upload = localProps => {
108
109
  }
109
110
  return validFiles;
110
111
  }, [acceptedFileTypes, errorLargeFile, errorUnsupportedFile, fileMaxSize, files, filesAmountLimit, getExistingFile, onChange, setFiles, setInternalFiles]);
111
- const UploadWrapper = disableDragAndDrop ? HeightAnimation : UploadDropzone;
112
+ const UploadWrapper = disableDragAndDrop || props.disabled ? HeightAnimation : UploadDropzone;
112
113
  return React.createElement(UploadContext.Provider, {
113
114
  value: _objectSpread(_objectSpread({}, extendedProps), {}, {
114
115
  id,
@@ -118,7 +119,9 @@ const Upload = localProps => {
118
119
  skeleton: skeleton
119
120
  }, React.createElement(UploadWrapper, {
120
121
  className: classnames('dnb-upload', spacingClasses, className)
121
- }, _UploadInfo || (_UploadInfo = React.createElement(UploadInfo, null)), React.createElement(UploadFileInput, props), _UploadFileList || (_UploadFileList = React.createElement(UploadFileList, null)))));
122
+ }, _UploadInfo || (_UploadInfo = React.createElement(UploadInfo, null)), React.createElement(UploadFileInput, _extends({
123
+ disabled: props.disabled
124
+ }, props)), _UploadFileList || (_UploadFileList = React.createElement(UploadFileList, null)))));
122
125
  };
123
126
  Upload.useUpload = useUpload;
124
127
  Upload._formElement = true;
@@ -1 +1 @@
1
- {"version":3,"file":"Upload.js","names":["React","useCallback","classnames","createSpacingClasses","Provider","Context","extendPropsWithContext","makeUniqueId","useId","HeightAnimation","UploadFileInput","useUpload","UploadDropzone","UploadContext","defaultProps","verifyFiles","UploadFileList","UploadInfo","Upload","localProps","context","useContext","_context$getTranslati","getTranslation","buttonTextSingular","textSingular","translations","_objectWithoutProperties","_excluded","filesAmountLimit","buttonText","text","extendedProps","skeleton","id","idProp","className","acceptedFileTypes","fileMaxSize","onChange","onFileDelete","onFileClick","download","allowDuplicates","title","fileTypeTableCaption","fileTypeDescription","fileSizeDescription","fileAmountDescription","fileSizeContent","loadingText","errorLargeFile","errorUnsupportedFile","errorAmountLimit","deleteButton","fileListAriaLabel","disableDragAndDrop","props","_excluded2","spacingClasses","files","setFiles","setInternalFiles","getExistingFile","onInputUpload","newFiles","mergedFiles","map","fileItem","file","existingFile","exists","Boolean","filesToVerify","filter","_ref","verifiedFiles","validFiles","slice","UploadWrapper","createElement","value","_objectSpread","_UploadInfo","_UploadFileList","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/upload/Upload.tsx"],"sourcesContent":["import React, { useCallback } from 'react'\nimport classnames from 'classnames'\n\n// Shared\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport Provider from '../../shared/Provider'\nimport Context from '../../shared/Context'\nimport {\n extendPropsWithContext,\n makeUniqueId,\n} from '../../shared/component-helper'\nimport useId from '../../shared/helpers/useId'\nimport HeightAnimation from '../height-animation/HeightAnimation'\n\n// Internal\nimport UploadFileInput from './UploadFileInput'\nimport useUpload from './useUpload'\nimport UploadDropzone from './UploadDropzone'\nimport { UploadContext, defaultProps } from './UploadContext'\nimport { verifyFiles } from './UploadVerify'\n\nimport type { UploadFile, UploadAllProps } from './types'\nimport UploadFileList from './UploadFileList'\nimport UploadInfo from './UploadInfo'\n\nexport type * from './types'\nexport { defaultProps }\n\nconst Upload = (localProps: UploadAllProps) => {\n const context = React.useContext(Context)\n\n const { buttonTextSingular, textSingular, ...translations } =\n context.getTranslation(localProps).Upload\n\n if (localProps?.filesAmountLimit === 1) {\n translations.buttonText = buttonTextSingular\n translations.text = textSingular\n }\n\n const extendedProps = extendPropsWithContext(\n localProps,\n defaultProps,\n { skeleton: context?.skeleton },\n translations,\n context.Upload\n )\n\n const {\n id: idProp,\n skeleton,\n className,\n acceptedFileTypes,\n filesAmountLimit,\n fileMaxSize,\n onChange,\n onFileDelete, // eslint-disable-line\n onFileClick, // eslint-disable-line\n download, // eslint-disable-line\n allowDuplicates,\n title, // eslint-disable-line\n text, // eslint-disable-line\n fileTypeTableCaption, // eslint-disable-line\n fileTypeDescription, // eslint-disable-line\n fileSizeDescription, // eslint-disable-line\n fileAmountDescription, // eslint-disable-line\n fileSizeContent, // eslint-disable-line\n buttonText, // eslint-disable-line\n loadingText, // eslint-disable-line\n errorLargeFile,\n errorUnsupportedFile,\n errorAmountLimit, // eslint-disable-line\n deleteButton, // eslint-disable-line\n fileListAriaLabel, // eslint-disable-line\n disableDragAndDrop,\n ...props\n } = extendedProps\n\n const spacingClasses = createSpacingClasses(props)\n\n const id = useId(idProp)\n\n const { files, setFiles, setInternalFiles, getExistingFile } =\n useUpload(id)\n\n const onInputUpload = useCallback(\n (newFiles: Array<UploadFile>) => {\n const mergedFiles = [\n ...files,\n ...newFiles.map((fileItem) => {\n const { file } = fileItem\n\n const existingFile = getExistingFile(file, files)\n\n fileItem.exists = Boolean(existingFile)\n fileItem.id =\n fileItem.exists && !allowDuplicates\n ? existingFile.id\n : makeUniqueId()\n\n return fileItem\n }),\n ]\n\n const filesToVerify = allowDuplicates\n ? mergedFiles\n : mergedFiles.filter(({ exists }) => !exists)\n\n const verifiedFiles = verifyFiles(filesToVerify, {\n fileMaxSize,\n acceptedFileTypes,\n errorUnsupportedFile,\n errorLargeFile,\n })\n\n const validFiles = [...verifiedFiles].slice(\n 0,\n filesAmountLimit\n ) as Array<UploadFile>\n\n setFiles(validFiles)\n setInternalFiles(mergedFiles)\n\n if (typeof onChange === 'function') {\n onChange({ files: validFiles })\n }\n\n return validFiles\n },\n [\n acceptedFileTypes,\n errorLargeFile,\n errorUnsupportedFile,\n fileMaxSize,\n files,\n filesAmountLimit,\n getExistingFile,\n onChange,\n setFiles,\n setInternalFiles,\n ]\n )\n\n const UploadWrapper = disableDragAndDrop\n ? HeightAnimation\n : UploadDropzone\n\n return (\n <UploadContext.Provider\n value={{\n ...extendedProps,\n id,\n onInputUpload,\n }}\n >\n <Provider skeleton={skeleton}>\n <UploadWrapper\n className={classnames('dnb-upload', spacingClasses, className)}\n >\n <UploadInfo />\n\n <UploadFileInput {...props} />\n\n <UploadFileList />\n </UploadWrapper>\n </Provider>\n </UploadContext.Provider>\n )\n}\n\nUpload.useUpload = useUpload\n\nUpload._formElement = true\nUpload._supportsSpacingProps = true\n\nexport default Upload\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Upload.js","names":["React","useCallback","classnames","createSpacingClasses","Provider","Context","extendPropsWithContext","makeUniqueId","useId","HeightAnimation","UploadFileInput","useUpload","UploadDropzone","UploadContext","defaultProps","verifyFiles","UploadFileList","UploadInfo","Upload","localProps","context","useContext","_context$getTranslati","getTranslation","buttonTextSingular","textSingular","translations","_objectWithoutProperties","_excluded","filesAmountLimit","buttonText","text","extendedProps","skeleton","id","idProp","className","acceptedFileTypes","fileMaxSize","onChange","onFileDelete","onFileClick","download","allowDuplicates","title","fileTypeTableCaption","fileTypeDescription","fileSizeDescription","fileAmountDescription","fileSizeContent","loadingText","errorLargeFile","errorUnsupportedFile","errorAmountLimit","deleteButton","fileListAriaLabel","disableDragAndDrop","props","_excluded2","spacingClasses","files","setFiles","setInternalFiles","getExistingFile","onInputUpload","newFiles","mergedFiles","map","fileItem","file","existingFile","exists","Boolean","filesToVerify","filter","_ref","verifiedFiles","validFiles","slice","UploadWrapper","disabled","createElement","value","_objectSpread","_UploadInfo","_extends","_UploadFileList","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/upload/Upload.tsx"],"sourcesContent":["import React, { useCallback } from 'react'\nimport classnames from 'classnames'\n\n// Shared\nimport { createSpacingClasses } from '../space/SpacingHelper'\nimport Provider from '../../shared/Provider'\nimport Context from '../../shared/Context'\nimport {\n extendPropsWithContext,\n makeUniqueId,\n} from '../../shared/component-helper'\nimport useId from '../../shared/helpers/useId'\nimport HeightAnimation from '../height-animation/HeightAnimation'\n\n// Internal\nimport UploadFileInput from './UploadFileInput'\nimport useUpload from './useUpload'\nimport UploadDropzone from './UploadDropzone'\nimport { UploadContext, defaultProps } from './UploadContext'\nimport { verifyFiles } from './UploadVerify'\n\nimport type { UploadFile, UploadAllProps } from './types'\nimport UploadFileList from './UploadFileList'\nimport UploadInfo from './UploadInfo'\n\nexport type * from './types'\nexport { defaultProps }\n\nconst Upload = (localProps: UploadAllProps) => {\n const context = React.useContext(Context)\n\n const { buttonTextSingular, textSingular, ...translations } =\n context.getTranslation(localProps).Upload\n\n if (localProps?.filesAmountLimit === 1) {\n translations.buttonText = buttonTextSingular\n translations.text = textSingular\n }\n\n const extendedProps = extendPropsWithContext(\n localProps,\n defaultProps,\n { skeleton: context?.skeleton },\n translations,\n context.Upload\n )\n\n const {\n id: idProp,\n skeleton,\n className,\n acceptedFileTypes,\n filesAmountLimit,\n fileMaxSize,\n onChange,\n onFileDelete, // eslint-disable-line\n onFileClick, // eslint-disable-line\n download, // eslint-disable-line\n allowDuplicates,\n title, // eslint-disable-line\n text, // eslint-disable-line\n fileTypeTableCaption, // eslint-disable-line\n fileTypeDescription, // eslint-disable-line\n fileSizeDescription, // eslint-disable-line\n fileAmountDescription, // eslint-disable-line\n fileSizeContent, // eslint-disable-line\n buttonText, // eslint-disable-line\n loadingText, // eslint-disable-line\n errorLargeFile,\n errorUnsupportedFile,\n errorAmountLimit, // eslint-disable-line\n deleteButton, // eslint-disable-line\n fileListAriaLabel, // eslint-disable-line\n disableDragAndDrop,\n ...props\n } = extendedProps\n\n const spacingClasses = createSpacingClasses(props)\n\n const id = useId(idProp)\n\n const { files, setFiles, setInternalFiles, getExistingFile } =\n useUpload(id)\n\n const onInputUpload = useCallback(\n (newFiles: Array<UploadFile>) => {\n const mergedFiles = [\n ...files,\n ...newFiles.map((fileItem) => {\n const { file } = fileItem\n\n const existingFile = getExistingFile(file, files)\n\n fileItem.exists = Boolean(existingFile)\n fileItem.id =\n fileItem.exists && !allowDuplicates\n ? existingFile.id\n : makeUniqueId()\n\n return fileItem\n }),\n ]\n\n const filesToVerify = allowDuplicates\n ? mergedFiles\n : mergedFiles.filter(({ exists }) => !exists)\n\n const verifiedFiles = verifyFiles(filesToVerify, {\n fileMaxSize,\n acceptedFileTypes,\n errorUnsupportedFile,\n errorLargeFile,\n })\n\n const validFiles = [...verifiedFiles].slice(\n 0,\n filesAmountLimit\n ) as Array<UploadFile>\n\n setFiles(validFiles)\n setInternalFiles(mergedFiles)\n\n if (typeof onChange === 'function') {\n onChange({ files: validFiles })\n }\n\n return validFiles\n },\n [\n acceptedFileTypes,\n errorLargeFile,\n errorUnsupportedFile,\n fileMaxSize,\n files,\n filesAmountLimit,\n getExistingFile,\n onChange,\n setFiles,\n setInternalFiles,\n ]\n )\n\n const UploadWrapper =\n disableDragAndDrop || props.disabled ? HeightAnimation : UploadDropzone\n\n return (\n <UploadContext.Provider\n value={{\n ...extendedProps,\n id,\n onInputUpload,\n }}\n >\n <Provider skeleton={skeleton}>\n <UploadWrapper\n className={classnames('dnb-upload', spacingClasses, className)}\n >\n <UploadInfo />\n\n <UploadFileInput disabled={props.disabled} {...props} />\n\n <UploadFileList />\n </UploadWrapper>\n </Provider>\n </UploadContext.Provider>\n )\n}\n\nUpload.useUpload = useUpload\n\nUpload._formElement = true\nUpload._supportsSpacingProps = true\n\nexport default Upload\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
- declare const UploadFileInput: ({ children, ...rest }: {
2
+ declare const UploadFileInput: ({ children, disabled, ...rest }: {
3
3
  children?: React.ReactNode;
4
+ disabled?: boolean;
4
5
  }) => import("react/jsx-runtime").JSX.Element;
5
6
  export default UploadFileInput;
@@ -3,7 +3,7 @@
3
3
  import _extends from "@babel/runtime/helpers/esm/extends";
4
4
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
5
5
  var _UploadStatus;
6
- const _excluded = ["children"];
6
+ const _excluded = ["children", "disabled"];
7
7
  import React, { useRef } from 'react';
8
8
  import Button from '../button/Button';
9
9
  import { folder as FolderIcon } from '../../icons';
@@ -13,7 +13,8 @@ import UploadStatus from './UploadStatus';
13
13
  import { getAcceptedFileTypes } from './UploadVerify';
14
14
  const UploadFileInput = _ref => {
15
15
  let {
16
- children
16
+ children,
17
+ disabled
17
18
  } = _ref,
18
19
  rest = _objectWithoutProperties(_ref, _excluded);
19
20
  const fileInput = useRef(null);
@@ -41,7 +42,8 @@ const UploadFileInput = _ref => {
41
42
  icon_position: "left",
42
43
  variant: "secondary",
43
44
  wrap: true,
44
- onClick: openFileDialog
45
+ onClick: openFileDialog,
46
+ disabled: disabled
45
47
  }, buttonText), _UploadStatus || (_UploadStatus = React.createElement(UploadStatus, null)), React.createElement("input", _extends({
46
48
  "aria-labelledby": `${sharedId}-input`,
47
49
  ref: fileInput,
@@ -50,7 +52,8 @@ const UploadFileInput = _ref => {
50
52
  type: "file",
51
53
  onChange: onChangeHandler,
52
54
  onClick: onClickHandler,
53
- multiple: filesAmountLimit > 1
55
+ multiple: filesAmountLimit > 1,
56
+ disabled: disabled
54
57
  }, rest)));
55
58
  function onChangeHandler(event) {
56
59
  const target = event.target;
@@ -1 +1 @@
1
- {"version":3,"file":"UploadFileInput.js","names":["React","useRef","Button","folder","FolderIcon","makeUniqueId","UploadContext","UploadStatus","getAcceptedFileTypes","UploadFileInput","_ref","children","rest","_objectWithoutProperties","_excluded","fileInput","context","useContext","id","acceptedFileTypes","buttonText","onInputUpload","filesAmountLimit","openFileDialog","_fileInput$current","current","click","sharedId","accept","createElement","className","top","icon","icon_position","variant","wrap","onClick","_UploadStatus","_extends","ref","type","onChange","onChangeHandler","onClickHandler","multiple","event","target","files","Array","from","map","file","value"],"sources":["../../../../src/components/upload/UploadFileInput.tsx"],"sourcesContent":["import React, { useRef } from 'react'\n\n// Components\nimport Button from '../button/Button'\n\n// Icons\nimport { folder as FolderIcon } from '../../icons'\n\n// Shared\nimport { makeUniqueId } from '../../shared/component-helper'\n\n// Internal\nimport { UploadContext } from './UploadContext'\nimport UploadStatus from './UploadStatus'\nimport { getAcceptedFileTypes } from './UploadVerify'\n\nconst UploadFileInput = ({\n children,\n ...rest\n}: {\n children?: React.ReactNode\n}) => {\n const fileInput = useRef<HTMLInputElement>(null)\n\n const context = React.useContext(UploadContext)\n\n const {\n id,\n acceptedFileTypes,\n buttonText,\n onInputUpload,\n filesAmountLimit,\n } = context\n\n const openFileDialog = () => fileInput.current?.click()\n\n const sharedId = id || makeUniqueId()\n const accept = getAcceptedFileTypes(acceptedFileTypes)\n\n return (\n <div className=\"dnb-upload__file-input-area\">\n <Button\n top=\"medium\"\n id={`${sharedId}-input`}\n className=\"dnb-upload__file-input-button\"\n icon={FolderIcon}\n icon_position=\"left\"\n variant=\"secondary\"\n wrap\n onClick={openFileDialog}\n >\n {buttonText}\n </Button>\n\n <UploadStatus />\n\n <input\n aria-labelledby={`${sharedId}-input`}\n ref={fileInput}\n accept={accept}\n className=\"dnb-upload__file-input\"\n type=\"file\"\n onChange={onChangeHandler}\n onClick={onClickHandler}\n multiple={filesAmountLimit > 1}\n {...rest}\n />\n </div>\n )\n\n function onChangeHandler(event: React.SyntheticEvent) {\n const target = event.target as HTMLInputElement\n const { files } = target\n\n onInputUpload(\n Array.from(files).map((file) => {\n return { file }\n })\n )\n }\n\n function onClickHandler(event: React.SyntheticEvent) {\n const target = event.target as HTMLInputElement\n\n /**\n * This resets the internal state.\n * Some browsers (chromium) to check for already selected files.\n * But we have our own logic for that.\n * We also align the UX to be the same to all browsers,\n * and to be same when the drag file API is used.\n */\n target.value = null\n }\n}\n\nexport default UploadFileInput\n"],"mappings":";;;;;;AAAA,OAAOA,KAAK,IAAIC,MAAM,QAAQ,OAAO;AAGrC,OAAOC,MAAM,MAAM,kBAAkB;AAGrC,SAASC,MAAM,IAAIC,UAAU,QAAQ,aAAa;AAGlD,SAASC,YAAY,QAAQ,+BAA+B;AAG5D,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,OAAOC,YAAY,MAAM,gBAAgB;AACzC,SAASC,oBAAoB,QAAQ,gBAAgB;AAErD,MAAMC,eAAe,GAAGC,IAAA,IAKlB;EAAA,IALmB;MACvBC;IAIF,CAAC,GAAAD,IAAA;IAHIE,IAAI,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAIP,MAAMC,SAAS,GAAGd,MAAM,CAAmB,IAAI,CAAC;EAEhD,MAAMe,OAAO,GAAGhB,KAAK,CAACiB,UAAU,CAACX,aAAa,CAAC;EAE/C,MAAM;IACJY,EAAE;IACFC,iBAAiB;IACjBC,UAAU;IACVC,aAAa;IACbC;EACF,CAAC,GAAGN,OAAO;EAEX,MAAMO,cAAc,GAAGA,CAAA;IAAA,IAAAC,kBAAA;IAAA,QAAAA,kBAAA,GAAMT,SAAS,CAACU,OAAO,cAAAD,kBAAA,uBAAjBA,kBAAA,CAAmBE,KAAK,CAAC,CAAC;EAAA;EAEvD,MAAMC,QAAQ,GAAGT,EAAE,IAAIb,YAAY,CAAC,CAAC;EACrC,MAAMuB,MAAM,GAAGpB,oBAAoB,CAACW,iBAAiB,CAAC;EAEtD,OACEnB,KAAA,CAAA6B,aAAA;IAAKC,SAAS,EAAC;EAA6B,GAC1C9B,KAAA,CAAA6B,aAAA,CAAC3B,MAAM;IACL6B,GAAG,EAAC,QAAQ;IACZb,EAAE,EAAE,GAAGS,QAAQ,QAAS;IACxBG,SAAS,EAAC,+BAA+B;IACzCE,IAAI,EAAE5B,UAAW;IACjB6B,aAAa,EAAC,MAAM;IACpBC,OAAO,EAAC,WAAW;IACnBC,IAAI;IACJC,OAAO,EAAEb;EAAe,GAEvBH,UACK,CAAC,EAAAiB,aAAA,KAAAA,aAAA,GAETrC,KAAA,CAAA6B,aAAA,CAACtB,YAAY,MAAE,CAAC,GAEhBP,KAAA,CAAA6B,aAAA,UAAAS,QAAA;IACE,mBAAiB,GAAGX,QAAQ,QAAS;IACrCY,GAAG,EAAExB,SAAU;IACfa,MAAM,EAAEA,MAAO;IACfE,SAAS,EAAC,wBAAwB;IAClCU,IAAI,EAAC,MAAM;IACXC,QAAQ,EAAEC,eAAgB;IAC1BN,OAAO,EAAEO,cAAe;IACxBC,QAAQ,EAAEtB,gBAAgB,GAAG;EAAE,GAC3BV,IAAI,CACT,CACE,CAAC;EAGR,SAAS8B,eAAeA,CAACG,KAA2B,EAAE;IACpD,MAAMC,MAAM,GAAGD,KAAK,CAACC,MAA0B;IAC/C,MAAM;MAAEC;IAAM,CAAC,GAAGD,MAAM;IAExBzB,aAAa,CACX2B,KAAK,CAACC,IAAI,CAACF,KAAK,CAAC,CAACG,GAAG,CAAEC,IAAI,IAAK;MAC9B,OAAO;QAAEA;MAAK,CAAC;IACjB,CAAC,CACH,CAAC;EACH;EAEA,SAASR,cAAcA,CAACE,KAA2B,EAAE;IACnD,MAAMC,MAAM,GAAGD,KAAK,CAACC,MAA0B;IAS/CA,MAAM,CAACM,KAAK,GAAG,IAAI;EACrB;AACF,CAAC;AAED,eAAe3C,eAAe","ignoreList":[]}
1
+ {"version":3,"file":"UploadFileInput.js","names":["React","useRef","Button","folder","FolderIcon","makeUniqueId","UploadContext","UploadStatus","getAcceptedFileTypes","UploadFileInput","_ref","children","disabled","rest","_objectWithoutProperties","_excluded","fileInput","context","useContext","id","acceptedFileTypes","buttonText","onInputUpload","filesAmountLimit","openFileDialog","_fileInput$current","current","click","sharedId","accept","createElement","className","top","icon","icon_position","variant","wrap","onClick","_UploadStatus","_extends","ref","type","onChange","onChangeHandler","onClickHandler","multiple","event","target","files","Array","from","map","file","value"],"sources":["../../../../src/components/upload/UploadFileInput.tsx"],"sourcesContent":["import React, { useRef } from 'react'\n\n// Components\nimport Button from '../button/Button'\n\n// Icons\nimport { folder as FolderIcon } from '../../icons'\n\n// Shared\nimport { makeUniqueId } from '../../shared/component-helper'\n\n// Internal\nimport { UploadContext } from './UploadContext'\nimport UploadStatus from './UploadStatus'\nimport { getAcceptedFileTypes } from './UploadVerify'\n\nconst UploadFileInput = ({\n children,\n disabled,\n ...rest\n}: {\n children?: React.ReactNode\n disabled?: boolean\n}) => {\n const fileInput = useRef<HTMLInputElement>(null)\n\n const context = React.useContext(UploadContext)\n\n const {\n id,\n acceptedFileTypes,\n buttonText,\n onInputUpload,\n filesAmountLimit,\n } = context\n\n const openFileDialog = () => fileInput.current?.click()\n\n const sharedId = id || makeUniqueId()\n const accept = getAcceptedFileTypes(acceptedFileTypes)\n\n return (\n <div className=\"dnb-upload__file-input-area\">\n <Button\n top=\"medium\"\n id={`${sharedId}-input`}\n className=\"dnb-upload__file-input-button\"\n icon={FolderIcon}\n icon_position=\"left\"\n variant=\"secondary\"\n wrap\n onClick={openFileDialog}\n disabled={disabled}\n >\n {buttonText}\n </Button>\n\n <UploadStatus />\n\n <input\n aria-labelledby={`${sharedId}-input`}\n ref={fileInput}\n accept={accept}\n className=\"dnb-upload__file-input\"\n type=\"file\"\n onChange={onChangeHandler}\n onClick={onClickHandler}\n multiple={filesAmountLimit > 1}\n disabled={disabled}\n {...rest}\n />\n </div>\n )\n\n function onChangeHandler(event: React.SyntheticEvent) {\n const target = event.target as HTMLInputElement\n const { files } = target\n\n onInputUpload(\n Array.from(files).map((file) => {\n return { file }\n })\n )\n }\n\n function onClickHandler(event: React.SyntheticEvent) {\n const target = event.target as HTMLInputElement\n\n /**\n * This resets the internal state.\n * Some browsers (chromium) to check for already selected files.\n * But we have our own logic for that.\n * We also align the UX to be the same to all browsers,\n * and to be same when the drag file API is used.\n */\n target.value = null\n }\n}\n\nexport default UploadFileInput\n"],"mappings":";;;;;;AAAA,OAAOA,KAAK,IAAIC,MAAM,QAAQ,OAAO;AAGrC,OAAOC,MAAM,MAAM,kBAAkB;AAGrC,SAASC,MAAM,IAAIC,UAAU,QAAQ,aAAa;AAGlD,SAASC,YAAY,QAAQ,+BAA+B;AAG5D,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,OAAOC,YAAY,MAAM,gBAAgB;AACzC,SAASC,oBAAoB,QAAQ,gBAAgB;AAErD,MAAMC,eAAe,GAAGC,IAAA,IAOlB;EAAA,IAPmB;MACvBC,QAAQ;MACRC;IAKF,CAAC,GAAAF,IAAA;IAJIG,IAAI,GAAAC,wBAAA,CAAAJ,IAAA,EAAAK,SAAA;EAKP,MAAMC,SAAS,GAAGf,MAAM,CAAmB,IAAI,CAAC;EAEhD,MAAMgB,OAAO,GAAGjB,KAAK,CAACkB,UAAU,CAACZ,aAAa,CAAC;EAE/C,MAAM;IACJa,EAAE;IACFC,iBAAiB;IACjBC,UAAU;IACVC,aAAa;IACbC;EACF,CAAC,GAAGN,OAAO;EAEX,MAAMO,cAAc,GAAGA,CAAA;IAAA,IAAAC,kBAAA;IAAA,QAAAA,kBAAA,GAAMT,SAAS,CAACU,OAAO,cAAAD,kBAAA,uBAAjBA,kBAAA,CAAmBE,KAAK,CAAC,CAAC;EAAA;EAEvD,MAAMC,QAAQ,GAAGT,EAAE,IAAId,YAAY,CAAC,CAAC;EACrC,MAAMwB,MAAM,GAAGrB,oBAAoB,CAACY,iBAAiB,CAAC;EAEtD,OACEpB,KAAA,CAAA8B,aAAA;IAAKC,SAAS,EAAC;EAA6B,GAC1C/B,KAAA,CAAA8B,aAAA,CAAC5B,MAAM;IACL8B,GAAG,EAAC,QAAQ;IACZb,EAAE,EAAE,GAAGS,QAAQ,QAAS;IACxBG,SAAS,EAAC,+BAA+B;IACzCE,IAAI,EAAE7B,UAAW;IACjB8B,aAAa,EAAC,MAAM;IACpBC,OAAO,EAAC,WAAW;IACnBC,IAAI;IACJC,OAAO,EAAEb,cAAe;IACxBZ,QAAQ,EAAEA;EAAS,GAElBS,UACK,CAAC,EAAAiB,aAAA,KAAAA,aAAA,GAETtC,KAAA,CAAA8B,aAAA,CAACvB,YAAY,MAAE,CAAC,GAEhBP,KAAA,CAAA8B,aAAA,UAAAS,QAAA;IACE,mBAAiB,GAAGX,QAAQ,QAAS;IACrCY,GAAG,EAAExB,SAAU;IACfa,MAAM,EAAEA,MAAO;IACfE,SAAS,EAAC,wBAAwB;IAClCU,IAAI,EAAC,MAAM;IACXC,QAAQ,EAAEC,eAAgB;IAC1BN,OAAO,EAAEO,cAAe;IACxBC,QAAQ,EAAEtB,gBAAgB,GAAG,CAAE;IAC/BX,QAAQ,EAAEA;EAAS,GACfC,IAAI,CACT,CACE,CAAC;EAGR,SAAS8B,eAAeA,CAACG,KAA2B,EAAE;IACpD,MAAMC,MAAM,GAAGD,KAAK,CAACC,MAA0B;IAC/C,MAAM;MAAEC;IAAM,CAAC,GAAGD,MAAM;IAExBzB,aAAa,CACX2B,KAAK,CAACC,IAAI,CAACF,KAAK,CAAC,CAACG,GAAG,CAAEC,IAAI,IAAK;MAC9B,OAAO;QAAEA;MAAK,CAAC;IACjB,CAAC,CACH,CAAC;EACH;EAEA,SAASR,cAAcA,CAACE,KAA2B,EAAE;IACnD,MAAMC,MAAM,GAAGD,KAAK,CAACC,MAA0B;IAS/CA,MAAM,CAACM,KAAK,GAAG,IAAI;EACrB;AACF,CAAC;AAED,eAAe5C,eAAe","ignoreList":[]}
@@ -124,7 +124,6 @@
124
124
  }
125
125
  .dnb-upload__accepted-file-types-table.dnb-table {
126
126
  width: -webkit-fit-content;
127
- width: -moz-fit-content;
128
127
  width: fit-content;
129
128
  }
130
129
  .dnb-upload__accepted-file-types-table.dnb-table thead th {
@@ -1 +1 @@
1
- .dnb-upload{--upload-background:#fff;--upload-background--active:#d3d3d3;--upload-border:gray;--upload-border--active:#000;--upload-border-width:2px;--upload-list-border:#000;--upload-icon--default:#000;--upload-icon--warning:red;--upload-highlight:#ffffe0;--upload-text--primary:#000;--upload-text--secondary:#000;background-color:var(--upload-background);border-radius:.5rem;display:flex;flex-direction:column;flex-grow:1;padding:var(--spacing-medium);position:relative}@media screen and (max-width:40em){.dnb-upload{padding:var(--spacing-medium) var(--spacing-small)}}.dnb-upload__outline{stroke:var(--upload-border);stroke-width:.1875rem;border-radius:.5rem;bottom:0;content:"";height:100%;left:0;pointer-events:none;position:absolute;right:0;top:0;width:100%}.dnb-upload--active .dnb-upload__outline{stroke:var(--upload-border--active);bottom:-1px;height:calc(100% + var(--upload-border-width));left:-1px;right:-1px;top:-1px;width:calc(100% + var(--upload-border-width))}.dnb-upload--active .dnb-upload__outline rect{stroke-width:.25rem;stroke-dasharray:0}.dnb-upload--active{background-color:var(--upload-background--active)}.dnb-upload__file-input{position:absolute;visibility:hidden}.dnb-upload__file-list{list-style:none;margin-bottom:0;margin-top:var(--spacing-medium);padding:0;position:relative}.dnb-upload__file-cell:after,.dnb-upload__file-list:before{background-color:var(--upload-list-border);bottom:0;content:"";height:1px;left:0;position:absolute;right:0;top:0}.dnb-upload__file-cell{padding:var(--spacing-small) 0;position:relative;transition:background-color;transition-duration:1.5s;transition-timing-function:var(--easing-default)}.dnb-upload__file-cell:after{top:auto}.dnb-upload__file-cell__content{justify-content:space-between}.dnb-upload__file-cell__content,.dnb-upload__file-cell__content__left{align-items:center;column-gap:var(--spacing-small);display:flex}.dnb-upload__file-cell__content__left .dnb-icon{color:var(--upload-icon--default)}.dnb-upload__file-cell--warning .dnb-upload__file-cell__content__left .dnb-icon{color:var(--upload-icon--warning)}.dnb-upload__file-cell--highlight{background-color:var(--upload-highlight)}.dnb-upload__file-cell__text-container{display:flex;flex-direction:column}.dnb-upload__file-cell__text-container--loading{font-size:var(--font-size-basis)}.dnb-upload__text.dnb-p{color:var(--upload-text--secondary)}.dnb-upload__accepted-file-types-table.dnb-table{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.dnb-upload__accepted-file-types-table.dnb-table thead th{font-size:var(--font-size-basis);font-weight:var(--font-weight-medium);padding-top:0}.dnb-upload__accepted-file-types-table.dnb-table tbody td:first-child,.dnb-upload__accepted-file-types-table.dnb-table thead th:first-child{padding-left:0}.dnb-upload__subtitle.dnb-p{color:var(--upload-text--secondary)}
1
+ .dnb-upload{--upload-background:#fff;--upload-background--active:#d3d3d3;--upload-border:gray;--upload-border--active:#000;--upload-border-width:2px;--upload-list-border:#000;--upload-icon--default:#000;--upload-icon--warning:red;--upload-highlight:#ffffe0;--upload-text--primary:#000;--upload-text--secondary:#000;background-color:var(--upload-background);border-radius:.5rem;display:flex;flex-direction:column;flex-grow:1;padding:var(--spacing-medium);position:relative}@media screen and (max-width:40em){.dnb-upload{padding:var(--spacing-medium) var(--spacing-small)}}.dnb-upload__outline{stroke:var(--upload-border);stroke-width:.1875rem;border-radius:.5rem;bottom:0;content:"";height:100%;left:0;pointer-events:none;position:absolute;right:0;top:0;width:100%}.dnb-upload--active .dnb-upload__outline{stroke:var(--upload-border--active);bottom:-1px;height:calc(100% + var(--upload-border-width));left:-1px;right:-1px;top:-1px;width:calc(100% + var(--upload-border-width))}.dnb-upload--active .dnb-upload__outline rect{stroke-width:.25rem;stroke-dasharray:0}.dnb-upload--active{background-color:var(--upload-background--active)}.dnb-upload__file-input{position:absolute;visibility:hidden}.dnb-upload__file-list{list-style:none;margin-bottom:0;margin-top:var(--spacing-medium);padding:0;position:relative}.dnb-upload__file-cell:after,.dnb-upload__file-list:before{background-color:var(--upload-list-border);bottom:0;content:"";height:1px;left:0;position:absolute;right:0;top:0}.dnb-upload__file-cell{padding:var(--spacing-small) 0;position:relative;transition:background-color;transition-duration:1.5s;transition-timing-function:var(--easing-default)}.dnb-upload__file-cell:after{top:auto}.dnb-upload__file-cell__content{justify-content:space-between}.dnb-upload__file-cell__content,.dnb-upload__file-cell__content__left{align-items:center;column-gap:var(--spacing-small);display:flex}.dnb-upload__file-cell__content__left .dnb-icon{color:var(--upload-icon--default)}.dnb-upload__file-cell--warning .dnb-upload__file-cell__content__left .dnb-icon{color:var(--upload-icon--warning)}.dnb-upload__file-cell--highlight{background-color:var(--upload-highlight)}.dnb-upload__file-cell__text-container{display:flex;flex-direction:column}.dnb-upload__file-cell__text-container--loading{font-size:var(--font-size-basis)}.dnb-upload__text.dnb-p{color:var(--upload-text--secondary)}.dnb-upload__accepted-file-types-table.dnb-table{width:-webkit-fit-content;width:fit-content}.dnb-upload__accepted-file-types-table.dnb-table thead th{font-size:var(--font-size-basis);font-weight:var(--font-weight-medium);padding-top:0}.dnb-upload__accepted-file-types-table.dnb-table tbody td:first-child,.dnb-upload__accepted-file-types-table.dnb-table thead th:first-child{padding-left:0}.dnb-upload__subtitle.dnb-p{color:var(--upload-text--secondary)}
@@ -51,3 +51,9 @@ html {
51
51
  gatsby-qod {
52
52
  opacity: 0;
53
53
  }
54
+
55
+ [data-visual-test].hide-page-content
56
+ div.eufemia-theme:not(.dnb-modal__content) {
57
+ /* NB: visibility: hidden; does not work here, because puppeteer does not find the selectors anymore */
58
+ opacity: 0;
59
+ }
@@ -210,7 +210,7 @@ function Accordion(_ref) {
210
210
  }
211
211
  const Group = _ref2 => {
212
212
  let {
213
- expandBehaviour = 'single',
213
+ expandBehaviour,
214
214
  expandBehavior = 'single'
215
215
  } = _ref2,
216
216
  props = _objectWithoutProperties(_ref2, _excluded3);
@@ -254,8 +254,7 @@ const Group = _ref2 => {
254
254
  onInit: onInit
255
255
  }, props, {
256
256
  group: group,
257
- expandBehaviour: expandBehaviour,
258
- expandBehavior: expandBehavior,
257
+ expandBehavior: expandBehaviour || expandBehavior,
259
258
  expanded_id: expandedId || props.expanded_id
260
259
  }));
261
260
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Accordion.js","names":["React","useContext","useState","useEffect","useRef","useMemo","classnames","makeUniqueId","findElementInChildren","extendPropsWithContext","validateDOMAttributes","dispatchCustomElementEvent","createSpacingClasses","AccordionGroup","AccordionHeader","AccordionContent","AccordionContext","AccordionProviderContext","Context","AccordionStore","Store","rememberWarning","accordionDefaultProps","Accordion","_ref","variant","icon_size","restOfProps","_objectWithoutProperties","_excluded","props","_objectSpread","context","group","id","current","store","previousExpanded","setPreviousExpanded","expanded","setExpanded","getInitialExpandedState","hasAddedCallbackRef","undefined","thisInstance","_id","handleDisabledClick","callOnChange","callOnChangeHandler","close","setExpandedState","state","window","addInstance","onInit","_window","_window$__dnbAccordio","removeInstance","flush_remembered_state","flush","expanded_id","collapseAllHandleRef","_context$collapseAcco","collapseAccordionCallbacks","push","expanded_ssr","remember_state","storedExpanded","getState","changeOpened","saveState","e","preventDefault","params","onChange","_window2","_window2$__dnbAccordi","event","createElement","Consumer","globalContext","nestedContext","expandedState","extendedProps","skeleton","translation","className","prerender","prevent_rerender","prevent_rerender_conditional","single_container","disabled","no_animation","_expanded_ssr","children","_group","title","description","left_component","icon","icon_position","on_change","on_state_update","contentRef","restOfExtendedProps","_excluded2","mainParams","onClick","extendedPropsForContext","accordionContext","Provider","value","cur","type","_AccordionHeader","Group","_ref2","expandBehaviour","expandBehavior","_excluded3","expandedId","setExpandedId","instanceIDs","storedData","getData","currentIDs","includes","fallbackId","instance","_extends","Header","Content","_supportsSpacingProps"],"sources":["../../../../src/components/accordion/Accordion.tsx"],"sourcesContent":["/**\n * Web Accordion Component\n *\n */\n\nimport React, {\n useContext,\n useState,\n useEffect,\n useRef,\n HTMLProps,\n useMemo,\n} from 'react'\n\nimport classnames from 'classnames'\nimport {\n makeUniqueId,\n findElementInChildren,\n extendPropsWithContext,\n validateDOMAttributes,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport { createSpacingClasses } from '../space/SpacingHelper'\n\nimport type { ButtonIconPosition } from '../Button'\nimport type { HeadingLevel } from '../Heading'\nimport type { IconIcon, IconSize } from '../Icon'\nimport type { SkeletonShow } from '../Skeleton'\nimport type { SpacingProps } from '../space/types'\n\nimport AccordionGroup from './AccordionGroup'\nimport AccordionHeader from './AccordionHeader'\nimport AccordionContent from './AccordionContent'\nimport AccordionContext from './AccordionContext'\nimport AccordionProviderContext from './AccordionProviderContext'\nimport Context from '../../shared/Context'\n\nimport { AccordionStore, Store, rememberWarning } from './AccordionStore'\nimport { accordionDefaultProps } from './defaultProps'\n\nexport type AccordionVariant = 'plain' | 'default' | 'outlined' | 'filled'\n\nexport type AccordionHeading = boolean | React.ReactNode\n\nexport type AccordionIcon =\n | IconIcon\n | {\n closed?: IconIcon\n /**\n * If set to `true` the accordion will be expanded as its initial state.\n */\n expanded?: IconIcon\n }\n\nexport type AccordionAttributes = string | Record<string, unknown>\n\nexport type AccordionIconPosition = ButtonIconPosition\n\nexport type AccordionProps = Omit<React.HTMLProps<HTMLElement>, 'ref'> &\n SpacingProps & {\n /**\n * A title as a string or React element. It will be used as the button text.\n */\n title?: React.ReactNode\n description?: React.ReactNode\n /**\n * If set to `true` the accordion will be expanded as its initial state.\n */\n expanded?: boolean\n /**\n * If set to `true`, the open and close animation will be omitted.\n */\n no_animation?: boolean\n /**\n * If set to `true` the accordion will be expanded during SSR. Can be potentially useful for SEO, although it will disturb client hydration, where React expects the same state. But that&#39;s mainly a technical aspect to consider.\n */\n expanded_ssr?: boolean\n /**\n */\n prerender?: boolean\n /**\n * If set to `true` the accordion component will not re-render its content – can be useful for components you don&#39;t have control of storing the temporary state during an interaction.\n */\n prevent_rerender?: boolean\n /**\n * Use this prop together with `prevent_rerender` – and if it is to `true`, the accordion component will re-render if the children are a new React element and does not match the previous one anymore.\n */\n prevent_rerender_conditional?: boolean\n /**\n * If set to `true`, it will remember a changed state initiated by the user. It requires a unique `id`. It will store the sate in the local storage.\n */\n remember_state?: boolean\n /**\n * Send along a custom React Ref for `.dnb-accordion__content`.\n */\n contentRef?: React.MutableRefObject<unknown>\n /**\n * If set to `true`, the saved (remembered) will be removed and the initial component state will be used and set.\n */\n flush_remembered_state?: boolean\n /**\n * If set to `true`, a group of accordions will be wrapped to sidebar looking menu for medium and larger screens.\n */\n single_container?: boolean\n /**\n * Defines the used styling. As of now, only `outlined` is available. Use `plain` for no styles. It defaults to `outlined`.\n */\n variant?: AccordionVariant\n /**\n * Will add a React element on the left side of the `title`, inside `AccordionHeaderContainer`.\n */\n left_component?: React.ReactNode\n /**\n * If set to `true`, the accordion button will be disabled (dimmed).\n */\n disabled?: boolean\n /**\n * If set to `true`, an overlaying skeleton with animation will be shown.\n */\n skeleton?: SkeletonShow\n /**\n * A unique `id` that will be used on the button element. If you use `remember_state`, an id is required.\n */\n id?: string\n group?: string\n /**\n * Gives you the option to replace the used `button` element. Provide a React element, including a string (HTML element). Defaults to a `div` with all the needed accessibility features included.\n */\n element?: React.ReactNode\n /**\n * If set to `true`, level 2 (h2) will be used. You can provide your own HTML heading (`h3`), or provide a `heading_level` property.\n */\n heading?: AccordionHeading\n /**\n * If `heading` is set to `true`, you can provide a numeric value to define a different heading level. Defaults to `2`.\n */\n heading_level?: HeadingLevel\n /**\n * Will replace the `chevron` icon. The icon will still rotate (by CSS). You can use an object to use two different icons, one for the closed state and one for the expanded state `{ closed, expanded }`.\n */\n icon?: AccordionIcon\n /**\n * Will set the placement of the icon. Defaults to `left`.\n */\n icon_position?: AccordionIconPosition\n /**\n * Define a different icon size. Defaults to `medium` (1.5rem).\n */\n icon_size?: IconSize\n attributes?: AccordionAttributes\n className?: string\n children?: React.ReactNode\n /**\n * Will be called by user click interaction. Returns an object with a boolean state `expanded` inside `{ expanded, id, event, ...event }`.\n */\n on_change?: (...args: any[]) => any\n on_state_update?: (...args: any[]) => any\n }\n\nfunction Accordion({\n variant = 'outlined',\n icon_size = 'medium',\n ...restOfProps\n}: AccordionProps) {\n const props = { variant, icon_size, ...restOfProps }\n\n const context = useContext(AccordionProviderContext)\n\n const group = props.group || context?.group\n const id = useRef(props.id || makeUniqueId()).current\n\n const store = new Store({ id: props.id, group })\n\n // States ordered last here to make sure that the getInitialExpandedState have access to the store\n const [previousExpanded, setPreviousExpanded] = useState(props.expanded)\n const [expanded, setExpanded] = useState<boolean>(\n getInitialExpandedState()\n )\n const hasAddedCallbackRef = useRef<boolean>(false)\n\n // replacement for getDerivedStateFromProps\n if (props.expanded !== previousExpanded) {\n setExpanded(props.expanded !== undefined ? props.expanded : false)\n setPreviousExpanded(props.expanded)\n }\n\n const thisInstance = {\n _id: id,\n context,\n handleDisabledClick,\n callOnChange,\n callOnChangeHandler,\n close,\n setExpandedState,\n state: { expanded, group },\n props,\n store,\n }\n\n // Constructor\n useEffect(() => {\n if (group && typeof window !== 'undefined') {\n window['__dnbAccordion'] = window['__dnbAccordion'] || {}\n window['__dnbAccordion'][group] =\n window['__dnbAccordion'][group] || new AccordionStore(group)\n\n window['__dnbAccordion'][group].addInstance(thisInstance)\n }\n\n if (context && typeof context?.onInit === 'function') {\n context.onInit(thisInstance)\n }\n\n return () => {\n if (group && typeof window !== 'undefined') {\n window?.['__dnbAccordion'][group]?.removeInstance(thisInstance)\n }\n }\n }, [])\n\n // componentDidUpdate\n useEffect(() => {\n if (context.flush_remembered_state) {\n store.flush()\n setExpanded(props.expanded)\n }\n\n if (context?.expanded_id && context.expanded_id === props.id) {\n setExpanded(true)\n }\n }, [\n context.flush_remembered_state,\n context.expanded_id,\n props.expanded,\n props.id,\n store,\n ])\n\n // Add callback for closing all accordions inside a group if collapseAllHandleRef is defined\n if (context?.collapseAllHandleRef && !hasAddedCallbackRef.current) {\n context?.collapseAccordionCallbacks?.current.push(close)\n hasAddedCallbackRef.current = true\n }\n\n // Gets the initial expanded sate, to prevent the opening and closing of Accordion\n // That happens when if we put this logic in a useEffect that runs after the initial expanded state is set\n // Since useEffect runs after every render\n function getInitialExpandedState() {\n if (props.expanded_ssr || context?.expanded_ssr) {\n return typeof window === 'undefined'\n }\n\n if (props.remember_state || context.remember_state) {\n const storedExpanded = store.getState()\n\n if (props.expanded && storedExpanded === false) {\n return false\n }\n\n if (storedExpanded) {\n return true\n }\n }\n\n return props.expanded !== undefined\n ? props.expanded\n : context?.expanded !== undefined\n ? context.expanded\n : false\n }\n\n function setExpandedState(expanded: boolean) {\n setExpanded(expanded)\n }\n\n function close() {\n changeOpened(false)\n }\n\n function changeOpened(expanded: boolean) {\n setExpanded(expanded)\n\n // check if a event exists, because, then it's a user click\n if (props.remember_state || context.remember_state) {\n store.saveState(expanded)\n }\n }\n\n function handleDisabledClick(e: React.MouseEvent<HTMLElement>) {\n e.preventDefault()\n return false\n }\n\n function callOnChangeHandler(...params: any[]) {\n callOnChange(...params)\n if (context?.onChange) {\n context?.onChange(...params)\n }\n if (group && typeof window !== 'undefined') {\n window?.['__dnbAccordion'][group]?.onChange(...params)\n }\n }\n\n function callOnChange(...params: any[]) {\n const { expanded, event } = params[0]\n\n changeOpened(expanded)\n\n dispatchCustomElementEvent(thisInstance, 'on_change', {\n expanded,\n event,\n })\n }\n\n return (\n <Context.Consumer>\n {(globalContext) => (\n <AccordionContext.Consumer>\n {(nestedContext) => {\n // use only the props from context, who are available here anyway\n let expandedState = expanded\n\n const extendedProps = extendPropsWithContext(\n props,\n accordionDefaultProps,\n context, // group context\n nestedContext as Record<string, unknown>, // internal context\n { skeleton: globalContext?.skeleton },\n globalContext.Accordion, // global context\n globalContext.translation['Accordion']\n )\n\n if (expandedState === undefined && globalContext.Accordion) {\n if (globalContext.Accordion.expanded) {\n expandedState = extendedProps.expanded\n }\n }\n\n const {\n variant,\n className,\n prerender,\n prevent_rerender,\n prevent_rerender_conditional,\n single_container,\n remember_state,\n disabled,\n skeleton,\n no_animation,\n expanded_ssr: _expanded_ssr, // eslint-disable-line\n children,\n\n id: _id, // eslint-disable-line\n group: _group, // eslint-disable-line\n // expanded: _expanded, // eslint-disable-line\n\n title, // eslint-disable-line\n description, // eslint-disable-line\n left_component, // eslint-disable-line\n icon, // eslint-disable-line\n icon_position, // eslint-disable-line\n icon_size, // eslint-disable-line\n on_change, // eslint-disable-line\n on_state_update, // eslint-disable-line\n\n contentRef, // eslint-disable-line\n\n ...restOfExtendedProps\n } = extendedProps\n\n const mainParams = {\n id,\n className: classnames(\n 'dnb-accordion',\n expandedState && 'dnb-accordion--expanded',\n variant && `dnb-accordion__variant--${variant}`,\n prerender && 'dnb-accordion--prerender',\n createSpacingClasses(extendedProps),\n className\n ),\n } as HTMLProps<HTMLDivElement>\n\n if (disabled) {\n mainParams.onClick = handleDisabledClick\n }\n\n // to remove spacing props\n validateDOMAttributes(props, restOfExtendedProps)\n\n const extendedPropsForContext = extendPropsWithContext(\n props,\n accordionDefaultProps,\n { expanded, group },\n context\n )\n\n const accordionContext = {\n ...extendedPropsForContext,\n id,\n expanded: expandedState,\n prerender: prerender,\n prevent_rerender: prevent_rerender,\n prevent_rerender_conditional: prevent_rerender_conditional,\n single_container: single_container,\n remember_state: remember_state,\n disabled: disabled,\n skeleton: skeleton,\n no_animation: no_animation,\n callOnChange: callOnChangeHandler,\n }\n\n return (\n <AccordionContext.Provider value={accordionContext}>\n <div {...mainParams}>\n {findElementInChildren(\n children,\n (cur) => cur.type === AccordionHeader\n ) ? null : (\n <AccordionHeader />\n )}\n {findElementInChildren(\n children,\n (cur) => cur.type === AccordionContent\n ) ? (\n children\n ) : (\n <AccordionContent>{children}</AccordionContent>\n )}\n </div>\n </AccordionContext.Provider>\n )\n }}\n </AccordionContext.Consumer>\n )}\n </Context.Consumer>\n )\n}\n\nexport type GroupProps = AccordionProps & {\n allow_close_all?: boolean\n /**\n * Determines how many accordions can be expanded at once.\n * Default: `single`\n */\n /**\n * @deprecated – Replaced with expandBehavior, expandBehaviour can be removed in v11.\n */\n expandBehaviour?: 'single' | 'multiple'\n /**\n * Determines how many accordions can be expanded at once.\n * Default: `single`\n */\n expandBehavior?: 'single' | 'multiple'\n /**\n * ref handle to collapse all expanded accordions. Send in a ref and use `.current()` to collapse all accordions.\n *\n * Default: `undefined`\n */\n expanded_id?: string\n collapseAllHandleRef?: React.MutableRefObject<() => void>\n}\n\nconst Group = ({\n expandBehaviour = 'single',\n expandBehavior = 'single',\n ...props\n}: GroupProps) => {\n if (props.remember_state && !props.id) {\n rememberWarning('accordion group')\n }\n\n const [expandedId, setExpandedId] = useState<string | null>(null)\n\n const instanceIDs = useRef<string[]>([])\n\n const group = props?.id\n ? props.id\n : !props.group\n ? '#' + makeUniqueId()\n : undefined\n\n const store = useMemo(() => new Store({ group }), [group])\n\n // Set stored expanded_id on mount\n useEffect(() => {\n const storedData = store.getData()\n const currentIDs = instanceIDs?.current\n\n if (!storedData?.id) {\n return\n }\n\n if (currentIDs.includes(storedData?.id)) {\n return\n }\n\n // 1. get the fallback id\n const fallbackId = currentIDs[0]\n\n if (!fallbackId) {\n return\n }\n\n // 2. set the fallback ids\n setExpandedId(fallbackId)\n }, [store])\n\n // Store and reset fallback id\n useEffect(() => {\n if (!expandedId) {\n return\n }\n\n // 3. save the fallback id\n store.saveState(true, expandedId)\n\n // 4. and reset the fallback id\n setExpandedId(null)\n }, [expandedId, store])\n\n function onInit(instance) {\n if (\n instance.props.id &&\n !instanceIDs.current.includes(instance.props.id)\n ) {\n instanceIDs.current.push(instance.props.id)\n }\n }\n\n return (\n <AccordionGroup\n onInit={onInit}\n {...props}\n group={group}\n expandBehaviour={expandBehaviour}\n expandBehavior={expandBehavior}\n expanded_id={expandedId || props.expanded_id}\n />\n )\n}\n\nAccordion.Provider = AccordionGroup\nAccordion.Header = AccordionHeader\nAccordion.Content = AccordionContent\n\nAccordion.Group = Group\n\nGroup.Store = (group: string, id: string = null) => {\n return new Store({ group, id })\n}\n\nAccordion.Store = (id: string) => {\n return new Store({ id })\n}\n\nAccordion._supportsSpacingProps = true\n\nexport default Accordion\n"],"mappings":";;;;;;;;;;;AAKA,OAAOA,KAAK,IACVC,UAAU,EACVC,QAAQ,EACRC,SAAS,EACTC,MAAM,EAENC,OAAO,QACF,OAAO;AAEd,OAAOC,UAAU,MAAM,YAAY;AACnC,SACEC,YAAY,EACZC,qBAAqB,EACrBC,sBAAsB,EACtBC,qBAAqB,EACrBC,0BAA0B,QACrB,+BAA+B;AACtC,SAASC,oBAAoB,QAAQ,wBAAwB;AAQ7D,OAAOC,cAAc,MAAM,kBAAkB;AAC7C,OAAOC,eAAe,MAAM,mBAAmB;AAC/C,OAAOC,gBAAgB,MAAM,oBAAoB;AACjD,OAAOC,gBAAgB,MAAM,oBAAoB;AACjD,OAAOC,wBAAwB,MAAM,4BAA4B;AACjE,OAAOC,OAAO,MAAM,sBAAsB;AAE1C,SAASC,cAAc,EAAEC,KAAK,EAAEC,eAAe,QAAQ,kBAAkB;AACzE,SAASC,qBAAqB,QAAQ,gBAAgB;AAyHtD,SAASC,SAASA,CAAAC,IAAA,EAIC;EAAA,IAJA;MACjBC,OAAO,GAAG,UAAU;MACpBC,SAAS,GAAG;IAEE,CAAC,GAAAF,IAAA;IADZG,WAAW,GAAAC,wBAAA,CAAAJ,IAAA,EAAAK,SAAA;EAEd,MAAMC,KAAK,GAAAC,aAAA;IAAKN,OAAO;IAAEC;EAAS,GAAKC,WAAW,CAAE;EAEpD,MAAMK,OAAO,GAAG/B,UAAU,CAACgB,wBAAwB,CAAC;EAEpD,MAAMgB,KAAK,GAAGH,KAAK,CAACG,KAAK,KAAID,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEC,KAAK;EAC3C,MAAMC,EAAE,GAAG9B,MAAM,CAAC0B,KAAK,CAACI,EAAE,IAAI3B,YAAY,CAAC,CAAC,CAAC,CAAC4B,OAAO;EAErD,MAAMC,KAAK,GAAG,IAAIhB,KAAK,CAAC;IAAEc,EAAE,EAAEJ,KAAK,CAACI,EAAE;IAAED;EAAM,CAAC,CAAC;EAGhD,MAAM,CAACI,gBAAgB,EAAEC,mBAAmB,CAAC,GAAGpC,QAAQ,CAAC4B,KAAK,CAACS,QAAQ,CAAC;EACxE,MAAM,CAACA,QAAQ,EAAEC,WAAW,CAAC,GAAGtC,QAAQ,CACtCuC,uBAAuB,CAAC,CAC1B,CAAC;EACD,MAAMC,mBAAmB,GAAGtC,MAAM,CAAU,KAAK,CAAC;EAGlD,IAAI0B,KAAK,CAACS,QAAQ,KAAKF,gBAAgB,EAAE;IACvCG,WAAW,CAACV,KAAK,CAACS,QAAQ,KAAKI,SAAS,GAAGb,KAAK,CAACS,QAAQ,GAAG,KAAK,CAAC;IAClED,mBAAmB,CAACR,KAAK,CAACS,QAAQ,CAAC;EACrC;EAEA,MAAMK,YAAY,GAAG;IACnBC,GAAG,EAAEX,EAAE;IACPF,OAAO;IACPc,mBAAmB;IACnBC,YAAY;IACZC,mBAAmB;IACnBC,KAAK;IACLC,gBAAgB;IAChBC,KAAK,EAAE;MAAEZ,QAAQ;MAAEN;IAAM,CAAC;IAC1BH,KAAK;IACLM;EACF,CAAC;EAGDjC,SAAS,CAAC,MAAM;IACd,IAAI8B,KAAK,IAAI,OAAOmB,MAAM,KAAK,WAAW,EAAE;MAC1CA,MAAM,CAAC,gBAAgB,CAAC,GAAGA,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;MACzDA,MAAM,CAAC,gBAAgB,CAAC,CAACnB,KAAK,CAAC,GAC7BmB,MAAM,CAAC,gBAAgB,CAAC,CAACnB,KAAK,CAAC,IAAI,IAAId,cAAc,CAACc,KAAK,CAAC;MAE9DmB,MAAM,CAAC,gBAAgB,CAAC,CAACnB,KAAK,CAAC,CAACoB,WAAW,CAACT,YAAY,CAAC;IAC3D;IAEA,IAAIZ,OAAO,IAAI,QAAOA,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEsB,MAAM,MAAK,UAAU,EAAE;MACpDtB,OAAO,CAACsB,MAAM,CAACV,YAAY,CAAC;IAC9B;IAEA,OAAO,MAAM;MACX,IAAIX,KAAK,IAAI,OAAOmB,MAAM,KAAK,WAAW,EAAE;QAAA,IAAAG,OAAA,EAAAC,qBAAA;QAC1C,CAAAD,OAAA,GAAAH,MAAM,cAAAG,OAAA,wBAAAC,qBAAA,GAAND,OAAA,CAAS,gBAAgB,CAAC,CAACtB,KAAK,CAAC,cAAAuB,qBAAA,uBAAjCA,qBAAA,CAAmCC,cAAc,CAACb,YAAY,CAAC;MACjE;IACF,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAGNzC,SAAS,CAAC,MAAM;IACd,IAAI6B,OAAO,CAAC0B,sBAAsB,EAAE;MAClCtB,KAAK,CAACuB,KAAK,CAAC,CAAC;MACbnB,WAAW,CAACV,KAAK,CAACS,QAAQ,CAAC;IAC7B;IAEA,IAAIP,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAE4B,WAAW,IAAI5B,OAAO,CAAC4B,WAAW,KAAK9B,KAAK,CAACI,EAAE,EAAE;MAC5DM,WAAW,CAAC,IAAI,CAAC;IACnB;EACF,CAAC,EAAE,CACDR,OAAO,CAAC0B,sBAAsB,EAC9B1B,OAAO,CAAC4B,WAAW,EACnB9B,KAAK,CAACS,QAAQ,EACdT,KAAK,CAACI,EAAE,EACRE,KAAK,CACN,CAAC;EAGF,IAAIJ,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAE6B,oBAAoB,IAAI,CAACnB,mBAAmB,CAACP,OAAO,EAAE;IAAA,IAAA2B,qBAAA;IACjE9B,OAAO,aAAPA,OAAO,wBAAA8B,qBAAA,GAAP9B,OAAO,CAAE+B,0BAA0B,cAAAD,qBAAA,uBAAnCA,qBAAA,CAAqC3B,OAAO,CAAC6B,IAAI,CAACf,KAAK,CAAC;IACxDP,mBAAmB,CAACP,OAAO,GAAG,IAAI;EACpC;EAKA,SAASM,uBAAuBA,CAAA,EAAG;IACjC,IAAIX,KAAK,CAACmC,YAAY,IAAIjC,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAEiC,YAAY,EAAE;MAC/C,OAAO,OAAOb,MAAM,KAAK,WAAW;IACtC;IAEA,IAAItB,KAAK,CAACoC,cAAc,IAAIlC,OAAO,CAACkC,cAAc,EAAE;MAClD,MAAMC,cAAc,GAAG/B,KAAK,CAACgC,QAAQ,CAAC,CAAC;MAEvC,IAAItC,KAAK,CAACS,QAAQ,IAAI4B,cAAc,KAAK,KAAK,EAAE;QAC9C,OAAO,KAAK;MACd;MAEA,IAAIA,cAAc,EAAE;QAClB,OAAO,IAAI;MACb;IACF;IAEA,OAAOrC,KAAK,CAACS,QAAQ,KAAKI,SAAS,GAC/Bb,KAAK,CAACS,QAAQ,GACd,CAAAP,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEO,QAAQ,MAAKI,SAAS,GAC/BX,OAAO,CAACO,QAAQ,GAChB,KAAK;EACX;EAEA,SAASW,gBAAgBA,CAACX,QAAiB,EAAE;IAC3CC,WAAW,CAACD,QAAQ,CAAC;EACvB;EAEA,SAASU,KAAKA,CAAA,EAAG;IACfoB,YAAY,CAAC,KAAK,CAAC;EACrB;EAEA,SAASA,YAAYA,CAAC9B,QAAiB,EAAE;IACvCC,WAAW,CAACD,QAAQ,CAAC;IAGrB,IAAIT,KAAK,CAACoC,cAAc,IAAIlC,OAAO,CAACkC,cAAc,EAAE;MAClD9B,KAAK,CAACkC,SAAS,CAAC/B,QAAQ,CAAC;IAC3B;EACF;EAEA,SAASO,mBAAmBA,CAACyB,CAAgC,EAAE;IAC7DA,CAAC,CAACC,cAAc,CAAC,CAAC;IAClB,OAAO,KAAK;EACd;EAEA,SAASxB,mBAAmBA,CAAC,GAAGyB,MAAa,EAAE;IAC7C1B,YAAY,CAAC,GAAG0B,MAAM,CAAC;IACvB,IAAIzC,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAE0C,QAAQ,EAAE;MACrB1C,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAE0C,QAAQ,CAAC,GAAGD,MAAM,CAAC;IAC9B;IACA,IAAIxC,KAAK,IAAI,OAAOmB,MAAM,KAAK,WAAW,EAAE;MAAA,IAAAuB,QAAA,EAAAC,qBAAA;MAC1C,CAAAD,QAAA,GAAAvB,MAAM,cAAAuB,QAAA,wBAAAC,qBAAA,GAAND,QAAA,CAAS,gBAAgB,CAAC,CAAC1C,KAAK,CAAC,cAAA2C,qBAAA,uBAAjCA,qBAAA,CAAmCF,QAAQ,CAAC,GAAGD,MAAM,CAAC;IACxD;EACF;EAEA,SAAS1B,YAAYA,CAAC,GAAG0B,MAAa,EAAE;IACtC,MAAM;MAAElC,QAAQ;MAAEsC;IAAM,CAAC,GAAGJ,MAAM,CAAC,CAAC,CAAC;IAErCJ,YAAY,CAAC9B,QAAQ,CAAC;IAEtB5B,0BAA0B,CAACiC,YAAY,EAAE,WAAW,EAAE;MACpDL,QAAQ;MACRsC;IACF,CAAC,CAAC;EACJ;EAEA,OACE7E,KAAA,CAAA8E,aAAA,CAAC5D,OAAO,CAAC6D,QAAQ,QACbC,aAAa,IACbhF,KAAA,CAAA8E,aAAA,CAAC9D,gBAAgB,CAAC+D,QAAQ,QACtBE,aAAa,IAAK;IAElB,IAAIC,aAAa,GAAG3C,QAAQ;IAE5B,MAAM4C,aAAa,GAAG1E,sBAAsB,CAC1CqB,KAAK,EACLR,qBAAqB,EACrBU,OAAO,EACPiD,aAAa,EACb;MAAEG,QAAQ,EAAEJ,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEI;IAAS,CAAC,EACrCJ,aAAa,CAACzD,SAAS,EACvByD,aAAa,CAACK,WAAW,CAAC,WAAW,CACvC,CAAC;IAED,IAAIH,aAAa,KAAKvC,SAAS,IAAIqC,aAAa,CAACzD,SAAS,EAAE;MAC1D,IAAIyD,aAAa,CAACzD,SAAS,CAACgB,QAAQ,EAAE;QACpC2C,aAAa,GAAGC,aAAa,CAAC5C,QAAQ;MACxC;IACF;IAEA,MAAM;QACJd,OAAO;QACP6D,SAAS;QACTC,SAAS;QACTC,gBAAgB;QAChBC,4BAA4B;QAC5BC,gBAAgB;QAChBxB,cAAc;QACdyB,QAAQ;QACRP,QAAQ;QACRQ,YAAY;QACZ3B,YAAY,EAAE4B,aAAa;QAC3BC,QAAQ;QAER5D,EAAE,EAAEW,GAAG;QACPZ,KAAK,EAAE8D,MAAM;QAGbC,KAAK;QACLC,WAAW;QACXC,cAAc;QACdC,IAAI;QACJC,aAAa;QACb1E,SAAS;QACT2E,SAAS;QACTC,eAAe;QAEfC;MAGF,CAAC,GAAGpB,aAAa;MADZqB,mBAAmB,GAAA5E,wBAAA,CACpBuD,aAAa,EAAAsB,UAAA;IAEjB,MAAMC,UAAU,GAAG;MACjBxE,EAAE;MACFoD,SAAS,EAAEhF,UAAU,CACnB,eAAe,EAIfM,oBAAoB,CAACuE,aAAa,CAAC,EACnCG,SAAS,EAJTJ,aAAa,IAAI,yBAAyB,EAC1CzD,OAAO,IAAI,2BAA2BA,OAAO,EAAE,EAC/C8D,SAAS,IAAI,0BAGf;IACF,CAA8B;IAE9B,IAAII,QAAQ,EAAE;MACZe,UAAU,CAACC,OAAO,GAAG7D,mBAAmB;IAC1C;IAGApC,qBAAqB,CAACoB,KAAK,EAAE0E,mBAAmB,CAAC;IAEjD,MAAMI,uBAAuB,GAAGnG,sBAAsB,CACpDqB,KAAK,EACLR,qBAAqB,EACrB;MAAEiB,QAAQ;MAAEN;IAAM,CAAC,EACnBD,OACF,CAAC;IAED,MAAM6E,gBAAgB,GAAA9E,aAAA,CAAAA,aAAA,KACjB6E,uBAAuB;MAC1B1E,EAAE;MACFK,QAAQ,EAAE2C,aAAa;MACvBK,SAAS,EAAEA,SAAS;MACpBC,gBAAgB,EAAEA,gBAAgB;MAClCC,4BAA4B,EAAEA,4BAA4B;MAC1DC,gBAAgB,EAAEA,gBAAgB;MAClCxB,cAAc,EAAEA,cAAc;MAC9ByB,QAAQ,EAAEA,QAAQ;MAClBP,QAAQ,EAAEA,QAAQ;MAClBQ,YAAY,EAAEA,YAAY;MAC1B7C,YAAY,EAAEC;IAAmB,EAClC;IAED,OACEhD,KAAA,CAAA8E,aAAA,CAAC9D,gBAAgB,CAAC8F,QAAQ;MAACC,KAAK,EAAEF;IAAiB,GACjD7G,KAAA,CAAA8E,aAAA,QAAS4B,UAAU,EAChBlG,qBAAqB,CACpBsF,QAAQ,EACPkB,GAAG,IAAKA,GAAG,CAACC,IAAI,KAAKnG,eACxB,CAAC,GAAG,IAAI,GAAAoG,gBAAA,KAAAA,gBAAA,GACNlH,KAAA,CAAA8E,aAAA,CAAChE,eAAe,MAAE,CAAC,CACpB,EACAN,qBAAqB,CACpBsF,QAAQ,EACPkB,GAAG,IAAKA,GAAG,CAACC,IAAI,KAAKlG,gBACxB,CAAC,GACC+E,QAAQ,GAER9F,KAAA,CAAA8E,aAAA,CAAC/D,gBAAgB,QAAE+E,QAA2B,CAE7C,CACoB,CAAC;EAEhC,CACyB,CAEb,CAAC;AAEvB;AA0BA,MAAMqB,KAAK,GAAGC,KAAA,IAII;EAAA,IAJH;MACbC,eAAe,GAAG,QAAQ;MAC1BC,cAAc,GAAG;IAEP,CAAC,GAAAF,KAAA;IADRtF,KAAK,GAAAF,wBAAA,CAAAwF,KAAA,EAAAG,UAAA;EAER,IAAIzF,KAAK,CAACoC,cAAc,IAAI,CAACpC,KAAK,CAACI,EAAE,EAAE;IACrCb,eAAe,CAAC,iBAAiB,CAAC;EACpC;EAEA,MAAM,CAACmG,UAAU,EAAEC,aAAa,CAAC,GAAGvH,QAAQ,CAAgB,IAAI,CAAC;EAEjE,MAAMwH,WAAW,GAAGtH,MAAM,CAAW,EAAE,CAAC;EAExC,MAAM6B,KAAK,GAAGH,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEI,EAAE,GACnBJ,KAAK,CAACI,EAAE,GACR,CAACJ,KAAK,CAACG,KAAK,GACZ,GAAG,GAAG1B,YAAY,CAAC,CAAC,GACpBoC,SAAS;EAEb,MAAMP,KAAK,GAAG/B,OAAO,CAAC,MAAM,IAAIe,KAAK,CAAC;IAAEa;EAAM,CAAC,CAAC,EAAE,CAACA,KAAK,CAAC,CAAC;EAG1D9B,SAAS,CAAC,MAAM;IACd,MAAMwH,UAAU,GAAGvF,KAAK,CAACwF,OAAO,CAAC,CAAC;IAClC,MAAMC,UAAU,GAAGH,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEvF,OAAO;IAEvC,IAAI,EAACwF,UAAU,aAAVA,UAAU,eAAVA,UAAU,CAAEzF,EAAE,GAAE;MACnB;IACF;IAEA,IAAI2F,UAAU,CAACC,QAAQ,CAACH,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEzF,EAAE,CAAC,EAAE;MACvC;IACF;IAGA,MAAM6F,UAAU,GAAGF,UAAU,CAAC,CAAC,CAAC;IAEhC,IAAI,CAACE,UAAU,EAAE;MACf;IACF;IAGAN,aAAa,CAACM,UAAU,CAAC;EAC3B,CAAC,EAAE,CAAC3F,KAAK,CAAC,CAAC;EAGXjC,SAAS,CAAC,MAAM;IACd,IAAI,CAACqH,UAAU,EAAE;MACf;IACF;IAGApF,KAAK,CAACkC,SAAS,CAAC,IAAI,EAAEkD,UAAU,CAAC;IAGjCC,aAAa,CAAC,IAAI,CAAC;EACrB,CAAC,EAAE,CAACD,UAAU,EAAEpF,KAAK,CAAC,CAAC;EAEvB,SAASkB,MAAMA,CAAC0E,QAAQ,EAAE;IACxB,IACEA,QAAQ,CAAClG,KAAK,CAACI,EAAE,IACjB,CAACwF,WAAW,CAACvF,OAAO,CAAC2F,QAAQ,CAACE,QAAQ,CAAClG,KAAK,CAACI,EAAE,CAAC,EAChD;MACAwF,WAAW,CAACvF,OAAO,CAAC6B,IAAI,CAACgE,QAAQ,CAAClG,KAAK,CAACI,EAAE,CAAC;IAC7C;EACF;EAEA,OACElC,KAAA,CAAA8E,aAAA,CAACjE,cAAc,EAAAoH,QAAA;IACb3E,MAAM,EAAEA;EAAO,GACXxB,KAAK;IACTG,KAAK,EAAEA,KAAM;IACboF,eAAe,EAAEA,eAAgB;IACjCC,cAAc,EAAEA,cAAe;IAC/B1D,WAAW,EAAE4D,UAAU,IAAI1F,KAAK,CAAC8B;EAAY,EAC9C,CAAC;AAEN,CAAC;AAEDrC,SAAS,CAACuF,QAAQ,GAAGjG,cAAc;AACnCU,SAAS,CAAC2G,MAAM,GAAGpH,eAAe;AAClCS,SAAS,CAAC4G,OAAO,GAAGpH,gBAAgB;AAEpCQ,SAAS,CAAC4F,KAAK,GAAGA,KAAK;AAEvBA,KAAK,CAAC/F,KAAK,GAAG,CAACa,KAAa,EAAEC,EAAU,GAAG,IAAI,KAAK;EAClD,OAAO,IAAId,KAAK,CAAC;IAAEa,KAAK;IAAEC;EAAG,CAAC,CAAC;AACjC,CAAC;AAEDX,SAAS,CAACH,KAAK,GAAIc,EAAU,IAAK;EAChC,OAAO,IAAId,KAAK,CAAC;IAAEc;EAAG,CAAC,CAAC;AAC1B,CAAC;AAEDX,SAAS,CAAC6G,qBAAqB,GAAG,IAAI;AAEtC,eAAe7G,SAAS","ignoreList":[]}
1
+ {"version":3,"file":"Accordion.js","names":["React","useContext","useState","useEffect","useRef","useMemo","classnames","makeUniqueId","findElementInChildren","extendPropsWithContext","validateDOMAttributes","dispatchCustomElementEvent","createSpacingClasses","AccordionGroup","AccordionHeader","AccordionContent","AccordionContext","AccordionProviderContext","Context","AccordionStore","Store","rememberWarning","accordionDefaultProps","Accordion","_ref","variant","icon_size","restOfProps","_objectWithoutProperties","_excluded","props","_objectSpread","context","group","id","current","store","previousExpanded","setPreviousExpanded","expanded","setExpanded","getInitialExpandedState","hasAddedCallbackRef","undefined","thisInstance","_id","handleDisabledClick","callOnChange","callOnChangeHandler","close","setExpandedState","state","window","addInstance","onInit","_window","_window$__dnbAccordio","removeInstance","flush_remembered_state","flush","expanded_id","collapseAllHandleRef","_context$collapseAcco","collapseAccordionCallbacks","push","expanded_ssr","remember_state","storedExpanded","getState","changeOpened","saveState","e","preventDefault","params","onChange","_window2","_window2$__dnbAccordi","event","createElement","Consumer","globalContext","nestedContext","expandedState","extendedProps","skeleton","translation","className","prerender","prevent_rerender","prevent_rerender_conditional","single_container","disabled","no_animation","_expanded_ssr","children","_group","title","description","left_component","icon","icon_position","on_change","on_state_update","contentRef","restOfExtendedProps","_excluded2","mainParams","onClick","extendedPropsForContext","accordionContext","Provider","value","cur","type","_AccordionHeader","Group","_ref2","expandBehaviour","expandBehavior","_excluded3","expandedId","setExpandedId","instanceIDs","storedData","getData","currentIDs","includes","fallbackId","instance","_extends","Header","Content","_supportsSpacingProps"],"sources":["../../../../src/components/accordion/Accordion.tsx"],"sourcesContent":["/**\n * Web Accordion Component\n *\n */\n\nimport React, {\n useContext,\n useState,\n useEffect,\n useRef,\n HTMLProps,\n useMemo,\n} from 'react'\n\nimport classnames from 'classnames'\nimport {\n makeUniqueId,\n findElementInChildren,\n extendPropsWithContext,\n validateDOMAttributes,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport { createSpacingClasses } from '../space/SpacingHelper'\n\nimport type { ButtonIconPosition } from '../Button'\nimport type { HeadingLevel } from '../Heading'\nimport type { IconIcon, IconSize } from '../Icon'\nimport type { SkeletonShow } from '../Skeleton'\nimport type { SpacingProps } from '../space/types'\n\nimport AccordionGroup from './AccordionGroup'\nimport AccordionHeader from './AccordionHeader'\nimport AccordionContent from './AccordionContent'\nimport AccordionContext from './AccordionContext'\nimport AccordionProviderContext from './AccordionProviderContext'\nimport Context from '../../shared/Context'\n\nimport { AccordionStore, Store, rememberWarning } from './AccordionStore'\nimport { accordionDefaultProps } from './defaultProps'\n\nexport type AccordionVariant = 'plain' | 'default' | 'outlined' | 'filled'\n\nexport type AccordionHeading = boolean | React.ReactNode\n\nexport type AccordionIcon =\n | IconIcon\n | {\n closed?: IconIcon\n /**\n * If set to `true` the accordion will be expanded as its initial state.\n */\n expanded?: IconIcon\n }\n\nexport type AccordionAttributes = string | Record<string, unknown>\n\nexport type AccordionIconPosition = ButtonIconPosition\n\nexport type AccordionProps = Omit<React.HTMLProps<HTMLElement>, 'ref'> &\n SpacingProps & {\n /**\n * A title as a string or React element. It will be used as the button text.\n */\n title?: React.ReactNode\n description?: React.ReactNode\n /**\n * If set to `true` the accordion will be expanded as its initial state.\n */\n expanded?: boolean\n /**\n * If set to `true`, the open and close animation will be omitted.\n */\n no_animation?: boolean\n /**\n * If set to `true` the accordion will be expanded during SSR. Can be potentially useful for SEO, although it will disturb client hydration, where React expects the same state. But that&#39;s mainly a technical aspect to consider.\n */\n expanded_ssr?: boolean\n /**\n */\n prerender?: boolean\n /**\n * If set to `true` the accordion component will not re-render its content – can be useful for components you don&#39;t have control of storing the temporary state during an interaction.\n */\n prevent_rerender?: boolean\n /**\n * Use this prop together with `prevent_rerender` – and if it is to `true`, the accordion component will re-render if the children are a new React element and does not match the previous one anymore.\n */\n prevent_rerender_conditional?: boolean\n /**\n * If set to `true`, it will remember a changed state initiated by the user. It requires a unique `id`. It will store the sate in the local storage.\n */\n remember_state?: boolean\n /**\n * Send along a custom React Ref for `.dnb-accordion__content`.\n */\n contentRef?: React.MutableRefObject<unknown>\n /**\n * If set to `true`, the saved (remembered) will be removed and the initial component state will be used and set.\n */\n flush_remembered_state?: boolean\n /**\n * If set to `true`, a group of accordions will be wrapped to sidebar looking menu for medium and larger screens.\n */\n single_container?: boolean\n /**\n * Defines the used styling. As of now, only `outlined` is available. Use `plain` for no styles. It defaults to `outlined`.\n */\n variant?: AccordionVariant\n /**\n * Will add a React element on the left side of the `title`, inside `AccordionHeaderContainer`.\n */\n left_component?: React.ReactNode\n /**\n * If set to `true`, the accordion button will be disabled (dimmed).\n */\n disabled?: boolean\n /**\n * If set to `true`, an overlaying skeleton with animation will be shown.\n */\n skeleton?: SkeletonShow\n /**\n * A unique `id` that will be used on the button element. If you use `remember_state`, an id is required.\n */\n id?: string\n group?: string\n /**\n * Gives you the option to replace the used `button` element. Provide a React element, including a string (HTML element). Defaults to a `div` with all the needed accessibility features included.\n */\n element?: React.ReactNode\n /**\n * If set to `true`, level 2 (h2) will be used. You can provide your own HTML heading (`h3`), or provide a `heading_level` property.\n */\n heading?: AccordionHeading\n /**\n * If `heading` is set to `true`, you can provide a numeric value to define a different heading level. Defaults to `2`.\n */\n heading_level?: HeadingLevel\n /**\n * Will replace the `chevron` icon. The icon will still rotate (by CSS). You can use an object to use two different icons, one for the closed state and one for the expanded state `{ closed, expanded }`.\n */\n icon?: AccordionIcon\n /**\n * Will set the placement of the icon. Defaults to `left`.\n */\n icon_position?: AccordionIconPosition\n /**\n * Define a different icon size. Defaults to `medium` (1.5rem).\n */\n icon_size?: IconSize\n attributes?: AccordionAttributes\n className?: string\n children?: React.ReactNode\n /**\n * Will be called by user click interaction. Returns an object with a boolean state `expanded` inside `{ expanded, id, event, ...event }`.\n */\n on_change?: (...args: any[]) => any\n on_state_update?: (...args: any[]) => any\n }\n\nfunction Accordion({\n variant = 'outlined',\n icon_size = 'medium',\n ...restOfProps\n}: AccordionProps) {\n const props = { variant, icon_size, ...restOfProps }\n\n const context = useContext(AccordionProviderContext)\n\n const group = props.group || context?.group\n const id = useRef(props.id || makeUniqueId()).current\n\n const store = new Store({ id: props.id, group })\n\n // States ordered last here to make sure that the getInitialExpandedState have access to the store\n const [previousExpanded, setPreviousExpanded] = useState(props.expanded)\n const [expanded, setExpanded] = useState<boolean>(\n getInitialExpandedState()\n )\n const hasAddedCallbackRef = useRef<boolean>(false)\n\n // replacement for getDerivedStateFromProps\n if (props.expanded !== previousExpanded) {\n setExpanded(props.expanded !== undefined ? props.expanded : false)\n setPreviousExpanded(props.expanded)\n }\n\n const thisInstance = {\n _id: id,\n context,\n handleDisabledClick,\n callOnChange,\n callOnChangeHandler,\n close,\n setExpandedState,\n state: { expanded, group },\n props,\n store,\n }\n\n // Constructor\n useEffect(() => {\n if (group && typeof window !== 'undefined') {\n window['__dnbAccordion'] = window['__dnbAccordion'] || {}\n window['__dnbAccordion'][group] =\n window['__dnbAccordion'][group] || new AccordionStore(group)\n\n window['__dnbAccordion'][group].addInstance(thisInstance)\n }\n\n if (context && typeof context?.onInit === 'function') {\n context.onInit(thisInstance)\n }\n\n return () => {\n if (group && typeof window !== 'undefined') {\n window?.['__dnbAccordion'][group]?.removeInstance(thisInstance)\n }\n }\n }, [])\n\n // componentDidUpdate\n useEffect(() => {\n if (context.flush_remembered_state) {\n store.flush()\n setExpanded(props.expanded)\n }\n\n if (context?.expanded_id && context.expanded_id === props.id) {\n setExpanded(true)\n }\n }, [\n context.flush_remembered_state,\n context.expanded_id,\n props.expanded,\n props.id,\n store,\n ])\n\n // Add callback for closing all accordions inside a group if collapseAllHandleRef is defined\n if (context?.collapseAllHandleRef && !hasAddedCallbackRef.current) {\n context?.collapseAccordionCallbacks?.current.push(close)\n hasAddedCallbackRef.current = true\n }\n\n // Gets the initial expanded sate, to prevent the opening and closing of Accordion\n // That happens when if we put this logic in a useEffect that runs after the initial expanded state is set\n // Since useEffect runs after every render\n function getInitialExpandedState() {\n if (props.expanded_ssr || context?.expanded_ssr) {\n return typeof window === 'undefined'\n }\n\n if (props.remember_state || context.remember_state) {\n const storedExpanded = store.getState()\n\n if (props.expanded && storedExpanded === false) {\n return false\n }\n\n if (storedExpanded) {\n return true\n }\n }\n\n return props.expanded !== undefined\n ? props.expanded\n : context?.expanded !== undefined\n ? context.expanded\n : false\n }\n\n function setExpandedState(expanded: boolean) {\n setExpanded(expanded)\n }\n\n function close() {\n changeOpened(false)\n }\n\n function changeOpened(expanded: boolean) {\n setExpanded(expanded)\n\n // check if a event exists, because, then it's a user click\n if (props.remember_state || context.remember_state) {\n store.saveState(expanded)\n }\n }\n\n function handleDisabledClick(e: React.MouseEvent<HTMLElement>) {\n e.preventDefault()\n return false\n }\n\n function callOnChangeHandler(...params: any[]) {\n callOnChange(...params)\n if (context?.onChange) {\n context?.onChange(...params)\n }\n if (group && typeof window !== 'undefined') {\n window?.['__dnbAccordion'][group]?.onChange(...params)\n }\n }\n\n function callOnChange(...params: any[]) {\n const { expanded, event } = params[0]\n\n changeOpened(expanded)\n\n dispatchCustomElementEvent(thisInstance, 'on_change', {\n expanded,\n event,\n })\n }\n\n return (\n <Context.Consumer>\n {(globalContext) => (\n <AccordionContext.Consumer>\n {(nestedContext) => {\n // use only the props from context, who are available here anyway\n let expandedState = expanded\n\n const extendedProps = extendPropsWithContext(\n props,\n accordionDefaultProps,\n context, // group context\n nestedContext as Record<string, unknown>, // internal context\n { skeleton: globalContext?.skeleton },\n globalContext.Accordion, // global context\n globalContext.translation['Accordion']\n )\n\n if (expandedState === undefined && globalContext.Accordion) {\n if (globalContext.Accordion.expanded) {\n expandedState = extendedProps.expanded\n }\n }\n\n const {\n variant,\n className,\n prerender,\n prevent_rerender,\n prevent_rerender_conditional,\n single_container,\n remember_state,\n disabled,\n skeleton,\n no_animation,\n expanded_ssr: _expanded_ssr, // eslint-disable-line\n children,\n\n id: _id, // eslint-disable-line\n group: _group, // eslint-disable-line\n // expanded: _expanded, // eslint-disable-line\n\n title, // eslint-disable-line\n description, // eslint-disable-line\n left_component, // eslint-disable-line\n icon, // eslint-disable-line\n icon_position, // eslint-disable-line\n icon_size, // eslint-disable-line\n on_change, // eslint-disable-line\n on_state_update, // eslint-disable-line\n\n contentRef, // eslint-disable-line\n\n ...restOfExtendedProps\n } = extendedProps\n\n const mainParams = {\n id,\n className: classnames(\n 'dnb-accordion',\n expandedState && 'dnb-accordion--expanded',\n variant && `dnb-accordion__variant--${variant}`,\n prerender && 'dnb-accordion--prerender',\n createSpacingClasses(extendedProps),\n className\n ),\n } as HTMLProps<HTMLDivElement>\n\n if (disabled) {\n mainParams.onClick = handleDisabledClick\n }\n\n // to remove spacing props\n validateDOMAttributes(props, restOfExtendedProps)\n\n const extendedPropsForContext = extendPropsWithContext(\n props,\n accordionDefaultProps,\n { expanded, group },\n context\n )\n\n const accordionContext = {\n ...extendedPropsForContext,\n id,\n expanded: expandedState,\n prerender: prerender,\n prevent_rerender: prevent_rerender,\n prevent_rerender_conditional: prevent_rerender_conditional,\n single_container: single_container,\n remember_state: remember_state,\n disabled: disabled,\n skeleton: skeleton,\n no_animation: no_animation,\n callOnChange: callOnChangeHandler,\n }\n\n return (\n <AccordionContext.Provider value={accordionContext}>\n <div {...mainParams}>\n {findElementInChildren(\n children,\n (cur) => cur.type === AccordionHeader\n ) ? null : (\n <AccordionHeader />\n )}\n {findElementInChildren(\n children,\n (cur) => cur.type === AccordionContent\n ) ? (\n children\n ) : (\n <AccordionContent>{children}</AccordionContent>\n )}\n </div>\n </AccordionContext.Provider>\n )\n }}\n </AccordionContext.Consumer>\n )}\n </Context.Consumer>\n )\n}\n\nexport type GroupProps = AccordionProps & {\n allow_close_all?: boolean\n /**\n * Determines how many accordions can be expanded at once.\n * Default: `single`\n */\n /**\n * @deprecated – Replaced with expandBehavior, expandBehaviour can be removed in v11.\n */\n expandBehaviour?: 'single' | 'multiple'\n /**\n * Determines how many accordions can be expanded at once.\n * Default: `single`\n */\n expandBehavior?: 'single' | 'multiple'\n /**\n * ref handle to collapse all expanded accordions. Send in a ref and use `.current()` to collapse all accordions.\n *\n * Default: `undefined`\n */\n expanded_id?: string\n collapseAllHandleRef?: React.MutableRefObject<() => void>\n}\n\nconst Group = ({\n // expandBehaviour can be removed in v11\n expandBehaviour,\n expandBehavior = 'single',\n ...props\n}: GroupProps) => {\n if (props.remember_state && !props.id) {\n rememberWarning('accordion group')\n }\n\n const [expandedId, setExpandedId] = useState<string | null>(null)\n\n const instanceIDs = useRef<string[]>([])\n\n const group = props?.id\n ? props.id\n : !props.group\n ? '#' + makeUniqueId()\n : undefined\n\n const store = useMemo(() => new Store({ group }), [group])\n\n // Set stored expanded_id on mount\n useEffect(() => {\n const storedData = store.getData()\n const currentIDs = instanceIDs?.current\n\n if (!storedData?.id) {\n return\n }\n\n if (currentIDs.includes(storedData?.id)) {\n return\n }\n\n // 1. get the fallback id\n const fallbackId = currentIDs[0]\n\n if (!fallbackId) {\n return\n }\n\n // 2. set the fallback ids\n setExpandedId(fallbackId)\n }, [store])\n\n // Store and reset fallback id\n useEffect(() => {\n if (!expandedId) {\n return\n }\n\n // 3. save the fallback id\n store.saveState(true, expandedId)\n\n // 4. and reset the fallback id\n setExpandedId(null)\n }, [expandedId, store])\n\n function onInit(instance) {\n if (\n instance.props.id &&\n !instanceIDs.current.includes(instance.props.id)\n ) {\n instanceIDs.current.push(instance.props.id)\n }\n }\n\n return (\n <AccordionGroup\n onInit={onInit}\n {...props}\n group={group}\n // expandBehaviour can be removed in v11\n expandBehavior={expandBehaviour || expandBehavior}\n expanded_id={expandedId || props.expanded_id}\n />\n )\n}\n\nAccordion.Provider = AccordionGroup\nAccordion.Header = AccordionHeader\nAccordion.Content = AccordionContent\n\nAccordion.Group = Group\n\nGroup.Store = (group: string, id: string = null) => {\n return new Store({ group, id })\n}\n\nAccordion.Store = (id: string) => {\n return new Store({ id })\n}\n\nAccordion._supportsSpacingProps = true\n\nexport default Accordion\n"],"mappings":"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","ignoreList":[]}
@@ -8,10 +8,6 @@ import { AccordionProps } from './Accordion';
8
8
  import { AccordionGroupProps } from './AccordionGroup';
9
9
  export type AccordionContextProps = AccordionProps & SkeletonContextProps & {
10
10
  allow_close_all?: boolean;
11
- /**
12
- * @deprecated – Replaced with expandBehavior, expandBehaviour can be removed in v11
13
- */
14
- expandBehaviour: AccordionGroupProps['expandBehaviour'];
15
11
  expandBehavior: AccordionGroupProps['expandBehavior'];
16
12
  callOnChange?: (parameters: {
17
13
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"AccordionContext.js","names":["React","AccordionContext","createContext"],"sources":["../../../../src/components/accordion/AccordionContext.ts"],"sourcesContent":["/**\n * Web AccordionGroup Context\n *\n */\n\nimport React from 'react'\nimport { SkeletonContextProps } from '../skeleton/SkeletonHelper'\nimport { AccordionProps } from './Accordion'\nimport { AccordionGroupProps } from './AccordionGroup'\n\nexport type AccordionContextProps = AccordionProps &\n SkeletonContextProps & {\n allow_close_all?: boolean\n /**\n * @deprecated – Replaced with expandBehavior, expandBehaviour can be removed in v11\n */\n expandBehaviour: AccordionGroupProps['expandBehaviour']\n expandBehavior: AccordionGroupProps['expandBehavior']\n callOnChange?: (parameters: {\n id: string\n group: string\n expanded: boolean\n event:\n | React.MouseEvent<HTMLElement>\n | React.KeyboardEvent<HTMLElement>\n }) => void\n }\n\nconst AccordionContext = React.createContext<AccordionContextProps>({})\n\nexport default AccordionContext\n"],"mappings":"AAKA,OAAOA,KAAK,MAAM,OAAO;AAuBzB,MAAMC,gBAAgB,GAAGD,KAAK,CAACE,aAAa,CAAwB,CAAC,CAAC,CAAC;AAEvE,eAAeD,gBAAgB","ignoreList":[]}
1
+ {"version":3,"file":"AccordionContext.js","names":["React","AccordionContext","createContext"],"sources":["../../../../src/components/accordion/AccordionContext.ts"],"sourcesContent":["/**\n * Web AccordionGroup Context\n *\n */\n\nimport React from 'react'\nimport { SkeletonContextProps } from '../skeleton/SkeletonHelper'\nimport { AccordionProps } from './Accordion'\nimport { AccordionGroupProps } from './AccordionGroup'\n\nexport type AccordionContextProps = AccordionProps &\n SkeletonContextProps & {\n allow_close_all?: boolean\n expandBehavior: AccordionGroupProps['expandBehavior']\n callOnChange?: (parameters: {\n id: string\n group: string\n expanded: boolean\n event:\n | React.MouseEvent<HTMLElement>\n | React.KeyboardEvent<HTMLElement>\n }) => void\n }\n\nconst AccordionContext = React.createContext<AccordionContextProps>({})\n\nexport default AccordionContext\n"],"mappings":"AAKA,OAAOA,KAAK,MAAM,OAAO;AAmBzB,MAAMC,gBAAgB,GAAGD,KAAK,CAACE,aAAa,CAAwB,CAAC,CAAC,CAAC;AAEvE,eAAeD,gBAAgB","ignoreList":[]}