@dnb/eufemia 10.37.0 → 10.38.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 (345) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/cjs/components/accordion/Accordion.d.ts +13 -3
  3. package/cjs/components/accordion/Accordion.js +14 -9
  4. package/cjs/components/accordion/Accordion.js.map +1 -1
  5. package/cjs/components/accordion/AccordionContext.d.ts +2 -0
  6. package/cjs/components/accordion/AccordionContext.js.map +1 -1
  7. package/cjs/components/accordion/AccordionDocs.js +5 -0
  8. package/cjs/components/accordion/AccordionDocs.js.map +1 -1
  9. package/cjs/components/accordion/AccordionGroup.js +6 -3
  10. package/cjs/components/accordion/AccordionGroup.js.map +1 -1
  11. package/cjs/components/accordion/AccordionProviderContext.d.ts +2 -0
  12. package/cjs/components/accordion/AccordionProviderContext.js.map +1 -1
  13. package/cjs/components/accordion/AccordionStore.d.ts +2 -0
  14. package/cjs/components/accordion/AccordionStore.js +1 -1
  15. package/cjs/components/accordion/AccordionStore.js.map +1 -1
  16. package/cjs/components/accordion/style/themes/dnb-accordion-theme-ui.css +1 -0
  17. package/cjs/components/accordion/style/themes/dnb-accordion-theme-ui.min.css +1 -1
  18. package/cjs/components/accordion/style/themes/dnb-accordion-theme-ui.scss +3 -0
  19. package/cjs/components/button/Button.d.ts +1 -1
  20. package/cjs/components/card/Card.js +4 -3
  21. package/cjs/components/card/Card.js.map +1 -1
  22. package/cjs/components/card/style/dnb-card.css +16 -0
  23. package/cjs/components/card/style/dnb-card.min.css +1 -1
  24. package/cjs/components/card/style/dnb-card.scss +17 -0
  25. package/cjs/components/card/style/themes/dnb-card-theme-sbanken.css +4 -4
  26. package/cjs/components/card/style/themes/dnb-card-theme-sbanken.min.css +1 -1
  27. package/cjs/components/card/style/themes/dnb-card-theme-sbanken.scss +3 -5
  28. package/cjs/components/card/style/themes/dnb-card-theme-ui.css +4 -7
  29. package/cjs/components/card/style/themes/dnb-card-theme-ui.min.css +1 -1
  30. package/cjs/components/card/style/themes/dnb-card-theme-ui.scss +3 -7
  31. package/cjs/components/checkbox/style/dnb-checkbox.scss +1 -1
  32. package/cjs/components/height-animation/HeightAnimation.d.ts +1 -1
  33. package/cjs/components/height-animation/HeightAnimation.js +6 -2
  34. package/cjs/components/height-animation/HeightAnimation.js.map +1 -1
  35. package/cjs/components/height-animation/HeightAnimationDocs.d.ts +3 -0
  36. package/cjs/components/height-animation/HeightAnimationDocs.js +83 -0
  37. package/cjs/components/height-animation/HeightAnimationDocs.js.map +1 -0
  38. package/cjs/components/height-animation/style/dnb-height-animation.css +3 -2
  39. package/cjs/components/height-animation/style/dnb-height-animation.min.css +1 -1
  40. package/cjs/components/height-animation/style/dnb-height-animation.scss +3 -2
  41. package/cjs/components/height-animation/useHeightAnimation.d.ts +6 -1
  42. package/cjs/components/height-animation/useHeightAnimation.js +36 -6
  43. package/cjs/components/height-animation/useHeightAnimation.js.map +1 -1
  44. package/cjs/components/radio/RadioGroup.js +4 -2
  45. package/cjs/components/radio/RadioGroup.js.map +1 -1
  46. package/cjs/components/radio/style/dnb-radio.css +8 -5
  47. package/cjs/components/radio/style/dnb-radio.min.css +1 -1
  48. package/cjs/components/radio/style/dnb-radio.scss +11 -13
  49. package/cjs/components/section/Section.js +3 -0
  50. package/cjs/components/section/Section.js.map +1 -1
  51. package/cjs/components/section/style/dnb-section.scss +2 -0
  52. package/cjs/components/toggle-button/ToggleButtonGroup.js +6 -3
  53. package/cjs/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  54. package/cjs/components/toggle-button/style/dnb-toggle-button.css +3 -3
  55. package/cjs/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  56. package/cjs/components/toggle-button/style/dnb-toggle-button.scss +6 -2
  57. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +14 -0
  58. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js +90 -31
  59. package/cjs/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  60. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +12 -3
  61. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  62. package/cjs/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +14 -3
  63. package/cjs/extensions/forms/Field/Selection/Selection.d.ts +15 -3
  64. package/cjs/extensions/forms/Field/Selection/Selection.js +71 -42
  65. package/cjs/extensions/forms/Field/Selection/Selection.js.map +1 -1
  66. package/cjs/extensions/forms/Field/Selection/style/dnb-selection.css +9 -0
  67. package/cjs/extensions/forms/Field/Selection/style/dnb-selection.min.css +1 -1
  68. package/cjs/extensions/forms/Field/Selection/style/dnb-selection.scss +16 -0
  69. package/cjs/extensions/forms/Form/Visibility/Visibility.d.ts +3 -1
  70. package/cjs/extensions/forms/Form/Visibility/Visibility.js +4 -2
  71. package/cjs/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  72. package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js +5 -0
  73. package/cjs/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  74. package/cjs/extensions/forms/style/dnb-forms.css +21 -3
  75. package/cjs/extensions/forms/style/dnb-forms.min.css +1 -1
  76. package/cjs/extensions/forms/types.d.ts +1 -1
  77. package/cjs/extensions/forms/types.js.map +1 -1
  78. package/cjs/shared/Eufemia.d.ts +1 -1
  79. package/cjs/shared/Eufemia.js +2 -2
  80. package/cjs/shared/Eufemia.js.map +1 -1
  81. package/cjs/style/core/scopes.scss +1 -1
  82. package/cjs/style/dnb-ui-basis.css +1 -1
  83. package/cjs/style/dnb-ui-basis.min.css +1 -1
  84. package/cjs/style/dnb-ui-body.css +1 -1
  85. package/cjs/style/dnb-ui-body.min.css +1 -1
  86. package/cjs/style/dnb-ui-components.css +51 -13
  87. package/cjs/style/dnb-ui-components.min.css +3 -3
  88. package/cjs/style/dnb-ui-core.css +1 -1
  89. package/cjs/style/dnb-ui-core.min.css +1 -1
  90. package/cjs/style/dnb-ui-extensions.css +21 -3
  91. package/cjs/style/dnb-ui-extensions.min.css +1 -1
  92. package/cjs/style/dnb-ui-forms.css +21 -3
  93. package/cjs/style/dnb-ui-forms.min.css +1 -1
  94. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.css +77 -23
  95. package/cjs/style/themes/theme-eiendom/eiendom-theme-components.min.css +5 -5
  96. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.css +21 -3
  97. package/cjs/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  98. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.css +21 -3
  99. package/cjs/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  100. package/cjs/style/themes/theme-sbanken/fonts.scss +1 -1
  101. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.css +76 -20
  102. package/cjs/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
  103. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.css +21 -3
  104. package/cjs/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  105. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.css +21 -3
  106. package/cjs/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  107. package/cjs/style/themes/theme-ui/ui-theme-components.css +77 -23
  108. package/cjs/style/themes/theme-ui/ui-theme-components.min.css +5 -5
  109. package/cjs/style/themes/theme-ui/ui-theme-extensions.css +21 -3
  110. package/cjs/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  111. package/cjs/style/themes/theme-ui/ui-theme-forms.css +21 -3
  112. package/cjs/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  113. package/components/accordion/Accordion.d.ts +13 -3
  114. package/components/accordion/Accordion.js +15 -10
  115. package/components/accordion/Accordion.js.map +1 -1
  116. package/components/accordion/AccordionContext.d.ts +2 -0
  117. package/components/accordion/AccordionContext.js.map +1 -1
  118. package/components/accordion/AccordionDocs.js +5 -0
  119. package/components/accordion/AccordionDocs.js.map +1 -1
  120. package/components/accordion/AccordionGroup.js +6 -3
  121. package/components/accordion/AccordionGroup.js.map +1 -1
  122. package/components/accordion/AccordionProviderContext.d.ts +2 -0
  123. package/components/accordion/AccordionProviderContext.js.map +1 -1
  124. package/components/accordion/AccordionStore.d.ts +2 -0
  125. package/components/accordion/AccordionStore.js +1 -1
  126. package/components/accordion/AccordionStore.js.map +1 -1
  127. package/components/accordion/style/themes/dnb-accordion-theme-ui.css +1 -0
  128. package/components/accordion/style/themes/dnb-accordion-theme-ui.min.css +1 -1
  129. package/components/accordion/style/themes/dnb-accordion-theme-ui.scss +3 -0
  130. package/components/button/Button.d.ts +1 -1
  131. package/components/card/Card.js +4 -3
  132. package/components/card/Card.js.map +1 -1
  133. package/components/card/style/dnb-card.css +16 -0
  134. package/components/card/style/dnb-card.min.css +1 -1
  135. package/components/card/style/dnb-card.scss +17 -0
  136. package/components/card/style/themes/dnb-card-theme-sbanken.css +4 -4
  137. package/components/card/style/themes/dnb-card-theme-sbanken.min.css +1 -1
  138. package/components/card/style/themes/dnb-card-theme-sbanken.scss +3 -5
  139. package/components/card/style/themes/dnb-card-theme-ui.css +4 -7
  140. package/components/card/style/themes/dnb-card-theme-ui.min.css +1 -1
  141. package/components/card/style/themes/dnb-card-theme-ui.scss +3 -7
  142. package/components/checkbox/style/dnb-checkbox.scss +1 -1
  143. package/components/height-animation/HeightAnimation.d.ts +1 -1
  144. package/components/height-animation/HeightAnimation.js +6 -2
  145. package/components/height-animation/HeightAnimation.js.map +1 -1
  146. package/components/height-animation/HeightAnimationDocs.d.ts +3 -0
  147. package/components/height-animation/HeightAnimationDocs.js +75 -0
  148. package/components/height-animation/HeightAnimationDocs.js.map +1 -0
  149. package/components/height-animation/style/dnb-height-animation.css +3 -2
  150. package/components/height-animation/style/dnb-height-animation.min.css +1 -1
  151. package/components/height-animation/style/dnb-height-animation.scss +3 -2
  152. package/components/height-animation/useHeightAnimation.d.ts +6 -1
  153. package/components/height-animation/useHeightAnimation.js +37 -7
  154. package/components/height-animation/useHeightAnimation.js.map +1 -1
  155. package/components/radio/RadioGroup.js +4 -2
  156. package/components/radio/RadioGroup.js.map +1 -1
  157. package/components/radio/style/dnb-radio.css +8 -5
  158. package/components/radio/style/dnb-radio.min.css +1 -1
  159. package/components/radio/style/dnb-radio.scss +11 -13
  160. package/components/section/Section.js +3 -0
  161. package/components/section/Section.js.map +1 -1
  162. package/components/section/style/dnb-section.scss +2 -0
  163. package/components/toggle-button/ToggleButtonGroup.js +6 -3
  164. package/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  165. package/components/toggle-button/style/dnb-toggle-button.css +3 -3
  166. package/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  167. package/components/toggle-button/style/dnb-toggle-button.scss +6 -2
  168. package/es/components/accordion/Accordion.d.ts +13 -3
  169. package/es/components/accordion/Accordion.js +15 -10
  170. package/es/components/accordion/Accordion.js.map +1 -1
  171. package/es/components/accordion/AccordionContext.d.ts +2 -0
  172. package/es/components/accordion/AccordionContext.js.map +1 -1
  173. package/es/components/accordion/AccordionDocs.js +5 -0
  174. package/es/components/accordion/AccordionDocs.js.map +1 -1
  175. package/es/components/accordion/AccordionGroup.js +6 -3
  176. package/es/components/accordion/AccordionGroup.js.map +1 -1
  177. package/es/components/accordion/AccordionProviderContext.d.ts +2 -0
  178. package/es/components/accordion/AccordionProviderContext.js.map +1 -1
  179. package/es/components/accordion/AccordionStore.d.ts +2 -0
  180. package/es/components/accordion/AccordionStore.js +1 -1
  181. package/es/components/accordion/AccordionStore.js.map +1 -1
  182. package/es/components/accordion/style/themes/dnb-accordion-theme-ui.css +1 -0
  183. package/es/components/accordion/style/themes/dnb-accordion-theme-ui.min.css +1 -1
  184. package/es/components/accordion/style/themes/dnb-accordion-theme-ui.scss +3 -0
  185. package/es/components/button/Button.d.ts +1 -1
  186. package/es/components/card/Card.js +4 -3
  187. package/es/components/card/Card.js.map +1 -1
  188. package/es/components/card/style/dnb-card.css +16 -0
  189. package/es/components/card/style/dnb-card.min.css +1 -1
  190. package/es/components/card/style/dnb-card.scss +17 -0
  191. package/es/components/card/style/themes/dnb-card-theme-sbanken.css +4 -4
  192. package/es/components/card/style/themes/dnb-card-theme-sbanken.min.css +1 -1
  193. package/es/components/card/style/themes/dnb-card-theme-sbanken.scss +3 -5
  194. package/es/components/card/style/themes/dnb-card-theme-ui.css +4 -7
  195. package/es/components/card/style/themes/dnb-card-theme-ui.min.css +1 -1
  196. package/es/components/card/style/themes/dnb-card-theme-ui.scss +3 -7
  197. package/es/components/checkbox/style/dnb-checkbox.scss +1 -1
  198. package/es/components/height-animation/HeightAnimation.d.ts +1 -1
  199. package/es/components/height-animation/HeightAnimation.js +6 -2
  200. package/es/components/height-animation/HeightAnimation.js.map +1 -1
  201. package/es/components/height-animation/HeightAnimationDocs.d.ts +3 -0
  202. package/es/components/height-animation/HeightAnimationDocs.js +75 -0
  203. package/es/components/height-animation/HeightAnimationDocs.js.map +1 -0
  204. package/es/components/height-animation/style/dnb-height-animation.css +3 -2
  205. package/es/components/height-animation/style/dnb-height-animation.min.css +1 -1
  206. package/es/components/height-animation/style/dnb-height-animation.scss +3 -2
  207. package/es/components/height-animation/useHeightAnimation.d.ts +6 -1
  208. package/es/components/height-animation/useHeightAnimation.js +37 -7
  209. package/es/components/height-animation/useHeightAnimation.js.map +1 -1
  210. package/es/components/radio/RadioGroup.js +4 -2
  211. package/es/components/radio/RadioGroup.js.map +1 -1
  212. package/es/components/radio/style/dnb-radio.css +8 -5
  213. package/es/components/radio/style/dnb-radio.min.css +1 -1
  214. package/es/components/radio/style/dnb-radio.scss +11 -13
  215. package/es/components/section/Section.js +3 -0
  216. package/es/components/section/Section.js.map +1 -1
  217. package/es/components/section/style/dnb-section.scss +2 -0
  218. package/es/components/toggle-button/ToggleButtonGroup.js +6 -3
  219. package/es/components/toggle-button/ToggleButtonGroup.js.map +1 -1
  220. package/es/components/toggle-button/style/dnb-toggle-button.css +3 -3
  221. package/es/components/toggle-button/style/dnb-toggle-button.min.css +1 -1
  222. package/es/components/toggle-button/style/dnb-toggle-button.scss +6 -2
  223. package/es/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +14 -0
  224. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js +87 -29
  225. package/es/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  226. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +12 -3
  227. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  228. package/es/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +14 -3
  229. package/es/extensions/forms/Field/Selection/Selection.d.ts +15 -3
  230. package/es/extensions/forms/Field/Selection/Selection.js +68 -42
  231. package/es/extensions/forms/Field/Selection/Selection.js.map +1 -1
  232. package/es/extensions/forms/Field/Selection/style/dnb-selection.css +9 -0
  233. package/es/extensions/forms/Field/Selection/style/dnb-selection.min.css +1 -1
  234. package/es/extensions/forms/Field/Selection/style/dnb-selection.scss +16 -0
  235. package/es/extensions/forms/Form/Visibility/Visibility.d.ts +3 -1
  236. package/es/extensions/forms/Form/Visibility/Visibility.js +4 -2
  237. package/es/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  238. package/es/extensions/forms/Form/Visibility/VisibilityDocs.js +5 -0
  239. package/es/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  240. package/es/extensions/forms/style/dnb-forms.css +21 -3
  241. package/es/extensions/forms/style/dnb-forms.min.css +1 -1
  242. package/es/extensions/forms/types.d.ts +1 -1
  243. package/es/extensions/forms/types.js.map +1 -1
  244. package/es/shared/Eufemia.d.ts +1 -1
  245. package/es/shared/Eufemia.js +2 -2
  246. package/es/shared/Eufemia.js.map +1 -1
  247. package/es/style/core/scopes.scss +1 -1
  248. package/es/style/dnb-ui-basis.css +1 -1
  249. package/es/style/dnb-ui-basis.min.css +1 -1
  250. package/es/style/dnb-ui-body.css +1 -1
  251. package/es/style/dnb-ui-body.min.css +1 -1
  252. package/es/style/dnb-ui-components.css +51 -13
  253. package/es/style/dnb-ui-components.min.css +3 -3
  254. package/es/style/dnb-ui-core.css +1 -1
  255. package/es/style/dnb-ui-core.min.css +1 -1
  256. package/es/style/dnb-ui-extensions.css +21 -3
  257. package/es/style/dnb-ui-extensions.min.css +1 -1
  258. package/es/style/dnb-ui-forms.css +21 -3
  259. package/es/style/dnb-ui-forms.min.css +1 -1
  260. package/es/style/themes/theme-eiendom/eiendom-theme-components.css +77 -23
  261. package/es/style/themes/theme-eiendom/eiendom-theme-components.min.css +5 -5
  262. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.css +21 -3
  263. package/es/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  264. package/es/style/themes/theme-eiendom/eiendom-theme-forms.css +21 -3
  265. package/es/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  266. package/es/style/themes/theme-sbanken/fonts.scss +1 -1
  267. package/es/style/themes/theme-sbanken/sbanken-theme-components.css +76 -20
  268. package/es/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
  269. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.css +21 -3
  270. package/es/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  271. package/es/style/themes/theme-sbanken/sbanken-theme-forms.css +21 -3
  272. package/es/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  273. package/es/style/themes/theme-ui/ui-theme-components.css +77 -23
  274. package/es/style/themes/theme-ui/ui-theme-components.min.css +5 -5
  275. package/es/style/themes/theme-ui/ui-theme-extensions.css +21 -3
  276. package/es/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  277. package/es/style/themes/theme-ui/ui-theme-forms.css +21 -3
  278. package/es/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  279. package/esm/dnb-ui-basis.min.mjs +1 -1
  280. package/esm/dnb-ui-components.min.mjs +1 -1
  281. package/esm/dnb-ui-elements.min.mjs +1 -1
  282. package/esm/dnb-ui-extensions.min.mjs +2 -2
  283. package/esm/dnb-ui-lib.min.mjs +1 -1
  284. package/extensions/forms/Field/ArraySelection/ArraySelection.d.ts +14 -0
  285. package/extensions/forms/Field/ArraySelection/ArraySelection.js +88 -29
  286. package/extensions/forms/Field/ArraySelection/ArraySelection.js.map +1 -1
  287. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.css +12 -3
  288. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.min.css +1 -1
  289. package/extensions/forms/Field/ArraySelection/style/dnb-array-selection.scss +14 -3
  290. package/extensions/forms/Field/Selection/Selection.d.ts +15 -3
  291. package/extensions/forms/Field/Selection/Selection.js +69 -42
  292. package/extensions/forms/Field/Selection/Selection.js.map +1 -1
  293. package/extensions/forms/Field/Selection/style/dnb-selection.css +9 -0
  294. package/extensions/forms/Field/Selection/style/dnb-selection.min.css +1 -1
  295. package/extensions/forms/Field/Selection/style/dnb-selection.scss +16 -0
  296. package/extensions/forms/Form/Visibility/Visibility.d.ts +3 -1
  297. package/extensions/forms/Form/Visibility/Visibility.js +4 -2
  298. package/extensions/forms/Form/Visibility/Visibility.js.map +1 -1
  299. package/extensions/forms/Form/Visibility/VisibilityDocs.js +5 -0
  300. package/extensions/forms/Form/Visibility/VisibilityDocs.js.map +1 -1
  301. package/extensions/forms/style/dnb-forms.css +21 -3
  302. package/extensions/forms/style/dnb-forms.min.css +1 -1
  303. package/extensions/forms/types.d.ts +1 -1
  304. package/extensions/forms/types.js.map +1 -1
  305. package/package.json +1 -1
  306. package/shared/Eufemia.d.ts +1 -1
  307. package/shared/Eufemia.js +2 -2
  308. package/shared/Eufemia.js.map +1 -1
  309. package/style/core/scopes.scss +1 -1
  310. package/style/dnb-ui-basis.css +1 -1
  311. package/style/dnb-ui-basis.min.css +1 -1
  312. package/style/dnb-ui-body.css +1 -1
  313. package/style/dnb-ui-body.min.css +1 -1
  314. package/style/dnb-ui-components.css +51 -13
  315. package/style/dnb-ui-components.min.css +3 -3
  316. package/style/dnb-ui-core.css +1 -1
  317. package/style/dnb-ui-core.min.css +1 -1
  318. package/style/dnb-ui-extensions.css +21 -3
  319. package/style/dnb-ui-extensions.min.css +1 -1
  320. package/style/dnb-ui-forms.css +21 -3
  321. package/style/dnb-ui-forms.min.css +1 -1
  322. package/style/themes/theme-eiendom/eiendom-theme-components.css +77 -23
  323. package/style/themes/theme-eiendom/eiendom-theme-components.min.css +5 -5
  324. package/style/themes/theme-eiendom/eiendom-theme-extensions.css +21 -3
  325. package/style/themes/theme-eiendom/eiendom-theme-extensions.min.css +1 -1
  326. package/style/themes/theme-eiendom/eiendom-theme-forms.css +21 -3
  327. package/style/themes/theme-eiendom/eiendom-theme-forms.min.css +1 -1
  328. package/style/themes/theme-sbanken/fonts.scss +1 -1
  329. package/style/themes/theme-sbanken/sbanken-theme-components.css +76 -20
  330. package/style/themes/theme-sbanken/sbanken-theme-components.min.css +4 -4
  331. package/style/themes/theme-sbanken/sbanken-theme-extensions.css +21 -3
  332. package/style/themes/theme-sbanken/sbanken-theme-extensions.min.css +1 -1
  333. package/style/themes/theme-sbanken/sbanken-theme-forms.css +21 -3
  334. package/style/themes/theme-sbanken/sbanken-theme-forms.min.css +1 -1
  335. package/style/themes/theme-ui/ui-theme-components.css +77 -23
  336. package/style/themes/theme-ui/ui-theme-components.min.css +5 -5
  337. package/style/themes/theme-ui/ui-theme-extensions.css +21 -3
  338. package/style/themes/theme-ui/ui-theme-extensions.min.css +1 -1
  339. package/style/themes/theme-ui/ui-theme-forms.css +21 -3
  340. package/style/themes/theme-ui/ui-theme-forms.min.css +1 -1
  341. package/umd/dnb-ui-basis.min.js +1 -1
  342. package/umd/dnb-ui-components.min.js +1 -1
  343. package/umd/dnb-ui-elements.min.js +1 -1
  344. package/umd/dnb-ui-extensions.min.js +3 -3
  345. package/umd/dnb-ui-lib.min.js +1 -1
