@dnb/eufemia 10.7.0 → 10.8.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 (924) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/cjs/components/accordion/Accordion.d.ts +1 -1
  3. package/cjs/components/accordion/AccordionHeader.d.ts +4 -4
  4. package/cjs/components/accordion/AccordionHeader.js +18 -5
  5. package/cjs/components/accordion/AccordionHeader.js.map +1 -1
  6. package/cjs/components/accordion/style/dnb-accordion.css +22 -17
  7. package/cjs/components/accordion/style/dnb-accordion.min.css +1 -1
  8. package/cjs/components/accordion/style/dnb-accordion.scss +40 -18
  9. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +124 -0
  10. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -0
  11. package/cjs/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +125 -0
  12. package/cjs/components/anchor/Anchor.js +1 -1
  13. package/cjs/components/anchor/Anchor.js.map +1 -1
  14. package/cjs/components/anchor/style/anchor-mixins.scss +9 -3
  15. package/cjs/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +3 -1
  16. package/cjs/components/autocomplete/Autocomplete.js +4 -2
  17. package/cjs/components/autocomplete/Autocomplete.js.map +1 -1
  18. package/cjs/components/avatar/style/index.d.ts +1 -1
  19. package/cjs/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +2 -1
  20. package/cjs/components/breadcrumb/Breadcrumb.js +2 -2
  21. package/cjs/components/breadcrumb/Breadcrumb.js.map +1 -1
  22. package/cjs/components/breadcrumb/BreadcrumbItem.js +23 -1
  23. package/cjs/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  24. package/cjs/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.css +23 -0
  25. package/cjs/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.min.css +1 -0
  26. package/cjs/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.scss +33 -0
  27. package/cjs/components/button/style/themes/dnb-button-theme-ui.scss +3 -1
  28. package/cjs/components/checkbox/Checkbox.d.ts +4 -0
  29. package/cjs/components/checkbox/Checkbox.js +6 -4
  30. package/cjs/components/checkbox/Checkbox.js.map +1 -1
  31. package/cjs/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +3 -1
  32. package/cjs/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +6 -2
  33. package/cjs/components/drawer/Drawer.d.ts +1 -1
  34. package/cjs/components/drawer/Drawer.js +3 -1
  35. package/cjs/components/drawer/Drawer.js.map +1 -1
  36. package/cjs/components/form-status/FormStatus.d.ts +2 -0
  37. package/cjs/components/form-status/FormStatus.js +70 -53
  38. package/cjs/components/form-status/FormStatus.js.map +1 -1
  39. package/cjs/components/form-status/style/dnb-form-status.scss +4 -2
  40. package/cjs/components/form-status/style/themes/dnb-form-status-theme-sbanken.css +37 -0
  41. package/cjs/components/form-status/style/themes/dnb-form-status-theme-sbanken.min.css +1 -0
  42. package/cjs/components/form-status/style/themes/dnb-form-status-theme-sbanken.scss +35 -0
  43. package/cjs/components/global-status/GlobalStatus.d.ts +1 -1
  44. package/cjs/components/global-status/GlobalStatus.js +17 -7
  45. package/cjs/components/global-status/GlobalStatus.js.map +1 -1
  46. package/cjs/components/global-status/style/dnb-global-status.scss +2 -1
  47. package/cjs/components/global-status/style/themes/dnb-global-status-theme-sbanken.css +22 -0
  48. package/cjs/components/global-status/style/themes/dnb-global-status-theme-sbanken.min.css +1 -0
  49. package/cjs/components/global-status/style/themes/dnb-global-status-theme-sbanken.scss +28 -0
  50. package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.css +6 -3
  51. package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
  52. package/cjs/components/global-status/style/themes/dnb-global-status-theme-ui.scss +13 -6
  53. package/cjs/components/heading/Heading.d.ts +8 -8
  54. package/cjs/components/heading/Heading.js +8 -16
  55. package/cjs/components/heading/Heading.js.map +1 -1
  56. package/cjs/components/heading/HeadingHelpers.d.ts +5 -1
  57. package/cjs/components/heading/HeadingHelpers.js +42 -1
  58. package/cjs/components/heading/HeadingHelpers.js.map +1 -1
  59. package/cjs/components/info-card/index.js.map +1 -1
  60. package/cjs/components/info-card/style.js.map +1 -1
  61. package/cjs/components/input/style/themes/dnb-input-theme-ui.css +1 -1
  62. package/cjs/components/input/style/themes/dnb-input-theme-ui.min.css +1 -1
  63. package/cjs/components/input/style/themes/dnb-input-theme-ui.scss +9 -3
  64. package/cjs/components/input-masked/InputMaskedUtils.js +1 -1
  65. package/cjs/components/input-masked/InputMaskedUtils.js.map +1 -1
  66. package/cjs/components/modal/Modal.js.map +1 -1
  67. package/cjs/components/modal/parts/ModalHeaderBar.js +0 -4
  68. package/cjs/components/modal/parts/ModalHeaderBar.js.map +1 -1
  69. package/cjs/components/pagination/Pagination.js.map +1 -1
  70. package/cjs/components/radio/Radio.d.ts +4 -0
  71. package/cjs/components/radio/Radio.js +6 -4
  72. package/cjs/components/radio/Radio.js.map +1 -1
  73. package/cjs/components/radio/style/themes/dnb-radio-theme-ui.scss +15 -5
  74. package/cjs/components/section/Section.d.ts +21 -1
  75. package/cjs/components/section/Section.js.map +1 -1
  76. package/cjs/components/section/style/dnb-section.css +1 -1
  77. package/cjs/components/section/style/dnb-section.scss +8 -3
  78. package/cjs/components/section/style/themes/dnb-section-theme-sbanken.scss +3 -4
  79. package/cjs/components/section/style/themes/dnb-section-theme-ui.css +9 -0
  80. package/cjs/components/section/style/themes/dnb-section-theme-ui.scss +28 -14
  81. package/cjs/components/skeleton/style/dnb-skeleton.scss +8 -5
  82. package/cjs/components/slider/style/dnb-slider.scss +4 -2
  83. package/cjs/components/space/SpacingUtils.js.map +1 -1
  84. package/cjs/components/step-indicator/StepIndicator.d.ts +89 -75
  85. package/cjs/components/step-indicator/StepIndicator.js +31 -26
  86. package/cjs/components/step-indicator/StepIndicator.js.map +1 -1
  87. package/cjs/components/step-indicator/StepIndicatorContext.d.ts +45 -15
  88. package/cjs/components/step-indicator/StepIndicatorContext.js +102 -121
  89. package/cjs/components/step-indicator/StepIndicatorContext.js.map +1 -1
  90. package/cjs/components/step-indicator/StepIndicatorItem.d.ts +59 -61
  91. package/cjs/components/step-indicator/StepIndicatorItem.js +183 -231
  92. package/cjs/components/step-indicator/StepIndicatorItem.js.map +1 -1
  93. package/cjs/components/step-indicator/StepIndicatorList.d.ts +6 -8
  94. package/cjs/components/step-indicator/StepIndicatorList.js +45 -50
  95. package/cjs/components/step-indicator/StepIndicatorList.js.map +1 -1
  96. package/cjs/components/step-indicator/StepIndicatorModal.d.ts +6 -14
  97. package/cjs/components/step-indicator/StepIndicatorModal.js +41 -53
  98. package/cjs/components/step-indicator/StepIndicatorModal.js.map +1 -1
  99. package/cjs/components/step-indicator/StepIndicatorProps.d.ts +2 -55
  100. package/cjs/components/step-indicator/StepIndicatorProps.js +4 -50
  101. package/cjs/components/step-indicator/StepIndicatorProps.js.map +1 -1
  102. package/cjs/components/step-indicator/StepIndicatorSidebar.d.ts +27 -21
  103. package/cjs/components/step-indicator/StepIndicatorSidebar.js +41 -51
  104. package/cjs/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  105. package/cjs/components/step-indicator/StepIndicatorTriggerButton.d.ts +16 -17
  106. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js +65 -78
  107. package/cjs/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  108. package/cjs/components/switch/Switch.d.ts +4 -0
  109. package/cjs/components/switch/Switch.js +6 -4
  110. package/cjs/components/switch/Switch.js.map +1 -1
  111. package/cjs/components/switch/style/themes/dnb-switch-theme-ui.scss +3 -1
  112. package/cjs/components/table/TableContainer.js.map +1 -1
  113. package/cjs/components/table/style/table-accordion.scss +18 -6
  114. package/cjs/components/table/style/table-header-buttons.scss +3 -1
  115. package/cjs/components/table/style/table-tr.scss +6 -2
  116. package/cjs/components/table/style/themes/dnb-table-theme-ui.scss +3 -1
  117. package/cjs/components/timeline/TimelineItem.d.ts +3 -2
  118. package/cjs/components/timeline/TimelineItem.js +96 -62
  119. package/cjs/components/timeline/TimelineItem.js.map +1 -1
  120. package/cjs/components/timeline/style/themes/dnb-timeline-theme-ui.css +3 -2
  121. package/cjs/components/timeline/style/themes/dnb-timeline-theme-ui.min.css +3 -1
  122. package/cjs/components/timeline/style/themes/dnb-timeline-theme-ui.scss +3 -2
  123. package/cjs/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +3 -1
  124. package/cjs/elements/lib.d.ts +1 -1
  125. package/cjs/elements/typography/H.d.ts +5 -3
  126. package/cjs/elements/typography/H.js +7 -3
  127. package/cjs/elements/typography/H.js.map +1 -1
  128. package/cjs/elements/typography/H1.js +2 -2
  129. package/cjs/elements/typography/H1.js.map +1 -1
  130. package/cjs/elements/typography/H2.js +2 -2
  131. package/cjs/elements/typography/H2.js.map +1 -1
  132. package/cjs/elements/typography/H3.js +2 -2
  133. package/cjs/elements/typography/H3.js.map +1 -1
  134. package/cjs/elements/typography/H4.js +2 -2
  135. package/cjs/elements/typography/H4.js.map +1 -1
  136. package/cjs/elements/typography/H5.js +2 -2
  137. package/cjs/elements/typography/H5.js.map +1 -1
  138. package/cjs/elements/typography/H6.js +2 -2
  139. package/cjs/elements/typography/H6.js.map +1 -1
  140. package/cjs/elements/typography/style/dnb-typography.scss +3 -0
  141. package/cjs/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +12 -2
  142. package/cjs/elements/typography/style/typography-mixins.scss +5 -0
  143. package/cjs/extensions/forms/DataContext/index.js.map +1 -1
  144. package/cjs/extensions/forms/Field/ArraySelection.d.ts +2 -1
  145. package/cjs/extensions/forms/Field/ArraySelection.js +52 -32
  146. package/cjs/extensions/forms/Field/ArraySelection.js.map +1 -1
  147. package/cjs/extensions/forms/Field/CountryCode.d.ts +10 -0
  148. package/cjs/extensions/forms/Field/CountryCode.js +78 -0
  149. package/cjs/extensions/forms/Field/CountryCode.js.map +1 -0
  150. package/cjs/extensions/forms/Field/Currency.d.ts +2 -2
  151. package/cjs/extensions/forms/Field/Currency.js +6 -38
  152. package/cjs/extensions/forms/Field/Currency.js.map +1 -1
  153. package/cjs/extensions/forms/Field/Date.d.ts +2 -2
  154. package/cjs/extensions/forms/Field/Date.js +10 -6
  155. package/cjs/extensions/forms/Field/Date.js.map +1 -1
  156. package/cjs/extensions/forms/Field/Number.d.ts +7 -3
  157. package/cjs/extensions/forms/Field/Number.js +45 -20
  158. package/cjs/extensions/forms/Field/Number.js.map +1 -1
  159. package/cjs/extensions/forms/Field/PhoneNumber.d.ts +7 -2
  160. package/cjs/extensions/forms/Field/PhoneNumber.js +42 -41
  161. package/cjs/extensions/forms/Field/PhoneNumber.js.map +1 -1
  162. package/cjs/extensions/forms/Field/PostalCodeAndCity.d.ts +1 -1
  163. package/cjs/extensions/forms/Field/PostalCodeAndCity.js.map +1 -1
  164. package/cjs/extensions/forms/Field/Selection.d.ts +6 -4
  165. package/cjs/extensions/forms/Field/Selection.js +87 -36
  166. package/cjs/extensions/forms/Field/Selection.js.map +1 -1
  167. package/cjs/extensions/forms/Field/String.d.ts +3 -3
  168. package/cjs/extensions/forms/Field/String.js +26 -12
  169. package/cjs/extensions/forms/Field/String.js.map +1 -1
  170. package/cjs/extensions/forms/Field/Toggle.js +11 -9
  171. package/cjs/extensions/forms/Field/Toggle.js.map +1 -1
  172. package/cjs/extensions/forms/Field/fields.scss +2 -2
  173. package/cjs/extensions/forms/Field/hooks/useField.d.ts +6 -8
  174. package/cjs/extensions/forms/Field/hooks/useField.js +34 -33
  175. package/cjs/extensions/forms/Field/hooks/useField.js.map +1 -1
  176. package/cjs/extensions/forms/Field/index.d.ts +2 -0
  177. package/cjs/extensions/forms/Field/index.js +3 -1
  178. package/cjs/extensions/forms/Field/index.js.map +1 -1
  179. package/cjs/extensions/forms/Field/style/dnb-array-selection.css +13 -0
  180. package/cjs/extensions/forms/Field/style/dnb-array-selection.min.css +1 -0
  181. package/cjs/extensions/forms/Field/style/dnb-array-selection.scss +15 -0
  182. package/cjs/extensions/forms/Field/style/dnb-country-code.css +12 -0
  183. package/cjs/extensions/forms/Field/style/dnb-country-code.min.css +1 -0
  184. package/cjs/extensions/forms/Field/style/dnb-country-code.scss +19 -0
  185. package/cjs/extensions/forms/Field/style/dnb-phone-number.css +3 -7
  186. package/cjs/extensions/forms/Field/style/dnb-phone-number.min.css +1 -1
  187. package/cjs/extensions/forms/Field/style/dnb-phone-number.scss +3 -8
  188. package/cjs/extensions/forms/Field/style/dnb-postal-code-and-city.css +5 -2
  189. package/cjs/extensions/forms/Field/style/dnb-postal-code-and-city.min.css +1 -1
  190. package/cjs/extensions/forms/Field/style/dnb-postal-code-and-city.scss +5 -1
  191. package/cjs/extensions/forms/Field/style/dnb-selection.css +5 -2
  192. package/cjs/extensions/forms/Field/style/dnb-selection.min.css +1 -1
  193. package/cjs/extensions/forms/Field/style/dnb-selection.scss +7 -1
  194. package/cjs/extensions/forms/Field/style/index.scss +2 -0
  195. package/cjs/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -2
  196. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +15 -10
  197. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  198. package/cjs/extensions/forms/FieldBlock/index.js.map +1 -1
  199. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +31 -8
  200. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  201. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +46 -13
  202. package/cjs/extensions/forms/FieldGroup/index.js.map +1 -1
  203. package/cjs/extensions/forms/Layout/Card.js +2 -2
  204. package/cjs/extensions/forms/Layout/Card.js.map +1 -1
  205. package/cjs/extensions/forms/Layout/FlexContainer.d.ts +1 -0
  206. package/cjs/extensions/forms/Layout/FlexContainer.js +3 -2
  207. package/cjs/extensions/forms/Layout/FlexContainer.js.map +1 -1
  208. package/cjs/extensions/forms/Layout/FlexItem.d.ts +1 -0
  209. package/cjs/extensions/forms/Layout/FlexItem.js +2 -1
  210. package/cjs/extensions/forms/Layout/FlexItem.js.map +1 -1
  211. package/cjs/extensions/forms/Layout/style/dnb-card.css +3 -3
  212. package/cjs/extensions/forms/Layout/style/dnb-card.min.css +1 -1
  213. package/cjs/extensions/forms/Layout/style/dnb-card.scss +6 -4
  214. package/cjs/extensions/forms/Layout/style/dnb-flex-container.css +9 -0
  215. package/cjs/extensions/forms/Layout/style/dnb-flex-container.min.css +1 -1
  216. package/cjs/extensions/forms/Layout/style/dnb-flex-container.scss +14 -0
  217. package/cjs/extensions/forms/Layout/style/dnb-flex-item.css +9 -0
  218. package/cjs/extensions/forms/Layout/style/dnb-flex-item.min.css +1 -1
  219. package/cjs/extensions/forms/Layout/style/dnb-flex-item.scss +14 -0
  220. package/cjs/extensions/forms/StepsLayout/StepsLayout.js +1 -1
  221. package/cjs/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  222. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.css +11 -5
  223. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  224. package/cjs/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +10 -3
  225. package/cjs/extensions/forms/ValueBlock/index.js.map +1 -1
  226. package/cjs/extensions/forms/field-types.d.ts +7 -1
  227. package/cjs/extensions/forms/field-types.js.map +1 -1
  228. package/cjs/extensions/forms/style/dnb-forms.css +105 -29
  229. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  230. package/cjs/extensions/forms/style/index.d.ts +1 -0
  231. package/cjs/extensions/forms/style/index.js +4 -0
  232. package/cjs/extensions/forms/style/index.js.map +1 -0
  233. package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.css +2 -2
  234. package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -1
  235. package/cjs/extensions/forms/utils/TestElement/style/dnb-test-element.scss +2 -2
  236. package/cjs/extensions/forms/utils/useWasChanged.d.ts +5 -0
  237. package/cjs/extensions/forms/utils/useWasChanged.js +62 -0
  238. package/cjs/extensions/forms/utils/useWasChanged.js.map +1 -0
  239. package/cjs/extensions/forms/variables.scss +3 -0
  240. package/cjs/extensions/lib.d.ts +1 -0
  241. package/cjs/extensions/payment-card/PaymentCard.js.map +1 -1
  242. package/cjs/extensions/payment-card/utils/backgrounds/ung.js +1 -1
  243. package/cjs/extensions/payment-card/utils/backgrounds/ung.js.map +1 -1
  244. package/cjs/extensions/payment-card/utils/backgrounds/youth.js +1 -1
  245. package/cjs/extensions/payment-card/utils/backgrounds/youth.js.map +1 -1
  246. package/cjs/fragments/drawer-list/DrawerList.js +1 -1
  247. package/cjs/fragments/drawer-list/DrawerList.js.map +1 -1
  248. package/cjs/fragments/drawer-list/DrawerListPortal.js +2 -2
  249. package/cjs/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  250. package/cjs/fragments/drawer-list/style/dnb-drawer-list.scss +3 -1
  251. package/cjs/shared/Context.d.ts +2 -0
  252. package/cjs/shared/Context.js.map +1 -1
  253. package/cjs/shared/Eufemia.d.ts +1 -1
  254. package/cjs/shared/Eufemia.js +2 -2
  255. package/cjs/shared/Eufemia.js.map +1 -1
  256. package/cjs/shared/helpers/withCamelCaseProps.js.map +1 -1
  257. package/cjs/shared/helpers/withSnakeCaseProps.js.map +1 -1
  258. package/cjs/shared/libs/Shortcuts.js.map +1 -1
  259. package/cjs/shared/locales/en-GB.d.ts +1 -0
  260. package/cjs/shared/locales/en-GB.js +1 -0
  261. package/cjs/shared/locales/en-GB.js.map +1 -1
  262. package/cjs/shared/locales/en-US.d.ts +1 -0
  263. package/cjs/shared/locales/index.d.ts +2 -0
  264. package/cjs/shared/locales/nb-NO.d.ts +1 -0
  265. package/cjs/shared/locales/nb-NO.js +1 -0
  266. package/cjs/shared/locales/nb-NO.js.map +1 -1
  267. package/cjs/style/core/reset.scss +13 -3
  268. package/cjs/style/core/utilities.scss +3 -1
  269. package/cjs/style/dnb-ui-components.css +23 -18
  270. package/cjs/style/dnb-ui-components.min.css +1 -1
  271. package/cjs/style/dnb-ui-elements.css +6 -0
  272. package/cjs/style/dnb-ui-elements.min.css +1 -1
  273. package/cjs/style/dnb-ui-extensions.css +105 -29
  274. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  275. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.css +6 -0
  276. package/cjs/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  277. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +42 -24
  278. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -1
  279. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +105 -29
  280. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  281. package/cjs/style/themes/theme-sbanken/customisations.scss +0 -8
  282. package/cjs/style/themes/theme-sbanken/properties.js +6 -6
  283. package/cjs/style/themes/theme-sbanken/properties.js.map +1 -1
  284. package/cjs/style/themes/theme-sbanken/properties.scss +6 -6
  285. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.css +27 -26
  286. package/cjs/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  287. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +236 -245
  288. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -2
  289. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.scss +4 -3
  290. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.css +21 -2
  291. package/cjs/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  292. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +105 -29
  293. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  294. package/cjs/style/themes/theme-ui/fonts.scss +8 -4
  295. package/cjs/style/themes/theme-ui/ui-theme-basis.css +6 -0
  296. package/cjs/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  297. package/cjs/style/themes/theme-ui/ui-theme-components.css +42 -24
  298. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +4 -2
  299. package/cjs/style/themes/theme-ui/ui-theme-elements.css +6 -0
  300. package/cjs/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  301. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +105 -29
  302. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  303. package/cjs/style/themes/theme-ui/ui-theme-tags.css +3 -0
  304. package/cjs/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  305. package/cjs/style/themes/theme-ui/ui-theme-tags.scss +9 -4
  306. package/components/accordion/Accordion.d.ts +1 -1
  307. package/components/accordion/AccordionHeader.d.ts +4 -4
  308. package/components/accordion/AccordionHeader.js +18 -5
  309. package/components/accordion/AccordionHeader.js.map +1 -1
  310. package/components/accordion/style/dnb-accordion.css +22 -17
  311. package/components/accordion/style/dnb-accordion.min.css +1 -1
  312. package/components/accordion/style/dnb-accordion.scss +40 -18
  313. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +124 -0
  314. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -0
  315. package/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +125 -0
  316. package/components/anchor/Anchor.js +1 -1
  317. package/components/anchor/Anchor.js.map +1 -1
  318. package/components/anchor/style/anchor-mixins.scss +9 -3
  319. package/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +3 -1
  320. package/components/autocomplete/Autocomplete.js +4 -2
  321. package/components/autocomplete/Autocomplete.js.map +1 -1
  322. package/components/avatar/style/index.d.ts +1 -1
  323. package/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +2 -1
  324. package/components/breadcrumb/Breadcrumb.js +2 -2
  325. package/components/breadcrumb/Breadcrumb.js.map +1 -1
  326. package/components/breadcrumb/BreadcrumbItem.js +23 -1
  327. package/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  328. package/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.css +23 -0
  329. package/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.min.css +1 -0
  330. package/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.scss +33 -0
  331. package/components/button/style/themes/dnb-button-theme-ui.scss +3 -1
  332. package/components/checkbox/Checkbox.d.ts +4 -0
  333. package/components/checkbox/Checkbox.js +6 -4
  334. package/components/checkbox/Checkbox.js.map +1 -1
  335. package/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +3 -1
  336. package/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +6 -2
  337. package/components/drawer/Drawer.d.ts +1 -1
  338. package/components/drawer/Drawer.js +3 -1
  339. package/components/drawer/Drawer.js.map +1 -1
  340. package/components/form-status/FormStatus.d.ts +2 -0
  341. package/components/form-status/FormStatus.js +70 -53
  342. package/components/form-status/FormStatus.js.map +1 -1
  343. package/components/form-status/style/dnb-form-status.scss +4 -2
  344. package/components/form-status/style/themes/dnb-form-status-theme-sbanken.css +37 -0
  345. package/components/form-status/style/themes/dnb-form-status-theme-sbanken.min.css +1 -0
  346. package/components/form-status/style/themes/dnb-form-status-theme-sbanken.scss +35 -0
  347. package/components/global-status/GlobalStatus.d.ts +1 -1
  348. package/components/global-status/GlobalStatus.js +18 -8
  349. package/components/global-status/GlobalStatus.js.map +1 -1
  350. package/components/global-status/style/dnb-global-status.scss +2 -1
  351. package/components/global-status/style/themes/dnb-global-status-theme-sbanken.css +22 -0
  352. package/components/global-status/style/themes/dnb-global-status-theme-sbanken.min.css +1 -0
  353. package/components/global-status/style/themes/dnb-global-status-theme-sbanken.scss +28 -0
  354. package/components/global-status/style/themes/dnb-global-status-theme-ui.css +6 -3
  355. package/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
  356. package/components/global-status/style/themes/dnb-global-status-theme-ui.scss +13 -6
  357. package/components/heading/Heading.d.ts +8 -8
  358. package/components/heading/Heading.js +9 -15
  359. package/components/heading/Heading.js.map +1 -1
  360. package/components/heading/HeadingHelpers.d.ts +5 -1
  361. package/components/heading/HeadingHelpers.js +39 -0
  362. package/components/heading/HeadingHelpers.js.map +1 -1
  363. package/components/info-card/index.js.map +1 -1
  364. package/components/info-card/style.js.map +1 -1
  365. package/components/input/style/themes/dnb-input-theme-ui.css +1 -1
  366. package/components/input/style/themes/dnb-input-theme-ui.min.css +1 -1
  367. package/components/input/style/themes/dnb-input-theme-ui.scss +9 -3
  368. package/components/input-masked/InputMaskedUtils.js +1 -1
  369. package/components/input-masked/InputMaskedUtils.js.map +1 -1
  370. package/components/modal/Modal.js.map +1 -1
  371. package/components/modal/parts/ModalHeaderBar.js +0 -4
  372. package/components/modal/parts/ModalHeaderBar.js.map +1 -1
  373. package/components/pagination/Pagination.js.map +1 -1
  374. package/components/radio/Radio.d.ts +4 -0
  375. package/components/radio/Radio.js +6 -4
  376. package/components/radio/Radio.js.map +1 -1
  377. package/components/radio/style/themes/dnb-radio-theme-ui.scss +15 -5
  378. package/components/section/Section.d.ts +21 -1
  379. package/components/section/Section.js.map +1 -1
  380. package/components/section/style/dnb-section.css +1 -1
  381. package/components/section/style/dnb-section.scss +8 -3
  382. package/components/section/style/themes/dnb-section-theme-sbanken.scss +3 -4
  383. package/components/section/style/themes/dnb-section-theme-ui.css +9 -0
  384. package/components/section/style/themes/dnb-section-theme-ui.scss +28 -14
  385. package/components/skeleton/style/dnb-skeleton.scss +8 -5
  386. package/components/slider/style/dnb-slider.scss +4 -2
  387. package/components/space/SpacingUtils.js.map +1 -1
  388. package/components/step-indicator/StepIndicator.d.ts +89 -75
  389. package/components/step-indicator/StepIndicator.js +29 -25
  390. package/components/step-indicator/StepIndicator.js.map +1 -1
  391. package/components/step-indicator/StepIndicatorContext.d.ts +45 -15
  392. package/components/step-indicator/StepIndicatorContext.js +98 -120
  393. package/components/step-indicator/StepIndicatorContext.js.map +1 -1
  394. package/components/step-indicator/StepIndicatorItem.d.ts +59 -61
  395. package/components/step-indicator/StepIndicatorItem.js +177 -227
  396. package/components/step-indicator/StepIndicatorItem.js.map +1 -1
  397. package/components/step-indicator/StepIndicatorList.d.ts +6 -8
  398. package/components/step-indicator/StepIndicatorList.js +43 -48
  399. package/components/step-indicator/StepIndicatorList.js.map +1 -1
  400. package/components/step-indicator/StepIndicatorModal.d.ts +6 -14
  401. package/components/step-indicator/StepIndicatorModal.js +38 -50
  402. package/components/step-indicator/StepIndicatorModal.js.map +1 -1
  403. package/components/step-indicator/StepIndicatorProps.d.ts +2 -55
  404. package/components/step-indicator/StepIndicatorProps.js +3 -45
  405. package/components/step-indicator/StepIndicatorProps.js.map +1 -1
  406. package/components/step-indicator/StepIndicatorSidebar.d.ts +27 -21
  407. package/components/step-indicator/StepIndicatorSidebar.js +39 -52
  408. package/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  409. package/components/step-indicator/StepIndicatorTriggerButton.d.ts +16 -17
  410. package/components/step-indicator/StepIndicatorTriggerButton.js +62 -78
  411. package/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  412. package/components/switch/Switch.d.ts +4 -0
  413. package/components/switch/Switch.js +6 -4
  414. package/components/switch/Switch.js.map +1 -1
  415. package/components/switch/style/themes/dnb-switch-theme-ui.scss +3 -1
  416. package/components/table/TableContainer.js.map +1 -1
  417. package/components/table/style/table-accordion.scss +18 -6
  418. package/components/table/style/table-header-buttons.scss +3 -1
  419. package/components/table/style/table-tr.scss +6 -2
  420. package/components/table/style/themes/dnb-table-theme-ui.scss +3 -1
  421. package/components/timeline/TimelineItem.d.ts +3 -2
  422. package/components/timeline/TimelineItem.js +95 -61
  423. package/components/timeline/TimelineItem.js.map +1 -1
  424. package/components/timeline/style/themes/dnb-timeline-theme-ui.css +3 -2
  425. package/components/timeline/style/themes/dnb-timeline-theme-ui.min.css +3 -1
  426. package/components/timeline/style/themes/dnb-timeline-theme-ui.scss +3 -2
  427. package/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +3 -1
  428. package/elements/lib.d.ts +1 -1
  429. package/elements/typography/H.d.ts +5 -3
  430. package/elements/typography/H.js +8 -4
  431. package/elements/typography/H.js.map +1 -1
  432. package/elements/typography/H1.js +2 -2
  433. package/elements/typography/H1.js.map +1 -1
  434. package/elements/typography/H2.js +2 -2
  435. package/elements/typography/H2.js.map +1 -1
  436. package/elements/typography/H3.js +2 -2
  437. package/elements/typography/H3.js.map +1 -1
  438. package/elements/typography/H4.js +2 -2
  439. package/elements/typography/H4.js.map +1 -1
  440. package/elements/typography/H5.js +2 -2
  441. package/elements/typography/H5.js.map +1 -1
  442. package/elements/typography/H6.js +2 -2
  443. package/elements/typography/H6.js.map +1 -1
  444. package/elements/typography/style/dnb-typography.scss +3 -0
  445. package/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +12 -2
  446. package/elements/typography/style/typography-mixins.scss +5 -0
  447. package/es/components/accordion/Accordion.d.ts +1 -1
  448. package/es/components/accordion/AccordionHeader.d.ts +4 -4
  449. package/es/components/accordion/AccordionHeader.js +18 -5
  450. package/es/components/accordion/AccordionHeader.js.map +1 -1
  451. package/es/components/accordion/style/dnb-accordion.css +22 -17
  452. package/es/components/accordion/style/dnb-accordion.min.css +1 -1
  453. package/es/components/accordion/style/dnb-accordion.scss +40 -18
  454. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.css +124 -0
  455. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.min.css +1 -0
  456. package/es/components/accordion/style/themes/dnb-accordion-theme-sbanken.scss +125 -0
  457. package/es/components/anchor/Anchor.js +1 -1
  458. package/es/components/anchor/Anchor.js.map +1 -1
  459. package/es/components/anchor/style/anchor-mixins.scss +9 -3
  460. package/es/components/anchor/style/themes/dnb-anchor-theme-sbanken.scss +3 -1
  461. package/es/components/autocomplete/Autocomplete.js +4 -2
  462. package/es/components/autocomplete/Autocomplete.js.map +1 -1
  463. package/es/components/avatar/style/index.d.ts +1 -1
  464. package/es/components/avatar/style/themes/dnb-avatar-theme-sbanken.scss +2 -1
  465. package/es/components/breadcrumb/Breadcrumb.js +2 -2
  466. package/es/components/breadcrumb/Breadcrumb.js.map +1 -1
  467. package/es/components/breadcrumb/BreadcrumbItem.js +23 -1
  468. package/es/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  469. package/es/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.css +23 -0
  470. package/es/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.min.css +1 -0
  471. package/es/components/breadcrumb/style/themes/dnb-breadcrumb-theme-sbanken.scss +33 -0
  472. package/es/components/button/style/themes/dnb-button-theme-ui.scss +3 -1
  473. package/es/components/checkbox/Checkbox.d.ts +4 -0
  474. package/es/components/checkbox/Checkbox.js +6 -4
  475. package/es/components/checkbox/Checkbox.js.map +1 -1
  476. package/es/components/checkbox/style/themes/dnb-checkbox-theme-ui.scss +3 -1
  477. package/es/components/date-picker/style/themes/dnb-date-picker-theme-ui.scss +6 -2
  478. package/es/components/drawer/Drawer.d.ts +1 -1
  479. package/es/components/drawer/Drawer.js +3 -1
  480. package/es/components/drawer/Drawer.js.map +1 -1
  481. package/es/components/form-status/FormStatus.d.ts +2 -0
  482. package/es/components/form-status/FormStatus.js +70 -53
  483. package/es/components/form-status/FormStatus.js.map +1 -1
  484. package/es/components/form-status/style/dnb-form-status.scss +4 -2
  485. package/es/components/form-status/style/themes/dnb-form-status-theme-sbanken.css +37 -0
  486. package/es/components/form-status/style/themes/dnb-form-status-theme-sbanken.min.css +1 -0
  487. package/es/components/form-status/style/themes/dnb-form-status-theme-sbanken.scss +35 -0
  488. package/es/components/global-status/GlobalStatus.d.ts +1 -1
  489. package/es/components/global-status/GlobalStatus.js +18 -8
  490. package/es/components/global-status/GlobalStatus.js.map +1 -1
  491. package/es/components/global-status/style/dnb-global-status.scss +2 -1
  492. package/es/components/global-status/style/themes/dnb-global-status-theme-sbanken.css +22 -0
  493. package/es/components/global-status/style/themes/dnb-global-status-theme-sbanken.min.css +1 -0
  494. package/es/components/global-status/style/themes/dnb-global-status-theme-sbanken.scss +28 -0
  495. package/es/components/global-status/style/themes/dnb-global-status-theme-ui.css +6 -3
  496. package/es/components/global-status/style/themes/dnb-global-status-theme-ui.min.css +1 -1
  497. package/es/components/global-status/style/themes/dnb-global-status-theme-ui.scss +13 -6
  498. package/es/components/heading/Heading.d.ts +8 -8
  499. package/es/components/heading/Heading.js +9 -15
  500. package/es/components/heading/Heading.js.map +1 -1
  501. package/es/components/heading/HeadingHelpers.d.ts +5 -1
  502. package/es/components/heading/HeadingHelpers.js +39 -0
  503. package/es/components/heading/HeadingHelpers.js.map +1 -1
  504. package/es/components/info-card/index.js.map +1 -1
  505. package/es/components/info-card/style.js.map +1 -1
  506. package/es/components/input/style/themes/dnb-input-theme-ui.css +1 -1
  507. package/es/components/input/style/themes/dnb-input-theme-ui.min.css +1 -1
  508. package/es/components/input/style/themes/dnb-input-theme-ui.scss +9 -3
  509. package/es/components/input-masked/InputMaskedUtils.js +1 -1
  510. package/es/components/input-masked/InputMaskedUtils.js.map +1 -1
  511. package/es/components/modal/Modal.js.map +1 -1
  512. package/es/components/modal/parts/ModalHeaderBar.js +0 -4
  513. package/es/components/modal/parts/ModalHeaderBar.js.map +1 -1
  514. package/es/components/pagination/Pagination.js.map +1 -1
  515. package/es/components/radio/Radio.d.ts +4 -0
  516. package/es/components/radio/Radio.js +6 -4
  517. package/es/components/radio/Radio.js.map +1 -1
  518. package/es/components/radio/style/themes/dnb-radio-theme-ui.scss +15 -5
  519. package/es/components/section/Section.d.ts +21 -1
  520. package/es/components/section/Section.js.map +1 -1
  521. package/es/components/section/style/dnb-section.css +1 -1
  522. package/es/components/section/style/dnb-section.scss +8 -3
  523. package/es/components/section/style/themes/dnb-section-theme-sbanken.scss +3 -4
  524. package/es/components/section/style/themes/dnb-section-theme-ui.css +9 -0
  525. package/es/components/section/style/themes/dnb-section-theme-ui.scss +28 -14
  526. package/es/components/skeleton/style/dnb-skeleton.scss +8 -5
  527. package/es/components/slider/style/dnb-slider.scss +4 -2
  528. package/es/components/space/SpacingUtils.js.map +1 -1
  529. package/es/components/step-indicator/StepIndicator.d.ts +89 -75
  530. package/es/components/step-indicator/StepIndicator.js +29 -25
  531. package/es/components/step-indicator/StepIndicator.js.map +1 -1
  532. package/es/components/step-indicator/StepIndicatorContext.d.ts +45 -15
  533. package/es/components/step-indicator/StepIndicatorContext.js +94 -114
  534. package/es/components/step-indicator/StepIndicatorContext.js.map +1 -1
  535. package/es/components/step-indicator/StepIndicatorItem.d.ts +59 -61
  536. package/es/components/step-indicator/StepIndicatorItem.js +173 -223
  537. package/es/components/step-indicator/StepIndicatorItem.js.map +1 -1
  538. package/es/components/step-indicator/StepIndicatorList.d.ts +6 -8
  539. package/es/components/step-indicator/StepIndicatorList.js +43 -48
  540. package/es/components/step-indicator/StepIndicatorList.js.map +1 -1
  541. package/es/components/step-indicator/StepIndicatorModal.d.ts +6 -14
  542. package/es/components/step-indicator/StepIndicatorModal.js +38 -48
  543. package/es/components/step-indicator/StepIndicatorModal.js.map +1 -1
  544. package/es/components/step-indicator/StepIndicatorProps.d.ts +2 -55
  545. package/es/components/step-indicator/StepIndicatorProps.js +3 -45
  546. package/es/components/step-indicator/StepIndicatorProps.js.map +1 -1
  547. package/es/components/step-indicator/StepIndicatorSidebar.d.ts +27 -21
  548. package/es/components/step-indicator/StepIndicatorSidebar.js +39 -52
  549. package/es/components/step-indicator/StepIndicatorSidebar.js.map +1 -1
  550. package/es/components/step-indicator/StepIndicatorTriggerButton.d.ts +16 -17
  551. package/es/components/step-indicator/StepIndicatorTriggerButton.js +62 -78
  552. package/es/components/step-indicator/StepIndicatorTriggerButton.js.map +1 -1
  553. package/es/components/switch/Switch.d.ts +4 -0
  554. package/es/components/switch/Switch.js +6 -4
  555. package/es/components/switch/Switch.js.map +1 -1
  556. package/es/components/switch/style/themes/dnb-switch-theme-ui.scss +3 -1
  557. package/es/components/table/TableContainer.js.map +1 -1
  558. package/es/components/table/style/table-accordion.scss +18 -6
  559. package/es/components/table/style/table-header-buttons.scss +3 -1
  560. package/es/components/table/style/table-tr.scss +6 -2
  561. package/es/components/table/style/themes/dnb-table-theme-ui.scss +3 -1
  562. package/es/components/timeline/TimelineItem.d.ts +3 -2
  563. package/es/components/timeline/TimelineItem.js +89 -58
  564. package/es/components/timeline/TimelineItem.js.map +1 -1
  565. package/es/components/timeline/style/themes/dnb-timeline-theme-ui.css +3 -2
  566. package/es/components/timeline/style/themes/dnb-timeline-theme-ui.min.css +3 -1
  567. package/es/components/timeline/style/themes/dnb-timeline-theme-ui.scss +3 -2
  568. package/es/components/toggle-button/style/themes/dnb-toggle-button-theme-ui.scss +3 -1
  569. package/es/elements/lib.d.ts +1 -1
  570. package/es/elements/typography/H.d.ts +5 -3
  571. package/es/elements/typography/H.js +8 -4
  572. package/es/elements/typography/H.js.map +1 -1
  573. package/es/elements/typography/H1.js +2 -2
  574. package/es/elements/typography/H1.js.map +1 -1
  575. package/es/elements/typography/H2.js +2 -2
  576. package/es/elements/typography/H2.js.map +1 -1
  577. package/es/elements/typography/H3.js +2 -2
  578. package/es/elements/typography/H3.js.map +1 -1
  579. package/es/elements/typography/H4.js +2 -2
  580. package/es/elements/typography/H4.js.map +1 -1
  581. package/es/elements/typography/H5.js +2 -2
  582. package/es/elements/typography/H5.js.map +1 -1
  583. package/es/elements/typography/H6.js +2 -2
  584. package/es/elements/typography/H6.js.map +1 -1
  585. package/es/elements/typography/style/dnb-typography.scss +3 -0
  586. package/es/elements/typography/style/themes/dnb-typography-theme-sbanken.scss +12 -2
  587. package/es/elements/typography/style/typography-mixins.scss +5 -0
  588. package/es/extensions/forms/DataContext/index.js.map +1 -1
  589. package/es/extensions/forms/Field/ArraySelection.d.ts +2 -1
  590. package/es/extensions/forms/Field/ArraySelection.js +49 -33
  591. package/es/extensions/forms/Field/ArraySelection.js.map +1 -1
  592. package/es/extensions/forms/Field/CountryCode.d.ts +10 -0
  593. package/es/extensions/forms/Field/CountryCode.js +67 -0
  594. package/es/extensions/forms/Field/CountryCode.js.map +1 -0
  595. package/es/extensions/forms/Field/Currency.d.ts +2 -2
  596. package/es/extensions/forms/Field/Currency.js +6 -37
  597. package/es/extensions/forms/Field/Currency.js.map +1 -1
  598. package/es/extensions/forms/Field/Date.d.ts +2 -2
  599. package/es/extensions/forms/Field/Date.js +11 -7
  600. package/es/extensions/forms/Field/Date.js.map +1 -1
  601. package/es/extensions/forms/Field/Number.d.ts +7 -3
  602. package/es/extensions/forms/Field/Number.js +44 -21
  603. package/es/extensions/forms/Field/Number.js.map +1 -1
  604. package/es/extensions/forms/Field/PhoneNumber.d.ts +7 -2
  605. package/es/extensions/forms/Field/PhoneNumber.js +43 -40
  606. package/es/extensions/forms/Field/PhoneNumber.js.map +1 -1
  607. package/es/extensions/forms/Field/PostalCodeAndCity.d.ts +1 -1
  608. package/es/extensions/forms/Field/PostalCodeAndCity.js.map +1 -1
  609. package/es/extensions/forms/Field/Selection.d.ts +6 -4
  610. package/es/extensions/forms/Field/Selection.js +85 -37
  611. package/es/extensions/forms/Field/Selection.js.map +1 -1
  612. package/es/extensions/forms/Field/String.d.ts +3 -3
  613. package/es/extensions/forms/Field/String.js +27 -13
  614. package/es/extensions/forms/Field/String.js.map +1 -1
  615. package/es/extensions/forms/Field/Toggle.js +11 -9
  616. package/es/extensions/forms/Field/Toggle.js.map +1 -1
  617. package/es/extensions/forms/Field/fields.scss +2 -2
  618. package/es/extensions/forms/Field/hooks/useField.d.ts +6 -8
  619. package/es/extensions/forms/Field/hooks/useField.js +34 -31
  620. package/es/extensions/forms/Field/hooks/useField.js.map +1 -1
  621. package/es/extensions/forms/Field/index.d.ts +2 -0
  622. package/es/extensions/forms/Field/index.js +3 -1
  623. package/es/extensions/forms/Field/index.js.map +1 -1
  624. package/es/extensions/forms/Field/style/dnb-array-selection.css +13 -0
  625. package/es/extensions/forms/Field/style/dnb-array-selection.min.css +1 -0
  626. package/es/extensions/forms/Field/style/dnb-array-selection.scss +15 -0
  627. package/es/extensions/forms/Field/style/dnb-country-code.css +12 -0
  628. package/es/extensions/forms/Field/style/dnb-country-code.min.css +1 -0
  629. package/es/extensions/forms/Field/style/dnb-country-code.scss +19 -0
  630. package/es/extensions/forms/Field/style/dnb-phone-number.css +3 -7
  631. package/es/extensions/forms/Field/style/dnb-phone-number.min.css +1 -1
  632. package/es/extensions/forms/Field/style/dnb-phone-number.scss +3 -8
  633. package/es/extensions/forms/Field/style/dnb-postal-code-and-city.css +5 -2
  634. package/es/extensions/forms/Field/style/dnb-postal-code-and-city.min.css +1 -1
  635. package/es/extensions/forms/Field/style/dnb-postal-code-and-city.scss +5 -1
  636. package/es/extensions/forms/Field/style/dnb-selection.css +5 -2
  637. package/es/extensions/forms/Field/style/dnb-selection.min.css +1 -1
  638. package/es/extensions/forms/Field/style/dnb-selection.scss +7 -1
  639. package/es/extensions/forms/Field/style/index.scss +2 -0
  640. package/es/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -2
  641. package/es/extensions/forms/FieldBlock/FieldBlock.js +15 -10
  642. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  643. package/es/extensions/forms/FieldBlock/index.js.map +1 -1
  644. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +31 -8
  645. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  646. package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +46 -13
  647. package/es/extensions/forms/FieldGroup/index.js.map +1 -1
  648. package/es/extensions/forms/Layout/Card.js +2 -2
  649. package/es/extensions/forms/Layout/Card.js.map +1 -1
  650. package/es/extensions/forms/Layout/FlexContainer.d.ts +1 -0
  651. package/es/extensions/forms/Layout/FlexContainer.js +3 -2
  652. package/es/extensions/forms/Layout/FlexContainer.js.map +1 -1
  653. package/es/extensions/forms/Layout/FlexItem.d.ts +1 -0
  654. package/es/extensions/forms/Layout/FlexItem.js +2 -1
  655. package/es/extensions/forms/Layout/FlexItem.js.map +1 -1
  656. package/es/extensions/forms/Layout/style/dnb-card.css +3 -3
  657. package/es/extensions/forms/Layout/style/dnb-card.min.css +1 -1
  658. package/es/extensions/forms/Layout/style/dnb-card.scss +6 -4
  659. package/es/extensions/forms/Layout/style/dnb-flex-container.css +9 -0
  660. package/es/extensions/forms/Layout/style/dnb-flex-container.min.css +1 -1
  661. package/es/extensions/forms/Layout/style/dnb-flex-container.scss +14 -0
  662. package/es/extensions/forms/Layout/style/dnb-flex-item.css +9 -0
  663. package/es/extensions/forms/Layout/style/dnb-flex-item.min.css +1 -1
  664. package/es/extensions/forms/Layout/style/dnb-flex-item.scss +14 -0
  665. package/es/extensions/forms/StepsLayout/StepsLayout.js +1 -1
  666. package/es/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  667. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.css +11 -5
  668. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  669. package/es/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +10 -3
  670. package/es/extensions/forms/ValueBlock/index.js.map +1 -1
  671. package/es/extensions/forms/field-types.d.ts +7 -1
  672. package/es/extensions/forms/field-types.js.map +1 -1
  673. package/es/extensions/forms/style/dnb-forms.css +105 -29
  674. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  675. package/es/extensions/forms/style/index.d.ts +1 -0
  676. package/es/extensions/forms/style/index.js +1 -0
  677. package/es/extensions/forms/style/index.js.map +1 -0
  678. package/es/extensions/forms/utils/TestElement/style/dnb-test-element.css +2 -2
  679. package/es/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -1
  680. package/es/extensions/forms/utils/TestElement/style/dnb-test-element.scss +2 -2
  681. package/es/extensions/forms/utils/useWasChanged.d.ts +5 -0
  682. package/es/extensions/forms/utils/useWasChanged.js +51 -0
  683. package/es/extensions/forms/utils/useWasChanged.js.map +1 -0
  684. package/es/extensions/forms/variables.scss +3 -0
  685. package/es/extensions/lib.d.ts +1 -0
  686. package/es/extensions/payment-card/PaymentCard.js.map +1 -1
  687. package/es/extensions/payment-card/utils/backgrounds/ung.js +1 -1
  688. package/es/extensions/payment-card/utils/backgrounds/ung.js.map +1 -1
  689. package/es/extensions/payment-card/utils/backgrounds/youth.js +1 -1
  690. package/es/extensions/payment-card/utils/backgrounds/youth.js.map +1 -1
  691. package/es/fragments/drawer-list/DrawerList.js +1 -1
  692. package/es/fragments/drawer-list/DrawerList.js.map +1 -1
  693. package/es/fragments/drawer-list/DrawerListPortal.js +2 -2
  694. package/es/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  695. package/es/fragments/drawer-list/style/dnb-drawer-list.scss +3 -1
  696. package/es/shared/Context.d.ts +2 -0
  697. package/es/shared/Context.js.map +1 -1
  698. package/es/shared/Eufemia.d.ts +1 -1
  699. package/es/shared/Eufemia.js +2 -2
  700. package/es/shared/Eufemia.js.map +1 -1
  701. package/es/shared/helpers/withCamelCaseProps.js.map +1 -1
  702. package/es/shared/helpers/withSnakeCaseProps.js.map +1 -1
  703. package/es/shared/libs/Shortcuts.js.map +1 -1
  704. package/es/shared/locales/en-GB.d.ts +1 -0
  705. package/es/shared/locales/en-GB.js +1 -0
  706. package/es/shared/locales/en-GB.js.map +1 -1
  707. package/es/shared/locales/en-US.d.ts +1 -0
  708. package/es/shared/locales/index.d.ts +2 -0
  709. package/es/shared/locales/nb-NO.d.ts +1 -0
  710. package/es/shared/locales/nb-NO.js +1 -0
  711. package/es/shared/locales/nb-NO.js.map +1 -1
  712. package/es/style/core/reset.scss +13 -3
  713. package/es/style/core/utilities.scss +3 -1
  714. package/es/style/dnb-ui-components.css +23 -18
  715. package/es/style/dnb-ui-components.min.css +1 -1
  716. package/es/style/dnb-ui-elements.css +6 -0
  717. package/es/style/dnb-ui-elements.min.css +1 -1
  718. package/es/style/dnb-ui-extensions.css +105 -29
  719. package/es/style/dnb-ui-extensions.min.css +1 -1
  720. package/es/style/themes/theme-eiendom/eiendom-theme-basis.css +6 -0
  721. package/es/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  722. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +42 -24
  723. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -1
  724. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +105 -29
  725. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  726. package/es/style/themes/theme-sbanken/customisations.scss +0 -8
  727. package/es/style/themes/theme-sbanken/properties.js +6 -6
  728. package/es/style/themes/theme-sbanken/properties.js.map +1 -1
  729. package/es/style/themes/theme-sbanken/properties.scss +6 -6
  730. package/es/style/themes/theme-sbanken/sbanken-theme-basis.css +27 -26
  731. package/es/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  732. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +236 -245
  733. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -2
  734. package/es/style/themes/theme-sbanken/sbanken-theme-components.scss +4 -3
  735. package/es/style/themes/theme-sbanken/sbanken-theme-elements.css +21 -2
  736. package/es/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  737. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +105 -29
  738. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  739. package/es/style/themes/theme-ui/fonts.scss +8 -4
  740. package/es/style/themes/theme-ui/ui-theme-basis.css +6 -0
  741. package/es/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  742. package/es/style/themes/theme-ui/ui-theme-components.css +42 -24
  743. package/es/style/themes/theme-ui/ui-theme-components.min.css +4 -2
  744. package/es/style/themes/theme-ui/ui-theme-elements.css +6 -0
  745. package/es/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  746. package/es/style/themes/theme-ui/ui-theme-extensions.css +105 -29
  747. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  748. package/es/style/themes/theme-ui/ui-theme-tags.css +3 -0
  749. package/es/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  750. package/es/style/themes/theme-ui/ui-theme-tags.scss +9 -4
  751. package/esm/dnb-ui-basis.min.mjs +1 -1
  752. package/esm/dnb-ui-components.min.mjs +1 -1
  753. package/esm/dnb-ui-elements.min.mjs +1 -1
  754. package/esm/dnb-ui-extensions.min.mjs +6 -6
  755. package/esm/dnb-ui-lib.min.mjs +1 -1
  756. package/extensions/forms/DataContext/index.js.map +1 -1
  757. package/extensions/forms/Field/ArraySelection.d.ts +2 -1
  758. package/extensions/forms/Field/ArraySelection.js +49 -33
  759. package/extensions/forms/Field/ArraySelection.js.map +1 -1
  760. package/extensions/forms/Field/CountryCode.d.ts +10 -0
  761. package/extensions/forms/Field/CountryCode.js +68 -0
  762. package/extensions/forms/Field/CountryCode.js.map +1 -0
  763. package/extensions/forms/Field/Currency.d.ts +2 -2
  764. package/extensions/forms/Field/Currency.js +6 -38
  765. package/extensions/forms/Field/Currency.js.map +1 -1
  766. package/extensions/forms/Field/Date.d.ts +2 -2
  767. package/extensions/forms/Field/Date.js +11 -7
  768. package/extensions/forms/Field/Date.js.map +1 -1
  769. package/extensions/forms/Field/Number.d.ts +7 -3
  770. package/extensions/forms/Field/Number.js +44 -21
  771. package/extensions/forms/Field/Number.js.map +1 -1
  772. package/extensions/forms/Field/PhoneNumber.d.ts +7 -2
  773. package/extensions/forms/Field/PhoneNumber.js +43 -42
  774. package/extensions/forms/Field/PhoneNumber.js.map +1 -1
  775. package/extensions/forms/Field/PostalCodeAndCity.d.ts +1 -1
  776. package/extensions/forms/Field/PostalCodeAndCity.js.map +1 -1
  777. package/extensions/forms/Field/Selection.d.ts +6 -4
  778. package/extensions/forms/Field/Selection.js +87 -38
  779. package/extensions/forms/Field/Selection.js.map +1 -1
  780. package/extensions/forms/Field/String.d.ts +3 -3
  781. package/extensions/forms/Field/String.js +27 -13
  782. package/extensions/forms/Field/String.js.map +1 -1
  783. package/extensions/forms/Field/Toggle.js +11 -9
  784. package/extensions/forms/Field/Toggle.js.map +1 -1
  785. package/extensions/forms/Field/fields.scss +2 -2
  786. package/extensions/forms/Field/hooks/useField.d.ts +6 -8
  787. package/extensions/forms/Field/hooks/useField.js +34 -33
  788. package/extensions/forms/Field/hooks/useField.js.map +1 -1
  789. package/extensions/forms/Field/index.d.ts +2 -0
  790. package/extensions/forms/Field/index.js +3 -1
  791. package/extensions/forms/Field/index.js.map +1 -1
  792. package/extensions/forms/Field/style/dnb-array-selection.css +13 -0
  793. package/extensions/forms/Field/style/dnb-array-selection.min.css +1 -0
  794. package/extensions/forms/Field/style/dnb-array-selection.scss +15 -0
  795. package/extensions/forms/Field/style/dnb-country-code.css +12 -0
  796. package/extensions/forms/Field/style/dnb-country-code.min.css +1 -0
  797. package/extensions/forms/Field/style/dnb-country-code.scss +19 -0
  798. package/extensions/forms/Field/style/dnb-phone-number.css +3 -7
  799. package/extensions/forms/Field/style/dnb-phone-number.min.css +1 -1
  800. package/extensions/forms/Field/style/dnb-phone-number.scss +3 -8
  801. package/extensions/forms/Field/style/dnb-postal-code-and-city.css +5 -2
  802. package/extensions/forms/Field/style/dnb-postal-code-and-city.min.css +1 -1
  803. package/extensions/forms/Field/style/dnb-postal-code-and-city.scss +5 -1
  804. package/extensions/forms/Field/style/dnb-selection.css +5 -2
  805. package/extensions/forms/Field/style/dnb-selection.min.css +1 -1
  806. package/extensions/forms/Field/style/dnb-selection.scss +7 -1
  807. package/extensions/forms/Field/style/index.scss +2 -0
  808. package/extensions/forms/FieldBlock/FieldBlock.d.ts +3 -2
  809. package/extensions/forms/FieldBlock/FieldBlock.js +15 -10
  810. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  811. package/extensions/forms/FieldBlock/index.js.map +1 -1
  812. package/extensions/forms/FieldBlock/style/dnb-field-block.css +31 -8
  813. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  814. package/extensions/forms/FieldBlock/style/dnb-field-block.scss +46 -13
  815. package/extensions/forms/FieldGroup/index.js.map +1 -1
  816. package/extensions/forms/Layout/Card.js +2 -2
  817. package/extensions/forms/Layout/Card.js.map +1 -1
  818. package/extensions/forms/Layout/FlexContainer.d.ts +1 -0
  819. package/extensions/forms/Layout/FlexContainer.js +3 -2
  820. package/extensions/forms/Layout/FlexContainer.js.map +1 -1
  821. package/extensions/forms/Layout/FlexItem.d.ts +1 -0
  822. package/extensions/forms/Layout/FlexItem.js +2 -1
  823. package/extensions/forms/Layout/FlexItem.js.map +1 -1
  824. package/extensions/forms/Layout/style/dnb-card.css +3 -3
  825. package/extensions/forms/Layout/style/dnb-card.min.css +1 -1
  826. package/extensions/forms/Layout/style/dnb-card.scss +6 -4
  827. package/extensions/forms/Layout/style/dnb-flex-container.css +9 -0
  828. package/extensions/forms/Layout/style/dnb-flex-container.min.css +1 -1
  829. package/extensions/forms/Layout/style/dnb-flex-container.scss +14 -0
  830. package/extensions/forms/Layout/style/dnb-flex-item.css +9 -0
  831. package/extensions/forms/Layout/style/dnb-flex-item.min.css +1 -1
  832. package/extensions/forms/Layout/style/dnb-flex-item.scss +14 -0
  833. package/extensions/forms/StepsLayout/StepsLayout.js +1 -1
  834. package/extensions/forms/StepsLayout/StepsLayout.js.map +1 -1
  835. package/extensions/forms/StepsLayout/style/dnb-steps-layout.css +11 -5
  836. package/extensions/forms/StepsLayout/style/dnb-steps-layout.min.css +1 -1
  837. package/extensions/forms/StepsLayout/style/dnb-steps-layout.scss +10 -3
  838. package/extensions/forms/ValueBlock/index.js.map +1 -1
  839. package/extensions/forms/field-types.d.ts +7 -1
  840. package/extensions/forms/field-types.js.map +1 -1
  841. package/extensions/forms/style/dnb-forms.css +105 -29
  842. package/extensions/forms/style/dnb-forms.min.css +1 -1
  843. package/extensions/forms/style/index.d.ts +1 -0
  844. package/extensions/forms/style/index.js +1 -0
  845. package/extensions/forms/style/index.js.map +1 -0
  846. package/extensions/forms/utils/TestElement/style/dnb-test-element.css +2 -2
  847. package/extensions/forms/utils/TestElement/style/dnb-test-element.min.css +1 -1
  848. package/extensions/forms/utils/TestElement/style/dnb-test-element.scss +2 -2
  849. package/extensions/forms/utils/useWasChanged.d.ts +5 -0
  850. package/extensions/forms/utils/useWasChanged.js +56 -0
  851. package/extensions/forms/utils/useWasChanged.js.map +1 -0
  852. package/extensions/forms/variables.scss +3 -0
  853. package/extensions/lib.d.ts +1 -0
  854. package/extensions/payment-card/PaymentCard.js.map +1 -1
  855. package/extensions/payment-card/utils/backgrounds/ung.js +1 -1
  856. package/extensions/payment-card/utils/backgrounds/ung.js.map +1 -1
  857. package/extensions/payment-card/utils/backgrounds/youth.js +1 -1
  858. package/extensions/payment-card/utils/backgrounds/youth.js.map +1 -1
  859. package/fragments/drawer-list/DrawerList.js +1 -1
  860. package/fragments/drawer-list/DrawerList.js.map +1 -1
  861. package/fragments/drawer-list/DrawerListPortal.js +2 -2
  862. package/fragments/drawer-list/DrawerListPortal.js.map +1 -1
  863. package/fragments/drawer-list/style/dnb-drawer-list.scss +3 -1
  864. package/package.json +1 -1
  865. package/shared/Context.d.ts +2 -0
  866. package/shared/Context.js.map +1 -1
  867. package/shared/Eufemia.d.ts +1 -1
  868. package/shared/Eufemia.js +2 -2
  869. package/shared/Eufemia.js.map +1 -1
  870. package/shared/helpers/withCamelCaseProps.js.map +1 -1
  871. package/shared/helpers/withSnakeCaseProps.js.map +1 -1
  872. package/shared/libs/Shortcuts.js.map +1 -1
  873. package/shared/locales/en-GB.d.ts +1 -0
  874. package/shared/locales/en-GB.js +1 -0
  875. package/shared/locales/en-GB.js.map +1 -1
  876. package/shared/locales/en-US.d.ts +1 -0
  877. package/shared/locales/index.d.ts +2 -0
  878. package/shared/locales/nb-NO.d.ts +1 -0
  879. package/shared/locales/nb-NO.js +1 -0
  880. package/shared/locales/nb-NO.js.map +1 -1
  881. package/style/core/reset.scss +13 -3
  882. package/style/core/utilities.scss +3 -1
  883. package/style/dnb-ui-components.css +23 -18
  884. package/style/dnb-ui-components.min.css +1 -1
  885. package/style/dnb-ui-elements.css +6 -0
  886. package/style/dnb-ui-elements.min.css +1 -1
  887. package/style/dnb-ui-extensions.css +105 -29
  888. package/style/dnb-ui-extensions.min.css +1 -1
  889. package/style/themes/theme-eiendom/eiendom-theme-basis.css +6 -0
  890. package/style/themes/theme-eiendom/eiendom-theme-basis.min.css +1 -1
  891. package/style/themes/theme-eiendom/eiendom-theme-components.css +42 -24
  892. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +3 -1
  893. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +105 -29
  894. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  895. package/style/themes/theme-sbanken/customisations.scss +0 -8
  896. package/style/themes/theme-sbanken/properties.js +6 -6
  897. package/style/themes/theme-sbanken/properties.js.map +1 -1
  898. package/style/themes/theme-sbanken/properties.scss +6 -6
  899. package/style/themes/theme-sbanken/sbanken-theme-basis.css +27 -26
  900. package/style/themes/theme-sbanken/sbanken-theme-basis.min.css +1 -1
  901. package/style/themes/theme-sbanken/sbanken-theme-components.css +236 -245
  902. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -2
  903. package/style/themes/theme-sbanken/sbanken-theme-components.scss +4 -3
  904. package/style/themes/theme-sbanken/sbanken-theme-elements.css +21 -2
  905. package/style/themes/theme-sbanken/sbanken-theme-elements.min.css +1 -1
  906. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +105 -29
  907. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  908. package/style/themes/theme-ui/fonts.scss +8 -4
  909. package/style/themes/theme-ui/ui-theme-basis.css +6 -0
  910. package/style/themes/theme-ui/ui-theme-basis.min.css +1 -1
  911. package/style/themes/theme-ui/ui-theme-components.css +42 -24
  912. package/style/themes/theme-ui/ui-theme-components.min.css +4 -2
  913. package/style/themes/theme-ui/ui-theme-elements.css +6 -0
  914. package/style/themes/theme-ui/ui-theme-elements.min.css +1 -1
  915. package/style/themes/theme-ui/ui-theme-extensions.css +105 -29
  916. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  917. package/style/themes/theme-ui/ui-theme-tags.css +3 -0
  918. package/style/themes/theme-ui/ui-theme-tags.min.css +1 -1
  919. package/style/themes/theme-ui/ui-theme-tags.scss +9 -4
  920. package/umd/dnb-ui-basis.min.js +1 -1
  921. package/umd/dnb-ui-components.min.js +1 -1
  922. package/umd/dnb-ui-elements.min.js +1 -1
  923. package/umd/dnb-ui-extensions.min.js +6 -6
  924. package/umd/dnb-ui-lib.min.js +1 -1
