@dnb/eufemia 10.75.4 → 10.76.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (813) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/cjs/components/DateFormat.d.ts +12 -0
  3. package/cjs/components/DateFormat.js +24 -0
  4. package/cjs/components/DateFormat.js.map +1 -0
  5. package/cjs/components/PortalRoot.d.ts +12 -0
  6. package/cjs/components/PortalRoot.js +24 -0
  7. package/cjs/components/PortalRoot.js.map +1 -0
  8. package/cjs/components/breadcrumb/Breadcrumb.d.ts +4 -0
  9. package/cjs/components/breadcrumb/Breadcrumb.js +9 -4
  10. package/cjs/components/breadcrumb/Breadcrumb.js.map +1 -1
  11. package/cjs/components/breadcrumb/BreadcrumbDocs.js +5 -0
  12. package/cjs/components/breadcrumb/BreadcrumbDocs.js.map +1 -1
  13. package/cjs/components/card/Card.d.ts +4 -0
  14. package/cjs/components/card/Card.js +13 -4
  15. package/cjs/components/card/Card.js.map +1 -1
  16. package/cjs/components/card/CardDocs.js +1 -1
  17. package/cjs/components/card/CardDocs.js.map +1 -1
  18. package/cjs/components/checkbox/Checkbox.js.map +1 -1
  19. package/cjs/components/date-format/DateFormat.d.ts +30 -0
  20. package/cjs/components/date-format/DateFormat.js +86 -0
  21. package/cjs/components/date-format/DateFormat.js.map +1 -0
  22. package/cjs/components/date-format/DateFormatDocs.d.ts +2 -0
  23. package/cjs/components/date-format/DateFormatDocs.js +34 -0
  24. package/cjs/components/date-format/DateFormatDocs.js.map +1 -0
  25. package/cjs/components/date-format/DateFormatUtils.d.ts +11 -0
  26. package/cjs/components/date-format/DateFormatUtils.js +36 -0
  27. package/cjs/components/date-format/DateFormatUtils.js.map +1 -0
  28. package/cjs/components/date-format/index.d.ts +7 -0
  29. package/cjs/components/date-format/index.js +24 -0
  30. package/cjs/components/date-format/index.js.map +1 -0
  31. package/cjs/components/date-picker/DatePicker.js +5 -8
  32. package/cjs/components/date-picker/DatePicker.js.map +1 -1
  33. package/cjs/components/date-picker/DatePickerCalc.d.ts +0 -13
  34. package/cjs/components/date-picker/DatePickerCalc.js +0 -44
  35. package/cjs/components/date-picker/DatePickerCalc.js.map +1 -1
  36. package/cjs/components/date-picker/DatePickerCalendar.js +11 -10
  37. package/cjs/components/date-picker/DatePickerCalendar.js.map +1 -1
  38. package/cjs/components/date-picker/DatePickerCalendarNavigator.js +7 -7
  39. package/cjs/components/date-picker/DatePickerCalendarNavigator.js.map +1 -1
  40. package/cjs/components/date-picker/DatePickerInput.js +2 -1
  41. package/cjs/components/date-picker/DatePickerInput.js.map +1 -1
  42. package/cjs/components/date-picker/DatePickerPortal.d.ts +1 -1
  43. package/cjs/components/date-picker/DatePickerPortal.js +4 -4
  44. package/cjs/components/date-picker/DatePickerPortal.js.map +1 -1
  45. package/cjs/components/form-status/FormStatus.js +1 -1
  46. package/cjs/components/form-status/FormStatus.js.map +1 -1
  47. package/cjs/components/form-status/style/dnb-form-status.css +1 -1
  48. package/cjs/components/form-status/style/dnb-form-status.min.css +1 -1
  49. package/cjs/components/form-status/style/dnb-form-status.scss +1 -1
  50. package/cjs/components/form-status/style/themes/dnb-form-status-theme-sbanken.css +11 -2
  51. package/cjs/components/form-status/style/themes/dnb-form-status-theme-sbanken.min.css +1 -1
  52. package/cjs/components/form-status/style/themes/dnb-form-status-theme-sbanken.scss +6 -2
  53. package/cjs/components/global-status/style/themes/dnb-global-status-theme-sbanken.css +1 -1
  54. package/cjs/components/global-status/style/themes/dnb-global-status-theme-sbanken.min.css +1 -1
  55. package/cjs/components/global-status/style/themes/dnb-global-status-theme-sbanken.scss +1 -1
  56. package/cjs/components/help-button/style/dnb-help-button-inline.css +1 -1
  57. package/cjs/components/help-button/style/dnb-help-button-inline.min.css +1 -1
  58. package/cjs/components/help-button/style/dnb-help-button-inline.scss +1 -1
  59. package/cjs/components/help-button/style/dnb-help-button.css +1 -1
  60. package/cjs/components/help-button/style/dnb-help-button.min.css +1 -1
  61. package/cjs/components/index.d.ts +3 -1
  62. package/cjs/components/index.js +14 -0
  63. package/cjs/components/index.js.map +1 -1
  64. package/cjs/components/info-card/style/dnb-info-card.css +1 -1
  65. package/cjs/components/info-card/style/dnb-info-card.min.css +1 -1
  66. package/cjs/components/info-card/style/dnb-info-card.scss +1 -1
  67. package/cjs/components/lib.d.ts +5 -1
  68. package/cjs/components/lib.js +16 -0
  69. package/cjs/components/lib.js.map +1 -1
  70. package/cjs/components/modal/ModalRoot.d.ts +2 -7
  71. package/cjs/components/modal/ModalRoot.js +9 -65
  72. package/cjs/components/modal/ModalRoot.js.map +1 -1
  73. package/cjs/components/portal-root/PortalRoot.d.ts +7 -0
  74. package/cjs/components/portal-root/PortalRoot.js +65 -0
  75. package/cjs/components/portal-root/PortalRoot.js.map +1 -0
  76. package/cjs/components/portal-root/PortalRootDocs.d.ts +2 -0
  77. package/cjs/components/portal-root/PortalRootDocs.js +19 -0
  78. package/cjs/components/portal-root/PortalRootDocs.js.map +1 -0
  79. package/cjs/components/portal-root/index.d.ts +7 -0
  80. package/cjs/components/portal-root/index.js +24 -0
  81. package/cjs/components/portal-root/index.js.map +1 -0
  82. package/cjs/components/section/style/themes/dnb-section-theme-sbanken.css +1 -1
  83. package/cjs/components/section/style/themes/dnb-section-theme-sbanken.min.css +1 -1
  84. package/cjs/components/section/style/themes/dnb-section-theme-sbanken.scss +1 -1
  85. package/cjs/components/step-indicator/StepIndicator.js +6 -2
  86. package/cjs/components/step-indicator/StepIndicator.js.map +1 -1
  87. package/cjs/components/step-indicator/StepIndicatorDocs.js +1 -1
  88. package/cjs/components/step-indicator/StepIndicatorDocs.js.map +1 -1
  89. package/cjs/components/step-indicator/StepIndicatorTriggerButton.d.ts +2 -1
  90. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js +5 -3
  91. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  92. package/cjs/components/switch/Switch.d.ts +12 -3
  93. package/cjs/components/switch/Switch.js +39 -15
  94. package/cjs/components/switch/Switch.js.map +1 -1
  95. package/cjs/components/switch/SwitchDocs.js +5 -0
  96. package/cjs/components/switch/SwitchDocs.js.map +1 -1
  97. package/cjs/components/tooltip/TooltipPortal.js +28 -59
  98. package/cjs/components/tooltip/TooltipPortal.js.map +1 -1
  99. package/cjs/components/tooltip/style/dnb-tooltip.css +8 -1
  100. package/cjs/components/tooltip/style/dnb-tooltip.min.css +1 -1
  101. package/cjs/components/tooltip/style/dnb-tooltip.scss +8 -1
  102. package/cjs/components/upload/Upload.js +31 -7
  103. package/cjs/components/upload/Upload.js.map +1 -1
  104. package/cjs/components/upload/UploadContext.d.ts +1 -0
  105. package/cjs/components/upload/UploadContext.js +2 -1
  106. package/cjs/components/upload/UploadContext.js.map +1 -1
  107. package/cjs/components/upload/UploadDocs.js +11 -1
  108. package/cjs/components/upload/UploadDocs.js.map +1 -1
  109. package/cjs/components/upload/UploadDropzone.d.ts +3 -1
  110. package/cjs/components/upload/UploadDropzone.js +5 -4
  111. package/cjs/components/upload/UploadDropzone.js.map +1 -1
  112. package/cjs/components/upload/UploadFileInput.d.ts +3 -1
  113. package/cjs/components/upload/UploadFileInput.js +7 -5
  114. package/cjs/components/upload/UploadFileInput.js.map +1 -1
  115. package/cjs/components/upload/style/dnb-upload.css +10 -2
  116. package/cjs/components/upload/style/dnb-upload.min.css +1 -1
  117. package/cjs/components/upload/style/dnb-upload.scss +12 -2
  118. package/cjs/components/upload/types.d.ts +4 -0
  119. package/cjs/components/upload/types.js.map +1 -1
  120. package/cjs/elements/lists/style/lists-mixins.scss +1 -1
  121. package/cjs/extensions/forms/Connectors/Bring/address.d.ts +48 -0
  122. package/cjs/extensions/forms/Connectors/Bring/address.js +185 -0
  123. package/cjs/extensions/forms/Connectors/Bring/address.js.map +1 -0
  124. package/cjs/extensions/forms/Connectors/Bring/index.d.ts +1 -0
  125. package/cjs/extensions/forms/Connectors/Bring/index.js +3 -1
  126. package/cjs/extensions/forms/Connectors/Bring/index.js.map +1 -1
  127. package/cjs/extensions/forms/Connectors/Bring/postalCode.js +10 -1
  128. package/cjs/extensions/forms/Connectors/Bring/postalCode.js.map +1 -1
  129. package/cjs/extensions/forms/Connectors/createContext.js +3 -0
  130. package/cjs/extensions/forms/Connectors/createContext.js.map +1 -1
  131. package/cjs/extensions/forms/Field/Address/Address.d.ts +3 -0
  132. package/cjs/extensions/forms/Field/Address/Address.js.map +1 -1
  133. package/cjs/extensions/forms/Field/Boolean/BooleanDocs.js +1 -1
  134. package/cjs/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
  135. package/cjs/extensions/forms/Field/Date/Date.js +11 -8
  136. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  137. package/cjs/extensions/forms/Field/Indeterminate/Indeterminate.js +3 -3
  138. package/cjs/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
  139. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +15 -6
  140. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  141. package/cjs/extensions/forms/Field/Toggle/Toggle.d.ts +1 -1
  142. package/cjs/extensions/forms/Field/Toggle/Toggle.js +36 -0
  143. package/cjs/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  144. package/cjs/extensions/forms/Field/Upload/Upload.d.ts +1 -1
  145. package/cjs/extensions/forms/Field/Upload/Upload.js +26 -7
  146. package/cjs/extensions/forms/Field/Upload/Upload.js.map +1 -1
  147. package/cjs/extensions/forms/Field/style/field-sizes.scss +1 -1
  148. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +2 -2
  149. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  150. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +1 -1
  151. package/cjs/extensions/forms/Form/Card/Card.d.ts +3 -6
  152. package/cjs/extensions/forms/Form/Card/Card.js +1 -1
  153. package/cjs/extensions/forms/Form/Card/Card.js.map +1 -1
  154. package/cjs/extensions/forms/Form/Card/CardDocs.d.ts +1 -0
  155. package/cjs/extensions/forms/Form/Card/CardDocs.js +14 -11
  156. package/cjs/extensions/forms/Form/Card/CardDocs.js.map +1 -1
  157. package/cjs/extensions/forms/Value/Date/Date.js +22 -7
  158. package/cjs/extensions/forms/Value/Date/Date.js.map +1 -1
  159. package/cjs/extensions/forms/Value/style/value-sizes.scss +2 -2
  160. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.css +2 -2
  161. package/cjs/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  162. package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  163. package/cjs/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  164. package/cjs/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  165. package/cjs/extensions/forms/constants/locales/en-GB.js +2 -1
  166. package/cjs/extensions/forms/constants/locales/en-GB.js.map +1 -1
  167. package/cjs/extensions/forms/constants/locales/en-US.d.ts +1 -0
  168. package/cjs/extensions/forms/constants/locales/index.d.ts +2 -0
  169. package/cjs/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  170. package/cjs/extensions/forms/constants/locales/nb-NO.js +2 -1
  171. package/cjs/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  172. package/cjs/extensions/forms/constants/locales/sv-SE.d.ts +1 -0
  173. package/cjs/extensions/forms/constants/locales/sv-SE.js +2 -1
  174. package/cjs/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  175. package/cjs/extensions/forms/style/dnb-forms.css +4 -4
  176. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  177. package/cjs/extensions/payment-card/style/dnb-payment-card.css +1 -0
  178. package/cjs/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  179. package/cjs/fragments/drawer-list/DrawerList.d.ts +4 -2
  180. package/cjs/fragments/drawer-list/DrawerList.js +6 -5
  181. package/cjs/fragments/drawer-list/DrawerList.js.map +1 -1
  182. package/cjs/fragments/drawer-list/DrawerListHelpers.js +1 -1
  183. package/cjs/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  184. package/cjs/fragments/drawer-list/DrawerListPortal.d.ts +1 -0
  185. package/cjs/fragments/drawer-list/DrawerListPortal.js +31 -65
  186. package/cjs/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  187. package/cjs/fragments/drawer-list/DrawerListProvider.d.ts +1 -1
  188. package/cjs/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  189. package/cjs/fragments/drawer-list/style/dnb-drawer-list.scss +1 -1
  190. package/cjs/index.d.ts +3 -1
  191. package/cjs/index.js +14 -0
  192. package/cjs/index.js.map +1 -1
  193. package/cjs/shared/build-info/BuildInfoData.d.ts +2 -2
  194. package/cjs/shared/build-info/BuildInfoData.js +2 -2
  195. package/cjs/shared/build-info/BuildInfoData.js.map +1 -1
  196. package/cjs/shared/locales/en-GB.d.ts +3 -0
  197. package/cjs/shared/locales/en-GB.js +3 -0
  198. package/cjs/shared/locales/en-GB.js.map +1 -1
  199. package/cjs/shared/locales/en-US.d.ts +3 -0
  200. package/cjs/shared/locales/index.d.ts +6 -0
  201. package/cjs/shared/locales/nb-NO.d.ts +3 -0
  202. package/cjs/shared/locales/nb-NO.js +3 -0
  203. package/cjs/shared/locales/nb-NO.js.map +1 -1
  204. package/cjs/shared/locales/sv-SE.d.ts +3 -0
  205. package/cjs/shared/locales/sv-SE.js +3 -0
  206. package/cjs/shared/locales/sv-SE.js.map +1 -1
  207. package/cjs/style/core/scopes.scss +1 -1
  208. package/cjs/style/dnb-ui-basis.css +1 -1
  209. package/cjs/style/dnb-ui-basis.min.css +1 -1
  210. package/cjs/style/dnb-ui-body.css +1 -1
  211. package/cjs/style/dnb-ui-body.min.css +1 -1
  212. package/cjs/style/dnb-ui-components.css +27 -12
  213. package/cjs/style/dnb-ui-components.min.css +4 -4
  214. package/cjs/style/dnb-ui-core.css +1 -1
  215. package/cjs/style/dnb-ui-core.min.css +1 -1
  216. package/cjs/style/dnb-ui-elements.css +1 -1
  217. package/cjs/style/dnb-ui-elements.min.css +1 -1
  218. package/cjs/style/dnb-ui-extensions.css +5 -4
  219. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  220. package/cjs/style/dnb-ui-forms.css +4 -4
  221. package/cjs/style/dnb-ui-forms.min.css +1 -1
  222. package/cjs/style/dnb-ui-fragments.css +1 -1
  223. package/cjs/style/dnb-ui-fragments.min.css +1 -1
  224. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +2 -1
  225. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  226. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +31 -16
  227. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  228. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
  229. package/cjs/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  230. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +5 -4
  231. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  232. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +4 -4
  233. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  234. package/cjs/style/themes/theme-eiendom/properties.d.ts +2 -0
  235. package/cjs/style/themes/theme-eiendom/properties.js +3 -1
  236. package/cjs/style/themes/theme-eiendom/properties.js.map +1 -1
  237. package/cjs/style/themes/theme-sbanken/properties.d.ts +2 -0
  238. package/cjs/style/themes/theme-sbanken/properties.js +2 -0
  239. package/cjs/style/themes/theme-sbanken/properties.js.map +1 -1
  240. package/cjs/style/themes/theme-sbanken/properties.scss +3 -0
  241. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +3 -1
  242. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +2 -2
  243. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +44 -20
  244. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +6 -6
  245. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
  246. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  247. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +5 -4
  248. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  249. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +4 -4
  250. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  251. package/cjs/style/themes/theme-ui/properties.d.ts +2 -0
  252. package/cjs/style/themes/theme-ui/properties.js +3 -1
  253. package/cjs/style/themes/theme-ui/properties.js.map +1 -1
  254. package/cjs/style/themes/theme-ui/properties.scss +3 -0
  255. package/cjs/style/themes/theme-ui/ui-theme-basis.css +2 -1
  256. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  257. package/cjs/style/themes/theme-ui/ui-theme-components.css +31 -16
  258. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  259. package/cjs/style/themes/theme-ui/ui-theme-elements.css +1 -1
  260. package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  261. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +5 -4
  262. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  263. package/cjs/style/themes/theme-ui/ui-theme-forms.css +4 -4
  264. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  265. package/cjs/style/themes/theme-ui/ui-theme-properties.css +1 -0
  266. package/cjs/style/themes/theme-ui/ui-theme-properties.min.css +1 -1
  267. package/cjs/style/themes/theme-ui/ui-theme-tags.css +1 -1
  268. package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  269. package/components/DateFormat.d.ts +12 -0
  270. package/components/DateFormat.js +4 -0
  271. package/components/DateFormat.js.map +1 -0
  272. package/components/PortalRoot.d.ts +12 -0
  273. package/components/PortalRoot.js +4 -0
  274. package/components/PortalRoot.js.map +1 -0
  275. package/components/breadcrumb/Breadcrumb.d.ts +4 -0
  276. package/components/breadcrumb/Breadcrumb.js +9 -4
  277. package/components/breadcrumb/Breadcrumb.js.map +1 -1
  278. package/components/breadcrumb/BreadcrumbDocs.js +5 -0
  279. package/components/breadcrumb/BreadcrumbDocs.js.map +1 -1
  280. package/components/card/Card.d.ts +4 -0
  281. package/components/card/Card.js +13 -4
  282. package/components/card/Card.js.map +1 -1
  283. package/components/card/CardDocs.js +1 -1
  284. package/components/card/CardDocs.js.map +1 -1
  285. package/components/checkbox/Checkbox.js.map +1 -1
  286. package/components/date-format/DateFormat.d.ts +30 -0
  287. package/components/date-format/DateFormat.js +77 -0
  288. package/components/date-format/DateFormat.js.map +1 -0
  289. package/components/date-format/DateFormatDocs.d.ts +2 -0
  290. package/components/date-format/DateFormatDocs.js +28 -0
  291. package/components/date-format/DateFormatDocs.js.map +1 -0
  292. package/components/date-format/DateFormatUtils.d.ts +11 -0
  293. package/components/date-format/DateFormatUtils.js +29 -0
  294. package/components/date-format/DateFormatUtils.js.map +1 -0
  295. package/components/date-format/index.d.ts +7 -0
  296. package/components/date-format/index.js +4 -0
  297. package/components/date-format/index.js.map +1 -0
  298. package/components/date-picker/DatePicker.js +3 -6
  299. package/components/date-picker/DatePicker.js.map +1 -1
  300. package/components/date-picker/DatePickerCalc.d.ts +0 -13
  301. package/components/date-picker/DatePickerCalc.js +0 -41
  302. package/components/date-picker/DatePickerCalc.js.map +1 -1
  303. package/components/date-picker/DatePickerCalendar.js +7 -6
  304. package/components/date-picker/DatePickerCalendar.js.map +1 -1
  305. package/components/date-picker/DatePickerCalendarNavigator.js +4 -4
  306. package/components/date-picker/DatePickerCalendarNavigator.js.map +1 -1
  307. package/components/date-picker/DatePickerInput.js +2 -1
  308. package/components/date-picker/DatePickerInput.js.map +1 -1
  309. package/components/date-picker/DatePickerPortal.d.ts +1 -1
  310. package/components/date-picker/DatePickerPortal.js +4 -4
  311. package/components/date-picker/DatePickerPortal.js.map +1 -1
  312. package/components/form-status/FormStatus.js +1 -1
  313. package/components/form-status/FormStatus.js.map +1 -1
  314. package/components/form-status/style/dnb-form-status.css +1 -1
  315. package/components/form-status/style/dnb-form-status.min.css +1 -1
  316. package/components/form-status/style/dnb-form-status.scss +1 -1
  317. package/components/form-status/style/themes/dnb-form-status-theme-sbanken.css +11 -2
  318. package/components/form-status/style/themes/dnb-form-status-theme-sbanken.min.css +1 -1
  319. package/components/form-status/style/themes/dnb-form-status-theme-sbanken.scss +6 -2
  320. package/components/global-status/style/themes/dnb-global-status-theme-sbanken.css +1 -1
  321. package/components/global-status/style/themes/dnb-global-status-theme-sbanken.min.css +1 -1
  322. package/components/global-status/style/themes/dnb-global-status-theme-sbanken.scss +1 -1
  323. package/components/help-button/style/dnb-help-button-inline.css +1 -1
  324. package/components/help-button/style/dnb-help-button-inline.min.css +1 -1
  325. package/components/help-button/style/dnb-help-button-inline.scss +1 -1
  326. package/components/help-button/style/dnb-help-button.css +1 -1
  327. package/components/help-button/style/dnb-help-button.min.css +1 -1
  328. package/components/index.d.ts +3 -1
  329. package/components/index.js +3 -1
  330. package/components/index.js.map +1 -1
  331. package/components/info-card/style/dnb-info-card.css +1 -1
  332. package/components/info-card/style/dnb-info-card.min.css +1 -1
  333. package/components/info-card/style/dnb-info-card.scss +1 -1
  334. package/components/lib.d.ts +5 -1
  335. package/components/lib.js +5 -1
  336. package/components/lib.js.map +1 -1
  337. package/components/modal/ModalRoot.d.ts +2 -7
  338. package/components/modal/ModalRoot.js +9 -65
  339. package/components/modal/ModalRoot.js.map +1 -1
  340. package/components/portal-root/PortalRoot.d.ts +7 -0
  341. package/components/portal-root/PortalRoot.js +54 -0
  342. package/components/portal-root/PortalRoot.js.map +1 -0
  343. package/components/portal-root/PortalRootDocs.d.ts +2 -0
  344. package/components/portal-root/PortalRootDocs.js +13 -0
  345. package/components/portal-root/PortalRootDocs.js.map +1 -0
  346. package/components/portal-root/index.d.ts +7 -0
  347. package/components/portal-root/index.js +4 -0
  348. package/components/portal-root/index.js.map +1 -0
  349. package/components/section/style/themes/dnb-section-theme-sbanken.css +1 -1
  350. package/components/section/style/themes/dnb-section-theme-sbanken.min.css +1 -1
  351. package/components/section/style/themes/dnb-section-theme-sbanken.scss +1 -1
  352. package/components/step-indicator/StepIndicator.js +6 -2
  353. package/components/step-indicator/StepIndicator.js.map +1 -1
  354. package/components/step-indicator/StepIndicatorDocs.js +1 -1
  355. package/components/step-indicator/StepIndicatorDocs.js.map +1 -1
  356. package/components/step-indicator/StepIndicatorTriggerButton.d.ts +2 -1
  357. package/components/step-indicator/StepIndicatorTriggerButton.js +5 -3
  358. package/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  359. package/components/switch/Switch.d.ts +12 -3
  360. package/components/switch/Switch.js +40 -16
  361. package/components/switch/Switch.js.map +1 -1
  362. package/components/switch/SwitchDocs.js +5 -0
  363. package/components/switch/SwitchDocs.js.map +1 -1
  364. package/components/tooltip/TooltipPortal.js +27 -60
  365. package/components/tooltip/TooltipPortal.js.map +1 -1
  366. package/components/tooltip/style/dnb-tooltip.css +8 -1
  367. package/components/tooltip/style/dnb-tooltip.min.css +1 -1
  368. package/components/tooltip/style/dnb-tooltip.scss +8 -1
  369. package/components/upload/Upload.js +31 -7
  370. package/components/upload/Upload.js.map +1 -1
  371. package/components/upload/UploadContext.d.ts +1 -0
  372. package/components/upload/UploadContext.js +2 -1
  373. package/components/upload/UploadContext.js.map +1 -1
  374. package/components/upload/UploadDocs.js +11 -1
  375. package/components/upload/UploadDocs.js.map +1 -1
  376. package/components/upload/UploadDropzone.d.ts +3 -1
  377. package/components/upload/UploadDropzone.js +5 -4
  378. package/components/upload/UploadDropzone.js.map +1 -1
  379. package/components/upload/UploadFileInput.d.ts +3 -1
  380. package/components/upload/UploadFileInput.js +7 -5
  381. package/components/upload/UploadFileInput.js.map +1 -1
  382. package/components/upload/style/dnb-upload.css +10 -2
  383. package/components/upload/style/dnb-upload.min.css +1 -1
  384. package/components/upload/style/dnb-upload.scss +12 -2
  385. package/components/upload/types.d.ts +4 -0
  386. package/components/upload/types.js.map +1 -1
  387. package/elements/lists/style/lists-mixins.scss +1 -1
  388. package/es/components/DateFormat.d.ts +12 -0
  389. package/es/components/DateFormat.js +4 -0
  390. package/es/components/DateFormat.js.map +1 -0
  391. package/es/components/PortalRoot.d.ts +12 -0
  392. package/es/components/PortalRoot.js +4 -0
  393. package/es/components/PortalRoot.js.map +1 -0
  394. package/es/components/breadcrumb/Breadcrumb.d.ts +4 -0
  395. package/es/components/breadcrumb/Breadcrumb.js +9 -4
  396. package/es/components/breadcrumb/Breadcrumb.js.map +1 -1
  397. package/es/components/breadcrumb/BreadcrumbDocs.js +5 -0
  398. package/es/components/breadcrumb/BreadcrumbDocs.js.map +1 -1
  399. package/es/components/card/Card.d.ts +4 -0
  400. package/es/components/card/Card.js +12 -4
  401. package/es/components/card/Card.js.map +1 -1
  402. package/es/components/card/CardDocs.js +1 -1
  403. package/es/components/card/CardDocs.js.map +1 -1
  404. package/es/components/checkbox/Checkbox.js.map +1 -1
  405. package/es/components/date-format/DateFormat.d.ts +30 -0
  406. package/es/components/date-format/DateFormat.js +74 -0
  407. package/es/components/date-format/DateFormat.js.map +1 -0
  408. package/es/components/date-format/DateFormatDocs.d.ts +2 -0
  409. package/es/components/date-format/DateFormatDocs.js +28 -0
  410. package/es/components/date-format/DateFormatDocs.js.map +1 -0
  411. package/es/components/date-format/DateFormatUtils.d.ts +11 -0
  412. package/es/components/date-format/DateFormatUtils.js +27 -0
  413. package/es/components/date-format/DateFormatUtils.js.map +1 -0
  414. package/es/components/date-format/index.d.ts +7 -0
  415. package/es/components/date-format/index.js +4 -0
  416. package/es/components/date-format/index.js.map +1 -0
  417. package/es/components/date-picker/DatePicker.js +3 -6
  418. package/es/components/date-picker/DatePicker.js.map +1 -1
  419. package/es/components/date-picker/DatePickerCalc.d.ts +0 -13
  420. package/es/components/date-picker/DatePickerCalc.js +0 -39
  421. package/es/components/date-picker/DatePickerCalc.js.map +1 -1
  422. package/es/components/date-picker/DatePickerCalendar.js +7 -6
  423. package/es/components/date-picker/DatePickerCalendar.js.map +1 -1
  424. package/es/components/date-picker/DatePickerCalendarNavigator.js +4 -4
  425. package/es/components/date-picker/DatePickerCalendarNavigator.js.map +1 -1
  426. package/es/components/date-picker/DatePickerInput.js +2 -1
  427. package/es/components/date-picker/DatePickerInput.js.map +1 -1
  428. package/es/components/date-picker/DatePickerPortal.d.ts +1 -1
  429. package/es/components/date-picker/DatePickerPortal.js +4 -4
  430. package/es/components/date-picker/DatePickerPortal.js.map +1 -1
  431. package/es/components/form-status/FormStatus.js +1 -1
  432. package/es/components/form-status/FormStatus.js.map +1 -1
  433. package/es/components/form-status/style/dnb-form-status.css +1 -1
  434. package/es/components/form-status/style/dnb-form-status.min.css +1 -1
  435. package/es/components/form-status/style/dnb-form-status.scss +1 -1
  436. package/es/components/form-status/style/themes/dnb-form-status-theme-sbanken.css +11 -2
  437. package/es/components/form-status/style/themes/dnb-form-status-theme-sbanken.min.css +1 -1
  438. package/es/components/form-status/style/themes/dnb-form-status-theme-sbanken.scss +6 -2
  439. package/es/components/global-status/style/themes/dnb-global-status-theme-sbanken.css +1 -1
  440. package/es/components/global-status/style/themes/dnb-global-status-theme-sbanken.min.css +1 -1
  441. package/es/components/global-status/style/themes/dnb-global-status-theme-sbanken.scss +1 -1
  442. package/es/components/help-button/style/dnb-help-button-inline.css +1 -1
  443. package/es/components/help-button/style/dnb-help-button-inline.min.css +1 -1
  444. package/es/components/help-button/style/dnb-help-button-inline.scss +1 -1
  445. package/es/components/help-button/style/dnb-help-button.css +1 -1
  446. package/es/components/help-button/style/dnb-help-button.min.css +1 -1
  447. package/es/components/index.d.ts +3 -1
  448. package/es/components/index.js +3 -1
  449. package/es/components/index.js.map +1 -1
  450. package/es/components/info-card/style/dnb-info-card.css +1 -1
  451. package/es/components/info-card/style/dnb-info-card.min.css +1 -1
  452. package/es/components/info-card/style/dnb-info-card.scss +1 -1
  453. package/es/components/lib.d.ts +5 -1
  454. package/es/components/lib.js +5 -1
  455. package/es/components/lib.js.map +1 -1
  456. package/es/components/modal/ModalRoot.d.ts +2 -7
  457. package/es/components/modal/ModalRoot.js +9 -61
  458. package/es/components/modal/ModalRoot.js.map +1 -1
  459. package/es/components/portal-root/PortalRoot.d.ts +7 -0
  460. package/es/components/portal-root/PortalRoot.js +54 -0
  461. package/es/components/portal-root/PortalRoot.js.map +1 -0
  462. package/es/components/portal-root/PortalRootDocs.d.ts +2 -0
  463. package/es/components/portal-root/PortalRootDocs.js +13 -0
  464. package/es/components/portal-root/PortalRootDocs.js.map +1 -0
  465. package/es/components/portal-root/index.d.ts +7 -0
  466. package/es/components/portal-root/index.js +4 -0
  467. package/es/components/portal-root/index.js.map +1 -0
  468. package/es/components/section/style/themes/dnb-section-theme-sbanken.css +1 -1
  469. package/es/components/section/style/themes/dnb-section-theme-sbanken.min.css +1 -1
  470. package/es/components/section/style/themes/dnb-section-theme-sbanken.scss +1 -1
  471. package/es/components/step-indicator/StepIndicator.js +6 -2
  472. package/es/components/step-indicator/StepIndicator.js.map +1 -1
  473. package/es/components/step-indicator/StepIndicatorDocs.js +1 -1
  474. package/es/components/step-indicator/StepIndicatorDocs.js.map +1 -1
  475. package/es/components/step-indicator/StepIndicatorTriggerButton.d.ts +2 -1
  476. package/es/components/step-indicator/StepIndicatorTriggerButton.js +5 -3
  477. package/es/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  478. package/es/components/switch/Switch.d.ts +12 -3
  479. package/es/components/switch/Switch.js +40 -16
  480. package/es/components/switch/Switch.js.map +1 -1
  481. package/es/components/switch/SwitchDocs.js +5 -0
  482. package/es/components/switch/SwitchDocs.js.map +1 -1
  483. package/es/components/tooltip/TooltipPortal.js +27 -59
  484. package/es/components/tooltip/TooltipPortal.js.map +1 -1
  485. package/es/components/tooltip/style/dnb-tooltip.css +8 -1
  486. package/es/components/tooltip/style/dnb-tooltip.min.css +1 -1
  487. package/es/components/tooltip/style/dnb-tooltip.scss +8 -1
  488. package/es/components/upload/Upload.js +31 -7
  489. package/es/components/upload/Upload.js.map +1 -1
  490. package/es/components/upload/UploadContext.d.ts +1 -0
  491. package/es/components/upload/UploadContext.js +2 -1
  492. package/es/components/upload/UploadContext.js.map +1 -1
  493. package/es/components/upload/UploadDocs.js +11 -1
  494. package/es/components/upload/UploadDocs.js.map +1 -1
  495. package/es/components/upload/UploadDropzone.d.ts +3 -1
  496. package/es/components/upload/UploadDropzone.js +5 -4
  497. package/es/components/upload/UploadDropzone.js.map +1 -1
  498. package/es/components/upload/UploadFileInput.d.ts +3 -1
  499. package/es/components/upload/UploadFileInput.js +7 -5
  500. package/es/components/upload/UploadFileInput.js.map +1 -1
  501. package/es/components/upload/style/dnb-upload.css +10 -2
  502. package/es/components/upload/style/dnb-upload.min.css +1 -1
  503. package/es/components/upload/style/dnb-upload.scss +12 -2
  504. package/es/components/upload/types.d.ts +4 -0
  505. package/es/components/upload/types.js.map +1 -1
  506. package/es/elements/lists/style/lists-mixins.scss +1 -1
  507. package/es/extensions/forms/Connectors/Bring/address.d.ts +48 -0
  508. package/es/extensions/forms/Connectors/Bring/address.js +169 -0
  509. package/es/extensions/forms/Connectors/Bring/address.js.map +1 -0
  510. package/es/extensions/forms/Connectors/Bring/index.d.ts +1 -0
  511. package/es/extensions/forms/Connectors/Bring/index.js +3 -1
  512. package/es/extensions/forms/Connectors/Bring/index.js.map +1 -1
  513. package/es/extensions/forms/Connectors/Bring/postalCode.js +9 -1
  514. package/es/extensions/forms/Connectors/Bring/postalCode.js.map +1 -1
  515. package/es/extensions/forms/Connectors/createContext.js +3 -0
  516. package/es/extensions/forms/Connectors/createContext.js.map +1 -1
  517. package/es/extensions/forms/Field/Address/Address.d.ts +3 -0
  518. package/es/extensions/forms/Field/Address/Address.js.map +1 -1
  519. package/es/extensions/forms/Field/Boolean/BooleanDocs.js +1 -1
  520. package/es/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
  521. package/es/extensions/forms/Field/Date/Date.js +5 -2
  522. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  523. package/es/extensions/forms/Field/Indeterminate/Indeterminate.js +3 -3
  524. package/es/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
  525. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +15 -6
  526. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  527. package/es/extensions/forms/Field/Toggle/Toggle.d.ts +1 -1
  528. package/es/extensions/forms/Field/Toggle/Toggle.js +37 -1
  529. package/es/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  530. package/es/extensions/forms/Field/Upload/Upload.d.ts +1 -1
  531. package/es/extensions/forms/Field/Upload/Upload.js +26 -7
  532. package/es/extensions/forms/Field/Upload/Upload.js.map +1 -1
  533. package/es/extensions/forms/Field/style/field-sizes.scss +1 -1
  534. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +2 -2
  535. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  536. package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +1 -1
  537. package/es/extensions/forms/Form/Card/Card.d.ts +3 -6
  538. package/es/extensions/forms/Form/Card/Card.js +1 -1
  539. package/es/extensions/forms/Form/Card/Card.js.map +1 -1
  540. package/es/extensions/forms/Form/Card/CardDocs.d.ts +1 -0
  541. package/es/extensions/forms/Form/Card/CardDocs.js +12 -10
  542. package/es/extensions/forms/Form/Card/CardDocs.js.map +1 -1
  543. package/es/extensions/forms/Value/Date/Date.js +20 -5
  544. package/es/extensions/forms/Value/Date/Date.js.map +1 -1
  545. package/es/extensions/forms/Value/style/value-sizes.scss +2 -2
  546. package/es/extensions/forms/ValueBlock/style/dnb-value-block.css +2 -2
  547. package/es/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  548. package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  549. package/es/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  550. package/es/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  551. package/es/extensions/forms/constants/locales/en-GB.js +2 -1
  552. package/es/extensions/forms/constants/locales/en-GB.js.map +1 -1
  553. package/es/extensions/forms/constants/locales/en-US.d.ts +1 -0
  554. package/es/extensions/forms/constants/locales/index.d.ts +2 -0
  555. package/es/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  556. package/es/extensions/forms/constants/locales/nb-NO.js +2 -1
  557. package/es/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  558. package/es/extensions/forms/constants/locales/sv-SE.d.ts +1 -0
  559. package/es/extensions/forms/constants/locales/sv-SE.js +2 -1
  560. package/es/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  561. package/es/extensions/forms/style/dnb-forms.css +4 -4
  562. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  563. package/es/extensions/payment-card/style/dnb-payment-card.css +1 -0
  564. package/es/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  565. package/es/fragments/drawer-list/DrawerList.d.ts +4 -2
  566. package/es/fragments/drawer-list/DrawerList.js +6 -5
  567. package/es/fragments/drawer-list/DrawerList.js.map +1 -1
  568. package/es/fragments/drawer-list/DrawerListHelpers.js +1 -1
  569. package/es/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  570. package/es/fragments/drawer-list/DrawerListPortal.d.ts +1 -0
  571. package/es/fragments/drawer-list/DrawerListPortal.js +32 -66
  572. package/es/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  573. package/es/fragments/drawer-list/DrawerListProvider.d.ts +1 -1
  574. package/es/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  575. package/es/fragments/drawer-list/style/dnb-drawer-list.scss +1 -1
  576. package/es/index.d.ts +3 -1
  577. package/es/index.js +3 -1
  578. package/es/index.js.map +1 -1
  579. package/es/shared/build-info/BuildInfoData.cjs +2 -2
  580. package/es/shared/build-info/BuildInfoData.d.ts +2 -2
  581. package/es/shared/build-info/BuildInfoData.js +2 -2
  582. package/es/shared/build-info/BuildInfoData.js.map +1 -1
  583. package/es/shared/locales/en-GB.d.ts +3 -0
  584. package/es/shared/locales/en-GB.js +3 -0
  585. package/es/shared/locales/en-GB.js.map +1 -1
  586. package/es/shared/locales/en-US.d.ts +3 -0
  587. package/es/shared/locales/index.d.ts +6 -0
  588. package/es/shared/locales/nb-NO.d.ts +3 -0
  589. package/es/shared/locales/nb-NO.js +3 -0
  590. package/es/shared/locales/nb-NO.js.map +1 -1
  591. package/es/shared/locales/sv-SE.d.ts +3 -0
  592. package/es/shared/locales/sv-SE.js +3 -0
  593. package/es/shared/locales/sv-SE.js.map +1 -1
  594. package/es/style/core/scopes.scss +1 -1
  595. package/es/style/dnb-ui-basis.css +1 -1
  596. package/es/style/dnb-ui-basis.min.css +1 -1
  597. package/es/style/dnb-ui-body.css +1 -1
  598. package/es/style/dnb-ui-body.min.css +1 -1
  599. package/es/style/dnb-ui-components.css +27 -12
  600. package/es/style/dnb-ui-components.min.css +4 -4
  601. package/es/style/dnb-ui-core.css +1 -1
  602. package/es/style/dnb-ui-core.min.css +1 -1
  603. package/es/style/dnb-ui-elements.css +1 -1
  604. package/es/style/dnb-ui-elements.min.css +1 -1
  605. package/es/style/dnb-ui-extensions.css +5 -4
  606. package/es/style/dnb-ui-extensions.min.css +1 -1
  607. package/es/style/dnb-ui-forms.css +4 -4
  608. package/es/style/dnb-ui-forms.min.css +1 -1
  609. package/es/style/dnb-ui-fragments.css +1 -1
  610. package/es/style/dnb-ui-fragments.min.css +1 -1
  611. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +2 -1
  612. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  613. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +31 -16
  614. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  615. package/es/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
  616. package/es/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  617. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +5 -4
  618. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  619. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +4 -4
  620. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  621. package/es/style/themes/theme-eiendom/properties.d.ts +2 -0
  622. package/es/style/themes/theme-eiendom/properties.js +3 -1
  623. package/es/style/themes/theme-eiendom/properties.js.map +1 -1
  624. package/es/style/themes/theme-sbanken/properties.d.ts +2 -0
  625. package/es/style/themes/theme-sbanken/properties.js +2 -0
  626. package/es/style/themes/theme-sbanken/properties.js.map +1 -1
  627. package/es/style/themes/theme-sbanken/properties.scss +3 -0
  628. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +3 -1
  629. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +2 -2
  630. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +44 -20
  631. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +6 -6
  632. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
  633. package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  634. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +5 -4
  635. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  636. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +4 -4
  637. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  638. package/es/style/themes/theme-ui/properties.d.ts +2 -0
  639. package/es/style/themes/theme-ui/properties.js +3 -1
  640. package/es/style/themes/theme-ui/properties.js.map +1 -1
  641. package/es/style/themes/theme-ui/properties.scss +3 -0
  642. package/es/style/themes/theme-ui/ui-theme-basis.css +2 -1
  643. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  644. package/es/style/themes/theme-ui/ui-theme-components.css +31 -16
  645. package/es/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  646. package/es/style/themes/theme-ui/ui-theme-elements.css +1 -1
  647. package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  648. package/es/style/themes/theme-ui/ui-theme-extensions.css +5 -4
  649. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  650. package/es/style/themes/theme-ui/ui-theme-forms.css +4 -4
  651. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  652. package/es/style/themes/theme-ui/ui-theme-properties.css +1 -0
  653. package/es/style/themes/theme-ui/ui-theme-properties.min.css +1 -1
  654. package/es/style/themes/theme-ui/ui-theme-tags.css +1 -1
  655. package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  656. package/esm/dnb-ui-components.min.mjs +1 -1
  657. package/esm/dnb-ui-elements.min.mjs +1 -1
  658. package/esm/dnb-ui-extensions.min.mjs +3 -3
  659. package/esm/dnb-ui-lib.min.mjs +1 -1
  660. package/extensions/forms/Connectors/Bring/address.d.ts +48 -0
  661. package/extensions/forms/Connectors/Bring/address.js +170 -0
  662. package/extensions/forms/Connectors/Bring/address.js.map +1 -0
  663. package/extensions/forms/Connectors/Bring/index.d.ts +1 -0
  664. package/extensions/forms/Connectors/Bring/index.js +2 -0
  665. package/extensions/forms/Connectors/Bring/index.js.map +1 -1
  666. package/extensions/forms/Connectors/Bring/postalCode.js +9 -1
  667. package/extensions/forms/Connectors/Bring/postalCode.js.map +1 -1
  668. package/extensions/forms/Connectors/createContext.js +3 -0
  669. package/extensions/forms/Connectors/createContext.js.map +1 -1
  670. package/extensions/forms/Field/Address/Address.d.ts +3 -0
  671. package/extensions/forms/Field/Address/Address.js.map +1 -1
  672. package/extensions/forms/Field/Boolean/BooleanDocs.js +1 -1
  673. package/extensions/forms/Field/Boolean/BooleanDocs.js.map +1 -1
  674. package/extensions/forms/Field/Date/Date.js +5 -2
  675. package/extensions/forms/Field/Date/Date.js.map +1 -1
  676. package/extensions/forms/Field/Indeterminate/Indeterminate.js +3 -3
  677. package/extensions/forms/Field/Indeterminate/Indeterminate.js.map +1 -1
  678. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +15 -6
  679. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  680. package/extensions/forms/Field/Toggle/Toggle.d.ts +1 -1
  681. package/extensions/forms/Field/Toggle/Toggle.js +37 -1
  682. package/extensions/forms/Field/Toggle/Toggle.js.map +1 -1
  683. package/extensions/forms/Field/Upload/Upload.d.ts +1 -1
  684. package/extensions/forms/Field/Upload/Upload.js +26 -7
  685. package/extensions/forms/Field/Upload/Upload.js.map +1 -1
  686. package/extensions/forms/Field/style/field-sizes.scss +1 -1
  687. package/extensions/forms/FieldBlock/style/dnb-field-block.css +2 -2
  688. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  689. package/extensions/forms/FieldBlock/style/dnb-field-block.scss +1 -1
  690. package/extensions/forms/Form/Card/Card.d.ts +3 -6
  691. package/extensions/forms/Form/Card/Card.js +1 -1
  692. package/extensions/forms/Form/Card/Card.js.map +1 -1
  693. package/extensions/forms/Form/Card/CardDocs.d.ts +1 -0
  694. package/extensions/forms/Form/Card/CardDocs.js +12 -10
  695. package/extensions/forms/Form/Card/CardDocs.js.map +1 -1
  696. package/extensions/forms/Value/Date/Date.js +20 -5
  697. package/extensions/forms/Value/Date/Date.js.map +1 -1
  698. package/extensions/forms/Value/style/value-sizes.scss +2 -2
  699. package/extensions/forms/ValueBlock/style/dnb-value-block.css +2 -2
  700. package/extensions/forms/ValueBlock/style/dnb-value-block.min.css +1 -1
  701. package/extensions/forms/Wizard/Container/WizardContainerDocs.js +1 -1
  702. package/extensions/forms/Wizard/Container/WizardContainerDocs.js.map +1 -1
  703. package/extensions/forms/constants/locales/en-GB.d.ts +1 -0
  704. package/extensions/forms/constants/locales/en-GB.js +2 -1
  705. package/extensions/forms/constants/locales/en-GB.js.map +1 -1
  706. package/extensions/forms/constants/locales/en-US.d.ts +1 -0
  707. package/extensions/forms/constants/locales/index.d.ts +2 -0
  708. package/extensions/forms/constants/locales/nb-NO.d.ts +1 -0
  709. package/extensions/forms/constants/locales/nb-NO.js +2 -1
  710. package/extensions/forms/constants/locales/nb-NO.js.map +1 -1
  711. package/extensions/forms/constants/locales/sv-SE.d.ts +1 -0
  712. package/extensions/forms/constants/locales/sv-SE.js +2 -1
  713. package/extensions/forms/constants/locales/sv-SE.js.map +1 -1
  714. package/extensions/forms/style/dnb-forms.css +4 -4
  715. package/extensions/forms/style/dnb-forms.min.css +1 -1
  716. package/extensions/payment-card/style/dnb-payment-card.css +1 -0
  717. package/extensions/payment-card/style/dnb-payment-card.min.css +1 -1
  718. package/fragments/drawer-list/DrawerList.d.ts +4 -2
  719. package/fragments/drawer-list/DrawerList.js +6 -5
  720. package/fragments/drawer-list/DrawerList.js.map +1 -1
  721. package/fragments/drawer-list/DrawerListHelpers.js +1 -1
  722. package/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  723. package/fragments/drawer-list/DrawerListPortal.d.ts +1 -0
  724. package/fragments/drawer-list/DrawerListPortal.js +32 -66
  725. package/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  726. package/fragments/drawer-list/DrawerListProvider.d.ts +1 -1
  727. package/fragments/drawer-list/DrawerListProvider.js.map +1 -1
  728. package/fragments/drawer-list/style/dnb-drawer-list.scss +1 -1
  729. package/index.d.ts +3 -1
  730. package/index.js +3 -1
  731. package/index.js.map +1 -1
  732. package/package.json +1 -1
  733. package/shared/build-info/BuildInfoData.cjs +2 -2
  734. package/shared/build-info/BuildInfoData.d.ts +2 -2
  735. package/shared/build-info/BuildInfoData.js +2 -2
  736. package/shared/build-info/BuildInfoData.js.map +1 -1
  737. package/shared/locales/en-GB.d.ts +3 -0
  738. package/shared/locales/en-GB.js +3 -0
  739. package/shared/locales/en-GB.js.map +1 -1
  740. package/shared/locales/en-US.d.ts +3 -0
  741. package/shared/locales/index.d.ts +6 -0
  742. package/shared/locales/nb-NO.d.ts +3 -0
  743. package/shared/locales/nb-NO.js +3 -0
  744. package/shared/locales/nb-NO.js.map +1 -1
  745. package/shared/locales/sv-SE.d.ts +3 -0
  746. package/shared/locales/sv-SE.js +3 -0
  747. package/shared/locales/sv-SE.js.map +1 -1
  748. package/style/core/scopes.scss +1 -1
  749. package/style/dnb-ui-basis.css +1 -1
  750. package/style/dnb-ui-basis.min.css +1 -1
  751. package/style/dnb-ui-body.css +1 -1
  752. package/style/dnb-ui-body.min.css +1 -1
  753. package/style/dnb-ui-components.css +27 -12
  754. package/style/dnb-ui-components.min.css +4 -4
  755. package/style/dnb-ui-core.css +1 -1
  756. package/style/dnb-ui-core.min.css +1 -1
  757. package/style/dnb-ui-elements.css +1 -1
  758. package/style/dnb-ui-elements.min.css +1 -1
  759. package/style/dnb-ui-extensions.css +5 -4
  760. package/style/dnb-ui-extensions.min.css +1 -1
  761. package/style/dnb-ui-forms.css +4 -4
  762. package/style/dnb-ui-forms.min.css +1 -1
  763. package/style/dnb-ui-fragments.css +1 -1
  764. package/style/dnb-ui-fragments.min.css +1 -1
  765. package/style/themes/theme-eiendom/eiendom-theme-basis.css +2 -1
  766. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  767. package/style/themes/theme-eiendom/eiendom-theme-components.css +31 -16
  768. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +4 -4
  769. package/style/themes/theme-eiendom/eiendom-theme-elements.css +1 -1
  770. package/style/themes/theme-eiendom/eiendom-theme-elements.min.css +1 -1
  771. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +5 -4
  772. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  773. package/style/themes/theme-eiendom/eiendom-theme-forms.css +4 -4
  774. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  775. package/style/themes/theme-eiendom/properties.d.ts +2 -0
  776. package/style/themes/theme-eiendom/properties.js +3 -1
  777. package/style/themes/theme-eiendom/properties.js.map +1 -1
  778. package/style/themes/theme-sbanken/properties.d.ts +2 -0
  779. package/style/themes/theme-sbanken/properties.js +2 -0
  780. package/style/themes/theme-sbanken/properties.js.map +1 -1
  781. package/style/themes/theme-sbanken/properties.scss +3 -0
  782. package/style/themes/theme-sbanken/sbanken-theme-basis.css +3 -1
  783. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +2 -2
  784. package/style/themes/theme-sbanken/sbanken-theme-components.css +44 -20
  785. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +6 -6
  786. package/style/themes/theme-sbanken/sbanken-theme-elements.css +1 -1
  787. package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  788. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +5 -4
  789. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  790. package/style/themes/theme-sbanken/sbanken-theme-forms.css +4 -4
  791. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  792. package/style/themes/theme-ui/properties.d.ts +2 -0
  793. package/style/themes/theme-ui/properties.js +3 -1
  794. package/style/themes/theme-ui/properties.js.map +1 -1
  795. package/style/themes/theme-ui/properties.scss +3 -0
  796. package/style/themes/theme-ui/ui-theme-basis.css +2 -1
  797. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  798. package/style/themes/theme-ui/ui-theme-components.css +31 -16
  799. package/style/themes/theme-ui/ui-theme-components.min.css +4 -4
  800. package/style/themes/theme-ui/ui-theme-elements.css +1 -1
  801. package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  802. package/style/themes/theme-ui/ui-theme-extensions.css +5 -4
  803. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  804. package/style/themes/theme-ui/ui-theme-forms.css +4 -4
  805. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  806. package/style/themes/theme-ui/ui-theme-properties.css +1 -0
  807. package/style/themes/theme-ui/ui-theme-properties.min.css +1 -1
  808. package/style/themes/theme-ui/ui-theme-tags.css +1 -1
  809. package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  810. package/umd/dnb-ui-components.min.js +1 -1
  811. package/umd/dnb-ui-elements.min.js +1 -1
  812. package/umd/dnb-ui-extensions.min.js +3 -3
  813. package/umd/dnb-ui-lib.min.js +1 -1