@@ -1 +1 @@
1
- :root{--radio-width--medium:1.5rem;--radio-height--medium:1.5rem}.dnb-radio{--radio-dot--medium:0.75rem;--radio-dot--large:1.125rem;--radio-width--large:2rem;--radio-height--large:2rem;--radio-border-width:0.09375rem;--radio-color-dot-on:#000;--radio-color-background-on:#fff;--radio-color-border-on:#000;--radio-color-background-off:#fff;--radio-color-border-off:#000;--radio-border-width--disabled:0.125rem;--radio-color-dot-on--disabled:#d3d3d3;--radio-color-background--disabled:#fff;--radio-color-border-on--disabled:#d3d3d3;--radio-color-border-off--disabled:#d3d3d3;--radio-color-dot-on--active:#d3d3d3;--radio-color-border-on--active:#d3d3d3;--radio-color-background-off--active:#d3d3d3;--radio-color-border-off--active:transparent;--radio-border-width--hover:0.125rem;--radio-border-width-on--hover:0.125rem;--radio-color-dot-on--hover:#d3d3d3;--radio-color-background-on--hover:#d3d3d3;--radio-color-background-off--hover:#d3d3d3;--radio-border-width--focus:0.125rem;--radio-color-background-on--focus:var(--color-white);--radio-color-background-off--focus:#d3d3d3;--radio-color-dot-on--error:red;--radio-color-border-on--error:red;--radio-color-border--error-hover:red;--radio-color-background-off--error-hover:#fff0f5;--radio-color-background-on--error-hover:#fff0f5;--radio-color-dot-on--error-hover:#fff0f5;--radio-focus-ring-width--error:var(--focus-ring-width);--radio-bounding--medium:1.75,1.5;--radio-bounding--large:1.25,1.12;font-size:var(--font-size-small);line-height:var(--line-height-basis)}.dnb-radio,.dnb-radio__inner{display:inline-flex;flex-direction:column}.dnb-radio__inner{align-self:center}.dnb-radio__shell{align-items:center;display:flex;flex-shrink:0;height:var(--radio-height--medium);justify-content:center;position:relative;-webkit-user-select:none;user-select:none;width:var(--radio-width--medium)}.dnb-radio__button,.dnb-radio__dot,.dnb-radio__focus{position:absolute;z-index:4}.dnb-radio__button{border:var(--radio-border-width) solid transparent}.dnb-radio__focus{display:none;outline:none}html[data-whatinput=keyboard] .dnb-radio__focus{--border-color:var(--focus-ring-color);--border-width:var(--focus-ring-width);border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}.dnb-radio__button,.dnb-radio__focus{border-radius:50%;height:calc(var(--radio-height--medium) - .25rem);width:calc(var(--radio-width--medium) - .25rem)}.dnb-radio--large .dnb-radio__button,.dnb-radio--large .dnb-radio__focus{height:var(--radio-height--large);width:var(--radio-width--large)}.dnb-radio__dot{background-color:var(--radio-color-dot-on);border-radius:50%;height:var(--radio-dot--medium);transition:opacity .2s ease-out,transform .2s ease-out;width:var(--radio-dot--medium)}.dnb-radio--large .dnb-radio__dot{height:var(--radio-dot--large);width:var(--radio-dot--large)}.dnb-radio__input{border:0;height:var(--radio-height--medium);left:auto;margin:0;opacity:0;padding:0;position:absolute;top:auto;transform:scale(var(--radio-bounding--medium));width:var(--radio-width--medium);z-index:5}.dnb-radio--large .dnb-radio__input{height:var(--radio-height--large);transform:scale(var(--radio-bounding--large));width:var(--radio-width--large)}.dnb-radio__input:not([disabled]){cursor:pointer}.dnb-radio__order{align-items:baseline;display:inline-flex}.dnb-radio-group--column .dnb-radio__order{display:flex}.dnb-radio__row{display:inline-flex}.dnb-radio__suffix{order:3}.dnb-radio__suffix .dnb-modal__trigger{margin-bottom:-.25rem;margin-top:-.25rem}.dnb-radio-group__suffix{font-size:var(--font-size-basis)}.dnb-radio--large,.dnb-radio--large .dnb-radio__suffix{line-height:var(--radio-height--large)}.dnb-radio--large .dnb-radio__shell{height:var(--radio-height--large);width:var(--radio-width--large)}.dnb-radio .dnb-form-label{margin-bottom:0;margin-left:0;margin-right:0}.dnb-radio--label-position-left .dnb-radio__order .dnb-radio__inner{order:2}.dnb-radio--label-position-left .dnb-radio__order .dnb-form-label{order:1;padding-right:.5rem}.dnb-radio--label-position-right .dnb-radio__order .dnb-radio__inner{order:1}.dnb-radio--label-position-right .dnb-radio__order .dnb-form-label{order:2;padding-left:.5rem}:not(.dnb-radio-group)>.dnb-form-label+.dnb-radio{vertical-align:top}.dnb-radio .dnb-form-status{margin-bottom:0;margin-top:.375rem;order:4}.dnb-radio+.dnb-form-status{margin-bottom:1rem;margin-top:.5rem}.dnb-radio>.dnb-form-status{transform:translateY(.25rem)}.dnb-radio-group{--radio-group-margin-bottom:0.5rem;--radio-group-margin-right:1rem;display:inline-flex}.dnb-radio-group fieldset{border:none;margin:0;padding:0}.dnb-radio-group--column .dnb-radio{display:flex;margin-right:0}.dnb-radio-group .dnb-radio:last-of-type{margin-right:0}.dnb-radio-group [role=radiogroup],.dnb-radio-group__shell{-moz-column-gap:var(--radio-group-margin-right);column-gap:var(--radio-group-margin-right);display:flex;flex-wrap:wrap;row-gap:var(--radio-group-margin-bottom)}.dnb-radio-group__shell>.dnb-form-status{margin-bottom:0;margin-top:0}.dnb-radio-group--column .dnb-radio-group__shell{flex-direction:column}.dnb-radio__input:checked~.dnb-radio__button,.dnb-radio__input[data-checked=true]~.dnb-radio__button{background-color:var(--radio-color-background-on);border-color:var(--radio-color-border-on)}.dnb-radio__input:checked~.dnb-radio__dot,.dnb-radio__input[data-checked=true]~.dnb-radio__dot{opacity:1;transform:scale(1)}.dnb-radio__input:not(:checked):not([data-checked=true])~.dnb-radio__dot{opacity:0;transform:scale(.8)}.dnb-radio__input:not(:checked):not([data-checked=true])~.dnb-radio__button{background-color:var(--radio-color-background-off);border-color:var(--radio-color-border-off)}.dnb-radio__input[disabled]~.dnb-radio__button{border-width:var(--radio-border-width--disabled)}.dnb-radio__input[disabled]:checked~.dnb-radio__button,.dnb-radio__input[disabled][data-checked=true]~.dnb-radio__button{background-color:var(--radio-color-background--disabled);border-color:var(--radio-color-border-on--disabled)}.dnb-radio__input[disabled]:checked~.dnb-radio__dot,.dnb-radio__input[disabled][data-checked=true]~.dnb-radio__dot{background-color:var(--radio-color-dot-on--disabled)}.dnb-radio__input[disabled]:not(:checked):not([data-checked=true])~.dnb-radio__button:not(.dnb-skeleton){background-color:var(--radio-color-background--disabled);border-color:var(--radio-color-border-off--disabled)}.dnb-radio__input[disabled]~.dnb-radio__button.dnb-skeleton{border-color:var(--skeleton-color)}.dnb-radio__input[disabled]~.dnb-radio__button.dnb-skeleton:before{border-radius:0}.dnb-radio__input:not([disabled]):checked:active~.dnb-radio__button,.dnb-radio__input:not([disabled])[data-checked=true]:active~.dnb-radio__button{border-color:var(--radio-color-border-on--active)}.dnb-radio__input:not([disabled]):checked:active~.dnb-radio__dot,.dnb-radio__input:not([disabled])[data-checked=true]:active~.dnb-radio__dot{background-color:var(--radio-color-dot-on--active)}.dnb-radio__input:not([disabled]):not(:checked):not([data-checked=true]):active~.dnb-radio__button{background-color:var(--radio-color-background-off--active);border-color:var(--radio-color-border-off--active)}.dnb-radio__input:not([disabled]):not(:focus):checked:hover~.dnb-radio__dot,.dnb-radio__input:not([disabled]):not(:focus)[data-checked=true]:hover~.dnb-radio__dot{background-color:var(--radio-color-dot-on--hover)}.dnb-radio__input:not([disabled]):not(:focus):checked:hover~.dnb-radio__button,.dnb-radio__input:not([disabled]):not(:focus)[data-checked=true]:hover~.dnb-radio__button{background-color:var(--radio-color-background-on--hover);border-width:var(--radio-border-width-on--hover)}.dnb-radio__input:not([disabled]):not(:focus):not(:checked):not([data-checked=true]):hover~.dnb-radio__button{background-color:var(--radio-color-background-off--hover);border-width:var(--radio-border-width--hover)}html[data-whatinput=keyboard] .dnb-radio__input:not([disabled]):focus~.dnb-radio__button{border:none}.dnb-radio__input:not([disabled]):active~.dnb-radio__focus,.dnb-radio__input:not([disabled]):focus~.dnb-radio__focus{display:block}html[data-whatinput=keyboard] .dnb-radio__input:not([disabled]):not(:active):not(:hover):checked:focus~.dnb-radio__button,html[data-whatinput=keyboard] .dnb-radio__input:not([disabled]):not(:active):not(:hover)[data-checked=true]:focus~.dnb-radio__button{background-color:var(--radio-color-background-on--focus)}html[data-whatinput=keyboard] .dnb-radio__input:not([disabled]):not(:active):not(:hover):checked:focus~.dnb-radio__dot,html[data-whatinput=keyboard] .dnb-radio__input:not([disabled]):not(:active):not(:hover)[data-checked=true]:focus~.dnb-radio__dot{background-color:var(--radio-color-dot-on--focus,var(--focus-ring-color))}html[data-whatinput=keyboard] .dnb-radio__input:not([disabled]):not(:checked):not([data-checked=true]):focus~.dnb-radio__button{background-color:var(--radio-color-background-off--focus)}.dnb-radio__status--error .dnb-radio__input:not([disabled]):not(:focus):not(:active)~.dnb-radio__button{border:none}.dnb-radio__status--error .dnb-radio__input:not([disabled]):not(:focus):not(:active)~.dnb-radio__focus{--border-color:var(--radio-color-border-on--error);--border-width:var(--radio-focus-ring-width--error);border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color);display:block}.dnb-radio__status--error .dnb-radio__input:not([disabled]):not(:focus):not(:active):hover~.dnb-radio__focus{--border-color:var(--radio-color-border--error-hover);--border-width:var(--radio-focus-ring-width--error);border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}.dnb-radio__status--error .dnb-radio__input:not([disabled]):not(:focus):not(:active):not(:hover):checked~.dnb-radio__dot,.dnb-radio__status--error .dnb-radio__input:not([disabled]):not(:focus):not(:active):not(:hover)[data-checked=true]~.dnb-radio__dot{background-color:var(--radio-color-dot-on--error)}.dnb-radio__status--error .dnb-radio__input:not([disabled]):not(:focus):not(:active):checked:hover~.dnb-radio__dot,.dnb-radio__status--error .dnb-radio__input:not([disabled]):not(:focus):not(:active)[data-checked=true]:hover~.dnb-radio__dot{background-color:var(--radio-color-dot-on--error-hover)}.dnb-radio__status--error .dnb-radio__input:not([disabled]):not(:focus):not(:active):checked:hover~.dnb-radio__button,.dnb-radio__status--error .dnb-radio__input:not([disabled]):not(:focus):not(:active)[data-checked=true]:hover~.dnb-radio__button{background-color:var(--radio-color-background-on--error-hover)}.dnb-radio__status--error .dnb-radio__input:not([disabled]):not(:focus):not(:checked):not([data-checked=true]):hover~.dnb-radio__button{background-color:var(--radio-color-background-off--error-hover)}
1
+ :root{--radio-width--medium:1.5rem;--radio-height--medium:1.5rem}.dnb-radio{--radio-dot--medium:0.75rem;--radio-dot--large:1.125rem;--radio-width--large:2rem;--radio-height--large:2rem;--radio-border-width:0.09375rem;--radio-color-dot-on:#000;--radio-color-background-on:#fff;--radio-color-border-on:#000;--radio-color-background-off:#fff;--radio-color-border-off:#000;--radio-border-width--disabled:0.125rem;--radio-color-dot-on--disabled:#d3d3d3;--radio-color-background--disabled:#fff;--radio-color-border-on--disabled:#d3d3d3;--radio-color-border-off--disabled:#d3d3d3;--radio-color-dot-on--active:#d3d3d3;--radio-color-border-on--active:#d3d3d3;--radio-color-background-off--active:#d3d3d3;--radio-color-border-off--active:transparent;--radio-border-width--hover:0.125rem;--radio-border-width-on--hover:0.125rem;--radio-color-dot-on--hover:#d3d3d3;--radio-color-background-on--hover:#d3d3d3;--radio-color-background-off--hover:#d3d3d3;--radio-border-width--focus:0.125rem;--radio-color-background-on--focus:var(--color-white);--radio-color-background-off--focus:#d3d3d3;--radio-color-dot-on--error:red;--radio-color-border-on--error:red;--radio-color-border--error-hover:red;--radio-color-background-off--error-hover:#fff0f5;--radio-color-background-on--error-hover:#fff0f5;--radio-color-dot-on--error-hover:#fff0f5;--radio-focus-ring-width--error:var(--focus-ring-width);--radio-bounding--medium:1.75,1.5;--radio-bounding--large:1.25,1.12;font-size:var(--font-size-small);line-height:var(--line-height-basis)}.dnb-radio,.dnb-radio__inner{display:inline-flex;flex-direction:column}.dnb-radio__inner{align-self:center}.dnb-radio__shell{align-items:center;display:flex;flex-shrink:0;height:var(--radio-height--medium);justify-content:center;position:relative;-webkit-user-select:none;user-select:none;width:var(--radio-width--medium)}.dnb-radio__button,.dnb-radio__dot,.dnb-radio__focus{position:absolute;z-index:4}.dnb-radio__button{border:var(--radio-border-width) solid transparent}.dnb-radio__focus{display:none;outline:none}html[data-whatinput=keyboard] .dnb-radio__focus{--border-color:var(--focus-ring-color);--border-width:var(--focus-ring-width);border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}.dnb-radio__button,.dnb-radio__focus{border-radius:50%;height:calc(var(--radio-height--medium) - .25rem);width:calc(var(--radio-width--medium) - .25rem)}.dnb-radio--large .dnb-radio__button,.dnb-radio--large .dnb-radio__focus{height:var(--radio-height--large);width:var(--radio-width--large)}.dnb-radio__dot{background-color:var(--radio-color-dot-on);border-radius:50%;height:var(--radio-dot--medium);transition:opacity .2s ease-out,transform .2s ease-out;width:var(--radio-dot--medium)}.dnb-radio--large .dnb-radio__dot{height:var(--radio-dot--large);width:var(--radio-dot--large)}.dnb-radio__input{border:0;height:var(--radio-height--medium);left:auto;margin:0;opacity:0;padding:0;position:absolute;top:auto;transform:scale(var(--radio-bounding--medium));width:var(--radio-width--medium);z-index:5}.dnb-radio--large .dnb-radio__input{height:var(--radio-height--large);transform:scale(var(--radio-bounding--large));width:var(--radio-width--large)}.dnb-radio__input:not([disabled]){cursor:pointer}.dnb-radio__order{align-items:baseline;display:inline-flex}.dnb-radio-group--column .dnb-radio__order{display:flex}.dnb-radio__row{display:inline-flex}.dnb-radio__suffix{order:3}.dnb-radio__suffix .dnb-modal__trigger{margin-bottom:-.25rem;margin-top:-.25rem}.dnb-radio-group__suffix{font-size:var(--font-size-basis)}.dnb-radio--large,.dnb-radio--large .dnb-radio__suffix{line-height:var(--radio-height--large)}.dnb-radio--large .dnb-radio__shell{height:var(--radio-height--large);width:var(--radio-width--large)}.dnb-radio .dnb-form-label{margin-bottom:0;margin-left:0;margin-right:0}.dnb-radio--label-position-left .dnb-radio__order .dnb-radio__inner{order:2}.dnb-radio--label-position-left .dnb-radio__order .dnb-form-label{order:1;padding-right:.5rem}.dnb-radio--label-position-right .dnb-radio__order .dnb-radio__inner{order:1}.dnb-radio--label-position-right .dnb-radio__order .dnb-form-label{order:2;padding-left:.5rem}:not(.dnb-radio-group)>.dnb-form-label+.dnb-radio{vertical-align:top}.dnb-radio .dnb-form-status{margin-bottom:0;margin-top:.375rem;order:4}.dnb-radio+.dnb-form-status{margin-bottom:1rem;margin-top:.5rem}.dnb-radio>.dnb-form-status{transform:translateY(.25rem)}.dnb-radio-group{--radio-group-row-gap:0.5rem;--radio-group-column-gap:1rem;display:inline-flex}.dnb-radio-group,.dnb-radio-group__fieldset,.dnb-radio-group__shell{flex-grow:1}.dnb-radio-group fieldset{border:none;margin:0;padding:0}.dnb-radio-group--column .dnb-radio{display:flex;margin-right:0}.dnb-radio-group .dnb-radio:last-of-type{margin-right:0}.dnb-radio-group [role=radiogroup],.dnb-radio-group__shell{-moz-column-gap:var(--radio-group-column-gap);column-gap:var(--radio-group-column-gap);display:flex;flex-wrap:wrap;row-gap:var(--radio-group-row-gap)}.dnb-radio-group__shell>.dnb-form-status{margin-bottom:0;margin-top:0}.dnb-radio-group--column .dnb-radio-group__shell{flex-direction:column}.dnb-radio__input:checked~.dnb-radio__button,.dnb-radio__input[data-checked=true]~.dnb-radio__button{background-color:var(--radio-color-background-on);border-color:var(--radio-color-border-on)}.dnb-radio__input:checked~.dnb-radio__dot,.dnb-radio__input[data-checked=true]~.dnb-radio__dot{opacity:1;transform:scale(1)}.dnb-radio__input:not(:checked):not([data-checked=true])~.dnb-radio__dot{opacity:0;transform:scale(.8)}.dnb-radio__input:not(:checked):not([data-checked=true])~.dnb-radio__button{background-color:var(--radio-color-background-off);border-color:var(--radio-color-border-off)}.dnb-radio__input[disabled]~.dnb-radio__button{border-width:var(--radio-border-width--disabled)}.dnb-radio__input[disabled]:checked~.dnb-radio__button,.dnb-radio__input[disabled][data-checked=true]~.dnb-radio__button{background-color:var(--radio-color-background--disabled);border-color:var(--radio-color-border-on--disabled)}.dnb-radio__input[disabled]:checked~.dnb-radio__dot,.dnb-radio__input[disabled][data-checked=true]~.dnb-radio__dot{background-color:var(--radio-color-dot-on--disabled)}.dnb-radio__input[disabled]:not(:checked):not([data-checked=true])~.dnb-radio__button:not(.dnb-skeleton){background-color:var(--radio-color-background--disabled);border-color:var(--radio-color-border-off--disabled)}.dnb-radio__input[disabled]~.dnb-radio__button.dnb-skeleton{border-color:var(--skeleton-color)}.dnb-radio__input[disabled]~.dnb-radio__button.dnb-skeleton:before{border-radius:0}.dnb-radio__input:not([disabled]):checked:active~.dnb-radio__button,.dnb-radio__input:not([disabled])[data-checked=true]:active~.dnb-radio__button{border-color:var(--radio-color-border-on--active)}.dnb-radio__input:not([disabled]):checked:active~.dnb-radio__dot,.dnb-radio__input:not([disabled])[data-checked=true]:active~.dnb-radio__dot{background-color:var(--radio-color-dot-on--active)}.dnb-radio__input:not([disabled]):not(:checked):not([data-checked=true]):active~.dnb-radio__button{background-color:var(--radio-color-background-off--active);border-color:var(--radio-color-border-off--active)}.dnb-radio__input:not([disabled]):not(:focus):checked:hover~.dnb-radio__dot,.dnb-radio__input:not([disabled]):not(:focus)[data-checked=true]:hover~.dnb-radio__dot{background-color:var(--radio-color-dot-on--hover)}.dnb-radio__input:not([disabled]):not(:focus):checked:hover~.dnb-radio__button,.dnb-radio__input:not([disabled]):not(:focus)[data-checked=true]:hover~.dnb-radio__button{background-color:var(--radio-color-background-on--hover);border-width:var(--radio-border-width-on--hover)}.dnb-radio__input:not([disabled]):not(:focus):not(:checked):not([data-checked=true]):hover~.dnb-radio__button{background-color:var(--radio-color-background-off--hover);border-width:var(--radio-border-width--hover)}html[data-whatinput=keyboard] .dnb-radio__input:not([disabled]):focus~.dnb-radio__button{border:none}.dnb-radio__input:not([disabled]):active~.dnb-radio__focus,.dnb-radio__input:not([disabled]):focus~.dnb-radio__focus{display:block}html[data-whatinput=keyboard] .dnb-radio__input:not([disabled]):not(:active):not(:hover):checked:focus~.dnb-radio__button,html[data-whatinput=keyboard] .dnb-radio__input:not([disabled]):not(:active):not(:hover)[data-checked=true]:focus~.dnb-radio__button{background-color:var(--radio-color-background-on--focus)}html[data-whatinput=keyboard] .dnb-radio__input:not([disabled]):not(:active):not(:hover):checked:focus~.dnb-radio__dot,html[data-whatinput=keyboard] .dnb-radio__input:not([disabled]):not(:active):not(:hover)[data-checked=true]:focus~.dnb-radio__dot{background-color:var(--radio-color-dot-on--focus,var(--focus-ring-color))}html[data-whatinput=keyboard] .dnb-radio__input:not([disabled]):not(:checked):not([data-checked=true]):focus~.dnb-radio__button{background-color:var(--radio-color-background-off--focus)}.dnb-radio__status--error .dnb-radio__input:not([disabled]):not(:focus):not(:active)~.dnb-radio__button{border:none}.dnb-radio__status--error .dnb-radio__input:not([disabled]):not(:focus):not(:active)~.dnb-radio__focus{--border-color:var(--radio-color-border-on--error);--border-width:var(--radio-focus-ring-width--error);border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color);display:block}.dnb-radio__status--error .dnb-radio__input:not([disabled]):not(:focus):not(:active):hover~.dnb-radio__focus{--border-color:var(--radio-color-border--error-hover);--border-width:var(--radio-focus-ring-width--error);border-color:transparent;box-shadow:0 0 0 var(--border-width) var(--border-color)}.dnb-radio__status--error .dnb-radio__input:not([disabled]):not(:focus):not(:active):not(:hover):checked~.dnb-radio__dot,.dnb-radio__status--error .dnb-radio__input:not([disabled]):not(:focus):not(:active):not(:hover)[data-checked=true]~.dnb-radio__dot{background-color:var(--radio-color-dot-on--error)}.dnb-radio__status--error .dnb-radio__input:not([disabled]):not(:focus):not(:active):checked:hover~.dnb-radio__dot,.dnb-radio__status--error .dnb-radio__input:not([disabled]):not(:focus):not(:active)[data-checked=true]:hover~.dnb-radio__dot{background-color:var(--radio-color-dot-on--error-hover)}.dnb-radio__status--error .dnb-radio__input:not([disabled]):not(:focus):not(:active):checked:hover~.dnb-radio__button,.dnb-radio__status--error .dnb-radio__input:not([disabled]):not(:focus):not(:active)[data-checked=true]:hover~.dnb-radio__button{background-color:var(--radio-color-background-on--error-hover)}.dnb-radio__status--error .dnb-radio__input:not([disabled]):not(:focus):not(:checked):not([data-checked=true]):hover~.dnb-radio__button{background-color:var(--radio-color-background-off--error-hover)}
@@ -248,11 +248,16 @@
248
248
  }
249
249
 
250
250
  &-group {
251
- --radio-group-margin-bottom: 0.5rem;
252
- --radio-group-margin-right: 1rem;
251
+ --radio-group-row-gap: 0.5rem;
252
+ --radio-group-column-gap: 1rem;
253
253
 
254
254
  display: inline-flex;
255
- // flex-direction: row;
255
+
256
+ &,
257
+ &__fieldset,
258
+ &__shell {
259
+ flex-grow: 1;
260
+ }
256
261
 
257
262
  fieldset {
258
263
  @include fieldsetReset();
@@ -271,8 +276,8 @@
271
276
  &__shell {
272
277
  display: flex;
273
278
  flex-wrap: wrap;
274
- column-gap: var(--radio-group-margin-right);
275
- row-gap: var(--radio-group-margin-bottom);
279
+ column-gap: var(--radio-group-column-gap);
280
+ row-gap: var(--radio-group-row-gap);
276
281
  }
277
282
 
278
283
  &__shell {
@@ -285,13 +290,6 @@
285
290
  &--column &__shell {
286
291
  flex-direction: column;
287
292
  }
288
-
289
- // .dnb-flex-container {
290
- // &::before {
291
- // // move the group 2px up if label exists
292
- // font-size: var(--font-size-basis);
293
- // }
294
- // }
295
293
  }
296
294
 
297
295
  /*
@@ -299,7 +297,7 @@
299
297
  */
300
298
 
301
299
  // stylelint-disable no-descending-specificity
302
- // We prioritise categorisation and readability over specificity here */
300
+ // We prioritize categorisation and readability over specificity here */
303
301
 
304
302
  /** Normal state **/
305
303
 
@@ -45,6 +45,9 @@ export function SectionParams(localProps) {
45
45
  }));
46
46
  }