@@ -1 +1 @@
1
- .dnb-forms-field-selection--width-large .dnb-dropdown__shell{width:336px}.dnb-forms-field-selection--width-medium .dnb-dropdown__shell{width:176px}
1
+ .dnb-forms-field-selection--width-large .dnb-dropdown__shell{width:21rem}.dnb-forms-field-selection--width-medium .dnb-dropdown__shell{width:11rem}.dnb-forms-field-selection--width-small .dnb-dropdown__shell{width:5rem}
@@ -1,4 +1,4 @@
1
- @import '../fields.scss';
1
+ @import '../../variables.scss';
2
2
 
3
3
  .dnb-forms-field-selection {
4
4
  &--width-large {
@@ -12,4 +12,10 @@
12
12
  width: $forms-field-width-medium;
13
13
  }
14
14
  }
15
+
16
+ &--width-small {
17
+ .dnb-dropdown__shell {
18
+ width: $forms-field-width-small;
19
+ }
20
+ }
15
21
  }
@@ -1,3 +1,5 @@
1
1
  @import './dnb-phone-number.scss';
2
2
  @import './dnb-postal-code-and-city.scss';
3
3
  @import './dnb-selection.scss';
4
+ @import './dnb-array-selection.scss';
5
+ @import './dnb-country-code.scss';
@@ -3,11 +3,12 @@ import type { ComponentProps } from '../component-types';
3
3
  import type { FieldProps } from '../field-types';