@@ -5,6 +5,10 @@
5
5
 
6
6
  @import '../../../style/core/utilities.scss';
7
7
 
8
+ :root {
9
+ --tooltip-z-index: 3100; // above modal
10
+ }
11
+
8
12
  .dnb-tooltip {
9
13
  --tooltip-color: white;
10
14
  --tooltip-background-color: black;
@@ -12,7 +16,10 @@
12
16
  --tooltip-border-radius: 1rem;
13
17
 
14
18
  position: absolute;
15
- z-index: 3100; // over modal
19
+ z-index: 1000;
20
+ .dnb-tooltip--inside-modal & {
21
+ z-index: var(--tooltip-z-index);
22
+ }
16
23
 
17
24
  display: flex;
18
25
  flex-direction: column;
@@ -3,9 +3,9 @@
3
3
  import _extends from "@babel/runtime/helpers/esm/extends";
4
4
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
5
5
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
6
- var _UploadInfo, _UploadFileList;
6
+ var _UploadInfo, _UploadFileList, _br;
7
7
  const _excluded = ["buttonTextSingular", "textSingular"],
8
- _excluded2 = ["id", "skeleton", "className", "acceptedFileTypes", "filesAmountLimit", "fileMaxSize", "onChange", "onFileDelete", "onFileClick", "download", "allowDuplicates", "title", "text", "fileTypeTableCaption", "fileTypeDescription", "fileSizeDescription", "fileAmountDescription", "fileSizeContent", "buttonText", "loadingText", "errorLargeFile", "errorUnsupportedFile", "errorAmountLimit", "deleteButton", "fileListAriaLabel", "disableDragAndDrop"];
8
+ _excluded2 = ["id", "variant", "skeleton", "className", "acceptedFileTypes", "filesAmountLimit", "fileMaxSize", "onChange", "onFileDelete", "onFileClick", "download", "allowDuplicates", "title", "text", "fileTypeTableCaption", "fileTypeDescription", "fileSizeDescription", "fileAmountDescription", "fileSizeContent", "buttonText", "loadingText", "errorLargeFile", "errorUnsupportedFile", "errorAmountLimit", "deleteButton", "fileListAriaLabel", "disableDragAndDrop"];
9
9
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
10
10
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
11
11
  import React, { useCallback } from 'react';
@@ -23,6 +23,7 @@ import { UploadContext, defaultProps } from './UploadContext';
23
23
  import { verifyFiles } from './UploadVerify';
24
24
  import UploadFileList from './UploadFileList';
25
25
  import UploadInfo from './UploadInfo';
26
+ import FormLabel from '../FormLabel';
26
27
  export { defaultProps };
27
28
  const Upload = localProps => {
28
29
  const context = React.useContext(Context);
@@ -41,6 +42,7 @@ const Upload = localProps => {
41
42
  }, translations, context.Upload);
42
43
  const {
43
44
  id: idProp,
45
+ variant,
44
46
  skeleton,
45
47
  className,
46
48
  acceptedFileTypes,
@@ -105,7 +107,8 @@ const Upload = localProps => {
105
107
  }
106
108
  return validFiles;
107
109
  }, [acceptedFileTypes, errorLargeFile, errorUnsupportedFile, fileMaxSize, files, filesAmountLimit, getExistingFile, onChange, setFiles, setInternalFiles]);