47
47
  function getColor(value) {
48
+ if (value.includes('--')) {
49
+ return value;
50
+ }
48
51
  return value ? !/#|var/.test(value) ? `var(--color-${value})` : value : undefined;
49
52
  }
50
53
  function computeStyle(property, name, valueCallback) {
@@ -1 +1 @@
1
- {"version":3,"file":"Section.js","names":["React","classnames","Context","isTrue","extendPropsWithContext","Space","defaultProps","element","Section","localProps","createElement","SectionParams","context","useContext","props","variant","breakout","roundedCorner","textColor","backgroundColor","dropShadow","outline","innerRef","className","children","spacing","style_type","inner_ref","attributes","_objectWithoutProperties","_excluded","internalRef","useRef","elementRef","Object","freeze","_objectSpread","style","computeStyle","value","getColor","String","test","undefined","property","name","valueCallback","media","small","medium","large","result","size","_media","_media2","_name","_supportsSpacingProps"],"sources":["../../../../src/components/section/Section.tsx"],"sourcesContent":["/**\n * Web Section Component\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport Context from '../../shared/Context'\nimport {\n isTrue,\n extendPropsWithContext,\n} from '../../shared/component-helper'\nimport type {\n DynamicElement,\n ResponsiveProp,\n SpacingProps,\n} from '../../shared/types'\nimport Space from '../space/Space'\n\nexport type SectionVariants = 'error' | 'info' | 'warning' | 'success'\n\nexport type SectionStyleTypes =\n | 'divider'\n | 'white'\n | 'transparent'\n\n /** @deprecated in v11 use \"variant\" or \"backgroundColor\" prop instead */\n | 'lavender'\n /** @deprecated in v11 use \"variant\" or \"backgroundColor\" prop instead */\n | 'pistachio'\n /** @deprecated in v11 use \"variant\" or \"backgroundColor\" prop instead */\n | 'emerald-green'\n /** @deprecated in v11 use \"variant\" or \"backgroundColor\" prop instead */\n | 'sea-green'\n /** @deprecated in v11 use \"variant\" or \"backgroundColor\" prop instead */\n | 'fire-red'\n /** @deprecated in v11 use \"variant\" or \"backgroundColor\" prop instead */\n | 'fire-red-8'\n /** @deprecated in v11 use \"variant\" or \"backgroundColor\" prop instead */\n | 'sand-yellow'\n /** @deprecated in v11 use \"variant\" or \"backgroundColor\" prop instead */\n | 'black-3'\n /** @deprecated in v11 use \"variant\" or \"backgroundColor\" prop instead */\n | 'mint-green'\n /** @deprecated in v11 use \"variant\" or \"backgroundColor\" prop instead */\n | 'mint-green-12'\n\nexport type SectionSpacing =\n | boolean\n | 'x-small'\n | 'small'\n | 'medium'\n | 'large'\n | 'x-large'\n | 'xx-large'\n\nexport type TextColor = string\nexport type OutlineColor = string | boolean\nexport type BackgroundColor = string\nexport type DropShadow = boolean\n\nexport type SectionProps = {\n /**\n * Defines the semantic purpose and subsequently the style of the visual helper. Will take precedence over the style_type prop\n */\n variant?: SectionVariants | string\n\n /**\n * Define if the background color should break-out to a fullscreen view. Defaults to `true`.\n */\n breakout?: boolean | ResponsiveProp<boolean>\n\n /**\n * Define if the section should have rounded corners. Defaults to `false`.\n */\n roundedCorner?: boolean | ResponsiveProp<boolean>\n\n /**\n * Define a custom border color. Use a Eufemia color.\n */\n outline?: OutlineColor | ResponsiveProp<OutlineColor>\n\n /**\n * Define a custom text color to compliment the backgroundColor. Use a Eufemia color.\n */\n textColor?: TextColor | ResponsiveProp<TextColor>\n\n /**\n * Define a custom background color, instead of a variant. Use a Eufemia color.\n */\n backgroundColor?: BackgroundColor | ResponsiveProp<BackgroundColor>\n\n /**\n * Define a custom drop-shadow.\n */\n dropShadow?: DropShadow | ResponsiveProp<DropShadow>\n\n /**\n * Define what HTML element should be used. Defaults to `<section>`.\n */\n element?: DynamicElement\n\n /**\n * Define a React.Ref.\n */\n innerRef?: React.RefObject<HTMLElement>\n\n /**\n * @deprecated in v11 use \"innerSpace\" prop instead\n */\n spacing?: SectionSpacing | ResponsiveProp<SectionSpacing>\n /**\n * @deprecated in v11 use \"background\" prop instead\n */\n style_type?: SectionStyleTypes | string\n /**\n * @deprecated in v11 use \"innerRef\" prop instead\n */\n inner_ref?: React.RefObject<HTMLElement>\n}\n\nexport type SectionAllProps = SectionProps &\n SpacingProps &\n Omit<React.HTMLProps<HTMLElement>, 'ref'>\n\ntype SectionReturnParams = Record<string, unknown> & {\n className: string\n innerRef: React.RefObject<HTMLElement>\n children: React.ReactNode\n style: React.CSSProperties\n}\n\nconst defaultProps = {\n element: 'section',\n}\n\nexport default function Section(localProps: SectionAllProps) {\n return <Space {...SectionParams(localProps)} />\n}\n\nexport function SectionParams(\n localProps: SectionAllProps\n): SectionReturnParams {\n const context = React.useContext(Context)\n\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContext(\n localProps,\n defaultProps,\n context.Section\n )\n\n const {\n variant,\n breakout = true,\n roundedCorner,\n textColor,\n backgroundColor,\n dropShadow,\n outline,\n innerRef,\n\n className,\n children,\n\n spacing,\n style_type,\n inner_ref,\n\n ...attributes\n } = props\n\n const internalRef = React.useRef<HTMLElement>()\n const elementRef = innerRef || inner_ref || internalRef\n\n return Object.freeze({\n ...attributes,\n className: classnames(\n 'dnb-section',\n `dnb-section--${variant ? variant : style_type || 'default'}`,\n spacing &&\n `dnb-section--spacing-${isTrue(spacing) ? 'large' : spacing}`,\n className\n ),\n style: {\n ...computeStyle(\n breakout,\n 'breakout',\n (value) => `var(--breakout--${value ? 'on' : 'off'})`\n ),\n ...computeStyle(\n roundedCorner,\n 'rounded-corner',\n (value) => value && 'var(--rounded-corner--value)'\n ),\n ...computeStyle(textColor, 'text-color', (value) => getColor(value)),\n ...computeStyle(backgroundColor, 'background-color', (value) =>\n getColor(value)\n ),\n ...computeStyle(\n dropShadow,\n 'drop-shadow',\n (value) => value && 'var(--shadow-default)'\n ),\n ...computeStyle(outline, 'outline-color', (value) =>\n String(value) === 'true'\n ? 'var(--outline-color--value)'\n : getColor(value)\n ),\n ...attributes?.style,\n } as React.CSSProperties,\n innerRef: elementRef,\n children,\n })\n}\n\nfunction getColor(value: string) {\n return value\n ? !/#|var/.test(value)\n ? `var(--color-${value})`\n : value\n : undefined\n}\n\nfunction computeStyle(\n property: ResponsiveProp<unknown> | boolean | string,\n name: string,\n valueCallback: (value: string) => string | undefined\n) {\n let media = property as ResponsiveProp<unknown>\n\n if (media !== null && typeof media !== 'object') {\n media = {\n small: property,\n medium: property,\n large: property,\n } as ResponsiveProp<unknown>\n }\n\n const result = {}\n\n for (const size in media as ResponsiveProp<unknown>) {\n if (typeof media?.[size] !== 'undefined') {\n const value = valueCallback(media?.[size])\n if (typeof value === 'string') {\n result[`--${name}--${size}`] = value\n }\n }\n }\n\n return result\n}\n\nSection._name = 'Section'\nSection._supportsSpacingProps = true\n"],"mappings":"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"}
1
+ {"version":3,"file":"Section.js","names":["React","classnames","Context","isTrue","extendPropsWithContext","Space","defaultProps","element","Section","localProps","createElement","SectionParams","context","useContext","props","variant","breakout","roundedCorner","textColor","backgroundColor","dropShadow","outline","innerRef","className","children","spacing","style_type","inner_ref","attributes","_objectWithoutProperties","_excluded","internalRef","useRef","elementRef","Object","freeze","_objectSpread","style","computeStyle","value","getColor","String","includes","test","undefined","property","name","valueCallback","media","small","medium","large","result","size","_media","_media2","_name","_supportsSpacingProps"],"sources":["../../../../src/components/section/Section.tsx"],"sourcesContent":["/**\n * Web Section Component\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport Context from '../../shared/Context'\nimport {\n isTrue,\n extendPropsWithContext,\n} from '../../shared/component-helper'\nimport type {\n DynamicElement,\n ResponsiveProp,\n SpacingProps,\n} from '../../shared/types'\nimport Space from '../space/Space'\n\nexport type SectionVariants = 'error' | 'info' | 'warning' | 'success'\n\nexport type SectionStyleTypes =\n | 'divider'\n | 'white'\n | 'transparent'\n\n /** @deprecated in v11 use \"variant\" or \"backgroundColor\" prop instead */\n | 'lavender'\n /** @deprecated in v11 use \"variant\" or \"backgroundColor\" prop instead */\n | 'pistachio'\n /** @deprecated in v11 use \"variant\" or \"backgroundColor\" prop instead */\n | 'emerald-green'\n /** @deprecated in v11 use \"variant\" or \"backgroundColor\" prop instead */\n | 'sea-green'\n /** @deprecated in v11 use \"variant\" or \"backgroundColor\" prop instead */\n | 'fire-red'\n /** @deprecated in v11 use \"variant\" or \"backgroundColor\" prop instead */\n | 'fire-red-8'\n /** @deprecated in v11 use \"variant\" or \"backgroundColor\" prop instead */\n | 'sand-yellow'\n /** @deprecated in v11 use \"variant\" or \"backgroundColor\" prop instead */\n | 'black-3'\n /** @deprecated in v11 use \"variant\" or \"backgroundColor\" prop instead */\n | 'mint-green'\n /** @deprecated in v11 use \"variant\" or \"backgroundColor\" prop instead */\n | 'mint-green-12'\n\nexport type SectionSpacing =\n | boolean\n | 'x-small'\n | 'small'\n | 'medium'\n | 'large'\n | 'x-large'\n | 'xx-large'\n\nexport type TextColor = string\nexport type OutlineColor = string | boolean\nexport type BackgroundColor = string\nexport type DropShadow = boolean\n\nexport type SectionProps = {\n /**\n * Defines the semantic purpose and subsequently the style of the visual helper. Will take precedence over the style_type prop\n */\n variant?: SectionVariants | string\n\n /**\n * Define if the background color should break-out to a fullscreen view. Defaults to `true`.\n */\n breakout?: boolean | ResponsiveProp<boolean>\n\n /**\n * Define if the section should have rounded corners. Defaults to `false`.\n */\n roundedCorner?: boolean | ResponsiveProp<boolean>\n\n /**\n * Define a custom border color. Use a Eufemia color.\n */\n outline?: OutlineColor | ResponsiveProp<OutlineColor>\n\n /**\n * Define a custom text color to compliment the backgroundColor. Use a Eufemia color.\n */\n textColor?: TextColor | ResponsiveProp<TextColor>\n\n /**\n * Define a custom background color, instead of a variant. Use a Eufemia color.\n */\n backgroundColor?: BackgroundColor | ResponsiveProp<BackgroundColor>\n\n /**\n * Define a custom drop-shadow.\n */\n dropShadow?: DropShadow | ResponsiveProp<DropShadow>\n\n /**\n * Define what HTML element should be used. Defaults to `<section>`.\n */\n element?: DynamicElement\n\n /**\n * Define a React.Ref.\n */\n innerRef?: React.RefObject<HTMLElement>\n\n /**\n * @deprecated in v11 use \"innerSpace\" prop instead\n */\n spacing?: SectionSpacing | ResponsiveProp<SectionSpacing>\n /**\n * @deprecated in v11 use \"background\" prop instead\n */\n style_type?: SectionStyleTypes | string\n /**\n * @deprecated in v11 use \"innerRef\" prop instead\n */\n inner_ref?: React.RefObject<HTMLElement>\n}\n\nexport type SectionAllProps = SectionProps &\n SpacingProps &\n Omit<React.HTMLProps<HTMLElement>, 'ref'>\n\ntype SectionReturnParams = Record<string, unknown> & {\n className: string\n innerRef: React.RefObject<HTMLElement>\n children: React.ReactNode\n style: React.CSSProperties\n}\n\nconst defaultProps = {\n element: 'section',\n}\n\nexport default function Section(localProps: SectionAllProps) {\n return <Space {...SectionParams(localProps)} />\n}\n\nexport function SectionParams(\n localProps: SectionAllProps\n): SectionReturnParams {\n const context = React.useContext(Context)\n\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContext(\n localProps,\n defaultProps,\n context.Section\n )\n\n const {\n variant,\n breakout = true,\n roundedCorner,\n textColor,\n backgroundColor,\n dropShadow,\n outline,\n innerRef,\n\n className,\n children,\n\n spacing,\n style_type,\n inner_ref,\n\n ...attributes\n } = props\n\n const internalRef = React.useRef<HTMLElement>()\n const elementRef = innerRef || inner_ref || internalRef\n\n return Object.freeze({\n ...attributes,\n className: classnames(\n 'dnb-section',\n `dnb-section--${variant ? variant : style_type || 'default'}`,\n spacing &&\n `dnb-section--spacing-${isTrue(spacing) ? 'large' : spacing}`,\n className\n ),\n style: {\n ...computeStyle(\n breakout,\n 'breakout',\n (value) => `var(--breakout--${value ? 'on' : 'off'})`\n ),\n ...computeStyle(\n roundedCorner,\n 'rounded-corner',\n (value) => value && 'var(--rounded-corner--value)'\n ),\n ...computeStyle(textColor, 'text-color', (value) => getColor(value)),\n ...computeStyle(backgroundColor, 'background-color', (value) =>\n getColor(value)\n ),\n ...computeStyle(\n dropShadow,\n 'drop-shadow',\n (value) => value && 'var(--shadow-default)'\n ),\n ...computeStyle(outline, 'outline-color', (value) =>\n String(value) === 'true'\n ? 'var(--outline-color--value)'\n : getColor(value)\n ),\n ...attributes?.style,\n } as React.CSSProperties,\n innerRef: elementRef,\n children,\n })\n}\n\nfunction getColor(value: string) {\n if (value.includes('--')) {\n return value\n }\n return value\n ? !/#|var/.test(value)\n ? `var(--color-${value})`\n : value\n : undefined\n}\n\nfunction computeStyle(\n property: ResponsiveProp<unknown> | boolean | string,\n name: string,\n valueCallback: (value: string) => string | undefined\n) {\n let media = property as ResponsiveProp<unknown>\n\n if (media !== null && typeof media !== 'object') {\n media = {\n small: property,\n medium: property,\n large: property,\n } as ResponsiveProp<unknown>\n }\n\n const result = {}\n\n for (const size in media as ResponsiveProp<unknown>) {\n if (typeof media?.[size] !== 'undefined') {\n const value = valueCallback(media?.[size])\n if (typeof value === 'string') {\n result[`--${name}--${size}`] = value\n }\n }\n }\n\n return result\n}\n\nSection._name = 'Section'\nSection._supportsSpacingProps = true\n"],"mappings":"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"}
@@ -31,6 +31,7 @@
31
31
  background-color: var(--background-color, white);
32
32
  }