4
4
  export type Props = ComponentProps & Pick<FieldProps, 'layout' | 'label' | 'labelDescription' | 'labelSecondary' | 'info' | 'warning' | 'error'> & {
5
5
  forId?: string;
6
+ contentClassName?: string;
6
7
  children: React.ReactNode;
7
8
  /** Width of outer block element */
8
- width?: 'medium' | 'large';
9
+ width?: 'small' | 'medium' | 'large';
9
10
  /** Width of contents block, while label etc can be wider if space is available */
10
- contentsWidth?: 'medium' | 'large' | 'stretch';
11
+ contentsWidth?: 'small' | 'medium' | 'large' | 'stretch';
11
12
  };
12
13
  declare function FieldBlock(props: Props): import("react/jsx-runtime").JSX.Element;
13
14
  declare namespace FieldBlock {
@@ -18,16 +18,16 @@ function FieldBlock(props) {
18
18
  error,
19
19
  width,
20
20
  contentsWidth,
21
+ contentClassName,
21
22
  children
22
23
  } = props;
23
- const cn = classnames('dnb-forms-field-block', className, width !== undefined && `dnb-forms-field-block--width-${width}`);
24
+ const cn = classnames(`dnb-forms-field-block dnb-forms-field-block--layout-${layout}`, className, width !== undefined && `dnb-forms-field-block--width-${width}`);
24
25
  return React.createElement(Div, _extends({
25
26
  className: cn
26
27
  }, forwardSpaceProps(props)), labelDescription || labelSecondary ? React.createElement("div", {
27
- className: "dnb-forms-field-block__label-block"
28
+ className: 'dnb-forms-field-block__label'
28
29
  }, label || labelDescription ? React.createElement(FormLabel, {
29
30
  for_id: forId,
30
- label_direction: layout,
31
31
  space: {
32
32
  bottom: 'x-small'
33
33
  }
@@ -37,13 +37,14 @@ function FieldBlock(props) {
37
37
  className: "dnb-forms-field-block__label-secondary"
38
38
  }, labelSecondary)) : label && React.createElement(FormLabel, {
39
39
  for_id: forId,
40
- label_direction: layout,
41
40
  space: {
42
41
  bottom: 'x-small'
43
42
  }
44
43
  }, label), React.createElement("div", {
45
- className: 'dnb-forms-field-block__contents' + (contentsWidth !== undefined ? ` dnb-forms-field-block__contents--width-${contentsWidth}` : "")
46
- }, children), error && React.createElement(FormStatus, {
44
+ className: classnames('dnb-forms-field-block__contents', contentClassName, contentsWidth !== undefined && `dnb-forms-field-block__contents--width-${contentsWidth}`)
45
+ }, children), error && React.createElement("div", {
46
+ className: "dnb-forms-field-block__status"
47
+ }, React.createElement(FormStatus, {
47
48
  state: "error",
48
49
  id: forId ? `${forId}-form-status` : undefined,
49
50
  text: error === null || error === void 0 ? void 0 : error.message,
@@ -51,15 +52,19 @@ function FieldBlock(props) {
51
52
  space: {
52
53
  top: 'x-small'
53
54
  }
54
- }), warning && React.createElement(FormStatus, {
55
+ })), warning && React.createElement("div", {
56
+ className: "dnb-forms-field-block__status"
57
+ }, React.createElement(FormStatus, {
55
58
  state: "warn",
56
59
  id: forId ? `${forId}-form-status` : undefined,
57
- text: warning instanceof Error && warning.message || warning instanceof FormError && warning.message || (info === null || info === void 0 ? void 0 : info.toString()),
60
+ text: warning instanceof Error && warning.message || warning instanceof FormError && warning.message || (warning === null || warning === void 0 ? void 0 : warning.toString()),
58
61
  label: label,
59
62
  space: {
60
63
  top: 'x-small'
61
64
  }
62
- }), info && React.createElement(FormStatus, {
65
+ })), info && React.createElement("div", {
66
+ className: "dnb-forms-field-block__status"
67
+ }, React.createElement(FormStatus, {
63
68
  state: "info",
64
69
  id: forId ? `${forId}-form-status` : undefined,
65
70
  text: info instanceof Error && info.message || info instanceof FormError && info.message || (info === null || info === void 0 ? void 0 : info.toString()),
@@ -67,7 +72,7 @@ function FieldBlock(props) {
67
72
  space: {
68
73
  top: 'x-small'
69
74
  }
70
- }));
75
+ })));
71
76
  }