108
- const UploadWrapper = disableDragAndDrop || props.disabled ? HeightAnimation : UploadDropzone;
110
+ const wrapperIsHeightAnimation = disableDragAndDrop || props.disabled;
111
+ const UploadWrapper = wrapperIsHeightAnimation ? HeightAnimation : UploadDropzone;
109
112
  return React.createElement(UploadContext.Provider, {
110
113
  value: _objectSpread(_objectSpread({}, extendedProps), {}, {
111
114
  id,
@@ -113,12 +116,33 @@ const Upload = localProps => {
113
116
  })
114
117
  }, React.createElement(Provider, {
115
118
  skeleton: skeleton
116
- }, React.createElement(UploadWrapper, {
117
- className: classnames('dnb-upload', spacingClasses, className)
118
- }, _UploadInfo || (_UploadInfo = React.createElement(UploadInfo, null)), React.createElement(UploadFileInput, _extends({
119
- disabled: props.disabled
119
+ }, React.createElement(UploadWrapper, _extends({
120
+ className: classnames(`dnb-upload dnb-upload--${variant || 'normal'}`, spacingClasses, className)
121
+ }, !wrapperIsHeightAnimation ? {
122
+ hideOutline: variant === 'compact'
123
+ } : {}), variant !== 'compact' && (_UploadInfo || (_UploadInfo = React.createElement(UploadInfo, null))), variant === 'compact' && (title || text) && React.createElement(React.Fragment, null, React.createElement(CompactLabel, {
124
+ id: id,
125
+ title: title,
126
+ text: text
127
+ }), props === null || props === void 0 ? void 0 : props.children), React.createElement(UploadFileInput, _extends({
128
+ disabled: props.disabled,
129
+ files: files
120
130
  }, props)), _UploadFileList || (_UploadFileList = React.createElement(UploadFileList, null)))));
121
131
  };
132
+ function CompactLabel(props) {
133
+ const {
134
+ id,
135
+ title,
136
+ text
137
+ } = props;
138
+ return React.createElement(FormLabel, {
139
+ forId: `${id}-input`,
140
+ vertical: true,
141
+ className: "dnb-upload__label"
142
+ }, React.createElement("span", null, title && React.createElement("span", null, title), title && text && (_br || (_br = React.createElement("br", null))), text && React.createElement("span", {
143
+ className: "dnb-upload__text"
144
+ }, text)));
145
+ }
122
146
  Upload.useUpload = useUpload;
123
147
  Upload._formElement = true;
124
148
  Upload._supportsSpacingProps = 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","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
+ {"version":3,"file":"Upload.js","names":["React","useCallback","classnames","createSpacingClasses","Provider","Context","extendPropsWithContext","makeUniqueId","useId","HeightAnimation","UploadFileInput","useUpload","UploadDropzone","UploadContext","defaultProps","verifyFiles","UploadFileList","UploadInfo","FormLabel","Upload","localProps","context","useContext","_context$getTranslati","getTranslation","buttonTextSingular","textSingular","translations","_objectWithoutProperties","_excluded","filesAmountLimit","buttonText","text","extendedProps","skeleton","id","idProp","variant","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","verifiedFiles","validFiles","slice","wrapperIsHeightAnimation","disabled","UploadWrapper","createElement","value","_objectSpread","_extends","hideOutline","_UploadInfo","Fragment","CompactLabel","children","_UploadFileList","forId","vertical","_br","_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'\nimport FormLabel from '../FormLabel'\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 variant,\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 wrapperIsHeightAnimation = disableDragAndDrop || props.disabled\n\n const UploadWrapper = wrapperIsHeightAnimation\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(\n 'dnb-upload',\n `dnb-upload--${variant || 'normal'}`,\n spacingClasses,\n className\n )}\n {...(!wrapperIsHeightAnimation\n ? { hideOutline: variant === 'compact' }\n : {})}\n >\n {variant !== 'compact' && <UploadInfo />}\n {variant === 'compact' && (title || text) && (\n <>\n <CompactLabel id={id} title={title} text={text} />\n {props?.children}\n </>\n )}\n\n <UploadFileInput\n disabled={props.disabled}\n files={files}\n {...props}\n />\n\n <UploadFileList />\n </UploadWrapper>\n </Provider>\n </UploadContext.Provider>\n )\n}\n\nfunction CompactLabel(props: {\n id: string\n title?: UploadAllProps['title']\n text?: UploadAllProps['text']\n}) {\n const { id, title, text } = props\n return (\n <FormLabel\n forId={`${id}-input`}\n vertical\n className=\"dnb-upload__label\"\n >\n <span>\n {title && <span>{title}</span>}\n {title && text && <br />}\n {text && <span className=\"dnb-upload__text\">{text}</span>}\n </span>\n </FormLabel>\n )\n}\n\nUpload.useUpload = useUpload\n\nUpload._formElement = true\nUpload._supportsSpacingProps = true\n\nexport default Upload\n"],"mappings":"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","ignoreList":[]}
@@ -4,5 +4,6 @@ export declare const defaultProps: {
4
4
  fileMaxSize: number;
5
5
  filesAmountLimit: number;
6
6
  download: boolean;
7
+ variant: string;
7
8
  };
8
9
  export declare const UploadContext: import("react").Context<UploadContextProps>;
@@ -4,7 +4,8 @@ import { createContext } from 'react';
4
4
  export const defaultProps = {
5
5
  fileMaxSize: 5,
6
6
  filesAmountLimit: 100,
7
- download: false
7
+ download: false,
8
+ variant: 'normal'
8
9
  };
9
10
  export const UploadContext = createContext(null);
10
11
  //# sourceMappingURL=UploadContext.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UploadContext.js","names":["createContext","defaultProps","fileMaxSize","filesAmountLimit","download","UploadContext"],"sources":["../../../../src/components/upload/UploadContext.tsx"],"sourcesContent":["import { createContext } from 'react'\nimport { UploadContextProps } from './types'\n\nexport const defaultProps = {\n fileMaxSize: 5,\n filesAmountLimit: 100,\n download: false,\n}\n\nexport const UploadContext = createContext<UploadContextProps>(null)\n"],"mappings":";;AAAA,SAASA,aAAa,QAAQ,OAAO;AAGrC,OAAO,MAAMC,YAAY,GAAG;EAC1BC,WAAW,EAAE,CAAC;EACdC,gBAAgB,EAAE,GAAG;EACrBC,QAAQ,EAAE;AACZ,CAAC;AAED,OAAO,MAAMC,aAAa,GAAGL,aAAa,CAAqB,IAAI,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"UploadContext.js","names":["createContext","defaultProps","fileMaxSize","filesAmountLimit","download","variant","UploadContext"],"sources":["../../../../src/components/upload/UploadContext.tsx"],"sourcesContent":["import { createContext } from 'react'\nimport { UploadContextProps } from './types'\n\nexport const defaultProps = {\n fileMaxSize: 5,\n filesAmountLimit: 100,\n download: false,\n variant: 'normal',\n}\n\nexport const UploadContext = createContext<UploadContextProps>(null)\n"],"mappings":";;AAAA,SAASA,aAAa,QAAQ,OAAO;AAGrC,OAAO,MAAMC,YAAY,GAAG;EAC1BC,WAAW,EAAE,CAAC;EACdC,gBAAgB,EAAE,GAAG;EACrBC,QAAQ,EAAE,KAAK;EACfC,OAAO,EAAE;AACX,CAAC;AAED,OAAO,MAAMC,aAAa,GAAGN,aAAa,CAAqB,IAAI,CAAC","ignoreList":[]}
@@ -4,13 +4,23 @@ export const UploadProperties = {
4
4
  type: ['string', 'Function', 'Object', 'React.Context'],
5
5
  status: 'optional'
6
6
  },
7
+ children: {
8
+ doc: 'Content to display below the `title` and `text`. Can be used to add custom content.',
9
+ type: ['React.ReactNode'],
10
+ status: 'optional'
11
+ },
12
+ variant: {
13
+ doc: 'defines the appearance. Use one of these: `normal` or `compact`. Defaults to `normal`.',
14
+ type: ['normal', 'compact'],
15
+ status: 'optional'
16
+ },
7
17
  acceptedFileTypes: {
8
18
  doc: 'List of accepted file types. Either as string or [AcceptedFileType](/uilib/components/upload/properties/#acceptedfiletype). When providing a list of [AcceptedFileType](/uilib/components/upload/properties/#acceptedfiletype), the accepted file types will be presented in a table(see [example](/uilib/components/upload/demos/#upload-with-file-max-size-based-on-file-type)).',
9
19
  type: ['Array<string>', 'Array<AcceptedFileType>'],
10
20
  status: 'required'
11
21
  },
12
22
  filesAmountLimit: {
13
- doc: 'Defines the amount of files the user can select and upload. Defaults to 100.',
23
+ doc: 'Defines the amount of files the user can select and upload. Defaults to `100`.',
14
24
  type: 'number',
15
25
  status: 'optional'
16
26
  },
@@ -1 +1 @@
1
- {"version":3,"file":"UploadDocs.js","names":["UploadProperties","id","doc","type","status","acceptedFileTypes","filesAmountLimit","fileMaxSize","title","text","download","allowDuplicates","disableDragAndDrop","skeleton","AcceptedFileTypeProperties","fileType","UploadEvents","onChange","onFileDelete","onFileClick","FileItemProperties","file","exists","isLoading","errorMessage","description","removeDeleteButton"],"sources":["../../../../src/components/upload/UploadDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../shared/types'\n\nexport const UploadProperties: PropertiesTableProps = {\n id: {\n doc: 'Unique id used with the useUpload hook to manage the files. Needed when wanting to connect with the useUpload hook.',\n type: ['string', 'Function', 'Object', 'React.Context'],\n status: 'optional',\n },\n acceptedFileTypes: {\n doc: 'List of accepted file types. Either as string or [AcceptedFileType](/uilib/components/upload/properties/#acceptedfiletype). When providing a list of [AcceptedFileType](/uilib/components/upload/properties/#acceptedfiletype), the accepted file types will be presented in a table(see [example](/uilib/components/upload/demos/#upload-with-file-max-size-based-on-file-type)).',\n type: ['Array<string>', 'Array<AcceptedFileType>'],\n status: 'required',\n },\n filesAmountLimit: {\n doc: 'Defines the amount of files the user can select and upload. Defaults to 100.',\n type: 'number',\n status: 'optional',\n },\n fileMaxSize: {\n doc: 'Defines the max file size of each file in MB. Use either `0` or `false` to disable. Defaults to 5 MB.',\n type: ['number', 'false'],\n status: 'optional',\n },\n title: {\n doc: 'Custom text property. Replaces the default title. Can be disabled using `false`.',\n type: 'string',\n status: 'optional',\n },\n text: {\n doc: 'Custom text property. Replaces the default text. Can be disabled using `false`.',\n type: 'string',\n status: 'optional',\n },\n download: {\n doc: 'Causes the browser to treat all listed files as downloadable instead of opening them in a new browser tab or window. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n allowDuplicates: {\n doc: 'Allows uploading of duplicate files. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n disableDragAndDrop: {\n doc: 'Disables file drag and drop, by removing the drop zone. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n skeleton: {\n doc: 'Skeleton should be applied when loading content.',\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 AcceptedFileTypeProperties: PropertiesTableProps = {\n fileType: {\n doc: 'The name of the accepted file type.',\n type: 'string',\n status: 'required',\n },\n fileMaxSize: {\n doc: 'Defines the max file size of the given file type in MB. Use either `0` or `false` to disable. If not provided, it defaults to the value of [Uploads](/uilib/components/upload/properties/#properties) `fileMaxSize` which defaults to 5 MB.',\n type: ['number', 'false'],\n status: 'optional',\n },\n}\n\nexport const UploadEvents: PropertiesTableProps = {\n onChange: {\n doc: 'Will be called on `files` changes made by the user. Access the files with `{ files }` (containing each a `fileItem`).',\n type: 'function',\n status: 'optional',\n },\n onFileDelete: {\n doc: 'Will be called once a file gets deleted by the user. Access the deleted file with `{ fileItem }`.',\n type: 'function',\n status: 'optional',\n },\n onFileClick: {\n doc: 'Will be called once a file gets clicked on by the user. Access the clicked file with `{ fileItem }`.',\n type: 'function',\n status: 'optional',\n },\n}\n\nexport const FileItemProperties: PropertiesTableProps = {\n file: {\n doc: 'The file object. This is the same object as the one returned by the `File` API.',\n type: 'File',\n status: 'required',\n },\n id: {\n doc: 'Unique ID for the file item. This ID is generated by the component and is not user-defined.',\n type: 'string',\n status: 'required',\n },\n exists: {\n doc: 'Indicates if the file item already exists in the list of files. This is useful for distinguishing between new and existing files.',\n type: 'boolean',\n status: 'optional',\n },\n isLoading: {\n doc: 'Indicates if the file item is currently being loaded. This is useful for showing a loading state while the file is being processed.',\n type: 'boolean',\n status: 'optional',\n },\n errorMessage: {\n doc: 'Provide an error message to be displayed. This is useful for indicating issues with the file upload process.',\n type: 'React.ReactNode',\n status: 'optional',\n },\n description: {\n doc: 'Provide a description to be displayed. This is useful for providing additional information about the file.',\n type: 'React.ReactNode',\n status: 'optional',\n },\n removeDeleteButton: {\n doc: 'Set to `true` to remove the delete button from the file item. This is useful for preventing users from deleting files.',\n type: 'boolean',\n status: 'optional',\n },\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"UploadDocs.js","names":["UploadProperties","id","doc","type","status","children","variant","acceptedFileTypes","filesAmountLimit","fileMaxSize","title","text","download","allowDuplicates","disableDragAndDrop","skeleton","AcceptedFileTypeProperties","fileType","UploadEvents","onChange","onFileDelete","onFileClick","FileItemProperties","file","exists","isLoading","errorMessage","description","removeDeleteButton"],"sources":["../../../../src/components/upload/UploadDocs.ts"],"sourcesContent":["import { PropertiesTableProps } from '../../shared/types'\n\nexport const UploadProperties: PropertiesTableProps = {\n id: {\n doc: 'Unique id used with the useUpload hook to manage the files. Needed when wanting to connect with the useUpload hook.',\n type: ['string', 'Function', 'Object', 'React.Context'],\n status: 'optional',\n },\n children: {\n doc: 'Content to display below the `title` and `text`. Can be used to add custom content.',\n type: ['React.ReactNode'],\n status: 'optional',\n },\n variant: {\n doc: 'defines the appearance. Use one of these: `normal` or `compact`. Defaults to `normal`.',\n type: ['normal', 'compact'],\n status: 'optional',\n },\n acceptedFileTypes: {\n doc: 'List of accepted file types. Either as string or [AcceptedFileType](/uilib/components/upload/properties/#acceptedfiletype). When providing a list of [AcceptedFileType](/uilib/components/upload/properties/#acceptedfiletype), the accepted file types will be presented in a table(see [example](/uilib/components/upload/demos/#upload-with-file-max-size-based-on-file-type)).',\n type: ['Array<string>', 'Array<AcceptedFileType>'],\n status: 'required',\n },\n filesAmountLimit: {\n doc: 'Defines the amount of files the user can select and upload. Defaults to `100`.',\n type: 'number',\n status: 'optional',\n },\n fileMaxSize: {\n doc: 'Defines the max file size of each file in MB. Use either `0` or `false` to disable. Defaults to 5 MB.',\n type: ['number', 'false'],\n status: 'optional',\n },\n title: {\n doc: 'Custom text property. Replaces the default title. Can be disabled using `false`.',\n type: 'string',\n status: 'optional',\n },\n text: {\n doc: 'Custom text property. Replaces the default text. Can be disabled using `false`.',\n type: 'string',\n status: 'optional',\n },\n download: {\n doc: 'Causes the browser to treat all listed files as downloadable instead of opening them in a new browser tab or window. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n allowDuplicates: {\n doc: 'Allows uploading of duplicate files. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n disableDragAndDrop: {\n doc: 'Disables file drag and drop, by removing the drop zone. Defaults to `false`.',\n type: 'boolean',\n status: 'optional',\n },\n skeleton: {\n doc: 'Skeleton should be applied when loading content.',\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 AcceptedFileTypeProperties: PropertiesTableProps = {\n fileType: {\n doc: 'The name of the accepted file type.',\n type: 'string',\n status: 'required',\n },\n fileMaxSize: {\n doc: 'Defines the max file size of the given file type in MB. Use either `0` or `false` to disable. If not provided, it defaults to the value of [Uploads](/uilib/components/upload/properties/#properties) `fileMaxSize` which defaults to 5 MB.',\n type: ['number', 'false'],\n status: 'optional',\n },\n}\n\nexport const UploadEvents: PropertiesTableProps = {\n onChange: {\n doc: 'Will be called on `files` changes made by the user. Access the files with `{ files }` (containing each a `fileItem`).',\n type: 'function',\n status: 'optional',\n },\n onFileDelete: {\n doc: 'Will be called once a file gets deleted by the user. Access the deleted file with `{ fileItem }`.',\n type: 'function',\n status: 'optional',\n },\n onFileClick: {\n doc: 'Will be called once a file gets clicked on by the user. Access the clicked file with `{ fileItem }`.',\n type: 'function',\n status: 'optional',\n },\n}\n\nexport const FileItemProperties: PropertiesTableProps = {\n file: {\n doc: 'The file object. This is the same object as the one returned by the `File` API.',\n type: 'File',\n status: 'required',\n },\n id: {\n doc: 'Unique ID for the file item. This ID is generated by the component and is not user-defined.',\n type: 'string',\n status: 'required',\n },\n exists: {\n doc: 'Indicates if the file item already exists in the list of files. This is useful for distinguishing between new and existing files.',\n type: 'boolean',\n status: 'optional',\n },\n isLoading: {\n doc: 'Indicates if the file item is currently being loaded. This is useful for showing a loading state while the file is being processed.',\n type: 'boolean',\n status: 'optional',\n },\n errorMessage: {\n doc: 'Provide an error message to be displayed. This is useful for indicating issues with the file upload process.',\n type: 'React.ReactNode',\n status: 'optional',\n },\n description: {\n doc: 'Provide a description to be displayed. This is useful for providing additional information about the file.',\n type: 'React.ReactNode',\n status: 'optional',\n },\n removeDeleteButton: {\n doc: 'Set to `true` to remove the delete button from the file item. This is useful for preventing users from deleting files.',\n type: 'boolean',\n status: 'optional',\n },\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,6 @@
1
1
  import React from 'react';
2
2
  import type { UploadAllProps } from './types';
3
3
  export type UploadDragEvent = React.DragEvent | DragEvent;
4
- export default function UploadDropzone({ children, className, ...rest }: Partial<UploadAllProps>): import("react/jsx-runtime").JSX.Element;
4
+ export default function UploadDropzone({ children, className, hideOutline, ...rest }: Partial<UploadAllProps> & {
5
+ hideOutline?: boolean;
6
+ }): import("react/jsx-runtime").JSX.Element;
@@ -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 _svg;
6
- const _excluded = ["children", "className"];
6
+ const _excluded = ["children", "className", "hideOutline"];
7
7
  import React, { useCallback, useContext, useEffect, useRef, useState } from 'react';
8
8
  import classnames from 'classnames';
9
9
  import HeightAnimation from '../height-animation/HeightAnimation';
@@ -11,7 +11,8 @@ import { UploadContext } from './UploadContext';
11
11
  export default function UploadDropzone(_ref) {
12
12
  let {
13
13
  children,
14
- className
14
+ className,
15
+ hideOutline = false
15
16
  } = _ref,
16
17
  rest = _objectWithoutProperties(_ref, _excluded);
17
18
  const props = rest;
@@ -85,7 +86,7 @@ export default function UploadDropzone(_ref) {
85
86
  onDrop: dropHandler,
86
87
  onDragOver: dragEnterHandler,
87
88
  onDragLeave: dragLeaveHandler
88
- }, props), children, _svg || (_svg = React.createElement("svg", {
89
+ }, props), children, !hideOutline && (_svg || (_svg = React.createElement("svg", {
89
90
  className: "dnb-upload__outline",
90
91
  "aria-hidden": true,
91
92
  xmlns: "http://www.w3.org/2000/svg",
@@ -98,6 +99,6 @@ export default function UploadDropzone(_ref) {
98
99
  strokeWidth: "3",
99
100
  strokeDashoffset: "4",
100
101
  strokeDasharray: "8 8"
101
- }))));
102
+ })))));
102
103
  }
103
104
  //# sourceMappingURL=UploadDropzone.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UploadDropzone.js","names":["React","useCallback","useContext","useEffect","useRef","useState","classnames","HeightAnimation","UploadContext","UploadDropzone","_ref","children","className","rest","_objectWithoutProperties","_excluded","props","context","hover","setHover","hoverTimeout","onInputUpload","id","getFiles","event","fileData","dataTransfer","files","Array","from","forEach","file","push","clearTimers","clearTimeout","current","hoverHandler","state","stopPropagation","preventDefault","dropHandler","dragEnterHandler","dragLeaveHandler","elem","document","body","execute","hasAttribute","add","addEventListener","setAttribute","e","timeoutId","setTimeout","getAttribute","remove","removeEventListener","removeAttribute","createElement","_extends","onDrop","onDragOver","onDragLeave","_svg","xmlns","fill","width","height","rx","ry","strokeWidth","strokeDashoffset","strokeDasharray"],"sources":["../../../../src/components/upload/UploadDropzone.tsx"],"sourcesContent":["import React, {\n useCallback,\n useContext,\n useEffect,\n useRef,\n useState,\n} from 'react'\nimport classnames from 'classnames'\n\nimport HeightAnimation from '../height-animation/HeightAnimation'\nimport { UploadContext } from './UploadContext'\nimport type {\n UploadAllProps,\n UploadFileNative,\n UploadProps,\n} from './types'\n\nexport type UploadDragEvent = React.DragEvent | DragEvent\n\nexport default function UploadDropzone({\n children,\n className,\n ...rest\n}: Partial<UploadAllProps>) {\n const props = rest as Omit<UploadProps, 'title' | 'onChange' | 'id'>\n const context = useContext(UploadContext)\n const [hover, setHover] = useState(false)\n const hoverTimeout = useRef<NodeJS.Timer>()\n\n const { onInputUpload, id } = context\n\n const getFiles = useCallback((event: UploadDragEvent) => {\n const fileData = event.dataTransfer\n\n const files: Array<UploadFileNative> = []\n\n Array.from(fileData.files).forEach((file) => {\n files.push({ file })\n })\n\n return files\n }, [])\n\n const clearTimers = useCallback(() => {\n clearTimeout(hoverTimeout.current)\n }, [])\n\n const hoverHandler = useCallback(\n (event: UploadDragEvent, state: boolean) => {\n event.stopPropagation()\n event.preventDefault()\n clearTimers()\n setHover(state)\n },\n [clearTimers]\n )\n\n const dropHandler = useCallback(\n (event: UploadDragEvent) => {\n const files = getFiles(event)\n\n onInputUpload(files)\n hoverHandler(event, false)\n },\n [getFiles, onInputUpload, hoverHandler]\n )\n\n const dragEnterHandler = useCallback(\n (event: UploadDragEvent) => {\n hoverHandler(event, true)\n },\n [hoverHandler]\n )\n\n const dragLeaveHandler = useCallback(\n (event: UploadDragEvent) => {\n hoverHandler(event, false)\n },\n [hoverHandler]\n )\n\n useEffect(() => {\n const elem = document.body\n const execute = () => {\n try {\n if (!elem.hasAttribute('data-upload-drop-zone')) {\n const add = elem.addEventListener\n add('drop', dropHandler)\n add('dragover', dragEnterHandler)\n add('dragleave', dragLeaveHandler)\n elem.setAttribute('data-upload-drop-zone', id)\n }\n } catch (e) {\n //\n }\n }\n const timeoutId = setTimeout(execute, 10) // Add the listeners delayed (ms) without prioritization, in case of re-renders\n\n return () => {\n clearTimers()\n clearTimeout(timeoutId)\n try {\n if (elem.getAttribute('data-upload-drop-zone') === id) {\n const remove = elem.removeEventListener\n remove('drop', dropHandler)\n remove('dragover', dragEnterHandler)\n remove('dragleave', dragLeaveHandler)\n elem.removeAttribute('data-upload-drop-zone')\n }\n } catch (e) {\n //\n }\n }\n }, [clearTimers, dragEnterHandler, dragLeaveHandler, dropHandler, id])\n\n return (\n <HeightAnimation\n className={classnames(className, hover && 'dnb-upload--active')}\n onDrop={dropHandler}\n onDragOver={dragEnterHandler}\n onDragLeave={dragLeaveHandler}\n {...props}\n >\n {children}\n\n <svg\n className=\"dnb-upload__outline\"\n aria-hidden\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n >\n <rect\n width=\"100%\"\n height=\"100%\"\n rx=\"0.5rem\"\n ry=\"0.5rem\"\n strokeWidth=\"3\"\n strokeDashoffset=\"4\"\n strokeDasharray=\"8 8\"\n />\n </svg>\n </HeightAnimation>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"UploadDropzone.js","names":["React","useCallback","useContext","useEffect","useRef","useState","classnames","HeightAnimation","UploadContext","UploadDropzone","_ref","children","className","hideOutline","rest","_objectWithoutProperties","_excluded","props","context","hover","setHover","hoverTimeout","onInputUpload","id","getFiles","event","fileData","dataTransfer","files","Array","from","forEach","file","push","clearTimers","clearTimeout","current","hoverHandler","state","stopPropagation","preventDefault","dropHandler","dragEnterHandler","dragLeaveHandler","elem","document","body","execute","hasAttribute","add","addEventListener","setAttribute","e","timeoutId","setTimeout","getAttribute","remove","removeEventListener","removeAttribute","createElement","_extends","onDrop","onDragOver","onDragLeave","_svg","xmlns","fill","width","height","rx","ry","strokeWidth","strokeDashoffset","strokeDasharray"],"sources":["../../../../src/components/upload/UploadDropzone.tsx"],"sourcesContent":["import React, {\n useCallback,\n useContext,\n useEffect,\n useRef,\n useState,\n} from 'react'\nimport classnames from 'classnames'\n\nimport HeightAnimation from '../height-animation/HeightAnimation'\nimport { UploadContext } from './UploadContext'\nimport type {\n UploadAllProps,\n UploadFileNative,\n UploadProps,\n} from './types'\n\nexport type UploadDragEvent = React.DragEvent | DragEvent\n\nexport default function UploadDropzone({\n children,\n className,\n hideOutline = false,\n ...rest\n}: Partial<UploadAllProps> & { hideOutline?: boolean }) {\n const props = rest as Omit<UploadProps, 'title' | 'onChange' | 'id'>\n const context = useContext(UploadContext)\n const [hover, setHover] = useState(false)\n const hoverTimeout = useRef<NodeJS.Timer>()\n\n const { onInputUpload, id } = context\n\n const getFiles = useCallback((event: UploadDragEvent) => {\n const fileData = event.dataTransfer\n\n const files: Array<UploadFileNative> = []\n\n Array.from(fileData.files).forEach((file) => {\n files.push({ file })\n })\n\n return files\n }, [])\n\n const clearTimers = useCallback(() => {\n clearTimeout(hoverTimeout.current)\n }, [])\n\n const hoverHandler = useCallback(\n (event: UploadDragEvent, state: boolean) => {\n event.stopPropagation()\n event.preventDefault()\n clearTimers()\n setHover(state)\n },\n [clearTimers]\n )\n\n const dropHandler = useCallback(\n (event: UploadDragEvent) => {\n const files = getFiles(event)\n\n onInputUpload(files)\n hoverHandler(event, false)\n },\n [getFiles, onInputUpload, hoverHandler]\n )\n\n const dragEnterHandler = useCallback(\n (event: UploadDragEvent) => {\n hoverHandler(event, true)\n },\n [hoverHandler]\n )\n\n const dragLeaveHandler = useCallback(\n (event: UploadDragEvent) => {\n hoverHandler(event, false)\n },\n [hoverHandler]\n )\n\n useEffect(() => {\n const elem = document.body\n const execute = () => {\n try {\n if (!elem.hasAttribute('data-upload-drop-zone')) {\n const add = elem.addEventListener\n add('drop', dropHandler)\n add('dragover', dragEnterHandler)\n add('dragleave', dragLeaveHandler)\n elem.setAttribute('data-upload-drop-zone', id)\n }\n } catch (e) {\n //\n }\n }\n const timeoutId = setTimeout(execute, 10) // Add the listeners delayed (ms) without prioritization, in case of re-renders\n\n return () => {\n clearTimers()\n clearTimeout(timeoutId)\n try {\n if (elem.getAttribute('data-upload-drop-zone') === id) {\n const remove = elem.removeEventListener\n remove('drop', dropHandler)\n remove('dragover', dragEnterHandler)\n remove('dragleave', dragLeaveHandler)\n elem.removeAttribute('data-upload-drop-zone')\n }\n } catch (e) {\n //\n }\n }\n }, [clearTimers, dragEnterHandler, dragLeaveHandler, dropHandler, id])\n\n return (\n <HeightAnimation\n className={classnames(className, hover && 'dnb-upload--active')}\n onDrop={dropHandler}\n onDragOver={dragEnterHandler}\n onDragLeave={dragLeaveHandler}\n {...props}\n >\n {children}\n\n {!hideOutline && (\n <svg\n className=\"dnb-upload__outline\"\n aria-hidden\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n >\n <rect\n width=\"100%\"\n height=\"100%\"\n rx=\"0.5rem\"\n ry=\"0.5rem\"\n strokeWidth=\"3\"\n strokeDashoffset=\"4\"\n strokeDasharray=\"8 8\"\n />\n </svg>\n )}\n </HeightAnimation>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,8 @@
1
1
  import React from 'react';
2
- declare const UploadFileInput: ({ children, disabled, ...rest }: {
2
+ import { UploadFile } from './types';
3
+ declare const UploadFileInput: ({ children, disabled, files, ...rest }: {
3
4
  children?: React.ReactNode;
5
+ files?: UploadFile[];
4
6
  disabled?: boolean;
5
7
  }) => import("react/jsx-runtime").JSX.Element;
6
8
  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", "disabled"];
6
+ const _excluded = ["children", "disabled", "files"];
7
7
  import React, { useRef } from 'react';
8
8
  import Button from '../button/Button';
9
9
  import { folder as FolderIcon } from '../../icons';
@@ -14,7 +14,8 @@ import { getAcceptedFileTypes } from './UploadVerify';
14
14
  const UploadFileInput = _ref => {
15
15
  let {
16
16
  children,
17
- disabled
17
+ disabled,
18
+ files
18
19
  } = _ref,
19
20
  rest = _objectWithoutProperties(_ref, _excluded);
20
21
  const fileInput = useRef(null);
@@ -24,7 +25,8 @@ const UploadFileInput = _ref => {
24
25
  acceptedFileTypes,
25
26
  buttonText,
26
27
  onInputUpload,
27
- filesAmountLimit
28
+ filesAmountLimit,
29
+ variant
28
30
  } = context;
29
31
  const openFileDialog = () => {
30
32
  var _fileInput$current;
@@ -34,8 +36,8 @@ const UploadFileInput = _ref => {
34
36
  const accept = getAcceptedFileTypes(acceptedFileTypes);
35
37
  return React.createElement("div", {
36
38
  className: "dnb-upload__file-input-area"
37
- }, React.createElement(Button, {
38
- top: "medium",
39
+ }, filesAmountLimit !== (files === null || files === void 0 ? void 0 : files.length) && React.createElement(Button, {
40
+ top: variant === 'normal' ? 'medium' : undefined,
39
41
  id: `${sharedId}-input`,
40
42
  className: "dnb-upload__file-input-button",
41
43
  icon: FolderIcon,
@@ -1 +1 @@
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":[]}
1
+ {"version":3,"file":"UploadFileInput.js","names":["React","useRef","Button","folder","FolderIcon","makeUniqueId","UploadContext","UploadStatus","getAcceptedFileTypes","UploadFileInput","_ref","children","disabled","files","rest","_objectWithoutProperties","_excluded","fileInput","context","useContext","id","acceptedFileTypes","buttonText","onInputUpload","filesAmountLimit","variant","openFileDialog","_fileInput$current","current","click","sharedId","accept","createElement","className","length","top","undefined","icon","icon_position","wrap","onClick","_UploadStatus","_extends","ref","type","onChange","onChangeHandler","onClickHandler","multiple","event","target","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'\nimport { UploadFile } from './types'\n\nconst UploadFileInput = ({\n children,\n disabled,\n files,\n ...rest\n}: {\n children?: React.ReactNode\n files?: UploadFile[]\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 variant,\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 {filesAmountLimit !== files?.length && (\n <Button\n top={variant === 'normal' ? 'medium' : undefined}\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;AAGrD,MAAMC,eAAe,GAAGC,IAAA,IASlB;EAAA,IATmB;MACvBC,QAAQ;MACRC,QAAQ;MACRC;IAMF,CAAC,GAAAH,IAAA;IALII,IAAI,GAAAC,wBAAA,CAAAL,IAAA,EAAAM,SAAA;EAMP,MAAMC,SAAS,GAAGhB,MAAM,CAAmB,IAAI,CAAC;EAEhD,MAAMiB,OAAO,GAAGlB,KAAK,CAACmB,UAAU,CAACb,aAAa,CAAC;EAE/C,MAAM;IACJc,EAAE;IACFC,iBAAiB;IACjBC,UAAU;IACVC,aAAa;IACbC,gBAAgB;IAChBC;EACF,CAAC,GAAGP,OAAO;EAEX,MAAMQ,cAAc,GAAGA,CAAA;IAAA,IAAAC,kBAAA;IAAA,QAAAA,kBAAA,GAAMV,SAAS,CAACW,OAAO,cAAAD,kBAAA,uBAAjBA,kBAAA,CAAmBE,KAAK,CAAC,CAAC;EAAA;EAEvD,MAAMC,QAAQ,GAAGV,EAAE,IAAIf,YAAY,CAAC,CAAC;EACrC,MAAM0B,MAAM,GAAGvB,oBAAoB,CAACa,iBAAiB,CAAC;EAEtD,OACErB,KAAA,CAAAgC,aAAA;IAAKC,SAAS,EAAC;EAA6B,GACzCT,gBAAgB,MAAKX,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEqB,MAAM,KACjClC,KAAA,CAAAgC,aAAA,CAAC9B,MAAM;IACLiC,GAAG,EAAEV,OAAO,KAAK,QAAQ,GAAG,QAAQ,GAAGW,SAAU;IACjDhB,EAAE,EAAE,GAAGU,QAAQ,QAAS;IACxBG,SAAS,EAAC,+BAA+B;IACzCI,IAAI,EAAEjC,UAAW;IACjBkC,aAAa,EAAC,MAAM;IACpBb,OAAO,EAAC,WAAW;IACnBc,IAAI;IACJC,OAAO,EAAEd,cAAe;IACxBd,QAAQ,EAAEA;EAAS,GAElBU,UACK,CACT,EAAAmB,aAAA,KAAAA,aAAA,GACDzC,KAAA,CAAAgC,aAAA,CAACzB,YAAY,MAAE,CAAC,GAEhBP,KAAA,CAAAgC,aAAA,UAAAU,QAAA;IACE,mBAAiB,GAAGZ,QAAQ,QAAS;IACrCa,GAAG,EAAE1B,SAAU;IACfc,MAAM,EAAEA,MAAO;IACfE,SAAS,EAAC,wBAAwB;IAClCW,IAAI,EAAC,MAAM;IACXC,QAAQ,EAAEC,eAAgB;IAC1BN,OAAO,EAAEO,cAAe;IACxBC,QAAQ,EAAExB,gBAAgB,GAAG,CAAE;IAC/BZ,QAAQ,EAAEA;EAAS,GACfE,IAAI,CACT,CACE,CAAC;EAGR,SAASgC,eAAeA,CAACG,KAA2B,EAAE;IACpD,MAAMC,MAAM,GAAGD,KAAK,CAACC,MAA0B;IAC/C,MAAM;MAAErC;IAAM,CAAC,GAAGqC,MAAM;IAExB3B,aAAa,CACX4B,KAAK,CAACC,IAAI,CAACvC,KAAK,CAAC,CAACwC,GAAG,CAAEC,IAAI,IAAK;MAC9B,OAAO;QAAEA;MAAK,CAAC;IACjB,CAAC,CACH,CAAC;EACH;EAEA,SAASP,cAAcA,CAACE,KAA2B,EAAE;IACnD,MAAMC,MAAM,GAAGD,KAAK,CAACC,MAA0B;IAS/CA,MAAM,CAACK,KAAK,GAAG,IAAI;EACrB;AACF,CAAC;AAED,eAAe9C,eAAe","ignoreList":[]}
@@ -137,6 +137,14 @@
137
137
  .dnb-upload__accepted-file-types-table.dnb-table tbody td:first-child {
138
138
  padding-left: 0;
139
139
  }
140
- .dnb-upload__subtitle.dnb-p {
141
- color: var(--upload-text--secondary);
140
+ .dnb-upload--compact {
141
+ padding: 0;
142
+ border-radius: 0;
143
+ }
144
+ .dnb-upload--compact .dnb-upload__text {
145
+ color: var(--color-black-55);
146
+ font-size: var(--font-size-small);
147
+ }
148
+ .dnb-upload--compact .dnb-help-button__content .dnb-section {
149
+ margin-bottom: 1rem;
142
150
  }
@@ -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: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--compact{border-radius:0;padding:0}.dnb-upload--compact .dnb-upload__text{color:var(--color-black-55);font-size:var(--font-size-small)}.dnb-upload--compact .dnb-help-button__content .dnb-section{margin-bottom:1rem}
@@ -162,7 +162,17 @@
162
162
  }
163
163
  }
164
164
 
165
- &__subtitle.dnb-p {
166
- color: var(--upload-text--secondary);
165
+ &--compact {
166
+ padding: 0;
167
+ border-radius: 0;
168
+ .dnb-upload__text {
169
+ color: var(--color-black-55);
170
+ font-size: var(--font-size-small);
171
+ }
172
+ .dnb-help-button__content {
173
+ .dnb-section {
174
+ margin-bottom: 1rem;
175
+ }
176
+ }
167
177
  }
168
178
  }
@@ -13,6 +13,10 @@ export type UploadProps = {
13
13
  * unique id used with the useUpload hook to manage the files
14
14
  */
15
15
  id?: SharedStateId;
16
+ /**
17
+ * defines the appearance. Use one of these: `normal` or `compact`. Defaults to `normal`.
18
+ */
19
+ variant?: 'normal' | 'compact';
16
20
  /**
17
21
  * list of accepted file types.
18
22
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../../src/components/upload/types.ts"],"sourcesContent":["import React from 'react'\nimport type { SkeletonShow } from '../skeleton/Skeleton'\nimport type { LocaleProps, SpacingProps } from '../../shared/types'\nimport type { SharedStateId } from '../../shared/helpers/useSharedState'\n\nexport type UploadAcceptedFileTypes = string[]\n\nexport type UploadAcceptedFileTypesWithFileMaxSize =\n UploadAcceptedFileTypeObject[]\n\nexport type UploadAcceptedFileTypeObject = {\n fileType: string\n fileMaxSize?: number | false\n}\n\nexport type UploadProps = {\n /**\n * unique id used with the useUpload hook to manage the files\n */\n id?: SharedStateId\n\n /**\n * list of accepted file types.\n */\n acceptedFileTypes:\n | UploadAcceptedFileTypes\n | UploadAcceptedFileTypesWithFileMaxSize\n\n /**\n * Skeleton should be applied when loading content\n * Default: null\n */\n skeleton?: SkeletonShow\n\n /**\n * Defines the amount of files the user can select and upload\n * Default: 100\n */\n filesAmountLimit?: number\n\n /**\n * Defines the max file size of each file in MB. Use either `0` or `false` to disable.\n * Default: 5 MB\n */\n fileMaxSize?: number | false\n\n /**\n * will be called on `files` changes made by the user. Access the files with `{ files }`.\n */\n onChange?: ({ files }: { files: Array<UploadFile> }) => void\n\n /**\n * will be called once a file gets deleted by the user. Access the deleted file with `{ fileItem }`.\n */\n onFileDelete?: ({\n fileItem,\n }: {\n fileItem: UploadFile\n }) => void | Promise<void>\n\n /**\n * Will be called once a file gets clicked on by the user. Access the clicked file with `{ fileItem }`.\n */\n onFileClick?: ({\n fileItem,\n }: {\n fileItem: UploadFile\n }) => void | Promise<void>\n\n /**\n * Causes the browser to treat all listed files as downloadable instead of opening them in a new browser tab or window.\n * Default: false\n */\n download?: boolean\n\n /**\n * Allows uploading of duplicate files.\n * Default: false\n */\n allowDuplicates?: boolean\n\n /**\n * Disables file drag and drop, by removing the drop zone.\n * Default: false\n */\n disableDragAndDrop?: boolean\n\n /**\n * Custom text properties\n */\n title?: React.ReactNode\n text?: React.ReactNode\n fileTypeTableCaption?: React.ReactNode\n fileTypeDescription?: React.ReactNode\n fileSizeDescription?: React.ReactNode\n fileAmountDescription?: React.ReactNode\n fileSizeContent?: React.ReactNode\n buttonText?: React.ReactNode\n errorLargeFile?: React.ReactNode\n errorUnsupportedFile?: React.ReactNode\n errorAmountLimit?: React.ReactNode\n loadingText?: React.ReactNode\n deleteButton?: React.ReactNode\n fileListAriaLabel?: string\n children?: React.ReactNode\n}\n\nexport type UploadAllProps = UploadProps &\n SpacingProps &\n LocaleProps &\n Omit<React.HTMLProps<HTMLElement>, 'onChange' | 'title'>\n\nexport type UploadContextProps = {\n id?: string\n onInputUpload: (files: Array<UploadFileNative>) => void\n} & Partial<UploadAllProps>\n\nexport type UploadFile = {\n file: File\n id: string\n exists: boolean\n isLoading?: boolean\n errorMessage?: React.ReactNode\n description?: React.ReactNode\n removeDeleteButton?: boolean\n}\n\nexport type UploadFileNative = Omit<UploadFile, 'id' | 'exists'> &\n Partial<Pick<UploadFile, 'id' | 'exists'>>\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../src/components/upload/types.ts"],"sourcesContent":["import React from 'react'\nimport type { SkeletonShow } from '../skeleton/Skeleton'\nimport type { LocaleProps, SpacingProps } from '../../shared/types'\nimport type { SharedStateId } from '../../shared/helpers/useSharedState'\n\nexport type UploadAcceptedFileTypes = string[]\n\nexport type UploadAcceptedFileTypesWithFileMaxSize =\n UploadAcceptedFileTypeObject[]\n\nexport type UploadAcceptedFileTypeObject = {\n fileType: string\n fileMaxSize?: number | false\n}\n\nexport type UploadProps = {\n /**\n * unique id used with the useUpload hook to manage the files\n */\n id?: SharedStateId\n\n /**\n * defines the appearance. Use one of these: `normal` or `compact`. Defaults to `normal`.\n */\n variant?: 'normal' | 'compact'\n\n /**\n * list of accepted file types.\n */\n acceptedFileTypes:\n | UploadAcceptedFileTypes\n | UploadAcceptedFileTypesWithFileMaxSize\n\n /**\n * Skeleton should be applied when loading content\n * Default: null\n */\n skeleton?: SkeletonShow\n\n /**\n * Defines the amount of files the user can select and upload\n * Default: 100\n */\n filesAmountLimit?: number\n\n /**\n * Defines the max file size of each file in MB. Use either `0` or `false` to disable.\n * Default: 5 MB\n */\n fileMaxSize?: number | false\n\n /**\n * will be called on `files` changes made by the user. Access the files with `{ files }`.\n */\n onChange?: ({ files }: { files: Array<UploadFile> }) => void\n\n /**\n * will be called once a file gets deleted by the user. Access the deleted file with `{ fileItem }`.\n */\n onFileDelete?: ({\n fileItem,\n }: {\n fileItem: UploadFile\n }) => void | Promise<void>\n\n /**\n * Will be called once a file gets clicked on by the user. Access the clicked file with `{ fileItem }`.\n */\n onFileClick?: ({\n fileItem,\n }: {\n fileItem: UploadFile\n }) => void | Promise<void>\n\n /**\n * Causes the browser to treat all listed files as downloadable instead of opening them in a new browser tab or window.\n * Default: false\n */\n download?: boolean\n\n /**\n * Allows uploading of duplicate files.\n * Default: false\n */\n allowDuplicates?: boolean\n\n /**\n * Disables file drag and drop, by removing the drop zone.\n * Default: false\n */\n disableDragAndDrop?: boolean\n\n /**\n * Custom text properties\n */\n title?: React.ReactNode\n text?: React.ReactNode\n fileTypeTableCaption?: React.ReactNode\n fileTypeDescription?: React.ReactNode\n fileSizeDescription?: React.ReactNode\n fileAmountDescription?: React.ReactNode\n fileSizeContent?: React.ReactNode\n buttonText?: React.ReactNode\n errorLargeFile?: React.ReactNode\n errorUnsupportedFile?: React.ReactNode\n errorAmountLimit?: React.ReactNode\n loadingText?: React.ReactNode\n deleteButton?: React.ReactNode\n fileListAriaLabel?: string\n children?: React.ReactNode\n}\n\nexport type UploadAllProps = UploadProps &\n SpacingProps &\n LocaleProps &\n Omit<React.HTMLProps<HTMLElement>, 'onChange' | 'title'>\n\nexport type UploadContextProps = {\n id?: string\n onInputUpload: (files: Array<UploadFileNative>) => void\n} & Partial<UploadAllProps>\n\nexport type UploadFile = {\n file: File\n id: string\n exists: boolean\n isLoading?: boolean\n errorMessage?: React.ReactNode\n description?: React.ReactNode\n removeDeleteButton?: boolean\n}\n\nexport type UploadFileNative = Omit<UploadFile, 'id' | 'exists'> &\n Partial<Pick<UploadFile, 'id' | 'exists'>>\n"],"mappings":"","ignoreList":[]}
@@ -154,7 +154,7 @@
154
154
  // We cannot use gap: 0.5rem because of our wrapper "__item"
155
155
  display: flex;
156
156
  flex-wrap: wrap;
157
- max-width: 60ch; // to enhance readability
157
+ max-width: var(--text-block-max-width); // to enhance readability
158
158
  width: 100%;
159
159
 
160
160
  & dt {
@@ -0,0 +1,48 @@
1
+ import { Props as SelectionProps } from '../../Field/Selection';
2
+ import { Path, PathStrict, ReceiveAdditionalEventArgs } from '../../types';
3
+ import { GeneralConfig, HandlerConfig, PreResponseResolver, ResponseResolver } from '../createContext';
4
+ export declare const supportedCountryCodes: readonly ["NO"];
5
+ export type SupportedCountries = (typeof supportedCountryCodes)[number];
6
+ export declare const unsupportedCountryMessage = "Postal code verification is not supported for {countryCode}.";
7
+ export type AddressResolverData = {
8
+ addresses: {
9
+ street_name: string;
10
+ house_number: string;
11
+ postal_code: string;
12
+ city: string;
13
+ }[];
14
+ };
15
+ export type AddressResolverPayload = Array<{
16
+ item: AddressResolverData['addresses'][0];
17
+ selected_value: string;
18
+ selectedKey: string;
19
+ content: string[];
20
+ }>;
21
+ type SuggestionsConnectorReturn = (event: {
22
+ value: string;
23
+ showIndicator: () => void;
24
+ hideIndicator: () => void;
25
+ updateData: (data: AddressResolverPayload) => void;
26
+ } & ReceiveAdditionalEventArgs<string>) => Promise<void>;
27
+ type SuggestionsHandlerConfig = HandlerConfig & {
28
+ countryCode?: PathStrict | SupportedCountries | Lowercase<SupportedCountries>;
29
+ cityPath: Path;
30
+ postalCodePath: Path;
31
+ };
32
+ export declare const preResponseResolver: PreResponseResolver;
33
+ export declare const responseResolver: ResponseResolver<AddressResolverData, AddressResolverPayload>;
34
+ export declare function suggestions(generalConfig: GeneralConfig, handlerConfig?: SuggestionsHandlerConfig): SuggestionsConnectorReturn;
35
+ export declare function suggestionsElement(generalConfig: GeneralConfig, handlerConfig?: SuggestionsHandlerConfig): (props: SelectionProps) => import("react/jsx-runtime").JSX.Element;
36
+ export declare function getMockData(countryCode?: string): {
37
+ addresses: {
38
+ address_id: string;
39
+ street_name: string;
40
+ house_number: number;
41
+ postal_code: string;
42
+ city: string;
43
+ county: string;
44
+ municipality: string;
45
+ type: string;
46
+ }[];
47
+ };
48
+ export {};