33
33
 
34
+ // The outline border
34
35
  &::before {
35
36
  content: '';
36
37
  position: absolute;
@@ -41,6 +42,7 @@
41
42
  border-radius: var(--rounded-corner, 0);
42
43
  }
43
44
 
45
+ // The background color
44
46
  &::after {
45
47
  content: '';
46
48
  visibility: var(--breakout, hidden);
@@ -16,6 +16,7 @@ import AlignmentHelper from '../../shared/AlignmentHelper';
16
16
  import FormLabel from '../FormLabel';
17
17
  import FormStatus from '../FormStatus';
18
18
  import Flex from '../Flex';
19
+ import Space from '../Space';
19
20
  import Context from '../../shared/Context';
20
21
  import Suffix from '../../shared/helpers/Suffix';
21
22
  import ToggleButtonGroupContext from './ToggleButtonGroupContext';
@@ -144,15 +145,17 @@ export default class ToggleButtonGroup extends React.PureComponent {
144
145
  value: context
145
146
  }, React.createElement("div", {
146
147
  className: classes
147
- }, _AlignmentHelper || (_AlignmentHelper = React.createElement(AlignmentHelper, null)), React.createElement(Fieldset, null, React.createElement(Flex.Container, {
148
- align: "baseline",
148
+ }, _AlignmentHelper || (_AlignmentHelper = React.createElement(AlignmentHelper, null)), React.createElement(Fieldset, {
149
+ className: "dnb-toggle-button-group__fieldset"
150
+ }, React.createElement(Flex.Container, {
149
151
  direction: vertical || label_direction === 'vertical' ? 'vertical' : 'horizontal',
150
152
  gap: vertical ? 'x-small' : 'small'
151
153
  }, label && React.createElement(FormLabel, {
152
154
  element: "legend",
153
155
  id: id + '-label',
154
156
  srOnly: label_sr_only
155
- }, label), React.createElement("span", _extends({
157
+ }, label), React.createElement(Space, _extends({
158
+ element: "span",
156
159
  id: id,
157
160
  className: "dnb-toggle-button-group__shell",
158
161
  role: "group"
@@ -1 +1 @@
1
- {"version":3,"file":"ToggleButtonGroup.js","names":["React","PropTypes","classnames","isTrue","makeUniqueId","extendPropsWithContextInClassComponent","validateDOMAttributes","getStatusState","combineDescribedBy","combineLabelledBy","dispatchCustomElementEvent","spacingPropTypes","createSpacingClasses","AlignmentHelper","FormLabel","FormStatus","Flex","Context","Suffix","ToggleButtonGroupContext","pickFormElementProps","ToggleButtonGroup","PureComponent","getDerivedStateFromProps","props","state","_listenForPropChanges","value","values","getValues","JSON","parse","constructor","_defineProperty","_ref","event","multiselect","includes","push","splice","indexOf","setState","_refInput","createRef","_id","id","_name","name","render","_this$context","_this$context2","defaultProps","context","getTranslation","ToggleButton","FormRow","formElement","status","status_state","status_props","status_no_animation","globalStatus","suffix","label_direction","label_sr_only","vertical","layout_direction","label","variant","left_component","disabled","skeleton","className","_value","_values","children","on_change","rest","_objectWithoutProperties","_excluded","showStatus","classes","params","_objectSpread","setContext","_tmp","onChange","onChangeHandler","Fieldset","createElement","Provider","_AlignmentHelper","Container","align","direction","gap","element","srOnly","_extends","role","show","text_id","text","no_animation","title","undefined","attributes","process","env","NODE_ENV","propTypes","oneOfType","string","func","node","oneOf","bool","object","shape","message","number","array","_supportsSpacingProps"],"sources":["../../../../src/components/toggle-button/ToggleButtonGroup.js"],"sourcesContent":["/**\n * Web ToggleButtonGroup Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n getStatusState,\n combineDescribedBy,\n combineLabelledBy,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\nimport FormLabel from '../FormLabel'\nimport FormStatus from '../FormStatus'\nimport Flex from '../Flex'\nimport Context from '../../shared/Context'\nimport Suffix from '../../shared/helpers/Suffix'\nimport ToggleButtonGroupContext from './ToggleButtonGroupContext'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\n\nexport default class ToggleButtonGroup extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n label_direction: PropTypes.oneOf(['horizontal', 'vertical']),\n label_sr_only: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n title: PropTypes.string,\n multiselect: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n variant: PropTypes.oneOf(['default', 'checkbox', 'radio']),\n left_component: PropTypes.node,\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n id: PropTypes.string,\n name: PropTypes.string,\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n status_no_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n suffix: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n vertical: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n layout_direction: PropTypes.oneOf(['column', 'row']),\n value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n PropTypes.object,\n PropTypes.array,\n ]),\n values: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),\n attributes: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n\n ...spacingPropTypes,\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n\n on_change: PropTypes.func,\n }\n\n static defaultProps = {\n label: null,\n label_direction: null,\n label_sr_only: null,\n title: null,\n multiselect: null,\n variant: null,\n left_component: null,\n disabled: null,\n skeleton: null,\n id: null,\n name: null,\n status: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n suffix: null,\n vertical: null,\n layout_direction: 'row',\n value: undefined,\n values: undefined,\n attributes: null,\n\n className: null,\n children: null,\n\n on_change: null,\n }\n\n static getDerivedStateFromProps(props, state) {\n if (state._listenForPropChanges) {\n if (\n typeof props.value !== 'undefined' &&\n props.value !== state.value\n ) {\n state.value = props.value\n }\n if (\n typeof props.values !== 'undefined' &&\n props.values !== state.values\n ) {\n state.values = ToggleButtonGroup.getValues(props)\n }\n }\n state._listenForPropChanges = true\n\n return state\n }\n\n static getValues(props) {\n if (typeof props.values === 'string' && props.values[0] === '[') {\n return JSON.parse(props.values)\n }\n return props.values\n }\n\n constructor(props) {\n super(props)\n this._refInput = React.createRef()\n this._id = props.id || makeUniqueId() // cause we need an id anyway\n this._name = props.name || makeUniqueId() // cause we need an id anyway\n this.state = {\n // do not set the value here, else get true in this check } else if (context.values && Array.isArray(context.values)) {\n _listenForPropChanges: true,\n }\n }\n\n onChangeHandler = ({ value, event }) => {\n const { multiselect } = this.props\n const values = this.state.values || []\n\n if (isTrue(multiselect)) {\n if (!values.includes(value)) {\n values.push(value)\n } else {\n values.splice(values.indexOf(value), 1)\n }\n }\n\n this.setState({\n value,\n values,\n _listenForPropChanges: false,\n })\n\n dispatchCustomElementEvent(this, 'on_change', {\n value,\n values,\n event,\n })\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n ToggleButtonGroup.defaultProps,\n this.context.getTranslation(this.props).ToggleButton,\n // Deprecated – can be removed in v11\n pickFormElementProps(this.context?.FormRow),\n pickFormElementProps(this.context?.formElement),\n this.context.ToggleButtonGroup\n )\n\n const {\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n suffix,\n label_direction,\n label_sr_only,\n vertical,\n layout_direction,\n label,\n variant,\n left_component,\n disabled,\n skeleton,\n className,\n\n multiselect,\n id: _id, // eslint-disable-line\n name: _name, // eslint-disable-line\n value: _value, // eslint-disable-line\n values: _values, // eslint-disable-line\n children, // eslint-disable-line\n on_change, // eslint-disable-line\n\n ...rest\n } = props\n\n const { value, values } = this.state\n\n const id = this._id\n const showStatus = getStatusState(status)\n\n const classes = classnames(\n 'dnb-toggle-button-group',\n status && `dnb-toggle-button-group__status--${status_state}`,\n !label && 'dnb-toggle-button-group--no-label',\n `dnb-toggle-button-group--${layout_direction}`,\n 'dnb-form-component',\n createSpacingClasses(props),\n className\n )\n\n const params = {\n ...rest,\n }\n\n if (showStatus || suffix) {\n params['aria-describedby'] = combineDescribedBy(\n params,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n if (label) {\n params['aria-labelledby'] = combineLabelledBy(params, id + '-label')\n }\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, params)\n\n const context = {\n name: this._name,\n value,\n values,\n multiselect: isTrue(multiselect),\n variant,\n left_component,\n disabled,\n skeleton,\n setContext: (context) => {\n // also look for a function, where we are able to fill old values\n // this is used in the \"constructor\" inside the ToggleButton.js component\n if (typeof context === 'function') {\n context = context(this._tmp)\n }\n this._tmp = { ...this._tmp, ...context }\n this.setState({\n ...context,\n _listenForPropChanges: false,\n })\n },\n onChange: this.onChangeHandler,\n }\n\n const Fieldset = label ? 'fieldset' : 'div'\n\n return (\n <ToggleButtonGroupContext.Provider value={context}>\n <div className={classes}>\n <AlignmentHelper />\n <Fieldset>\n <Flex.Container\n align=\"baseline\"\n direction={\n vertical || label_direction === 'vertical'\n ? 'vertical'\n : 'horizontal'\n }\n gap={vertical ? 'x-small' : 'small'}\n >\n {label && (\n <FormLabel\n element=\"legend\"\n id={id + '-label'}\n srOnly={label_sr_only}\n >\n {label}\n </FormLabel>\n )}\n\n <span\n id={id}\n className=\"dnb-toggle-button-group__shell\"\n role=\"group\"\n {...params}\n >\n <FormStatus\n show={showStatus}\n id={id + '-form-status'}\n globalStatus={globalStatus}\n label={label}\n text_id={id + '-status'} // used for \"aria-describedby\"\n text={status}\n state={status_state}\n no_animation={status_no_animation}\n skeleton={skeleton}\n {...status_props}\n />\n\n <span\n className={classnames(\n 'dnb-toggle-button-group__shell__children',\n `dnb-toggle-button-group__shell__children--${layout_direction}`\n )}\n >\n {children}\n\n {suffix && (\n <Suffix\n className=\"dnb-toggle-button-group__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n </span>\n </Flex.Container>\n </Fieldset>\n </div>\n </ToggleButtonGroupContext.Provider>\n )\n }\n}\n\nToggleButtonGroup._supportsSpacingProps = true\n"],"mappings":";;;;;;;;;AAOA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,UAAU,MAAM,YAAY;AACnC,SACEC,MAAM,EACNC,YAAY,EACZC,sCAAsC,EACtCC,qBAAqB,EACrBC,cAAc,EACdC,kBAAkB,EAClBC,iBAAiB,EACjBC,0BAA0B,QACrB,+BAA+B;AACtC,SACEC,gBAAgB,EAChBC,oBAAoB,QACf,wBAAwB;AAC/B,OAAOC,eAAe,MAAM,8BAA8B;AAC1D,OAAOC,SAAS,MAAM,cAAc;AACpC,OAAOC,UAAU,MAAM,eAAe;AACtC,OAAOC,IAAI,MAAM,SAAS;AAC1B,OAAOC,OAAO,MAAM,sBAAsB;AAC1C,OAAOC,MAAM,MAAM,6BAA6B;AAChD,OAAOC,wBAAwB,MAAM,4BAA4B;AACjE,SAASC,oBAAoB,QAAQ,uCAAuC;AAE5E,eAAe,MAAMC,iBAAiB,SAASrB,KAAK,CAACsB,aAAa,CAAC;EA6FjE,OAAOC,wBAAwBA,CAACC,KAAK,EAAEC,KAAK,EAAE;IAC5C,IAAIA,KAAK,CAACC,qBAAqB,EAAE;MAC/B,IACE,OAAOF,KAAK,CAACG,KAAK,KAAK,WAAW,IAClCH,KAAK,CAACG,KAAK,KAAKF,KAAK,CAACE,KAAK,EAC3B;QACAF,KAAK,CAACE,KAAK,GAAGH,KAAK,CAACG,KAAK;MAC3B;MACA,IACE,OAAOH,KAAK,CAACI,MAAM,KAAK,WAAW,IACnCJ,KAAK,CAACI,MAAM,KAAKH,KAAK,CAACG,MAAM,EAC7B;QACAH,KAAK,CAACG,MAAM,GAAGP,iBAAiB,CAACQ,SAAS,CAACL,KAAK,CAAC;MACnD;IACF;IACAC,KAAK,CAACC,qBAAqB,GAAG,IAAI;IAElC,OAAOD,KAAK;EACd;EAEA,OAAOI,SAASA,CAACL,KAAK,EAAE;IACtB,IAAI,OAAOA,KAAK,CAACI,MAAM,KAAK,QAAQ,IAAIJ,KAAK,CAACI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;MAC/D,OAAOE,IAAI,CAACC,KAAK,CAACP,KAAK,CAACI,MAAM,CAAC;IACjC;IACA,OAAOJ,KAAK,CAACI,MAAM;EACrB;EAEAI,WAAWA,CAACR,KAAK,EAAE;IACjB,KAAK,CAACA,KAAK,CAAC;IAAAS,eAAA,0BAUIC,IAAA,IAAsB;MAAA,IAArB;QAAEP,KAAK;QAAEQ;MAAM,CAAC,GAAAD,IAAA;MACjC,MAAM;QAAEE;MAAY,CAAC,GAAG,IAAI,CAACZ,KAAK;MAClC,MAAMI,MAAM,GAAG,IAAI,CAACH,KAAK,CAACG,MAAM,IAAI,EAAE;MAEtC,IAAIzB,MAAM,CAACiC,WAAW,CAAC,EAAE;QACvB,IAAI,CAACR,MAAM,CAACS,QAAQ,CAACV,KAAK,CAAC,EAAE;UAC3BC,MAAM,CAACU,IAAI,CAACX,KAAK,CAAC;QACpB,CAAC,MAAM;UACLC,MAAM,CAACW,MAAM,CAACX,MAAM,CAACY,OAAO,CAACb,KAAK,CAAC,EAAE,CAAC,CAAC;QACzC;MACF;MAEA,IAAI,CAACc,QAAQ,CAAC;QACZd,KAAK;QACLC,MAAM;QACNF,qBAAqB,EAAE;MACzB,CAAC,CAAC;MAEFhB,0BAA0B,CAAC,IAAI,EAAE,WAAW,EAAE;QAC5CiB,KAAK;QACLC,MAAM;QACNO;MACF,CAAC,CAAC;IACJ,CAAC;IAhCC,IAAI,CAACO,SAAS,GAAG1C,KAAK,CAAC2C,SAAS,CAAC,CAAC;IAClC,IAAI,CAACC,GAAG,GAAGpB,KAAK,CAACqB,EAAE,IAAIzC,YAAY,CAAC,CAAC;IACrC,IAAI,CAAC0C,KAAK,GAAGtB,KAAK,CAACuB,IAAI,IAAI3C,YAAY,CAAC,CAAC;IACzC,IAAI,CAACqB,KAAK,GAAG;MAEXC,qBAAqB,EAAE;IACzB,CAAC;EACH;EA2BAsB,MAAMA,CAAA,EAAG;IAAA,IAAAC,aAAA,EAAAC,cAAA;IAEP,MAAM1B,KAAK,GAAGnB,sCAAsC,CAClD,IAAI,CAACmB,KAAK,EACVH,iBAAiB,CAAC8B,YAAY,EAC9B,IAAI,CAACC,OAAO,CAACC,cAAc,CAAC,IAAI,CAAC7B,KAAK,CAAC,CAAC8B,YAAY,EAEpDlC,oBAAoB,EAAA6B,aAAA,GAAC,IAAI,CAACG,OAAO,cAAAH,aAAA,uBAAZA,aAAA,CAAcM,OAAO,CAAC,EAC3CnC,oBAAoB,EAAA8B,cAAA,GAAC,IAAI,CAACE,OAAO,cAAAF,cAAA,uBAAZA,cAAA,CAAcM,WAAW,CAAC,EAC/C,IAAI,CAACJ,OAAO,CAAC/B,iBACf,CAAC;IAED,MAAM;QACJoC,MAAM;QACNC,YAAY;QACZC,YAAY;QACZC,mBAAmB;QACnBC,YAAY;QACZC,MAAM;QACNC,eAAe;QACfC,aAAa;QACbC,QAAQ;QACRC,gBAAgB;QAChBC,KAAK;QACLC,OAAO;QACPC,cAAc;QACdC,QAAQ;QACRC,QAAQ;QACRC,SAAS;QAETpC,WAAW;QACXS,EAAE,EAAED,GAAG;QACPG,IAAI,EAAED,KAAK;QACXnB,KAAK,EAAE8C,MAAM;QACb7C,MAAM,EAAE8C,OAAO;QACfC,QAAQ;QACRC;MAGF,CAAC,GAAGpD,KAAK;MADJqD,IAAI,GAAAC,wBAAA,CACLtD,KAAK,EAAAuD,SAAA;IAET,MAAM;MAAEpD,KAAK;MAAEC;IAAO,CAAC,GAAG,IAAI,CAACH,KAAK;IAEpC,MAAMoB,EAAE,GAAG,IAAI,CAACD,GAAG;IACnB,MAAMoC,UAAU,GAAGzE,cAAc,CAACkD,MAAM,CAAC;IAEzC,MAAMwB,OAAO,GAAG/E,UAAU,qDAIIgE,gBAAgB,uBAE5CtD,oBAAoB,CAACY,KAAK,CAAC,EAC3BgD,SAAS,EALTf,MAAM,IAAK,oCAAmCC,YAAa,EAAC,EAC5D,CAACS,KAAK,IAAI,mCAKZ,CAAC;IAED,MAAMe,MAAM,GAAAC,aAAA,KACPN,IAAI,CACR;IAED,IAAIG,UAAU,IAAIlB,MAAM,EAAE;MACxBoB,MAAM,CAAC,kBAAkB,CAAC,GAAG1E,kBAAkB,CAC7C0E,MAAM,EACNF,UAAU,GAAGnC,EAAE,GAAG,SAAS,GAAG,IAAI,EAClCiB,MAAM,GAAGjB,EAAE,GAAG,SAAS,GAAG,IAC5B,CAAC;IACH;IACA,IAAIsB,KAAK,EAAE;MACTe,MAAM,CAAC,iBAAiB,CAAC,GAAGzE,iBAAiB,CAACyE,MAAM,EAAErC,EAAE,GAAG,QAAQ,CAAC;IACtE;IAGAvC,qBAAqB,CAAC,IAAI,CAACkB,KAAK,EAAE0D,MAAM,CAAC;IAEzC,MAAM9B,OAAO,GAAG;MACdL,IAAI,EAAE,IAAI,CAACD,KAAK;MAChBnB,KAAK;MACLC,MAAM;MACNQ,WAAW,EAAEjC,MAAM,CAACiC,WAAW,CAAC;MAChCgC,OAAO;MACPC,cAAc;MACdC,QAAQ;MACRC,QAAQ;MACRa,UAAU,EAAGhC,OAAO,IAAK;QAGvB,IAAI,OAAOA,OAAO,KAAK,UAAU,EAAE;UACjCA,OAAO,GAAGA,OAAO,CAAC,IAAI,CAACiC,IAAI,CAAC;QAC9B;QACA,IAAI,CAACA,IAAI,GAAAF,aAAA,CAAAA,aAAA,KAAQ,IAAI,CAACE,IAAI,GAAKjC,OAAO,CAAE;QACxC,IAAI,CAACX,QAAQ,CAAA0C,aAAA,CAAAA,aAAA,KACR/B,OAAO;UACV1B,qBAAqB,EAAE;QAAK,EAC7B,CAAC;MACJ,CAAC;MACD4D,QAAQ,EAAE,IAAI,CAACC;IACjB,CAAC;IAED,MAAMC,QAAQ,GAAGrB,KAAK,GAAG,UAAU,GAAG,KAAK;IAE3C,OACEnE,KAAA,CAAAyF,aAAA,CAACtE,wBAAwB,CAACuE,QAAQ;MAAC/D,KAAK,EAAEyB;IAAQ,GAChDpD,KAAA,CAAAyF,aAAA;MAAKjB,SAAS,EAAES;IAAQ,GAAAU,gBAAA,KAAAA,gBAAA,GACtB3F,KAAA,CAAAyF,aAAA,CAAC5E,eAAe,MAAE,CAAC,GACnBb,KAAA,CAAAyF,aAAA,CAACD,QAAQ,QACPxF,KAAA,CAAAyF,aAAA,CAACzE,IAAI,CAAC4E,SAAS;MACbC,KAAK,EAAC,UAAU;MAChBC,SAAS,EACP7B,QAAQ,IAAIF,eAAe,KAAK,UAAU,GACtC,UAAU,GACV,YACL;MACDgC,GAAG,EAAE9B,QAAQ,GAAG,SAAS,GAAG;IAAQ,GAEnCE,KAAK,IACJnE,KAAA,CAAAyF,aAAA,CAAC3E,SAAS;MACRkF,OAAO,EAAC,QAAQ;MAChBnD,EAAE,EAAEA,EAAE,GAAG,QAAS;MAClBoD,MAAM,EAAEjC;IAAc,GAErBG,KACQ,CACZ,EAEDnE,KAAA,CAAAyF,aAAA,SAAAS,QAAA;MACErD,EAAE,EAAEA,EAAG;MACP2B,SAAS,EAAC,gCAAgC;MAC1C2B,IAAI,EAAC;IAAO,GACRjB,MAAM,GAEVlF,KAAA,CAAAyF,aAAA,CAAC1E,UAAU,EAAAmF,QAAA;MACTE,IAAI,EAAEpB,UAAW;MACjBnC,EAAE,EAAEA,EAAE,GAAG,cAAe;MACxBgB,YAAY,EAAEA,YAAa;MAC3BM,KAAK,EAAEA,KAAM;MACbkC,OAAO,EAAExD,EAAE,GAAG,SAAU;MACxByD,IAAI,EAAE7C,MAAO;MACbhC,KAAK,EAAEiC,YAAa;MACpB6C,YAAY,EAAE3C,mBAAoB;MAClCW,QAAQ,EAAEA;IAAS,GACfZ,YAAY,CACjB,CAAC,EAEF3D,KAAA,CAAAyF,aAAA;MACEjB,SAAS,wFAEsCN,gBAAiB;IAC9D,GAEDS,QAAQ,EAERb,MAAM,IACL9D,KAAA,CAAAyF,aAAA,CAACvE,MAAM;MACLsD,SAAS,EAAC,iCAAiC;MAC3C3B,EAAE,EAAEA,EAAE,GAAG,SAAU;MACnBO,OAAO,EAAE5B;IAAM,GAEdsC,MACK,CAEN,CACF,CACQ,CACR,CACP,CAC4B,CAAC;EAExC;AACF;AAAC7B,eAAA,CApUoBZ,iBAAiB,iBACfJ,OAAO;AAAAgB,eAAA,CADTZ,iBAAiB,kBA+Dd;EACpB8C,KAAK,EAAE,IAAI;EACXJ,eAAe,EAAE,IAAI;EACrBC,aAAa,EAAE,IAAI;EACnBwC,KAAK,EAAE,IAAI;EACXpE,WAAW,EAAE,IAAI;EACjBgC,OAAO,EAAE,IAAI;EACbC,cAAc,EAAE,IAAI;EACpBC,QAAQ,EAAE,IAAI;EACdC,QAAQ,EAAE,IAAI;EACd1B,EAAE,EAAE,IAAI;EACRE,IAAI,EAAE,IAAI;EACVU,MAAM,EAAE,IAAI;EACZC,YAAY,EAAE,OAAO;EACrBC,YAAY,EAAE,IAAI;EAClBC,mBAAmB,EAAE,IAAI;EACzBC,YAAY,EAAE,IAAI;EAClBC,MAAM,EAAE,IAAI;EACZG,QAAQ,EAAE,IAAI;EACdC,gBAAgB,EAAE,KAAK;EACvBvC,KAAK,EAAE8E,SAAS;EAChB7E,MAAM,EAAE6E,SAAS;EACjBC,UAAU,EAAE,IAAI;EAEhBlC,SAAS,EAAE,IAAI;EACfG,QAAQ,EAAE,IAAI;EAEdC,SAAS,EAAE;AACb,CAAC;AAAA+B,OAAA,CAAAC,GAAA,CAAAC,QAAA,oBA3FkBxF,iBAAiB,CAG7ByF,SAAS,GAAA3B,aAAA,CAAAA,aAAA;EACdhB,KAAK,EAAElE,SAAS,CAAC8G,SAAS,CAAC,CACzB9G,SAAS,CAAC+G,MAAM,EAChB/G,SAAS,CAACgH,IAAI,EACdhH,SAAS,CAACiH,IAAI,CACf,CAAC;EACFnD,eAAe,EAAE9D,SAAS,CAACkH,KAAK,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;EAC5DnD,aAAa,EAAE/D,SAAS,CAAC8G,SAAS,CAAC,CAAC9G,SAAS,CAAC+G,MAAM,EAAE/G,SAAS,CAACmH,IAAI,CAAC,CAAC;EACtEZ,KAAK,EAAEvG,SAAS,CAAC+G,MAAM;EACvB5E,WAAW,EAAEnC,SAAS,CAAC8G,SAAS,CAAC,CAAC9G,SAAS,CAAC+G,MAAM,EAAE/G,SAAS,CAACmH,IAAI,CAAC,CAAC;EACpEhD,OAAO,EAAEnE,SAAS,CAACkH,KAAK,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;EAC1D9C,cAAc,EAAEpE,SAAS,CAACiH,IAAI;EAC9B5C,QAAQ,EAAErE,SAAS,CAAC8G,SAAS,CAAC,CAAC9G,SAAS,CAAC+G,MAAM,EAAE/G,SAAS,CAACmH,IAAI,CAAC,CAAC;EACjE7C,QAAQ,EAAEtE,SAAS,CAAC8G,SAAS,CAAC,CAAC9G,SAAS,CAAC+G,MAAM,EAAE/G,SAAS,CAACmH,IAAI,CAAC,CAAC;EACjEvE,EAAE,EAAE5C,SAAS,CAAC+G,MAAM;EACpBjE,IAAI,EAAE9C,SAAS,CAAC+G,MAAM;EACtBvD,MAAM,EAAExD,SAAS,CAAC8G,SAAS,CAAC,CAC1B9G,SAAS,CAAC+G,MAAM,EAChB/G,SAAS,CAACmH,IAAI,EACdnH,SAAS,CAACgH,IAAI,EACdhH,SAAS,CAACiH,IAAI,CACf,CAAC;EACFxD,YAAY,EAAEzD,SAAS,CAAC+G,MAAM;EAC9BrD,YAAY,EAAE1D,SAAS,CAACoH,MAAM;EAC9BzD,mBAAmB,EAAE3D,SAAS,CAAC8G,SAAS,CAAC,CACvC9G,SAAS,CAAC+G,MAAM,EAChB/G,SAAS,CAACmH,IAAI,CACf,CAAC;EACFvD,YAAY,EAAE5D,SAAS,CAACqH,KAAK,CAAC;IAC5BzE,EAAE,EAAE5C,SAAS,CAAC+G,MAAM;IACpBO,OAAO,EAAEtH,SAAS,CAAC8G,SAAS,CAAC,CAAC9G,SAAS,CAAC+G,MAAM,EAAE/G,SAAS,CAACiH,IAAI,CAAC;EACjE,CAAC,CAAC;EACFpD,MAAM,EAAE7D,SAAS,CAAC8G,SAAS,CAAC,CAC1B9G,SAAS,CAAC+G,MAAM,EAChB/G,SAAS,CAACgH,IAAI,EACdhH,SAAS,CAACiH,IAAI,CACf,CAAC;EACFjD,QAAQ,EAAEhE,SAAS,CAAC8G,SAAS,CAAC,CAAC9G,SAAS,CAAC+G,MAAM,EAAE/G,SAAS,CAACmH,IAAI,CAAC,CAAC;EACjElD,gBAAgB,EAAEjE,SAAS,CAACkH,KAAK,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;EACpDxF,KAAK,EAAE1B,SAAS,CAAC8G,SAAS,CAAC,CACzB9G,SAAS,CAAC+G,MAAM,EAChB/G,SAAS,CAACuH,MAAM,EAChBvH,SAAS,CAACoH,MAAM,EAChBpH,SAAS,CAACwH,KAAK,CAChB,CAAC;EACF7F,MAAM,EAAE3B,SAAS,CAAC8G,SAAS,CAAC,CAAC9G,SAAS,CAAC+G,MAAM,EAAE/G,SAAS,CAACwH,KAAK,CAAC,CAAC;EAChEf,UAAU,EAAEzG,SAAS,CAAC8G,SAAS,CAAC,CAAC9G,SAAS,CAAC+G,MAAM,EAAE/G,SAAS,CAACoH,MAAM,CAAC;AAAC,GAElE1G,gBAAgB;EAEnB6D,SAAS,EAAEvE,SAAS,CAAC+G,MAAM;EAC3BrC,QAAQ,EAAE1E,SAAS,CAAC8G,SAAS,CAAC,CAC5B9G,SAAS,CAAC+G,MAAM,EAChB/G,SAAS,CAACgH,IAAI,EACdhH,SAAS,CAACiH,IAAI,CACf,CAAC;EAEFtC,SAAS,EAAE3E,SAAS,CAACgH;AAAI;AA0Q7B5F,iBAAiB,CAACqG,qBAAqB,GAAG,IAAI"}
1
+ {"version":3,"file":"ToggleButtonGroup.js","names":["React","PropTypes","classnames","isTrue","makeUniqueId","extendPropsWithContextInClassComponent","validateDOMAttributes","getStatusState","combineDescribedBy","combineLabelledBy","dispatchCustomElementEvent","spacingPropTypes","createSpacingClasses","AlignmentHelper","FormLabel","FormStatus","Flex","Space","Context","Suffix","ToggleButtonGroupContext","pickFormElementProps","ToggleButtonGroup","PureComponent","getDerivedStateFromProps","props","state","_listenForPropChanges","value","values","getValues","JSON","parse","constructor","_defineProperty","_ref","event","multiselect","includes","push","splice","indexOf","setState","_refInput","createRef","_id","id","_name","name","render","_this$context","_this$context2","defaultProps","context","getTranslation","ToggleButton","FormRow","formElement","status","status_state","status_props","status_no_animation","globalStatus","suffix","label_direction","label_sr_only","vertical","layout_direction","label","variant","left_component","disabled","skeleton","className","_value","_values","children","on_change","rest","_objectWithoutProperties","_excluded","showStatus","classes","params","_objectSpread","setContext","_tmp","onChange","onChangeHandler","Fieldset","createElement","Provider","_AlignmentHelper","Container","direction","gap","element","srOnly","_extends","role","show","text_id","text","no_animation","title","undefined","attributes","process","env","NODE_ENV","propTypes","oneOfType","string","func","node","oneOf","bool","object","shape","message","number","array","_supportsSpacingProps"],"sources":["../../../../src/components/toggle-button/ToggleButtonGroup.js"],"sourcesContent":["/**\n * Web ToggleButtonGroup Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport {\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n getStatusState,\n combineDescribedBy,\n combineLabelledBy,\n dispatchCustomElementEvent,\n} from '../../shared/component-helper'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\nimport FormLabel from '../FormLabel'\nimport FormStatus from '../FormStatus'\nimport Flex from '../Flex'\nimport Space from '../Space'\nimport Context from '../../shared/Context'\nimport Suffix from '../../shared/helpers/Suffix'\nimport ToggleButtonGroupContext from './ToggleButtonGroupContext'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\n\nexport default class ToggleButtonGroup extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n label_direction: PropTypes.oneOf(['horizontal', 'vertical']),\n label_sr_only: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n title: PropTypes.string,\n multiselect: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n variant: PropTypes.oneOf(['default', 'checkbox', 'radio']),\n left_component: PropTypes.node,\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n id: PropTypes.string,\n name: PropTypes.string,\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n status_no_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n suffix: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n vertical: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n layout_direction: PropTypes.oneOf(['column', 'row']),\n value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number,\n PropTypes.object,\n PropTypes.array,\n ]),\n values: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),\n attributes: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n\n ...spacingPropTypes,\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n\n on_change: PropTypes.func,\n }\n\n static defaultProps = {\n label: null,\n label_direction: null,\n label_sr_only: null,\n title: null,\n multiselect: null,\n variant: null,\n left_component: null,\n disabled: null,\n skeleton: null,\n id: null,\n name: null,\n status: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n globalStatus: null,\n suffix: null,\n vertical: null,\n layout_direction: 'row',\n value: undefined,\n values: undefined,\n attributes: null,\n\n className: null,\n children: null,\n\n on_change: null,\n }\n\n static getDerivedStateFromProps(props, state) {\n if (state._listenForPropChanges) {\n if (\n typeof props.value !== 'undefined' &&\n props.value !== state.value\n ) {\n state.value = props.value\n }\n if (\n typeof props.values !== 'undefined' &&\n props.values !== state.values\n ) {\n state.values = ToggleButtonGroup.getValues(props)\n }\n }\n state._listenForPropChanges = true\n\n return state\n }\n\n static getValues(props) {\n if (typeof props.values === 'string' && props.values[0] === '[') {\n return JSON.parse(props.values)\n }\n return props.values\n }\n\n constructor(props) {\n super(props)\n this._refInput = React.createRef()\n this._id = props.id || makeUniqueId() // cause we need an id anyway\n this._name = props.name || makeUniqueId() // cause we need an id anyway\n this.state = {\n // do not set the value here, else get true in this check } else if (context.values && Array.isArray(context.values)) {\n _listenForPropChanges: true,\n }\n }\n\n onChangeHandler = ({ value, event }) => {\n const { multiselect } = this.props\n const values = this.state.values || []\n\n if (isTrue(multiselect)) {\n if (!values.includes(value)) {\n values.push(value)\n } else {\n values.splice(values.indexOf(value), 1)\n }\n }\n\n this.setState({\n value,\n values,\n _listenForPropChanges: false,\n })\n\n dispatchCustomElementEvent(this, 'on_change', {\n value,\n values,\n event,\n })\n }\n\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n ToggleButtonGroup.defaultProps,\n this.context.getTranslation(this.props).ToggleButton,\n // Deprecated – can be removed in v11\n pickFormElementProps(this.context?.FormRow),\n pickFormElementProps(this.context?.formElement),\n this.context.ToggleButtonGroup\n )\n\n const {\n status,\n status_state,\n status_props,\n status_no_animation,\n globalStatus,\n suffix,\n label_direction,\n label_sr_only,\n vertical,\n layout_direction,\n label,\n variant,\n left_component,\n disabled,\n skeleton,\n className,\n\n multiselect,\n id: _id, // eslint-disable-line\n name: _name, // eslint-disable-line\n value: _value, // eslint-disable-line\n values: _values, // eslint-disable-line\n children, // eslint-disable-line\n on_change, // eslint-disable-line\n\n ...rest\n } = props\n\n const { value, values } = this.state\n\n const id = this._id\n const showStatus = getStatusState(status)\n\n const classes = classnames(\n 'dnb-toggle-button-group',\n status && `dnb-toggle-button-group__status--${status_state}`,\n !label && 'dnb-toggle-button-group--no-label',\n `dnb-toggle-button-group--${layout_direction}`,\n 'dnb-form-component',\n createSpacingClasses(props),\n className\n )\n\n const params = {\n ...rest,\n }\n\n if (showStatus || suffix) {\n params['aria-describedby'] = combineDescribedBy(\n params,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n if (label) {\n params['aria-labelledby'] = combineLabelledBy(params, id + '-label')\n }\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, params)\n\n const context = {\n name: this._name,\n value,\n values,\n multiselect: isTrue(multiselect),\n variant,\n left_component,\n disabled,\n skeleton,\n setContext: (context) => {\n // also look for a function, where we are able to fill old values\n // this is used in the \"constructor\" inside the ToggleButton.js component\n if (typeof context === 'function') {\n context = context(this._tmp)\n }\n this._tmp = { ...this._tmp, ...context }\n this.setState({\n ...context,\n _listenForPropChanges: false,\n })\n },\n onChange: this.onChangeHandler,\n }\n\n const Fieldset = label ? 'fieldset' : 'div'\n\n return (\n <ToggleButtonGroupContext.Provider value={context}>\n <div className={classes}>\n <AlignmentHelper />\n <Fieldset className=\"dnb-toggle-button-group__fieldset\">\n <Flex.Container\n direction={\n vertical || label_direction === 'vertical'\n ? 'vertical'\n : 'horizontal'\n }\n gap={vertical ? 'x-small' : 'small'}\n >\n {label && (\n <FormLabel\n element=\"legend\"\n id={id + '-label'}\n srOnly={label_sr_only}\n >\n {label}\n </FormLabel>\n )}\n\n <Space\n element=\"span\"\n id={id}\n className=\"dnb-toggle-button-group__shell\"\n role=\"group\"\n {...params}\n >\n <FormStatus\n show={showStatus}\n id={id + '-form-status'}\n globalStatus={globalStatus}\n label={label}\n text_id={id + '-status'} // used for \"aria-describedby\"\n text={status}\n state={status_state}\n no_animation={status_no_animation}\n skeleton={skeleton}\n {...status_props}\n />\n\n <span\n className={classnames(\n 'dnb-toggle-button-group__shell__children',\n `dnb-toggle-button-group__shell__children--${layout_direction}`\n )}\n >\n {children}\n\n {suffix && (\n <Suffix\n className=\"dnb-toggle-button-group__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n </Space>\n </Flex.Container>\n </Fieldset>\n </div>\n </ToggleButtonGroupContext.Provider>\n )\n }\n}\n\nToggleButtonGroup._supportsSpacingProps = true\n"],"mappings":"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"}
@@ -86,6 +86,9 @@
86
86
  --toggle-button-group-row-gap: 1rem;
87
87
  display: inline-flex;
88
88
  }
89
+ .dnb-toggle-button-group, .dnb-toggle-button-group__fieldset, .dnb-toggle-button-group__shell {
90
+ flex-grow: 1;
91
+ }
89
92
  .dnb-toggle-button-group fieldset {
90
93
  margin: 0;
91
94
  padding: 0;
@@ -122,9 +125,6 @@
122
125
  order: 2;
123
126
  transform: translateY(-0.5rem);
124
127
  }
125
- .dnb-toggle-button-group .dnb-flex-container {
126
- margin-bottom: calc(var(--toggle-button-group-margin-bottom) * -1);
127
- }
128
128
  .dnb-toggle-button-group .dnb-flex-container--direction-horizontal .dnb-form-label {
129
129
  margin-top: 0.5rem;
130
130
  align-self: flex-start;
@@ -1 +1 @@
1
- .dnb-toggle-button{align-items:center;display:inline-flex;font-size:var(--font-size-small);line-height:var(--line-height-basis)}.dnb-toggle-button__inner{display:inline-flex;flex-direction:column}.dnb-toggle-button__shell{left:0;position:relative;-webkit-user-select:none;user-select:none}.dnb-toggle-button--vertical{align-items:flex-start;flex-direction:column}.dnb-toggle-button__component{align-items:center;display:inline-flex;padding-right:.5rem}.dnb-toggle-button__button.dnb-button--has-text{padding-left:1.5rem;padding-right:1.5rem}.dnb-toggle-button__button .dnb-checkbox{margin-left:-.5rem}.dnb-toggle-button__button .dnb-checkbox__input{pointer-events:none}.dnb-toggle-button__button .dnb-checkbox__button{display:unset}.dnb-toggle-button__button .dnb-checkbox__button,.dnb-toggle-button__button .dnb-checkbox__focus{border-width:.0625rem;height:calc(var(--checkbox-height--medium) - .5rem);width:calc(var(--checkbox-width--medium) - .5rem)}.dnb-toggle-button__button .dnb-checkbox__dot{height:calc(var(--checkbox-height--medium) - 1rem);width:calc(var(--checkbox-width--medium) - 1rem)}.dnb-toggle-button__button .dnb-checkbox__gfx{height:calc(var(--checkbox-height--medium) - .75rem);width:calc(var(--checkbox-width--medium) - .75rem)}.dnb-toggle-button__button .dnb-radio{margin-left:-.5rem}.dnb-toggle-button__button .dnb-radio__input{pointer-events:none}.dnb-toggle-button__button .dnb-radio__button,.dnb-toggle-button__button .dnb-radio__focus{border-width:.0625rem;height:calc(var(--radio-height--medium) - .5rem);width:calc(var(--radio-width--medium) - .5rem)}.dnb-toggle-button__button .dnb-radio__dot{height:calc(var(--radio-height--medium) - 1rem);width:calc(var(--radio-width--medium) - 1rem)}:not(.dnb-toggle-button-group)>.dnb-form-label+.dnb-toggle-button{vertical-align:top}.dnb-toggle-button .dnb-form-status{margin-top:.5rem;order:2}.dnb-toggle-button .dnb-form-label{margin-right:1rem}.dnb-toggle-button-group{--toggle-button-group-column-gap:1rem;--toggle-button-group-row-gap:1rem;display:inline-flex}.dnb-toggle-button-group fieldset{border:none;margin:0;padding:0}.dnb-toggle-button-group--column .dnb-toggle-button{display:flex;margin-right:0}.dnb-toggle-button-group .dnb-toggle-button:last-of-type{margin-right:0}.dnb-toggle-button-group__shell{display:flex;flex-direction:column;row-gap:var(--toggle-button-group-row-gap)}.dnb-toggle-button-group__shell__children{align-items:flex-start;-moz-column-gap:var(--toggle-button-group-column-gap);column-gap:var(--toggle-button-group-column-gap);display:flex;flex-wrap:wrap;order:1;row-gap:var(--toggle-button-group-row-gap)}.dnb-toggle-button-group__shell__children--row{flex-direction:row}.dnb-toggle-button-group__shell__children--column{flex-direction:column}.dnb-toggle-button-group__shell>.dnb-form-status{order:2;transform:translateY(-.5rem)}.dnb-toggle-button-group .dnb-flex-container{margin-bottom:calc(var(--toggle-button-group-margin-bottom)*-1)}.dnb-toggle-button-group .dnb-flex-container--direction-horizontal .dnb-form-label{align-self:flex-start;margin-top:.5rem}.dnb-toggle-button-group .dnb-alignment-helper{line-height:2.5rem}.dnb-toggle-button-group__suffix{font-size:var(--font-size-basis)}@media screen and (min-width:40em){.dnb-form-label+.dnb-toggle-button{transform:translateY(-.5rem)}}
1
+ .dnb-toggle-button{align-items:center;display:inline-flex;font-size:var(--font-size-small);line-height:var(--line-height-basis)}.dnb-toggle-button__inner{display:inline-flex;flex-direction:column}.dnb-toggle-button__shell{left:0;position:relative;-webkit-user-select:none;user-select:none}.dnb-toggle-button--vertical{align-items:flex-start;flex-direction:column}.dnb-toggle-button__component{align-items:center;display:inline-flex;padding-right:.5rem}.dnb-toggle-button__button.dnb-button--has-text{padding-left:1.5rem;padding-right:1.5rem}.dnb-toggle-button__button .dnb-checkbox{margin-left:-.5rem}.dnb-toggle-button__button .dnb-checkbox__input{pointer-events:none}.dnb-toggle-button__button .dnb-checkbox__button{display:unset}.dnb-toggle-button__button .dnb-checkbox__button,.dnb-toggle-button__button .dnb-checkbox__focus{border-width:.0625rem;height:calc(var(--checkbox-height--medium) - .5rem);width:calc(var(--checkbox-width--medium) - .5rem)}.dnb-toggle-button__button .dnb-checkbox__dot{height:calc(var(--checkbox-height--medium) - 1rem);width:calc(var(--checkbox-width--medium) - 1rem)}.dnb-toggle-button__button .dnb-checkbox__gfx{height:calc(var(--checkbox-height--medium) - .75rem);width:calc(var(--checkbox-width--medium) - .75rem)}.dnb-toggle-button__button .dnb-radio{margin-left:-.5rem}.dnb-toggle-button__button .dnb-radio__input{pointer-events:none}.dnb-toggle-button__button .dnb-radio__button,.dnb-toggle-button__button .dnb-radio__focus{border-width:.0625rem;height:calc(var(--radio-height--medium) - .5rem);width:calc(var(--radio-width--medium) - .5rem)}.dnb-toggle-button__button .dnb-radio__dot{height:calc(var(--radio-height--medium) - 1rem);width:calc(var(--radio-width--medium) - 1rem)}:not(.dnb-toggle-button-group)>.dnb-form-label+.dnb-toggle-button{vertical-align:top}.dnb-toggle-button .dnb-form-status{margin-top:.5rem;order:2}.dnb-toggle-button .dnb-form-label{margin-right:1rem}.dnb-toggle-button-group{--toggle-button-group-column-gap:1rem;--toggle-button-group-row-gap:1rem;display:inline-flex}.dnb-toggle-button-group,.dnb-toggle-button-group__fieldset,.dnb-toggle-button-group__shell{flex-grow:1}.dnb-toggle-button-group fieldset{border:none;margin:0;padding:0}.dnb-toggle-button-group--column .dnb-toggle-button{display:flex;margin-right:0}.dnb-toggle-button-group .dnb-toggle-button:last-of-type{margin-right:0}.dnb-toggle-button-group__shell{display:flex;flex-direction:column;row-gap:var(--toggle-button-group-row-gap)}.dnb-toggle-button-group__shell__children{align-items:flex-start;-moz-column-gap:var(--toggle-button-group-column-gap);column-gap:var(--toggle-button-group-column-gap);display:flex;flex-wrap:wrap;order:1;row-gap:var(--toggle-button-group-row-gap)}.dnb-toggle-button-group__shell__children--row{flex-direction:row}.dnb-toggle-button-group__shell__children--column{flex-direction:column}.dnb-toggle-button-group__shell>.dnb-form-status{order:2;transform:translateY(-.5rem)}.dnb-toggle-button-group .dnb-flex-container--direction-horizontal .dnb-form-label{align-self:flex-start;margin-top:.5rem}.dnb-toggle-button-group .dnb-alignment-helper{line-height:2.5rem}.dnb-toggle-button-group__suffix{font-size:var(--font-size-basis)}@media screen and (min-width:40em){.dnb-form-label+.dnb-toggle-button{transform:translateY(-.5rem)}}
@@ -119,6 +119,12 @@
119
119
  --toggle-button-group-row-gap: 1rem;
120
120
  display: inline-flex;
121
121
 
122
+ &,
123
+ &__fieldset,
124
+ &__shell {
125
+ flex-grow: 1;
126
+ }
127
+
122
128
  fieldset {
123
129
  @include fieldsetReset();
124
130
  }
@@ -162,8 +168,6 @@
162
168
  }
163
169
 
164
170
  .dnb-flex-container {
165
- margin-bottom: calc(var(--toggle-button-group-margin-bottom) * -1);
166
-
167
171
  &--direction-horizontal .dnb-form-label {
168
172
  margin-top: 0.5rem;
169
173
  align-self: flex-start;
@@ -225,13 +225,18 @@ declare namespace Accordion {
225
225
  on_state_update?: (...args: any[]) => any;
226
226
  } & {
227
227
  allow_close_all?: boolean;
228
+ /**
229
+ * Determines how many accordions can be expanded at once.
230
+ * Default: `single`
231
+ */
232
+ expandBehaviour?: "multiple" | "single";
228
233
  /**
229
234
  * ref handle to collapse all expanded accordions. Send in a ref and use `.current()` to collapse all accordions.
230
235
  *
231
236
  * Default: `undefined`
232
237
  */
233
- collapseAllHandleRef?: React.MutableRefObject<() => void>;
234
238
  expanded_id?: string;
239
+ collapseAllHandleRef?: React.MutableRefObject<() => void>;
235
240
  };
236
241
  var Provider: {
237
242
  (props: import("./AccordionGroup").AccordionGroupProps): import("react/jsx-runtime").JSX.Element;
@@ -247,7 +252,7 @@ declare namespace Accordion {
247
252
  };
248
253
  var Content: typeof AccordionContent;
249
254
  var Group: {
250
- (props: GroupProps): import("react/jsx-runtime").JSX.Element;
255
+ ({ expandBehaviour, ...props }: GroupProps): import("react/jsx-runtime").JSX.Element;
251
256
  Store(group: string, id?: string): Store;
252
257
  };
253
258
  var Store: (id: string) => Store;
@@ -255,12 +260,17 @@ declare namespace Accordion {
255
260
  }
256
261
  export type GroupProps = AccordionProps & {
257
262
  allow_close_all?: boolean;
263
+ /**
264
+ * Determines how many accordions can be expanded at once.
265
+ * Default: `single`
266
+ */
267
+ expandBehaviour?: 'single' | 'multiple';
258
268
  /**
259
269
  * ref handle to collapse all expanded accordions. Send in a ref and use `.current()` to collapse all accordions.
260
270
  *
261
271
  * Default: `undefined`
262
272
  */
263
- collapseAllHandleRef?: React.MutableRefObject<() => void>;
264
273
  expanded_id?: string;
274
+ collapseAllHandleRef?: React.MutableRefObject<() => void>;
265
275
  };
266
276
  export default Accordion;
@@ -5,10 +5,11 @@ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
5
5
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
6
6
  var _AccordionHeader;
7
7
  const _excluded = ["variant", "icon_size"],
8
- _excluded2 = ["variant", "className", "prerender", "prevent_rerender", "prevent_rerender_conditional", "single_container", "remember_state", "disabled", "skeleton", "no_animation", "expanded_ssr", "children", "id", "group", "title", "description", "left_component", "icon", "icon_position", "icon_size", "on_change", "on_state_update", "contentRef"];
8
+ _excluded2 = ["variant", "className", "prerender", "prevent_rerender", "prevent_rerender_conditional", "single_container", "remember_state", "disabled", "skeleton", "no_animation", "expanded_ssr", "children", "id", "group", "title", "description", "left_component", "icon", "icon_position", "icon_size", "on_change", "on_state_update", "contentRef"],
9
+ _excluded3 = ["expandBehaviour"];
9
10
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
10
11
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
11
- import React, { useContext, useState, useEffect, useRef } from 'react';
12
+ import React, { useContext, useState, useEffect, useRef, useMemo } from 'react';
12
13
  import classnames from 'classnames';
13
14
  import { makeUniqueId, findElementInChildren, extendPropsWithContext, validateDOMAttributes, dispatchCustomElementEvent } from '../../shared/component-helper';
14
15
  import { createSpacingClasses } from '../space/SpacingHelper';
@@ -83,10 +84,10 @@ function Accordion(_ref) {
83
84
  if (context !== null && context !== void 0 && context.expanded_id && context.expanded_id === props.id) {
84
85
  setExpanded(true);
85
86
  }
86
- }, [context.flush_remembered_state, context.expanded_id]);
87
+ }, [context.flush_remembered_state, context.expanded_id, props.expanded, props.id, store]);
87
88
  if (context !== null && context !== void 0 && context.collapseAllHandleRef && !hasAddedCallbackRef.current) {
88
89
  var _context$collapseAcco;
89
- context === null || context === void 0 ? void 0 : (_context$collapseAcco = context.collapseAccordionCallbacks) === null || _context$collapseAcco === void 0 ? void 0 : _context$collapseAcco.current.push(() => changeOpened(false));
90
+ context === null || context === void 0 ? void 0 : (_context$collapseAcco = context.collapseAccordionCallbacks) === null || _context$collapseAcco === void 0 ? void 0 : _context$collapseAcco.current.push(close);
90
91
  hasAddedCallbackRef.current = true;
91
92
  }
92
93
  function getInitialExpandedState() {
@@ -141,7 +142,6 @@ function Accordion(_ref) {
141
142
  event
142
143
  });
143
144
  }
144
- console.log('context', context);
145
145
  return React.createElement(Context.Consumer, null, globalContext => React.createElement(AccordionContext.Consumer, null, nestedContext => {
146
146
  let expandedState = expanded;
147
147
  const extendedProps = extendPropsWithContext(props, accordionDefaultProps, context, nestedContext, {
@@ -209,16 +209,20 @@ function Accordion(_ref) {
209
209
  }));
210
210
  }
211
211
  Accordion.defaultProps = accordionDefaultProps;
212
- const Group = props => {
212
+ const Group = _ref2 => {
213
+ let {
214
+ expandBehaviour = 'single'
215
+ } = _ref2,
216
+ props = _objectWithoutProperties(_ref2, _excluded3);
213
217
  if (props.remember_state && !props.id) {
214
218
  rememberWarning('accordion group');
215
219
  }
216
220
  const [expandedId, setExpandedId] = useState(null);
217
221
  const instanceIDs = useRef([]);
218
222
  const group = props !== null && props !== void 0 && props.id ? props.id : !props.group ? '#' + makeUniqueId() : undefined;
219
- const store = new Store({
223
+ const store = useMemo(() => new Store({
220
224
  group
221
- });
225
+ }), [group]);
222
226
  useEffect(() => {
223
227
  const storedData = store.getData();
224
228
  const currentIDs = instanceIDs === null || instanceIDs === void 0 ? void 0 : instanceIDs.current;
@@ -233,14 +237,14 @@ const Group = props => {
233
237
  return;
234
238
  }
235
239
  setExpandedId(fallbackId);
236
- }, []);
240
+ }, [store]);
237
241
  useEffect(() => {
238
242
  if (!expandedId) {
239
243
  return;
240
244
  }
241
245
  store.saveState(true, expandedId);
242
246
  setExpandedId(null);
243
- }, [expandedId]);
247
+ }, [expandedId, store]);
244
248
  function onInit(instance) {
245
249
  if (instance.props.id && !instanceIDs.current.includes(instance.props.id)) {
246
250
  instanceIDs.current.push(instance.props.id);
@@ -250,6 +254,7 @@ const Group = props => {
250
254
  onInit: onInit
251
255
  }, props, {
252
256
  group: group,
257
+ expandBehaviour: expandBehaviour,
253
258
  expanded_id: expandedId || props.expanded_id
254
259
  }));
255
260
  };