72
77
  FieldBlock._supportsEufemiaSpacingProps = true;
73
78
  export default FieldBlock;
@@ -1 +1 @@
1
- {"version":3,"file":"FieldBlock.js","names":["React","classnames","Div","Span","FormLabel","FormStatus","forwardSpaceProps","FormError","FieldBlock","props","className","forId","layout","label","labelDescription","labelSecondary","info","warning","error","width","contentsWidth","children","cn","undefined","createElement","_extends","for_id","label_direction","space","bottom","Fragment","state","id","text","message","top","Error","toString","_supportsEufemiaSpacingProps"],"sources":["../../../../../src/extensions/forms/FieldBlock/FieldBlock.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport { Div, Span } from '../../../elements'\nimport { FormLabel, FormStatus } from '../../../components'\nimport { forwardSpaceProps } from '../utils'\nimport type { ComponentProps } from '../component-types'\nimport { FormError } from '../types'\nimport type { FieldProps } from '../field-types'\n\nexport type Props = ComponentProps &\n Pick<\n FieldProps,\n | 'layout'\n | 'label'\n | 'labelDescription'\n | 'labelSecondary'\n | 'info'\n | 'warning'\n | 'error'\n > & {\n forId?: string\n children: React.ReactNode\n /** Width of outer block element */\n width?: 'medium' | 'large'\n /** Width of contents block, while label etc can be wider if space is available */\n contentsWidth?: 'medium' | 'large' | 'stretch'\n }\n\nfunction FieldBlock(props: Props) {\n const {\n className,\n forId,\n layout = 'vertical',\n label,\n labelDescription,\n labelSecondary,\n info,\n warning,\n error,\n width,\n contentsWidth,\n children,\n } = props\n\n const cn = classnames(\n 'dnb-forms-field-block',\n width !== undefined && `dnb-forms-field-block--width-${width}`,\n className\n )\n\n return (\n <Div className={cn} {...forwardSpaceProps(props)}>\n {labelDescription || labelSecondary ? (\n <div className=\"dnb-forms-field-block__label-block\">\n {label || labelDescription ? (\n <FormLabel\n for_id={forId}\n label_direction={layout}\n space={{ bottom: 'x-small' }}\n >\n {label}\n {labelDescription && (\n <span className=\"dnb-forms-field-block__label-description\">\n {labelDescription}\n </span>\n )}\n </FormLabel>\n ) : (\n <>&nbsp;</>\n )}\n {labelSecondary && (\n <Span className=\"dnb-forms-field-block__label-secondary\">\n {labelSecondary}\n </Span>\n )}\n </div>\n ) : (\n label && (\n <FormLabel\n for_id={forId}\n label_direction={layout}\n space={{ bottom: 'x-small' }}\n >\n {label}\n </FormLabel>\n )\n )}\n\n <div\n className={classnames(\n 'dnb-forms-field-block__contents',\n contentsWidth !== undefined &&\n `dnb-forms-field-block__contents--width-${contentsWidth}`\n )}\n >\n {children}\n </div>\n\n {error && (\n <FormStatus\n state=\"error\"\n id={forId ? `${forId}-form-status` : undefined}\n text={error?.message}\n label={label}\n space={{ top: 'x-small' }}\n />\n )}\n {warning && (\n <FormStatus\n state=\"warn\"\n id={forId ? `${forId}-form-status` : undefined}\n text={\n (warning instanceof Error && warning.message) ||\n (warning instanceof FormError && warning.message) ||\n info?.toString()\n }\n label={label}\n space={{ top: 'x-small' }}\n />\n )}\n {info && (\n <FormStatus\n state=\"info\"\n id={forId ? `${forId}-form-status` : undefined}\n text={\n (info instanceof Error && info.message) ||\n (info instanceof FormError && info.message) ||\n info?.toString()\n }\n label={label}\n space={{ top: 'x-small' }}\n />\n )}\n </Div>\n )\n}\n\nFieldBlock._supportsEufemiaSpacingProps = true\nexport default FieldBlock\n"],"mappings":"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"}
1
+ {"version":3,"file":"FieldBlock.js","names":["React","classnames","Div","Span","FormLabel","FormStatus","forwardSpaceProps","FormError","FieldBlock","props","className","forId","layout","label","labelDescription","labelSecondary","info","warning","error","width","contentsWidth","contentClassName","children","cn","undefined","createElement","_extends","for_id","space","bottom","Fragment","state","id","text","message","top","Error","toString","_supportsEufemiaSpacingProps"],"sources":["../../../../../src/extensions/forms/FieldBlock/FieldBlock.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport { Div, Span } from '../../../elements'\nimport { FormLabel, FormStatus } from '../../../components'\nimport { forwardSpaceProps } from '../utils'\nimport type { ComponentProps } from '../component-types'\nimport { FormError } from '../types'\nimport type { FieldProps } from '../field-types'\n\nexport type Props = ComponentProps &\n Pick<\n FieldProps,\n | 'layout'\n | 'label'\n | 'labelDescription'\n | 'labelSecondary'\n | 'info'\n | 'warning'\n | 'error'\n > & {\n forId?: string\n contentClassName?: string\n children: React.ReactNode\n /** Width of outer block element */\n width?: 'small' | 'medium' | 'large'\n /** Width of contents block, while label etc can be wider if space is available */\n contentsWidth?: 'small' | 'medium' | 'large' | 'stretch'\n }\n\nfunction FieldBlock(props: Props) {\n const {\n className,\n forId,\n layout = 'vertical',\n label,\n labelDescription,\n labelSecondary,\n info,\n warning,\n error,\n width,\n contentsWidth,\n contentClassName,\n children,\n } = props\n\n const cn = classnames(\n 'dnb-forms-field-block',\n `dnb-forms-field-block--layout-${layout}`,\n width !== undefined && `dnb-forms-field-block--width-${width}`,\n className\n )\n\n return (\n <Div className={cn} {...forwardSpaceProps(props)}>\n {labelDescription || labelSecondary ? (\n <div className={classnames('dnb-forms-field-block__label')}>\n {label || labelDescription ? (\n <FormLabel for_id={forId} space={{ bottom: 'x-small' }}>\n {label}\n {labelDescription && (\n <span className=\"dnb-forms-field-block__label-description\">\n {labelDescription}\n </span>\n )}\n </FormLabel>\n ) : (\n <>&nbsp;</>\n )}\n {labelSecondary && (\n <Span className=\"dnb-forms-field-block__label-secondary\">\n {labelSecondary}\n </Span>\n )}\n </div>\n ) : (\n label && (\n <FormLabel for_id={forId} space={{ bottom: 'x-small' }}>\n {label}\n </FormLabel>\n )\n )}\n\n <div\n className={classnames(\n 'dnb-forms-field-block__contents',\n contentsWidth !== undefined &&\n `dnb-forms-field-block__contents--width-${contentsWidth}`,\n contentClassName\n )}\n >\n {children}\n </div>\n\n {error && (\n <div className=\"dnb-forms-field-block__status\">\n <FormStatus\n state=\"error\"\n id={forId ? `${forId}-form-status` : undefined}\n text={error?.message}\n label={label}\n space={{ top: 'x-small' }}\n />\n </div>\n )}\n {warning && (\n <div className=\"dnb-forms-field-block__status\">\n <FormStatus\n state=\"warn\"\n id={forId ? `${forId}-form-status` : undefined}\n text={\n (warning instanceof Error && warning.message) ||\n (warning instanceof FormError && warning.message) ||\n warning?.toString()\n }\n label={label}\n space={{ top: 'x-small' }}\n />\n </div>\n )}\n {info && (\n <div className=\"dnb-forms-field-block__status\">\n <FormStatus\n state=\"info\"\n id={forId ? `${forId}-form-status` : undefined}\n text={\n (info instanceof Error && info.message) ||\n (info instanceof FormError && info.message) ||\n info?.toString()\n }\n label={label}\n space={{ top: 'x-small' }}\n />\n </div>\n )}\n </Div>\n )\n}\n\nFieldBlock._supportsEufemiaSpacingProps = true\nexport default FieldBlock\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["default"],"sources":["../../../../../src/extensions/forms/FieldBlock/index.ts"],"sourcesContent":["export { default } from './FieldBlock';\n"],"mappings":"AAAA,SAASA,OAAO,QAAS,cAAc"}
1
+ {"version":3,"file":"index.js","names":["default"],"sources":["../../../../../src/extensions/forms/FieldBlock/index.ts"],"sourcesContent":["export { default } from './FieldBlock'\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,cAAc"}
@@ -1,4 +1,24 @@
1
- .dnb-forms-field-block__label-block {
1
+ .dnb-forms-field-block--layout-vertical {
2
+ display: grid;
3
+ grid-template-columns: auto;
4
+ grid-template-areas: "label" "contents" "status";
5
+ }
6
+ .dnb-forms-field-block--layout-horizontal {
7
+ display: grid;
8
+ grid-template-columns: 11rem auto;
9
+ grid-template-areas: "label contents" "status status";
10
+ }
11
+ .dnb-forms-field-block--width-small {
12
+ width: 5rem;
13
+ }
14
+ .dnb-forms-field-block--width-medium {
15
+ width: 11rem;
16
+ }
17
+ .dnb-forms-field-block--width-large {
18
+ width: 21rem;
19
+ }
20
+ .dnb-forms-field-block__label {
21
+ grid-area: label;
2
22
  display: flex;
3
23
  flex-flow: row;
4
24
  justify-content: space-between;
@@ -13,18 +33,21 @@
13
33
  color: var(--color-black-55);
14
34
  font-size: var(--font-size-small);
15
35
  }
16
- .dnb-forms-field-block--width-large {
17
- width: 336px;
36
+ .dnb-forms-field-block__status {
37
+ grid-area: status;
18
38
  }
19
- .dnb-forms-field-block--width-medium {
20
- width: 176px;
39
+ .dnb-forms-field-block__contents {
40
+ grid-area: contents;
21
41
  }
22
42
  .dnb-forms-field-block__contents--width-stretch {
23
43
  width: 100%;
24
44
  }
25
- .dnb-forms-field-block__contents--width-large {
26
- width: 336px;
45
+ .dnb-forms-field-block__contents--width-small {
46
+ width: 5rem;
27
47
  }
28
48
  .dnb-forms-field-block__contents--width-medium {
29
- width: 176px;
49
+ width: 11rem;
50
+ }
51
+ .dnb-forms-field-block__contents--width-large {
52
+ width: 21rem;
30
53
  }
@@ -1 +1 @@
1
- .dnb-forms-field-block__label-block{align-items:center;display:flex;flex-flow:row;justify-content:space-between}.dnb-forms-field-block__label-description{margin-left:.3em}.dnb-forms-field-block__label-description,.dnb-forms-field-block__label-secondary{color:var(--color-black-55);font-size:var(--font-size-small)}.dnb-forms-field-block--width-large{width:336px}.dnb-forms-field-block--width-medium{width:176px}.dnb-forms-field-block__contents--width-stretch{width:100%}.dnb-forms-field-block__contents--width-large{width:336px}.dnb-forms-field-block__contents--width-medium{width:176px}
1
+ .dnb-forms-field-block--layout-vertical{display:grid;grid-template-areas:"label" "contents" "status";grid-template-columns:auto}.dnb-forms-field-block--layout-horizontal{display:grid;grid-template-areas:"label contents" "status status";grid-template-columns:11rem auto}.dnb-forms-field-block--width-small{width:5rem}.dnb-forms-field-block--width-medium{width:11rem}.dnb-forms-field-block--width-large{width:21rem}.dnb-forms-field-block__label{align-items:center;display:flex;flex-flow:row;grid-area:label;justify-content:space-between}.dnb-forms-field-block__label-description{margin-left:.3em}.dnb-forms-field-block__label-description,.dnb-forms-field-block__label-secondary{color:var(--color-black-55);font-size:var(--font-size-small)}.dnb-forms-field-block__status{grid-area:status}.dnb-forms-field-block__contents{grid-area:contents}.dnb-forms-field-block__contents--width-stretch{width:100%}.dnb-forms-field-block__contents--width-small{width:5rem}.dnb-forms-field-block__contents--width-medium{width:11rem}.dnb-forms-field-block__contents--width-large{width:21rem}
@@ -1,7 +1,40 @@
1
- @import '../../Field/fields.scss';
1
+ @import '../../variables.scss';
2
2
 
3
3
  .dnb-forms-field-block {
4
- &__label-block {
4
+ // Layout
5
+ &--layout-vertical {
6
+ display: grid;
7
+ grid-template-columns: auto;
8
+ grid-template-areas:
9
+ 'label'
10
+ 'contents'
11
+ 'status';
12
+ }
13
+
14
+ &--layout-horizontal {
15
+ display: grid;
16
+ grid-template-columns: $forms-field-width-medium auto;
17
+ grid-template-areas:
18
+ 'label contents'
19
+ 'status status';
20
+ }
21
+
22
+ // Width
23
+ &--width-small {
24
+ width: $forms-field-width-small;
25
+ }
26
+
27
+ &--width-medium {
28
+ width: $forms-field-width-medium;
29
+ }
30
+
31
+ &--width-large {
32
+ width: $forms-field-width-large;
33
+ }
34
+
35
+ // Elements
36
+ &__label {
37
+ grid-area: label;
5
38
  display: flex;
6
39
  flex-flow: row;
7
40
  justify-content: space-between;
@@ -19,27 +52,27 @@
19
52
  font-size: var(--font-size-small);
20
53
  }
21
54
 
22
- &--width-large {
23
- width: $forms-field-width-large;
24
- }
25
-
26
- &--width-medium {
27
- width: $forms-field-width-medium;
55
+ &__status {
56
+ grid-area: status;
28
57
  }
29
58
 
30
59
  &__contents {
60
+ grid-area: contents;
61
+
31
62
  &--width-stretch {
32
63
  width: 100%;
33
64
  }
34
65
 
35
- &--width-large {
36
- width: $forms-field-width-large;
66
+ &--width-small {
67
+ width: $forms-field-width-small;
37
68
  }
38
-
69
+
39
70
  &--width-medium {
40
71
  width: $forms-field-width-medium;
41
72
  }
42
- }
43
73
 
44
-
74
+ &--width-large {
75
+ width: $forms-field-width-large;
76
+ }
77
+ }
45
78
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["default"],"sources":["../../../../../src/extensions/forms/FieldGroup/index.ts"],"sourcesContent":["export { default } from './FieldGroup';\nexport * from './FieldGroup';\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,cAAc;AACtC,cAAc,cAAc"}
1
+ {"version":3,"file":"index.js","names":["default"],"sources":["../../../../../src/extensions/forms/FieldGroup/index.ts"],"sourcesContent":["export { default } from './FieldGroup'\nexport * from './FieldGroup'\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,cAAc;AACtC,cAAc,cAAc"}
@@ -28,9 +28,9 @@ function Card(props) {
28
28
  spacing: spacing ?? 'small'
29
29
  }, forwardSpaceProps(props)), children);
30
30
  }
31
- return React.createElement(FlexItem, {
31
+ return React.createElement(FlexItem, _extends({
32
32
  className: classnames('dnb-forms-card', className)
33
- }, children);
33
+ }, forwardSpaceProps(props)), children);
34
34
  }
35
35
  Card._supportsEufemiaSpacingProps = true;
36
36
  export default Card;
@@ -1 +1 @@
1
- {"version":3,"file":"Card.js","names":["React","classnames","forwardSpaceProps","FlexContainer","FlexItem","Card","props","className","stack","direction","spacing","children","createElement","_extends","divider","_supportsEufemiaSpacingProps"],"sources":["../../../../../src/extensions/forms/Layout/Card.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport { forwardSpaceProps } from '../utils'\nimport type { ComponentProps } from '../component-types'\nimport FlexContainer, {\n Props as FlexContainerProps,\n} from './FlexContainer'\nimport FlexItem from './FlexItem'\n\nexport type Props = ComponentProps & {\n stack?: boolean\n direction?: FlexContainerProps['direction']\n spacing?: FlexContainerProps['spacing']\n children: React.ReactNode\n}\n\nfunction Card(props: Props) {\n const { className, stack, direction, spacing, children } = props\n\n if (stack) {\n return (\n <FlexContainer\n className={classnames('dnb-forms-card', className)}\n direction=\"column\"\n divider=\"line\"\n spacing={spacing ?? 'medium'}\n {...forwardSpaceProps(props)}\n >\n {children}\n </FlexContainer>\n )\n }\n\n if (direction || spacing) {\n return (\n <FlexContainer\n className={classnames('dnb-forms-card', className)}\n direction={direction ?? 'column'}\n divider=\"space\"\n spacing={spacing ?? 'small'}\n {...forwardSpaceProps(props)}\n >\n {children}\n </FlexContainer>\n )\n }\n\n return (\n <FlexItem className={classnames('dnb-forms-card', className)}>\n {children}\n </FlexItem>\n )\n}\n\nCard._supportsEufemiaSpacingProps = true\nexport default Card\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,iBAAiB,QAAQ,UAAU;AAE5C,OAAOC,aAAa,MAEb,iBAAiB;AACxB,OAAOC,QAAQ,MAAM,YAAY;AASjC,SAASC,IAAIA,CAACC,KAAY,EAAE;EAC1B,MAAM;IAAEC,SAAS;IAAEC,KAAK;IAAEC,SAAS;IAAEC,OAAO;IAAEC;EAAS,CAAC,GAAGL,KAAK;EAEhE,IAAIE,KAAK,EAAE;IACT,OACER,KAAA,CAAAY,aAAA,CAACT,aAAa,EAAAU,QAAA;MACZN,SAAS,EAAEN,UAAU,CAAC,gBAAgB,EAAEM,SAAS,CAAE;MACnDE,SAAS,EAAC,QAAQ;MAClBK,OAAO,EAAC,MAAM;MACdJ,OAAO,EAAEA,OAAO,IAAI;IAAS,GACzBR,iBAAiB,CAACI,KAAK,CAAC,GAE3BK,QACY,CAAC;EAEpB;EAEA,IAAIF,SAAS,IAAIC,OAAO,EAAE;IACxB,OACEV,KAAA,CAAAY,aAAA,CAACT,aAAa,EAAAU,QAAA;MACZN,SAAS,EAAEN,UAAU,CAAC,gBAAgB,EAAEM,SAAS,CAAE;MACnDE,SAAS,EAAEA,SAAS,IAAI,QAAS;MACjCK,OAAO,EAAC,OAAO;MACfJ,OAAO,EAAEA,OAAO,IAAI;IAAQ,GACxBR,iBAAiB,CAACI,KAAK,CAAC,GAE3BK,QACY,CAAC;EAEpB;EAEA,OACEX,KAAA,CAAAY,aAAA,CAACR,QAAQ;IAACG,SAAS,EAAEN,UAAU,CAAC,gBAAgB,EAAEM,SAAS;EAAE,GAC1DI,QACO,CAAC;AAEf;AAEAN,IAAI,CAACU,4BAA4B,GAAG,IAAI;AACxC,eAAeV,IAAI"}
1
+ {"version":3,"file":"Card.js","names":["React","classnames","forwardSpaceProps","FlexContainer","FlexItem","Card","props","className","stack","direction","spacing","children","createElement","_extends","divider","_supportsEufemiaSpacingProps"],"sources":["../../../../../src/extensions/forms/Layout/Card.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport { forwardSpaceProps } from '../utils'\nimport type { ComponentProps } from '../component-types'\nimport FlexContainer, {\n Props as FlexContainerProps,\n} from './FlexContainer'\nimport FlexItem from './FlexItem'\n\nexport type Props = ComponentProps & {\n stack?: boolean\n direction?: FlexContainerProps['direction']\n spacing?: FlexContainerProps['spacing']\n children: React.ReactNode\n}\n\nfunction Card(props: Props) {\n const { className, stack, direction, spacing, children } = props\n\n if (stack) {\n return (\n <FlexContainer\n className={classnames('dnb-forms-card', className)}\n direction=\"column\"\n divider=\"line\"\n spacing={spacing ?? 'medium'}\n {...forwardSpaceProps(props)}\n >\n {children}\n </FlexContainer>\n )\n }\n\n if (direction || spacing) {\n return (\n <FlexContainer\n className={classnames('dnb-forms-card', className)}\n direction={direction ?? 'column'}\n divider=\"space\"\n spacing={spacing ?? 'small'}\n {...forwardSpaceProps(props)}\n >\n {children}\n </FlexContainer>\n )\n }\n\n return (\n <FlexItem\n className={classnames('dnb-forms-card', className)}\n {...forwardSpaceProps(props)}\n >\n {children}\n </FlexItem>\n )\n}\n\nCard._supportsEufemiaSpacingProps = true\nexport default Card\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,iBAAiB,QAAQ,UAAU;AAE5C,OAAOC,aAAa,MAEb,iBAAiB;AACxB,OAAOC,QAAQ,MAAM,YAAY;AASjC,SAASC,IAAIA,CAACC,KAAY,EAAE;EAC1B,MAAM;IAAEC,SAAS;IAAEC,KAAK;IAAEC,SAAS;IAAEC,OAAO;IAAEC;EAAS,CAAC,GAAGL,KAAK;EAEhE,IAAIE,KAAK,EAAE;IACT,OACER,KAAA,CAAAY,aAAA,CAACT,aAAa,EAAAU,QAAA;MACZN,SAAS,EAAEN,UAAU,CAAC,gBAAgB,EAAEM,SAAS,CAAE;MACnDE,SAAS,EAAC,QAAQ;MAClBK,OAAO,EAAC,MAAM;MACdJ,OAAO,EAAEA,OAAO,IAAI;IAAS,GACzBR,iBAAiB,CAACI,KAAK,CAAC,GAE3BK,QACY,CAAC;EAEpB;EAEA,IAAIF,SAAS,IAAIC,OAAO,EAAE;IACxB,OACEV,KAAA,CAAAY,aAAA,CAACT,aAAa,EAAAU,QAAA;MACZN,SAAS,EAAEN,UAAU,CAAC,gBAAgB,EAAEM,SAAS,CAAE;MACnDE,SAAS,EAAEA,SAAS,IAAI,QAAS;MACjCK,OAAO,EAAC,OAAO;MACfJ,OAAO,EAAEA,OAAO,IAAI;IAAQ,GACxBR,iBAAiB,CAACI,KAAK,CAAC,GAE3BK,QACY,CAAC;EAEpB;EAEA,OACEX,KAAA,CAAAY,aAAA,CAACR,QAAQ,EAAAS,QAAA;IACPN,SAAS,EAAEN,UAAU,CAAC,gBAAgB,EAAEM,SAAS;EAAE,GAC/CL,iBAAiB,CAACI,KAAK,CAAC,GAE3BK,QACO,CAAC;AAEf;AAEAN,IAAI,CAACU,4BAA4B,GAAG,IAAI;AACxC,eAAeV,IAAI"}
@@ -14,6 +14,7 @@ export type Props = ComponentProps & {
14
14
  divider?: 'space' | 'line';
15
15
  /** Spacing between items inside */
16
16
  spacing?: false | 'xx-small' | 'x-small' | 'small' | 'medium' | 'large' | 'x-large' | 'xx-large';
17
+ width?: 'small' | 'medium' | 'large';
17
18
  children: React.ReactNode;
18
19
  };
19
20
  declare function FlexContainer(props: Props): import("react/jsx-runtime").JSX.Element;
@@ -45,9 +45,10 @@ function FlexContainer(props) {
45
45
  justify = 'flex-start',
46
46
  align = 'stretch',
47
47
  divider = 'space',
48
- spacing = 'small'
48
+ spacing = 'small',
49
+ width
49
50
  } = props;
50
- const cn = classnames('dnb-forms-flex-container', className, direction && `dnb-forms-flex-container--direction-${direction}`, justify && `dnb-forms-flex-container--justify-${justify}`, align && `dnb-forms-flex-container--align-${align}`, wrap && `dnb-forms-flex-container--wrap`, divider && `dnb-forms-flex-container--divider-${divider}`, spacing && `dnb-forms-flex-container--spacing-${spacing}`);
51
+ const cn = classnames('dnb-forms-flex-container', className, direction && `dnb-forms-flex-container--direction-${direction}`, justify && `dnb-forms-flex-container--justify-${justify}`, align && `dnb-forms-flex-container--align-${align}`, wrap && `dnb-forms-flex-container--wrap`, divider && `dnb-forms-flex-container--divider-${divider}`, spacing && `dnb-forms-flex-container--spacing-${spacing}`, width && `dnb-forms-flex-container--width-${width}`);
51
52
  const childrenArray = React.Children.toArray(children);
52
53
  return React.createElement(Div, _extends({
53
54
  className: cn
@@ -1 +1 @@
1
- {"version":3,"file":"FlexContainer.js","names":["React","classnames","Space","Div","EufemiaElements","forwardSpaceProps","MainHeading","SubHeading","isHeadingElement","element","type","getSpaceTop","_element$props","_element$props2","isValidElement","props","top","space","undefined","getSpaceBottom","_element$props3","_element$props4","bottom","isEufemiaElement","Object","values","some","eufemiaElement","isSpacePropsComponent","_element$type","renderWithSpacing","takesSpaceProps","cloneElement","createElement","FlexContainer","className","children","direction","wrap","justify","align","divider","spacing","cn","childrenArray","Children","toArray","_extends","map","child","i","isFirst","previousChild","currentIsHeading","previousWasHeading","spaceAboveLine","Fragment","key","_hr","_supportsEufemiaSpacingProps"],"sources":["../../../../../src/extensions/forms/Layout/FlexContainer.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport { Space } from '../../../components'\nimport { Div } from '../../../elements'\nimport * as EufemiaElements from '../../../elements'\nimport { SpaceType } from '../../../components/space/types'\nimport { forwardSpaceProps } from '../utils'\nimport type { ComponentProps } from '../component-types'\nimport MainHeading from './MainHeading'\nimport SubHeading from './SubHeading'\n\nexport function isHeadingElement(element): boolean {\n return element.type === MainHeading || element.type === SubHeading\n}\n\nconst getSpaceTop = (\n element: React.ReactChild | React.ReactFragment | React.ReactPortal\n): SpaceType | undefined => {\n if (!React.isValidElement(element)) {\n return\n }\n return (\n element.props?.top ??\n (typeof element.props?.space === 'object'\n ? element.props.space.top\n : undefined)\n )\n}\n\nconst getSpaceBottom = (\n element: React.ReactChild | React.ReactFragment | React.ReactPortal\n): SpaceType | undefined => {\n if (!React.isValidElement(element)) {\n return\n }\n return (\n element.props?.bottom ??\n (typeof element.props?.space === 'object'\n ? element.props.space.bottom\n : undefined)\n )\n}\n\nexport const isEufemiaElement = (element): boolean => {\n return Object.values(EufemiaElements).some(\n (eufemiaElement) => element?.type === eufemiaElement\n )\n}\n\n/**\n * Is the requested element a component that can receive Eufemia space props (space, top, bottom, left and right)?\n */\nexport const isSpacePropsComponent = (\n element: React.ReactNode\n): boolean => {\n return (\n (React.isValidElement(element) &&\n element?.type?.['_supportsEufemiaSpacingProps'] === true) ||\n isEufemiaElement(element)\n )\n}\n\nconst renderWithSpacing = (element: React.ReactNode, props) => {\n const takesSpaceProps = isSpacePropsComponent(element)\n\n return takesSpaceProps ? (\n React.cloneElement(element as React.ReactElement<unknown>, props)\n ) : (\n <Div {...props}>{element}</Div>\n )\n}\n\nexport type Props = ComponentProps & {\n direction?: 'row' | 'column'\n wrap?: boolean\n justify?:\n | 'flex-start'\n | 'flex-end'\n | 'center'\n | 'space-between'\n | 'space-around'\n | 'space-evenly'\n align?: 'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline'\n divider?: 'space' | 'line'\n /** Spacing between items inside */\n spacing?:\n | false\n | 'xx-small'\n | 'x-small'\n | 'small'\n | 'medium'\n | 'large'\n | 'x-large'\n | 'xx-large'\n children: React.ReactNode\n}\n\nfunction FlexContainer(props: Props) {\n const {\n className,\n children,\n direction = 'column',\n wrap = false,\n justify = 'flex-start',\n align = 'stretch',\n divider = 'space',\n spacing = 'small',\n } = props\n\n const cn = classnames(\n 'dnb-forms-flex-container',\n direction && `dnb-forms-flex-container--direction-${direction}`,\n justify && `dnb-forms-flex-container--justify-${justify}`,\n align && `dnb-forms-flex-container--align-${align}`,\n wrap && `dnb-forms-flex-container--wrap`,\n divider && `dnb-forms-flex-container--divider-${divider}`,\n spacing && `dnb-forms-flex-container--spacing-${spacing}`,\n className\n )\n const childrenArray = React.Children.toArray(children)\n\n return (\n <Div className={cn} {...forwardSpaceProps(props)}>\n {direction === 'column'\n ? childrenArray.map((child, i) => {\n // Set spacing on child components by props (instead of CSS) to be able to dynamically override by props on each child. The default\n // is the spacing-props that controls space between children. Then override with props sent to the children, including both top\n // and bottom when th\n const isFirst = i === 0\n const previousChild = childrenArray?.[i - 1]\n const currentIsHeading = isHeadingElement(child)\n const previousWasHeading =\n i > 0 && isHeadingElement(previousChild)\n\n // Always set spacing between elements in the column layout on the top props, and 0 on bottom, to avoid\n // having to divide spacing between both with smaller values.\n const bottom = 0\n\n if (\n divider === 'line' &&\n // No line above first element\n !isFirst &&\n // No line above/below headings\n !previousWasHeading &&\n !currentIsHeading\n ) {\n const spaceAboveLine =\n getSpaceBottom(previousChild) ?? spacing\n const top = getSpaceTop(child) ?? spacing\n\n return (\n <React.Fragment key={`element-${i}`}>\n <Space top={spaceAboveLine} />\n <hr className=\"dnb-forms-flex-container__hr\" />\n {renderWithSpacing(child, {\n space: { top, bottom },\n top,\n bottom,\n })}\n </React.Fragment>\n )\n }\n\n const top =\n // No space above first element.\n isFirst\n ? 0\n : // Since top space of current and bottom space of previous component is the same\n getSpaceTop(child) ??\n getSpaceBottom(previousChild) ??\n spacing\n\n return renderWithSpacing(child, {\n key: `element-${i}`,\n space: { top, bottom },\n top,\n bottom,\n })\n })\n : // TODO: Consider doing the same with spacing between horizontal items (direction = row) as vertical\n children}\n </Div>\n )\n}\n\nFlexContainer._supportsEufemiaSpacingProps = true\nexport default FlexContainer\n"],"mappings":"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"}
1
+ {"version":3,"file":"FlexContainer.js","names":["React","classnames","Space","Div","EufemiaElements","forwardSpaceProps","MainHeading","SubHeading","isHeadingElement","element","type","getSpaceTop","_element$props","_element$props2","isValidElement","props","top","space","undefined","getSpaceBottom","_element$props3","_element$props4","bottom","isEufemiaElement","Object","values","some","eufemiaElement","isSpacePropsComponent","_element$type","renderWithSpacing","takesSpaceProps","cloneElement","createElement","FlexContainer","className","children","direction","wrap","justify","align","divider","spacing","width","cn","childrenArray","Children","toArray","_extends","map","child","i","isFirst","previousChild","currentIsHeading","previousWasHeading","spaceAboveLine","Fragment","key","_hr","_supportsEufemiaSpacingProps"],"sources":["../../../../../src/extensions/forms/Layout/FlexContainer.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport { Space } from '../../../components'\nimport { Div } from '../../../elements'\nimport * as EufemiaElements from '../../../elements'\nimport { SpaceType } from '../../../components/space/types'\nimport { forwardSpaceProps } from '../utils'\nimport type { ComponentProps } from '../component-types'\nimport MainHeading from './MainHeading'\nimport SubHeading from './SubHeading'\n\nexport function isHeadingElement(element): boolean {\n return element.type === MainHeading || element.type === SubHeading\n}\n\nconst getSpaceTop = (\n element: React.ReactChild | React.ReactFragment | React.ReactPortal\n): SpaceType | undefined => {\n if (!React.isValidElement(element)) {\n return\n }\n return (\n element.props?.top ??\n (typeof element.props?.space === 'object'\n ? element.props.space.top\n : undefined)\n )\n}\n\nconst getSpaceBottom = (\n element: React.ReactChild | React.ReactFragment | React.ReactPortal\n): SpaceType | undefined => {\n if (!React.isValidElement(element)) {\n return\n }\n return (\n element.props?.bottom ??\n (typeof element.props?.space === 'object'\n ? element.props.space.bottom\n : undefined)\n )\n}\n\nexport const isEufemiaElement = (element): boolean => {\n return Object.values(EufemiaElements).some(\n (eufemiaElement) => element?.type === eufemiaElement\n )\n}\n\n/**\n * Is the requested element a component that can receive Eufemia space props (space, top, bottom, left and right)?\n */\nexport const isSpacePropsComponent = (\n element: React.ReactNode\n): boolean => {\n return (\n (React.isValidElement(element) &&\n element?.type?.['_supportsEufemiaSpacingProps'] === true) ||\n isEufemiaElement(element)\n )\n}\n\nconst renderWithSpacing = (element: React.ReactNode, props) => {\n const takesSpaceProps = isSpacePropsComponent(element)\n\n return takesSpaceProps ? (\n React.cloneElement(element as React.ReactElement<unknown>, props)\n ) : (\n <Div {...props}>{element}</Div>\n )\n}\n\nexport type Props = ComponentProps & {\n direction?: 'row' | 'column'\n wrap?: boolean\n justify?:\n | 'flex-start'\n | 'flex-end'\n | 'center'\n | 'space-between'\n | 'space-around'\n | 'space-evenly'\n align?: 'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline'\n divider?: 'space' | 'line'\n /** Spacing between items inside */\n spacing?:\n | false\n | 'xx-small'\n | 'x-small'\n | 'small'\n | 'medium'\n | 'large'\n | 'x-large'\n | 'xx-large'\n width?: 'small' | 'medium' | 'large'\n children: React.ReactNode\n}\n\nfunction FlexContainer(props: Props) {\n const {\n className,\n children,\n direction = 'column',\n wrap = false,\n justify = 'flex-start',\n align = 'stretch',\n divider = 'space',\n spacing = 'small',\n width,\n } = props\n\n const cn = classnames(\n 'dnb-forms-flex-container',\n direction && `dnb-forms-flex-container--direction-${direction}`,\n justify && `dnb-forms-flex-container--justify-${justify}`,\n align && `dnb-forms-flex-container--align-${align}`,\n wrap && `dnb-forms-flex-container--wrap`,\n divider && `dnb-forms-flex-container--divider-${divider}`,\n spacing && `dnb-forms-flex-container--spacing-${spacing}`,\n width && `dnb-forms-flex-container--width-${width}`,\n className\n )\n const childrenArray = React.Children.toArray(children)\n\n return (\n <Div className={cn} {...forwardSpaceProps(props)}>\n {direction === 'column'\n ? childrenArray.map((child, i) => {\n // Set spacing on child components by props (instead of CSS) to be able to dynamically override by props on each child. The default\n // is the spacing-props that controls space between children. Then override with props sent to the children, including both top\n // and bottom when th\n const isFirst = i === 0\n const previousChild = childrenArray?.[i - 1]\n const currentIsHeading = isHeadingElement(child)\n const previousWasHeading =\n i > 0 && isHeadingElement(previousChild)\n\n // Always set spacing between elements in the column layout on the top props, and 0 on bottom, to avoid\n // having to divide spacing between both with smaller values.\n const bottom = 0\n\n if (\n divider === 'line' &&\n // No line above first element\n !isFirst &&\n // No line above/below headings\n !previousWasHeading &&\n !currentIsHeading\n ) {\n const spaceAboveLine =\n getSpaceBottom(previousChild) ?? spacing\n const top = getSpaceTop(child) ?? spacing\n\n return (\n <React.Fragment key={`element-${i}`}>\n <Space top={spaceAboveLine} />\n <hr className=\"dnb-forms-flex-container__hr\" />\n {renderWithSpacing(child, {\n space: { top, bottom },\n top,\n bottom,\n })}\n </React.Fragment>\n )\n }\n\n const top =\n // No space above first element.\n isFirst\n ? 0\n : // Since top space of current and bottom space of previous component is the same\n getSpaceTop(child) ??\n getSpaceBottom(previousChild) ??\n spacing\n\n return renderWithSpacing(child, {\n key: `element-${i}`,\n space: { top, bottom },\n top,\n bottom,\n })\n })\n : // TODO: Consider doing the same with spacing between horizontal items (direction = row) as vertical\n children}\n </Div>\n )\n}\n\nFlexContainer._supportsEufemiaSpacingProps = true\nexport default FlexContainer\n"],"mappings":"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"}
@@ -3,6 +3,7 @@ import type { ComponentProps } from '../component-types';
3
3
  export type Props = ComponentProps & {
4
4
  grow?: boolean;
5
5
  shrink?: boolean;
6
+ width?: 'small' | 'medium' | 'large';
6
7
  children: React.ReactNode;
7
8
  };
8
9
  declare function FlexItem(props: Props): import("react/jsx-runtime").JSX.Element;
@@ -8,9 +8,10 @@ function FlexItem(props) {
8
8
  className,
9
9
  grow,
10
10
  shrink,
11
+ width,
11
12
  children
12
13
  } = props;
13
- const cn = classnames('dnb-forms-flex-item', className, grow && 'dnb-forms-flex-item--grow', shrink && 'dnb-forms-flex-item--shrink');
14
+ const cn = classnames('dnb-forms-flex-item', className, grow && 'dnb-forms-flex-item--grow', shrink && 'dnb-forms-flex-item--shrink', width && `dnb-forms-flex-item--width-${width}`);
14
15
  return React.createElement(Div, _extends({
15
16
  className: cn
16
17
  }, forwardSpaceProps(props)), children);
@@ -1 +1 @@
1
- {"version":3,"file":"FlexItem.js","names":["React","classnames","Div","forwardSpaceProps","FlexItem","props","className","grow","shrink","children","cn","createElement","_extends","_supportsEufemiaSpacingProps"],"sources":["../../../../../src/extensions/forms/Layout/FlexItem.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport { Div } from '../../../elements'\nimport type { ComponentProps } from '../component-types'\nimport { forwardSpaceProps } from '../utils'\n\nexport type Props = ComponentProps & {\n grow?: boolean\n shrink?: boolean\n children: React.ReactNode\n}\n\nfunction FlexItem(props: Props) {\n const { className, grow, shrink, children } = props\n const cn = classnames(\n 'dnb-forms-flex-item',\n grow && 'dnb-forms-flex-item--grow',\n shrink && 'dnb-forms-flex-item--shrink',\n className\n )\n\n return (\n <Div className={cn} {...forwardSpaceProps(props)}>\n {children}\n </Div>\n )\n}\n\nFlexItem._supportsEufemiaSpacingProps = true\nexport default FlexItem\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,GAAG,QAAQ,mBAAmB;AAEvC,SAASC,iBAAiB,QAAQ,UAAU;AAQ5C,SAASC,QAAQA,CAACC,KAAY,EAAE;EAC9B,MAAM;IAAEC,SAAS;IAAEC,IAAI;IAAEC,MAAM;IAAEC;EAAS,CAAC,GAAGJ,KAAK;EACnD,MAAMK,EAAE,GAAGT,UAAU,CACnB,qBAAqB,EAGrBK,SAAS,EAFTC,IAAI,IAAI,2BAA2B,EACnCC,MAAM,IAAI,6BAEZ,CAAC;EAED,OACER,KAAA,CAAAW,aAAA,CAACT,GAAG,EAAAU,QAAA;IAACN,SAAS,EAAEI;EAAG,GAAKP,iBAAiB,CAACE,KAAK,CAAC,GAC7CI,QACE,CAAC;AAEV;AAEAL,QAAQ,CAACS,4BAA4B,GAAG,IAAI;AAC5C,eAAeT,QAAQ"}
1
+ {"version":3,"file":"FlexItem.js","names":["React","classnames","Div","forwardSpaceProps","FlexItem","props","className","grow","shrink","width","children","cn","createElement","_extends","_supportsEufemiaSpacingProps"],"sources":["../../../../../src/extensions/forms/Layout/FlexItem.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport { Div } from '../../../elements'\nimport type { ComponentProps } from '../component-types'\nimport { forwardSpaceProps } from '../utils'\n\nexport type Props = ComponentProps & {\n grow?: boolean\n shrink?: boolean\n width?: 'small' | 'medium' | 'large'\n children: React.ReactNode\n}\n\nfunction FlexItem(props: Props) {\n const { className, grow, shrink, width, children } = props\n const cn = classnames(\n 'dnb-forms-flex-item',\n grow && 'dnb-forms-flex-item--grow',\n shrink && 'dnb-forms-flex-item--shrink',\n width && `dnb-forms-flex-item--width-${width}`,\n className\n )\n\n return (\n <Div className={cn} {...forwardSpaceProps(props)}>\n {children}\n </Div>\n )\n}\n\nFlexItem._supportsEufemiaSpacingProps = true\nexport default FlexItem\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU,MAAM,YAAY;AACnC,SAASC,GAAG,QAAQ,mBAAmB;AAEvC,SAASC,iBAAiB,QAAQ,UAAU;AAS5C,SAASC,QAAQA,CAACC,KAAY,EAAE;EAC9B,MAAM;IAAEC,SAAS;IAAEC,IAAI;IAAEC,MAAM;IAAEC,KAAK;IAAEC;EAAS,CAAC,GAAGL,KAAK;EAC1D,MAAMM,EAAE,GAAGV,UAAU,CACnB,qBAAqB,EAIrBK,SAAS,EAHTC,IAAI,IAAI,2BAA2B,EACnCC,MAAM,IAAI,6BAA6B,EACvCC,KAAK,IAAK,8BAA6BA,KAAM,EAE/C,CAAC;EAED,OACET,KAAA,CAAAY,aAAA,CAACV,GAAG,EAAAW,QAAA;IAACP,SAAS,EAAEK;EAAG,GAAKR,iBAAiB,CAACE,KAAK,CAAC,GAC7CK,QACE,CAAC;AAEV;AAEAN,QAAQ,CAACU,4BAA4B,GAAG,IAAI;AAC5C,eAAeV,QAAQ"}
@@ -1,8 +1,8 @@
1
1
  .dnb-forms-card {
2
- background-color: var(--color-white);
3
- border: 4px solid #F2F2F5;
4
- border-radius: 0.5rem;
5
2
  padding: var(--spacing-medium) var(--spacing-medium) var(--spacing-large) var(--spacing-medium);
3
+ background-color: var(--color-white);
4
+ border: 0.25rem solid var(--color-pistachio);
5
+ border-radius: 0.75rem;
6
6
  }
7
7
  .dnb-forms-card__heading {
8
8
  font-size: var(--font-size-basis);
@@ -1 +1 @@
1
- .dnb-forms-card{background-color:var(--color-white);border:4px solid #f2f2f5;border-radius:.5rem;padding:var(--spacing-medium) var(--spacing-medium) var(--spacing-large) var(--spacing-medium)}.dnb-forms-card__heading{font-size:var(--font-size-basis);font-weight:var(--font-weight-medium)}.dnb-forms-card+.dnb-forms-card__heading{margin-top:var(--spacing-small)}
1
+ .dnb-forms-card{background-color:var(--color-white);border:.25rem solid var(--color-pistachio);border-radius:.75rem;padding:var(--spacing-medium) var(--spacing-medium) var(--spacing-large) var(--spacing-medium)}.dnb-forms-card__heading{font-size:var(--font-size-basis);font-weight:var(--font-weight-medium)}.dnb-forms-card+.dnb-forms-card__heading{margin-top:var(--spacing-small)}
@@ -1,9 +1,11 @@
1
1
  .dnb-forms-card {
2
+ padding: var(--spacing-medium) var(--spacing-medium) var(--spacing-large)
3
+ var(--spacing-medium);
4
+
2
5
  background-color: var(--color-white);
3
- border: 4px solid #F2F2F5;
4
- border-radius: 0.5rem;
5
- padding: var(--spacing-medium) var(--spacing-medium) var(--spacing-large) var(--spacing-medium);
6
-
6
+ border: 0.25rem solid var(--color-pistachio);
7
+ border-radius: 0.75rem;
8
+
7
9
  &__heading {
8
10
  font-size: var(--font-size-basis);
9
11
  font-weight: var(--font-weight-medium);
@@ -60,4 +60,13 @@
60
60
  grid-column-gap: var(--spacing-medium);
61
61
  -moz-column-gap: var(--spacing-medium);
62
62
  column-gap: var(--spacing-medium);
63
+ }
64
+ .dnb-forms-flex-container--width-small {
65
+ width: 5rem;
66
+ }
67
+ .dnb-forms-flex-container--width-medium {
68
+ width: 11rem;
69
+ }
70
+ .dnb-forms-flex-container--width-large {
71
+ width: 21rem;
63
72
  }
@@ -1 +1 @@
1
- .dnb-forms-flex-container{display:flex}.dnb-forms-flex-container--direction-row{flex-direction:row}.dnb-forms-flex-container--direction-column{flex-direction:column}.dnb-forms-flex-container--justify-flex-start{justify-content:flex-start}.dnb-forms-flex-container--justify-flex-end{justify-content:flex-end}.dnb-forms-flex-container--justify-center{justify-content:center}.dnb-forms-flex-container--justify-space-between{justify-content:space-between}.dnb-forms-flex-container--justify-space-around{justify-content:space-around}.dnb-forms-flex-container--justify-space-evenly{justify-content:space-evenly}.dnb-forms-flex-container--align-flex-start{align-items:flex-start}.dnb-forms-flex-container--align-flex-end{align-items:flex-end}.dnb-forms-flex-container--align-center{align-items:center}.dnb-forms-flex-container--align-stretch{align-items:stretch}.dnb-forms-flex-container--align-baseline{align-items:baseline}.dnb-forms-flex-container--wrap{flex-wrap:wrap}.dnb-forms-flex-container__hr{border:none;border-top:1px solid var(--color-black-8);height:0;margin:0;padding:0;width:100%}.dnb-forms-flex-container--direction-row.dnb-forms-flex-container--spacing-small{grid-column-gap:var(--spacing-small);-moz-column-gap:var(--spacing-small);column-gap:var(--spacing-small)}.dnb-forms-flex-container--direction-row.dnb-forms-flex-container--spacing-medium{grid-column-gap:var(--spacing-medium);-moz-column-gap:var(--spacing-medium);column-gap:var(--spacing-medium)}
1
+ .dnb-forms-flex-container{display:flex}.dnb-forms-flex-container--direction-row{flex-direction:row}.dnb-forms-flex-container--direction-column{flex-direction:column}.dnb-forms-flex-container--justify-flex-start{justify-content:flex-start}.dnb-forms-flex-container--justify-flex-end{justify-content:flex-end}.dnb-forms-flex-container--justify-center{justify-content:center}.dnb-forms-flex-container--justify-space-between{justify-content:space-between}.dnb-forms-flex-container--justify-space-around{justify-content:space-around}.dnb-forms-flex-container--justify-space-evenly{justify-content:space-evenly}.dnb-forms-flex-container--align-flex-start{align-items:flex-start}.dnb-forms-flex-container--align-flex-end{align-items:flex-end}.dnb-forms-flex-container--align-center{align-items:center}.dnb-forms-flex-container--align-stretch{align-items:stretch}.dnb-forms-flex-container--align-baseline{align-items:baseline}.dnb-forms-flex-container--wrap{flex-wrap:wrap}.dnb-forms-flex-container__hr{border:none;border-top:1px solid var(--color-black-8);height:0;margin:0;padding:0;width:100%}.dnb-forms-flex-container--direction-row.dnb-forms-flex-container--spacing-small{grid-column-gap:var(--spacing-small);-moz-column-gap:var(--spacing-small);column-gap:var(--spacing-small)}.dnb-forms-flex-container--direction-row.dnb-forms-flex-container--spacing-medium{grid-column-gap:var(--spacing-medium);-moz-column-gap:var(--spacing-medium);column-gap:var(--spacing-medium)}.dnb-forms-flex-container--width-small{width:5rem}.dnb-forms-flex-container--width-medium{width:11rem}.dnb-forms-flex-container--width-large{width:21rem}
@@ -1,3 +1,5 @@
1
+ @import '../../variables.scss';
2
+
1
3
  .dnb-forms-flex-container {
2
4
  display: flex;
3
5
 
@@ -81,4 +83,16 @@
81
83
  &--direction-row.dnb-forms-flex-container--spacing-medium {
82
84
  column-gap: var(--spacing-medium);
83
85
  }
86
+
87
+ &--width-small {
88
+ width: $forms-field-width-small;
89
+ }
90
+
91
+ &--width-medium {
92
+ width: $forms-field-width-medium;
93
+ }
94
+
95
+ &--width-large {
96
+ width: $forms-field-width-large;
97
+ }
84
98
  }
@@ -3,4 +3,13 @@
3
3
  }
4
4
  .dnb-forms-flex-item--shrink {
5
5
  flex-shrink: 1;
6
+ }
7
+ .dnb-forms-flex-item--width-small {
8
+ width: 5rem;
9
+ }
10
+ .dnb-forms-flex-item--width-medium {
11
+ width: 11rem;
12
+ }
13
+ .dnb-forms-flex-item--width-large {
14
+ width: 21rem;
6
15
  }
@@ -1 +1 @@
1
- .dnb-forms-flex-item--grow{flex-grow:1}.dnb-forms-flex-item--shrink{flex-shrink:1}
1
+ .dnb-forms-flex-item--grow{flex-grow:1}.dnb-forms-flex-item--shrink{flex-shrink:1}.dnb-forms-flex-item--width-small{width:5rem}.dnb-forms-flex-item--width-medium{width:11rem}.dnb-forms-flex-item--width-large{width:21rem}
@@ -1,3 +1,5 @@
1
+ @import '../../variables.scss';
2
+
1
3
  .dnb-forms-flex-item {
2
4
  &--grow {
3
5
  flex-grow: 1;
@@ -6,4 +8,16 @@
6
8
  &--shrink {
7
9
  flex-shrink: 1;
8
10
  }
11
+
12
+ &--width-small {
13
+ width: $forms-field-width-small;
14
+ }
15
+
16
+ &--width-medium {
17
+ width: $forms-field-width-medium;
18
+ }
19
+
20
+ &--width-large {
21
+ width: $forms-field-width-large;
22
+ }
9
23
  }
@@ -55,7 +55,7 @@ function StepsLayout(props) {
55
55
  }, [dataContext, scrollTopOnStepChange, onStepChange]);
56
56
  const stepIndicatorData = React.Children.map(children, child => {
57
57
  if (!React.isValidElement(child) || child.type !== Step) {
58
- throw new Error('Only Step can be children of Steps');
58
+ throw new Error('Only Step can be children of StepsLayout');
59
59
  }
60
60
  return child.props.title ?? 'Title missing';
61
61
  });