@dnb/eufemia 10.31.0 → 10.32.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 (549) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/cjs/components/anchor/Anchor.d.ts +8 -1
  3. package/cjs/components/anchor/Anchor.js.map +1 -1
  4. package/cjs/components/card/Card.js +3 -2
  5. package/cjs/components/card/Card.js.map +1 -1
  6. package/cjs/components/card/style/dnb-card.css +1 -2
  7. package/cjs/components/card/style/dnb-card.min.css +1 -1
  8. package/cjs/components/card/style/themes/dnb-card-theme-sbanken.css +5 -0
  9. package/cjs/components/card/style/themes/dnb-card-theme-sbanken.min.css +1 -0
  10. package/cjs/components/card/style/themes/dnb-card-theme-sbanken.scss +7 -0
  11. package/cjs/components/checkbox/style/dnb-checkbox.css +2 -2
  12. package/cjs/components/checkbox/style/dnb-checkbox.min.css +1 -1
  13. package/cjs/components/checkbox/style/dnb-checkbox.scss +2 -3
  14. package/cjs/components/flex/Container.d.ts +4 -1
  15. package/cjs/components/flex/Container.js +10 -7
  16. package/cjs/components/flex/Container.js.map +1 -1
  17. package/cjs/components/flex/Stack.js +3 -3
  18. package/cjs/components/flex/Stack.js.map +1 -1
  19. package/cjs/components/flex/utils.js +7 -7
  20. package/cjs/components/flex/utils.js.map +1 -1
  21. package/cjs/components/skeleton/style/dnb-skeleton.css +4 -8
  22. package/cjs/components/skeleton/style/dnb-skeleton.min.css +1 -1
  23. package/cjs/components/space/SpacingUtils.d.ts +1 -1
  24. package/cjs/components/space/SpacingUtils.js +1 -1
  25. package/cjs/components/space/SpacingUtils.js.map +1 -1
  26. package/cjs/components/step-indicator/style/themes/dnb-step-indicator-theme-sbanken.css +70 -0
  27. package/cjs/components/step-indicator/style/themes/dnb-step-indicator-theme-sbanken.min.css +1 -0
  28. package/cjs/components/step-indicator/style/themes/dnb-step-indicator-theme-sbanken.scss +97 -0
  29. package/cjs/components/switch/style/themes/dnb-switch-theme-ui.css +1 -2
  30. package/cjs/components/switch/style/themes/dnb-switch-theme-ui.min.css +1 -1
  31. package/cjs/components/table/style/dnb-table.css +5 -10
  32. package/cjs/components/table/style/dnb-table.min.css +1 -1
  33. package/cjs/components/visually-hidden/style/dnb-visually-hidden.css +1 -2
  34. package/cjs/components/visually-hidden/style/dnb-visually-hidden.min.css +1 -1
  35. package/cjs/extensions/forms/DataContext/Context.d.ts +19 -9
  36. package/cjs/extensions/forms/DataContext/Context.js +2 -2
  37. package/cjs/extensions/forms/DataContext/Context.js.map +1 -1
  38. package/cjs/extensions/forms/DataContext/Provider/Provider.d.ts +3 -3
  39. package/cjs/extensions/forms/DataContext/Provider/Provider.js +68 -32
  40. package/cjs/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  41. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js +3 -3
  42. package/cjs/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  43. package/cjs/extensions/forms/Field/Boolean/Boolean.js +2 -1
  44. package/cjs/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  45. package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.js +7 -7
  46. package/cjs/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  47. package/cjs/extensions/forms/Field/Number/Number.js +3 -1
  48. package/cjs/extensions/forms/Field/Number/Number.js.map +1 -1
  49. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js +1 -1
  50. package/cjs/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  51. package/cjs/extensions/forms/FieldBlock/FieldBlock.js +5 -0
  52. package/cjs/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  53. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.css +1 -3
  54. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  55. package/cjs/extensions/forms/FieldBlock/style/dnb-field-block.scss +1 -2
  56. package/cjs/extensions/forms/Form/Element/Element.js +1 -1
  57. package/cjs/extensions/forms/Form/Element/Element.js.map +1 -1
  58. package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.js +3 -3
  59. package/cjs/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  60. package/cjs/extensions/forms/Form/Tools/GenerateSchema.d.ts +8 -0
  61. package/cjs/extensions/forms/Form/Tools/GenerateSchema.js +100 -0
  62. package/cjs/extensions/forms/Form/Tools/GenerateSchema.js.map +1 -0
  63. package/cjs/extensions/forms/Form/Tools/index.d.ts +1 -0
  64. package/cjs/extensions/forms/Form/Tools/index.js +14 -0
  65. package/cjs/extensions/forms/Form/Tools/index.js.map +1 -0
  66. package/cjs/extensions/forms/Form/Visibility/Visibility.d.ts +19 -5
  67. package/cjs/extensions/forms/Form/Visibility/Visibility.js +41 -10
  68. package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  69. package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js +11 -6
  70. package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  71. package/cjs/extensions/forms/Form/data-context/useData.d.ts +1 -1
  72. package/cjs/extensions/forms/Form/data-context/useData.js +2 -2
  73. package/cjs/extensions/forms/Form/data-context/useData.js.map +1 -1
  74. package/cjs/extensions/forms/Form/data-context/useError.d.ts +1 -0
  75. package/cjs/extensions/forms/Form/data-context/useError.js +5 -3
  76. package/cjs/extensions/forms/Form/data-context/useError.js.map +1 -1
  77. package/cjs/extensions/forms/Form/index.d.ts +1 -0
  78. package/cjs/extensions/forms/Form/index.js +5 -0
  79. package/cjs/extensions/forms/Form/index.js.map +1 -1
  80. package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.d.ts +8 -1
  81. package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +4 -3
  82. package/cjs/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  83. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +2 -1
  84. package/cjs/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  85. package/cjs/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +5 -0
  86. package/cjs/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  87. package/cjs/extensions/forms/Iterate/EditContainer/EditToolbarTools.js +1 -1
  88. package/cjs/extensions/forms/Iterate/EditContainer/EditToolbarTools.js.map +1 -1
  89. package/cjs/extensions/forms/Iterate/Toolbar/Toolbar.js +1 -1
  90. package/cjs/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  91. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +2 -1
  92. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  93. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +5 -0
  94. package/cjs/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  95. package/cjs/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js +1 -1
  96. package/cjs/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js.map +1 -1
  97. package/cjs/extensions/forms/Iterate/style/dnb-form-iterate.css +3 -1
  98. package/cjs/extensions/forms/Iterate/style/dnb-form-iterate.min.css +1 -1
  99. package/cjs/extensions/forms/Iterate/style/dnb-form-iterate.scss +4 -1
  100. package/cjs/extensions/forms/ValueBlock/ValueBlock.js +4 -2
  101. package/cjs/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  102. package/cjs/extensions/forms/Wizard/Container/WizardContainer.d.ts +31 -2
  103. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js +102 -32
  104. package/cjs/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  105. package/cjs/extensions/forms/Wizard/Context/WizardContext.d.ts +4 -0
  106. package/cjs/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  107. package/cjs/extensions/forms/Wizard/Step/Step.d.ts +6 -1
  108. package/cjs/extensions/forms/Wizard/Step/Step.js +9 -5
  109. package/cjs/extensions/forms/Wizard/Step/Step.js.map +1 -1
  110. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.css +0 -1
  111. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  112. package/cjs/extensions/forms/Wizard/style/dnb-wizard-layout.scss +0 -1
  113. package/cjs/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-sbanken.css +1 -0
  114. package/cjs/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-sbanken.min.css +0 -0
  115. package/cjs/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-sbanken.scss +1 -0
  116. package/cjs/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.css +3 -0
  117. package/cjs/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.min.css +1 -0
  118. package/cjs/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.scss +7 -0
  119. package/cjs/extensions/forms/hooks/useFieldProps.js +70 -31
  120. package/cjs/extensions/forms/hooks/useFieldProps.js.map +1 -1
  121. package/cjs/extensions/forms/style/dnb-forms.css +4 -5
  122. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  123. package/cjs/extensions/forms/types.d.ts +4 -0
  124. package/cjs/extensions/forms/types.js.map +1 -1
  125. package/cjs/fragments/drawer-list/DrawerListHelpers.js +5 -2
  126. package/cjs/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  127. package/cjs/shared/Eufemia.d.ts +1 -1
  128. package/cjs/shared/Eufemia.js +2 -2
  129. package/cjs/shared/Eufemia.js.map +1 -1
  130. package/cjs/shared/MediaQuery.js +19 -1
  131. package/cjs/shared/MediaQuery.js.map +1 -1
  132. package/cjs/shared/MediaQueryUtils.d.ts +12 -34
  133. package/cjs/shared/MediaQueryUtils.js +22 -12
  134. package/cjs/shared/MediaQueryUtils.js.map +1 -1
  135. package/cjs/shared/component-helper.d.ts +1 -1
  136. package/cjs/shared/component-helper.js +5 -1
  137. package/cjs/shared/component-helper.js.map +1 -1
  138. package/cjs/shared/useMedia.d.ts +7 -2
  139. package/cjs/shared/useMedia.js +16 -11
  140. package/cjs/shared/useMedia.js.map +1 -1
  141. package/cjs/shared/useMediaQuery.js +30 -9
  142. package/cjs/shared/useMediaQuery.js.map +1 -1
  143. package/cjs/style/core/scopes.scss +1 -1
  144. package/cjs/style/dnb-ui-basis.css +2 -3
  145. package/cjs/style/dnb-ui-basis.min.css +1 -1
  146. package/cjs/style/dnb-ui-body.css +1 -1
  147. package/cjs/style/dnb-ui-body.min.css +1 -1
  148. package/cjs/style/dnb-ui-components.css +17 -29
  149. package/cjs/style/dnb-ui-components.min.css +3 -3
  150. package/cjs/style/dnb-ui-core.css +2 -3
  151. package/cjs/style/dnb-ui-core.min.css +1 -1
  152. package/cjs/style/dnb-ui-extensions.css +4 -5
  153. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  154. package/cjs/style/dnb-ui-forms.css +4 -5
  155. package/cjs/style/dnb-ui-forms.min.css +1 -1
  156. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +26 -36
  157. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +5 -5
  158. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +8 -5
  159. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +2 -2
  160. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.scss +1 -0
  161. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +8 -5
  162. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +2 -2
  163. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.scss +1 -0
  164. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +99 -112
  165. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +6 -6
  166. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.scss +2 -2
  167. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +5 -5
  168. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  169. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -0
  170. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +5 -5
  171. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  172. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.scss +1 -0
  173. package/cjs/style/themes/theme-ui/ui-theme-components.css +26 -36
  174. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +5 -5
  175. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +8 -5
  176. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +2 -2
  177. package/cjs/style/themes/theme-ui/ui-theme-extensions.scss +1 -0
  178. package/cjs/style/themes/theme-ui/ui-theme-forms.css +8 -5
  179. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +2 -2
  180. package/cjs/style/themes/theme-ui/ui-theme-forms.scss +1 -0
  181. package/components/anchor/Anchor.d.ts +8 -1
  182. package/components/anchor/Anchor.js.map +1 -1
  183. package/components/card/Card.js +3 -2
  184. package/components/card/Card.js.map +1 -1
  185. package/components/card/style/dnb-card.css +1 -2
  186. package/components/card/style/dnb-card.min.css +1 -1
  187. package/components/card/style/themes/dnb-card-theme-sbanken.css +5 -0
  188. package/components/card/style/themes/dnb-card-theme-sbanken.min.css +1 -0
  189. package/components/card/style/themes/dnb-card-theme-sbanken.scss +7 -0
  190. package/components/checkbox/style/dnb-checkbox.css +2 -2
  191. package/components/checkbox/style/dnb-checkbox.min.css +1 -1
  192. package/components/checkbox/style/dnb-checkbox.scss +2 -3
  193. package/components/flex/Container.d.ts +4 -1
  194. package/components/flex/Container.js +10 -7
  195. package/components/flex/Container.js.map +1 -1
  196. package/components/flex/Stack.js +3 -3
  197. package/components/flex/Stack.js.map +1 -1
  198. package/components/flex/utils.js +8 -8
  199. package/components/flex/utils.js.map +1 -1
  200. package/components/skeleton/style/dnb-skeleton.css +4 -8
  201. package/components/skeleton/style/dnb-skeleton.min.css +1 -1
  202. package/components/space/SpacingUtils.d.ts +1 -1
  203. package/components/space/SpacingUtils.js +1 -1
  204. package/components/space/SpacingUtils.js.map +1 -1
  205. package/components/step-indicator/style/themes/dnb-step-indicator-theme-sbanken.css +70 -0
  206. package/components/step-indicator/style/themes/dnb-step-indicator-theme-sbanken.min.css +1 -0
  207. package/components/step-indicator/style/themes/dnb-step-indicator-theme-sbanken.scss +97 -0
  208. package/components/switch/style/themes/dnb-switch-theme-ui.css +1 -2
  209. package/components/switch/style/themes/dnb-switch-theme-ui.min.css +1 -1
  210. package/components/table/style/dnb-table.css +5 -10
  211. package/components/table/style/dnb-table.min.css +1 -1
  212. package/components/visually-hidden/style/dnb-visually-hidden.css +1 -2
  213. package/components/visually-hidden/style/dnb-visually-hidden.min.css +1 -1
  214. package/es/components/anchor/Anchor.d.ts +8 -1
  215. package/es/components/anchor/Anchor.js.map +1 -1
  216. package/es/components/card/Card.js +3 -2
  217. package/es/components/card/Card.js.map +1 -1
  218. package/es/components/card/style/dnb-card.css +1 -2
  219. package/es/components/card/style/dnb-card.min.css +1 -1
  220. package/es/components/card/style/themes/dnb-card-theme-sbanken.css +5 -0
  221. package/es/components/card/style/themes/dnb-card-theme-sbanken.min.css +1 -0
  222. package/es/components/card/style/themes/dnb-card-theme-sbanken.scss +7 -0
  223. package/es/components/checkbox/style/dnb-checkbox.css +2 -2
  224. package/es/components/checkbox/style/dnb-checkbox.min.css +1 -1
  225. package/es/components/checkbox/style/dnb-checkbox.scss +2 -3
  226. package/es/components/flex/Container.d.ts +4 -1
  227. package/es/components/flex/Container.js +10 -7
  228. package/es/components/flex/Container.js.map +1 -1
  229. package/es/components/flex/Stack.js +3 -3
  230. package/es/components/flex/Stack.js.map +1 -1
  231. package/es/components/flex/utils.js +8 -8
  232. package/es/components/flex/utils.js.map +1 -1
  233. package/es/components/skeleton/style/dnb-skeleton.css +4 -8
  234. package/es/components/skeleton/style/dnb-skeleton.min.css +1 -1
  235. package/es/components/space/SpacingUtils.d.ts +1 -1
  236. package/es/components/space/SpacingUtils.js +1 -1
  237. package/es/components/space/SpacingUtils.js.map +1 -1
  238. package/es/components/step-indicator/style/themes/dnb-step-indicator-theme-sbanken.css +70 -0
  239. package/es/components/step-indicator/style/themes/dnb-step-indicator-theme-sbanken.min.css +1 -0
  240. package/es/components/step-indicator/style/themes/dnb-step-indicator-theme-sbanken.scss +97 -0
  241. package/es/components/switch/style/themes/dnb-switch-theme-ui.css +1 -2
  242. package/es/components/switch/style/themes/dnb-switch-theme-ui.min.css +1 -1
  243. package/es/components/table/style/dnb-table.css +5 -10
  244. package/es/components/table/style/dnb-table.min.css +1 -1
  245. package/es/components/visually-hidden/style/dnb-visually-hidden.css +1 -2
  246. package/es/components/visually-hidden/style/dnb-visually-hidden.min.css +1 -1
  247. package/es/extensions/forms/DataContext/Context.d.ts +19 -9
  248. package/es/extensions/forms/DataContext/Context.js +2 -2
  249. package/es/extensions/forms/DataContext/Context.js.map +1 -1
  250. package/es/extensions/forms/DataContext/Provider/Provider.d.ts +3 -3
  251. package/es/extensions/forms/DataContext/Provider/Provider.js +65 -30
  252. package/es/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  253. package/es/extensions/forms/DataContext/Provider/ProviderDocs.js +3 -3
  254. package/es/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  255. package/es/extensions/forms/Field/Boolean/Boolean.js +2 -1
  256. package/es/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  257. package/es/extensions/forms/Field/Indeterminate/useDependencePaths.js +7 -7
  258. package/es/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  259. package/es/extensions/forms/Field/Number/Number.js +3 -1
  260. package/es/extensions/forms/Field/Number/Number.js.map +1 -1
  261. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js +1 -1
  262. package/es/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  263. package/es/extensions/forms/FieldBlock/FieldBlock.js +5 -0
  264. package/es/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  265. package/es/extensions/forms/FieldBlock/style/dnb-field-block.css +1 -3
  266. package/es/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  267. package/es/extensions/forms/FieldBlock/style/dnb-field-block.scss +1 -2
  268. package/es/extensions/forms/Form/Element/Element.js +1 -1
  269. package/es/extensions/forms/Form/Element/Element.js.map +1 -1
  270. package/es/extensions/forms/Form/SubmitButton/SubmitButton.js +3 -3
  271. package/es/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  272. package/es/extensions/forms/Form/Tools/GenerateSchema.d.ts +8 -0
  273. package/es/extensions/forms/Form/Tools/GenerateSchema.js +89 -0
  274. package/es/extensions/forms/Form/Tools/GenerateSchema.js.map +1 -0
  275. package/es/extensions/forms/Form/Tools/index.d.ts +1 -0
  276. package/es/extensions/forms/Form/Tools/index.js +1 -0
  277. package/es/extensions/forms/Form/Tools/index.js.map +1 -0
  278. package/es/extensions/forms/Form/Visibility/Visibility.d.ts +19 -5
  279. package/es/extensions/forms/Form/Visibility/Visibility.js +41 -10
  280. package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  281. package/es/extensions/forms/Form/Visibility/VisibilityDocs.js +11 -6
  282. package/es/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  283. package/es/extensions/forms/Form/data-context/useData.d.ts +1 -1
  284. package/es/extensions/forms/Form/data-context/useData.js +1 -2
  285. package/es/extensions/forms/Form/data-context/useData.js.map +1 -1
  286. package/es/extensions/forms/Form/data-context/useError.d.ts +1 -0
  287. package/es/extensions/forms/Form/data-context/useError.js +5 -3
  288. package/es/extensions/forms/Form/data-context/useError.js.map +1 -1
  289. package/es/extensions/forms/Form/index.d.ts +1 -0
  290. package/es/extensions/forms/Form/index.js +1 -0
  291. package/es/extensions/forms/Form/index.js.map +1 -1
  292. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.d.ts +8 -1
  293. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +4 -3
  294. package/es/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  295. package/es/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +2 -1
  296. package/es/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  297. package/es/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +5 -0
  298. package/es/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  299. package/es/extensions/forms/Iterate/EditContainer/EditToolbarTools.js +1 -1
  300. package/es/extensions/forms/Iterate/EditContainer/EditToolbarTools.js.map +1 -1
  301. package/es/extensions/forms/Iterate/Toolbar/Toolbar.js +1 -1
  302. package/es/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  303. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +2 -1
  304. package/es/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  305. package/es/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +5 -0
  306. package/es/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  307. package/es/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js +1 -1
  308. package/es/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js.map +1 -1
  309. package/es/extensions/forms/Iterate/style/dnb-form-iterate.css +3 -1
  310. package/es/extensions/forms/Iterate/style/dnb-form-iterate.min.css +1 -1
  311. package/es/extensions/forms/Iterate/style/dnb-form-iterate.scss +4 -1
  312. package/es/extensions/forms/ValueBlock/ValueBlock.js +4 -2
  313. package/es/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  314. package/es/extensions/forms/Wizard/Container/WizardContainer.d.ts +31 -2
  315. package/es/extensions/forms/Wizard/Container/WizardContainer.js +98 -32
  316. package/es/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  317. package/es/extensions/forms/Wizard/Context/WizardContext.d.ts +4 -0
  318. package/es/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  319. package/es/extensions/forms/Wizard/Step/Step.d.ts +6 -1
  320. package/es/extensions/forms/Wizard/Step/Step.js +9 -5
  321. package/es/extensions/forms/Wizard/Step/Step.js.map +1 -1
  322. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.css +0 -1
  323. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  324. package/es/extensions/forms/Wizard/style/dnb-wizard-layout.scss +0 -1
  325. package/es/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-sbanken.css +1 -0
  326. package/es/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-sbanken.min.css +0 -0
  327. package/es/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-sbanken.scss +1 -0
  328. package/es/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.css +3 -0
  329. package/es/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.min.css +1 -0
  330. package/es/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.scss +7 -0
  331. package/es/extensions/forms/hooks/useFieldProps.js +67 -28
  332. package/es/extensions/forms/hooks/useFieldProps.js.map +1 -1
  333. package/es/extensions/forms/style/dnb-forms.css +4 -5
  334. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  335. package/es/extensions/forms/types.d.ts +4 -0
  336. package/es/extensions/forms/types.js.map +1 -1
  337. package/es/fragments/drawer-list/DrawerListHelpers.js +5 -2
  338. package/es/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  339. package/es/shared/Eufemia.d.ts +1 -1
  340. package/es/shared/Eufemia.js +2 -2
  341. package/es/shared/Eufemia.js.map +1 -1
  342. package/es/shared/MediaQuery.js +19 -1
  343. package/es/shared/MediaQuery.js.map +1 -1
  344. package/es/shared/MediaQueryUtils.d.ts +12 -34
  345. package/es/shared/MediaQueryUtils.js +22 -17
  346. package/es/shared/MediaQueryUtils.js.map +1 -1
  347. package/es/shared/component-helper.d.ts +1 -1
  348. package/es/shared/component-helper.js +5 -2
  349. package/es/shared/component-helper.js.map +1 -1
  350. package/es/shared/useMedia.d.ts +7 -2
  351. package/es/shared/useMedia.js +14 -11
  352. package/es/shared/useMedia.js.map +1 -1
  353. package/es/shared/useMediaQuery.js +28 -9
  354. package/es/shared/useMediaQuery.js.map +1 -1
  355. package/es/style/core/scopes.scss +1 -1
  356. package/es/style/dnb-ui-basis.css +2 -3
  357. package/es/style/dnb-ui-basis.min.css +1 -1
  358. package/es/style/dnb-ui-body.css +1 -1
  359. package/es/style/dnb-ui-body.min.css +1 -1
  360. package/es/style/dnb-ui-components.css +17 -29
  361. package/es/style/dnb-ui-components.min.css +3 -3
  362. package/es/style/dnb-ui-core.css +2 -3
  363. package/es/style/dnb-ui-core.min.css +1 -1
  364. package/es/style/dnb-ui-extensions.css +4 -5
  365. package/es/style/dnb-ui-extensions.min.css +1 -1
  366. package/es/style/dnb-ui-forms.css +4 -5
  367. package/es/style/dnb-ui-forms.min.css +1 -1
  368. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +26 -36
  369. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +5 -5
  370. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +8 -5
  371. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +2 -2
  372. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.scss +1 -0
  373. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +8 -5
  374. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +2 -2
  375. package/es/style/themes/theme-eiendom/eiendom-theme-forms.scss +1 -0
  376. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +99 -112
  377. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +6 -6
  378. package/es/style/themes/theme-sbanken/sbanken-theme-components.scss +2 -2
  379. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +5 -5
  380. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  381. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -0
  382. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +5 -5
  383. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  384. package/es/style/themes/theme-sbanken/sbanken-theme-forms.scss +1 -0
  385. package/es/style/themes/theme-ui/ui-theme-components.css +26 -36
  386. package/es/style/themes/theme-ui/ui-theme-components.min.css +5 -5
  387. package/es/style/themes/theme-ui/ui-theme-extensions.css +8 -5
  388. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +2 -2
  389. package/es/style/themes/theme-ui/ui-theme-extensions.scss +1 -0
  390. package/es/style/themes/theme-ui/ui-theme-forms.css +8 -5
  391. package/es/style/themes/theme-ui/ui-theme-forms.min.css +2 -2
  392. package/es/style/themes/theme-ui/ui-theme-forms.scss +1 -0
  393. package/esm/dnb-ui-basis.min.mjs +1 -1
  394. package/esm/dnb-ui-components.min.mjs +1 -1
  395. package/esm/dnb-ui-elements.min.mjs +1 -1
  396. package/esm/dnb-ui-extensions.min.mjs +2 -2
  397. package/esm/dnb-ui-lib.min.mjs +1 -1
  398. package/extensions/forms/DataContext/Context.d.ts +19 -9
  399. package/extensions/forms/DataContext/Context.js +2 -2
  400. package/extensions/forms/DataContext/Context.js.map +1 -1
  401. package/extensions/forms/DataContext/Provider/Provider.d.ts +3 -3
  402. package/extensions/forms/DataContext/Provider/Provider.js +68 -32
  403. package/extensions/forms/DataContext/Provider/Provider.js.map +1 -1
  404. package/extensions/forms/DataContext/Provider/ProviderDocs.js +3 -3
  405. package/extensions/forms/DataContext/Provider/ProviderDocs.js.map +1 -1
  406. package/extensions/forms/Field/Boolean/Boolean.js +2 -1
  407. package/extensions/forms/Field/Boolean/Boolean.js.map +1 -1
  408. package/extensions/forms/Field/Indeterminate/useDependencePaths.js +7 -7
  409. package/extensions/forms/Field/Indeterminate/useDependencePaths.js.map +1 -1
  410. package/extensions/forms/Field/Number/Number.js +3 -1
  411. package/extensions/forms/Field/Number/Number.js.map +1 -1
  412. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js +1 -1
  413. package/extensions/forms/Field/PhoneNumber/PhoneNumber.js.map +1 -1
  414. package/extensions/forms/FieldBlock/FieldBlock.js +5 -0
  415. package/extensions/forms/FieldBlock/FieldBlock.js.map +1 -1
  416. package/extensions/forms/FieldBlock/style/dnb-field-block.css +1 -3
  417. package/extensions/forms/FieldBlock/style/dnb-field-block.min.css +1 -1
  418. package/extensions/forms/FieldBlock/style/dnb-field-block.scss +1 -2
  419. package/extensions/forms/Form/Element/Element.js +1 -1
  420. package/extensions/forms/Form/Element/Element.js.map +1 -1
  421. package/extensions/forms/Form/SubmitButton/SubmitButton.js +3 -3
  422. package/extensions/forms/Form/SubmitButton/SubmitButton.js.map +1 -1
  423. package/extensions/forms/Form/Tools/GenerateSchema.d.ts +8 -0
  424. package/extensions/forms/Form/Tools/GenerateSchema.js +90 -0
  425. package/extensions/forms/Form/Tools/GenerateSchema.js.map +1 -0
  426. package/extensions/forms/Form/Tools/index.d.ts +1 -0
  427. package/extensions/forms/Form/Tools/index.js +1 -0
  428. package/extensions/forms/Form/Tools/index.js.map +1 -0
  429. package/extensions/forms/Form/Visibility/Visibility.d.ts +19 -5
  430. package/extensions/forms/Form/Visibility/Visibility.js +41 -10
  431. package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  432. package/extensions/forms/Form/Visibility/VisibilityDocs.js +11 -6
  433. package/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  434. package/extensions/forms/Form/data-context/useData.d.ts +1 -1
  435. package/extensions/forms/Form/data-context/useData.js +2 -2
  436. package/extensions/forms/Form/data-context/useData.js.map +1 -1
  437. package/extensions/forms/Form/data-context/useError.d.ts +1 -0
  438. package/extensions/forms/Form/data-context/useError.js +5 -3
  439. package/extensions/forms/Form/data-context/useError.js.map +1 -1
  440. package/extensions/forms/Form/index.d.ts +1 -0
  441. package/extensions/forms/Form/index.js +2 -0
  442. package/extensions/forms/Form/index.js.map +1 -1
  443. package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.d.ts +8 -1
  444. package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js +4 -3
  445. package/extensions/forms/Iterate/AnimatedContainer/ElementBlock.js.map +1 -1
  446. package/extensions/forms/Iterate/EditContainer/EditContainer.d.ts +2 -1
  447. package/extensions/forms/Iterate/EditContainer/EditContainer.js.map +1 -1
  448. package/extensions/forms/Iterate/EditContainer/EditContainerDocs.js +5 -0
  449. package/extensions/forms/Iterate/EditContainer/EditContainerDocs.js.map +1 -1
  450. package/extensions/forms/Iterate/EditContainer/EditToolbarTools.js +1 -1
  451. package/extensions/forms/Iterate/EditContainer/EditToolbarTools.js.map +1 -1
  452. package/extensions/forms/Iterate/Toolbar/Toolbar.js +1 -1
  453. package/extensions/forms/Iterate/Toolbar/Toolbar.js.map +1 -1
  454. package/extensions/forms/Iterate/ViewContainer/ViewContainer.d.ts +2 -1
  455. package/extensions/forms/Iterate/ViewContainer/ViewContainer.js.map +1 -1
  456. package/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js +5 -0
  457. package/extensions/forms/Iterate/ViewContainer/ViewContainerDocs.js.map +1 -1
  458. package/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js +1 -1
  459. package/extensions/forms/Iterate/ViewContainer/ViewToolbarTools.js.map +1 -1
  460. package/extensions/forms/Iterate/style/dnb-form-iterate.css +3 -1
  461. package/extensions/forms/Iterate/style/dnb-form-iterate.min.css +1 -1
  462. package/extensions/forms/Iterate/style/dnb-form-iterate.scss +4 -1
  463. package/extensions/forms/ValueBlock/ValueBlock.js +4 -2
  464. package/extensions/forms/ValueBlock/ValueBlock.js.map +1 -1
  465. package/extensions/forms/Wizard/Container/WizardContainer.d.ts +31 -2
  466. package/extensions/forms/Wizard/Container/WizardContainer.js +102 -32
  467. package/extensions/forms/Wizard/Container/WizardContainer.js.map +1 -1
  468. package/extensions/forms/Wizard/Context/WizardContext.d.ts +4 -0
  469. package/extensions/forms/Wizard/Context/WizardContext.js.map +1 -1
  470. package/extensions/forms/Wizard/Step/Step.d.ts +6 -1
  471. package/extensions/forms/Wizard/Step/Step.js +9 -5
  472. package/extensions/forms/Wizard/Step/Step.js.map +1 -1
  473. package/extensions/forms/Wizard/style/dnb-wizard-layout.css +0 -1
  474. package/extensions/forms/Wizard/style/dnb-wizard-layout.min.css +1 -1
  475. package/extensions/forms/Wizard/style/dnb-wizard-layout.scss +0 -1
  476. package/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-sbanken.css +1 -0
  477. package/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-sbanken.min.css +0 -0
  478. package/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-sbanken.scss +1 -0
  479. package/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.css +3 -0
  480. package/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.min.css +1 -0
  481. package/extensions/forms/Wizard/style/themes/dnb-wizard-layout-theme-ui.scss +7 -0
  482. package/extensions/forms/hooks/useFieldProps.js +70 -31
  483. package/extensions/forms/hooks/useFieldProps.js.map +1 -1
  484. package/extensions/forms/style/dnb-forms.css +4 -5
  485. package/extensions/forms/style/dnb-forms.min.css +1 -1
  486. package/extensions/forms/types.d.ts +4 -0
  487. package/extensions/forms/types.js.map +1 -1
  488. package/fragments/drawer-list/DrawerListHelpers.js +5 -2
  489. package/fragments/drawer-list/DrawerListHelpers.js.map +1 -1
  490. package/package.json +1 -1
  491. package/shared/Eufemia.d.ts +1 -1
  492. package/shared/Eufemia.js +2 -2
  493. package/shared/Eufemia.js.map +1 -1
  494. package/shared/MediaQuery.js +19 -1
  495. package/shared/MediaQuery.js.map +1 -1
  496. package/shared/MediaQueryUtils.d.ts +12 -34
  497. package/shared/MediaQueryUtils.js +22 -12
  498. package/shared/MediaQueryUtils.js.map +1 -1
  499. package/shared/component-helper.d.ts +1 -1
  500. package/shared/component-helper.js +5 -1
  501. package/shared/component-helper.js.map +1 -1
  502. package/shared/useMedia.d.ts +7 -2
  503. package/shared/useMedia.js +14 -11
  504. package/shared/useMedia.js.map +1 -1
  505. package/shared/useMediaQuery.js +28 -9
  506. package/shared/useMediaQuery.js.map +1 -1
  507. package/style/core/scopes.scss +1 -1
  508. package/style/dnb-ui-basis.css +2 -3
  509. package/style/dnb-ui-basis.min.css +1 -1
  510. package/style/dnb-ui-body.css +1 -1
  511. package/style/dnb-ui-body.min.css +1 -1
  512. package/style/dnb-ui-components.css +17 -29
  513. package/style/dnb-ui-components.min.css +3 -3
  514. package/style/dnb-ui-core.css +2 -3
  515. package/style/dnb-ui-core.min.css +1 -1
  516. package/style/dnb-ui-extensions.css +4 -5
  517. package/style/dnb-ui-extensions.min.css +1 -1
  518. package/style/dnb-ui-forms.css +4 -5
  519. package/style/dnb-ui-forms.min.css +1 -1
  520. package/style/themes/theme-eiendom/eiendom-theme-components.css +26 -36
  521. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +5 -5
  522. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +8 -5
  523. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +2 -2
  524. package/style/themes/theme-eiendom/eiendom-theme-extensions.scss +1 -0
  525. package/style/themes/theme-eiendom/eiendom-theme-forms.css +8 -5
  526. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +2 -2
  527. package/style/themes/theme-eiendom/eiendom-theme-forms.scss +1 -0
  528. package/style/themes/theme-sbanken/sbanken-theme-components.css +99 -112
  529. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +6 -6
  530. package/style/themes/theme-sbanken/sbanken-theme-components.scss +2 -2
  531. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +5 -5
  532. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  533. package/style/themes/theme-sbanken/sbanken-theme-extensions.scss +1 -0
  534. package/style/themes/theme-sbanken/sbanken-theme-forms.css +5 -5
  535. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  536. package/style/themes/theme-sbanken/sbanken-theme-forms.scss +1 -0
  537. package/style/themes/theme-ui/ui-theme-components.css +26 -36
  538. package/style/themes/theme-ui/ui-theme-components.min.css +5 -5
  539. package/style/themes/theme-ui/ui-theme-extensions.css +8 -5
  540. package/style/themes/theme-ui/ui-theme-extensions.min.css +2 -2
  541. package/style/themes/theme-ui/ui-theme-extensions.scss +1 -0
  542. package/style/themes/theme-ui/ui-theme-forms.css +8 -5
  543. package/style/themes/theme-ui/ui-theme-forms.min.css +2 -2
  544. package/style/themes/theme-ui/ui-theme-forms.scss +1 -0
  545. package/umd/dnb-ui-basis.min.js +1 -1
  546. package/umd/dnb-ui-components.min.js +1 -1
  547. package/umd/dnb-ui-elements.min.js +1 -1
  548. package/umd/dnb-ui-extensions.min.js +2 -2
  549. package/umd/dnb-ui-lib.min.js +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Stack.js","names":["_react","_interopRequireDefault","require","_classnames","_Container","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","Stack","props","className","direction","alignSelf","align","spacing","divider","children","rest","createElement","element","classnames","_supportsSpacingProps","_default","exports"],"sources":["../../../../src/components/flex/Stack.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport Container from './Container'\nimport type { Props as FlexContainerProps } from './Container'\n\nexport type Props = FlexContainerProps\n\nfunction Stack(props: Props) {\n const {\n className,\n direction = 'vertical',\n alignSelf = 'stretch',\n align = 'stretch',\n spacing = props.divider !== 'line' && props.divider !== 'line-framed'\n ? 'medium'\n : 'small',\n children,\n ...rest\n } = props\n\n return (\n <Container\n element=\"section\"\n className={classnames('dnb-flex-stack', className)}\n direction={direction}\n alignSelf={alignSelf}\n align={align}\n spacing={spacing}\n {...rest}\n >\n {children}\n </Container>\n )\n}\n\nStack._supportsSpacingProps = true\n\nexport default Stack\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,UAAA,GAAAH,sBAAA,CAAAC,OAAA;AAAmC,MAAAG,SAAA;AAAA,SAAAJ,uBAAAK,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,SAAA,IAAAA,QAAA,GAAAC,MAAA,CAAAC,MAAA,GAAAD,MAAA,CAAAC,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAI,GAAA,IAAAD,MAAA,QAAAP,MAAA,CAAAS,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAJ,MAAA,EAAAC,GAAA,KAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAL,MAAA,YAAAJ,QAAA,CAAAa,KAAA,OAAAP,SAAA;AAAA,SAAAQ,yBAAAN,MAAA,EAAAO,QAAA,QAAAP,MAAA,yBAAAJ,MAAA,GAAAY,6BAAA,CAAAR,MAAA,EAAAO,QAAA,OAAAN,GAAA,EAAAJ,CAAA,MAAAJ,MAAA,CAAAgB,qBAAA,QAAAC,gBAAA,GAAAjB,MAAA,CAAAgB,qBAAA,CAAAT,MAAA,QAAAH,CAAA,MAAAA,CAAA,GAAAa,gBAAA,CAAAX,MAAA,EAAAF,CAAA,MAAAI,GAAA,GAAAS,gBAAA,CAAAb,CAAA,OAAAU,QAAA,CAAAI,OAAA,CAAAV,GAAA,uBAAAR,MAAA,CAAAS,SAAA,CAAAU,oBAAA,CAAAR,IAAA,CAAAJ,MAAA,EAAAC,GAAA,aAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,cAAAL,MAAA;AAAA,SAAAY,8BAAAR,MAAA,EAAAO,QAAA,QAAAP,MAAA,yBAAAJ,MAAA,WAAAiB,UAAA,GAAApB,MAAA,CAAAqB,IAAA,CAAAd,MAAA,OAAAC,GAAA,EAAAJ,CAAA,OAAAA,CAAA,MAAAA,CAAA,GAAAgB,UAAA,CAAAd,MAAA,EAAAF,CAAA,MAAAI,GAAA,GAAAY,UAAA,CAAAhB,CAAA,OAAAU,QAAA,CAAAI,OAAA,CAAAV,GAAA,kBAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,YAAAL,MAAA;AAKnC,SAASmB,KAAKA,CAACC,KAAY,EAAE;EAC3B,MAAM;MACJC,SAAS;MACTC,SAAS,GAAG,UAAU;MACtBC,SAAS,GAAG,SAAS;MACrBC,KAAK,GAAG,SAAS;MACjBC,OAAO,GAAGL,KAAK,CAACM,OAAO,KAAK,MAAM,IAAIN,KAAK,CAACM,OAAO,KAAK,aAAa,GACjE,QAAQ,GACR,OAAO;MACXC;IAEF,CAAC,GAAGP,KAAK;IADJQ,IAAI,GAAAlB,wBAAA,CACLU,KAAK,EAAA5B,SAAA;EAET,OACEL,MAAA,CAAAQ,OAAA,CAAAkC,aAAA,CAACtC,UAAA,CAAAI,OAAS,EAAAC,QAAA;IACRkC,OAAO,EAAC,SAAS;IACjBT,SAAS,EAAE,IAAAU,mBAAU,EAAC,gBAAgB,EAAEV,SAAS,CAAE;IACnDC,SAAS,EAAEA,SAAU;IACrBC,SAAS,EAAEA,SAAU;IACrBC,KAAK,EAAEA,KAAM;IACbC,OAAO,EAAEA;EAAQ,GACbG,IAAI,GAEPD,QACQ,CAAC;AAEhB;AAEAR,KAAK,CAACa,qBAAqB,GAAG,IAAI;AAAA,IAAAC,QAAA,GAEnBd,KAAK;AAAAe,OAAA,CAAAvC,OAAA,GAAAsC,QAAA"}
1
+ {"version":3,"file":"Stack.js","names":["_react","_interopRequireDefault","require","_classnames","_Container","_excluded","obj","__esModule","default","_extends","Object","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","Stack","props","className","direction","alignSelf","align","gap","divider","children","rest","createElement","element","classnames","_supportsSpacingProps","_default","exports"],"sources":["../../../../src/components/flex/Stack.tsx"],"sourcesContent":["import React from 'react'\nimport classnames from 'classnames'\nimport Container from './Container'\nimport type { Props as FlexContainerProps } from './Container'\n\nexport type Props = FlexContainerProps\n\nfunction Stack(props: Props) {\n const {\n className,\n direction = 'vertical',\n alignSelf = 'stretch',\n align = 'stretch',\n gap = props.divider !== 'line' && props.divider !== 'line-framed'\n ? 'medium'\n : 'small',\n children,\n ...rest\n } = props\n\n return (\n <Container\n element=\"section\"\n className={classnames('dnb-flex-stack', className)}\n direction={direction}\n alignSelf={alignSelf}\n align={align}\n gap={gap}\n {...rest}\n >\n {children}\n </Container>\n )\n}\n\nStack._supportsSpacingProps = true\n\nexport default Stack\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,UAAA,GAAAH,sBAAA,CAAAC,OAAA;AAAmC,MAAAG,SAAA;AAAA,SAAAJ,uBAAAK,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,SAAA,IAAAA,QAAA,GAAAC,MAAA,CAAAC,MAAA,GAAAD,MAAA,CAAAC,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAI,GAAA,IAAAD,MAAA,QAAAP,MAAA,CAAAS,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAJ,MAAA,EAAAC,GAAA,KAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAL,MAAA,YAAAJ,QAAA,CAAAa,KAAA,OAAAP,SAAA;AAAA,SAAAQ,yBAAAN,MAAA,EAAAO,QAAA,QAAAP,MAAA,yBAAAJ,MAAA,GAAAY,6BAAA,CAAAR,MAAA,EAAAO,QAAA,OAAAN,GAAA,EAAAJ,CAAA,MAAAJ,MAAA,CAAAgB,qBAAA,QAAAC,gBAAA,GAAAjB,MAAA,CAAAgB,qBAAA,CAAAT,MAAA,QAAAH,CAAA,MAAAA,CAAA,GAAAa,gBAAA,CAAAX,MAAA,EAAAF,CAAA,MAAAI,GAAA,GAAAS,gBAAA,CAAAb,CAAA,OAAAU,QAAA,CAAAI,OAAA,CAAAV,GAAA,uBAAAR,MAAA,CAAAS,SAAA,CAAAU,oBAAA,CAAAR,IAAA,CAAAJ,MAAA,EAAAC,GAAA,aAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,cAAAL,MAAA;AAAA,SAAAY,8BAAAR,MAAA,EAAAO,QAAA,QAAAP,MAAA,yBAAAJ,MAAA,WAAAiB,UAAA,GAAApB,MAAA,CAAAqB,IAAA,CAAAd,MAAA,OAAAC,GAAA,EAAAJ,CAAA,OAAAA,CAAA,MAAAA,CAAA,GAAAgB,UAAA,CAAAd,MAAA,EAAAF,CAAA,MAAAI,GAAA,GAAAY,UAAA,CAAAhB,CAAA,OAAAU,QAAA,CAAAI,OAAA,CAAAV,GAAA,kBAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,YAAAL,MAAA;AAKnC,SAASmB,KAAKA,CAACC,KAAY,EAAE;EAC3B,MAAM;MACJC,SAAS;MACTC,SAAS,GAAG,UAAU;MACtBC,SAAS,GAAG,SAAS;MACrBC,KAAK,GAAG,SAAS;MACjBC,GAAG,GAAGL,KAAK,CAACM,OAAO,KAAK,MAAM,IAAIN,KAAK,CAACM,OAAO,KAAK,aAAa,GAC7D,QAAQ,GACR,OAAO;MACXC;IAEF,CAAC,GAAGP,KAAK;IADJQ,IAAI,GAAAlB,wBAAA,CACLU,KAAK,EAAA5B,SAAA;EAET,OACEL,MAAA,CAAAQ,OAAA,CAAAkC,aAAA,CAACtC,UAAA,CAAAI,OAAS,EAAAC,QAAA;IACRkC,OAAO,EAAC,SAAS;IACjBT,SAAS,EAAE,IAAAU,mBAAU,EAAC,gBAAgB,EAAEV,SAAS,CAAE;IACnDC,SAAS,EAAEA,SAAU;IACrBC,SAAS,EAAEA,SAAU;IACrBC,KAAK,EAAEA,KAAM;IACbC,GAAG,EAAEA;EAAI,GACLG,IAAI,GAEPD,QACQ,CAAC;AAEhB;AAEAR,KAAK,CAACa,qBAAqB,GAAG,IAAI;AAAA,IAAAC,QAAA,GAEnBd,KAAK;AAAAe,OAAA,CAAAvC,OAAA,GAAAsC,QAAA"}
@@ -23,13 +23,13 @@ function _toPrimitive(input, hint) { if (typeof input !== "object" || input ===
23
23
  const omitSpacingProps = _SpacingUtils.removeSpaceProps;
24
24
  exports.omitSpacingProps = omitSpacingProps;
25
25
  function pickSpacingProps(props) {
26
- return {
27
- space: props === null || props === void 0 ? void 0 : props.space,
28
- top: props === null || props === void 0 ? void 0 : props.top,
29
- bottom: props === null || props === void 0 ? void 0 : props.bottom,
30
- left: props === null || props === void 0 ? void 0 : props.left,
31
- right: props === null || props === void 0 ? void 0 : props.right
32
- };
26
+ const obj = {};
27
+ for (const key in props) {
28
+ if ((0, _SpacingUtils.isValidSpaceProp)(key) && typeof props[key] !== 'undefined') {
29
+ obj[key] = props[key];
30
+ }
31
+ }
32
+ return obj;
33
33
  }
34
34
  function getSpaceValue(type, element) {
35
35
  var _element$props$type, _element$props, _element$props2;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["_react","_interopRequireWildcard","require","_Space","_interopRequireDefault","_SpacingUtils","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","omitSpacingProps","removeSpaceProps","exports","pickSpacingProps","props","space","top","bottom","left","right","getSpaceValue","type","element","_element$props$type","_element$props","_element$props2","React","isValidElement","isHeadingElement","_element$type","getSpaceVariant","_element$type2","_element$props3","Fragment","check","some","renderWithSpacing","spaceProps","variant","Children","toArray","map","child","_child$props","children","cloneElement","wrapWithSpace","_ref","createElement"],"sources":["../../../../src/components/flex/utils.tsx"],"sourcesContent":["import React, { Fragment } from 'react'\nimport { SpaceType, SpacingProps } from '../../shared/types'\nimport Space from '../space/Space'\nimport { removeSpaceProps } from '../space/SpacingUtils'\nimport { End, Start } from './types'\n\nexport const omitSpacingProps = removeSpaceProps\n\n/**\n * Picks the spacing props from the given props object.\n * @template Props - The type of the props object.\n * @param {Props} props - The props object.\n * @returns {SpacingProps} - The spacing props object.\n */\nexport function pickSpacingProps<Props extends SpacingProps>(\n props: Props\n): SpacingProps {\n return {\n space: props?.space,\n top: props?.top,\n bottom: props?.bottom,\n left: props?.left,\n right: props?.right,\n }\n}\n\n/**\n * Retrieves the space value of a Flex component based on the specified type and element.\n * @param type - The type of space value to retrieve (Start or End).\n * @param element - The React element to extract the space value from.\n * @returns The space value of the element, or undefined if it cannot be determined.\n */\nexport function getSpaceValue(\n type: Start | End,\n element: React.ReactNode\n): SpaceType | undefined {\n if (!React.isValidElement(element)) {\n return\n }\n\n return (\n element.props?.[type] ??\n (typeof element.props?.space === 'object'\n ? element.props.space[type]\n : undefined)\n )\n}\n\n/**\n * Checks if the provided element is a heading element.\n * @param element - The element to check.\n * @returns `true` if the element is a heading element, `false` otherwise.\n */\nexport function isHeadingElement(\n element: React.ReactNode & { _isHeadingElement?: boolean }\n): boolean {\n return (\n React.isValidElement(element) &&\n element?.type?.['_isHeadingElement'] === true\n )\n}\n\n/**\n * Determines the spacing variant of a React node element.\n * @param element - The React node element to check.\n * @returns The spacing variant (true, false or \"children\") of the element, or undefined if it does not support spacing props.\n */\nexport function getSpaceVariant(element: React.ReactNode) {\n if (React.isValidElement(element)) {\n if (element?.type === Fragment) {\n return 'children'\n }\n\n const check = element?.type?.['_supportsSpacingProps']\n if (typeof check !== 'undefined') {\n return check\n }\n\n const keys = ['space', 'top', 'right', 'bottom', 'left']\n const props = element?.props ?? {}\n if (keys.some((key) => key in props)) {\n return true\n }\n }\n\n return undefined\n}\n\n/**\n * Renders an element with spacing props applied.\n * If the element is a component that accepts spacing props, the props are directly applied.\n * If the element is a component that has children and accepts spacing props, the props are applied to the children.\n * If the element does not accept spacing props, the element is returned as is.\n *\n * @param element - The element to render with spacing props.\n * @param spaceProps - The spacing props to apply.\n * @returns The rendered element with spacing props applied.\n */\nexport function renderWithSpacing(\n element: React.ReactNode,\n spaceProps: SpacingProps & { key?: string; className?: string }\n) {\n const variant = getSpaceVariant(element)\n\n if (variant === false) {\n return element\n }\n\n if (variant === 'children') {\n return React.Children.toArray(element).map(\n (child: React.ReactElement) => {\n const children = child?.props?.children\n\n return React.Children.toArray(children).map((element, i) => {\n return React.cloneElement(\n child,\n { key: i, ...child?.props },\n wrapWithSpace({ element, spaceProps })\n )\n })\n }\n )\n }\n\n return wrapWithSpace({ element, spaceProps, variant })\n}\n\nfunction wrapWithSpace({ element, spaceProps, variant = null }) {\n return variant ?? getSpaceVariant(element) === true ? (\n React.cloneElement(element as React.ReactElement, spaceProps)\n ) : (\n <Space {...spaceProps}>{element}</Space>\n )\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","names":["_react","_interopRequireWildcard","require","_Space","_interopRequireDefault","_SpacingUtils","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","omitSpacingProps","removeSpaceProps","exports","pickSpacingProps","props","isValidSpaceProp","getSpaceValue","type","element","_element$props$type","_element$props","_element$props2","React","isValidElement","space","isHeadingElement","_element$type","getSpaceVariant","_element$type2","_element$props3","Fragment","check","some","renderWithSpacing","spaceProps","variant","Children","toArray","map","child","_child$props","children","cloneElement","wrapWithSpace","_ref","createElement"],"sources":["../../../../src/components/flex/utils.tsx"],"sourcesContent":["import React, { Fragment } from 'react'\nimport { SpaceType, SpacingProps } from '../../shared/types'\nimport Space from '../space/Space'\nimport { isValidSpaceProp, removeSpaceProps } from '../space/SpacingUtils'\nimport { End, Start } from './types'\n\nexport const omitSpacingProps = removeSpaceProps\n\n/**\n * Picks the spacing props from the given props object.\n * @template Props - The type of the props object.\n * @param {Props} props - The props object.\n * @returns {SpacingProps} - The spacing props object.\n */\nexport function pickSpacingProps<Props extends SpacingProps>(\n props: Props\n): SpacingProps {\n const obj: SpacingProps = {}\n for (const key in props as SpacingProps) {\n if (isValidSpaceProp(key) && typeof props[key] !== 'undefined') {\n obj[key] = props[key]\n }\n }\n return obj\n}\n\n/**\n * Retrieves the space value of a Flex component based on the specified type and element.\n * @param type - The type of space value to retrieve (Start or End).\n * @param element - The React element to extract the space value from.\n * @returns The space value of the element, or undefined if it cannot be determined.\n */\nexport function getSpaceValue(\n type: Start | End,\n element: React.ReactNode\n): SpaceType | undefined {\n if (!React.isValidElement(element)) {\n return\n }\n\n return (\n element.props?.[type] ??\n (typeof element.props?.space === 'object'\n ? element.props.space[type]\n : undefined)\n )\n}\n\n/**\n * Checks if the provided element is a heading element.\n * @param element - The element to check.\n * @returns `true` if the element is a heading element, `false` otherwise.\n */\nexport function isHeadingElement(\n element: React.ReactNode & { _isHeadingElement?: boolean }\n): boolean {\n return (\n React.isValidElement(element) &&\n element?.type?.['_isHeadingElement'] === true\n )\n}\n\n/**\n * Determines the spacing variant of a React node element.\n * @param element - The React node element to check.\n * @returns The spacing variant (true, false or \"children\") of the element, or undefined if it does not support spacing props.\n */\nexport function getSpaceVariant(element: React.ReactNode) {\n if (React.isValidElement(element)) {\n if (element?.type === Fragment) {\n return 'children'\n }\n\n const check = element?.type?.['_supportsSpacingProps']\n if (typeof check !== 'undefined') {\n return check\n }\n\n const keys = ['space', 'top', 'right', 'bottom', 'left']\n const props = element?.props ?? {}\n if (keys.some((key) => key in props)) {\n return true\n }\n }\n\n return undefined\n}\n\n/**\n * Renders an element with spacing props applied.\n * If the element is a component that accepts spacing props, the props are directly applied.\n * If the element is a component that has children and accepts spacing props, the props are applied to the children.\n * If the element does not accept spacing props, the element is returned as is.\n *\n * @param element - The element to render with spacing props.\n * @param spaceProps - The spacing props to apply.\n * @returns The rendered element with spacing props applied.\n */\nexport function renderWithSpacing(\n element: React.ReactNode,\n spaceProps: SpacingProps & { key?: string; className?: string }\n) {\n const variant = getSpaceVariant(element)\n\n if (variant === false) {\n return element\n }\n\n if (variant === 'children') {\n return React.Children.toArray(element).map(\n (child: React.ReactElement) => {\n const children = child?.props?.children\n\n return React.Children.toArray(children).map((element, i) => {\n return React.cloneElement(\n child,\n { key: i, ...child?.props },\n wrapWithSpace({ element, spaceProps })\n )\n })\n }\n )\n }\n\n return wrapWithSpace({ element, spaceProps, variant })\n}\n\nfunction wrapWithSpace({ element, spaceProps, variant = null }) {\n return variant ?? getSpaceVariant(element) === true ? (\n React.cloneElement(element as React.ReactElement, spaceProps)\n ) : (\n <Space {...spaceProps}>{element}</Space>\n )\n}\n"],"mappings":"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"}
@@ -54,8 +54,7 @@
54
54
  background-image: repeating-linear-gradient(-45deg, var(--skeleton-color--contrast) 1px 2px, transparent 0 6px) !important;
55
55
  background-repeat: repeat !important;
56
56
  background-size: 100% !important;
57
- -webkit-clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
58
- clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
57
+ clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
59
58
  animation: skeletonLinearAnimation 1.5s linear infinite var(--skeleton-delay);
60
59
  }
61
60
  .dnb-skeleton--code pre,
@@ -118,16 +117,13 @@ html[data-visual-test] .dnb-skeleton--font, html[data-visual-test] .dnb-skeleton
118
117
 
119
118
  @keyframes skeletonLinearAnimation {
120
119
  0% {
121
- -webkit-clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
122
- clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
120
+ clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
123
121
  }
124
122
  50% {
125
- -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
126
- clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
123
+ clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
127
124
  }
128
125
  100% {
129
- -webkit-clip-path: polygon(0 0, 0% 0, 0% 100%, 0 100%);
130
- clip-path: polygon(0 0, 0% 0, 0% 100%, 0 100%);
126
+ clip-path: polygon(0 0, 0% 0, 0% 100%, 0 100%);
131
127
  }
132
128
  }
133
129
  @keyframes skeletonFontAnimation {
@@ -1 +1 @@
1
- .dnb-skeleton{--skeleton-delay:5s}.dnb-skeleton img,.dnb-skeleton video{filter:brightness(0) contrast(0) opacity(.5)}.dnb-skeleton--block{display:block}.dnb-skeleton--overflow{overflow:hidden}.dnb-skeleton--grey{filter:grayscale(100%)}.dnb-skeleton--shape{background:transparent;box-shadow:none!important;color:transparent;overflow-x:hidden;pointer-events:none;position:relative}.dnb-skeleton--shape.dnb-skeleton:after,.dnb-skeleton--shape.dnb-skeleton:before{background:none!important;border-radius:inherit;bottom:0!important;box-shadow:none!important;content:""!important;height:auto!important;left:0!important;margin:0!important;padding:0!important;position:absolute!important;right:0!important;top:0!important;width:100%!important;z-index:100!important}.dnb-skeleton--shape.dnb-skeleton:before{background-color:var(--skeleton-color)!important}.dnb-skeleton--shape.dnb-skeleton:after{animation:skeletonLinearAnimation 1.5s linear infinite var(--skeleton-delay);background-image:repeating-linear-gradient(-45deg,var(--skeleton-color--contrast) 1px 2px,transparent 0 6px)!important;background-repeat:repeat!important;background-size:100%!important;-webkit-clip-path:polygon(100% 0,100% 0,100% 100%,100% 100%);clip-path:polygon(100% 0,100% 0,100% 100%,100% 100%)}.dnb-skeleton--code code,.dnb-skeleton--code code *,.dnb-skeleton--code pre,.dnb-skeleton--code pre *,.dnb-skeleton--font code,.dnb-skeleton--font code *,.dnb-skeleton--font pre,.dnb-skeleton--font pre *{--font-family-monospace:"DNBMonoSkeleton"!important;box-shadow:none!important;font-family:var(--font-family-monospace)!important;font-style:unset!important}.dnb-skeleton--font,.dnb-skeleton--font .dnb-p,.dnb-skeleton--font .dnb-skeleton--show-font,.dnb-skeleton--font-only{--font-family-default:"DNBSkeleton"!important;font-family:var(--font-family-default)!important;font-style:unset!important;pointer-events:none}.dnb-skeleton--font .dnb-p::marker,.dnb-skeleton--font .dnb-skeleton--show-font::marker,.dnb-skeleton--font-only::marker,.dnb-skeleton--font::marker{color:var(--skeleton-color)}.dnb-skeleton--font,.dnb-skeleton--font .dnb-p,.dnb-skeleton--font .dnb-skeleton--show-font{-webkit-text-fill-color:transparent!important;--border-color:var(--skeleton-color);animation:skeletonFontAnimation 5s linear infinite var(--skeleton-delay);-webkit-background-clip:text!important;background-clip:text!important;background-color:var(--skeleton-color)!important;background-image:repeating-linear-gradient(-45deg,var(--skeleton-color--contrast) 1px 2px,transparent 0 6px)!important;background-position-x:30rem;background-position-y:50%!important;background-repeat:no-repeat!important;background-size:30rem 100%!important}html[data-visual-test] .dnb-skeleton--font,html[data-visual-test] .dnb-skeleton--font .dnb-p,html[data-visual-test] .dnb-skeleton--font .dnb-skeleton--show-font{animation:none!important}.dnb-skeleton__figure{border-radius:.25rem;position:relative}.dnb-skeleton__figure--circle{border-radius:50%;height:4rem;width:4rem}.dnb-skeleton__figure--product{align-items:center;display:flex}.dnb-skeleton__figure--product .dnb-skeleton__figure--circle+div{margin-left:1rem;width:50%}.dnb-skeleton--no-animation * .dnb-skeleton:after,.dnb-skeleton--no-animation .dnb-skeleton,.dnb-skeleton--no-animation .dnb-skeleton:after{animation:none!important}@keyframes skeletonLinearAnimation{0%{-webkit-clip-path:polygon(100% 0,100% 0,100% 100%,100% 100%);clip-path:polygon(100% 0,100% 0,100% 100%,100% 100%)}50%{-webkit-clip-path:polygon(0 0,100% 0,100% 100%,0 100%);clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}to{-webkit-clip-path:polygon(0 0,0 0,0 100%,0 100%);clip-path:polygon(0 0,0 0,0 100%,0 100%)}}@keyframes skeletonFontAnimation{0%{background-position-x:30rem}to{background-position-x:-30rem}}@font-face{font-display:fallback;font-family:DNBSkeleton;font-style:normal;font-weight:400;src:url(../../assets/fonts/dnb/skeleton/DNB-Skeleton-Regular.woff2) format("woff2"),url(../../assets/fonts/dnb/skeleton/DNB-Skeleton-Regular.woff) format("woff"),url(../../assets/fonts/dnb/skeleton/DNB-Skeleton-Regular.ttf) format("truetype")}@font-face{font-display:fallback;font-family:DNBSkeleton;font-style:normal;font-weight:500;src:url(../../assets/fonts/dnb/skeleton/DNB-Skeleton-Medium.woff2) format("woff2"),url(../../assets/fonts/dnb/skeleton/DNB-Skeleton-Medium.woff) format("woff"),url(../../assets/fonts/dnb/skeleton/DNB-Skeleton-Medium.ttf) format("truetype")}@font-face{font-display:fallback;font-family:DNBSkeleton;font-style:normal;font-weight:600;src:url(../../assets/fonts/dnb/skeleton/DNB-Skeleton-Bold.woff2) format("woff2"),url(../../assets/fonts/dnb/skeleton/DNB-Skeleton-Bold.woff) format("woff"),url(../../assets/fonts/dnb/skeleton/DNB-Skeleton-Bold.ttf) format("truetype")}@font-face{font-display:fallback;font-family:DNBMonoSkeleton;font-style:normal;font-weight:400;src:url(../../assets/fonts/dnb/skeleton/DNBMono-Skeleton-Regular.woff2) format("woff2"),url(../../assets/fonts/dnb/skeleton/DNBMono-Skeleton-Regular.woff) format("woff"),url(../../assets/fonts/dnb/skeleton/DNBMono-Skeleton-Regular.ttf) format("truetype")}
1
+ .dnb-skeleton{--skeleton-delay:5s}.dnb-skeleton img,.dnb-skeleton video{filter:brightness(0) contrast(0) opacity(.5)}.dnb-skeleton--block{display:block}.dnb-skeleton--overflow{overflow:hidden}.dnb-skeleton--grey{filter:grayscale(100%)}.dnb-skeleton--shape{background:transparent;box-shadow:none!important;color:transparent;overflow-x:hidden;pointer-events:none;position:relative}.dnb-skeleton--shape.dnb-skeleton:after,.dnb-skeleton--shape.dnb-skeleton:before{background:none!important;border-radius:inherit;bottom:0!important;box-shadow:none!important;content:""!important;height:auto!important;left:0!important;margin:0!important;padding:0!important;position:absolute!important;right:0!important;top:0!important;width:100%!important;z-index:100!important}.dnb-skeleton--shape.dnb-skeleton:before{background-color:var(--skeleton-color)!important}.dnb-skeleton--shape.dnb-skeleton:after{animation:skeletonLinearAnimation 1.5s linear infinite var(--skeleton-delay);background-image:repeating-linear-gradient(-45deg,var(--skeleton-color--contrast) 1px 2px,transparent 0 6px)!important;background-repeat:repeat!important;background-size:100%!important;clip-path:polygon(100% 0,100% 0,100% 100%,100% 100%)}.dnb-skeleton--code code,.dnb-skeleton--code code *,.dnb-skeleton--code pre,.dnb-skeleton--code pre *,.dnb-skeleton--font code,.dnb-skeleton--font code *,.dnb-skeleton--font pre,.dnb-skeleton--font pre *{--font-family-monospace:"DNBMonoSkeleton"!important;box-shadow:none!important;font-family:var(--font-family-monospace)!important;font-style:unset!important}.dnb-skeleton--font,.dnb-skeleton--font .dnb-p,.dnb-skeleton--font .dnb-skeleton--show-font,.dnb-skeleton--font-only{--font-family-default:"DNBSkeleton"!important;font-family:var(--font-family-default)!important;font-style:unset!important;pointer-events:none}.dnb-skeleton--font .dnb-p::marker,.dnb-skeleton--font .dnb-skeleton--show-font::marker,.dnb-skeleton--font-only::marker,.dnb-skeleton--font::marker{color:var(--skeleton-color)}.dnb-skeleton--font,.dnb-skeleton--font .dnb-p,.dnb-skeleton--font .dnb-skeleton--show-font{-webkit-text-fill-color:transparent!important;--border-color:var(--skeleton-color);animation:skeletonFontAnimation 5s linear infinite var(--skeleton-delay);-webkit-background-clip:text!important;background-clip:text!important;background-color:var(--skeleton-color)!important;background-image:repeating-linear-gradient(-45deg,var(--skeleton-color--contrast) 1px 2px,transparent 0 6px)!important;background-position-x:30rem;background-position-y:50%!important;background-repeat:no-repeat!important;background-size:30rem 100%!important}html[data-visual-test] .dnb-skeleton--font,html[data-visual-test] .dnb-skeleton--font .dnb-p,html[data-visual-test] .dnb-skeleton--font .dnb-skeleton--show-font{animation:none!important}.dnb-skeleton__figure{border-radius:.25rem;position:relative}.dnb-skeleton__figure--circle{border-radius:50%;height:4rem;width:4rem}.dnb-skeleton__figure--product{align-items:center;display:flex}.dnb-skeleton__figure--product .dnb-skeleton__figure--circle+div{margin-left:1rem;width:50%}.dnb-skeleton--no-animation * .dnb-skeleton:after,.dnb-skeleton--no-animation .dnb-skeleton,.dnb-skeleton--no-animation .dnb-skeleton:after{animation:none!important}@keyframes skeletonLinearAnimation{0%{clip-path:polygon(100% 0,100% 0,100% 100%,100% 100%)}50%{clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}to{clip-path:polygon(0 0,0 0,0 100%,0 100%)}}@keyframes skeletonFontAnimation{0%{background-position-x:30rem}to{background-position-x:-30rem}}@font-face{font-display:fallback;font-family:DNBSkeleton;font-style:normal;font-weight:400;src:url(../../assets/fonts/dnb/skeleton/DNB-Skeleton-Regular.woff2) format("woff2"),url(../../assets/fonts/dnb/skeleton/DNB-Skeleton-Regular.woff) format("woff"),url(../../assets/fonts/dnb/skeleton/DNB-Skeleton-Regular.ttf) format("truetype")}@font-face{font-display:fallback;font-family:DNBSkeleton;font-style:normal;font-weight:500;src:url(../../assets/fonts/dnb/skeleton/DNB-Skeleton-Medium.woff2) format("woff2"),url(../../assets/fonts/dnb/skeleton/DNB-Skeleton-Medium.woff) format("woff"),url(../../assets/fonts/dnb/skeleton/DNB-Skeleton-Medium.ttf) format("truetype")}@font-face{font-display:fallback;font-family:DNBSkeleton;font-style:normal;font-weight:600;src:url(../../assets/fonts/dnb/skeleton/DNB-Skeleton-Bold.woff2) format("woff2"),url(../../assets/fonts/dnb/skeleton/DNB-Skeleton-Bold.woff) format("woff"),url(../../assets/fonts/dnb/skeleton/DNB-Skeleton-Bold.ttf) format("truetype")}@font-face{font-display:fallback;font-family:DNBMonoSkeleton;font-style:normal;font-weight:400;src:url(../../assets/fonts/dnb/skeleton/DNBMono-Skeleton-Regular.woff2) format("woff2"),url(../../assets/fonts/dnb/skeleton/DNBMono-Skeleton-Regular.woff) format("woff"),url(../../assets/fonts/dnb/skeleton/DNBMono-Skeleton-Regular.ttf) format("truetype")}
@@ -27,7 +27,7 @@ export declare const createSpacingClasses: (props: SpacingProps
27
27
  */
28
28
  | SpacingUnknownProps, Element?: any) => any[];
29
29
  export declare const translateSpace: (type: SpaceType) => any;
30
- export declare const splitTypes: (types: SpaceType | Array<SpaceType>) => SpaceType[];
30
+ export declare const splitTypes: (types: SpaceType | Array<SpaceType>) => SpaceType[] | (number | SpaceTypesPositiveValuesType)[];
31
31
  export declare const sumTypes: (types: SpaceType | Array<SpaceType>) => any;
32
32
  export declare const createTypeModifiers: (types: SpaceType) => Array<SpaceType>;
33
33
  export declare const findType: (num: SpaceNumber) => SpaceType;
@@ -164,7 +164,7 @@ const splitTypes = types => {
164
164
  const test = types.split(/ /g);
165
165
  return clean(test);
166
166
  } else if (typeof types === 'boolean') {
167
- return ['small'];
167
+ return [types ? 'small' : 0];
168
168
  } else if (typeof types === 'number') {
169
169
  return [types];
170
170
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SpacingUtils.js","names":["_componentHelper","require","_excluded","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","key","i","Object","getOwnPropertySymbols","sourceSymbolKeys","length","indexOf","prototype","propertyIsEnumerable","call","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","spacingDefaultProps","space","innerSpace","top","right","bottom","left","exports","spacePatterns","small","medium","large","globalThis","CALC_CACHE","calc","_len","types","Array","_key","hash","join","result","rawTypes","createTypeModifiers","type","createSpacingProperties","props","computeProperties","hasMediaSize","media","includes","hasSize","size","_space","transformToAll","isValidSpaceProp","cur","name","typeModifiers","sum","sumTypes","createSpacingClasses","Element","p","isFrozen","_p$left","_p$bottom","_p$right","_p$top","entries","reduce","acc","_ref","direction","warn","nearestTypes","findNearestTypes","map","isInline","translateSpace","test","replace","splitTypes","split","clean","t","r","firstLetter","parseFloat","num","foundType","findType","found","findTypeAll","listOfSpacePatterns","find","_ref2","k","v","multiply","near","reverse","_ref3","nearNum","nearType","leftOver","foundMoreTypes","index","propName","removeSpaceProps","restProps","elementName"],"sources":["../../../../src/components/space/SpacingUtils.ts"],"sourcesContent":["/**\n * Space helper\n *\n */\n\nimport { warn } from '../../shared/component-helper'\n\nimport type {\n SpaceType,\n SpacingUnknownProps,\n SpacingProps,\n SpaceTypesPositiveValuesType,\n SpaceTypesPositiveRemValuesType,\n SpaceStringTypes,\n SpaceTypeMedia,\n SpaceTypeAll,\n SpacingElementProps,\n} from './types'\n\ntype SpaceNumber = number\n\nexport const spacingDefaultProps: SpacingProps = {\n space: null,\n innerSpace: null,\n top: null,\n right: null,\n bottom: null,\n left: null,\n}\n// IMPORTANT: Keep the shorthand after the long type names\nexport const spacePatterns: Record<\n SpaceTypesPositiveValuesType,\n SpaceTypesPositiveRemValuesType\n> = {\n 'xx-small': 0.25,\n 'x-small': 0.5,\n small: 1,\n medium: 1.5,\n large: 2,\n 'x-large': 3,\n 'xx-large': 3.5,\n 'xx-large-x2': 7,\n}\n\n/**\n * Helper function to generate a calc(var(--spacing-large) + var(--spacing-small))\n *\n * @param types 'small', '16px', '1rem'\n * @returns e.g. calc(var(--spacing-large) + var(--spacing-small))\n */\nglobalThis.CALC_CACHE = {}\nexport const calc = (...types: Array<SpaceType>) => {\n const hash = types.join('|')\n if (globalThis.CALC_CACHE[hash]) {\n return globalThis.CALC_CACHE[hash]\n }\n\n const result: Array<string> = []\n\n types.forEach((rawTypes) => {\n createTypeModifiers(rawTypes as SpaceType).forEach((type) => {\n result.push(`var(--spacing-${type})`)\n })\n })\n\n return result.length\n ? (globalThis.CALC_CACHE[hash] = `calc(${result.join(' + ')})`)\n : null\n}\n\n/**\n * Creates a valid space CSS style out from given space types\n *\n * @param props\n * @returns { '--space-b-l': '2rem', '--space-t-l': '1rem' }\n */\nexport const createSpacingProperties = (\n props: SpacingProps\n): React.CSSProperties => {\n if (props?.innerSpace) {\n return computeProperties(props.innerSpace)\n }\n\n return {}\n}\n\nfunction hasMediaSize(media: SpaceTypeMedia) {\n const keys = Object.keys(media)\n return (\n keys.includes('small') ||\n keys.includes('medium') ||\n keys.includes('large')\n )\n}\n\nfunction hasSize(space: SpacingElementProps) {\n const keys = Object.keys(space)\n return (\n keys.includes('top') ||\n keys.includes('right') ||\n keys.includes('bottom') ||\n keys.includes('left')\n )\n}\n\nfunction computeProperties(space: SpaceTypeAll | SpaceTypeMedia) {\n if (!hasMediaSize(space as SpaceTypeMedia)) {\n space = {\n small: space,\n medium: space,\n large: space,\n } as SpaceTypeMedia\n }\n\n const result = {}\n\n for (const size in space as SpaceTypeMedia) {\n const value = space?.[size] as SpaceType | SpacingElementProps\n const props = transformToAll(value)\n\n for (const key in props as SpaceTypeMedia) {\n if (isValidSpaceProp(key)) {\n const cur = props[key]\n const name = `--space-${key[0]}-${size[0]}`\n\n if (String(cur) === '0' || String(cur) === 'false') {\n result[name] = '0'\n } else if (cur) {\n const typeModifiers = createTypeModifiers(cur as SpaceType)\n const sum = sumTypes(typeModifiers)\n result[name] = `${sum}rem`\n }\n }\n }\n }\n\n return result as React.CSSProperties\n}\n\nfunction transformToAll(value: SpaceType | SpacingElementProps) {\n let result = value\n\n if (!hasSize(value as SpacingElementProps)) {\n result = {\n top: value,\n right: value,\n bottom: value,\n left: value,\n } as SpacingElementProps\n }\n\n return result as SpacingElementProps\n}\n\n/**\n * Creates a valid space CSS class out from given space types\n *\n * @param props\n * @param Element to check if it should be handled as inline\n * @returns \"dnb-space__large dnb-space__small\"\n */\nexport const createSpacingClasses = (\n props:\n | SpacingProps\n /**\n * To support typical not defined props form components\n */\n | SpacingUnknownProps,\n Element = null\n) => {\n const p = Object.isFrozen(props) ? { ...props } : props\n\n if (typeof p.space !== 'undefined') {\n if (\n typeof p.space === 'string' ||\n typeof p.space === 'number' ||\n (typeof p.space === 'boolean' && p.space)\n ) {\n p.left = p.left ?? p.space\n p.bottom = p.bottom ?? p.space\n p.right = p.right ?? p.space\n p.top = p.top ?? p.space\n }\n if (typeof p.space === 'object') {\n for (const i in p.space) {\n if (!p[i] && isValidSpaceProp(i)) {\n p[i] = p.space[i]\n }\n }\n }\n delete p.space\n }\n\n return Object.entries(p).reduce((acc, [direction, cur]) => {\n if (isValidSpaceProp(direction) && direction !== 'innerSpace') {\n if (String(cur) === '0' || String(cur) === 'false') {\n acc.push(`dnb-space__${direction}--zero`)\n } else if (cur) {\n const typeModifiers = createTypeModifiers(cur as SpaceType)\n\n // get the total sum\n const sum = sumTypes(typeModifiers)\n if (sum > 10) {\n warn(\n `Spacing of more than 10rem is not supported! You used ${sum} / (${typeModifiers.join(\n ','\n )})`\n )\n } else {\n // auto combine classes\n const nearestTypes = findNearestTypes(sum, true)\n\n acc = [\n ...acc,\n ...nearestTypes.map(\n (type) => `dnb-space__${direction}--${type}`\n ),\n ]\n }\n }\n } else if (direction === 'no_collapse') {\n acc.push('dnb-space--no-collapse')\n if (Element && isInline(Element)) {\n acc.push('dnb-space--inline')\n }\n }\n\n return acc\n }, [])\n}\n\n// @internal splits types by given string\nexport const translateSpace = (type: SpaceType) => {\n if (/-x2$/.test(String(type))) {\n return spacePatterns[String(type).replace(/-x2$/, '')] * 2\n }\n return spacePatterns[String(type)] || 0\n}\n\n// @internal Splits a string of: \"large x-small\" into an array of the same\nexport const splitTypes = (types: SpaceType | Array<SpaceType>) => {\n if (typeof types === 'string') {\n const test = (types as SpaceStringTypes).split(/ /g)\n return clean(test as Array<SpaceStringTypes>)\n } else if (typeof types === 'boolean') {\n return ['small' as SpaceTypesPositiveValuesType]\n } else if (typeof types === 'number') {\n return [types]\n }\n\n return clean(types) || null\n\n function clean(t: Array<SpaceType> | Array<SpaceStringTypes>) {\n return t?.filter((r) => r && String(r).length > 0)\n }\n}\n\n// @internal Sums e.g. \"large\" + \"x-small\" to be = 2.5rem\nexport const sumTypes = (types: SpaceType | Array<SpaceType>) =>\n splitTypes(types)\n .map((type) => translateSpace(type))\n .reduce((acc, cur) => {\n if (cur > 0) {\n acc += cur\n } else if (cur < 0) {\n acc -= cur\n }\n return acc\n }, 0)\n\n// @internal Returns an array with modifiers e.g. [\"large\", \"x-small\"]\nexport const createTypeModifiers = (\n types: SpaceType\n): Array<SpaceType> => {\n return (splitTypes(types) || []).reduce((acc, type) => {\n if (type) {\n const firstLetter = String(type)[0]\n if (parseFloat(firstLetter) > -1) {\n // can be \"2rem\" or \"32px\" - but we want only a number\n let num = parseFloat(String(type))\n\n // check if we got pixels\n if (num >= 8 && /[0-9]px/.test(String(type))) {\n num = num / 16\n }\n\n // check if the type exists in our extensions\n const foundType = findType(num)\n\n // get the type\n if (foundType) {\n type = foundType\n } else {\n findNearestTypes(num).forEach((type) => {\n if (type) {\n acc.push(type)\n }\n })\n }\n }\n\n if (!(parseFloat(String(type)) > 0)) {\n acc.push(type)\n }\n }\n return acc\n }, [])\n}\n\n// @internal Finds from \"2.0\" the equivalent type \"large\"\nexport const findType = (num: SpaceNumber): SpaceType => {\n const found = findTypeAll(num)\n\n // get the type\n if (found) {\n return found[0]\n }\n\n return null\n}\n\n// @internal Finds from \"2.0\" the equivalent type \"large\" and returns all results\nexport const findTypeAll = (\n num: SpaceNumber\n): Array<\n SpaceTypesPositiveValuesType | SpaceTypesPositiveRemValuesType\n> => {\n const listOfSpacePatterns = Object.entries(spacePatterns) as [\n SpaceTypesPositiveValuesType,\n SpaceTypesPositiveRemValuesType,\n ][]\n const found =\n listOfSpacePatterns.find(([k, v]) => k && v === num) || null\n return found\n}\n\n// @internal Finds from e.g. a value of \"2.5rem\" the nearest type = [\"large\", \"x-small\"]\nexport const findNearestTypes = (num: SpaceNumber, multiply = false) => {\n let res = []\n\n const near = Object.entries(spacePatterns)\n .reverse()\n .filter((k) => (multiply ? true : !k[0].includes('-x'))) // e.g. -x2\n .find(([k, v]) => k && num >= v)\n const nearNum = (near && near[1]) || num\n const types = findTypeAll(nearNum)\n\n if (types) {\n const nearType = types[0]\n res.push(nearType)\n const leftOver = num - parseFloat(String(types[1]))\n const foundMoreTypes = findNearestTypes(leftOver, multiply)\n\n // if the value already exists, then replace it with an x2\n foundMoreTypes.forEach((type) => {\n const index = res.indexOf(type)\n if (index !== -1) {\n res[index] = multiply ? `${type}-x2` : type\n }\n })\n\n res = [...res, ...foundMoreTypes]\n }\n\n return res\n}\n\n// @internal Checks if a space prop is a valid string like \"top\"\nexport const isValidSpaceProp = (propName: string) =>\n propName &&\n ['top', 'right', 'bottom', 'left', 'space', 'innerSpace'].includes(\n propName\n )\n\nexport const removeSpaceProps = <Props extends SpacingProps>(\n props: Props\n): Omit<Props, keyof SpacingProps> => {\n const { space, innerSpace, top, bottom, left, right, ...restProps } =\n props\n return restProps\n}\n\nexport const isInline = (elementName: string) => {\n switch (elementName) {\n case 'h1':\n case 'h2':\n case 'h3':\n case 'h4':\n case 'h5':\n case 'h6':\n case 'p':\n return true\n }\n\n return false\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"SpacingUtils.js","names":["_componentHelper","require","_excluded","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","key","i","Object","getOwnPropertySymbols","sourceSymbolKeys","length","indexOf","prototype","propertyIsEnumerable","call","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","spacingDefaultProps","space","innerSpace","top","right","bottom","left","exports","spacePatterns","small","medium","large","globalThis","CALC_CACHE","calc","_len","types","Array","_key","hash","join","result","rawTypes","createTypeModifiers","type","createSpacingProperties","props","computeProperties","hasMediaSize","media","includes","hasSize","size","_space","transformToAll","isValidSpaceProp","cur","name","typeModifiers","sum","sumTypes","createSpacingClasses","Element","p","isFrozen","_p$left","_p$bottom","_p$right","_p$top","entries","reduce","acc","_ref","direction","warn","nearestTypes","findNearestTypes","map","isInline","translateSpace","test","replace","splitTypes","split","clean","t","r","firstLetter","parseFloat","num","foundType","findType","found","findTypeAll","listOfSpacePatterns","find","_ref2","k","v","multiply","near","reverse","_ref3","nearNum","nearType","leftOver","foundMoreTypes","index","propName","removeSpaceProps","restProps","elementName"],"sources":["../../../../src/components/space/SpacingUtils.ts"],"sourcesContent":["/**\n * Space helper\n *\n */\n\nimport { warn } from '../../shared/component-helper'\n\nimport type {\n SpaceType,\n SpacingUnknownProps,\n SpacingProps,\n SpaceTypesPositiveValuesType,\n SpaceTypesPositiveRemValuesType,\n SpaceStringTypes,\n SpaceTypeMedia,\n SpaceTypeAll,\n SpacingElementProps,\n} from './types'\n\ntype SpaceNumber = number\n\nexport const spacingDefaultProps: SpacingProps = {\n space: null,\n innerSpace: null,\n top: null,\n right: null,\n bottom: null,\n left: null,\n}\n// IMPORTANT: Keep the shorthand after the long type names\nexport const spacePatterns: Record<\n SpaceTypesPositiveValuesType,\n SpaceTypesPositiveRemValuesType\n> = {\n 'xx-small': 0.25,\n 'x-small': 0.5,\n small: 1,\n medium: 1.5,\n large: 2,\n 'x-large': 3,\n 'xx-large': 3.5,\n 'xx-large-x2': 7,\n}\n\n/**\n * Helper function to generate a calc(var(--spacing-large) + var(--spacing-small))\n *\n * @param types 'small', '16px', '1rem'\n * @returns e.g. calc(var(--spacing-large) + var(--spacing-small))\n */\nglobalThis.CALC_CACHE = {}\nexport const calc = (...types: Array<SpaceType>) => {\n const hash = types.join('|')\n if (globalThis.CALC_CACHE[hash]) {\n return globalThis.CALC_CACHE[hash]\n }\n\n const result: Array<string> = []\n\n types.forEach((rawTypes) => {\n createTypeModifiers(rawTypes as SpaceType).forEach((type) => {\n result.push(`var(--spacing-${type})`)\n })\n })\n\n return result.length\n ? (globalThis.CALC_CACHE[hash] = `calc(${result.join(' + ')})`)\n : null\n}\n\n/**\n * Creates a valid space CSS style out from given space types\n *\n * @param props\n * @returns { '--space-b-l': '2rem', '--space-t-l': '1rem' }\n */\nexport const createSpacingProperties = (\n props: SpacingProps\n): React.CSSProperties => {\n if (props?.innerSpace) {\n return computeProperties(props.innerSpace)\n }\n\n return {}\n}\n\nfunction hasMediaSize(media: SpaceTypeMedia) {\n const keys = Object.keys(media)\n return (\n keys.includes('small') ||\n keys.includes('medium') ||\n keys.includes('large')\n )\n}\n\nfunction hasSize(space: SpacingElementProps) {\n const keys = Object.keys(space)\n return (\n keys.includes('top') ||\n keys.includes('right') ||\n keys.includes('bottom') ||\n keys.includes('left')\n )\n}\n\nfunction computeProperties(space: SpaceTypeAll | SpaceTypeMedia) {\n if (!hasMediaSize(space as SpaceTypeMedia)) {\n space = {\n small: space,\n medium: space,\n large: space,\n } as SpaceTypeMedia\n }\n\n const result = {}\n\n for (const size in space as SpaceTypeMedia) {\n const value = space?.[size] as SpaceType | SpacingElementProps\n const props = transformToAll(value)\n\n for (const key in props as SpaceTypeMedia) {\n if (isValidSpaceProp(key)) {\n const cur = props[key]\n const name = `--space-${key[0]}-${size[0]}`\n\n if (String(cur) === '0' || String(cur) === 'false') {\n result[name] = '0'\n } else if (cur) {\n const typeModifiers = createTypeModifiers(cur as SpaceType)\n const sum = sumTypes(typeModifiers)\n result[name] = `${sum}rem`\n }\n }\n }\n }\n\n return result as React.CSSProperties\n}\n\nfunction transformToAll(value: SpaceType | SpacingElementProps) {\n let result = value\n\n if (!hasSize(value as SpacingElementProps)) {\n result = {\n top: value,\n right: value,\n bottom: value,\n left: value,\n } as SpacingElementProps\n }\n\n return result as SpacingElementProps\n}\n\n/**\n * Creates a valid space CSS class out from given space types\n *\n * @param props\n * @param Element to check if it should be handled as inline\n * @returns \"dnb-space__large dnb-space__small\"\n */\nexport const createSpacingClasses = (\n props:\n | SpacingProps\n /**\n * To support typical not defined props form components\n */\n | SpacingUnknownProps,\n Element = null\n) => {\n const p = Object.isFrozen(props) ? { ...props } : props\n\n if (typeof p.space !== 'undefined') {\n if (\n typeof p.space === 'string' ||\n typeof p.space === 'number' ||\n (typeof p.space === 'boolean' && p.space)\n ) {\n p.left = p.left ?? p.space\n p.bottom = p.bottom ?? p.space\n p.right = p.right ?? p.space\n p.top = p.top ?? p.space\n }\n if (typeof p.space === 'object') {\n for (const i in p.space) {\n if (!p[i] && isValidSpaceProp(i)) {\n p[i] = p.space[i]\n }\n }\n }\n delete p.space\n }\n\n return Object.entries(p).reduce((acc, [direction, cur]) => {\n if (isValidSpaceProp(direction) && direction !== 'innerSpace') {\n if (String(cur) === '0' || String(cur) === 'false') {\n acc.push(`dnb-space__${direction}--zero`)\n } else if (cur) {\n const typeModifiers = createTypeModifiers(cur as SpaceType)\n\n // get the total sum\n const sum = sumTypes(typeModifiers)\n if (sum > 10) {\n warn(\n `Spacing of more than 10rem is not supported! You used ${sum} / (${typeModifiers.join(\n ','\n )})`\n )\n } else {\n // auto combine classes\n const nearestTypes = findNearestTypes(sum, true)\n\n acc = [\n ...acc,\n ...nearestTypes.map(\n (type) => `dnb-space__${direction}--${type}`\n ),\n ]\n }\n }\n } else if (direction === 'no_collapse') {\n acc.push('dnb-space--no-collapse')\n if (Element && isInline(Element)) {\n acc.push('dnb-space--inline')\n }\n }\n\n return acc\n }, [])\n}\n\n// @internal splits types by given string\nexport const translateSpace = (type: SpaceType) => {\n if (/-x2$/.test(String(type))) {\n return spacePatterns[String(type).replace(/-x2$/, '')] * 2\n }\n return spacePatterns[String(type)] || 0\n}\n\n// @internal Splits a string of: \"large x-small\" into an array of the same\nexport const splitTypes = (types: SpaceType | Array<SpaceType>) => {\n if (typeof types === 'string') {\n const test = (types as SpaceStringTypes).split(/ /g)\n return clean(test as Array<SpaceStringTypes>)\n } else if (typeof types === 'boolean') {\n return [types ? ('small' as SpaceTypesPositiveValuesType) : 0]\n } else if (typeof types === 'number') {\n return [types]\n }\n\n return clean(types) || null\n\n function clean(t: Array<SpaceType> | Array<SpaceStringTypes>) {\n return t?.filter((r) => r && String(r).length > 0)\n }\n}\n\n// @internal Sums e.g. \"large\" + \"x-small\" to be = 2.5rem\nexport const sumTypes = (types: SpaceType | Array<SpaceType>) =>\n splitTypes(types)\n .map((type) => translateSpace(type))\n .reduce((acc, cur) => {\n if (cur > 0) {\n acc += cur\n } else if (cur < 0) {\n acc -= cur\n }\n return acc\n }, 0)\n\n// @internal Returns an array with modifiers e.g. [\"large\", \"x-small\"]\nexport const createTypeModifiers = (\n types: SpaceType\n): Array<SpaceType> => {\n return (splitTypes(types) || []).reduce((acc, type) => {\n if (type) {\n const firstLetter = String(type)[0]\n if (parseFloat(firstLetter) > -1) {\n // can be \"2rem\" or \"32px\" - but we want only a number\n let num = parseFloat(String(type))\n\n // check if we got pixels\n if (num >= 8 && /[0-9]px/.test(String(type))) {\n num = num / 16\n }\n\n // check if the type exists in our extensions\n const foundType = findType(num)\n\n // get the type\n if (foundType) {\n type = foundType\n } else {\n findNearestTypes(num).forEach((type) => {\n if (type) {\n acc.push(type)\n }\n })\n }\n }\n\n if (!(parseFloat(String(type)) > 0)) {\n acc.push(type)\n }\n }\n return acc\n }, [])\n}\n\n// @internal Finds from \"2.0\" the equivalent type \"large\"\nexport const findType = (num: SpaceNumber): SpaceType => {\n const found = findTypeAll(num)\n\n // get the type\n if (found) {\n return found[0]\n }\n\n return null\n}\n\n// @internal Finds from \"2.0\" the equivalent type \"large\" and returns all results\nexport const findTypeAll = (\n num: SpaceNumber\n): Array<\n SpaceTypesPositiveValuesType | SpaceTypesPositiveRemValuesType\n> => {\n const listOfSpacePatterns = Object.entries(spacePatterns) as [\n SpaceTypesPositiveValuesType,\n SpaceTypesPositiveRemValuesType,\n ][]\n const found =\n listOfSpacePatterns.find(([k, v]) => k && v === num) || null\n return found\n}\n\n// @internal Finds from e.g. a value of \"2.5rem\" the nearest type = [\"large\", \"x-small\"]\nexport const findNearestTypes = (num: SpaceNumber, multiply = false) => {\n let res = []\n\n const near = Object.entries(spacePatterns)\n .reverse()\n .filter((k) => (multiply ? true : !k[0].includes('-x'))) // e.g. -x2\n .find(([k, v]) => k && num >= v)\n const nearNum = (near && near[1]) || num\n const types = findTypeAll(nearNum)\n\n if (types) {\n const nearType = types[0]\n res.push(nearType)\n const leftOver = num - parseFloat(String(types[1]))\n const foundMoreTypes = findNearestTypes(leftOver, multiply)\n\n // if the value already exists, then replace it with an x2\n foundMoreTypes.forEach((type) => {\n const index = res.indexOf(type)\n if (index !== -1) {\n res[index] = multiply ? `${type}-x2` : type\n }\n })\n\n res = [...res, ...foundMoreTypes]\n }\n\n return res\n}\n\n// @internal Checks if a space prop is a valid string like \"top\"\nexport const isValidSpaceProp = (propName: string) =>\n propName &&\n ['top', 'right', 'bottom', 'left', 'space', 'innerSpace'].includes(\n propName\n )\n\nexport const removeSpaceProps = <Props extends SpacingProps>(\n props: Props\n): Omit<Props, keyof SpacingProps> => {\n const { space, innerSpace, top, bottom, left, right, ...restProps } =\n props\n return restProps\n}\n\nexport const isInline = (elementName: string) => {\n switch (elementName) {\n case 'h1':\n case 'h2':\n case 'h3':\n case 'h4':\n case 'h5':\n case 'h6':\n case 'p':\n return true\n }\n\n return false\n}\n"],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ /*
2
+ * StepIndicator theme
3
+ * Warning, this is just a stop-gap theming to avoid dnb brand colors. This component is not fully "Sbanken-ready"
4
+ */
5
+ /*
6
+ * Utilities
7
+ */
8
+ .dnb-step-indicator-wrapper .dnb-step-indicator__item .dnb-button {
9
+ --border-color: var(--sb-color-gray-light);
10
+ }
11
+ .dnb-step-indicator-wrapper .dnb-step-indicator__item--current .dnb-button {
12
+ --border-color: var(--sb-color-purple-alternative);
13
+ color: var(--sb-color-white);
14
+ background-color: var(--sb-color-purple-alternative);
15
+ }
16
+ .dnb-step-indicator-wrapper .dnb-step-indicator__item--visited .dnb-button {
17
+ --border-color: var(--sb-color-purple-alternative);
18
+ color: var(--sb-color-purple-alternative);
19
+ background-color: var(--sb-color-green-light-2);
20
+ }
21
+ .dnb-step-indicator-wrapper .dnb-step-indicator__item--inactive .dnb-button {
22
+ cursor: text;
23
+ pointer-events: initial;
24
+ -webkit-user-select: initial;
25
+ user-select: initial;
26
+ }
27
+ .dnb-step-indicator-wrapper .dnb-step-indicator__item--inactive .dnb-button.dnb-button--secondary, .dnb-step-indicator-wrapper .dnb-step-indicator__item--inactive .dnb-button.dnb-button--secondary:hover, .dnb-step-indicator-wrapper .dnb-step-indicator__item--inactive .dnb-button.dnb-button--secondary:focus, .dnb-step-indicator-wrapper .dnb-step-indicator__item--inactive .dnb-button.dnb-button--secondary:active {
28
+ color: var(--color-black-80);
29
+ background-color: var(--color-white);
30
+ --border-color: var(--color-black-20);
31
+ --border-width: 0.0625rem;
32
+ box-shadow: inset 0 0 0 var(--border-width) var(--border-color);
33
+ border-color: transparent;
34
+ }
35
+ .dnb-step-indicator-wrapper .dnb-step-indicator__item--inactive.dnb-step-indicator__item--current .dnb-button.dnb-button--secondary, .dnb-step-indicator-wrapper .dnb-step-indicator__item--inactive.dnb-step-indicator__item--current .dnb-button.dnb-button--secondary:hover, .dnb-step-indicator-wrapper .dnb-step-indicator__item--inactive.dnb-step-indicator__item--current .dnb-button.dnb-button--secondary:focus, .dnb-step-indicator-wrapper .dnb-step-indicator__item--inactive.dnb-step-indicator__item--current .dnb-button.dnb-button--secondary:active {
36
+ --border-color: var(--color-black-80);
37
+ --border-width: 0.125rem;
38
+ box-shadow: inset 0 0 0 var(--border-width) var(--border-color);
39
+ border-color: transparent;
40
+ }
41
+ .dnb-step-indicator-wrapper .dnb-step-indicator__label, .dnb-step-indicator-wrapper .dnb-step-indicator__label.dnb-p {
42
+ font-size: var(--font-size-small);
43
+ margin-bottom: 0.5rem;
44
+ }
45
+ .dnb-step-indicator-wrapper .dnb-step-indicator__button__status.dnb-button--secondary {
46
+ color: var(--sb-color-text);
47
+ background-color: var(--sb-color-yellow-light-3);
48
+ }
49
+ .dnb-step-indicator-wrapper .dnb-step-indicator__button__status--error.dnb-button--secondary {
50
+ color: var(--sb-color-text);
51
+ background-color: var(--sb-color-magenta-light-2);
52
+ }
53
+ .dnb-step-indicator-wrapper .dnb-step-indicator__button__status--info.dnb-button--secondary {
54
+ color: var(--sb-color-text);
55
+ background-color: var(--sb-color-gray-light-2);
56
+ }
57
+ .dnb-step-indicator-wrapper .dnb-step-indicator__button__status .dnb-button__icon {
58
+ align-self: flex-start;
59
+ margin-top: 1rem;
60
+ margin-right: 0.25rem;
61
+ }
62
+ .dnb-step-indicator-wrapper .dnb-step-indicator__button__status .dnb-step-indicator__item-content__number, .dnb-step-indicator-wrapper .dnb-step-indicator__button__status .dnb-step-indicator__item-content__status {
63
+ font-weight: var(--font-weight-basis);
64
+ }
65
+ .dnb-step-indicator-wrapper .dnb-step-indicator__button__status .dnb-step-indicator__item-content__status {
66
+ margin-top: 0.5rem;
67
+ font-size: var(--font-size-x-small);
68
+ line-height: var(--font-size-basis);
69
+ color: var(--color-black-80);
70
+ }
@@ -0,0 +1 @@
1
+ .dnb-step-indicator-wrapper .dnb-step-indicator__item .dnb-button{--border-color:var(--sb-color-gray-light)}.dnb-step-indicator-wrapper .dnb-step-indicator__item--current .dnb-button{--border-color:var(--sb-color-purple-alternative);background-color:var(--sb-color-purple-alternative);color:var(--sb-color-white)}.dnb-step-indicator-wrapper .dnb-step-indicator__item--visited .dnb-button{--border-color:var(--sb-color-purple-alternative);background-color:var(--sb-color-green-light-2);color:var(--sb-color-purple-alternative)}.dnb-step-indicator-wrapper .dnb-step-indicator__item--inactive .dnb-button{cursor:text;pointer-events:auto;-webkit-user-select:initial;user-select:auto}.dnb-step-indicator-wrapper .dnb-step-indicator__item--inactive .dnb-button.dnb-button--secondary,.dnb-step-indicator-wrapper .dnb-step-indicator__item--inactive .dnb-button.dnb-button--secondary:active,.dnb-step-indicator-wrapper .dnb-step-indicator__item--inactive .dnb-button.dnb-button--secondary:focus,.dnb-step-indicator-wrapper .dnb-step-indicator__item--inactive .dnb-button.dnb-button--secondary:hover{--border-color:var(--color-black-20);--border-width:0.0625rem;background-color:var(--color-white);border-color:transparent;box-shadow:inset 0 0 0 var(--border-width) var(--border-color);color:var(--color-black-80)}.dnb-step-indicator-wrapper .dnb-step-indicator__item--inactive.dnb-step-indicator__item--current .dnb-button.dnb-button--secondary,.dnb-step-indicator-wrapper .dnb-step-indicator__item--inactive.dnb-step-indicator__item--current .dnb-button.dnb-button--secondary:active,.dnb-step-indicator-wrapper .dnb-step-indicator__item--inactive.dnb-step-indicator__item--current .dnb-button.dnb-button--secondary:focus,.dnb-step-indicator-wrapper .dnb-step-indicator__item--inactive.dnb-step-indicator__item--current .dnb-button.dnb-button--secondary:hover{--border-color:var(--color-black-80);--border-width:0.125rem;border-color:transparent;box-shadow:inset 0 0 0 var(--border-width) var(--border-color)}.dnb-step-indicator-wrapper .dnb-step-indicator__label,.dnb-step-indicator-wrapper .dnb-step-indicator__label.dnb-p{font-size:var(--font-size-small);margin-bottom:.5rem}.dnb-step-indicator-wrapper .dnb-step-indicator__button__status.dnb-button--secondary{background-color:var(--sb-color-yellow-light-3);color:var(--sb-color-text)}.dnb-step-indicator-wrapper .dnb-step-indicator__button__status--error.dnb-button--secondary{background-color:var(--sb-color-magenta-light-2);color:var(--sb-color-text)}.dnb-step-indicator-wrapper .dnb-step-indicator__button__status--info.dnb-button--secondary{background-color:var(--sb-color-gray-light-2);color:var(--sb-color-text)}.dnb-step-indicator-wrapper .dnb-step-indicator__button__status .dnb-button__icon{align-self:flex-start;margin-right:.25rem;margin-top:1rem}.dnb-step-indicator-wrapper .dnb-step-indicator__button__status .dnb-step-indicator__item-content__number,.dnb-step-indicator-wrapper .dnb-step-indicator__button__status .dnb-step-indicator__item-content__status{font-weight:var(--font-weight-basis)}.dnb-step-indicator-wrapper .dnb-step-indicator__button__status .dnb-step-indicator__item-content__status{color:var(--color-black-80);font-size:var(--font-size-x-small);line-height:var(--font-size-basis);margin-top:.5rem}
@@ -0,0 +1,97 @@
1
+ /*
2
+ * StepIndicator theme
3
+ * Warning, this is just a stop-gap theming to avoid dnb brand colors. This component is not fully "Sbanken-ready"
4
+ */
5
+
6
+ @import '../../../../style/core/utilities.scss';
7
+
8
+ .dnb-step-indicator-wrapper .dnb-step-indicator {
9
+ &__item {
10
+ .dnb-button {
11
+ --border-color: var(--sb-color-gray-light);
12
+ }
13
+
14
+ &--current .dnb-button {
15
+ --border-color: var(--sb-color-purple-alternative);
16
+ color: var(--sb-color-white);
17
+ background-color: var(--sb-color-purple-alternative);
18
+ }
19
+
20
+ &--visited .dnb-button {
21
+ --border-color: var(--sb-color-purple-alternative);
22
+ color: var(--sb-color-purple-alternative);
23
+ background-color: var(--sb-color-green-light-2);
24
+ }
25
+
26
+ &--inactive .dnb-button {
27
+ cursor: text;
28
+ pointer-events: initial;
29
+ user-select: initial;
30
+
31
+ &.dnb-button--secondary,
32
+ &.dnb-button--secondary:hover,
33
+ &.dnb-button--secondary:focus,
34
+ &.dnb-button--secondary:active {
35
+ color: var(--color-black-80);
36
+ background-color: var(--color-white);
37
+
38
+ @include fakeBorder(var(--color-black-20), 0.0625rem, inset);
39
+ }
40
+ }
41
+
42
+ &--inactive.dnb-step-indicator__item--current {
43
+ .dnb-button {
44
+ &.dnb-button--secondary,
45
+ &.dnb-button--secondary:hover,
46
+ &.dnb-button--secondary:focus,
47
+ &.dnb-button--secondary:active {
48
+ @include fakeBorder(var(--color-black-80), 0.125rem, inset);
49
+ }
50
+ }
51
+ }
52
+ }
53
+
54
+ &__label,
55
+ &__label.dnb-p {
56
+ font-size: var(--font-size-small);
57
+ margin-bottom: 0.5rem;
58
+ }
59
+
60
+ &__button__status {
61
+ &.dnb-button--secondary {
62
+ color: var(--sb-color-text);
63
+ background-color: var(--sb-color-yellow-light-3);
64
+ }
65
+
66
+ &--error.dnb-button--secondary {
67
+ color: var(--sb-color-text);
68
+ background-color: var(--sb-color-magenta-light-2);
69
+ }
70
+
71
+ &--info.dnb-button--secondary {
72
+ color: var(--sb-color-text);
73
+ background-color: var(--sb-color-gray-light-2);
74
+ }
75
+
76
+ .dnb-button__icon {
77
+ align-self: flex-start;
78
+ margin-top: 1rem;
79
+ margin-right: 0.25rem;
80
+ }
81
+
82
+ .dnb-step-indicator__item-content {
83
+ &__number,
84
+ &__status {
85
+ font-weight: var(--font-weight-basis);
86
+ }
87
+
88
+ &__status {
89
+ margin-top: 0.5rem;
90
+
91
+ font-size: var(--font-size-x-small);
92
+ line-height: var(--font-size-basis);
93
+ color: var(--color-black-80);
94
+ }
95
+ }
96
+ }
97
+ }
@@ -47,8 +47,7 @@
47
47
  .dnb-switch__focus {
48
48
  transition: transform 150ms ease-out;
49
49
  transform: rotate(0deg);
50
- -webkit-clip-path: polygon(50% 15%, 110% 15%, 110% -10%, -10% -10%, -10% 110%, 110% 110%, 110% 85%, 50% 85%);
51
- clip-path: polygon(50% 15%, 110% 15%, 110% -10%, -10% -10%, -10% 110%, 110% 110%, 110% 85%, 50% 85%);
50
+ clip-path: polygon(50% 15%, 110% 15%, 110% -10%, -10% -10%, -10% 110%, 110% 110%, 110% 85%, 50% 85%);
52
51
  }
53
52
  .dnb-switch__input:not(:checked) ~ .dnb-switch__button {
54
53
  background-color: var(--color-white);
@@ -1 +1 @@
1
- .dnb-switch__background{background-color:var(--color-sea-green-30)}.dnb-switch__focus{-webkit-clip-path:polygon(50% 15%,110% 15%,110% -10%,-10% -10%,-10% 110%,110% 110%,110% 85%,50% 85%);clip-path:polygon(50% 15%,110% 15%,110% -10%,-10% -10%,-10% 110%,110% 110%,110% 85%,50% 85%);transform:rotate(0deg);transition:transform .15s ease-out}.dnb-switch__input:not(:checked)~.dnb-switch__button{background-color:var(--color-white);border-color:var(--color-sea-green)}.dnb-switch__input:checked~.dnb-switch__button{background-color:var(--color-sea-green)}.dnb-switch__input:not(:checked)~.dnb-switch__background:after{border:.0625rem solid var(--color-sea-green);border-radius:50%;height:.5rem;right:0;transform:translateX(calc(var(--switch-width--medium) - 2.8rem));width:.5rem}.dnb-switch__input:checked~.dnb-switch__background:after{background-color:var(--color-sea-green);border-radius:.0625rem;height:.5rem;left:0;transform:translateX(calc(var(--switch-width--medium) - 1.87rem));width:.0625rem}.dnb-switch--large .dnb-switch__input:not(:checked)~.dnb-switch__background:after{height:.625rem;transform:translateX(calc(var(--switch-width--large) - 3.7rem));width:.625rem}.dnb-switch--large .dnb-switch__input:checked~.dnb-switch__background:after{height:.625rem;transform:translateX(calc(var(--switch-width--large) - 2.5rem))}.dnb-switch__input[disabled]~.dnb-switch__background{background-color:var(--color-mint-green-25)}.dnb-switch__input[disabled]:checked~.dnb-switch__background:after{background-color:var(--color-sea-green-30)}.dnb-switch__input[disabled]:not(:checked)~.dnb-switch__background:after,.dnb-switch__input[disabled]~.dnb-switch__button{border-color:var(--color-sea-green-30)}.dnb-switch__input[disabled]:checked~.dnb-switch__button{background-color:var(--color-sea-green-30)}html[data-whatinput=keyboard] .dnb-switch__input:not([disabled]):focus~.dnb-switch__button{border:none}html[data-whatinput=keyboard] .dnb-switch__input:not([disabled]):not(:checked):focus~.dnb-switch__button{background-color:var(--color-mint-green-50)}.dnb-switch__input:not([disabled]):checked~.dnb-switch__button .dnb-switch__focus{transform:rotate(180deg)}.dnb-switch__input:not([disabled]):not(:focus):not(:active):hover~.dnb-switch__button{background-color:var(--color-mint-green-50);border-color:var(--color-sea-green)}.dnb-switch__input:not([disabled]):active~.dnb-switch__button{background-color:var(--color-mint-green-50);border-color:transparent}.dnb-switch__status--error .dnb-switch__input:not([disabled]):not(:focus):hover~.dnb-switch__button{background-color:var(--color-fire-red-8);border-color:var(--color-fire-red)}.dnb-switch__status--error .dnb-switch__input:not([disabled]):not(:focus):not(:active):not(:hover)~.dnb-switch__button{border-color:var(--color-fire-red-8)}.dnb-switch__status--error .dnb-switch__input:not([disabled]):not(:focus):not(:active):not(:hover):checked~.dnb-switch__button{background-color:var(--color-fire-red)}.dnb-switch__status--error .dnb-switch__input:not([disabled]):not(:focus):not(:active)~.dnb-switch__background{--border-color:var(--color-fire-red);--border-width:var(--focus-ring-width);background-color:var(--color-fire-red-8);border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}.dnb-switch__status--error .dnb-switch__input:not(:focus):not([disabled]):not(:active):checked~.dnb-switch__background:after{background-color:var(--color-fire-red)}.dnb-switch__status--error .dnb-switch__input:not(:focus):not([disabled]):not(:active):not(:checked)~.dnb-switch__background:after{border-color:var(--color-fire-red)}.dnb-switch__status--error .dnb-switch__input:not([disabled]):not(:focus):not(:active)~.dnb-switch__button .dnb-switch__focus{--border-color:var(--color-fire-red);--border-width:var(--focus-ring-width);border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}.dnb-switch__status--error .dnb-switch__input:not([disabled]):not(:focus):not(:active):checked~.dnb-switch__button .dnb-switch__focus{transform:rotate(180deg)}.dnb-switch>.dnb-form-status{transform:translateY(.1875rem)}
1
+ .dnb-switch__background{background-color:var(--color-sea-green-30)}.dnb-switch__focus{clip-path:polygon(50% 15%,110% 15%,110% -10%,-10% -10%,-10% 110%,110% 110%,110% 85%,50% 85%);transform:rotate(0deg);transition:transform .15s ease-out}.dnb-switch__input:not(:checked)~.dnb-switch__button{background-color:var(--color-white);border-color:var(--color-sea-green)}.dnb-switch__input:checked~.dnb-switch__button{background-color:var(--color-sea-green)}.dnb-switch__input:not(:checked)~.dnb-switch__background:after{border:.0625rem solid var(--color-sea-green);border-radius:50%;height:.5rem;right:0;transform:translateX(calc(var(--switch-width--medium) - 2.8rem));width:.5rem}.dnb-switch__input:checked~.dnb-switch__background:after{background-color:var(--color-sea-green);border-radius:.0625rem;height:.5rem;left:0;transform:translateX(calc(var(--switch-width--medium) - 1.87rem));width:.0625rem}.dnb-switch--large .dnb-switch__input:not(:checked)~.dnb-switch__background:after{height:.625rem;transform:translateX(calc(var(--switch-width--large) - 3.7rem));width:.625rem}.dnb-switch--large .dnb-switch__input:checked~.dnb-switch__background:after{height:.625rem;transform:translateX(calc(var(--switch-width--large) - 2.5rem))}.dnb-switch__input[disabled]~.dnb-switch__background{background-color:var(--color-mint-green-25)}.dnb-switch__input[disabled]:checked~.dnb-switch__background:after{background-color:var(--color-sea-green-30)}.dnb-switch__input[disabled]:not(:checked)~.dnb-switch__background:after,.dnb-switch__input[disabled]~.dnb-switch__button{border-color:var(--color-sea-green-30)}.dnb-switch__input[disabled]:checked~.dnb-switch__button{background-color:var(--color-sea-green-30)}html[data-whatinput=keyboard] .dnb-switch__input:not([disabled]):focus~.dnb-switch__button{border:none}html[data-whatinput=keyboard] .dnb-switch__input:not([disabled]):not(:checked):focus~.dnb-switch__button{background-color:var(--color-mint-green-50)}.dnb-switch__input:not([disabled]):checked~.dnb-switch__button .dnb-switch__focus{transform:rotate(180deg)}.dnb-switch__input:not([disabled]):not(:focus):not(:active):hover~.dnb-switch__button{background-color:var(--color-mint-green-50);border-color:var(--color-sea-green)}.dnb-switch__input:not([disabled]):active~.dnb-switch__button{background-color:var(--color-mint-green-50);border-color:transparent}.dnb-switch__status--error .dnb-switch__input:not([disabled]):not(:focus):hover~.dnb-switch__button{background-color:var(--color-fire-red-8);border-color:var(--color-fire-red)}.dnb-switch__status--error .dnb-switch__input:not([disabled]):not(:focus):not(:active):not(:hover)~.dnb-switch__button{border-color:var(--color-fire-red-8)}.dnb-switch__status--error .dnb-switch__input:not([disabled]):not(:focus):not(:active):not(:hover):checked~.dnb-switch__button{background-color:var(--color-fire-red)}.dnb-switch__status--error .dnb-switch__input:not([disabled]):not(:focus):not(:active)~.dnb-switch__background{--border-color:var(--color-fire-red);--border-width:var(--focus-ring-width);background-color:var(--color-fire-red-8);border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}.dnb-switch__status--error .dnb-switch__input:not(:focus):not([disabled]):not(:active):checked~.dnb-switch__background:after{background-color:var(--color-fire-red)}.dnb-switch__status--error .dnb-switch__input:not(:focus):not([disabled]):not(:active):not(:checked)~.dnb-switch__background:after{border-color:var(--color-fire-red)}.dnb-switch__status--error .dnb-switch__input:not([disabled]):not(:focus):not(:active)~.dnb-switch__button .dnb-switch__focus{--border-color:var(--color-fire-red);--border-width:var(--focus-ring-width);border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}.dnb-switch__status--error .dnb-switch__input:not([disabled]):not(:focus):not(:active):checked~.dnb-switch__button .dnb-switch__focus{transform:rotate(180deg)}.dnb-switch>.dnb-form-status{transform:translateY(.1875rem)}
@@ -61,8 +61,7 @@
61
61
  }
62
62
  .dnb-table--outline {
63
63
  position: relative;
64
- -webkit-clip-path: inset(0 0 -10rem 0 round var(--table-outline-radius) var(--table-outline-radius) 0 0);
65
- clip-path: inset(0 0 -10rem 0 round var(--table-outline-radius) var(--table-outline-radius) 0 0);
64
+ clip-path: inset(0 0 -10rem 0 round var(--table-outline-radius) var(--table-outline-radius) 0 0);
66
65
  z-index: 1;
67
66
  }
68
67
  .dnb-table--outline, .dnb-table--outline::after {
@@ -85,8 +84,7 @@
85
84
  }
86
85
  .dnb-table--outline > caption:not(.dnb-sr-only) ~ tbody:last-child .dnb-table__tr:last-child,
87
86
  .dnb-table--outline > caption:not(.dnb-sr-only) ~ tbody:last-child .dnb-table__tr--has-accordion-content.dnb-table__tr--last {
88
- -webkit-clip-path: none;
89
- clip-path: none;
87
+ clip-path: none;
90
88
  }
91
89
  .dnb-table--outline > caption:not(.dnb-sr-only) ~ tbody:last-child .dnb-table__tr:last-child .dnb-table__th, .dnb-table--outline > caption:not(.dnb-sr-only) ~ tbody:last-child .dnb-table__tr:last-child .dnb-table__th::before, .dnb-table--outline > caption:not(.dnb-sr-only) ~ tbody:last-child .dnb-table__tr:last-child .dnb-table__th::after,
92
90
  .dnb-table--outline > caption:not(.dnb-sr-only) ~ tbody:last-child .dnb-table__tr:last-child .dnb-table__td,
@@ -399,8 +397,7 @@ html[data-whatinput=keyboard] .dnb-table > thead > tr > th.dnb-table--active .dn
399
397
  }
400
398
  .dnb-table--outline tbody:last-child .dnb-table__tr:last-child,
401
399
  .dnb-table--outline tbody:last-child .dnb-table__tr--has-accordion-content:not(.dnb-table__tr--expanded).dnb-table__tr--last {
402
- -webkit-clip-path: inset(0 round 0 0 var(--table-outline-radius) var(--table-outline-radius));
403
- clip-path: inset(0 round 0 0 var(--table-outline-radius) var(--table-outline-radius));
400
+ clip-path: inset(0 round 0 0 var(--table-outline-radius) var(--table-outline-radius));
404
401
  }
405
402
  .dnb-table--outline tbody:last-child .dnb-table__tr:last-child .dnb-table__th:first-child, .dnb-table--outline tbody:last-child .dnb-table__tr:last-child .dnb-table__th:first-child::before, .dnb-table--outline tbody:last-child .dnb-table__tr:last-child .dnb-table__th:first-child::after,
406
403
  .dnb-table--outline tbody:last-child .dnb-table__tr:last-child .dnb-table__td:first-child,
@@ -481,8 +478,7 @@ html[data-whatinput=keyboard] .dnb-table > thead > tr > th.dnb-table--active .dn
481
478
  bottom: 0;
482
479
  height: 6px;
483
480
  box-shadow: var(--shadow-default-x) -2px 12px 8px var(--shadow-default-color);
484
- -webkit-clip-path: inset(6px 0 -48px 0);
485
- clip-path: inset(6px 0 -48px 0);
481
+ clip-path: inset(6px 0 -48px 0);
486
482
  }
487
483
 
488
484
  /*
@@ -557,8 +553,7 @@ html[data-whatinput=keyboard] .dnb-table > thead > tr > th.dnb-table--active .dn
557
553
  min-height: 1rem;
558
554
  }
559
555
  .dnb-table__container .dnb-table__scroll-view {
560
- -webkit-clip-path: inset(0 round 0 0 var(--table-outline-radius) var(--table-outline-radius));
561
- clip-path: inset(0 round 0 0 var(--table-outline-radius) var(--table-outline-radius));
556
+ clip-path: inset(0 round 0 0 var(--table-outline-radius) var(--table-outline-radius));
562
557
  }
563
558
  @supports (-webkit-appearance: none) and (not (-moz-appearance: meterbar)) {
564
559
  .dnb-table__container::after {